[Logwatch] Update to allow for new functionality

Systems Administrator sysadmin@sunet.com.au
Wed, 12 Mar 2003 15:19:05 +1100


This is a multi-part message in MIME format.

------=_NextPart_000_0564_01C2E8AA.B8376E40
Content-Type: multipart/alternative;
	boundary="----=_NextPart_001_0565_01C2E8AA.B8376E40"


------=_NextPart_001_0565_01C2E8AA.B8376E40
Content-Type: text/plain;
	charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable

    Hi all.  I've made some preliminary changes to logwatch 4.3.2 in =
order to prepare logwatch for the other script that I'm planning to =
write (which allows for lots of new functionality).  Patch attached.  I =
used diff -urN -- is that what's wanted?  I had to rename some files, =
because I needed to turn all the services into Perl packages, and Perl =
packages won't allow hyphens and periods in their names (I've replaced =
these with underscores). =20

    When I changed the configuration appropriately (ie. copied across my =
normal config here), it all seemed to run properly.  Let me know if it =
causes any trouble. =20

    Thanks,

Tim Nelson
Systems Administrator
Sunet Internet
Tel:  +61 3 5241 1155
Fax: +61 3 5241 6187
Web: http://www.sunet.com.au/
Email: sysadmin@sunet.com.au
------=_NextPart_001_0565_01C2E8AA.B8376E40
Content-Type: text/html;
	charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML><HEAD>
<META http-equiv=3DContent-Type content=3D"text/html; =
charset=3Diso-8859-1">
<META content=3D"MSHTML 6.00.2800.1141" name=3DGENERATOR>
<STYLE></STYLE>
</HEAD>
<BODY bgColor=3D#ffffff>
<DIV><FONT face=3D"Times New Roman">&nbsp;&nbsp;&nbsp; Hi all.&nbsp; =
I've made=20
some preliminary changes to logwatch 4.3.2 in order to prepare logwatch =
for the=20
other script that I'm planning to write (which allows for lots of new=20
functionality).&nbsp; Patch attached.&nbsp; I used diff -urN -- is that =
what's=20
wanted?&nbsp; I had to rename some files, because I needed to turn all =
the=20
services into Perl packages, and Perl packages won't allow hyphens and =
periods=20
in their names (I've replaced these with underscores).&nbsp; =
</FONT></DIV>
<DIV><FONT face=3D"Times New Roman"></FONT>&nbsp;</DIV>
<DIV><FONT face=3D"Times New Roman">&nbsp;&nbsp;&nbsp; When I changed =
the=20
configuration appropriately (ie. copied across my normal config here), =
it all=20
seemed to run properly.&nbsp; Let me know if it causes any =
trouble.&nbsp;=20
</FONT></DIV>
<DIV><FONT face=3D"Times New Roman"></FONT>&nbsp;</DIV>
<DIV><FONT face=3D"Times New Roman">&nbsp;&nbsp;&nbsp; =
Thanks,</FONT></DIV>
<DIV><FONT face=3D"Times New Roman"></FONT>&nbsp;</DIV>
<DIV><FONT face=3D"Times New Roman">Tim Nelson<BR>Systems =
Administrator<BR>Sunet=20
Internet<BR>Tel:&nbsp; +61 3 5241 1155<BR>Fax: +61 3 5241 6187<BR>Web: =
<A=20
href=3D"http://www.sunet.com.au/">http://www.sunet.com.au/</A><BR>Email: =
<A=20
href=3D"mailto:sysadmin@sunet.com.au">sysadmin@sunet.com.au</A></FONT></D=
IV></BODY></HTML>

------=_NextPart_001_0565_01C2E8AA.B8376E40--

------=_NextPart_000_0564_01C2E8AA.B8376E40
Content-Type: application/octet-stream;
	name="logwatch-4.3.2.tsn1.diff"
Content-Transfer-Encoding: quoted-printable
Content-Disposition: attachment;
	filename="logwatch-4.3.2.tsn1.diff"

diff -urN logwatch-4.3.2/conf/services/ftpd-messages.conf =
logwatch-4.3.2.tsn1/conf/services/ftpd-messages.conf=0A=
--- logwatch-4.3.2/conf/services/ftpd-messages.conf	Sat Oct 12 12:08:09 =
2002=0A=
+++ logwatch-4.3.2.tsn1/conf/services/ftpd-messages.conf	Thu Jan  1 =
10:00:00 1970=0A=
@@ -1,33 +0,0 @@=0A=
-########################################################################=
###=0A=
-# $Id: ftpd-messages.conf,v 1.8 2002/10/12 02:08:09 kirk Exp $=0A=
-########################################################################=
###=0A=
-=0A=
-# You can put comments anywhere you want to.  They are effective for the=0A=
-# rest of the line.=0A=
-=0A=
-# this is in the format of <name> =3D <value>.  Whitespace at the =
beginning=0A=
-# and end of the lines is removed.  Whitespace before and after the =3D =
sign=0A=
-# is removed.  Everything is case *insensitive*.=0A=
-=0A=
-# Yes =3D True  =3D On  =3D 1=0A=
-# No  =3D False =3D Off =3D 0=0A=
-=0A=
-Title =3D "ftpd-messages"=0A=
-=0A=
-# Which logfile group...=0A=
-LogFile =3D messages=0A=
-=0A=
-*OnlyService =3D ftpd=0A=
-*RemoveHeaders=0A=
-=0A=
-# Set this to 1 if you want to ignore unmatched FTP messages...=0A=
-$ftpd_ignore_unmatched =3D 0=0A=
-=0A=
-########################################################=0A=
-# This was written and is maintained by:=0A=
-#    Kirk Bauer <kirk@kaybee.org>=0A=
-#=0A=
-# Please send all comments, suggestions, bug reports,=0A=
-#    etc, to kirk@kaybee.org.=0A=
-########################################################=0A=
-=0A=
diff -urN logwatch-4.3.2/conf/services/ftpd-xferlog.conf =
logwatch-4.3.2.tsn1/conf/services/ftpd-xferlog.conf=0A=
--- logwatch-4.3.2/conf/services/ftpd-xferlog.conf	Sat Oct 12 12:08:09 =
2002=0A=
+++ logwatch-4.3.2.tsn1/conf/services/ftpd-xferlog.conf	Thu Jan  1 =
10:00:00 1970=0A=
@@ -1,30 +0,0 @@=0A=
-########################################################################=
###=0A=
-# $Id: ftpd-xferlog.conf,v 1.6 2002/10/12 02:08:09 kirk Exp $=0A=
-########################################################################=
###=0A=
-=0A=
-# You can put comments anywhere you want to.  They are effective for the=0A=
-# rest of the line.=0A=
-=0A=
-# this is in the format of <name> =3D <value>.  Whitespace at the =
beginning=0A=
-# and end of the lines is removed.  Whitespace before and after the =3D =
sign=0A=
-# is removed.  Everything is case *insensitive*.=0A=
-=0A=
-# Yes =3D True  =3D On  =3D 1=0A=
-# No  =3D False =3D Off =3D 0=0A=
-=0A=
-Title =3D "ftpd-xferlog"=0A=
-=0A=
-# Which logfile group...=0A=
-LogFile =3D xferlog=0A=
-=0A=
-# Set this to 0 to just get a summary of transfers (no details)=0A=
-$detail_transfer=3D1=0A=
-=0A=
-########################################################=0A=
-# This was written and is maintained by:=0A=
-#    Kirk Bauer <kirk@kaybee.org>=0A=
-#=0A=
-# Please send all comments, suggestions, bug reports,=0A=
-#    etc, to kirk@kaybee.org.=0A=
-########################################################=0A=
-=0A=
diff -urN logwatch-4.3.2/conf/services/ftpd_messages.conf =
logwatch-4.3.2.tsn1/conf/services/ftpd_messages.conf=0A=
--- logwatch-4.3.2/conf/services/ftpd_messages.conf	Thu Jan  1 10:00:00 =
1970=0A=
+++ logwatch-4.3.2.tsn1/conf/services/ftpd_messages.conf	Wed Mar 12 =
15:01:44 2003=0A=
@@ -0,0 +1,33 @@=0A=
+########################################################################=
###=0A=
+# $Id: ftpd-messages.conf,v 1.8 2002/10/12 02:08:09 kirk Exp $=0A=
+########################################################################=
###=0A=
+=0A=
+# You can put comments anywhere you want to.  They are effective for the=0A=
+# rest of the line.=0A=
+=0A=
+# this is in the format of <name> =3D <value>.  Whitespace at the =
beginning=0A=
+# and end of the lines is removed.  Whitespace before and after the =3D =
sign=0A=
+# is removed.  Everything is case *insensitive*.=0A=
+=0A=
+# Yes =3D True  =3D On  =3D 1=0A=
+# No  =3D False =3D Off =3D 0=0A=
+=0A=
+Title =3D "ftpd-messages"=0A=
+=0A=
+# Which logfile group...=0A=
+LogFile =3D messages=0A=
+=0A=
+*OnlyService =3D ftpd=0A=
+*RemoveHeaders=0A=
+=0A=
+# Set this to 1 if you want to ignore unmatched FTP messages...=0A=
+$ftpd_ignore_unmatched =3D 0=0A=
+=0A=
+########################################################=0A=
+# This was written and is maintained by:=0A=
+#    Kirk Bauer <kirk@kaybee.org>=0A=
+#=0A=
+# Please send all comments, suggestions, bug reports,=0A=
+#    etc, to kirk@kaybee.org.=0A=
+########################################################=0A=
+=0A=
diff -urN logwatch-4.3.2/conf/services/ftpd_xferlog.conf =
logwatch-4.3.2.tsn1/conf/services/ftpd_xferlog.conf=0A=
--- logwatch-4.3.2/conf/services/ftpd_xferlog.conf	Thu Jan  1 10:00:00 =
1970=0A=
+++ logwatch-4.3.2.tsn1/conf/services/ftpd_xferlog.conf	Wed Mar 12 =
15:01:44 2003=0A=
@@ -0,0 +1,30 @@=0A=
+########################################################################=
###=0A=
+# $Id: ftpd-xferlog.conf,v 1.6 2002/10/12 02:08:09 kirk Exp $=0A=
+########################################################################=
###=0A=
+=0A=
+# You can put comments anywhere you want to.  They are effective for the=0A=
+# rest of the line.=0A=
+=0A=
+# this is in the format of <name> =3D <value>.  Whitespace at the =
beginning=0A=
+# and end of the lines is removed.  Whitespace before and after the =3D =
sign=0A=
+# is removed.  Everything is case *insensitive*.=0A=
+=0A=
+# Yes =3D True  =3D On  =3D 1=0A=
+# No  =3D False =3D Off =3D 0=0A=
+=0A=
+Title =3D "ftpd-xferlog"=0A=
+=0A=
+# Which logfile group...=0A=
+LogFile =3D xferlog=0A=
+=0A=
+# Set this to 0 to just get a summary of transfers (no details)=0A=
+$detail_transfer=3D1=0A=
+=0A=
+########################################################=0A=
+# This was written and is maintained by:=0A=
+#    Kirk Bauer <kirk@kaybee.org>=0A=
+#=0A=
+# Please send all comments, suggestions, bug reports,=0A=
+#    etc, to kirk@kaybee.org.=0A=
+########################################################=0A=
+=0A=
diff -urN logwatch-4.3.2/conf/services/in.qpopper.conf =
logwatch-4.3.2.tsn1/conf/services/in.qpopper.conf=0A=
--- logwatch-4.3.2/conf/services/in.qpopper.conf	Sat Oct 12 12:08:09 2002=0A=
+++ logwatch-4.3.2.tsn1/conf/services/in.qpopper.conf	Thu Jan  1 =
10:00:00 1970=0A=
@@ -1,31 +0,0 @@=0A=
-########################################################################=
###=0A=
-# $Id: in.qpopper.conf,v 1.3 2002/10/12 02:08:09 kirk Exp $=0A=
-########################################################################=
###=0A=
-=0A=
-# You can put comments anywhere you want to.  They are effective for the=0A=
-# rest of the line.=0A=
-=0A=
-# this is in the format of <name> =3D <value>.  Whitespace at the =
beginning=0A=
-# and end of the lines is removed.  Whitespace before and after the =3D =
sign=0A=
-# is removed.  Everything is case *insensitive*.=0A=
-=0A=
-# Yes =3D True  =3D On  =3D 1=0A=
-# No  =3D False =3D Off =3D 0=0A=
-=0A=
-Title =3D "in.qpopper"=0A=
-=0A=
-# Which logfile group...=0A=
-LogFile =3D maillog=0A=
-=0A=
-# Only give lines pertaining to the in.qpopper service...=0A=
-*OnlyService =3D in.qpopper=0A=
-*RemoveHeaders=0A=
-=0A=
-########################################################=0A=
-# This was written and is maintained by:=0A=
-#    Kenneth Porter <shiva@well.com>=0A=
-#=0A=
-# Please send all comments, suggestions, bug reports,=0A=
-#    etc, to shiva@well.com.=0A=
-########################################################=0A=
-=0A=
diff -urN logwatch-4.3.2/conf/services/in_qpopper.conf =
logwatch-4.3.2.tsn1/conf/services/in_qpopper.conf=0A=
--- logwatch-4.3.2/conf/services/in_qpopper.conf	Thu Jan  1 10:00:00 1970=0A=
+++ logwatch-4.3.2.tsn1/conf/services/in_qpopper.conf	Wed Mar 12 =
15:01:44 2003=0A=
@@ -0,0 +1,31 @@=0A=
+########################################################################=
###=0A=
+# $Id: in.qpopper.conf,v 1.3 2002/10/12 02:08:09 kirk Exp $=0A=
+########################################################################=
###=0A=
+=0A=
+# You can put comments anywhere you want to.  They are effective for the=0A=
+# rest of the line.=0A=
+=0A=
+# this is in the format of <name> =3D <value>.  Whitespace at the =
beginning=0A=
+# and end of the lines is removed.  Whitespace before and after the =3D =
sign=0A=
+# is removed.  Everything is case *insensitive*.=0A=
+=0A=
+# Yes =3D True  =3D On  =3D 1=0A=
+# No  =3D False =3D Off =3D 0=0A=
+=0A=
+Title =3D "in.qpopper"=0A=
+=0A=
+# Which logfile group...=0A=
+LogFile =3D maillog=0A=
+=0A=
+# Only give lines pertaining to the in.qpopper service...=0A=
+*OnlyService =3D in.qpopper=0A=
+*RemoveHeaders=0A=
+=0A=
+########################################################=0A=
+# This was written and is maintained by:=0A=
+#    Kenneth Porter <shiva@well.com>=0A=
+#=0A=
+# Please send all comments, suggestions, bug reports,=0A=
+#    etc, to shiva@well.com.=0A=
+########################################################=0A=
+=0A=
diff -urN logwatch-4.3.2/conf/services/proftpd-messages.conf =
logwatch-4.3.2.tsn1/conf/services/proftpd-messages.conf=0A=
--- logwatch-4.3.2/conf/services/proftpd-messages.conf	Sat Oct 12 =
12:08:09 2002=0A=
+++ logwatch-4.3.2.tsn1/conf/services/proftpd-messages.conf	Thu Jan  1 =
10:00:00 1970=0A=
@@ -1,36 +0,0 @@=0A=
-########################################################################=
###=0A=
-# $Id: proftpd-messages.conf,v 1.5 2002/10/12 02:08:09 kirk Exp $=0A=
-########################################################################=
###=0A=
-=0A=
-# This is for the ProFTPD daemon, if you have it on your system=0A=
-# If you don't it won't hurt anything.=0A=
-=0A=
-# You can put comments anywhere you want to.  They are effective for the=0A=
-# rest of the line.=0A=
-=0A=
-# this is in the format of <name> =3D <value>.  Whitespace at the =
beginning=0A=
-# and end of the lines is removed.  Whitespace before and after the =3D =
sign=0A=
-# is removed.  Everything is case *insensitive*.=0A=
-=0A=
-# Yes =3D True  =3D On  =3D 1=0A=
-# No  =3D False =3D Off =3D 0=0A=
-=0A=
-Title =3D "proftpd-messages"=0A=
-=0A=
-# Which logfile group...=0A=
-LogFile =3D messages=0A=
-=0A=
-*OnlyService =3D proftpd=0A=
-*RemoveHeaders=0A=
-=0A=
-# Set this to 1 if you want to ignore unmatched FTP messages...=0A=
-$ftpd_ignore_unmatched =3D 0=0A=
-=0A=
-########################################################=0A=
-# This was written and is maintained by:=0A=
-#    Kirk Bauer <kirk@kaybee.org>=0A=
-#=0A=
-# Please send all comments, suggestions, bug reports,=0A=
-#    etc, to kirk@kaybee.org.=0A=
-########################################################=0A=
-=0A=
diff -urN logwatch-4.3.2/conf/services/proftpd_messages.conf =
logwatch-4.3.2.tsn1/conf/services/proftpd_messages.conf=0A=
--- logwatch-4.3.2/conf/services/proftpd_messages.conf	Thu Jan  1 =
10:00:00 1970=0A=
+++ logwatch-4.3.2.tsn1/conf/services/proftpd_messages.conf	Wed Mar 12 =
15:01:44 2003=0A=
@@ -0,0 +1,36 @@=0A=
+########################################################################=
###=0A=
+# $Id: proftpd-messages.conf,v 1.5 2002/10/12 02:08:09 kirk Exp $=0A=
+########################################################################=
###=0A=
+=0A=
+# This is for the ProFTPD daemon, if you have it on your system=0A=
+# If you don't it won't hurt anything.=0A=
+=0A=
+# You can put comments anywhere you want to.  They are effective for the=0A=
+# rest of the line.=0A=
+=0A=
+# this is in the format of <name> =3D <value>.  Whitespace at the =
beginning=0A=
+# and end of the lines is removed.  Whitespace before and after the =3D =
sign=0A=
+# is removed.  Everything is case *insensitive*.=0A=
+=0A=
+# Yes =3D True  =3D On  =3D 1=0A=
+# No  =3D False =3D Off =3D 0=0A=
+=0A=
+Title =3D "proftpd-messages"=0A=
+=0A=
+# Which logfile group...=0A=
+LogFile =3D messages=0A=
+=0A=
+*OnlyService =3D proftpd=0A=
+*RemoveHeaders=0A=
+=0A=
+# Set this to 1 if you want to ignore unmatched FTP messages...=0A=
+$ftpd_ignore_unmatched =3D 0=0A=
+=0A=
+########################################################=0A=
+# This was written and is maintained by:=0A=
+#    Kirk Bauer <kirk@kaybee.org>=0A=
+#=0A=
+# Please send all comments, suggestions, bug reports,=0A=
+#    etc, to kirk@kaybee.org.=0A=
+########################################################=0A=
+=0A=
diff -urN logwatch-4.3.2/conf/services/zz-disk_space.conf =
logwatch-4.3.2.tsn1/conf/services/zz-disk_space.conf=0A=
--- logwatch-4.3.2/conf/services/zz-disk_space.conf	Wed Feb 19 02:44:54 =
2003=0A=
+++ logwatch-4.3.2.tsn1/conf/services/zz-disk_space.conf	Thu Jan  1 =
10:00:00 1970=0A=
@@ -1,27 +0,0 @@=0A=
-########################################################################=
###=0A=
-# $Id: zz-disk_space.conf,v 1.1 2003/02/18 15:44:54 kirk Exp $=0A=
-########################################################################=
###=0A=
-=0A=
-# This just displays a fortune at the end of the report...=0A=
-=0A=
-# You can put comments anywhere you want to.  They are effective for the=0A=
-# rest of the line.=0A=
-=0A=
-# this is in the format of <name> =3D <value>.  Whitespace at the =
beginning=0A=
-# and end of the lines is removed.  Whitespace before and after the =3D =
sign=0A=
-# is removed.  Everything is case *insensitive*.=0A=
-=0A=
-# Yes =3D True  =3D On  =3D 1=0A=
-# No  =3D False =3D Off =3D 0=0A=
-=0A=
-# Which logfile group...=0A=
-LogFile =3D NONE=0A=
-=0A=
-########################################################=0A=
-# This was written and is maintained by:=0A=
-#    Kirk Bauer <kirk@kaybee.org>=0A=
-#=0A=
-# Please send all comments, suggestions, bug reports,=0A=
-#    etc, to kirk@kaybee.org.=0A=
-########################################################=0A=
-=0A=
diff -urN logwatch-4.3.2/conf/services/zz-fortune.conf =
logwatch-4.3.2.tsn1/conf/services/zz-fortune.conf=0A=
--- logwatch-4.3.2/conf/services/zz-fortune.conf	Sat Oct 12 12:08:10 2002=0A=
+++ logwatch-4.3.2.tsn1/conf/services/zz-fortune.conf	Thu Jan  1 =
10:00:00 1970=0A=
@@ -1,27 +0,0 @@=0A=
-########################################################################=
###=0A=
-# $Id: zz-fortune.conf,v 1.5 2002/10/12 02:08:10 kirk Exp $=0A=
-########################################################################=
###=0A=
-=0A=
-# This just displays a fortune at the end of the report...=0A=
-=0A=
-# You can put comments anywhere you want to.  They are effective for the=0A=
-# rest of the line.=0A=
-=0A=
-# this is in the format of <name> =3D <value>.  Whitespace at the =
beginning=0A=
-# and end of the lines is removed.  Whitespace before and after the =3D =
sign=0A=
-# is removed.  Everything is case *insensitive*.=0A=
-=0A=
-# Yes =3D True  =3D On  =3D 1=0A=
-# No  =3D False =3D Off =3D 0=0A=
-=0A=
-# Which logfile group...=0A=
-LogFile =3D NONE=0A=
-=0A=
-########################################################=0A=
-# This was written and is maintained by:=0A=
-#    Kirk Bauer <kirk@kaybee.org>=0A=
-#=0A=
-# Please send all comments, suggestions, bug reports,=0A=
-#    etc, to kirk@kaybee.org.=0A=
-########################################################=0A=
-=0A=
diff -urN logwatch-4.3.2/conf/services/zz_disk_space.conf =
logwatch-4.3.2.tsn1/conf/services/zz_disk_space.conf=0A=
--- logwatch-4.3.2/conf/services/zz_disk_space.conf	Thu Jan  1 10:00:00 =
1970=0A=
+++ logwatch-4.3.2.tsn1/conf/services/zz_disk_space.conf	Wed Mar 12 =
15:01:44 2003=0A=
@@ -0,0 +1,27 @@=0A=
+########################################################################=
###=0A=
+# $Id: zz-disk_space.conf,v 1.1 2003/02/18 15:44:54 kirk Exp $=0A=
+########################################################################=
###=0A=
+=0A=
+# This just displays a fortune at the end of the report...=0A=
+=0A=
+# You can put comments anywhere you want to.  They are effective for the=0A=
+# rest of the line.=0A=
+=0A=
+# this is in the format of <name> =3D <value>.  Whitespace at the =
beginning=0A=
+# and end of the lines is removed.  Whitespace before and after the =3D =
sign=0A=
+# is removed.  Everything is case *insensitive*.=0A=
+=0A=
+# Yes =3D True  =3D On  =3D 1=0A=
+# No  =3D False =3D Off =3D 0=0A=
+=0A=
+# Which logfile group...=0A=
+LogFile =3D NONE=0A=
+=0A=
+########################################################=0A=
+# This was written and is maintained by:=0A=
+#    Kirk Bauer <kirk@kaybee.org>=0A=
+#=0A=
+# Please send all comments, suggestions, bug reports,=0A=
+#    etc, to kirk@kaybee.org.=0A=
+########################################################=0A=
+=0A=
diff -urN logwatch-4.3.2/conf/services/zz_fortune.conf =
logwatch-4.3.2.tsn1/conf/services/zz_fortune.conf=0A=
--- logwatch-4.3.2/conf/services/zz_fortune.conf	Thu Jan  1 10:00:00 1970=0A=
+++ logwatch-4.3.2.tsn1/conf/services/zz_fortune.conf	Wed Mar 12 =
15:01:44 2003=0A=
@@ -0,0 +1,27 @@=0A=
+########################################################################=
###=0A=
+# $Id: zz-fortune.conf,v 1.5 2002/10/12 02:08:10 kirk Exp $=0A=
+########################################################################=
###=0A=
+=0A=
+# This just displays a fortune at the end of the report...=0A=
+=0A=
+# You can put comments anywhere you want to.  They are effective for the=0A=
+# rest of the line.=0A=
+=0A=
+# this is in the format of <name> =3D <value>.  Whitespace at the =
beginning=0A=
+# and end of the lines is removed.  Whitespace before and after the =3D =
sign=0A=
+# is removed.  Everything is case *insensitive*.=0A=
+=0A=
+# Yes =3D True  =3D On  =3D 1=0A=
+# No  =3D False =3D Off =3D 0=0A=
+=0A=
+# Which logfile group...=0A=
+LogFile =3D NONE=0A=
+=0A=
+########################################################=0A=
+# This was written and is maintained by:=0A=
+#    Kirk Bauer <kirk@kaybee.org>=0A=
+#=0A=
+# Please send all comments, suggestions, bug reports,=0A=
+#    etc, to kirk@kaybee.org.=0A=
+########################################################=0A=
+=0A=
diff -urN logwatch-4.3.2/scripts/services/afpd =
logwatch-4.3.2.tsn1/scripts/services/afpd=0A=
--- logwatch-4.3.2/scripts/services/afpd	Sat Oct 12 12:20:54 2002=0A=
+++ logwatch-4.3.2.tsn1/scripts/services/afpd	Fri Mar  7 16:12:32 2003=0A=
@@ -3,6 +3,13 @@=0A=
 # $Id: afpd,v 1.1 2002/10/12 02:20:54 kirk Exp $=0A=
 =
#########################################################################=
#=0A=
 =0A=
+package	afpd;=0A=
+=0A=
+use Exporter;=0A=
+=0A=
+@ISA =3D qw(Exporter);=0A=
+@EXPORT =3D qw(do_line);=0A=
+=0A=
 $Detail =3D $ENV{'LOGWATCH_DETAIL_LEVEL'};=0A=
 =0A=
 while (defined($ThisLine =3D <STDIN>)) {=0A=
@@ -44,3 +51,4 @@=0A=
 =0A=
 exit(0);=0A=
 =0A=
+1;=0A=
diff -urN logwatch-4.3.2/scripts/services/arpwatch =
logwatch-4.3.2.tsn1/scripts/services/arpwatch=0A=
--- logwatch-4.3.2/scripts/services/arpwatch	Mon Jan 13 15:00:59 2003=0A=
+++ logwatch-4.3.2.tsn1/scripts/services/arpwatch	Fri Mar  7 16:13:01 =
2003=0A=
@@ -3,6 +3,13 @@=0A=
 # $Id: arpwatch,v 1.3 2003/01/13 04:00:59 kirk Exp $=0A=
 =
#########################################################################=
##=0A=
 =0A=
+package arpwatch;=0A=
+=0A=
+use Exporter;=0A=
+=0A=
+@ISA =3D qw(Exporter);=0A=
+@EXPORT =3D qw(do_line);=0A=
+=0A=
 my $Detail =3D $ENV{'LOGWATCH_DETAIL_LEVEL'};=0A=
 =0A=
 while (defined($ThisLine =3D <STDIN>)) {=0A=
@@ -20,3 +27,4 @@=0A=
 =0A=
 exit(0);=0A=
 =0A=
+1;=0A=
diff -urN logwatch-4.3.2/scripts/services/automount =
logwatch-4.3.2.tsn1/scripts/services/automount=0A=
--- logwatch-4.3.2/scripts/services/automount	Sat Oct 12 12:08:18 2002=0A=
+++ logwatch-4.3.2.tsn1/scripts/services/automount	Fri Mar  7 16:13:11 =
2003=0A=
@@ -11,6 +11,13 @@=0A=
 #    etc, to kirk@kaybee.org.=0A=
 ########################################################=0A=
 =0A=
+package	automount;=0A=
+=0A=
+use Exporter;=0A=
+=0A=
+@ISA =3D qw(Exporter);=0A=
+@EXPORT =3D qw(do_line);=0A=
+=0A=
 $Detail =3D $ENV{'LOGWATCH_DETAIL_LEVEL'};=0A=
 =0A=
 while (defined($ThisLine =3D <STDIN>)) {=0A=
@@ -92,3 +99,4 @@=0A=
     =0A=
 exit(0);=0A=
 =0A=
+1;=0A=
diff -urN logwatch-4.3.2/scripts/services/autorpm =
logwatch-4.3.2.tsn1/scripts/services/autorpm=0A=
--- logwatch-4.3.2/scripts/services/autorpm	Mon Jan 13 13:33:34 2003=0A=
+++ logwatch-4.3.2.tsn1/scripts/services/autorpm	Fri Mar  7 15:48:05 2003=0A=
@@ -16,6 +16,8 @@=0A=
 #Mon Sep 23 22:13:50 EDT 2002 - XXX-1.0-1 -> XXX-1.1-2=0A=
 #Tue Sep 24 12:32:09 EDT 2002 - Installed XXX-1.0-1=0A=
 =0A=
+package	autorpm;=0A=
+=0A=
 my (@Unmatched, $line, %Actions);=0A=
 while (defined($line =3D <STDIN>)) {=0A=
    chomp($line);=0A=
@@ -57,3 +59,5 @@=0A=
 =0A=
 exit 0;=0A=
 =0A=
+1;=0A=
+1;=0A=
diff -urN logwatch-4.3.2/scripts/services/cron =
logwatch-4.3.2.tsn1/scripts/services/cron=0A=
--- logwatch-4.3.2/scripts/services/cron	Sat Oct 12 12:08:18 2002=0A=
+++ logwatch-4.3.2.tsn1/scripts/services/cron	Fri Mar  7 16:13:19 2003=0A=
@@ -11,6 +11,14 @@=0A=
 #    etc, to kirk@kaybee.org.=0A=
 ########################################################=0A=
 =0A=
+package	cron;=0A=
+=0A=
+=0A=
+use Exporter;=0A=
+=0A=
+@ISA =3D qw(Exporter);=0A=
+@EXPORT =3D qw(do_line);=0A=
+=0A=
 $Detail =3D $ENV{'LOGWATCH_DETAIL_LEVEL'};=0A=
 =0A=
 while (defined($ThisLine =3D <STDIN>)) {=0A=
@@ -80,3 +88,5 @@=0A=
 }=0A=
 =0A=
 exit(0);=0A=
+=0A=
+1;=0A=
diff -urN logwatch-4.3.2/scripts/services/dhcpd =
logwatch-4.3.2.tsn1/scripts/services/dhcpd=0A=
--- logwatch-4.3.2/scripts/services/dhcpd	Sat Oct 12 12:08:18 2002=0A=
+++ logwatch-4.3.2.tsn1/scripts/services/dhcpd	Wed Mar 12 14:23:08 2003=0A=
@@ -12,6 +12,13 @@=0A=
 #    etc, to kirk@kaybee.org.=0A=
 ########################################################=0A=
 =0A=
+package	dhcpd;=0A=
+=0A=
+use Exporter;=0A=
+=0A=
+@dhcpd::ISA =3D qw(Exporter);=0A=
+@dhcpd::EXPORT =3D qw(do_line);=0A=
+=0A=
 my $Detail =3D $ENV{'LOGWATCH_DETAIL_LEVEL'};=0A=
 =0A=
 my %data;=0A=
@@ -63,3 +70,4 @@=0A=
    }=0A=
 }=0A=
 =0A=
+1;=0A=
diff -urN logwatch-4.3.2/scripts/services/exim =
logwatch-4.3.2.tsn1/scripts/services/exim=0A=
--- logwatch-4.3.2/scripts/services/exim	Mon Oct 14 00:16:39 2002=0A=
+++ logwatch-4.3.2.tsn1/scripts/services/exim	Fri Mar  7 16:13:39 2003=0A=
@@ -16,6 +16,13 @@=0A=
 #    Dariusz Nierada <dnierada@kat.supermedia.pl>=0A=
 ########################################################=0A=
 =0A=
+package	exim;=0A=
+=0A=
+use Exporter;=0A=
+=0A=
+@ISA =3D qw(Exporter);=0A=
+@EXPORT =3D qw(do_line);=0A=
+=0A=
 # aby hashe wychodzily w tej kolejnosci co wchodza=0A=
 eval "require Tie::IxHash" or exit 0;=0A=
 eval "require Date::Calc qw(Delta_Days)" or exit 0;=0A=
@@ -152,3 +159,4 @@=0A=
 =0A=
 exit(0);=0A=
 =0A=
+1;=0A=
diff -urN logwatch-4.3.2/scripts/services/ftpd-messages =
logwatch-4.3.2.tsn1/scripts/services/ftpd-messages=0A=
--- logwatch-4.3.2/scripts/services/ftpd-messages	Tue Jan 14 01:12:36 =
2003=0A=
+++ logwatch-4.3.2.tsn1/scripts/services/ftpd-messages	Thu Jan  1 =
10:00:00 1970=0A=
@@ -1,139 +0,0 @@=0A=
-#!/usr/bin/perl=0A=
-########################################################################=
##=0A=
-# $Id: ftpd-messages,v 1.20 2003/01/13 14:12:36 kirk Exp $=0A=
-########################################################################=
##=0A=
-=0A=
-########################################################=0A=
-# This was written and is maintained by:=0A=
-#    Kirk Bauer <kirk@kaybee.org>=0A=
-#=0A=
-# Please send all comments, suggestions, bug reports,=0A=
-#    etc, to kirk@kaybee.org.=0A=
-########################################################=0A=
-=0A=
-$Detail =3D $ENV{'LOGWATCH_DETAIL_LEVEL'};=0A=
-$IgnoreUnmatched =3D $ENV{'ftpd_ignore_unmatched'};=0A=
-=0A=
-while (defined($ThisLine =3D <STDIN>)) {=0A=
-   if ( ( $ThisLine =3D~ /FTP session closed$/ ) or=0A=
-         ( $ThisLine =3D~ /^getpeername \(in.ftpd\): Transport endpoint =
is not connected$/ ) or=0A=
-         ( $ThisLine =3D~ /QUIT/ ) or=0A=
-         ( $ThisLine =3D~ /IDLE/ ) or=0A=
-         ( $ThisLine =3D~ /TLS connection using cipher/ ) or=0A=
-         ( $ThisLine =3D~ /wu-ftpd - loading TLS config file/ ) or=0A=
-         ( $ThisLine =3D~ /lost connection to / ) or=0A=
-         ( $ThisLine =3D~ /^VirtualFTP Connect to: / ) or=0A=
-         ( $ThisLine =3D~ /ACCESS DENIED \(not in any class\) TO / ) or=0A=
-         ( $ThisLine =3D~ /data connect from/ ) or=0A=
-         ( $ThisLine =3D~ /wu-ftpd - TLS settings/ ) or=0A=
-         ( $ThisLine =3D~ /User .* timed out after .* seconds at .*$/ ) =
  ) {=0A=
-      # We don't care about these=0A=
-   } elsif ( ($Host,$IP,$Email) =3D ( $ThisLine =3D~ /^ANONYMOUS FTP =
LOGIN FROM ([^ ]+) \[(.*)\], (.*)$/ ) ) {=0A=
-      $Temp =3D "   " . $Host . " (" . $IP . "): " . $Email . " - ";=0A=
-      $AnonLogins{$Temp}++;=0A=
-   } elsif ( ($Host,$IP,$User) =3D ( $ThisLine =3D~ /FTP LOGIN FROM ([^ =
]+) \[(.*)\], (.*)$/ ) ) {=0A=
-      $Temp =3D "   " . $Host . " (" . $IP . "): " . $User . " - ";=0A=
-      $UserLogins{$Temp}++;=0A=
-   } elsif ( ($Host,$IP,$User) =3D ( $ThisLine =3D~ /^FTP LOGIN REFUSED =
\(.+\) FROM ([^ ]+) \[(.*)\], (.*)$/ ) ) {=0A=
-      $Temp =3D "   " . $Host . " (" . $IP . "): " . $User . " - ";=0A=
-      $FailedLogins{$Temp}++;=0A=
-   } elsif ( ($Host,$IP,$User) =3D ( $ThisLine =3D~ /REFUSED .+ from =
([^ ]+) \[(.*)\], (.*)$/i ) ) {=0A=
-      $Temp =3D "   " . $Host . " (" . $IP . "): " . $User . " - ";=0A=
-      $FailedLogins{$Temp}++;=0A=
-   } elsif ( ($Host,$IP,$User) =3D ( $ThisLine =3D~ /^failed login from =
([^ ]+) \[(.*)\], (.*)$/ ) ) {=0A=
-      $Temp =3D "   " . $Host . " (" . $IP . "): " . $User . " - ";=0A=
-      $FailedLogins{$Temp}++;=0A=
-   } elsif ( ($Limit,$Class,$Host,$IP) =3D ( $ThisLine =3D~ /^ACCESS =
DENIED \(user limit (.*)\; class (.*)\) TO (.*) \[(.*)\]/ ) ) {=0A=
-      $Temp =3D "   " . $Host . " (" . $IP . "): class " . $Class . " =
(Limit: " . $Limit . ") - ";=0A=
-      $FailedLogins{$Temp}++;=0A=
-   } elsif ( ($Host,$IP) =3D ( $ThisLine =3D~ /^FTP ACCESS REFUSED =
\(anonymous password not rfc822\) from (.*) \[(.*)\]/ ) ) {=0A=
-      $Temp =3D "   " . $Host . " (" . $IP . ") - ";=0A=
-      $FailedLogins{$Temp}++;=0A=
-   } elsif ( ($Host,$IP,$User) =3D ( $ThisLine =3D~ /failed login from =
([^ ]+) \[(.*)\]$/ ) ) {=0A=
-      $Temp =3D "   " . $Host . " (" . $IP . ") - ";=0A=
-      $FailedLogins{$Temp}++;=0A=
-   } elsif ( ($IP,$Host) =3D ( $ThisLine =3D~ /^refused PORT =
([0123456789.]+),[0123456789]+ from (.*)$/ ) ) {=0A=
-      $Temp =3D "   " . $Host . " (" . $IP . ") - ";=0A=
-      $RefusedPorts{$Temp}++;=0A=
-   } elsif ( $ThisLine =3D~ /^exiting on signal 11: Segmentation =
fault$/ ) {=0A=
-      $SegFault++;=0A=
-   } elsif ( ($User,$Host,$IP,$File) =3D ( $ThisLine =3D~ /^([^ ]+) of =
([^ ]*) \[(.*)\] deleted (.*)$/ ) ) {=0A=
-      $Temp =3D "   " . $Host . " (" . $IP . "): " . $User . "\n";=0A=
-      $Temp2 =3D "      " . $File . "\n";=0A=
-      push @{$DeletedFiles{$Temp}}, $Temp2;=0A=
-   } elsif ( ($User,$Pass,$Host,$IP) =3D ( $ThisLine =3D~ /(.*)\((.*)\) =
of (.*) \[(.*)\] tried to/) ) {=0A=
-      $Temp =3D "   " . $Host . " ($IP): " . $User . " ($Pass) - ";=0A=
-      $SecurityViolations{$Temp}++;=0A=
-   } elsif ( ($Host,$User,$IP) =3D ( $ThisLine =3D~ /(.*)\: (.*)\: SITE =
.* \[(.*)\] tried to/) ) {=0A=
-      $Temp =3D "   " . $Host . " ($IP): " . $User . " - ";=0A=
-      $SecurityViolations{$Temp}++;=0A=
-   } elsif ( ($Host,$IP) =3D ( $ThisLine =3D~ /^FTP LOGIN FAILED =
\(cannot set guest privileges\) for ([^ ]+) \[(.*)\], ftp$/ ) ) {=0A=
-      $Temp =3D "   " . $Host . " (" . $IP . "): - ";=0A=
-      $RefusedAnonLogins{$Temp}++;=0A=
-   } else {=0A=
-      # Report any unmatched entries...=0A=
-      push @OtherList,$ThisLine;=0A=
-   }=0A=
-}=0A=
-=0A=
-if ( (keys %AnonLogins) and ($Detail >=3D 10) ) {=0A=
-   print "\nAnonymous FTP Logins:\n";=0A=
-   foreach $ThisOne (keys %AnonLogins) {=0A=
-      print $ThisOne . $AnonLogins{$ThisOne} . " Time(s)\n";=0A=
-   }=0A=
-}=0A=
-=0A=
-if ((keys %DeletedFiles) and ($Detail >=3D 5)) {=0A=
-   print "\nFiles deleted through FTP:\n";=0A=
-   foreach $ThisOne (keys %DeletedFiles) {=0A=
-      print $ThisOne;=0A=
-      print @{$DeletedFiles{$ThisOne}};=0A=
-   }=0A=
-}=0A=
-=0A=
-if ((keys %UserLogins) and ($Details >=3D 5)) {=0A=
-   print "\nUser FTP Logins:\n";=0A=
-   foreach $ThisOne (keys %UserLogins) {=0A=
-      print $ThisOne . $UserLogins{$ThisOne} . " Time(s)\n";=0A=
-   }=0A=
-}=0A=
-=0A=
-if (keys %FailedLogins) {=0A=
-   print "\nFailed FTP Logins:\n";=0A=
-   foreach $ThisOne (keys %FailedLogins) {=0A=
-      print $ThisOne . $FailedLogins{$ThisOne} . " Time(s)\n";=0A=
-   }=0A=
-}=0A=
-=0A=
-if ( (keys %RefusedPorts) and ($Detail >=3D 10) ) {=0A=
-   print "\nRefused PORTs:\n";=0A=
-   foreach $ThisOne (keys %RefusedPorts) {=0A=
-      print $ThisOne . $RefusedPorts{$ThisOne} . " Time(s)\n";=0A=
-   }=0A=
-}=0A=
-=0A=
-if ( (keys %SecurityViolations) and ($Detail >=3D 5) ) {=0A=
-   print "\nFailed filesystem violations:\n";=0A=
-   foreach $ThisOne (keys %SecurityViolations) {=0A=
-      print $ThisOne . $SecurityViolations{$ThisOne} . " Time(s)\n";=0A=
-   }=0A=
-}=0A=
-=0A=
-if (keys %RefusedAnonLogins) {=0A=
-   print "\nRefused anonymous FTP Logins:\n";=0A=
-   foreach $ThisOne (keys %RefusedAnonLogins) {=0A=
-      print $ThisOne . $RefusedAnonLogins{$ThisOne} . " Time(s)\n";=0A=
-   }=0A=
-}=0A=
-=0A=
-if ($SegFault > 0) {=0A=
-   print "\nexiting on signal 11: Segmentation fault: $SegFault =
Time(s)\n";=0A=
-}=0A=
-=0A=
-if (($#OtherList >=3D 0) and (not $IgnoreUnmatched)){=0A=
-   print "\n**Unmatched Entries**\n";=0A=
-   print @OtherList;=0A=
-}=0A=
-=0A=
-exit(0);=0A=
-=0A=
diff -urN logwatch-4.3.2/scripts/services/ftpd-xferlog =
logwatch-4.3.2.tsn1/scripts/services/ftpd-xferlog=0A=
--- logwatch-4.3.2/scripts/services/ftpd-xferlog	Mon Oct 14 00:49:02 2002=0A=
+++ logwatch-4.3.2.tsn1/scripts/services/ftpd-xferlog	Thu Jan  1 =
10:00:00 1970=0A=
@@ -1,166 +0,0 @@=0A=
-#!/usr/bin/perl -w=0A=
-########################################################################=
##=0A=
-# $Id: ftpd-xferlog,v 1.12 2002/10/13 14:49:02 kirk Exp $=0A=
-########################################################################=
##=0A=
-=0A=
-########################################################=0A=
-# This was written and is maintained by:=0A=
-#    Kirk Bauer <kirk@kaybee.org>=0A=
-#=0A=
-# Please send all comments, suggestions, bug reports,=0A=
-#    etc, to kirk@kaybee.org.=0A=
-########################################################=0A=
-=0A=
-sub remove_dups {=0A=
-   my(@info)=3Dsort @_;=0A=
-=0A=
-   my(%count,@out,$i);=0A=
-   foreach $i (@info) {=0A=
-      $count{$i}++;=0A=
-   }=0A=
-=0A=
-   foreach $i (keys %count) {=0A=
-      my($j)=3D$i;=0A=
-      $j =3D~ s/\n//;=0A=
-      if ($count{$i} > 1) {=0A=
-         push @out, $j . " (".$count{$i}." Times)\n";=0A=
-      } else {=0A=
-         push @out, "$j\n";=0A=
-      }=0A=
-   }=0A=
-   return @out;=0A=
-}=0A=
-        =0A=
-=0A=
-$Detail =3D $ENV{'LOGWATCH_DETAIL_LEVEL'};=0A=
-$FTPDetail =3D $ENV{'detail_transfer'};=0A=
-=0A=
-$TotalBytesOut =3D 0;=0A=
-$TotalBytesIn =3D 0;=0A=
-=0A=
-while (defined($ThisLine =3D <STDIN>)) {=0A=
-   # Remove transfer time if it is there=0A=
-   if ( ($RemoteHost,$Size,$FileName,$Direction,$AccessMode,$UserName) =
=3D =0A=
-         ( $ThisLine =3D~ /^([^ ]+) ([0123456789]+) (.*) . . (.) (.) =
(.*) ftp . .*$/ ) ) {=0A=
-      if ( $AccessMode eq "a" ) {=0A=
-         # Anonymous transfers=0A=
-         if ( $Direction eq "o" ) {=0A=
-            # File was outgoing=0A=
-            $TotalBytesOut +=3D $Size;=0A=
-            if ($Detail >=3D 15) {=0A=
-               $Temp =3D "   " . $FileName . " -> " . $RemoteHost . " =
(Email: " . $UserName . ")\n";=0A=
-            }        	=0A=
-            else {=0A=
-               $Temp =3D "   " . $FileName . " -> " . $RemoteHost . =
"\n";=0A=
-            }=0A=
-            push @AnonOut, $Temp;=0A=
-            $FilesOut{$FileName}++;=0A=
-         }=0A=
-         else {=0A=
-            # File was incoming=0A=
-            $TotalBytesIn +=3D $Size;=0A=
-            if ($Detail >=3D 15) {=0A=
-               $Temp =3D "   " . $RemoteHost . " -> " . $FileName . " =
(User: " . $UserName . ")\n";=0A=
-            }        	=0A=
-            else {=0A=
-               $Temp =3D "   " . $RemoteHost . " -> " . $FileName . =
"\n";=0A=
-            }=0A=
-            push @AnonIn, $Temp;=0A=
-         }=0A=
-      }=0A=
-      elsif ( $AccessMode eq "g" ) {=0A=
-        # Guest transfers=0A=
-         if ( $Direction eq "o" ) {=0A=
-            # File was outgoing=0A=
-            $TotalBytesOut +=3D $Size;=0A=
-            $Temp =3D "   " . $FileName . " -> " . $RemoteHost . " =
(User: " . $UserName . ")\n";=0A=
-            push @GuestOut, $Temp;=0A=
-         }=0A=
-         else {=0A=
-            # File was incoming=0A=
-            $TotalBytesIn +=3D $Size;=0A=
-            $Temp =3D "   " . $RemoteHost . " -> " . $FileName . " =
(User: " . $UserName . ")\n";=0A=
-            push @GuestIn, $Temp;=0A=
-         }=0A=
-      }=0A=
-      elsif ( $AccessMode eq "r" ) {=0A=
-         # User transfers=0A=
-         if ( $Direction eq "o" ) {=0A=
-            # File was outgoing=0A=
-            $TotalBytesOut +=3D $Size;=0A=
-            $Temp =3D "   " . $FileName . " -> " . $RemoteHost . " =
(User: " . $UserName . ")\n";=0A=
-            push @UserOut, $Temp;=0A=
-         }=0A=
-         else {=0A=
-            # File was incoming=0A=
-            $TotalBytesIn +=3D $Size;=0A=
-            $Temp =3D "   " . $RemoteHost . " -> " . $FileName . " =
(User: " . $UserName . ")\n";=0A=
-            push @UserIn, $Temp;=0A=
-         }=0A=
-      }=0A=
-   }        		 =0A=
-   else {=0A=
-      # Report any unmatched entries...=0A=
-      push @OtherList, $ThisLine;=0A=
-   }=0A=
-}=0A=
-=0A=
-@AnonOut=3D&remove_dups(@AnonOut);=0A=
-@AnonIn=3D&remove_dups(@AnonIn);=0A=
-@GuestOut=3D&remove_dups(@GuestOut);=0A=
-@GuestIn=3D&remove_dups(@GuestIn);=0A=
-@UserOut=3D&remove_dups(@UserOut);=0A=
-@UserIn=3D&remove_dups(@UserIn);=0A=
-@OtherList=3D&remove_dups(@OtherList);=0A=
-=0A=
-$TotalKBytesOut =3D int $TotalBytesOut/1000;=0A=
-$TotalKBytesIn =3D int $TotalBytesIn/1000;=0A=
-$TotalMBytesOut =3D int $TotalKBytesOut/1000;=0A=
-$TotalMBytesIn =3D int $TotalKBytesIn/1000;=0A=
-($TotalKBytesOut > 0) and print "TOTAL KB OUT: " . $TotalKBytesOut . =
"KB (" . $TotalMBytesOut . "MB)\n";=0A=
-($TotalKBytesIn  > 0) and print "TOTAL KB IN: " . $TotalKBytesIn . "KB =
(" . $TotalMBytesIn . "MB)\n";=0A=
-=0A=
-if (@AnonIn) {=0A=
-   print "\nIncoming Anonymous FTP Transfers:\n";=0A=
-   print @AnonIn;=0A=
-}=0A=
-=0A=
-if ( (keys %FilesOut) and ($Detail >=3D 5) and ($Detail < 10) ) {=0A=
-   print "\nOutgoing Anonymous FTP Transfers (By File):\n";=0A=
-   foreach (sort keys %FilesOut) {=0A=
-      print "   $_: $FilesOut{$_} Time(s)\n";=0A=
-}=0A=
-=0A=
-if ( (@GuestIn) and ($Detail >=3D 10) and ($FTPDetail > 0)) {=0A=
-   print "\nIncoming Guest FTP Transfers:\n";=0A=
-   print @GuestIn;=0A=
-}=0A=
-=0A=
-if ( (@GuestOut) and ($Detail >=3D 10) and ($FTPDetail > 0)) {=0A=
-   print "\nOutgoing Guest FTP Transfers:\n";=0A=
-   print @GuestOut;=0A=
-   }=0A=
-}=0A=
-=0A=
-if ( (@AnonOut) and ($Detail >=3D 10) ) {=0A=
-   print "\nOutgoing Anonymous FTP Transfers:\n";=0A=
-   print @AnonOut;=0A=
-}=0A=
-=0A=
-if ( (@UserIn) and ($Detail >=3D 10) and ($FTPDetail > 0)) {=0A=
-   print "\nIncoming User FTP Transfers:\n";=0A=
-   print @UserIn;=0A=
-}=0A=
-=0A=
-if ( (@UserOut) and ($Detail >=3D 10) and ($FTPDetail > 0)) {=0A=
-   print "\nOutgoing User FTP Transfers:\n";=0A=
-   print @UserOut;=0A=
-}=0A=
-=0A=
-if ($#OtherList >=3D 0) {=0A=
-   print "\n**Unmatched Entries**\n";=0A=
-   print @OtherList;=0A=
-}=0A=
-=0A=
-exit(0);=0A=
-=0A=
diff -urN logwatch-4.3.2/scripts/services/ftpd_messages =
logwatch-4.3.2.tsn1/scripts/services/ftpd_messages=0A=
--- logwatch-4.3.2/scripts/services/ftpd_messages	Thu Jan  1 10:00:00 =
1970=0A=
+++ logwatch-4.3.2.tsn1/scripts/services/ftpd_messages	Wed Mar 12 =
14:40:13 2003=0A=
@@ -0,0 +1,142 @@=0A=
+#!/usr/bin/perl=0A=
+########################################################################=
##=0A=
+# $Id: ftpd-messages,v 1.20 2003/01/13 14:12:36 kirk Exp $=0A=
+########################################################################=
##=0A=
+=0A=
+########################################################=0A=
+# This was written and is maintained by:=0A=
+#    Kirk Bauer <kirk@kaybee.org>=0A=
+#=0A=
+# Please send all comments, suggestions, bug reports,=0A=
+#    etc, to kirk@kaybee.org.=0A=
+########################################################=0A=
+=0A=
+package	ftpd_messages;=0A=
+=0A=
+$Detail =3D $ENV{'LOGWATCH_DETAIL_LEVEL'};=0A=
+$IgnoreUnmatched =3D $ENV{'ftpd_ignore_unmatched'};=0A=
+=0A=
+while (defined($ThisLine =3D <STDIN>)) {=0A=
+   if ( ( $ThisLine =3D~ /FTP session closed$/ ) or=0A=
+         ( $ThisLine =3D~ /^getpeername \(in.ftpd\): Transport endpoint =
is not connected$/ ) or=0A=
+         ( $ThisLine =3D~ /QUIT/ ) or=0A=
+         ( $ThisLine =3D~ /IDLE/ ) or=0A=
+         ( $ThisLine =3D~ /TLS connection using cipher/ ) or=0A=
+         ( $ThisLine =3D~ /wu-ftpd - loading TLS config file/ ) or=0A=
+         ( $ThisLine =3D~ /lost connection to / ) or=0A=
+         ( $ThisLine =3D~ /^VirtualFTP Connect to: / ) or=0A=
+         ( $ThisLine =3D~ /ACCESS DENIED \(not in any class\) TO / ) or=0A=
+         ( $ThisLine =3D~ /data connect from/ ) or=0A=
+         ( $ThisLine =3D~ /wu-ftpd - TLS settings/ ) or=0A=
+         ( $ThisLine =3D~ /User .* timed out after .* seconds at .*$/ ) =
  ) {=0A=
+      # We don't care about these=0A=
+   } elsif ( ($Host,$IP,$Email) =3D ( $ThisLine =3D~ /^ANONYMOUS FTP =
LOGIN FROM ([^ ]+) \[(.*)\], (.*)$/ ) ) {=0A=
+      $Temp =3D "   " . $Host . " (" . $IP . "): " . $Email . " - ";=0A=
+      $AnonLogins{$Temp}++;=0A=
+   } elsif ( ($Host,$IP,$User) =3D ( $ThisLine =3D~ /FTP LOGIN FROM ([^ =
]+) \[(.*)\], (.*)$/ ) ) {=0A=
+      $Temp =3D "   " . $Host . " (" . $IP . "): " . $User . " - ";=0A=
+      $UserLogins{$Temp}++;=0A=
+   } elsif ( ($Host,$IP,$User) =3D ( $ThisLine =3D~ /^FTP LOGIN REFUSED =
\(.+\) FROM ([^ ]+) \[(.*)\], (.*)$/ ) ) {=0A=
+      $Temp =3D "   " . $Host . " (" . $IP . "): " . $User . " - ";=0A=
+      $FailedLogins{$Temp}++;=0A=
+   } elsif ( ($Host,$IP,$User) =3D ( $ThisLine =3D~ /REFUSED .+ from =
([^ ]+) \[(.*)\], (.*)$/i ) ) {=0A=
+      $Temp =3D "   " . $Host . " (" . $IP . "): " . $User . " - ";=0A=
+      $FailedLogins{$Temp}++;=0A=
+   } elsif ( ($Host,$IP,$User) =3D ( $ThisLine =3D~ /^failed login from =
([^ ]+) \[(.*)\], (.*)$/ ) ) {=0A=
+      $Temp =3D "   " . $Host . " (" . $IP . "): " . $User . " - ";=0A=
+      $FailedLogins{$Temp}++;=0A=
+   } elsif ( ($Limit,$Class,$Host,$IP) =3D ( $ThisLine =3D~ /^ACCESS =
DENIED \(user limit (.*)\; class (.*)\) TO (.*) \[(.*)\]/ ) ) {=0A=
+      $Temp =3D "   " . $Host . " (" . $IP . "): class " . $Class . " =
(Limit: " . $Limit . ") - ";=0A=
+      $FailedLogins{$Temp}++;=0A=
+   } elsif ( ($Host,$IP) =3D ( $ThisLine =3D~ /^FTP ACCESS REFUSED =
\(anonymous password not rfc822\) from (.*) \[(.*)\]/ ) ) {=0A=
+      $Temp =3D "   " . $Host . " (" . $IP . ") - ";=0A=
+      $FailedLogins{$Temp}++;=0A=
+   } elsif ( ($Host,$IP,$User) =3D ( $ThisLine =3D~ /failed login from =
([^ ]+) \[(.*)\]$/ ) ) {=0A=
+      $Temp =3D "   " . $Host . " (" . $IP . ") - ";=0A=
+      $FailedLogins{$Temp}++;=0A=
+   } elsif ( ($IP,$Host) =3D ( $ThisLine =3D~ /^refused PORT =
([0123456789.]+),[0123456789]+ from (.*)$/ ) ) {=0A=
+      $Temp =3D "   " . $Host . " (" . $IP . ") - ";=0A=
+      $RefusedPorts{$Temp}++;=0A=
+   } elsif ( $ThisLine =3D~ /^exiting on signal 11: Segmentation =
fault$/ ) {=0A=
+      $SegFault++;=0A=
+   } elsif ( ($User,$Host,$IP,$File) =3D ( $ThisLine =3D~ /^([^ ]+) of =
([^ ]*) \[(.*)\] deleted (.*)$/ ) ) {=0A=
+      $Temp =3D "   " . $Host . " (" . $IP . "): " . $User . "\n";=0A=
+      $Temp2 =3D "      " . $File . "\n";=0A=
+      push @{$DeletedFiles{$Temp}}, $Temp2;=0A=
+   } elsif ( ($User,$Pass,$Host,$IP) =3D ( $ThisLine =3D~ /(.*)\((.*)\) =
of (.*) \[(.*)\] tried to/) ) {=0A=
+      $Temp =3D "   " . $Host . " ($IP): " . $User . " ($Pass) - ";=0A=
+      $SecurityViolations{$Temp}++;=0A=
+   } elsif ( ($Host,$User,$IP) =3D ( $ThisLine =3D~ /(.*)\: (.*)\: SITE =
.* \[(.*)\] tried to/) ) {=0A=
+      $Temp =3D "   " . $Host . " ($IP): " . $User . " - ";=0A=
+      $SecurityViolations{$Temp}++;=0A=
+   } elsif ( ($Host,$IP) =3D ( $ThisLine =3D~ /^FTP LOGIN FAILED =
\(cannot set guest privileges\) for ([^ ]+) \[(.*)\], ftp$/ ) ) {=0A=
+      $Temp =3D "   " . $Host . " (" . $IP . "): - ";=0A=
+      $RefusedAnonLogins{$Temp}++;=0A=
+   } else {=0A=
+      # Report any unmatched entries...=0A=
+      push @OtherList,$ThisLine;=0A=
+   }=0A=
+}=0A=
+=0A=
+if ( (keys %AnonLogins) and ($Detail >=3D 10) ) {=0A=
+   print "\nAnonymous FTP Logins:\n";=0A=
+   foreach $ThisOne (keys %AnonLogins) {=0A=
+      print $ThisOne . $AnonLogins{$ThisOne} . " Time(s)\n";=0A=
+   }=0A=
+}=0A=
+=0A=
+if ((keys %DeletedFiles) and ($Detail >=3D 5)) {=0A=
+   print "\nFiles deleted through FTP:\n";=0A=
+   foreach $ThisOne (keys %DeletedFiles) {=0A=
+      print $ThisOne;=0A=
+      print @{$DeletedFiles{$ThisOne}};=0A=
+   }=0A=
+}=0A=
+=0A=
+if ((keys %UserLogins) and ($Details >=3D 5)) {=0A=
+   print "\nUser FTP Logins:\n";=0A=
+   foreach $ThisOne (keys %UserLogins) {=0A=
+      print $ThisOne . $UserLogins{$ThisOne} . " Time(s)\n";=0A=
+   }=0A=
+}=0A=
+=0A=
+if (keys %FailedLogins) {=0A=
+   print "\nFailed FTP Logins:\n";=0A=
+   foreach $ThisOne (keys %FailedLogins) {=0A=
+      print $ThisOne . $FailedLogins{$ThisOne} . " Time(s)\n";=0A=
+   }=0A=
+}=0A=
+=0A=
+if ( (keys %RefusedPorts) and ($Detail >=3D 10) ) {=0A=
+   print "\nRefused PORTs:\n";=0A=
+   foreach $ThisOne (keys %RefusedPorts) {=0A=
+      print $ThisOne . $RefusedPorts{$ThisOne} . " Time(s)\n";=0A=
+   }=0A=
+}=0A=
+=0A=
+if ( (keys %SecurityViolations) and ($Detail >=3D 5) ) {=0A=
+   print "\nFailed filesystem violations:\n";=0A=
+   foreach $ThisOne (keys %SecurityViolations) {=0A=
+      print $ThisOne . $SecurityViolations{$ThisOne} . " Time(s)\n";=0A=
+   }=0A=
+}=0A=
+=0A=
+if (keys %RefusedAnonLogins) {=0A=
+   print "\nRefused anonymous FTP Logins:\n";=0A=
+   foreach $ThisOne (keys %RefusedAnonLogins) {=0A=
+      print $ThisOne . $RefusedAnonLogins{$ThisOne} . " Time(s)\n";=0A=
+   }=0A=
+}=0A=
+=0A=
+if ($SegFault > 0) {=0A=
+   print "\nexiting on signal 11: Segmentation fault: $SegFault =
Time(s)\n";=0A=
+}=0A=
+=0A=
+if (($#OtherList >=3D 0) and (not $IgnoreUnmatched)){=0A=
+   print "\n**Unmatched Entries**\n";=0A=
+   print @OtherList;=0A=
+}=0A=
+=0A=
+exit(0);=0A=
+=0A=
+1;=0A=
diff -urN logwatch-4.3.2/scripts/services/ftpd_xferlog =
logwatch-4.3.2.tsn1/scripts/services/ftpd_xferlog=0A=
--- logwatch-4.3.2/scripts/services/ftpd_xferlog	Thu Jan  1 10:00:00 1970=0A=
+++ logwatch-4.3.2.tsn1/scripts/services/ftpd_xferlog	Wed Mar 12 =
15:11:16 2003=0A=
@@ -0,0 +1,169 @@=0A=
+#!/usr/bin/perl -w=0A=
+########################################################################=
##=0A=
+# $Id: ftpd-xferlog,v 1.12 2002/10/13 14:49:02 kirk Exp $=0A=
+########################################################################=
##=0A=
+=0A=
+########################################################=0A=
+# This was written and is maintained by:=0A=
+#    Kirk Bauer <kirk@kaybee.org>=0A=
+#=0A=
+# Please send all comments, suggestions, bug reports,=0A=
+#    etc, to kirk@kaybee.org.=0A=
+########################################################=0A=
+=0A=
+package ftpd_xferlog;=0A=
+=0A=
+sub remove_dups {=0A=
+   my(@info)=3Dsort @_;=0A=
+=0A=
+   my(%count,@out,$i);=0A=
+   foreach $i (@info) {=0A=
+      $count{$i}++;=0A=
+   }=0A=
+=0A=
+   foreach $i (keys %count) {=0A=
+      my($j)=3D$i;=0A=
+      $j =3D~ s/\n//;=0A=
+      if ($count{$i} > 1) {=0A=
+         push @out, $j . " (".$count{$i}." Times)\n";=0A=
+      } else {=0A=
+         push @out, "$j\n";=0A=
+      }=0A=
+   }=0A=
+   return @out;=0A=
+}=0A=
+        =0A=
+=0A=
+$Detail =3D $ENV{'LOGWATCH_DETAIL_LEVEL'};=0A=
+$FTPDetail =3D $ENV{'detail_transfer'};=0A=
+=0A=
+$TotalBytesOut =3D 0;=0A=
+$TotalBytesIn =3D 0;=0A=
+=0A=
+while (defined($ThisLine =3D <STDIN>)) {=0A=
+   # Remove transfer time if it is there=0A=
+   if ( ($RemoteHost,$Size,$FileName,$Direction,$AccessMode,$UserName) =
=3D =0A=
+         ( $ThisLine =3D~ /^([^ ]+) ([0123456789]+) (.*) . . (.) (.) =
(.*) ftp . .*$/ ) ) {=0A=
+      if ( $AccessMode eq "a" ) {=0A=
+         # Anonymous transfers=0A=
+         if ( $Direction eq "o" ) {=0A=
+            # File was outgoing=0A=
+            $TotalBytesOut +=3D $Size;=0A=
+            if ($Detail >=3D 15) {=0A=
+               $Temp =3D "   " . $FileName . " -> " . $RemoteHost . " =
(Email: " . $UserName . ")\n";=0A=
+            }        	=0A=
+            else {=0A=
+               $Temp =3D "   " . $FileName . " -> " . $RemoteHost . =
"\n";=0A=
+            }=0A=
+            push @AnonOut, $Temp;=0A=
+            $FilesOut{$FileName}++;=0A=
+         }=0A=
+         else {=0A=
+            # File was incoming=0A=
+            $TotalBytesIn +=3D $Size;=0A=
+            if ($Detail >=3D 15) {=0A=
+               $Temp =3D "   " . $RemoteHost . " -> " . $FileName . " =
(User: " . $UserName . ")\n";=0A=
+            }        	=0A=
+            else {=0A=
+               $Temp =3D "   " . $RemoteHost . " -> " . $FileName . =
"\n";=0A=
+            }=0A=
+            push @AnonIn, $Temp;=0A=
+         }=0A=
+      }=0A=
+      elsif ( $AccessMode eq "g" ) {=0A=
+        # Guest transfers=0A=
+         if ( $Direction eq "o" ) {=0A=
+            # File was outgoing=0A=
+            $TotalBytesOut +=3D $Size;=0A=
+            $Temp =3D "   " . $FileName . " -> " . $RemoteHost . " =
(User: " . $UserName . ")\n";=0A=
+            push @GuestOut, $Temp;=0A=
+         }=0A=
+         else {=0A=
+            # File was incoming=0A=
+            $TotalBytesIn +=3D $Size;=0A=
+            $Temp =3D "   " . $RemoteHost . " -> " . $FileName . " =
(User: " . $UserName . ")\n";=0A=
+            push @GuestIn, $Temp;=0A=
+         }=0A=
+      }=0A=
+      elsif ( $AccessMode eq "r" ) {=0A=
+         # User transfers=0A=
+         if ( $Direction eq "o" ) {=0A=
+            # File was outgoing=0A=
+            $TotalBytesOut +=3D $Size;=0A=
+            $Temp =3D "   " . $FileName . " -> " . $RemoteHost . " =
(User: " . $UserName . ")\n";=0A=
+            push @UserOut, $Temp;=0A=
+         }=0A=
+         else {=0A=
+            # File was incoming=0A=
+            $TotalBytesIn +=3D $Size;=0A=
+            $Temp =3D "   " . $RemoteHost . " -> " . $FileName . " =
(User: " . $UserName . ")\n";=0A=
+            push @UserIn, $Temp;=0A=
+         }=0A=
+      }=0A=
+   }        		 =0A=
+   else {=0A=
+      # Report any unmatched entries...=0A=
+      push @OtherList, $ThisLine;=0A=
+   }=0A=
+}=0A=
+=0A=
+@AnonOut=3D&remove_dups(@AnonOut);=0A=
+@AnonIn=3D&remove_dups(@AnonIn);=0A=
+@GuestOut=3D&remove_dups(@GuestOut);=0A=
+@GuestIn=3D&remove_dups(@GuestIn);=0A=
+@UserOut=3D&remove_dups(@UserOut);=0A=
+@UserIn=3D&remove_dups(@UserIn);=0A=
+@OtherList=3D&remove_dups(@OtherList);=0A=
+=0A=
+$TotalKBytesOut =3D int $TotalBytesOut/1000;=0A=
+$TotalKBytesIn =3D int $TotalBytesIn/1000;=0A=
+$TotalMBytesOut =3D int $TotalKBytesOut/1000;=0A=
+$TotalMBytesIn =3D int $TotalKBytesIn/1000;=0A=
+($TotalKBytesOut > 0) and print "TOTAL KB OUT: " . $TotalKBytesOut . =
"KB (" . $TotalMBytesOut . "MB)\n";=0A=
+($TotalKBytesIn  > 0) and print "TOTAL KB IN: " . $TotalKBytesIn . "KB =
(" . $TotalMBytesIn . "MB)\n";=0A=
+=0A=
+if (@AnonIn) {=0A=
+   print "\nIncoming Anonymous FTP Transfers:\n";=0A=
+   print @AnonIn;=0A=
+}=0A=
+=0A=
+if ( (keys %FilesOut) and ($Detail >=3D 5) and ($Detail < 10) ) {=0A=
+   print "\nOutgoing Anonymous FTP Transfers (By File):\n";=0A=
+   foreach (sort keys %FilesOut) {=0A=
+      print "   $_: $FilesOut{$_} Time(s)\n";=0A=
+}=0A=
+=0A=
+if ( (@GuestIn) and ($Detail >=3D 10) and ($FTPDetail > 0)) {=0A=
+   print "\nIncoming Guest FTP Transfers:\n";=0A=
+   print @GuestIn;=0A=
+}=0A=
+=0A=
+if ( (@GuestOut) and ($Detail >=3D 10) and ($FTPDetail > 0)) {=0A=
+   print "\nOutgoing Guest FTP Transfers:\n";=0A=
+   print @GuestOut;=0A=
+   }=0A=
+}=0A=
+=0A=
+if ( (@AnonOut) and ($Detail >=3D 10) ) {=0A=
+   print "\nOutgoing Anonymous FTP Transfers:\n";=0A=
+   print @AnonOut;=0A=
+}=0A=
+=0A=
+if ( (@UserIn) and ($Detail >=3D 10) and ($FTPDetail > 0)) {=0A=
+   print "\nIncoming User FTP Transfers:\n";=0A=
+   print @UserIn;=0A=
+}=0A=
+=0A=
+if ( (@UserOut) and ($Detail >=3D 10) and ($FTPDetail > 0)) {=0A=
+   print "\nOutgoing User FTP Transfers:\n";=0A=
+   print @UserOut;=0A=
+}=0A=
+=0A=
+if ($#OtherList >=3D 0) {=0A=
+   print "\n**Unmatched Entries**\n";=0A=
+   print @OtherList;=0A=
+}=0A=
+=0A=
+exit(0);=0A=
+=0A=
+1;=0A=
diff -urN logwatch-4.3.2/scripts/services/identd =
logwatch-4.3.2.tsn1/scripts/services/identd=0A=
--- logwatch-4.3.2/scripts/services/identd	Sat Oct 12 12:08:18 2002=0A=
+++ logwatch-4.3.2.tsn1/scripts/services/identd	Fri Mar  7 15:49:26 2003=0A=
@@ -11,6 +11,8 @@=0A=
 #    etc, to kirk@kaybee.org.=0A=
 ########################################################=0A=
 =0A=
+package identd;=0A=
+=0A=
 $Debug =3D $ENV{'LOGWATCH_DEBUG'};=0A=
 $Detail =3D $ENV{'LOGWATCH_DETAIL_LEVEL'};=0A=
 =0A=
@@ -148,3 +150,4 @@=0A=
 =0A=
 exit(0);=0A=
 =0A=
+1;=0A=
diff -urN logwatch-4.3.2/scripts/services/in.qpopper =
logwatch-4.3.2.tsn1/scripts/services/in.qpopper=0A=
--- logwatch-4.3.2/scripts/services/in.qpopper	Wed Feb 19 02:31:06 2003=0A=
+++ logwatch-4.3.2.tsn1/scripts/services/in.qpopper	Thu Jan  1 10:00:00 =
1970=0A=
@@ -1,96 +0,0 @@=0A=
-#!/usr/bin/perl -w=0A=
-########################################################################=
##=0A=
-# $Id: in.qpopper,v 1.4 2003/02/18 15:31:06 kirk Exp $=0A=
-########################################################################=
##=0A=
-=0A=
-########################################################=0A=
-# This was written and is maintained by:=0A=
-#    Kenneth Porter <shiva@well.com>=0A=
-#=0A=
-# Please send all comments, suggestions, bug reports,=0A=
-#    etc, to shiva@well.com.=0A=
-########################################################=0A=
-=0A=
-$Detail =3D $ENV{'LOGWATCH_DETAIL_LEVEL'};=0A=
-=0A=
-while (defined($ThisLine =3D <STDIN>)) {=0A=
-    if ( $ThisLine =3D~ /xsender/ ) { =0A=
-        # We don't care about these=0A=
-    }=0A=
-    elsif ( $ThisLine =3D~ /.drac.:/ ) { =0A=
-        # We don't worry about these for now=0A=
-    }=0A=
-    ## Stats: <UserID> 0 0 0 0 <Host> <IP>=0A=
-    elsif (($UserID, $NumDeleted, $BytesDeleted, $NumLeft, $BytesLeft) =
=3D ( $ThisLine =3D~ /Stats: ([^ ]+) ([^ ]+) ([^ ]+) ([^ ]+) ([^ ]+)/ )) =
{ =0A=
-        $Stats{$UserID}{"Times"}++;=0A=
-        $Stats{$UserID}{"NumDel"} +=3D $NumDeleted;=0A=
-        $Stats{$UserID}{"BytesDel"} +=3D $BytesDeleted;=0A=
-        $Stats{$UserID}{"NumLeft"} =3D $NumLeft;=0A=
-        $Stats{$UserID}{"BytesLeft"} =3D $BytesLeft;=0A=
-    }=0A=
-    elsif ( $ThisLine =3D~ /Timing/ ) { =0A=
-        # We don't worry about these for now=0A=
-    }=0A=
-    elsif ( $ThisLine =3D~ /-ERR \[AUTH\]/ ) {=0A=
-        # Drop duplicated password failure lines.=0A=
-    }=0A=
-    elsif ( $ThisLine =3D~ /Incorrect octet count/ ) { =0A=
-        # Bogus message from LX betas prior to B20=0A=
-    }=0A=
-    elsif ( $ThisLine =3D~ /canonical name of client/ ) { =0A=
-        # Redundant message, IP is already logged=0A=
-    }=0A=
-    elsif ( $ThisLine =3D~ s/^connect from ([^ ]+)$/$1/ ) {=0A=
-        $Connections{$ThisLine}++;=0A=
-    }=0A=
-    elsif ( $ThisLine =3D~ s/^apop \"(.*)\".*/$1/ ) {=0A=
-        $ApopConnections{$ThisLine}++;=0A=
-    }=0A=
-    else {=0A=
-        # Report any unmatched entries...=0A=
-        chomp($ThisLine);=0A=
-        $OtherList{$ThisLine}++;        =0A=
-    }=0A=
-}=0A=
-=0A=
-if ( (keys %Connections) and ($Detail >=3D 10) ) {=0A=
-    print "\nPlaintext Connections:\n";=0A=
-    foreach $ThisOne (keys %Connections) {=0A=
-        print "   " . $Connections{$ThisOne} . " from " . $ThisOne;=0A=
-    }=0A=
-}=0A=
-=0A=
-if ( (keys %ApopConnections) and ($Detail >=3D 10) ) {=0A=
-    print "\nAPOP Connections:\n";=0A=
-    foreach $ThisOne (keys %ApopConnections) {=0A=
-        print "   " . $ApopConnections{$ThisOne} . " from " . $ThisOne;=0A=
-    }=0A=
-}=0A=
-=0A=
-if ((keys %Stats) and ($Detail >=3D 10)) {=0A=
-    print "\nUser Statistics:\n";=0A=
-    print "                        |     Deleted    |      Kept      =
|\n";=0A=
-    print "User Name        Times  |   Num  KBytes  |   Num  KBytes  =
|\n";=0A=
-    foreach $UserID (sort =
{$Stats{$b}{"BytesDel"}<=3D>$Stats{$a}{"BytesDel"}} keys %Stats)=0A=
-    {=0A=
-        printf("%-15s  %5d  | %5d  %6d  | %5d  %6d  |\n", $UserID, =
$Stats{$UserID}{"Times"}, $Stats{$UserID}{"NumDel"}, =
$Stats{$UserID}{"BytesDel"}/1024, $Stats{$UserID}{"NumLeft"}, =
$Stats{$UserID}{"BytesLeft"}/1024);=0A=
-        $Times +=3D $Stats{$UserID}{"Times"};=0A=
-        $NumDel +=3D $Stats{$UserID}{"NumDel"};=0A=
-        $BytesDel +=3D $Stats{$UserID}{"BytesDel"};=0A=
-        $NumLeft +=3D $Stats{$UserID}{"NumLeft"};=0A=
-        $BytesLeft +=3D $Stats{$UserID}{"BytesLeft"};=0A=
-    }=0A=
-    print =
"------------------------+----------------+----------------+\n";=0A=
-    printf("TOTALS           %5d  | %5d  %6d  | %5d  %6d  |\n", $Times, =
$NumDel, $BytesDel/1024, $NumLeft, $BytesLeft/1024);=0A=
-}=0A=
-=0A=
-if (keys %OtherList) {=0A=
-   print "\n**Unmatched Entries**\n";=0A=
-   foreach $line (sort {$OtherList{$b}<=3D>$OtherList{$a} } keys =
%OtherList) =0A=
-   {=0A=
-      print "   $line: $OtherList{$line} Time(s)\n";=0A=
-   }=0A=
-}=0A=
-=0A=
-exit(0);=0A=
-=0A=
diff -urN logwatch-4.3.2/scripts/services/in_qpopper =
logwatch-4.3.2.tsn1/scripts/services/in_qpopper=0A=
--- logwatch-4.3.2/scripts/services/in_qpopper	Thu Jan  1 10:00:00 1970=0A=
+++ logwatch-4.3.2.tsn1/scripts/services/in_qpopper	Wed Mar 12 14:40:28 =
2003=0A=
@@ -0,0 +1,99 @@=0A=
+#!/usr/bin/perl -w=0A=
+########################################################################=
##=0A=
+# $Id: in.qpopper,v 1.4 2003/02/18 15:31:06 kirk Exp $=0A=
+########################################################################=
##=0A=
+=0A=
+########################################################=0A=
+# This was written and is maintained by:=0A=
+#    Kenneth Porter <shiva@well.com>=0A=
+#=0A=
+# Please send all comments, suggestions, bug reports,=0A=
+#    etc, to shiva@well.com.=0A=
+########################################################=0A=
+=0A=
+package	in_qpopper;=0A=
+=0A=
+$Detail =3D $ENV{'LOGWATCH_DETAIL_LEVEL'};=0A=
+=0A=
+while (defined($ThisLine =3D <STDIN>)) {=0A=
+    if ( $ThisLine =3D~ /xsender/ ) { =0A=
+        # We don't care about these=0A=
+    }=0A=
+    elsif ( $ThisLine =3D~ /.drac.:/ ) { =0A=
+        # We don't worry about these for now=0A=
+    }=0A=
+    ## Stats: <UserID> 0 0 0 0 <Host> <IP>=0A=
+    elsif (($UserID, $NumDeleted, $BytesDeleted, $NumLeft, $BytesLeft) =
=3D ( $ThisLine =3D~ /Stats: ([^ ]+) ([^ ]+) ([^ ]+) ([^ ]+) ([^ ]+)/ )) =
{ =0A=
+        $Stats{$UserID}{"Times"}++;=0A=
+        $Stats{$UserID}{"NumDel"} +=3D $NumDeleted;=0A=
+        $Stats{$UserID}{"BytesDel"} +=3D $BytesDeleted;=0A=
+        $Stats{$UserID}{"NumLeft"} =3D $NumLeft;=0A=
+        $Stats{$UserID}{"BytesLeft"} =3D $BytesLeft;=0A=
+    }=0A=
+    elsif ( $ThisLine =3D~ /Timing/ ) { =0A=
+        # We don't worry about these for now=0A=
+    }=0A=
+    elsif ( $ThisLine =3D~ /-ERR \[AUTH\]/ ) {=0A=
+        # Drop duplicated password failure lines.=0A=
+    }=0A=
+    elsif ( $ThisLine =3D~ /Incorrect octet count/ ) { =0A=
+        # Bogus message from LX betas prior to B20=0A=
+    }=0A=
+    elsif ( $ThisLine =3D~ /canonical name of client/ ) { =0A=
+        # Redundant message, IP is already logged=0A=
+    }=0A=
+    elsif ( $ThisLine =3D~ s/^connect from ([^ ]+)$/$1/ ) {=0A=
+        $Connections{$ThisLine}++;=0A=
+    }=0A=
+    elsif ( $ThisLine =3D~ s/^apop \"(.*)\".*/$1/ ) {=0A=
+        $ApopConnections{$ThisLine}++;=0A=
+    }=0A=
+    else {=0A=
+        # Report any unmatched entries...=0A=
+        chomp($ThisLine);=0A=
+        $OtherList{$ThisLine}++;        =0A=
+    }=0A=
+}=0A=
+=0A=
+if ( (keys %Connections) and ($Detail >=3D 10) ) {=0A=
+    print "\nPlaintext Connections:\n";=0A=
+    foreach $ThisOne (keys %Connections) {=0A=
+        print "   " . $Connections{$ThisOne} . " from " . $ThisOne;=0A=
+    }=0A=
+}=0A=
+=0A=
+if ( (keys %ApopConnections) and ($Detail >=3D 10) ) {=0A=
+    print "\nAPOP Connections:\n";=0A=
+    foreach $ThisOne (keys %ApopConnections) {=0A=
+        print "   " . $ApopConnections{$ThisOne} . " from " . $ThisOne;=0A=
+    }=0A=
+}=0A=
+=0A=
+if ((keys %Stats) and ($Detail >=3D 10)) {=0A=
+    print "\nUser Statistics:\n";=0A=
+    print "                        |     Deleted    |      Kept      =
|\n";=0A=
+    print "User Name        Times  |   Num  KBytes  |   Num  KBytes  =
|\n";=0A=
+    foreach $UserID (sort =
{$Stats{$b}{"BytesDel"}<=3D>$Stats{$a}{"BytesDel"}} keys %Stats)=0A=
+    {=0A=
+        printf("%-15s  %5d  | %5d  %6d  | %5d  %6d  |\n", $UserID, =
$Stats{$UserID}{"Times"}, $Stats{$UserID}{"NumDel"}, =
$Stats{$UserID}{"BytesDel"}/1024, $Stats{$UserID}{"NumLeft"}, =
$Stats{$UserID}{"BytesLeft"}/1024);=0A=
+        $Times +=3D $Stats{$UserID}{"Times"};=0A=
+        $NumDel +=3D $Stats{$UserID}{"NumDel"};=0A=
+        $BytesDel +=3D $Stats{$UserID}{"BytesDel"};=0A=
+        $NumLeft +=3D $Stats{$UserID}{"NumLeft"};=0A=
+        $BytesLeft +=3D $Stats{$UserID}{"BytesLeft"};=0A=
+    }=0A=
+    print =
"------------------------+----------------+----------------+\n";=0A=
+    printf("TOTALS           %5d  | %5d  %6d  | %5d  %6d  |\n", $Times, =
$NumDel, $BytesDel/1024, $NumLeft, $BytesLeft/1024);=0A=
+}=0A=
+=0A=
+if (keys %OtherList) {=0A=
+   print "\n**Unmatched Entries**\n";=0A=
+   foreach $line (sort {$OtherList{$b}<=3D>$OtherList{$a} } keys =
%OtherList) =0A=
+   {=0A=
+      print "   $line: $OtherList{$line} Time(s)\n";=0A=
+   }=0A=
+}=0A=
+=0A=
+exit(0);=0A=
+=0A=
+1;=0A=
diff -urN logwatch-4.3.2/scripts/services/init =
logwatch-4.3.2.tsn1/scripts/services/init=0A=
--- logwatch-4.3.2/scripts/services/init	Sat Oct 12 12:08:18 2002=0A=
+++ logwatch-4.3.2.tsn1/scripts/services/init	Fri Mar  7 15:49:40 2003=0A=
@@ -11,6 +11,8 @@=0A=
 #    etc, to kirk@kaybee.org.=0A=
 ########################################################=0A=
 =0A=
+package	init;=0A=
+=0A=
 $Detail =3D $ENV{'LOGWATCH_DETAIL_LEVEL'};=0A=
 =0A=
 while (defined($ThisLine =3D <STDIN>)) {=0A=
@@ -43,3 +45,4 @@=0A=
 =0A=
 exit(0);=0A=
 =0A=
+1;=0A=
diff -urN logwatch-4.3.2/scripts/services/ipop3d =
logwatch-4.3.2.tsn1/scripts/services/ipop3d=0A=
--- logwatch-4.3.2/scripts/services/ipop3d	Sat Oct 12 12:08:18 2002=0A=
+++ logwatch-4.3.2.tsn1/scripts/services/ipop3d	Fri Mar  7 15:50:06 2003=0A=
@@ -11,6 +11,8 @@=0A=
 # - New lookout, more sorted data=0A=
 =
#########################################################################=
#=0A=
 =0A=
+package	ipop3d;=0A=
+=0A=
 $Detail =3D $ENV{'LOGWATCH_DETAIL_LEVEL'};=0A=
 =0A=
 my %Conn_loginok;=0A=
@@ -95,3 +97,4 @@=0A=
 =0A=
 exit(0);=0A=
 =0A=
+1;=0A=
diff -urN logwatch-4.3.2/scripts/services/kernel =
logwatch-4.3.2.tsn1/scripts/services/kernel=0A=
--- logwatch-4.3.2/scripts/services/kernel	Mon Jan 13 14:30:57 2003=0A=
+++ logwatch-4.3.2.tsn1/scripts/services/kernel	Fri Mar  7 15:50:19 2003=0A=
@@ -21,6 +21,8 @@=0A=
 #   www.logwatch.org=0A=
 ########################################################=0A=
 =0A=
+package	kernel;=0A=
+=0A=
 $Detail =3D $ENV{'LOGWATCH_DETAIL_LEVEL'};=0A=
 $DoLookup =3D $ENV{'kernel_ip_lookup'};=0A=
 $MaxFlood =3D 10;=0A=
@@ -260,3 +262,4 @@=0A=
 =0A=
 exit(0);=0A=
 =0A=
+1;=0A=
diff -urN logwatch-4.3.2/scripts/services/modprobe =
logwatch-4.3.2.tsn1/scripts/services/modprobe=0A=
--- logwatch-4.3.2/scripts/services/modprobe	Sat Oct 12 12:08:18 2002=0A=
+++ logwatch-4.3.2.tsn1/scripts/services/modprobe	Fri Mar  7 15:50:32 =
2003=0A=
@@ -11,6 +11,8 @@=0A=
 #    etc, to kirk@kaybee.org.=0A=
 ########################################################=0A=
 =0A=
+package	modprobe;=0A=
+=0A=
 #$Detail =3D $ENV{'LOGWATCH_DETAIL_LEVEL'};=0A=
 =0A=
 while (defined($ThisLine =3D <STDIN>)) {=0A=
@@ -39,3 +41,4 @@=0A=
 =0A=
 exit(0);=0A=
 =0A=
+1;=0A=
diff -urN logwatch-4.3.2/scripts/services/mountd =
logwatch-4.3.2.tsn1/scripts/services/mountd=0A=
--- logwatch-4.3.2/scripts/services/mountd	Sat Oct 12 12:08:19 2002=0A=
+++ logwatch-4.3.2.tsn1/scripts/services/mountd	Fri Mar  7 15:50:42 2003=0A=
@@ -11,6 +11,8 @@=0A=
 #    etc, to kirk@kaybee.org.=0A=
 ########################################################=0A=
 =0A=
+package mountd;=0A=
+=0A=
 $Detail =3D $ENV{'LOGWATCH_DETAIL_LEVEL'};=0A=
 =0A=
 sub LookupIP {=0A=
@@ -107,3 +109,4 @@=0A=
 =0A=
 exit(0);=0A=
 =0A=
+1;=0A=
diff -urN logwatch-4.3.2/scripts/services/named =
logwatch-4.3.2.tsn1/scripts/services/named=0A=
--- logwatch-4.3.2/scripts/services/named	Mon Jan 13 15:28:06 2003=0A=
+++ logwatch-4.3.2.tsn1/scripts/services/named	Fri Mar  7 15:50:52 2003=0A=
@@ -11,6 +11,8 @@=0A=
 #    etc, to kirk@kaybee.org.=0A=
 ########################################################=0A=
 =0A=
+package named;=0A=
+=0A=
 $Debug =3D $ENV{'LOGWATCH_DEBUG'};=0A=
 $DoLookup =3D $ENV{'named_ip_lookup'};=0A=
 $Detail =3D $ENV{'LOGWATCH_DETAIL_LEVEL'};=0A=
@@ -239,3 +241,4 @@=0A=
 =0A=
 exit(0);=0A=
 =0A=
+1;=0A=
diff -urN logwatch-4.3.2/scripts/services/pam =
logwatch-4.3.2.tsn1/scripts/services/pam=0A=
--- logwatch-4.3.2/scripts/services/pam	Sat Oct 12 12:08:19 2002=0A=
+++ logwatch-4.3.2.tsn1/scripts/services/pam	Fri Mar  7 15:54:29 2003=0A=
@@ -11,6 +11,13 @@=0A=
 #    etc, to kirk@kaybee.org.=0A=
 ########################################################=0A=
 =0A=
+package	pam;=0A=
+=0A=
+use Exporter;=0A=
+=0A=
+@ISA =3D qw(Exporter);=0A=
+@EXPORT =3D qw(do_line);=0A=
+=0A=
 $Detail =3D $ENV{'LOGWATCH_DETAIL_LEVEL'};=0A=
 =0A=
 while (defined($ThisLine =3D <STDIN>)) {=0A=
@@ -41,3 +48,4 @@=0A=
 =0A=
 exit(0);=0A=
 =0A=
+1;=0A=
diff -urN logwatch-4.3.2/scripts/services/pam_pwdb =
logwatch-4.3.2.tsn1/scripts/services/pam_pwdb=0A=
--- logwatch-4.3.2/scripts/services/pam_pwdb	Sat Oct 12 12:08:19 2002=0A=
+++ logwatch-4.3.2.tsn1/scripts/services/pam_pwdb	Fri Mar  7 15:54:54 =
2003=0A=
@@ -13,6 +13,13 @@=0A=
 =0A=
 # NOTE: This script is for older (6.X era) Red Hat boxes=0A=
 =0A=
+package	pam_pwdb;=0A=
+=0A=
+use Exporter;=0A=
+=0A=
+@ISA =3D qw(Exporter);=0A=
+@EXPORT =3D qw(do_line);=0A=
+=0A=
 $Detail =3D $ENV{'LOGWATCH_DETAIL_LEVEL'};=0A=
 =0A=
 while (defined($ThisLine =3D <STDIN>)) {=0A=
@@ -207,3 +214,4 @@=0A=
 =0A=
 exit(0);=0A=
 =0A=
+1;=0A=
diff -urN logwatch-4.3.2/scripts/services/pam_unix =
logwatch-4.3.2.tsn1/scripts/services/pam_unix=0A=
--- logwatch-4.3.2/scripts/services/pam_unix	Sat Oct 12 12:08:19 2002=0A=
+++ logwatch-4.3.2.tsn1/scripts/services/pam_unix	Wed Mar 12 14:24:20 =
2003=0A=
@@ -12,6 +12,13 @@=0A=
 #    etc, to kirk@kaybee.org.=0A=
 ########################################################=0A=
 =0A=
+package	pam_unix;=0A=
+=0A=
+use Exporter;=0A=
+=0A=
+@pam_unix::ISA =3D qw(Exporter);=0A=
+@pam_unix::EXPORT =3D qw(do_line);=0A=
+=0A=
 my $Detail =3D $ENV{'LOGWATCH_DETAIL_LEVEL'};=0A=
 =0A=
 my ($service, $line, %data);=0A=
@@ -78,3 +85,4 @@=0A=
 =0A=
 exit(0);=0A=
 =0A=
+1;=0A=
diff -urN logwatch-4.3.2/scripts/services/pluto =
logwatch-4.3.2.tsn1/scripts/services/pluto=0A=
--- logwatch-4.3.2/scripts/services/pluto	Sat Oct 19 04:58:01 2002=0A=
+++ logwatch-4.3.2.tsn1/scripts/services/pluto	Fri Mar  7 15:55:49 2003=0A=
@@ -14,6 +14,13 @@=0A=
 # internal stuff from each vendor. Grow this table as you encouter new=0A=
 # products.=0A=
 =0A=
+package	pluto;=0A=
+=0A=
+use Exporter;=0A=
+=0A=
+@ISA =3D qw(Exporter);=0A=
+@EXPORT =3D qw(do_line);=0A=
+=0A=
 =
$vendorID{"p....}..&..i...5..............................."}=3D"KAME/Raco=
on";=0A=
 $debug=3D0;=0A=
 =0A=
@@ -207,3 +214,4 @@=0A=
       print "\t".$badpeer." caused ".$badexch{$badpeer}." bad =
exchanges\n";=0A=
    }=0A=
 }=0A=
+1;=0A=
diff -urN logwatch-4.3.2/scripts/services/portsentry =
logwatch-4.3.2.tsn1/scripts/services/portsentry=0A=
--- logwatch-4.3.2/scripts/services/portsentry	Sat Oct 12 12:08:19 2002=0A=
+++ logwatch-4.3.2.tsn1/scripts/services/portsentry	Fri Mar  7 15:56:09 =
2003=0A=
@@ -8,6 +8,13 @@=0A=
 #    Osma Ahvenlampi <oa@iki.fi>=0A=
 ########################################################=0A=
 =0A=
+package	portsentry;=0A=
+=0A=
+use Exporter;=0A=
+=0A=
+@ISA =3D qw(Exporter);=0A=
+@EXPORT =3D qw(do_line);=0A=
+=0A=
 $Detail =3D $ENV{'LOGWATCH_DETAIL_LEVEL'};=0A=
 =0A=
 sub LookupIP {=0A=
@@ -141,3 +148,4 @@=0A=
 =0A=
 exit(0);=0A=
 =0A=
+1;=0A=
diff -urN logwatch-4.3.2/scripts/services/proftpd-messages =
logwatch-4.3.2.tsn1/scripts/services/proftpd-messages=0A=
--- logwatch-4.3.2/scripts/services/proftpd-messages	Tue Oct 15 23:50:10 =
2002=0A=
+++ logwatch-4.3.2.tsn1/scripts/services/proftpd-messages	Thu Jan  1 =
10:00:00 1970=0A=
@@ -1,138 +0,0 @@=0A=
-#!/usr/bin/perl=0A=
-########################################################################=
##=0A=
-# $Id: proftpd-messages,v 1.10 2002/10/15 13:50:10 kirk Exp $=0A=
-########################################################################=
##=0A=
-=0A=
-########################################################=0A=
-# This was written and is maintained by:=0A=
-#    Simon Liddington <sjl96v@ecs.soton.ac.uk>=0A=
-#=0A=
-# for use with Logwatch=0A=
-#=0A=
-# Logwatch was written and is maintained by:=0A=
-#    Kirk Bauer <kirk@kaybee.org>=0A=
-########################################################=0A=
-=0A=
-$Detail =3D $ENV{'LOGWATCH_DETAIL_LEVEL'};=0A=
-$IgnoreUnmatched =3D $ENV{'ftpd_ignore_unmatched'};=0A=
-=0A=
-while (defined($ThisLine =3D <STDIN>)) {=0A=
-   if ( ( $ThisLine =3D~ /^FTP session closed./ ) or=0A=
-         ( $ThisLine =3D~ /^(ANONYMOUS )?FTP login as \'.*\' from [^ ]+ =
\[.*\] to .*/ ) or=0A=
-         ( $ThisLine =3D~ /^FTP no transfer time out, disconnected\./ ) =
or=0A=
-         ( $ThisLine =3D~ /PAM\(.*\): Authentication failure/ ) or=0A=
-         ( $ThisLine =3D~ /^data_sendfile/ ) or=0A=
-         ( $ThisLine =3D~ / - FTP session opened/ ) or=0A=
-         ( $ThisLine =3D~ / - FTP session closed/ ) or=0A=
-         ( $ThisLine =3D~ / - No certificate files found/ ) or=0A=
-         ( $ThisLine =3D~ /FTP no transfer timeout, disconnected\./ ) or=0A=
-         ( $ThisLine =3D~ /FTP login timed out, disconnected\./ )   ) {=0A=
-      # We don't care about these=0A=
-   }        			 =0A=
-   elsif ( ($Host,$IP,$Email,) =3D ( $ThisLine =3D~ /^FTP session =
opened: ftp\/ftp (.*)\[(.*)\] (.*)$/ ) ) {=0A=
-      $Temp =3D "   " . $Host . " (" . $IP . "): " . $Email . " - ";=0A=
-      $AnonLogins{$Temp}++;=0A=
-   }=0A=
-   elsif ( ($Host, $IP) =3D ( $ThisLine =3D~ /\((.*)\[(.*)\]\) - ANON =
.+: Login successful\./ ) ) {=0A=
-      $Temp =3D "   " . $Host . " (" . $IP . ")";=0A=
-      $AnonLogins{$Temp}++;=0A=
-   }=0A=
-   elsif ( ($User,$Host,$IP) =3D ( $ThisLine =3D~ /^FTP session opened: =
(.*\/.*) (.*)\[(.*)\] (.*)$/ ) ) {=0A=
-      $Temp =3D "   " . $Host .  ": " . $User . " - ";=0A=
-      $UserLogins{$Temp}++;=0A=
-   }=0A=
-   elsif ( ($Host,$IP,$User) =3D ( $ThisLine =3D~ /\((.*)\[(.*)\]\) - =
USER (.+): Login successful/ ) ) {=0A=
-      $Temp =3D "   " . $Host . ": " . $User . " - ";=0A=
-      $UserLogins{$Temp}++;=0A=
-   }=0A=
-   elsif ( ($User) =3D ( $ThisLine =3D~ /^failed login, can\'t find =
user \'(.*)\' $/ ) ) {=0A=
-      $Temp =3D "   " . "Unknown" . " (" . "Unknown.IP" . "): " . $User =
. " - ";=0A=
-      $BadUsers{$Temp}++;=0A=
-   }=0A=
-   elsif ( ($User,$Host,$IP) =3D ( $ThisLine =3D~ /USER (.*): no such =
user found from (.*) \[(.*)\] to/ ) ) {=0A=
-      $Temp =3D "   " . $Host . ": " . $User . " - ";=0A=
-      $BadUsers{$Temp}++;=0A=
-   }=0A=
-   elsif ( ($Host,$IP,$User) =3D ( $ThisLine =3D~ /\((.*)\[(.*)\]\) - =
no such user '(.*)'$/ ) ) {=0A=
-      $Temp =3D "   " . $Host . ": " . $User . " - ";=0A=
-      $BadUsers{$Temp}++;=0A=
-   }=0A=
-   elsif ( ($Host,$User) =3D ( $ThisLine =3D~ /\[(.*)\]\) - USER (.*) =
\(Login failed\): Incorrect password/ ) ) {=0A=
-      $Temp =3D "   " . $Host . ": " . $User . " - ";=0A=
-      $BadPasswds{$Temp}++;=0A=
-   }=0A=
-   elsif ( ($Host,$User) =3D ( $ThisLine =3D~ /\[(.*)\]\) - USER (.*) =
\(Login failed\): Invalid shell/ ) ) {=0A=
-      $Temp =3D "   " . $Host . ": " . $User . " - ";=0A=
-      $BadShell{$Temp}++;=0A=
-   }=0A=
-   elsif ( ($Host,$Reason) =3D ( $ThisLine =3D~ /\[(.*)\]\) - Refused =
PORT [0123456789,]+ \((.*)\)/ ) ) {=0A=
-      $Temp =3D "   " . $Host . ": " . $Reason . " - ";=0A=
-      $RefusedPorts{$Temp}++;=0A=
-   }=0A=
-   else {=0A=
-      # Report any unmatched entries...=0A=
-      push @OtherList,$ThisLine;=0A=
-   }=0A=
-}=0A=
-=0A=
-if ( (keys %AnonLogins) and ($Detail >=3D 5) ) {=0A=
-   print "\nAnonymous FTP Logins:\n";=0A=
-   foreach $ThisOne (keys %AnonLogins) {=0A=
-      print $ThisOne . $AnonLogins{$ThisOne} . " Time(s)\n";=0A=
-   }=0A=
-}=0A=
-=0A=
-if ( (keys %DeletedFiles) and ($Detail >=3D 10) ) {=0A=
-   print "\nFiles deleted through FTP:\n";=0A=
-   foreach $ThisOne (keys %DeletedFiles) {=0A=
-      print $ThisOne;=0A=
-      print @{$DeletedFiles{$ThisOne}};=0A=
-   }=0A=
-}=0A=
-=0A=
-if (keys %UserLogins) {=0A=
-   print "\nUser FTP Logins:\n";=0A=
-   foreach $ThisOne (keys %UserLogins) {=0A=
-      print $ThisOne . $UserLogins{$ThisOne} . " Time(s)\n";=0A=
-   }=0A=
-}=0A=
-=0A=
-if ( ( (keys %BadUsers) or (keys %BadPasswds) ) and ($Detail >=3D 5) ) {=0A=
-   print "\nFailed FTP Logins:\n";=0A=
-=0A=
-   if ( (keys %BadUsers) and ($Detail >=3D 5) ) {=0A=
-      print "\n  Invalid Username:\n";=0A=
-      foreach $ThisOne (keys %BadUsers) {=0A=
-         print $ThisOne . $BadUsers{$ThisOne} . " Time(s)\n";=0A=
-      }=0A=
-   }=0A=
-=0A=
-   if ( (keys %BadPasswds) and ($Detail >=3D 5) ) {=0A=
-      print "\n  Incorrect Password:\n";=0A=
-      foreach $ThisOne (keys %BadPasswds) {=0A=
-         print $ThisOne . $BadPasswds{$ThisOne} . " Time(s)\n";=0A=
-      }=0A=
-   }=0A=
-   if ( (keys %BadPasswds) and ($Detail >=3D 5) ) {=0A=
-      print "\n  Invalid Shell:\n";=0A=
-      foreach $ThisOne (keys %BadShell) {=0A=
-         print $ThisOne . $BadShell{$ThisOne} . " Time(s)\n";=0A=
-      }=0A=
-   }=0A=
-=0A=
-}=0A=
-=0A=
-if ( (keys %RefusedPorts) and ($Detail >=3D 5) ) {=0A=
-   print "\nRefused PORTs:\n";=0A=
-   foreach $ThisOne (keys %RefusedPorts) {=0A=
-      print $ThisOne . $RefusedPorts{$ThisOne} . " Time(s)\n";=0A=
-   }=0A=
-}=0A=
-=0A=
-if (($#OtherList >=3D 0) and (not $IngoreUnmatched)){=0A=
-   print "\n**Unmatched Entries**\n";=0A=
-   print @OtherList;=0A=
-}=0A=
-=0A=
-exit(0);=0A=
-=0A=
diff -urN logwatch-4.3.2/scripts/services/proftpd_messages =
logwatch-4.3.2.tsn1/scripts/services/proftpd_messages=0A=
--- logwatch-4.3.2/scripts/services/proftpd_messages	Thu Jan  1 10:00:00 =
1970=0A=
+++ logwatch-4.3.2.tsn1/scripts/services/proftpd_messages	Wed Mar 12 =
14:40:40 2003=0A=
@@ -0,0 +1,146 @@=0A=
+#!/usr/bin/perl=0A=
+########################################################################=
##=0A=
+# $Id: proftpd-messages,v 1.10 2002/10/15 13:50:10 kirk Exp $=0A=
+########################################################################=
##=0A=
+=0A=
+########################################################=0A=
+# This was written and is maintained by:=0A=
+#    Simon Liddington <sjl96v@ecs.soton.ac.uk>=0A=
+#=0A=
+# for use with Logwatch=0A=
+#=0A=
+# Logwatch was written and is maintained by:=0A=
+#    Kirk Bauer <kirk@kaybee.org>=0A=
+########################################################=0A=
+=0A=
+package	proftpd_messages;=0A=
+=0A=
+use Exporter;=0A=
+=0A=
+@ISA =3D qw(Exporter);=0A=
+@EXPORT =3D qw(do_line);=0A=
+=0A=
+$Detail =3D $ENV{'LOGWATCH_DETAIL_LEVEL'};=0A=
+$IgnoreUnmatched =3D $ENV{'ftpd_ignore_unmatched'};=0A=
+=0A=
+while (defined($ThisLine =3D <STDIN>)) {=0A=
+   if ( ( $ThisLine =3D~ /^FTP session closed./ ) or=0A=
+         ( $ThisLine =3D~ /^(ANONYMOUS )?FTP login as \'.*\' from [^ ]+ =
\[.*\] to .*/ ) or=0A=
+         ( $ThisLine =3D~ /^FTP no transfer time out, disconnected\./ ) =
or=0A=
+         ( $ThisLine =3D~ /PAM\(.*\): Authentication failure/ ) or=0A=
+         ( $ThisLine =3D~ /^data_sendfile/ ) or=0A=
+         ( $ThisLine =3D~ / - FTP session opened/ ) or=0A=
+         ( $ThisLine =3D~ / - FTP session closed/ ) or=0A=
+         ( $ThisLine =3D~ / - No certificate files found/ ) or=0A=
+         ( $ThisLine =3D~ /FTP no transfer timeout, disconnected\./ ) or=0A=
+         ( $ThisLine =3D~ /FTP login timed out, disconnected\./ )   ) {=0A=
+      # We don't care about these=0A=
+   }        			 =0A=
+   elsif ( ($Host,$IP,$Email,) =3D ( $ThisLine =3D~ /^FTP session =
opened: ftp\/ftp (.*)\[(.*)\] (.*)$/ ) ) {=0A=
+      $Temp =3D "   " . $Host . " (" . $IP . "): " . $Email . " - ";=0A=
+      $AnonLogins{$Temp}++;=0A=
+   }=0A=
+   elsif ( ($Host, $IP) =3D ( $ThisLine =3D~ /\((.*)\[(.*)\]\) - ANON =
.+: Login successful\./ ) ) {=0A=
+      $Temp =3D "   " . $Host . " (" . $IP . ")";=0A=
+      $AnonLogins{$Temp}++;=0A=
+   }=0A=
+   elsif ( ($User,$Host,$IP) =3D ( $ThisLine =3D~ /^FTP session opened: =
(.*\/.*) (.*)\[(.*)\] (.*)$/ ) ) {=0A=
+      $Temp =3D "   " . $Host .  ": " . $User . " - ";=0A=
+      $UserLogins{$Temp}++;=0A=
+   }=0A=
+   elsif ( ($Host,$IP,$User) =3D ( $ThisLine =3D~ /\((.*)\[(.*)\]\) - =
USER (.+): Login successful/ ) ) {=0A=
+      $Temp =3D "   " . $Host . ": " . $User . " - ";=0A=
+      $UserLogins{$Temp}++;=0A=
+   }=0A=
+   elsif ( ($User) =3D ( $ThisLine =3D~ /^failed login, can\'t find =
user \'(.*)\' $/ ) ) {=0A=
+      $Temp =3D "   " . "Unknown" . " (" . "Unknown.IP" . "): " . $User =
. " - ";=0A=
+      $BadUsers{$Temp}++;=0A=
+   }=0A=
+   elsif ( ($User,$Host,$IP) =3D ( $ThisLine =3D~ /USER (.*): no such =
user found from (.*) \[(.*)\] to/ ) ) {=0A=
+      $Temp =3D "   " . $Host . ": " . $User . " - ";=0A=
+      $BadUsers{$Temp}++;=0A=
+   }=0A=
+   elsif ( ($Host,$IP,$User) =3D ( $ThisLine =3D~ /\((.*)\[(.*)\]\) - =
no such user '(.*)'$/ ) ) {=0A=
+      $Temp =3D "   " . $Host . ": " . $User . " - ";=0A=
+      $BadUsers{$Temp}++;=0A=
+   }=0A=
+   elsif ( ($Host,$User) =3D ( $ThisLine =3D~ /\[(.*)\]\) - USER (.*) =
\(Login failed\): Incorrect password/ ) ) {=0A=
+      $Temp =3D "   " . $Host . ": " . $User . " - ";=0A=
+      $BadPasswds{$Temp}++;=0A=
+   }=0A=
+   elsif ( ($Host,$User) =3D ( $ThisLine =3D~ /\[(.*)\]\) - USER (.*) =
\(Login failed\): Invalid shell/ ) ) {=0A=
+      $Temp =3D "   " . $Host . ": " . $User . " - ";=0A=
+      $BadShell{$Temp}++;=0A=
+   }=0A=
+   elsif ( ($Host,$Reason) =3D ( $ThisLine =3D~ /\[(.*)\]\) - Refused =
PORT [0123456789,]+ \((.*)\)/ ) ) {=0A=
+      $Temp =3D "   " . $Host . ": " . $Reason . " - ";=0A=
+      $RefusedPorts{$Temp}++;=0A=
+   }=0A=
+   else {=0A=
+      # Report any unmatched entries...=0A=
+      push @OtherList,$ThisLine;=0A=
+   }=0A=
+}=0A=
+=0A=
+if ( (keys %AnonLogins) and ($Detail >=3D 5) ) {=0A=
+   print "\nAnonymous FTP Logins:\n";=0A=
+   foreach $ThisOne (keys %AnonLogins) {=0A=
+      print $ThisOne . $AnonLogins{$ThisOne} . " Time(s)\n";=0A=
+   }=0A=
+}=0A=
+=0A=
+if ( (keys %DeletedFiles) and ($Detail >=3D 10) ) {=0A=
+   print "\nFiles deleted through FTP:\n";=0A=
+   foreach $ThisOne (keys %DeletedFiles) {=0A=
+      print $ThisOne;=0A=
+      print @{$DeletedFiles{$ThisOne}};=0A=
+   }=0A=
+}=0A=
+=0A=
+if (keys %UserLogins) {=0A=
+   print "\nUser FTP Logins:\n";=0A=
+   foreach $ThisOne (keys %UserLogins) {=0A=
+      print $ThisOne . $UserLogins{$ThisOne} . " Time(s)\n";=0A=
+   }=0A=
+}=0A=
+=0A=
+if ( ( (keys %BadUsers) or (keys %BadPasswds) ) and ($Detail >=3D 5) ) {=0A=
+   print "\nFailed FTP Logins:\n";=0A=
+=0A=
+   if ( (keys %BadUsers) and ($Detail >=3D 5) ) {=0A=
+      print "\n  Invalid Username:\n";=0A=
+      foreach $ThisOne (keys %BadUsers) {=0A=
+         print $ThisOne . $BadUsers{$ThisOne} . " Time(s)\n";=0A=
+      }=0A=
+   }=0A=
+=0A=
+   if ( (keys %BadPasswds) and ($Detail >=3D 5) ) {=0A=
+      print "\n  Incorrect Password:\n";=0A=
+      foreach $ThisOne (keys %BadPasswds) {=0A=
+         print $ThisOne . $BadPasswds{$ThisOne} . " Time(s)\n";=0A=
+      }=0A=
+   }=0A=
+   if ( (keys %BadPasswds) and ($Detail >=3D 5) ) {=0A=
+      print "\n  Invalid Shell:\n";=0A=
+      foreach $ThisOne (keys %BadShell) {=0A=
+         print $ThisOne . $BadShell{$ThisOne} . " Time(s)\n";=0A=
+      }=0A=
+   }=0A=
+=0A=
+}=0A=
+=0A=
+if ( (keys %RefusedPorts) and ($Detail >=3D 5) ) {=0A=
+   print "\nRefused PORTs:\n";=0A=
+   foreach $ThisOne (keys %RefusedPorts) {=0A=
+      print $ThisOne . $RefusedPorts{$ThisOne} . " Time(s)\n";=0A=
+   }=0A=
+}=0A=
+=0A=
+if (($#OtherList >=3D 0) and (not $IngoreUnmatched)){=0A=
+   print "\n**Unmatched Entries**\n";=0A=
+   print @OtherList;=0A=
+}=0A=
+=0A=
+exit(0);=0A=
+=0A=
+1;=0A=
diff -urN logwatch-4.3.2/scripts/services/qmail =
logwatch-4.3.2.tsn1/scripts/services/qmail=0A=
--- logwatch-4.3.2/scripts/services/qmail	Sat Oct 12 12:08:19 2002=0A=
+++ logwatch-4.3.2.tsn1/scripts/services/qmail	Fri Mar  7 15:57:02 2003=0A=
@@ -3,6 +3,13 @@=0A=
 # $Id: qmail,v 1.3 2002/10/12 02:08:19 kirk Exp $=0A=
 =
#########################################################################=
#=0A=
 =0A=
+package	qmail;=0A=
+=0A=
+use Exporter;=0A=
+=0A=
+@ISA =3D qw(Exporter);=0A=
+@EXPORT =3D qw(do_line);=0A=
+=0A=
 $Detail =3D $ENV{'LOGWATCH_DETAIL_LEVEL'};=0A=
 $QmailDetail =3D $ENV{'qmail_high_detail'};=0A=
 $QmailThreshold =3D $ENV{'threshold'};=0A=
@@ -140,3 +147,4 @@=0A=
 =0A=
 exit(0);=0A=
 =0A=
+1;=0A=
diff -urN logwatch-4.3.2/scripts/services/raid =
logwatch-4.3.2.tsn1/scripts/services/raid=0A=
--- logwatch-4.3.2/scripts/services/raid	Mon Jan 13 14:46:56 2003=0A=
+++ logwatch-4.3.2.tsn1/scripts/services/raid	Fri Mar  7 15:57:21 2003=0A=
@@ -1,5 +1,12 @@=0A=
 #!/usr/bin/perl=0A=
 =0A=
+package	raid;=0A=
+=0A=
+use Exporter;=0A=
+=0A=
+@ISA =3D qw(Exporter);=0A=
+@EXPORT =3D qw(do_line);=0A=
+=0A=
 while (defined($_ =3D <STDIN>)) {=0A=
    chomp;=0A=
    $print =3D 0;=0A=
@@ -27,3 +34,4 @@=0A=
       print("$time $_ \n");=0A=
    }=0A=
 }=0A=
+1;=0A=
diff -urN logwatch-4.3.2/scripts/services/rt314 =
logwatch-4.3.2.tsn1/scripts/services/rt314=0A=
--- logwatch-4.3.2/scripts/services/rt314	Sat Oct 12 12:08:19 2002=0A=
+++ logwatch-4.3.2.tsn1/scripts/services/rt314	Fri Mar  7 15:57:47 2003=0A=
@@ -10,6 +10,13 @@=0A=
 # $Id: rt314,v 1.2 2002/10/12 02:08:19 kirk Exp $=0A=
 =
#########################################################################=
####=0A=
 =0A=
+package	rt314;=0A=
+=0A=
+use Exporter;=0A=
+=0A=
+@ISA =3D qw(Exporter);=0A=
+@EXPORT =3D qw(do_line);=0A=
+=0A=
 use Socket;=0A=
 =0A=
 $Detail =3D $ENV{'LOGWATCH_DETAIL_LEVEL'};=0A=
@@ -141,3 +148,4 @@=0A=
 =0A=
 exit(0);=0A=
 =0A=
+1;=0A=
diff -urN logwatch-4.3.2/scripts/services/samba =
logwatch-4.3.2.tsn1/scripts/services/samba=0A=
--- logwatch-4.3.2/scripts/services/samba	Mon Jan 13 15:28:06 2003=0A=
+++ logwatch-4.3.2.tsn1/scripts/services/samba	Fri Mar  7 15:58:04 2003=0A=
@@ -11,6 +11,13 @@=0A=
 #    etc, to kirk@kaybee.org.=0A=
 ########################################################=0A=
 =0A=
+package	samba;=0A=
+=0A=
+use Exporter;=0A=
+=0A=
+@ISA =3D qw(Exporter);=0A=
+@EXPORT =3D qw(do_line);=0A=
+=0A=
 $Debug =3D $ENV{'LOGWATCH_DEBUG'};=0A=
 $Detail =3D $ENV{'LOGWATCH_DETAIL_LEVEL'};=0A=
 =0A=
@@ -125,3 +132,4 @@=0A=
 =0A=
 exit(0);=0A=
 =0A=
+1;=0A=
diff -urN logwatch-4.3.2/scripts/services/secure =
logwatch-4.3.2.tsn1/scripts/services/secure=0A=
--- logwatch-4.3.2/scripts/services/secure	Wed Feb 19 02:34:53 2003=0A=
+++ logwatch-4.3.2.tsn1/scripts/services/secure	Fri Mar  7 15:58:19 2003=0A=
@@ -11,6 +11,13 @@=0A=
 #    etc, to kirk@kaybee.org.=0A=
 ########################################################=0A=
 =0A=
+package	secure;=0A=
+=0A=
+use Exporter;=0A=
+=0A=
+@ISA =3D qw(Exporter);=0A=
+@EXPORT =3D qw(do_line);=0A=
+=0A=
 #$Detail =3D $ENV{'LOGWATCH_DETAIL_LEVEL'};=0A=
 $DoLookup =3D $ENV{'secure_ip_lookup'};=0A=
 $Ignore =3D $ENV{'ignore_services'};=0A=
@@ -211,3 +218,4 @@=0A=
 =0A=
 exit(0);=0A=
 =0A=
+1;=0A=
diff -urN logwatch-4.3.2/scripts/services/sendmail =
logwatch-4.3.2.tsn1/scripts/services/sendmail=0A=
--- logwatch-4.3.2/scripts/services/sendmail	Wed Feb 19 02:42:01 2003=0A=
+++ logwatch-4.3.2.tsn1/scripts/services/sendmail	Fri Mar  7 15:58:36 =
2003=0A=
@@ -11,6 +11,13 @@=0A=
 #    etc, to shiva@well.com.=0A=
 ########################################################=0A=
 =0A=
+package	sendmail;=0A=
+=0A=
+use Exporter;=0A=
+=0A=
+@ISA =3D qw(Exporter);=0A=
+@EXPORT =3D qw(do_line);=0A=
+=0A=
 $MsgsSent =3D 0;=0A=
 $BytesTransferred =3D 0;=0A=
 $HourReturns =3D 0;=0A=
@@ -321,3 +328,4 @@=0A=
 =0A=
 exit(0);=0A=
 =0A=
+1;=0A=
diff -urN logwatch-4.3.2/scripts/services/smartd =
logwatch-4.3.2.tsn1/scripts/services/smartd=0A=
--- logwatch-4.3.2/scripts/services/smartd	Mon Jan 13 15:03:04 2003=0A=
+++ logwatch-4.3.2.tsn1/scripts/services/smartd	Fri Mar  7 15:58:55 2003=0A=
@@ -3,6 +3,13 @@=0A=
 # $Id: smartd,v 1.1 2003/01/13 04:03:04 kirk Exp $=0A=
 =
#########################################################################=
#=0A=
 =0A=
+package	smartd;=0A=
+=0A=
+use Exporter;=0A=
+=0A=
+@ISA =3D qw(Exporter);=0A=
+@EXPORT =3D qw(do_line);=0A=
+=0A=
 #$Detail =3D $ENV{'LOGWATCH_DETAIL_LEVEL'};=0A=
 =0A=
 while (defined($ThisLine =3D <STDIN>)) {=0A=
@@ -22,3 +29,4 @@=0A=
 }=0A=
 =0A=
 exit(0);=0A=
+1;=0A=
diff -urN logwatch-4.3.2/scripts/services/sshd =
logwatch-4.3.2.tsn1/scripts/services/sshd=0A=
--- logwatch-4.3.2/scripts/services/sshd	Wed Feb 19 02:36:14 2003=0A=
+++ logwatch-4.3.2.tsn1/scripts/services/sshd	Fri Mar  7 16:03:08 2003=0A=
@@ -11,6 +11,13 @@=0A=
 #    etc, to kirk@kaybee.org.=0A=
 ########################################################=0A=
 =0A=
+package	sshd;=0A=
+=0A=
+use Exporter;=0A=
+=0A=
+@ISA =3D qw(Exporter);=0A=
+@EXPORT =3D qw(do_line);=0A=
+=0A=
 $Debug =3D ValueOrDefault($ENV{'LOGWATCH_DEBUG'}, 0);=0A=
 $Detail =3D ValueOrDefault($ENV{'LOGWATCH_DETAIL_LEVEL'}, 0);=0A=
 =0A=
@@ -227,3 +234,4 @@=0A=
 =0A=
 exit(0);=0A=
 =0A=
+1;=0A=
diff -urN logwatch-4.3.2/scripts/services/sshd2 =
logwatch-4.3.2.tsn1/scripts/services/sshd2=0A=
--- logwatch-4.3.2/scripts/services/sshd2	Sat Oct 12 12:08:19 2002=0A=
+++ logwatch-4.3.2.tsn1/scripts/services/sshd2	Fri Mar  7 16:03:29 2003=0A=
@@ -11,6 +11,13 @@=0A=
 #    etc, to and kirk@kaybee.org.=0A=
 ########################################################=0A=
 =0A=
+package	sshd2;=0A=
+=0A=
+use Exporter;=0A=
+=0A=
+@ISA =3D qw(Exporter);=0A=
+@EXPORT =3D qw(do_line);=0A=
+=0A=
 $Detail =3D $ENV{'LOGWATCH_DETAIL_LEVEL'};=0A=
 =0A=
 while (defined($ThisLine =3D <STDIN>)) {=0A=
@@ -43,3 +50,4 @@=0A=
     =0A=
 exit(0);=0A=
 =0A=
+1;=0A=
diff -urN logwatch-4.3.2/scripts/services/stunnel =
logwatch-4.3.2.tsn1/scripts/services/stunnel=0A=
--- logwatch-4.3.2/scripts/services/stunnel	Sat Oct 12 12:08:19 2002=0A=
+++ logwatch-4.3.2.tsn1/scripts/services/stunnel	Fri Mar  7 16:03:43 2003=0A=
@@ -3,6 +3,13 @@=0A=
 # $Id: stunnel,v 1.2 2002/10/12 02:08:19 kirk Exp $=0A=
 =
#########################################################################=
#=0A=
 =0A=
+package	stunnel;=0A=
+=0A=
+use Exporter;=0A=
+=0A=
+@ISA =3D qw(Exporter);=0A=
+@EXPORT =3D qw(do_line);=0A=
+=0A=
 $^W=3D1;=0A=
 use strict;=0A=
 =0A=
@@ -73,3 +80,4 @@=0A=
 }=0A=
 =0A=
 exit(0);=0A=
+1;=0A=
diff -urN logwatch-4.3.2/scripts/services/sudo =
logwatch-4.3.2.tsn1/scripts/services/sudo=0A=
--- logwatch-4.3.2/scripts/services/sudo	Mon Oct 14 04:25:12 2002=0A=
+++ logwatch-4.3.2.tsn1/scripts/services/sudo	Fri Mar  7 16:04:01 2003=0A=
@@ -15,6 +15,13 @@=0A=
 #       30: Include the TTY on the directory line=0A=
 =
#########################################################################=
##=0A=
 =0A=
+package	sudo;=0A=
+=0A=
+use Exporter;=0A=
+=0A=
+@ISA =3D qw(Exporter);=0A=
+@EXPORT =3D qw(do_line);=0A=
+=0A=
 use strict;=0A=
 #require 5.6.0; # our=0A=
 =0A=
@@ -52,3 +59,4 @@=0A=
     } # foreach $user=0A=
 } # END=0A=
 =0A=
+1;=0A=
diff -urN logwatch-4.3.2/scripts/services/syslogd =
logwatch-4.3.2.tsn1/scripts/services/syslogd=0A=
--- logwatch-4.3.2/scripts/services/syslogd	Mon Jan 13 14:08:59 2003=0A=
+++ logwatch-4.3.2.tsn1/scripts/services/syslogd	Fri Mar  7 16:04:17 2003=0A=
@@ -11,6 +11,13 @@=0A=
 #    etc, to kirk@kaybee.org.=0A=
 ########################################################=0A=
 =0A=
+package	syslogd;=0A=
+=0A=
+use Exporter;=0A=
+=0A=
+@ISA =3D qw(Exporter);=0A=
+@EXPORT =3D qw(do_line);=0A=
+=0A=
 while (defined($ThisLine =3D <STDIN>)) {=0A=
    chomp($ThisLine);=0A=
    if ( $ThisLine =3D~ /^exiting on signal 15$/ ) {=0A=
@@ -46,3 +53,4 @@=0A=
 =0A=
 exit(0);=0A=
 =0A=
+1;=0A=
diff -urN logwatch-4.3.2/scripts/services/tac_acc =
logwatch-4.3.2.tsn1/scripts/services/tac_acc=0A=
--- logwatch-4.3.2/scripts/services/tac_acc	Sat Oct 12 12:08:19 2002=0A=
+++ logwatch-4.3.2.tsn1/scripts/services/tac_acc	Fri Mar  7 16:04:36 2003=0A=
@@ -1,4 +1,12 @@=0A=
 #!/usr/bin/perl -w=0A=
+=0A=
+package	tac_acc;=0A=
+=0A=
+use Exporter;=0A=
+=0A=
+@ISA =3D qw(Exporter);=0A=
+@EXPORT =3D qw(do_line);=0A=
+=0A=
 use strict;=0A=
 ########################################################=0A=
 # $Id: tac_acc,v 1.2 2002/10/12 02:08:19 kirk Exp $=0A=
@@ -62,3 +70,4 @@=0A=
 =0A=
 exit(0);=0A=
 =0A=
+1;=0A=
diff -urN logwatch-4.3.2/scripts/services/up2date =
logwatch-4.3.2.tsn1/scripts/services/up2date=0A=
--- logwatch-4.3.2/scripts/services/up2date	Wed Feb 19 02:34:53 2003=0A=
+++ logwatch-4.3.2.tsn1/scripts/services/up2date	Fri Mar  7 16:04:55 2003=0A=
@@ -1,4 +1,12 @@=0A=
 #!/usr/bin/perl -w=0A=
+=0A=
+package	up2date;=0A=
+=0A=
+use Exporter;=0A=
+=0A=
+@ISA =3D qw(Exporter);=0A=
+@EXPORT =3D qw(do_line);=0A=
+=0A=
 =
#########################################################################=
#=0A=
 # $Id: up2date,v 1.7 2003/02/18 15:34:53 kirk Exp $=0A=
 =
#########################################################################=
#=0A=
@@ -73,3 +81,4 @@=0A=
 =0A=
 exit(0);=0A=
 =0A=
+1;=0A=
diff -urN logwatch-4.3.2/scripts/services/vpopmail =
logwatch-4.3.2.tsn1/scripts/services/vpopmail=0A=
--- logwatch-4.3.2/scripts/services/vpopmail	Sat Oct 12 12:08:19 2002=0A=
+++ logwatch-4.3.2.tsn1/scripts/services/vpopmail	Fri Mar  7 16:05:13 =
2003=0A=
@@ -1,4 +1,12 @@=0A=
 #!/usr/bin/perl=0A=
+=0A=
+package	vpopmail;=0A=
+=0A=
+use Exporter;=0A=
+=0A=
+@ISA =3D qw(Exporter);=0A=
+@EXPORT =3D qw(do_line);=0A=
+=0A=
 =
#########################################################################=
#=0A=
 # $Id: vpopmail,v 1.4 2002/10/12 02:08:19 kirk Exp $=0A=
 =
#########################################################################=
#=0A=
@@ -59,3 +67,4 @@=0A=
 =0A=
 exit(0);=0A=
 =0A=
+1;=0A=
diff -urN logwatch-4.3.2/scripts/services/zz-disk_space =
logwatch-4.3.2.tsn1/scripts/services/zz-disk_space=0A=
--- logwatch-4.3.2/scripts/services/zz-disk_space	Wed Feb 19 02:44:56 =
2003=0A=
+++ logwatch-4.3.2.tsn1/scripts/services/zz-disk_space	Thu Jan  1 =
10:00:00 1970=0A=
@@ -1,13 +0,0 @@=0A=
-#!/bin/bash=0A=
-########################################################################=
##=0A=
-# $Id: zz-disk_space,v 1.1 2003/02/18 15:44:56 kirk Exp $=0A=
-########################################################################=
##=0A=
-=0A=
-if [ "$PRINTING" =3D "y" ] ; then=0A=
-   echo=0A=
-   echo=0A=
-   echo "------------------ Disk Space --------------------"=0A=
-   echo=0A=
-   df -h=0A=
-   echo=0A=
-fi=0A=
diff -urN logwatch-4.3.2/scripts/services/zz-fortune =
logwatch-4.3.2.tsn1/scripts/services/zz-fortune=0A=
--- logwatch-4.3.2/scripts/services/zz-fortune	Mon Jan 13 15:00:59 2003=0A=
+++ logwatch-4.3.2.tsn1/scripts/services/zz-fortune	Thu Jan  1 10:00:00 =
1970=0A=
@@ -1,16 +0,0 @@=0A=
-#!/bin/bash=0A=
-########################################################################=
##=0A=
-# $Id: zz-fortune,v 1.6 2003/01/13 04:00:59 kirk Exp $=0A=
-########################################################################=
##=0A=
-# Named 'zz-fortune' so that it will be the last to execute...=0A=
-=0A=
-if [ "$PRINTING" =3D "y" ] ; then=0A=
-   if [ -x /usr/games/fortune ] ; then=0A=
-      echo=0A=
-      echo=0A=
-      echo "------------------ Fortune --------------------"=0A=
-      echo=0A=
-      /usr/games/fortune=0A=
-      echo=0A=
-   fi=0A=
-fi=0A=
diff -urN logwatch-4.3.2/scripts/services/zz_disk_space =
logwatch-4.3.2.tsn1/scripts/services/zz_disk_space=0A=
--- logwatch-4.3.2/scripts/services/zz_disk_space	Thu Jan  1 10:00:00 =
1970=0A=
+++ logwatch-4.3.2.tsn1/scripts/services/zz_disk_space	Wed Mar 12 =
14:48:29 2003=0A=
@@ -0,0 +1,24 @@=0A=
+#!/usr/bin/perl=0A=
+########################################################################=
##=0A=
+# $Id: zz-disk_space,v 1.1 2003/02/18 15:44:56 kirk Exp $=0A=
+########################################################################=
##=0A=
+=0A=
+package	zz_disk_space;=0A=
+=0A=
+use Exporter;=0A=
+=0A=
+@ISA =3D qw(Exporter);=0A=
+@EXPORT =3D qw(do_line);=0A=
+=0A=
+if($ENV{'PRINTING'} =3D~ /^y$/) {=0A=
+	print <<EOT;=0A=
+=0A=
+=0A=
+------------------ Disk Space --------------------=0A=
+EOT=0A=
+=0A=
+	print `df -h`;=0A=
+	print "\n";=0A=
+}=0A=
+=0A=
+1;=0A=
diff -urN logwatch-4.3.2/scripts/services/zz_fortune =
logwatch-4.3.2.tsn1/scripts/services/zz_fortune=0A=
--- logwatch-4.3.2/scripts/services/zz_fortune	Thu Jan  1 10:00:00 1970=0A=
+++ logwatch-4.3.2.tsn1/scripts/services/zz_fortune	Wed Mar 12 14:45:04 =
2003=0A=
@@ -0,0 +1,25 @@=0A=
+#!/usr/bin/perl=0A=
+########################################################################=
##=0A=
+# $Id: zz-fortune,v 1.6 2003/01/13 04:00:59 kirk Exp $=0A=
+########################################################################=
##=0A=
+# Named 'zz-fortune' so that it will be the last to execute...=0A=
+=0A=
+package	zz_fortune;=0A=
+=0A=
+use Exporter;=0A=
+=0A=
+@ISA =3D qw(Exporter);=0A=
+@EXPORT =3D qw(do_line);=0A=
+=0A=
+if($ENV{'PRINTING'} =3D~ /^y$/ and (-x "/usr/games/fortune")) {=0A=
+	print <<EOT;=0A=
+=0A=
+=0A=
+------------------ Fortune --------------------=0A=
+=0A=
+`/usr/games/fortune`=0A=
+=0A=
+EOT=0A=
+}=0A=
+=0A=
+1;=0A=

------=_NextPart_000_0564_01C2E8AA.B8376E40--