home *** CD-ROM | disk | FTP | other *** search
- Newsgroups: comp.sources.misc
- From: jv@mh.nl (Johan Vromans)
- Subject: v34i119: mserv - Squirrel Mail Server Software, version 3.1, Patch01
- Message-ID: <1993Jan18.183350.27032@sparky.imd.sterling.com>
- X-Md4-Signature: a0a10da35d09d549890f526a4eee6e2f
- Date: Mon, 18 Jan 1993 18:33:50 GMT
- Approved: kent@sparky.imd.sterling.com
-
- Submitted-by: jv@mh.nl (Johan Vromans)
- Posting-number: Volume 34, Issue 119
- Archive-name: mserv/patch01
- Environment: Perl
- Patch-To: mserv: Volume 34, Issue 92-97
-
- This patch updates the Squirrel Mail Server Software version 3.1 to 3.1A.
-
- Changes in version 3.1A:
- ------------------------
- Most important change is the implementation of the $errlimit
- configuration variable. This variable controls the number of errors
- that are allowed before the mail server quits input processing.
-
- Other changes in the configuration file ms_config.pl:
- - the archie command is now disabled by default.
- - pdtar has been replaced by gtar (GNU tar).
-
- A few small bugs were corrected.
-
- READ THIS BEFORE PATCHING:
- --------------------------
- To apply this patch:
-
- 1. Take a fresh copy of the 3.1 kit, e.g.:
-
- % uncompress < mserv-3.1.tar.Z | tar xvf -
-
- 2. Rename ChangeLog to ChangeLog-3.1. This is necessary since the
- patch expects the old ChangeLog to have the indicated name.
-
- % mv mserv-3.1/ChangeLog mserv-3.1/ChangeLog-3.1
-
- 3. Change the directory name where the kit resides from mserv-3.1 to
- mserv-3.1A. This is needed since a new file is created by the
- patch, which would otherwise be placed in the wrong directory.
-
- % mv mserv-3.1 mserv-3.1A
-
- 4. Run this file through 'patch':
-
- % patch -p0 -N < thisfile
-
- Index: patchlevel.h
- Prereq: 3.1.19
- *** mserv-3.1/patchlevel.h Tue Jan 5 19:44:16 1993
- --- mserv-3.1A/patchlevel.h Sat Jan 16 13:48:19 1993
- ***************
- *** 1,4 ****
- ! # @(#)@ patchlevel.h 3.1.19 -*- perl -*-
- # Squirrel Mail Server Software -- Copyright 1988, 1992 Johan Vromans
- # This file is used to verify the correctness of a batch of patches.
- ! $ms_version = "V3.01"; # Should match version in ms_common.pl
- --- 1,4 ----
- ! # @(#)@ patchlevel.h 3.1.20 -*- perl -*-
- # Squirrel Mail Server Software -- Copyright 1988, 1992 Johan Vromans
- # This file is used to verify the correctness of a batch of patches.
- ! $ms_version = "V3.01A"; # Should match version in ms_common.pl
- Index: ChangeLog-3.1
- *** mserv-3.1/ChangeLog-3.1 Tue Jan 5 20:28:15 1993
- --- mserv-3.1A/ChangeLog-3.1 Sat Jan 16 14:26:29 1993
- ***************
- *** 1,3 ****
- --- 1,7 ----
- + Tue Jan 5 21:08:02 1993 Johan Vromans (jv@squirrel)
- +
- + * Version 3.1 released to comp.sources.misc.
- +
- Tue Jan 5 19:43:53 1993 Johan Vromans (jv@squirrel)
-
- * patchlevel.h 1.19:
- Index: ChangeLog-3.1A
- *** /dev/null Sat Jan 16 14:46:04 1993
- --- mserv-3.1A/ChangeLog-3.1A Sat Jan 16 14:51:37 1993
- ***************
- *** 0 ****
- --- 1,44 ----
- + Sat Jan 16 13:47:38 1993 Johan Vromans (jv@squirrel)
- +
- + * Version 3.1A released, patch sent to comp.sources.misc.
- +
- + * README 3.13:
- + Update to 3.1A.
- +
- + * Makefile 1.3:
- + * patchlevel.h 1.20:
- + * ms_common.pl 1.39:
- + Bump to V3.01A.
- +
- + Sun Jan 10 16:28:00 1993 Johan Vromans (jv@squirrel)
- +
- + * process.pl 3.68:
- + Avoid feedback problem when using '-nomail' option.
- +
- + * pr_parse.pl 1.8:
- + Implement $errlimit.
- + Correct feed-back on the RESEND command.
- +
- + * ms_config.pl:
- + Add $errlimit (default value: 20).
- +
- + Fri Jan 8 23:25:37 1993 Johan Vromans (jv@squirrel)
- +
- + * ms_config.pl:
- + Small corrections.
- +
- + * README 3.12:
- + * mservmgr.txt 1.13:
- + Change 'usrguide' to 'mservusr' where appropriate.
- +
- + * Makefile 1.2:
- + * Makefile 1.1:
- + Move development code from Makefile to GNUmakefile.
- + Add 'dist' target to reproduce the distribution kit.
- +
- + * MANIFEST 1.16:
- + Added Changelog-3.1A.
- + Renamed ChangeLog to ChangeLog-3.1.
- +
- + * ChangeLog-3.1A:
- + New file.
- Index: INSTALL
- *** mserv-3.1/INSTALL Tue Jan 5 20:30:34 1993
- --- mserv-3.1A/INSTALL Sat Jan 16 13:59:19 1993
- ***************
- *** 1227,1232 ****
- send a mail message to <mail-server@nluug.nl> with contents:
-
- begin
- ! send usrguide.ps.Z
- send mservmgr.ps.Z
- end
- --- 1227,1232 ----
- send a mail message to <mail-server@nluug.nl> with contents:
-
- begin
- ! send mservusr.ps.Z
- send mservmgr.ps.Z
- end
- Index: MANIFEST
- *** mserv-3.1/MANIFEST Wed Dec 23 23:12:38 1992
- --- mserv-3.1A/MANIFEST Sat Jan 16 14:35:09 1993
- ***************
- *** 2,8 ****
- INSTALL
- MANIFEST
- CRONTAB.sample
- ! ChangeLog
- HELP
- Makefile
- chat2.pl
- --- 2,9 ----
- INSTALL
- MANIFEST
- CRONTAB.sample
- ! ChangeLog-3.1
- ! ChangeLog-3.1A
- HELP
- Makefile
- chat2.pl
- Index: Makefile
- *** mserv-3.1/Makefile Wed Dec 23 23:13:14 1992
- --- mserv-3.1A/Makefile Sat Jan 16 13:55:29 1993
- ***************
- *** 1,16 ****
- # Makefile -- for mail server
- ! # SCCS Status : %Z%@ %M% %I%
- # Author : Johan Vromans
- # Created On : Fri May 1 15:44:47 1992
- # Last Modified By: Johan Vromans
- ! # Last Modified On: Wed Dec 23 23:13:14 1992
- ! # Update Count : 109
- ! # Status :
-
- SHELL = /bin/sh
- - CC = gcc -Wall
- - CFLAGS = -O
-
- # Perl 4.035 needs fixes!
- PERL = /usr/local/bin/perl
- # Where programs and files reside.
- --- 1,17 ----
- # Makefile -- for mail server
- ! # SCCS Status : @(#)@ Makefile 1.3
- # Author : Johan Vromans
- # Created On : Fri May 1 15:44:47 1992
- # Last Modified By: Johan Vromans
- ! # Last Modified On: Sat Jan 16 13:52:43 1993
- ! # Update Count : 120
- ! # Status : OK
-
- SHELL = /bin/sh
-
- + # Mail Server Version
- + VERSION = 3.1A
- +
- # Perl 4.035 needs fixes!
- PERL = /usr/local/bin/perl
- # Where programs and files reside.
- ***************
- *** 137,184 ****
-
- ################ Maintenance ################
-
- ! REV = X3.01
-
- ! dist: tar.Z
- !
- ! tar.Z: HELP INSTALL
- ! rm -f mserv-$(REV)
- ! ln -s . mserv-$(REV)
- ! sed < MANIFEST -e "s/^/mserv-$(REV)\//" | \
- ! pdtar -zcv -T - -f mserv-$(REV).tar.Z
- ! rm -f mserv-$(REV)
- !
- ! shar: HELP INSTALL
- ! rm -f mserv-$(REV)
- ! ln -s . mserv-$(REV)
- ! rm -f mserv-$(REV).shar.*
- ! sed < MANIFEST -e "s/^/mserv-$(REV)\//" | \
- ! shar -p -F -S -L 50 -o mserv-$(REV).shar \
- ! -a -n mserv-$(REV).shar -s 'jv@mh.nl (Johan Vromans)'
- ! rm -f mserv-$(REV)
- ! ls -l mserv-$(REV).shar.*
- !
- ! AUX = Makefile ms_config.pl ChangeLog* Misc
- !
- ! TZ:
- ! tar cvf - $(AUX) SCCS | compress > mserv.TZ
- !
- ! #
- ! # Create formatted documents (Ascii or PostScript)
- ! #
- ! .SUFFIXES: .ps .txt .asc
- ! MH_DOC = mh_doc -language uk
- !
- ! .txt.ps:
- ! rm -f $@
- ! $(MH_DOC) -expert -verbose -ps -printer foo:ps -output $@ $<
- !
- ! .txt.asc:
- ! rm -f $@
- ! $(MH_DOC) -text -output $@ $<
- !
- ! HELP: usrguide.asc
- ! rm -f $@ && cp $< $@ && chmod -w $@
- !
- ! INSTALL: mservmgr.asc
- ! rm -f $@ && cp $< $@ && chmod -w $@
- --- 138,149 ----
-
- ################ Maintenance ################
-
- ! # Uses GNU tar or John Gillmore's pdtar.
- ! TAR = gtar
-
- ! dist:
- ! rm -f mserv-$(VERSION)
- ! ln -s . mserv-$(VERSION)
- ! sed < MANIFEST -e "s/^/mserv-$(VERSION)\//" | \
- ! $(TAR) -zcv -T - -f mserv-$(VERSION).tar.Z
- ! rm -f mserv-$(VERSION)
- Index: README
- *** mserv-3.1/README Tue Jan 5 20:15:37 1993
- --- mserv-3.1A/README Sat Jan 16 14:51:20 1993
- ***************
- *** 40,45 ****
- --- 40,59 ----
- Files retrieved via FTP are kept on local store for some time, so
- subsequent requests can be honoured from the cache.
-
- + Changes in version 3.1A:
- + ------------------------
- + Most important change is the implementation of the $errlimit
- + configuration variable. This variable controls the number of errors
- + that are allowed before the mail server quits input processing.
- +
- + Other changes in the configuration file ms_config.pl:
- + - the archie command is now disabled by default.
- + - pdtar has been replaced by gtar (GNU tar).
- +
- + A few small bugs were corrected.
- +
- + For details, see ChangeLog-3.1A.
- +
- Requirements:
- -------------
- Perl 4.0 patchlevel 35 or later.
- ***************
- *** 56,66 ****
-
- How to get it:
- --------------
- Send a mail message to <mail-server@nluug.nl> with contents
-
- begin
- ! send mserv-3.1.tar.Z
- ! send XPatch-4.035.tar.Z
- end
-
- The latter file contains some unofficial patches to perl 4.0
- --- 70,85 ----
-
- How to get it:
- --------------
- + IMPORTANT: If you have retrieved this file from a posting in a netnews
- + sources group, you probably have the source kit already and you
- + do not need to retrieve it from the mail server.
- +
- Send a mail message to <mail-server@nluug.nl> with contents
-
- begin
- ! send mserv-3.1.tar.Z <<< only if you need a new kit
- ! send mserv-3.1-3.1A.diff.Z <<< to update the 3.1 kit
- ! send XPatch-4.035.tar.Z <<< to fix perl4.0 pl35
- end
-
- The latter file contains some unofficial patches to perl 4.0
- ***************
- *** 69,76 ****
- Also available are nicely formatted PostScript versions of the
- User Guide and Installation Guide:
-
- ! send usrguide.ps.Z
- send mservmgr.ps.Z
-
- The Squirrel Mail Server Software is
-
- --- 88,97 ----
- Also available are nicely formatted PostScript versions of the
- User Guide and Installation Guide:
-
- ! send mservusr.ps.Z
- send mservmgr.ps.Z
- +
- + The above documents have NOT changed since the 3.1 release.
-
- The Squirrel Mail Server Software is
-
- Index: ms_common.pl
- Prereq: 1.38
- *** mserv-3.1/ms_common.pl Tue Jan 5 19:44:06 1993
- --- mserv-3.1A/ms_common.pl Sat Jan 16 13:47:55 1993
- ***************
- *** 1,16 ****
- # ms_common.pl -- common info for mail server
- ! # SCCS Status : @(#)@ ms_common 1.38
- # Author : Johan Vromans
- # Created On : Fri Apr 17 11:02:58 1992
- # Last Modified By: Johan Vromans
- ! # Last Modified On: Tue Jan 5 19:43:48 1993
- ! # Update Count : 110
- # Status : OK
-
- ################ Preamble ################
- #
- # Package info. Do not change this.
- ! $my_package = "Squirrel Mail Server Software V3.01";
- #
- if ( defined $config_file && $config_file ne '' ) {
- require $config_file;
- --- 1,16 ----
- # ms_common.pl -- common info for mail server
- ! # SCCS Status : @(#)@ ms_common 1.39
- # Author : Johan Vromans
- # Created On : Fri Apr 17 11:02:58 1992
- # Last Modified By: Johan Vromans
- ! # Last Modified On: Sat Jan 16 13:47:35 1993
- ! # Update Count : 111
- # Status : OK
-
- ################ Preamble ################
- #
- # Package info. Do not change this.
- ! $my_package = "Squirrel Mail Server Software V3.01A";
- #
- if ( defined $config_file && $config_file ne '' ) {
- require $config_file;
- Index: ms_config.pl
- *** mserv-3.1/ms_config.pl Sat Jan 2 14:18:04 1993
- --- mserv-3.1A/ms_config.pl Sun Jan 10 16:26:37 1993
- ***************
- *** 2,9 ****
- # Author : Johan Vromans
- # Created On : ***
- # Last Modified By: Johan Vromans
- ! # Last Modified On: Sat Jan 2 14:18:04 1993
- ! # Update Count : 74
- # Status : OK
-
- ################ Preamble ################
- --- 2,9 ----
- # Author : Johan Vromans
- # Created On : ***
- # Last Modified By: Johan Vromans
- ! # Last Modified On: Sun Jan 10 16:26:37 1993
- ! # Update Count : 76
- # Status : OK
-
- ################ Preamble ################
- ***************
- *** 286,296 ****
- # Tools.
- $du = "/bin/du"; # get size of dir
- $find = "/usr/local/bin/gfind"; # find
- ! # If you do not have 'pdtar', undefine it and the mail server will use
- # $tar and $compress instead.
- ! $pdtar = "/usr/local/bin/pdtar"; # create compressed ustar
- $tar = "/bin/tar"; # if no $pdtar...
- ! $compress = "/usr/ucb/compress"; # if no $pdtar...
- $zoo = "/usr/local/bin/zoo"; # zoo
- $zip = "/usr/local/bin/zip"; # zip
-
- --- 286,298 ----
- # Tools.
- $du = "/bin/du"; # get size of dir
- $find = "/usr/local/bin/gfind"; # find
- ! # If you have a tar that understands the '-z' command line option,
- ! # (e.g. GNU tar or John Gillmore's pdtar) define $pdtar below.
- ! # If you do not have it, undefine it and the mail server will use
- # $tar and $compress instead.
- ! $pdtar = "/usr/local/bin/gtar"; # create compressed ustar
- $tar = "/bin/tar"; # if no $pdtar...
- ! $compress = "/usr/ucb/compress"; # compress
- $zoo = "/usr/local/bin/zoo"; # zoo
- $zip = "/usr/local/bin/zip"; # zip
-
- ***************
- *** 299,306 ****
- # Command to produce a useful listing of files.
- $dircmd = "/bin/ls -lL";
- #
- ! # Command to call Archie.
- ! $archie = "archie";
- #
- # Limit (in K) for command output to be included in the feedback
- # mail. If it is bigger, it will be compressed and transferred.
- --- 301,308 ----
- # Command to produce a useful listing of files.
- $dircmd = "/bin/ls -lL";
- #
- ! # Command to call Archie (if you have it).
- ! #$archie = "/usr/local/bin/archie";
- #
- # Limit (in K) for command output to be included in the feedback
- # mail. If it is bigger, it will be compressed and transferred.
- ***************
- *** 336,341 ****
- --- 338,346 ----
- # Note: the $trace_file must exist.
- $trace_headers = 0;
- $trace_file = $libdir . "/tracefile";
- +
- + # This enforces a limit on the maximum number of errors we'll allow.
- + $errlimit = 20;
-
- ################ End of configuation info ################
-
- Index: pr_parse.pl
- Prereq: 1.7
- *** mserv-3.1/pr_parse.pl Sat Jan 2 14:10:42 1993
- --- mserv-3.1A/pr_parse.pl Sun Jan 10 16:29:22 1993
- ***************
- *** 1,10 ****
- # pr_parse.pl --
- ! # SCCS Status : @(#)@ pr_parse.pl 1.7
- # Author : Johan Vromans
- # Created On : Fri Dec 18 21:03:34 1992
- # Last Modified By: Johan Vromans
- ! # Last Modified On: Fri Jan 1 15:10:55 1993
- ! # Update Count : 97
- # Status : Unknown, Use with caution!
-
- $cmd_tbl{'END'} = 'cmd_end';
- --- 1,10 ----
- # pr_parse.pl --
- ! # SCCS Status : @(#)@ pr_parse.pl 1.8
- # Author : Johan Vromans
- # Created On : Fri Dec 18 21:03:34 1992
- # Last Modified By: Johan Vromans
- ! # Last Modified On: Sun Jan 10 16:27:41 1993
- ! # Update Count : 102
- # Status : Unknown, Use with caution!
-
- $cmd_tbl{'END'} = 'cmd_end';
- ***************
- *** 56,62 ****
- local ($curdir) = ""; # track current directory
- local ($ftphost); # empty -> no FTP, otherwise -> FTP
- local (*line, *DATA_LINE) = (*rfc822'line, *rfc822'DATA_LINE);
- ! local (*line_in_cache) = (*rfc822'line_in_cache);
- local ($tmp, $proc, $result);
-
- while ( $res = &read_body ) {
- --- 56,62 ----
- local ($curdir) = ""; # track current directory
- local ($ftphost); # empty -> no FTP, otherwise -> FTP
- local (*line, *DATA_LINE) = (*rfc822'line, *rfc822'DATA_LINE);
- ! local (*line_in_cache) = *rfc822'line_in_cache; #';
- local ($tmp, $proc, $result);
-
- while ( $res = &read_body ) {
- ***************
- *** 75,81 ****
- $line = $tmp . $line;
-
- last unless &split_and_exec_line;
- !
- print STDOUT ("\n");
- }
- print STDOUT ("\n");
- --- 75,84 ----
- $line = $tmp . $line;
-
- last unless &split_and_exec_line;
- ! if ( $errlimit && $errflag >= $errlimit ) {
- ! &errmsg ("Too many errors -- aborted");
- ! last;
- ! }
- print STDOUT ("\n");
- }
- print STDOUT ("\n");
- ***************
- *** 415,421 ****
- return &errmsg ($msg) unless @cmd > 1;
-
- local ($item) = shift (@cmd);
- ! local ($plist) = "";
- local ($ftphost) = $ftphost;
-
- if ( $item =~ m:(^\.|/\.|[*?%]): ) {
- --- 418,424 ----
- return &errmsg ($msg) unless @cmd > 1;
-
- local ($item) = shift (@cmd);
- ! local (@plist) = ();
- local ($ftphost) = $ftphost;
-
- if ( $item =~ m:(^\.|/\.|[*?%]): ) {
- ***************
- *** 423,437 ****
- }
- foreach $num (@cmd) {
- if ( $num =~ /^\d+$/ ) {
- ! $plist .= 0+$num . ",";
- }
- else {
- return &errmsg ($msg);
- }
- }
- if ( $item =~ /:/ || $ftphost ) {
- return 1 unless &check_ftp;
- - chop ($plist);
- push (@workq, &zp ('G', 'G', $curdir.$item, $plist));
- print STDOUT ("=> Resend: $curdir$item, part",
- (@plist > 0) ? "s " : " ",
- --- 426,441 ----
- }
- foreach $num (@cmd) {
- if ( $num =~ /^\d+$/ ) {
- ! push (@plist, 0+$num);
- }
- else {
- return &errmsg ($msg);
- }
- }
- + local ($plist) = join (',', @plist);
- +
- if ( $item =~ /:/ || $ftphost ) {
- return 1 unless &check_ftp;
- push (@workq, &zp ('G', 'G', $curdir.$item, $plist));
- print STDOUT ("=> Resend: $curdir$item, part",
- (@plist > 0) ? "s " : " ",
- ***************
- *** 439,445 ****
- }
- else {
- return 1 unless &setdefaults;
- - chop ($plist);
- push (@workq, &zp ("S", $curdir.$item, $plist));
- print STDOUT ("=> Resend: $curdir$item, part",
- (@plist > 0) ? "s " : " ",
- --- 443,448 ----
- Index: process.pl
- Prereq: 3.67
- *** mserv-3.1/process.pl Sat Jan 2 14:36:47 1993
- --- mserv-3.1A/process.pl Sun Jan 10 16:39:26 1993
- ***************
- *** 1,11 ****
- #!/usr/local/bin/perl
- # process.pl --
- ! # SCCS Status : @(#)@ process 3.67
- # Author : Johan Vromans
- # Created On : ***
- # Last Modified By: Johan Vromans
- ! # Last Modified On: Sat Jan 2 14:14:45 1993
- ! # Update Count : 672
- # Status : Going steady.
-
- # This program processes mail messages, and enqueues requests for
- --- 1,11 ----
- #!/usr/local/bin/perl
- # process.pl --
- ! # SCCS Status : @(#)@ process 3.68
- # Author : Johan Vromans
- # Created On : ***
- # Last Modified By: Johan Vromans
- ! # Last Modified On: Sun Jan 10 16:32:41 1993
- ! # Update Count : 673
- # Status : Going steady.
-
- # This program processes mail messages, and enqueues requests for
- ***************
- *** 14,20 ****
- # For options and calling, see subroutine 'usage'.
- #
- $my_name = "process";
- ! $my_version = "3.67";
- #
- ################ Common stuff ################
-
- --- 14,20 ----
- # For options and calling, see subroutine 'usage'.
- #
- $my_name = "process";
- ! $my_version = "3.68";
- #
- ################ Common stuff ################
-
- ***************
- *** 58,64 ****
- open (STDOUT, ">" . $tmpfile) unless $opt_debug;
- }
- # Catch stderr also.
- ! open (STDERR, ">&STDOUT");
-
- # Motd.
- &include ($notesfile);
- --- 58,64 ----
- open (STDOUT, ">" . $tmpfile) unless $opt_debug;
- }
- # Catch stderr also.
- ! open (STDERR, ">&STDOUT") unless $opt_nomail;
-
- # Motd.
- &include ($notesfile);
-
- exit 0 # Just in case...
-