home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Usenet 1994 October
/
usenetsourcesnewsgroupsinfomagicoctober1994disk2.iso
/
misc
/
volume34
/
mserv
/
patch01
< prev
next >
Wrap
Text File
|
1993-01-18
|
19KB
|
657 lines
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...