diff --git a/procmail-3.22-CVE-2014-3618.patch b/procmail-3.22-CVE-2014-3618.patch deleted file mode 100644 index 124d1f9..0000000 --- a/procmail-3.22-CVE-2014-3618.patch +++ /dev/null @@ -1,18 +0,0 @@ -diff --git a/src/formisc.c b/src/formisc.c -index 338733b..c48df52 100644 ---- a/src/formisc.c -+++ b/src/formisc.c -@@ -84,12 +84,11 @@ normal: *target++= *start++; - case '"':*target++=delim='"';start++; - } - ;{ int i; -- do -+ while(*start) /* anything? */ - if((i= *target++= *start++)==delim) /* corresponding delimiter? */ - break; - else if(i=='\\'&&*start) /* skip quoted character */ - *target++= *start++; -- while(*start); /* anything? */ - } - hitspc=2; - } diff --git a/procmail-3.22-CVE-2017-16844.patch b/procmail-3.22-CVE-2017-16844.patch deleted file mode 100644 index 5e610d7..0000000 --- a/procmail-3.22-CVE-2017-16844.patch +++ /dev/null @@ -1,13 +0,0 @@ -diff --git a/src/formisc.c b/src/formisc.c -index 5c2869d..54fd013 100644 ---- a/src/formisc.c -+++ b/src/formisc.c -@@ -103,7 +103,7 @@ void loadsaved(sp)const struct saved*const sp; /* load some saved text */ - } - /* append to buf */ - void loadbuf(text,len)const char*const text;const size_t len; --{ if(buffilled+len>buflen) /* buf can't hold the text */ -+{ while(buffilled+len>buflen) /* buf can't hold the text */ - buf=realloc(buf,buflen+=Bsize); - tmemmove(buf+buffilled,text,len);buffilled+=len; - } diff --git a/procmail-3.22-crash-fix.patch b/procmail-3.22-crash-fix.patch deleted file mode 100644 index 8563ea3..0000000 --- a/procmail-3.22-crash-fix.patch +++ /dev/null @@ -1,58 +0,0 @@ -diff --git a/src/cstdio.c b/src/cstdio.c -index 7b6fe6d..0a0bd5b 100644 ---- a/src/cstdio.c -+++ b/src/cstdio.c -@@ -144,7 +144,7 @@ int getbl(p,end)char*p,*end; /* my gets */ - { case '\n':case EOF:*q='\0'; - return overflow?-1:p!=q; /* did we read anything at all? */ - } -- if(q==end) /* check here so that a trailing backslash won't be lost */ -+ if(q>=end) /* check here so that a trailing backslash won't be lost */ - q=p,overflow=1; - *q++=i; - } -@@ -199,7 +199,7 @@ int getlline(target,end)char*target,*end; - if(*(target=strchr(target,'\0')-1)=='\\') - { if(chp2!=target) /* non-empty line? */ - target++; /* then preserve the backslash */ -- if(target>end-2) /* space enough for getbl? */ -+ if(target>=end-2) /* space enough for getbl? */ - target=end-linebuf,overflow=1; /* toss what we have */ - continue; - } -diff --git a/src/formail.c b/src/formail.c -index 1f5c9dd..49b9967 100644 ---- a/src/formail.c -+++ b/src/formail.c -@@ -219,7 +219,8 @@ static char*getsender(namep,fldp,headreply)char*namep;struct field*fldp; - if(i>=0&&(i!=maxindex(sest)||fldp==rdheader)) /* found anything? */ - { char*saddr;char*tmp; /* determine the weight */ - nowm=areply&&headreply?headreply==1?sest[i].wrepl:sest[i].wrrepl:i;chp+=j; -- tmp=malloc(j=fldp->Tot_len-j);tmemmove(tmp,chp,j);(chp=tmp)[j-1]='\0'; -+ tmp=malloc((j=fldp->Tot_len-j) + 1);tmemmove(tmp,chp,j);(chp=tmp)[j-1]='\0'; -+ chp[j]='\0'; - if(sest[i].head==From_) - { char*pastad; - if(strchr(saddr=chp,'\n')) /* multiple From_ lines */ -@@ -364,7 +365,7 @@ static PROGID; - - int main(lastm,argv)int lastm;const char*const argv[]; - { int i,split=0,force=0,bogus=1,every=0,headreply=0,digest=0,nowait=0,keepb=0, -- minfields=(char*)progid-(char*)progid,conctenate=0,babyl=0,babylstart, -+ minfields=(char*)progid-(char*)progid,conctenate=0,babyl=0,babylstart=0, - berkeley=0,forgetclen; - long maxlen,ctlength;FILE*idcache=0;pid_t thepid; - size_t j,lnl,escaplen;char*chp,*namep,*escap=ESCAP; -diff --git a/src/formisc.c b/src/formisc.c -index c48df52..5c2869d 100644 ---- a/src/formisc.c -+++ b/src/formisc.c -@@ -66,7 +66,7 @@ inc: start++; - retz: *target='\0'; - ret: return start; - } -- if(*start=='\\') -+ if(*start=='\\' && *(start + 1)) - *target++='\\',start++; - hitspc=2; - goto normal; /* normal word */ diff --git a/procmail-3.22-getline.patch b/procmail-3.22-getline.patch deleted file mode 100644 index fb9a4ec..0000000 --- a/procmail-3.22-getline.patch +++ /dev/null @@ -1,56 +0,0 @@ -diff -up procmail-3.22/src/fields.c.getline procmail-3.22/src/fields.c ---- procmail-3.22/src/fields.c.getline 2001-09-11 06:57:08.000000000 +0200 -+++ procmail-3.22/src/fields.c 2009-06-30 16:10:36.000000000 +0200 -@@ -110,16 +110,16 @@ void dispfield(p)register const struct f - /* try and append one valid field to rdheader from stdin */ - int readhead P((void)) - { int idlen; -- getline(); -+ get_line(); - if((idlen=breakfield(buf,buffilled))<=0) /* not the start of a valid field */ - return 0; - if(idlen==STRLEN(FROM)&&eqFrom_(buf)) /* it's a From_ line */ - { if(rdheader) - return 0; /* the From_ line was a fake! */ -- for(;buflast=='>';getline()); /* gather continued >From_ lines */ -+ for(;buflast=='>';get_line()); /* gather continued >From_ lines */ - } - else -- for(;;getline()) /* get the rest of the continued field */ -+ for(;;get_line()) /* get the rest of the continued field */ - { switch(buflast) /* will this line be continued? */ - { case ' ':case '\t': /* yep, it sure is */ - continue; -diff -up procmail-3.22/src/formail.c.getline procmail-3.22/src/formail.c ---- procmail-3.22/src/formail.c.getline 2009-06-30 16:00:40.000000000 +0200 -+++ procmail-3.22/src/formail.c 2009-06-30 16:10:49.000000000 +0200 -@@ -819,7 +819,7 @@ splitit: { if(!lnl) /* did the p - { if(split) /* gobble up the next start separator */ - { buffilled=0; - #ifdef sMAILBOX_SEPARATOR -- getline();buffilled=0; /* but only if it's defined */ -+ get_line();buffilled=0; /* but only if it's defined */ - #endif - if(buflast!=EOF) /* if any */ - goto splitit; -diff -up procmail-3.22/src/formisc.c.getline procmail-3.22/src/formisc.c ---- procmail-3.22/src/formisc.c.getline 2001-06-29 04:20:45.000000000 +0200 -+++ procmail-3.22/src/formisc.c 2009-06-30 16:12:20.000000000 +0200 -@@ -115,7 +115,7 @@ void loadchar(c)const int c; /* a - buf[buffilled++]=c; - } - --int getline P((void)) /* read a newline-terminated line */ -+int get_line P((void)) /* read a newline-terminated line */ - { if(buflast==EOF) /* at the end of our Latin already? */ - { loadchar('\n'); /* fake empty line */ - return EOF; /* spread the word */ -diff -up procmail-3.22/src/formisc.h.getline procmail-3.22/src/formisc.h ---- procmail-3.22/src/formisc.h.getline 1999-04-19 08:42:15.000000000 +0200 -+++ procmail-3.22/src/formisc.h 2009-06-30 16:10:02.000000000 +0200 -@@ -17,4 +17,4 @@ void - char* - skipwords P((char*start)); - int -- getline P((void)); -+ get_line P((void)); diff --git a/procmail-3.22.tar.gz b/procmail-3.22.tar.gz deleted file mode 100644 index 129bb44..0000000 Binary files a/procmail-3.22.tar.gz and /dev/null differ diff --git a/procmail-3.22-ipv6.patch b/procmail-3.24-ipv6.patch similarity index 98% rename from procmail-3.22-ipv6.patch rename to procmail-3.24-ipv6.patch index ecae2a2..cba53d5 100644 --- a/procmail-3.22-ipv6.patch +++ b/procmail-3.24-ipv6.patch @@ -1,5 +1,5 @@ diff --git a/src/autoconf b/src/autoconf -index 3a52e6c..ff78048 100755 +index 7c46487..deb97c1 100755 --- a/src/autoconf +++ b/src/autoconf @@ -68,8 +68,6 @@ @@ -103,7 +103,7 @@ index 3a52e6c..ff78048 100755 ;{ unsigned long s=(size_t)~0;int bits; for(bits=1;s>>=1;bits++); diff --git a/src/comsat.c b/src/comsat.c -index 9712e74..5082b16 100644 +index e3e773a..f93ebf1 100644 --- a/src/comsat.c +++ b/src/comsat.c @@ -27,7 +27,8 @@ static /*const*/char rcsid[]= @@ -201,11 +201,11 @@ index 9712e74..5082b16 100644 yell("Notified comsat:",buf); } diff --git a/src/network.h b/src/network.h -index d7d08f2..b09b6c4 100644 +index 7befe94..8a711f7 100644 --- a/src/network.h +++ b/src/network.h @@ -1,19 +1,13 @@ - /*$Id: network.h,v 1.7 1997/04/02 03:15:41 srb Exp $*/ + /*$Id$*/ -#include /* socket() sendto() AF_INET +#include /* socket() sendto() */ @@ -226,3 +226,4 @@ index d7d08f2..b09b6c4 100644 #ifndef NO_const /* since network.h is outside the autoconf const check */ #ifdef const /* loop, we need this backcheck for some systems */ #undef const + diff --git a/procmail-3.22-rhconfig.patch b/procmail-3.24-rhconfig.patch similarity index 83% rename from procmail-3.22-rhconfig.patch rename to procmail-3.24-rhconfig.patch index 3b7a8b7..39cc4c4 100644 --- a/procmail-3.22-rhconfig.patch +++ b/procmail-3.24-rhconfig.patch @@ -1,6 +1,8 @@ ---- procmail-3.22/Makefile.rhconfig 2001-09-10 22:53:09.000000000 -0600 -+++ procmail-3.22/Makefile 2003-09-12 07:44:34.000000000 -0600 -@@ -23,7 +23,7 @@ +diff --git a/Makefile b/Makefile +index 0be77b1..509a105 100644 +--- a/Makefile ++++ b/Makefile +@@ -23,7 +23,7 @@ MAN5DIR = $(MANDIR)/man$(MAN5SUFFIX) # Uncomment to install compressed man pages (possibly add extra suffix # to the definitions of MAN?DIR and/or MAN?SUFFIX by hand) @@ -9,7 +11,7 @@ ############################*# # Things that can be made are: -@@ -55,7 +55,7 @@ +@@ -55,7 +55,7 @@ MAN5DIR = $(MANDIR)/man$(MAN5SUFFIX) LOCKINGTEST=__defaults__ @@ -18,7 +20,7 @@ # If LOCKINGTEST is defined, autoconf will NOT # prompt you to enter additional directories. # See INSTALL for more information about the -@@ -65,7 +65,7 @@ +@@ -65,7 +65,7 @@ LOCKINGTEST=__defaults__ # Only edit below this line if you *think* you know what you are doing # ######################################################################## @@ -27,7 +29,7 @@ # it better than the autoconf lockingtests. # This will cause the lockingtests to be hotwired. # 100 to enable fcntl() -@@ -74,8 +74,8 @@ +@@ -74,8 +74,8 @@ LOCKINGTEST=__defaults__ # Or them together to get the desired combination. # Optional system libraries we search for @@ -38,7 +40,7 @@ # -lresolv # not really needed, is it? # Informal list of directories where we look for the libraries in SEARCHLIBS -@@ -86,8 +86,8 @@ +@@ -86,8 +86,8 @@ GCC_WARNINGS = -O2 -pedantic -Wreturn-type -Wunused -Wformat -Wtraditional \ #-Wimplicit -Wshadow -Wid-clash-6 #-Wuninitialized # The place to put your favourite extra cc flag @@ -49,18 +51,18 @@ # Read my libs :-) LIBS= ---- procmail-3.22/config.h.rhconfig 2001-09-10 22:53:50.000000000 -0600 -+++ procmail-3.22/config.h 2003-09-12 07:41:40.000000000 -0600 -@@ -35,7 +35,8 @@ +diff --git a/config.h b/config.h +index 4f6b57e..eb348cd 100644 +--- a/config.h ++++ b/config.h +@@ -35,6 +35,7 @@ */ - /*#define DEFSPATH "PATH=/bin:/usr/bin" /* */ - /*#define DEFPATH "PATH=$HOME/bin:/bin:/usr/bin" /* */ -- -+#define DEFPATH "PATH=$HOME/bin:/bin:/usr/bin:/sbin:/usr/sbin:/usr/local/bin:/usr/X11R6/bin" /* */ -+ + /*#define DEFSPATH "PATH=/usr/local/bin:/bin:/usr/bin" /* */ + /*#define DEFPATH "PATH=$HOME/bin:/usr/local/bin:/bin:/usr/bin" /* */ ++#define DEFPATH "PATH=$HOME/bin:/bin:/usr/bin:/sbin:/usr/sbin:/usr/local/bin:/usr/X11R6/bin" /* */ + /* every environment variable appearing in PRESTENV will be set or wiped * out of the environment (variables without an '=' sign will be thrown - * out), e.g. you could define PRESTENV as follows: @@ -46,13 +47,13 @@ */ #define PRESTENV {"IFS","ENV","PWD",0} @@ -86,7 +88,7 @@ /* If you set LOCKINGTEST to a binary number than there's no need to set these. These #defines are only useful if you want to disable particular locking styles but are unsure which -@@ -91,7 +92,7 @@ +@@ -98,7 +99,7 @@ mail present. procmail automatically suppresses this when it isn't needed or under heavy load. */ @@ -95,3 +97,4 @@ the autoconfigured default SENDMAIL is not suitable. This program should quack like a sendmail: it should accept the -oi flag (to tell it to _not_ treat a line + diff --git a/procmail-3.24.tar.gz b/procmail-3.24.tar.gz new file mode 100644 index 0000000..ca00f9c Binary files /dev/null and b/procmail-3.24.tar.gz differ diff --git a/procmail.spec b/procmail.spec index 63daac4..cf1e824 100644 --- a/procmail.spec +++ b/procmail.spec @@ -6,23 +6,18 @@ %endif Name: procmail -Version: 3.22 -Release: 53 +Version: 3.24 +Release: 1 Summary: A program for filtering, sorting and storing email License: GPLv2+ or Artistic-1.0-Perl -URL: https://www.procmail.org -Source0: http://ftp.kfki.hu/packages/mail/procmail/procmail-%{version}.tar.gz +URL: https://github.com/BuGlessRB/%{name} +Source0: https://github.com/BuGlessRB/%{name}/archive/v%{version}/%{name}-%{version}.tar.gz Source1: procmailrc -Patch0: procmail-3.22-rhconfig.patch +Patch0: procmail-3.24-rhconfig.patch Patch1: procmail-3.15.1-man.patch -Patch2: procmail_3.22-8.debian.patch -Patch3: procmail-3.22-truncate.patch -Patch4: procmail-3.22-ipv6.patch -Patch5: procmail-3.22-getline.patch -Patch6: procmail-3.22-CVE-2014-3618.patch -Patch7: procmail-3.22-crash-fix.patch -Patch8: procmail-3.22-CVE-2017-16844.patch -BuildRequires: gcc +Patch2: procmail-3.22-truncate.patch +Patch3: procmail-3.24-ipv6.patch +BuildRequires: make gcc %description %{summary},It can be used both on mail clients and mail servers. It can be @@ -47,12 +42,11 @@ make \ BASENAME=${RPM_BUILD_ROOT}%{_prefix} MANDIR=${RPM_BUILD_ROOT}%{_mandir} \ install -cp debian/mailstat.1 ${RPM_BUILD_ROOT}%{_mandir}/man1 cp -p %{SOURCE1} telsas_procmailrc %files %defattr(-,root,root) -%doc Artistic debian/QuickStart debian/README.Maildir +%doc Artistic %license COPYING %{_bindir}/* @@ -63,6 +57,9 @@ cp -p %{SOURCE1} telsas_procmailrc %{_mandir}/man5/*.5.gz %changelog +* Mon Jul 24 2023 yanglu - 3.24-1 +- DESC:Update procmail version to 3.24 + * Tue Jul 5 2022 Chenyx - 3.22-53 - License compliance rectification diff --git a/procmail_3.22-8.debian.patch b/procmail_3.22-8.debian.patch deleted file mode 100644 index 78079d6..0000000 --- a/procmail_3.22-8.debian.patch +++ /dev/null @@ -1,950 +0,0 @@ ---- procmail-3.22.orig/examples/advanced -+++ procmail-3.22/examples/advanced -@@ -251,14 +251,14 @@ - -------------------------------------------------------- - - There are many different reasons why more and more sites decide not to --store mail in /usr/spool/mail or /usr/mail anymore. -+store mail in /var/spool/mail or /var/mail anymore. - Some of the obvious advantages when storing mail in the recipient's home - directory are: - - Mail is automatically subject to the user's quota limitations. - - Often there is more room on the home partition(s) than on that -- one /usr/mail partition. -+ one /var/mail partition. - --The quota limitations also apply to /usr/spool/mail or /usr/mail if procmail -+The quota limitations also apply to /var/spool/mail or /var/mail if procmail - does the delivery. These quota limitations often do not work with the - regular /bin/mail since that usually writes the mailbox with root permissions - (eluding the quota restrictions). -@@ -276,7 +276,7 @@ - defined SYSTEM_MBOX to be. Some braindamaged mail programs - do not pick up the MAIL environment variable, these either - have to be patched/recompiled or you have to create symbolic -- links in /usr/mail to every person's new mailbox. -+ links in /var/mail to every person's new mailbox. - - --- - ---- procmail-3.22.orig/man/procmail.man -+++ procmail-3.22/man/procmail.man -@@ -166,7 +166,8 @@ - accept an unlimited number of arguments.@ETCRCS_desc@ - For some advanced usage of this option you should look in the - .B EXAMPLES --section below.@LMTPOPTdesc@.SH ARGUMENTS -+section below.@LMTPOPTdesc@ -+.SH ARGUMENTS - Any arguments containing an '=' are considered to be environment variable - assignments, they will - .I all -@@ -723,6 +724,15 @@ - .fi - .ad - .PP -+Some mailers (notably exim) do not currently accept the above syntax. -+In such case use this instead: -+.PP -+.na -+.nf -+|/usr/bin/procmail -+.fi -+.ad -+.PP - Procmail can also be invoked to postprocess an already filled system - mailbox. This can be useful if you don't want to or can't use a - $HOME/@DOT_FORWARD@ file (in which case the following script could -@@ -754,7 +764,7 @@ - .SS "A sample small @PROCMAILRC@:" - .na - .nf --PATH=/bin:/usr/bin:@BINDIR@ -+PATH=/usr/local/bin:/usr/bin:/bin - MAILDIR=$HOME/Mail #you'd better make sure it exists - DEFAULT=$MAILDIR/mbox #completely optional - LOGFILE=$MAILDIR/from #recommended ---- procmail-3.22.orig/man/procmailrc.man -+++ procmail-3.22/man/procmailrc.man -@@ -779,7 +779,7 @@ - .PP - Some non-optimal and non-obvious regexps set MATCH to an incorrect - value. The regexp can be made to work by removing one or more unneeded --'*', '+', or '?' operator on the left-hand side of the \e/ token. -+\&'*', '+', or '?' operator on the left-hand side of the \e/ token. - .SH MISCELLANEOUS - If the regular expression contains `\fB@TO_key@\fP' it will be substituted by - .na ---- procmail-3.22.orig/src/comsat.c -+++ procmail-3.22/src/comsat.c -@@ -92,7 +92,7 @@ - } - if(newvalid) /* so far, so good */ - { int s; -- if(!*chp) /* no service */ -+ if(!chad||!*chp) /* no service */ - chp=BIFF_serviceport; /* new balls please! */ - s=strtol(chp,&chad,10); - if(chp!=chad) /* the service is not numeric */ -@@ -120,7 +120,7 @@ - { int s;const char*p; - if(!csvalid||!buf) /* is comat on and set to a valid address? */ - return; -- if(!*cslgname||strlen(cslgname)+2>linebuf) /* is $LOGNAME bogus? */ -+ if(!cslgname||!*cslgname||strlen(cslgname)+2>linebuf)/* is $LOGNAME bogus? */ - return; - if(!(p=folder?folder:cslastf)) /* do we have a folder? */ - return; ---- procmail-3.22.orig/src/formail.c -+++ procmail-3.22/src/formail.c -@@ -758,9 +758,9 @@ - lputssn(buf,buffilled),ctlength-=buffilled,buffilled=lnl=0; - ;{ int tbl=buflast,lwr='\n'; - while(--ctlength>=0&&tbl!=EOF) /* skip Content-Length: bytes */ -- lnl=lwr==tbl&&lwr=='\n',putcs(lwr=tbl),tbl=getchar(); -+ lnl=lwr==tbl&&lwr=='\n',lputcs(lwr=tbl),tbl=getchar(); - if((buflast=tbl)=='\n'&&lwr!=tbl) /* just before a line break? */ -- putcs('\n'),buflast=getchar(); /* wrap up loose end */ -+ lputcs('\n'),buflast=getchar(); /* wrap up loose end */ - } - if(!quiet&&ctlength>0) - { charNUM(num,ctlength); ---- procmail-3.22.orig/src/memblk.c -+++ procmail-3.22/src/memblk.c -@@ -51,11 +51,11 @@ - { - #ifdef USE_MMAP - if(mb->fd>=0) -- { long len=mb->len+1; -- if(munmap(mb->p,len)) -- mmapfailed(len); /* don't want to continue here */ -- if((mb->p=mmap(0,len,PROT_READ,MAP_PRIVATE,mb->fd,(off_t)0))==MAP_FAILED) -- mmapfailed(len); -+ { long mlen=mb->len+1; -+ if(munmap(mb->p,mlen)) -+ mmapfailed(mlen); /* don't want to continue here */ -+ if((mb->p=mmap(0,mlen,PROT_READ,MAP_PRIVATE,mb->fd,(off_t)0))==MAP_FAILED) -+ mmapfailed(mlen); - close(mb->fd); - mb->fd=ropen(devnull,O_RDWR,0); /* XXX Perhaps -1 is better? */ - } -@@ -77,8 +77,8 @@ - strcpy(filename,MMAP_DIR); - if(unique(filename,strchr(filename,'\0'),MMAP_FILE_LEN,MMAP_PERM,0,0)&& - (mb->fd=ropen(filename,O_RDWR,MMAP_PERM),unlink(filename),mb->fd>=0)) -- { mb->filelen=len; -- if(lseek(mb->fd,mb->filelen-1,SEEK_SET)<0||1!=rwrite(mb->fd,empty,1)) -+ { mb->filelen=len+1; -+ if(lseek(mb->fd,len,SEEK_SET)<0||1!=rwrite(mb->fd,empty,1)) - dropf: { close(mb->fd);mb->fd= -1; - if(verbose)nlog("Unable to extend or use tempfile"); - } -@@ -98,9 +98,9 @@ - } - } - if(mb->fd>=0) -- { if(len>mb->filelen) /* need to extend? */ -- { mb->filelen=len; -- if(lseek(mb->fd,mb->filelen-1,SEEK_SET)<0||1!=rwrite(mb->fd,empty,1)) -+ { if(len>=mb->filelen) /* need to extend? */ -+ { mb->filelen=len+1; -+ if(lseek(mb->fd,len,SEEK_SET)<0||1!=rwrite(mb->fd,empty,1)) - { char*p=malloc(len+1); /* can't extend, switch to malloc */ - tmemmove(p,mb->p,mb->len); - munmap(mb->p,mb->len+1); -@@ -124,9 +124,9 @@ - } - else - mb->p=realloc(mb->p,len+1); -- mb->len=len+1; -- mb->p[len]='\0'; -+ mb->len=len; - ret1: -+ mb->p[len]='\0'; - return 1; - } - ---- procmail-3.22.orig/src/autoconf -+++ procmail-3.22/src/autoconf -@@ -1470,15 +1470,14 @@ - grep 'Mlocal.*procmail' >$DEVNULL || - echo '#define CF_no_procmail_yet' >>$ACONF - --cat /usr/lib/sendmail.cf /etc/sendmail.cf /etc/mail/sendmail.cf 2>$DEVNULL | -- grep '^V' >$DEVNULL || -- echo '#define buggy_SENDMAIL' >>$ACONF -+# cat /usr/lib/sendmail.cf /etc/sendmail.cf /etc/mail/sendmail.cf 2>$DEVNULL | -+# grep '^V' >$DEVNULL || -+# echo '#define buggy_SENDMAIL' >>$ACONF - - lpath='/bin' - bins="/bin" - --for newd in /usr/bin /usr/ucb /usr/5bin $BINDIR /local/bin /usr/local/bin \ -- /global/bin /usr/bin/X11 /usr/X*/bin -+for newd in /usr/bin $BINDIR /usr/bin/X11 /usr/X*/bin - do - if test -d $newd - then ---- procmail-3.22.orig/src/procmail.c -+++ procmail-3.22/src/procmail.c -@@ -652,8 +652,7 @@ - nrcond= -1; - if(tolock) /* clear temporary buffer for lockfile name */ - free(tolock); -- for(i=maxindex(flags);i;i--) /* clear the flags */ -- flags[i]=0; -+ bbzero(flags,sizeof(flags)); /* clear the flags */ - for(tolock=0,locknext=0;;) - { chp=skpspace(chp); - switch(i= *chp++) ---- procmail-3.22.orig/src/pipes.c -+++ procmail-3.22/src/pipes.c -@@ -145,7 +145,9 @@ - if(Stdout) - { *(eq=strchr(Stdout,'\0')-1)='\0'; /* chop the '=' */ - if(!(backblock=getenv(Stdout))) /* no current value? */ -- PRDB=PWRB= -1; -+ { PRDB=PWRB= -1; -+ backlen=0; -+ } - else - { backlen=strlen(backblock); - goto pip; -@@ -155,9 +157,7 @@ - pip: rpipe(pbackfd); - rpipe(pinfd); /* main pipes setup */ - if(!(pidchild=sfork())) /* create a sending procmail */ -- { if(Stdout&&backblock) -- backlen=strlen(backblock); -- else -+ { if(!Stdout) - backblock=source,backlen=len; - childsetup();rclose(PRDI);rclose(PRDB); - rpipe(poutfd);rclose(STDOUT); -@@ -194,7 +194,7 @@ - makeblock(&temp,Stdfilled); - tmemmove(temp.p,Stdout,Stdfilled); - readdyn(&temp,&Stdfilled,Stdfilled+backlen+1); -- Stdout=realloc(Stdout,&Stdfilled+1); -+ Stdout=realloc(Stdout,Stdfilled+1); - tmemmove(Stdout,temp.p,Stdfilled+1); - freeblock(&temp); - retStdout(Stdout,pwait&&pipw,!backblock); ---- procmail-3.22.orig/src/memblk.h -+++ procmail-3.22/src/memblk.h -@@ -1,6 +1,6 @@ - typedef struct memblk { - char*p; /* where it starts */ -- long len; /* currently allocated size */ -+ long len; /* current size, not including trailing NUL */ - #ifdef USE_MMAP - off_t filelen; /* how long is the file */ - int fd; /* file which is mmap()ed */ ---- procmail-3.22.orig/src/manconf.c -+++ procmail-3.22/src/manconf.c -@@ -233,7 +233,7 @@ - \2-@PRESERVOPT@\1and\1.BR \2-@FROMWHOPT@ .\1"); - pc("LMTPOPT",LMTPOPT); - #else -- ps("LMTPOPTdesc","");ps("LMTPusage",""); -+ ps("LMTPOPTdesc","");ps("LMTPusage","\1"); - #endif - pname("INIT_UMASK",0);printf("0%lo/g\n",(unsigned long)INIT_UMASK);lines--; - pn("DEFlinebuf",DEFlinebuf); ---- procmail-3.22.orig/src/recommend.c -+++ procmail-3.22/src/recommend.c -@@ -47,7 +47,7 @@ - printf("chmod %lo %s\n",(unsigned long)(sgid|PERMIS),argv[2]); - else if(chmdir==1) - goto nogchmod; -- if(chmdir) -+ if(0) - printf("chmod %c+w %s/.\n",chmdir==1?'g':'a',mailspooldir); - nogchmod: - return EXIT_SUCCESS; ---- procmail-3.22.orig/src/foldinfo.h -+++ procmail-3.22/src/foldinfo.h -@@ -10,7 +10,7 @@ - - #define ft_lock(type) ((type)>ft_MAILDIR) /* kernel lock fd */ - #define ft_atime(type) ((type)==ft_FILE) /* force atime < mtime */ --#define ft_dotlock(type) ((type)==ft_FILE) /* dotlock $DEFAULT */ -+#define ft_dotlock(type) ((type)>ft_MAILDIR) /* dotlock $DEFAULT */ - #define ft_delim(type) ((type)==ft_FILE) /* add MMDF delim */ - #define ft_checkcloser(type) ((type)>ft_MH) - #define ft_forceblank(type) ((type)!=ft_MAILDIR) /* force blank line at end */ ---- procmail-3.22.orig/src/mailfold.c -+++ procmail-3.22/src/mailfold.c -@@ -378,7 +378,8 @@ - dfilled=mailread=0; - else if(rhead) /* only read in a new header */ - { memblk new; -- dfilled=mailread=0;makeblock(&new,0);readdyn(&new,&dfilled,0); -+ dfilled=mailread=0;makeblock(&new,0); -+ readdyn(&new,&dfilled,thebody-themail.p); - if(tobesent>dfilled&&isprivate) /* put it in place here */ - { tmemmove(themail.p+dfilled,thebody,filled-=tobesent); - tmemmove(themail.p,new.p,dfilled); ---- procmail-3.22.orig/FAQ -+++ procmail-3.22/FAQ -@@ -57,8 +57,8 @@ - Forward to |/usr/bin/procmail - or if that doesn't work, try: - Pipe to /usr/bin/procmail -- as the only line in your mail spool file (e.g. /usr/mail/$LOGNAME), as -- well as doing a "chmod 06660 /usr/mail/$LOGNAME". For more information -+ as the only line in your mail spool file (e.g. /var/mail/$LOGNAME), as -+ well as doing a "chmod 06660 /var/mail/$LOGNAME". For more information - on such systems, do a "man mail". - - If all of this doesn't work, procmail can be called on a periodical -@@ -210,14 +210,14 @@ - procmail with both the fcntl() and lockf() locking method - disabled (see config.h). - --17. I sometimes get these `Lock failure on "/usr/mail/$LOGNAME.lock"' errors -+17. I sometimes get these `Lock failure on "/var/mail/$LOGNAME.lock"' errors - from procmail. What do I do about it? - - The problem here is that as long as procmail has not read a - $HOME/.procmailrc file, it can hang on to the sgid mail permission -- (which it needs in order to create a lockfile in /usr/mail). -+ (which it needs in order to create a lockfile in /var/mail). - I.e. if procmail delivers mail to a user without a $HOME/.procmailrc -- file, procmail *can* (and does) use the /usr/mail/$LOGNAME.lock file. -+ file, procmail *can* (and does) use the /var/mail/$LOGNAME.lock file. - - If, however, it finds a $HOME/.procmailrc file, procmail has to let go - of the sgid mail permission because otherwise any ordinary user could -@@ -226,7 +226,7 @@ - There are several solutions to this problem: - - Some systems support the sticky bit on directories (when set only - allows the owner of a file in that directory to rename or remove -- it). This enables you to make /usr/spool/mail drwxrwxrwt. It is -+ it). This enables you to make /var/mail drwxrwxrwt. It is - thus effectively world writable, but all the mailboxes in it are - protected because only the mailbox owner can remove or rename it. - - If your system did not exhibit the !@#$%^&* POSIX semantics for -@@ -245,9 +245,9 @@ - :0 - $DEFAULT - -- - You could, instead of using /usr/mail/$LOGNAME, use a file below -+ - You could, instead of using /var/mail/$LOGNAME, use a file below - your home directory as your default mailbox. -- - Or, you could still use /usr/mail/$LOGNAME as the mailbox, but -+ - Or, you could still use /var/mail/$LOGNAME as the mailbox, but - simply instruct procmail to use a different lockfile. This can - be achieved by putting following recipe at the bottom of - your .procmailrc file: ---- procmail-3.22.orig/Makefile -+++ procmail-3.22/Makefile -@@ -79,7 +79,7 @@ - # -lresolv # not really needed, is it? - - # Informal list of directories where we look for the libraries in SEARCHLIBS --LIBPATHS=/lib /usr/lib /usr/local/lib -+LIBPATHS=/lib /usr/lib - - GCC_WARNINGS = -O2 -pedantic -Wreturn-type -Wunused -Wformat -Wtraditional \ - -Wpointer-arith -Wconversion -Waggregate-return \ ---- procmail-3.22.orig/debian/changelog -+++ procmail-3.22/debian/changelog -@@ -0,0 +1,294 @@ -+procmail (3.22-8) unstable; urgency=low -+ -+ * Fixed strange formail -l behaviour when there is a Content-Length: header. -+ Thanks a lot to Henning Makholm for the patch (Closes: #217853). -+ -+ -- Santiago Vila Mon, 3 Nov 2003 20:01:24 +0100 -+ -+procmail (3.22-7) unstable; urgency=low -+ -+ * Fixed bad nroff syntax in procmailrc(5), closes: #147173. -+ * Added missing newline in procmail(1), closes: #180477. -+ -+ -- Santiago Vila Mon, 10 Mar 2003 00:09:20 +0100 -+ -+procmail (3.22-6) unstable; urgency=low -+ -+ * Standards-Version: 3.5.8. -+ -+ -- Santiago Vila Thu, 26 Dec 2002 18:27:08 +0100 -+ -+procmail (3.22-5) stable; urgency=medium -+ -+ * Patched pipes.c to fix a memory allocation bug (Closes: #171514). -+ -+ -- Santiago Vila Thu, 26 Dec 2002 18:09:38 +0100 -+ -+procmail (3.22-4) unstable; urgency=low -+ -+ * Fixed a typo in procmail(1). Patch by the author (Closes: #142983). -+ -+ -- Santiago Vila Tue, 16 Apr 2002 19:16:20 +0200 -+ -+procmail (3.22-3) unstable; urgency=medium -+ -+ * Fixed off-by-one bug in procmail.c which made the raw flag not to be -+ cleared properly. Thanks to Gregory Stark (Closes: #134341). -+ -+ -- Santiago Vila Sun, 17 Feb 2002 16:43:02 +0100 -+ -+procmail (3.22-2) unstable; urgency=medium -+ -+ * Modified mailfold.c to fix a segfault problem. Patch by the author. -+ * The system-wide mail directory is /var/mail as per policy. -+ -+ -- Santiago Vila Thu, 29 Nov 2001 09:39:04 +0100 -+ -+procmail (3.22-1) unstable; urgency=low -+ -+ * New upstream release, which uses the `standard' format for Maildir -+ filenames and retries on name collision. It also contains some -+ bug fixes from the 3.23pre snapshot dated 2001-09-13. -+ * Removed `sendmail' from the Recommends field, since we already -+ have `exim' (the default Debian MTA) and `mail-transport-agent'. -+ * Removed suidmanager support. Conflicts: suidmanager (<< 0.50). -+ * Added support for DEB_BUILD_OPTIONS in the source package. -+ * README.Maildir: Do not use locking on the example recipe, -+ since it's wrong to do so in this case. -+ -+ -- Santiago Vila Wed, 21 Nov 2001 09:40:20 +0100 -+ -+procmail (3.15.2-1) stable; urgency=high -+ -+ * New upstream release, with improved security and robustness involving -+ signal handlers. Author recommends upgrading to this version on -+ any system where it is installed setuid or setgid. -+ * This release fixes also Bug #108417: procmail -p -m resets PATH. -+ -+ -- Santiago Vila Thu, 30 Aug 2001 20:05:06 +0200 -+ -+procmail (3.15.1-4) unstable; urgency=low -+ -+ * Don't add an extra newline when delivering to a Maildir folder. -+ Please note that the MTA may still add a newline on their own. -+ Exim users should check the `suffix' variable, for example. -+ Patch by the author. Closes: #78623. -+ -+ -- Santiago Vila Sat, 14 Apr 2001 17:18:29 +0200 -+ -+procmail (3.15.1-3) unstable; urgency=low -+ -+ * Clarified formail -X behaviour, patch by the author (Closes: #77388). -+ * Updated QuickStart. -+ -+ -- Santiago Vila Sun, 25 Mar 2001 10:45:56 +0200 -+ -+procmail (3.15.1-2) unstable; urgency=low -+ -+ * Fixed lockfile -l endless loop (Closes: #82006). Patch by the author. -+ -+ -- Santiago Vila Sun, 28 Jan 2001 19:44:49 +0100 -+ -+procmail (3.15.1-1) unstable; urgency=low -+ -+ * New upstream release. A race to create the mailspool would bounce one of -+ the messages due to an internal error. -+ -+ -- Santiago Vila Mon, 8 Jan 2001 20:09:34 +0100 -+ -+procmail (3.15-3) unstable; urgency=low -+ -+ * Fixed formatting error in procmailrc(5). Patch by the author. -+ (Closes: #80437). -+ -+ -- Santiago Vila Sun, 31 Dec 2000 17:20:47 +0100 -+ -+procmail (3.15-2) unstable; urgency=low -+ -+ * formail -l is now documented. Patch by the author (Closes: #72275). -+ -+ -- Santiago Vila Fri, 1 Dec 2000 19:54:22 +0100 -+ -+procmail (3.15-1) unstable; urgency=low -+ -+ * New upstream release. Maildir support is now built-in. -+ * Really change default PATH to "$HOME/bin:/usr/local/bin:/usr/bin:/bin". -+ * Modified the note in QuickStart about refiltering an old mail folder. -+ * Use SEARCHLIBS="" in debian/rules clean target to speed it up. -+ * Modified ft_dotlock in src/foldinfo.h to be in compliance with -+ locking policy, following a hint by the author. -+ * Removed (versioned) dependency on debianutils, since mailstat -+ does not use temporary files anymore. -+ * Made the .forward example in procmail(1) not to depend on the build -+ environment by modifying src/autoconf so that buggy_SENDMAIL is -+ never defined. -+ -+ -- Santiago Vila Mon, 28 Aug 2000 12:51:05 +0200 -+ -+procmail (3.13.1-4) stable; urgency=high -+ -+ * Fixed weird formail -rk behavior (patch from the author, backported -+ from procmail-3.15). Thanks to Ben Collins for the report. -+ * s/smail/exim/ in `Recommends:' field. -+ -+ -- Santiago Vila Tue, 22 Aug 2000 13:04:50 +0200 -+ -+procmail (3.13.1-3) unstable; urgency=medium -+ -+ * Standards-Version: 3.1.1 -+ * Updated location of licenses in copyright file. -+ * LOCKINGTEST=100 again, to use fcntl() and dot-locking, as required by -+ latest policy. -+ -+ -- Santiago Vila Wed, 1 Dec 1999 12:37:35 +0100 -+ -+procmail (3.13.1-2) unstable; urgency=low -+ -+ * Modified procmail(1) and QuickStart to reflect the fact that exim does -+ not accept the exec keyword in .forward files (Bugs #33460 and #37771). -+ * Modified formail to recognize exim's Envelope-To: header (Bug#40718). -+ Patch by Philip Guenther. -+ * Standards-Version: 3.0.0. -+ -+ -- Santiago Vila Mon, 19 Jul 1999 20:09:25 +0200 -+ -+procmail (3.13.1-1) stable unstable; urgency=high -+ -+ * New upstream release, 3.13 missed a couple possible overflows. -+ * Applied `procmail-locking.patch' from Bruce Guenter, since -+ no directory delivery mechanism requires locking (Bug #35210). -+ -+ -- Santiago Vila Thu, 8 Apr 1999 13:56:33 +0200 -+ -+procmail (3.13-1) stable unstable; urgency=high -+ -+ * New upstream release. procmail 3.12 breaks smartlist (Bug #35115). -+ -+ -- Santiago Vila Fri, 2 Apr 1999 14:24:24 +0200 -+ -+procmail (3.12-1) frozen unstable; urgency=high -+ -+ * New upstream release. Fixes some security bugs. -+ * #define GROUP_PER_USER in config.h to allow writeable rcfiles when -+ the group is the user's default group. -+ * Added KNOWN_BUGS to the doc directory. -+ * suid procmail to avoid non-suidness window when upgrading. -+ -+ -- Santiago Vila Thu, 4 Mar 1999 10:28:28 +0100 -+ -+procmail (3.10.7-7) frozen unstable; urgency=medium -+ -+ * New Maildir patches from Bruce Guenter. -+ Should fix Bug #30320: procmail: maildir does not use From_ lines. -+ -+ -- Santiago Vila Thu, 31 Dec 1998 13:27:20 +0100 -+ -+procmail (3.10.7-6) frozen unstable; urgency=medium -+ -+ * Patched mailfold.c to avoid the unnecessary one second wait when -+ delivering to MH folders (patch by the author). -+ * src/locking.c: Applied a bugfix patch from the author. -+ -+ -- Santiago Vila Wed, 13 May 1998 21:50:19 +0200 -+ -+procmail (3.10.7-5) frozen unstable; urgency=medium -+ -+ * Added a patch for Maildir support. The "new" procmail should be -+ completely backwards compatible with the "previous" one, in the -+ sense that its behaviour should be just the same for already -+ existing .procmailrc files which do not use the new syntax for -+ Maildir folders. -+ * Added a small README.Maildir explaining how to use this feature. -+ -+ -- Santiago Vila Mon, 4 May 1998 19:39:55 +0200 -+ -+procmail (3.10.7-4) frozen unstable; urgency=low -+ -+ * Added a small note in QuickStart about refiltering an old mail folder. -+ * mailstat(1): The log file is truncated to zero length (Bug #21022). -+ * PATH=/usr/local/bin:/usr/bin:/bin for the example in procmail(1). -+ * Standards-Version: 2.4.1. -+ -+ -- Santiago Vila Fri, 17 Apr 1998 18:00:14 +0200 -+ -+procmail (3.10.7-3) frozen unstable; urgency=medium -+ -+ * Patched src/recommend.c so that the mail spool directory is not -+ touched. This will allow the package to be built using fakeroot. -+ * Patched mailstat so that it uses tempfile. -+ -+ -- Santiago Vila Tue, 24 Mar 1998 21:43:08 +0100 -+ -+procmail (3.10.7-2) unstable; urgency=low -+ -+ * Default PATH is now "$HOME/bin:/usr/local/bin:/usr/bin:/bin". -+ * Added "fetchmail" to the Recommends: line as one more option. -+ * Added /usr/doc/procmail/QuickStart (experimental). -+ * Compressed changelog.Debian. -+ * Removed debstd dependency. -+ * Pristine source. -+ -+ -- Santiago Vila Sat, 31 Jan 1998 20:30:06 +0100 -+ -+procmail (3.10.7-1) unstable; urgency=low -+ -+ * Upgraded to 3.11pre7. Sources are now GPLed, hurrah! -+ * Added explicit SEARCHLIBS, to avoid unneeded dependency on libdl. -+ * First libc6 release. -+ -+ -- Santiago Vila Wed, 18 Jun 1997 20:43:28 +0200 -+ -+procmail (3.10.4-2) frozen unstable; urgency=low -+ -+ * Rebuilt using latest debmake to avoid a problem with suidmanager. -+ -+ -- Santiago Vila Sat, 17 May 1997 20:52:59 +0200 -+ -+procmail (3.10.4-1) frozen unstable; urgency=low -+ -+ * Upgraded to 3.11pre4. Side effect: It can be built using libc6. -+ * Removed NFS_ATIME_HACK patch, since it is no longer needed. -+ -+ -- Santiago Vila Sat, 12 Apr 1997 19:06:46 +0200 -+ -+procmail (3.10-8) unstable; urgency=low -+ -+ * Rewritten copyright file. -+ * initmake unmodified (source). -+ * Patched to recognize NFS_ATIME_HACK variable in .procmailrc or -+ /etc/procmailrc. Default value is "yes" (i.e. wait a second). -+ * Added a small note about this in /usr/doc/procmail/README.Debian. -+ -+ -- Santiago Vila Sun, 23 Mar 1997 12:04:34 +0100 -+ -+procmail (3.10-7) unstable; urgency=low -+ -+ * Put CFLAGS settings &c in ./Makefile, not in debian/rules. -+ * Removed fix-substvars script, since it's no longer needed with -+ new libc5-5.4.20. -+ * Man page for mailstat changed slightly. -+ * Some minor debian/rules changes. -+ * Added MD5 sums. -+ -+ -- Santiago Vila Fri, 21 Feb 1997 20:53:30 +0100 -+ -+procmail (3.10-6) unstable; urgency=low -+ -+ * Use debmake. -+ * suidmanager support. -+ * Removed `mailstat' from examples, it's already in /usr/bin. -+ * Removed also `dirname' (which was "for the deprived"). -+ * Added `fix-substvars' script to depend on libc5 >= 5.4.0. -+ -+ -- Santiago Vila Mon, 23 Dec 1996 16:34:02 +0100 -+ -+procmail (3.10-5) unstable; urgency=low -+ -+ * Updated to Standards-Version 2.1.2.2. -+ * Changed "Depends: MTA" to "Recommends: MTA". -+ * Added extended package description in control file. -+ * Added the symlink changelog.gz -> HISTORY.gz. -+ * Added an "experimental" man page for mailstat. -+ * New maintainer. -+ -+ -- Santiago Vila Sat, 21 Dec 1996 23:32:11 +0100 ---- procmail-3.22.orig/debian/control -+++ procmail-3.22/debian/control -@@ -0,0 +1,18 @@ -+Source: procmail -+Section: mail -+Priority: standard -+Maintainer: Santiago Vila -+Standards-Version: 3.6.1 -+ -+Package: procmail -+Architecture: any -+Depends: ${shlibs:Depends} -+Conflicts: suidmanager (<< 0.50) -+Recommends: exim | mail-transport-agent | fetchmail -+Description: Versatile e-mail processor -+ Can be used to create mail-servers, mailing lists, sort your incoming -+ mail into separate folders/files (real convenient when subscribing to one -+ or more mailing lists or for prioritising your mail), preprocess your -+ mail, start any programs upon mail arrival (e.g. to generate different -+ chimes on your workstation for different types of mail) or selectively -+ forward certain incoming mail automatically to someone. ---- procmail-3.22.orig/debian/copyright -+++ procmail-3.22/debian/copyright -@@ -0,0 +1,41 @@ -+This is the Debian prepackaged version of the "procmail" mail-processing -+program written by Stephen van den Berg. -+ -+This package is currently maintained by Santiago Vila . -+The source for this release was downloaded from: -+ -+ftp://ftp.procmail.org/pub/procmail/procmail-3.22.tar.gz -+ -+This package was first put together by Bruce Perens , -+who added Debian package maintenance system files, and edited config.h -+to configure for Debian. -+ -+Copyright: -+ -+Procmail & formail mail processing package. -+Copyright (c) 1990-1999, S.R. van den Berg, The Netherlands. -+Copyright (c) 1999-2001, Philip Guenther, The United States of America -+ -+This package is open source software; you can redistribute it and/or -+modify it under the terms of either: -+- the GNU General Public License as published by the Free Software Foundation -+ and can be found in the included file called "COPYING"; either version 2, -+ or (at your option) any later version, or -+- the "Artistic License" which can be found in the included file called -+ "Artistic". -+ -+This package is distributed in the hope that it will be useful, but without -+any warranty; without even the implied warranty of merchantability or fitness -+for a particular purpose. See either the GNU General Public License or the -+Artistic License for more details. -+ -+For those of you that choose to use the GNU General Public License, -+my interpretation of the GNU General Public License is that no procmailrc -+script falls under the terms of the GPL unless you explicitly put -+said script under the terms of the GPL yourself. -+ -+ -+On Debian systems, the complete text of the GNU General Public License -+can be found in `/usr/share/common-licenses/GPL', and the complete -+text of the "Artistic License" can be found in -+`/usr/share/common-licenses/Artistic'. ---- procmail-3.22.orig/debian/mailstat.1 -+++ procmail-3.22/debian/mailstat.1 -@@ -0,0 +1,40 @@ -+.TH MAILSTAT 1 -+.SH NAME -+mailstat \- shows mail-arrival statistics -+.SH SYNOPSIS -+.B mailstat -+[\-klmots] [logfile] -+.SH DESCRIPTION -+.B mailstat -+parses a procmail-generated $LOGFILE and displays -+a summary about the messages delivered to all folders -+(total size, average size, nr of messages). -+The $LOGFILE is truncated to zero length, unless the -+.B -k -+option is used. -+Exit code 0 if mail arrived, 1 if no mail arrived. -+.SH OPTIONS -+.TP -+.I \-k -+keep logfile intact -+.TP -+.I \-l -+long display format -+.TP -+.I \-m -+merge any errors into one line -+.TP -+.I \-o -+use the old logfile -+.TP -+.I \-t -+terse display format -+.TP -+.I \-s -+silent in case of no mail -+.SH NOTES -+Customise to your heart's content, this program is only provided as a -+guideline. -+.SH AUTHOR -+This manual page was written by Santiago Vila -+for the Debian GNU/Linux distribution (but may be used by others). ---- procmail-3.22.orig/debian/QuickStart -+++ procmail-3.22/debian/QuickStart -@@ -0,0 +1,97 @@ -+procmail QuickStart -+=================== -+ -+* procmail is not an `interactive' program. It has to run automatically -+when the mail arrives. Therefore the first thing to do is to tell our MTA -+that we want procmail to "eat" all our mail messages. The way of doing -+this depends on the MTA we are using. For example, if we are using -+sendmail, it will suffice to have a .forward file like this in our home -+directory: -+ -+"|exec /usr/bin/procmail" -+ -+(don't forget the quotes, they are needed in this case). -+ -+If you are using exim, use this instead as your .forward file: -+ -+|/usr/bin/procmail -+ -+The step of creating a .forward file is not needed if the MTA already -+performs the delivery using procmail. For example, Debian sendmail will -+automatically use procmail for mail delivering if the sendmail.cf is -+generated from a sendmail.mc file containing this line: -+ -+FEATURE(local_procmail)dnl -+ -+ -+* If we have a stand-alone system with no permanent net connection (like -+PPP), and we are using fetchmail to get mail from a server, we don't -+really need a MTA. Just adding --mda "formail -s procmail" to the -+fetchmail command line (or using the `mda' keyword) will tell it to -+deliver through procmail. -+ -+ -+* Next, we have to write a ~/.procmailrc file in our home directory. This -+file is a set of filtering rules, based on regular expressions. The -+complete syntax is explained in procmailrc(5). Let's see a real example -+just to get started. Let's suppose you are subscribed to the following two -+mailing lists: -+ -+linux-kernel@vger.kernel.org -+debian-user@lists.debian.org -+ -+The first list is managed by Majordomo. Messages coming from a Majordomo -+list often include a header field "Sender: " which allow easy filtering. -+ -+The second list is managed my SmartList. Messages coming from a SmartList -+list may include several headers that can be used to filter it. One of -+them (in fact, the only that it is not X-whatever) is "Resent-Sender: ". -+ -+So the following .procmailrc will first filter the mailing lists, and -+any remaining message will go to the default folder: -+ -+*--------------------------------->8------------------------------------ -+PATH=$HOME/bin:/usr/local/bin:/usr/bin:/bin -+MAILDIR=$HOME/mail # you'd better make sure it exists -+DEFAULT=$MAILDIR/mbox # completely optional -+LOGFILE=$MAILDIR/procmail.log # recommended -+ -+:0: -+* ^Sender:.*linux-kernel-owner@vger.kernel.org -+linux-kernel -+ -+:0: -+* ^Resent-Sender:.*debian-user-request@lists.debian.org -+debian-user -+*--------------------------------->8------------------------------------ -+ -+From this example additional rules for mailing lists may be created -+easily. -+ -+ -+* Once you have received lots of messages you will want to know where -+did they go. That's what the LOGFILE is for. There is a tool named -+mailstat which parses this file and shows a summary: -+ -+mailstat procmail.log -+ -+The mailstat command that this package provides does really come from the -+examples directory and it is installed by default. You may have your own -+modified copy in $HOME/bin, if you like. -+ -+ -+If you have to refilter an old mail folder according to your current -+~/.procmailrc file, you may do the following: -+ -+cat mbox | formail -s procmail -+ -+But of course if your mbox file is the target of a procmail recipe you should -+do this instead: -+ -+mv mbox whatever -+cat whatever | formail -s procmail -+ -+See formail(1) for details. -+ -+ -+Santiago Vila ---- procmail-3.22.orig/debian/README.Maildir -+++ procmail-3.22/debian/README.Maildir -@@ -0,0 +1,12 @@ -+This version of procmail supports Maildir folders. -+ -+To make procmail to deliver into a Maildir folder, just append -+a slash (/) to the name of the maildir folder in your ~/.procmailrc file. -+For example, the following rule: -+ -+:0 -+* ^Resent-Sender.*debian-user-request@lists.debian.org -+debian-user/ -+ -+will deliver all mail from the debian-user mailing list to the Maildir -+folder "debian-user". ---- procmail-3.22.orig/debian/rules -+++ procmail-3.22/debian/rules -@@ -0,0 +1,76 @@ -+#!/usr/bin/make -f -+ -+package = procmail -+docdir = debian/tmp/usr/share/doc/$(package) -+ -+CC = gcc -+CFLAGS0 = -g -+LDFLAGS0 = -+SEARCHLIBS = -lm -+STRIP = true -+ -+ifeq (,$(findstring noopt,$(DEB_BUILD_OPTIONS))) -+ CFLAGS0 += -O2 -+endif -+ifeq (,$(findstring nostrip,$(DEB_BUILD_OPTIONS))) -+ STRIP = strip --remove-section=.comment --remove-section=.note -+endif -+ -+build: -+ $(checkdir) -+ $(MAKE) CC="$(CC)" CFLAGS0="$(CFLAGS0)" LDFLAGS0="$(LDFLAGS0)" \ -+ SEARCHLIBS="$(SEARCHLIBS)" -+ touch build -+ -+clean: -+ $(checkdir) -+ rm -f build -+ -$(MAKE) realclean SEARCHLIBS="" -+ rm -f `find . -name "*~"` -+ rm -rf debian/tmp debian/files* core debian/substvars -+ -+binary-indep: checkroot build -+ $(checkdir) -+ -+binary-arch: checkroot build -+ $(checkdir) -+ rm -rf debian/tmp -+ install -d debian/tmp/DEBIAN $(docdir)/examples -+ cd debian/tmp && install -d usr/bin -+ $(MAKE) BASENAME=`pwd`/debian/tmp/usr install.man install-suid -+ $(STRIP) debian/tmp/usr/bin/procmail -+ $(STRIP) debian/tmp/usr/bin/lockfile -+ $(STRIP) debian/tmp/usr/bin/formail -+ cp -p debian/copyright $(docdir) -+ cp -p debian/changelog $(docdir)/changelog.Debian -+ install -m 644 debian/mailstat.1 debian/tmp/usr/man/man1 -+ cp -p FEATURES HISTORY README FAQ KNOWN_BUGS \ -+ debian/QuickStart debian/README.Maildir $(docdir) -+ cp -p examples/* $(docdir)/examples -+ cd $(docdir)/examples && rm -f dirname mailstat procmail-rpm.spec -+ cd $(docdir) && gzip -9 HISTORY changelog.Debian -+ ln -s HISTORY.gz $(docdir)/changelog.gz -+ mv debian/tmp/usr/man debian/tmp/usr/share -+ gzip -r9 debian/tmp/usr/share/man -+ dpkg-shlibdeps debian/tmp/usr/bin/* -+ dpkg-gencontrol -isp -+ cd debian/tmp && \ -+ md5sum `find * -type f ! -regex "DEBIAN/.*"` > DEBIAN/md5sums -+ chown -R root:root debian/tmp -+ chmod -R go=rX debian/tmp -+ chgrp mail debian/tmp/usr/bin/procmail debian/tmp/usr/bin/lockfile -+ chmod 6755 debian/tmp/usr/bin/procmail -+ chmod 2755 debian/tmp/usr/bin/lockfile -+ dpkg --build debian/tmp .. -+ -+define checkdir -+ test -f src/$(package).c -a -f debian/rules -+endef -+ -+binary: binary-indep binary-arch -+ -+checkroot: -+ $(checkdir) -+ test root = "`whoami`" -+ -+.PHONY: binary binary-arch binary-indep clean checkroot