import procmail-3.24-7.el10

i10c-beta changed/i10c-beta/procmail-3.24-7.el10
MSVSphere Packaging Team 3 months ago
commit f5a2c43457
Signed by: sys_gitsync
GPG Key ID: B2B0B9F29E528FE8

1
.gitignore vendored

@ -0,0 +1 @@
SOURCES/procmail-3.24.tar.gz

@ -0,0 +1 @@
7de1d9d27fe0a59d553b93a4ace17e50003cf667 SOURCES/procmail-3.24.tar.gz

@ -0,0 +1,19 @@
--- procmail-3.15.1/man/procmail.man.35825 Thu Apr 12 18:31:37 2001
+++ procmail-3.15.1/man/procmail.man Thu Apr 12 18:32:42 2001
@@ -44,11 +44,11 @@
should be invoked automatically over the
.B @DOT_FORWARD@
file mechanism as soon as mail arrives. Alternatively, when installed by
-a system administrator, it can be invoked from within the mailer immediately.
-When invoked, it first sets some environment variables to default values,
-reads the mail message from stdin until an EOF, separates the body from the
-header, and then, if no command line arguments are present, it starts to look
-for a file named
+a system administrator (and in the standard Red Hat Linux configuration), it
+can be invoked from within the mailer immediately. When invoked, it
+first sets some environment variables to default values, reads the mail message from
+stdin until an EOF, separates the body from the header, and then, if no command line
+arguments are present, it starts to look for a file named
.BR @PROCMAILRC@ .
According to the processing recipes in this file,
the mail message that just arrived gets distributed into the right folder

@ -0,0 +1,47 @@
--- procmail-3.22/src/mailfold.c.truncate 2007-03-27 13:24:05.000000000 +0200
+++ procmail-3.22/src/mailfold.c 2007-03-27 13:25:06.000000000 +0200
@@ -30,6 +30,7 @@
int logopened,rawnonl;
off_t lasttell;
+static int trunced;
static long lastdump;
static volatile int mailread; /* if the mail is completely read in already */
static struct dyna_array confield; /* escapes, concatenations */
@@ -81,6 +82,7 @@
long len;
{ int i;long part;
lasttell=i= -1;SETerrno(EBADF);
+ trunced=0;
if(s>=0)
{ if(ft_lock(type)&&(lseek(s,(off_t)0,SEEK_END),fdlock(s)))
nlog("Kernel-lock failed\n");
@@ -120,13 +122,18 @@
}
writefin:
i=type!=ft_PIPE&&fsync(s)&&errno!=EINVAL; /* EINVAL => wasn't a file */
+ if ((i||len)&&lasttell>=0)
+ { int serrno=errno;
+ if(!ftruncate(s,lasttell)) trunced=1;
+ SETerrno(serrno);
+ }
if(ft_lock(type))
{ int serrno=errno; /* save any error information */
if(fdunlock())
nlog("Kernel-unlock failed\n");
SETerrno(serrno);
}
- i=rclose(s)||i;
+ i=rclose(s)||i; /* if this fails, we should truncate, but it's too late */
} /* return an error even if nothing was to be sent */
return i&&!len?-1:len;
}
@@ -237,7 +244,7 @@
#endif
default:writeerr(buf);
}
- if(lasttell>=0&&!truncate(boxname,lasttell)&&(logopened||verbose))
+ if(lasttell>=0&&trunced&&(logopened||verbose))
nlog("Truncated file to former size\n"); /* undo garbage */
ret0: return 0;
}

@ -0,0 +1,73 @@
diff --git a/src/cstdio.c b/src/cstdio.c
index d444057..5327c77 100644
--- a/src/cstdio.c
+++ b/src/cstdio.c
@@ -15,6 +15,7 @@ static /*const*/char rcsid[]=
#include "variables.h"
#include "shell.h"
#include "cstdio.h"
+#include "common.h"
static uchar rcbuf[STDBUF],*rcbufp,*rcbufend; /* buffer for custom stdio */
static off_t blasttell;
diff --git a/src/foldinfo.c b/src/foldinfo.c
index 48b83e2..88d6228 100644
--- a/src/foldinfo.c
+++ b/src/foldinfo.c
@@ -19,6 +19,7 @@ static /*const*/char rcsid[]=
#include "goodies.h"
#include "locking.h"
#include "foldinfo.h"
+#include "acommon.h"
static const char
maildirtmp[]=MAILDIRtmp,maildircur[]=MAILDIRcur;
@@ -186,8 +187,8 @@ int screenmailbox(chp,egid,doautoforward)
if(!stat(buf,&stbuf))
{ unsigned wwsdir;
accspooldir=(wwsdir= /* world writable spool dir? */
- ((S_IWGRP|S_IXGRP|S_IWOTH|S_IXOTH)&stbuf.st_mode)==
- (S_IWGRP|S_IXGRP|S_IWOTH|S_IXOTH)
+ (((S_IWGRP|S_IXGRP|S_IWOTH|S_IXOTH)&stbuf.st_mode)==
+ (S_IWGRP|S_IXGRP|S_IWOTH|S_IXOTH))
<<1| /* note it in bit 1 */
uid==stbuf.st_uid); /* we own the spool dir, note it in bit 0 */
if((CAN_toggle_sgid||accspooldir)&&privileged)
diff --git a/src/lmtp.c b/src/lmtp.c
index 60b7a2d..41e3c1a 100644
--- a/src/lmtp.c
+++ b/src/lmtp.c
@@ -52,7 +52,7 @@ static int lreaddyn P((void));
int childserverpid;
char detaildelim='\0';
-static ctopfd;
+static int ctopfd;
static char*overread;
static size_t overlen;
diff --git a/src/locking.c b/src/locking.c
index a5a0238..c6882ea 100644
--- a/src/locking.c
+++ b/src/locking.c
@@ -95,7 +95,10 @@ faillock: nlog("Lock failure on");logqnl(name);
permanent=nfsTRY;
ds: ssleep((unsigned)locksleep);
ce: if(nextexit)
-term: { free(name); /* drop the preallocated buffer */
+term: {
+ if(nextexit)
+ elog(whilstwfor),elog("lockfile"),logqnl(name);
+ free(name); /* drop the preallocated buffer */
break;
}
}
@@ -103,7 +106,7 @@ term: { free(name); /* drop the preallocated buffer */
setegid(gid); /* we put back our regular permissions */
lcking&=~lck_DELAYSIG;
if(nextexit)
- elog(whilstwfor),elog("lockfile"),logqnl(name),Terminate();
+ Terminate();
return !!*lockp;
}

@ -0,0 +1,241 @@
diff --git a/initmake b/initmake
index b901add..703d651 100755
--- a/initmake
+++ b/initmake
@@ -124,7 +124,7 @@ else
fi
cat >_autotst.c <<HERE
-main()
+int main()
{ return 0;
}
HERE
@@ -200,7 +200,7 @@ cat >_autotst.c <<HERE
#include <sys/types.h>
#include <stdio.h>
#include <sys/stat.h>
-main()
+int main()
{ struct stat buf;return!&buf;
}
HERE
diff --git a/src/autoconf b/src/autoconf
index deb97c1..c3f2576 100755
--- a/src/autoconf
+++ b/src/autoconf
@@ -361,6 +361,7 @@ cat >_autotst.c <<HERE
#include <unistd.h> /* getpid() getppid() */
#endif
#include <stdio.h>
+#include <stdlib.h>
#include <time.h>
#include <fcntl.h>
#include <signal.h> /* SIGKILL */
@@ -414,6 +415,16 @@ cat >_autotst.c <<HERE
int dolock,child[NR_of_forks],timeout,fdcollect;
char dirlocktest[]="_locktest";
+int killchildren()
+{ int i;
+ i=NR_of_forks;
+ do
+ if(child[--i]>0)
+ kill(child[i],SIGTERM),child[i]=0;
+ while(i);
+ return 0;
+}
+
void stimeout()
{ timeout=1;close(fdcollect);killchildren();
}
@@ -435,7 +446,79 @@ unsigned sfork()
return pid;
}
-int main(argc,argv)char*argv[];
+static int oldfdlock;
+#ifdef F_SETLKW
+static struct flock flck; /* why can't it be a local variable? */
+#endif
+#ifdef F_LOCK
+static off_t oldlockoffset;
+#endif
+
+int fdlock(int fd)
+{ int i;unsigned gobble[GOBBLE>>2];
+ for(i=GOBBLE>>2;i;gobble[--i]=~(unsigned)0); /* SunOS crash test */
+ oldfdlock=fd;fd=0;
+ if(MSK_fcntl&dolock)
+#ifdef F_SETLKW
+ { static unsigned extra;
+ flck.l_type=F_WRLCK;flck.l_whence=SEEK_SET;flck.l_start=tell(oldfdlock);
+ if(!extra--)
+ extra=MIN_locks/4,flck.l_len=2,i|=fcntl(oldfdlock,F_SETLK,&flck);
+ flck.l_len=0;fd|=fcntl(oldfdlock,F_SETLKW,&flck);
+ }
+#else
+ fd=1;
+#endif
+ if(MSK_lockf&dolock)
+#ifdef F_LOCK
+ oldlockoffset=tell(oldfdlock),fd|=lockf(oldfdlock,F_LOCK,(off_t)0);
+#else
+ fd=1;
+#endif
+ if(MSK_flock&dolock)
+#ifdef LOCK_EX
+ fd|=flock(oldfdlock,LOCK_EX);
+#else
+ fd=1;
+#endif
+ return fd;
+}
+
+int sfdlock(int fd)
+{ int i;unsigned gobble[GOBBLE>>2];
+ for(i=GOBBLE>>2;i;gobble[--i]=~(unsigned)0); /* SunOS crash test */
+ return fdlock(fd);
+}
+
+int fdunlock()
+{ int i;unsigned gobble[GOBBLE];
+ for(i=GOBBLE;i;gobble[--i]=~(unsigned)0); /* some SunOS libs mess this up */
+ if(MSK_flock&dolock)
+#ifdef LOCK_EX
+ i|=flock(oldfdlock,LOCK_UN);
+#else
+ i=1;
+#endif
+ if(MSK_lockf&dolock)
+#ifdef F_LOCK
+ { lseek(oldfdlock,oldlockoffset,SEEK_SET);
+ i|=lockf(oldfdlock,F_LOCK,(off_t)2);i|=lockf(oldfdlock,F_ULOCK,(off_t)0);
+ }
+#else
+ i=1;
+#endif
+ if(MSK_fcntl&dolock)
+#ifdef F_SETLKW
+ flck.l_type=F_UNLCK,flck.l_len=0,i|=fcntl(oldfdlock,F_SETLK,&flck);
+#else
+ i=1;
+#endif
+ if(!i)
+ for(i=GOBBLE;i&&gobble[--i]==~(unsigned)0;);
+ return i;
+}
+
+int main(argc,argv)int argc;char*argv[];
{ int goodlock,testlock,i,pip[2],pipw[2];time_t otimet;unsigned dtimet;
static char filename[]="_locktst.l0";
close(0);goodlock=0;testlock=FIRST_lock;signal(SIGPIPE,SIG_DFL);
@@ -574,88 +657,6 @@ skip_tests:
puts("Kernel-locking tests completed.");fprintf(stderr,"\n");
return EXIT_SUCCESS;
}
-
-int killchildren()
-{ int i;
- i=NR_of_forks;
- do
- if(child[--i]>0)
- kill(child[i],SIGTERM),child[i]=0;
- while(i);
- return 0;
-}
-
-int sfdlock(fd)
-{ int i;unsigned gobble[GOBBLE>>2];
- for(i=GOBBLE>>2;i;gobble[--i]=~(unsigned)0); /* SunOS crash test */
- return fdlock(fd);
-}
-
-static oldfdlock;
-#ifdef F_SETLKW
-static struct flock flck; /* why can't it be a local variable? */
-#endif
-#ifdef F_LOCK
-static off_t oldlockoffset;
-#endif
-
-int fdlock(fd)
-{ int i;unsigned gobble[GOBBLE>>2];
- for(i=GOBBLE>>2;i;gobble[--i]=~(unsigned)0); /* SunOS crash test */
- oldfdlock=fd;fd=0;
- if(MSK_fcntl&dolock)
-#ifdef F_SETLKW
- { static unsigned extra;
- flck.l_type=F_WRLCK;flck.l_whence=SEEK_SET;flck.l_start=tell(oldfdlock);
- if(!extra--)
- extra=MIN_locks/4,flck.l_len=2,i|=fcntl(oldfdlock,F_SETLK,&flck);
- flck.l_len=0;fd|=fcntl(oldfdlock,F_SETLKW,&flck);
- }
-#else
- fd=1;
-#endif
- if(MSK_lockf&dolock)
-#ifdef F_LOCK
- oldlockoffset=tell(oldfdlock),fd|=lockf(oldfdlock,F_LOCK,(off_t)0);
-#else
- fd=1;
-#endif
- if(MSK_flock&dolock)
-#ifdef LOCK_EX
- fd|=flock(oldfdlock,LOCK_EX);
-#else
- fd=1;
-#endif
- return fd;
-}
-
-int fdunlock()
-{ int i;unsigned gobble[GOBBLE];
- for(i=GOBBLE;i;gobble[--i]=~(unsigned)0); /* some SunOS libs mess this up */
- if(MSK_flock&dolock)
-#ifdef LOCK_EX
- i|=flock(oldfdlock,LOCK_UN);
-#else
- i=1;
-#endif
- if(MSK_lockf&dolock)
-#ifdef F_LOCK
- { lseek(oldfdlock,oldlockoffset,SEEK_SET);
- i|=lockf(oldfdlock,F_LOCK,(off_t)2);i|=lockf(oldfdlock,F_ULOCK,(off_t)0);
- }
-#else
- i=1;
-#endif
- if(MSK_fcntl&dolock)
-#ifdef F_SETLKW
- flck.l_type=F_UNLCK,flck.l_len=0,i|=fcntl(oldfdlock,F_SETLK,&flck);
-#else
- i=1;
-#endif
- if(!i)
- for(i=GOBBLE;i&&gobble[--i]==~(unsigned)0;);
- return i;
-}
HERE
if $MAKE _autotst >_autotst.rrr 2>&1
@@ -1029,6 +1030,10 @@ cat >_autotst.c <<HERE
#ifndef NO_COMSAT
#include "network.h"
#endif
+#include <string.h>
+#include <unistd.h>
+int setrgid();
+int setresgid();
int main(){char a[2];
endpwent();endgrent();memmove(a,"0",1);bcopy("0",a,1);strcspn(a,"0");
strtol("0",(char**)0,10);strchr("0",'0');strpbrk(a,"0");rename(a,"0");
@@ -1059,7 +1064,7 @@ echo 'Testing for memmove, strchr, strpbrk, strcspn, strtol, strstr,'
echo ' rename, setrgid, setegid, pow, opendir, mkdir, waitpid, fsync,'
echo ' ftruncate, strtod, strncasecmp, strerror, strlcat,'
echo ' memset, bzero, and _exit'
-if $MAKE _autotst.$O >$DEVNULL 2>&1
+if $MAKE _autotst.$O >_autotst.rrr 2>&1
then
:
else

@ -0,0 +1,228 @@
diff --git a/src/autoconf b/src/autoconf
index 7c46487..deb97c1 100755
--- a/src/autoconf
+++ b/src/autoconf
@@ -68,8 +68,6 @@
# #define NOfsync
#Ok #define endpwent()
#Ok #define endgrent()
-#Ok #define endhostent()
-#Ok #define endservent()
#Ok #define endprotoent()
# #define h_0addr_list h_addr
#Ok #define NOpw_passwd
@@ -896,7 +894,7 @@ int main(){int i=0;
{uid_t vuid_t;i+=vuid_t=1;}
{gid_t vgid_t;i+=vgid_t=1;}
#ifndef NO_COMSAT
- {struct hostent vhostent;i+=!(vhostent.h_addr_list=0);}
+ {struct addrinfo res; i+=!(res.ai_socktype=0);}
#endif
#ifndef NOuname
{struct utsname vutsname;i+=!(*vutsname.nodename='\0');}
@@ -917,8 +915,6 @@ do
test -z "$i3" && grepfor mode_t 'typedef int mode_t;' && i3=I
test -z "$i4" && grepfor uid_t 'typedef int uid_t;' && i4=I
test -z "$i5" && grepfor gid_t 'typedef int gid_t;' && i5=I
- test -z "$i6" && grepfor h_addr_list '#define h_0addr_list h_addr' && i6=I
- test -z "$i6" && grepfor hostent '#define h_0addr_list h_addr' && i6=I
test -z "$i6" && grepfor member '#define h_0addr_list h_addr' && i6=I
test -z "$i7" && grepfor utsname "#define NOuname \
/* <sys/utsname.h> is there, but empty */" && i7=I
@@ -1048,8 +1044,12 @@ int main(){char a[2];
{struct utsname b;uname(&b);}
#endif
#ifndef NO_COMSAT
- gethostbyname("0");getprotobyname(COMSATprotocol);endhostent();endservent();
- endprotoent();
+ {
+ struct addrinfo *res, hints;
+ memset(&hints, '\0', sizeof(hints));
+ if(getaddrinfo(COMSAThost,BIFF_serviceport,&hints,&res))
+ freeaddrinfo(res);
+ }
#endif
_exit(0);
return 0;}
@@ -1103,14 +1103,9 @@ grepfor uname "\
/* <sys/utsname.h> defines it, the libraries don't */"
grepfor endpwent '#define endpwent()'
grepfor endgrent '#define endgrent()'
-if grepfor gethostbyname '#define NO_COMSAT'
+if grepfor getaddrinfo '#define NO_COMSAT'
then
:
-else
- grepfor getprotobyname '#define UDP_protocolno 17'
- grepfor endhostent '#define endhostent()'
- grepfor endservent '#define endservent()'
- grepfor endprotoent '#define endprotoent()'
fi
grepfor strstr '#define SLOWstrstr' ||
grepfor clock '#define SLOWstrstr'
@@ -1239,39 +1234,9 @@ int main(argc,argv)int argc;const char*argv[];
printf("/* Insufficient memory to perform the benchmark! */\n");
#endif /* SLOWstrstr */
#ifndef NO_COMSAT
-#ifndef UDP_protocolno
- ;{ const struct protoent*p;
- if(p=getprotobyname(COMSATprotocol))
- { printf("#define UDP_protocolno %d\n",p->p_proto);
-#else
- ;{ if(1)
- {
-#endif
- ;{ const struct servent*serv;
- if(serv=getservbyname(COMSATservice,COMSATprotocol))
- printf("#define BIFF_serviceport \"%d\"\n",
- ntohs(serv->s_port));
- }
-#ifdef AF_INET
- ;{ const struct hostent*host;
- if(!strcmp("localhost",COMSAThost)&&
- (host=gethostbyname(COMSAThost))&&
- host->h_0addr_list&&host->h_addrtype==AF_INET&&
- host->h_length)
- { int j=host->h_length;
- const unsigned char*ad=(void*)host->h_0addr_list;
- printf("#define IP_localhost {");
- printf("%d",*ad++);
- while(--j)
- printf(",%d",*ad++);
- puts("}");
- }
- }
+#ifndef AF_INET
+ puts("#define NO_COMSAT");
#endif /* AF_INET */
- }
- else
- puts("#define NO_COMSAT");
- }
#endif /* NO_COMSAT */
;{ 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 e3e773a..f93ebf1 100644
--- a/src/comsat.c
+++ b/src/comsat.c
@@ -27,7 +27,8 @@ static /*const*/char rcsid[]=
#include "comsat.h"
static int csvalid; /* is it turned on with a good address? */
-static struct sockaddr_in csaddr;
+static struct addrinfo cai;
+static struct sockaddr *csaddr;
static char*cslastf,*cslgname;
void setlfcs(folder)const char*folder; /* set lastfolder for comsat */
@@ -62,56 +63,32 @@ void setlgcs(name)const char*name; /* set logname for comsat */
}
int setcomsat(chp)const char*chp;
-{ char*chad;int newvalid; struct sockaddr_in newaddr;
+{ char*chad;int newvalid; struct addrinfo *res, hints;
chad=strchr(chp,SERV_ADDRsep); /* @ separator? */
if(!chad&&!renvint(-1L,chp))
return csvalid=0; /* turned off comsat */
newvalid=1;
if(chad)
*chad++='\0'; /* split the specifier */
+ if(!chad||!*chp) /* no service */
+ chp=BIFF_serviceport; /* new balls please! */
if(!chad||!*chad) /* no host */
-#ifndef IP_localhost /* Is "localhost" preresolved? */
chad=COMSAThost; /* nope, use default */
-#else /* IP_localhost */
- { static const unsigned char ip_localhost[]=IP_localhost;
- newaddr.sin_family=AF_INET;
- tmemmove(&newaddr.sin_addr,ip_localhost,sizeof ip_localhost);
- }
- else
-#endif /* IP_localhost */
- { const struct hostent*host; /* what host? paranoid checks */
- if(!(host=gethostbyname(chad))||!host->h_0addr_list)
- { bbzero(&newaddr.sin_addr,sizeof newaddr.sin_addr);
- newvalid=0; /* host can't be found, too bad */
- }
- else
- { newaddr.sin_family=host->h_addrtype; /* address number found */
- tmemmove(&newaddr.sin_addr,host->h_0addr_list,host->h_length);
- }
- endhostent();
- }
- if(newvalid) /* so far, so good */
- { int s;
- if(!chad||!*chp) /* no service */
- chp=BIFF_serviceport; /* new balls please! */
- s=strtol(chp,&chad,10);
- if(chp!=chad) /* the service is not numeric */
- newaddr.sin_port=htons((short)s); /* network order */
- else
- { const struct servent*serv;
- serv=getservbyname(chp,COMSATprotocol); /* so get its no. */
- if(serv)
- newaddr.sin_port=serv->s_port;
- else
- { newaddr.sin_port=htons((short)0); /* no such service */
- newvalid=0;
- }
- endservent();
- }
- }
+ bzero(&hints,sizeof(hints));
+ hints.ai_socktype=SOCK_DGRAM;
+ hints.ai_flags=AI_ADDRCONFIG;
+ if(getaddrinfo(chad,chp,&hints,&res))
+ newvalid=0;
+
onguard(); /* update the address atomically */
if(csvalid=newvalid)
- tmemmove(&csaddr,&newaddr,sizeof(newaddr));
+ { if(csaddr)
+ free(csaddr);
+ csaddr=malloc(res->ai_addrlen);
+ tmemmove(csaddr,res->ai_addr,res->ai_addrlen);
+ tmemmove(&cai,res,sizeof(cai));
+ freeaddrinfo(res);
+ }
offguard();
return newvalid;
}
@@ -132,8 +109,8 @@ void sendcomsat(folder)const char*folder;
}
strlcat(buf,COMSATxtrsep,linebuf); /* custom seperator */
strlcat(buf,p,linebuf); /* where was it delivered? */
- if((s=socket(AF_INET,SOCK_DGRAM,UDP_protocolno))>=0)
- { sendto(s,buf,strlen(buf),0,(struct sockaddr*)&csaddr,sizeof(csaddr));
+ if((s=socket(cai.ai_family,cai.ai_socktype,cai.ai_protocol))>=0)
+ { sendto(s,buf,strlen(buf),0,csaddr,cai.ai_addrlen);
rclose(s);
yell("Notified comsat:",buf);
}
diff --git a/src/network.h b/src/network.h
index 7befe94..8a711f7 100644
--- a/src/network.h
+++ b/src/network.h
@@ -1,19 +1,13 @@
/*$Id$*/
-#include <sys/socket.h> /* socket() sendto() AF_INET
+#include <sys/socket.h> /* socket() sendto() */
/* SOCK_DGRAM */
-#include <netdb.h> /* gethostbyname() getservbyname()
- /* getprotobyname() */
-#include <netinet/in.h> /* htons() struct sockaddr_in */
+#include <netdb.h> /* getaddrinfo() */
#ifndef BIFF_serviceport
#define BIFF_serviceport COMSATservice
#endif
-#ifndef h_0addr_list
-#define h_0addr_list h_addr_list[0] /* POSIX struct member */
-#endif
-
#ifndef NO_const /* since network.h is outside the autoconf const check */
#ifdef const /* loop, we need this backcheck for some systems */
#undef const

@ -0,0 +1,99 @@
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)
-#MANCOMPRESS = compress
+# MANCOMPRESS = compress
############################*#
# Things that can be made are:
@@ -55,7 +55,7 @@ MAN5DIR = $(MANDIR)/man$(MAN5SUFFIX)
LOCKINGTEST=__defaults__
-#LOCKINGTEST=/tmp . # Uncomment and add any directories you see fit.
+LOCKINGTEST=/tmp . # Uncomment and add any directories you see fit.
# If LOCKINGTEST is defined, autoconf will NOT
# prompt you to enter additional directories.
# See INSTALL for more information about the
@@ -65,7 +65,7 @@ LOCKINGTEST=__defaults__
# Only edit below this line if you *think* you know what you are doing #
########################################################################
-#LOCKINGTEST=100 # Uncomment (and change) if you think you know
+LOCKINGTEST=100 # Uncomment (and change) if you think you know
# it better than the autoconf lockingtests.
# This will cause the lockingtests to be hotwired.
# 100 to enable fcntl()
@@ -74,8 +74,8 @@ LOCKINGTEST=__defaults__
# Or them together to get the desired combination.
# Optional system libraries we search for
-SEARCHLIBS = -lm -ldir -lx -lsocket -lnet -linet -lnsl_s -lnsl_i -lnsl -lsun \
- -lgen -lsockdns -ldl
+SEARCHLIBS = -lm -ldir -lx -lsocket -lnet -linet -lnsl_s -lnsl_i -lsun \
+ -lgen -lsockdns
# -lresolv # not really needed, is it?
# Informal list of directories where we look for the libraries in SEARCHLIBS
@@ -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
-CFLAGS0 = -O #$(GCC_WARNINGS)
-LDFLAGS0= -s
+CFLAGS0 = $(RPM_OPT_FLAGS) #$(GCC_WARNINGS)
+LDFLAGS0=
# Read my libs :-)
LIBS=
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=/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
@@ -46,13 +47,13 @@
*/
#define PRESTENV {"IFS","ENV","PWD",0}
-/*#define GROUP_PER_USER /* uncomment this if each
+#define GROUP_PER_USER /* uncomment this if each
user has his or her own
group and procmail can therefore trust a $HOME/.procmailrc that
is group writable or contained in a group writable home directory
if the group involved is the user's default group. */
-/*#define LMTP /* uncomment this if you
+#define LMTP /* uncomment this if you
want to use procmail
as an LMTP (rfc2033) server, presumably for invocation by an MTA.
The file examples/local_procmail_lmtp.m4 contains info on how to
@@ -79,7 +80,7 @@
/*#define NO_fcntl_LOCK /* uncomment any of these three if you */
/*#define NO_lockf_LOCK /* definitely do not want procmail to make */
-/*#define NO_flock_LOCK /* use of those kernel-locking methods */
+#define NO_flock_LOCK /* use of those kernel-locking methods */
/* 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
@@ -98,7 +99,7 @@
mail present. procmail automatically suppresses this when it isn't
needed or under heavy load. */
-/*#define DEFsendmail "/usr/sbin/sendmail" /* uncomment and/or change if
+#define DEFsendmail "/usr/sbin/sendmail" /* uncomment and/or change if
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

@ -0,0 +1,424 @@
################################################################
# Here we go.... #
# my very own mail-mangler #
################################################################
################################################################
# Updated to have working URLs and arbitrarily version-bumped #
# to 1.2 on the grounds it matched the mutt version. Very #
# little beyond URLs and list addresses has changed. #
# 2002-03-21. #
################################################################
################################################################
# In the spirit of the net, 90% of this came from other people #
# and the remaining 10% might be from me. Most of the 90% #
# came from these sources: #
# #
# "Getting started with procmail" at #
# http://www.spambouncer.org/proctut.shtml #
# http://www.spambouncer.org/procmail.rc #
# ...by Catherine A. Hampton. #
# #
# man procmail (overview) #
# man procmailrc (writing the procmailrc) #
# man procmailex (example recipes) #
# man formail (especially for splitting digests) #
# #
# and .procmailrcs from several friends. Thanks, folks, #
# especially to the one who had more patterns which sent #
# things to /dev/null than to mailboxes, for showing me #
# what true impatience with email was like! #
################################################################
################################################################
# Procmailrc files have two parts. First you tell it where #
# everything lives. Then you tell it the recipes. #
################################################################
##########################################
# Varibiggles and where everything lives #
##########################################
################################################################
# All of these will work quite happily without changing for #
# Red Hat Linux 6.0 through to 7.2.They won't necessarily work #
# for other flavours without changing paths. See the "Getting #
# started with procmail" doc I mentioned above for the likely #
# settings for them in other environments. It has a list :) #
################################################################
################################################################
# Since I installed procmail, I have changed from using #
# sendmail to using exim. Because I can understand the config #
# file. If you use exim, you may need to tweak the config file #
# as I did. If you do, then check you are reading the docs for #
# the right version of exim! This worked for me: #
# #
# http://www.exim.org/exim-html-3.20/doc/html/spec_18.html #
# and look for procmail. It's in the example for the 'pipe #
# transport'. Just paste it into /etc/exim.conf. #
################################################################
SHELL=/bin/bash
# Have to have this one (or whatever your shell is)
# Best bet is bash or sh.
LINEBUF=4096
# Magic. Apparently it burps on long lines if you don't
# put this in.
PATH=/bin:/usr/bin:/usr/local/bin
# Where procmail looks for stuff. Works for RH 6.0, 6.1
# and most other Linux settings I've seen.
VERBOSE=off
# Change to 'on' to get _long_ procmail log.
# NB: if this is short, I don't want to see long: I get
# a one-line summary for every email procmail looks at!
MAILDIR=$HOME/Mail
# Not where your mail arrives on the machine. Where
# procmail will assume all the folders you mention in
# your recipes goes. Make sure your email-reading
# program also knows about it. (I understand $HOME/Mail
# is pretty standard, however.)
LOGFILE=$HOME/Mail/procmaillog
# I don't think this needs to be in your Mail folder,
# but my mail-reader (mutt) is great at different
# sorting, so I put the log into the mail directory :)
# Note learned through experience: if you leave this file
# too long, it will end up with tens of thousands of
# messages. Mutt is not always -that- good at sorting
# that lot quickly :)
FORMAIL=/usr/bin/formail
# 'formail'. Part of the procmail package. Correct
# the path if this isn't where it lives for you.
# ('which formail' may well tell you.)
SENDMAIL=/usr/sbin/sendmail
# As with formail, tells procmail where to look for
# sendmail. If sendmail isn't there, mail transfer
# might be handled by a different program. Ask
# your sysadmin :) If you are your own sysadmin,
# then I hope you know.
# Subsequent to writing that, I have learned that this
# file is provided (with this name) by other MTAs too.
# I now use Exim (see note above) and this file is still
# there, courtesy of exim.
############################
# The recipes - I hope... #
############################
################################################################
# Gods know how this works. But it's very useful. If you get #
# email that is sent simultaneously to you and to two other #
# lists, this will nuke two of those so that you only see it #
# once. Came from 'man procmail'. #
################################################################
# Nuke duplicate messages
:0 Wh: msgid.lock
| $FORMAIL -D 8192 msgid.cache
################################################################
# Next two are from the 'Getting started with procmail' doc. #
# I'm not too sure about how they work, but they look handy... #
################################################################
# Create a backup cache of 200 most recent messages in case of
# mistakes (yes, you can change the 200 to 20 or 400 or whatever
# you want)
:0 c
backup
:0 ic
| cd backup && rm -f dummy `ls -t msg.* | sed -e 1,200d`
# Regenerate "From" lines to make sure they are valid
:0 fhw
| formail -I "From " -a "From "
################################################################
# For testing shit - I picked a subject line that no-one would #
# send me and then tried different recipes on the results, and #
# then sent myself a whole pile of email about grobblefruit, #
# with different recipes here, to see what happened when I #
# tried different headers and so on. #
################################################################
:0:
* ^Subject: Test grobblefruit
IN.testing
################################################################
# Mailing lists #
# #
# I think this is the thing that most people who finally get #
# procmail want to know about: how to get different messages #
# from different mailing lists into different folders. This is #
# where all that MAILDIR stuff comes from. All the folders I #
# name in here are all created off whatever directory I filled #
# in as the MAILDIR at the start. And no, they don't suddenly #
# appear the instant you edit this file. They only appear when #
# procmail finds mail that should go in them. #
# #
# You can have more than one recipe sending email into the #
# same folder, btw, yes. #
# #
# General useful (?) comments: #
# The "^Resent-From: " pattern works wonderfully on #
# lists which generate it. #
# Making the folder not -quite- the list name means you #
# can save mail from it to a folder named for the list. Can #
# be handy. #
# Some lists are indeed a pig to catch everything with. #
# "TO" is different from "To" and you mustn't put a #
# a space after "TO". It catches "To: " and "Cc: ", I #
# think. Very handy. But it doesn't catch everything. If #
# it's a mailman list, don't use it and see below. #
# Mailman-run lists all seem to have a Sender: header #
# which is very useful to sort with. Just add -admin onto #
# the name of the mailing list. #
# Even more useful for mailman-run lists turns out to be #
# "X-BeenThere: listname@site.com" #
################################################################
################################################################
# I hardly use TO now, but here's an example in case. #
################################################################
:0:
* ^TOlynx-dev@sig.net
IN.lynx-dev
###########
# bugtraq #
###########
:0:
* ^Sender:.*Bugtraq List
IN.bugtraq
#########################
# gnome CVS commit list #
#########################
:0:
* X-BeenThere: cvs-commits-list@gnome.org
IN.cvs-commits
##############
# gnome-list #
##############
:0:
* ^X-BeenThere: gnome-list@gnome.org
IN.gnome-list
##################
# gnome-doc-list #
##################
:0:
* ^X-BeenThere: gnome-doc-list@gnome.org
IN.gnome-doc-list
###############################################################
# linuxchix lists: there are several mailing lists here: see #
# the end of this file for the different ways to deal with #
# heavy traffic lists with digest options. #
###############################################################
:0:
* ^X-BeenThere: grrltalk@linuxchix.org
IN.linuxchix
:0:
* ^X-BeenThere: issues@linuxchix.org
IN.linuxchix
:0:
* ^X-BeenThere: techtalk@linuxchix.org
IN.linuxchix
#################################################
# This is what I consider advanced stuff: this #
# one doesn't put the digest straight into a #
# folder. Instead it runs 'formail +1 -ds', #
# which splits the digest into its original #
# messages, and then puts the results of that #
# into the folder. #
# #
# The address is way way out of date, but I am #
# not sure of the current digest address, so I #
# have left it. #
# #
# It is commented out because I actually read #
# the main list, not the digest, these days. #
#################################################
# :0:
# * ^TOgrrltalk-digest@hub.org
# | formail +1 -ds >> IN.linuxchix
##############
# mutt-users #
##############
:0:
* ^TOmutt-users@mutt.org
IN.mutt-users
:0:
* ^Sender: owner-mutt-users@mutt.org
IN.mutt-users
#################################################
# Procmail list #
# ...be aware that everyone on this list #
# seems to have monster spam filters and thus #
# to be completely unconcerned at the huge #
# amount of spam it gets: you will either need #
# spam filters or tolerance to find the good #
# stuff. (I am not subscribed now, but that was #
# the case when I was.) #
#################################################
:0:
* ^TOprocmail@Informatik.RWTH-Aachen.DE
IN.procmaillist
#######################################################
# Red Hat announce -- very handy for security updates #
#######################################################
:0:
* ^X-BeenThere: redhat-announce-list@redhat.com
IN.rh-announce
:0:
* ^X-BeenThere: redhat-watch-list@redhat.com
IN.rh-announce
#########################
# windowmaker: wm-users #
#########################
:0:
*^From wm-user-request@windowmaker.org
IN.wm-user
################################################################
# Splitting digests #
# #
# You don't need to do this, but this seems to be another very #
# popular thing to do with procmail. If you're on mailing #
# lists using the digest option, sometimes you may want to #
# split the digests back up into the original emails. There is #
# (of course) more than one way to do this: #
# #
# (1) don't bother: just read through all the digest in one #
# big lump. Simple, easy, and great until you find someone #
# sent a 500-line postscript file or a giant jpg which got #
# included into the digest :( #
# #
# (2) use a mail-reader such as mutt, and if you suddenly want #
# to split a digest up, then whilst reading the message, hit #
# | formail +1 -ds #
# which will put the results into your main inbox. If you want #
# it in a particular folder (like the one you're reading), do #
# | formail +1 -ds >> foldername #
# #
# (3) make procmail (or formail, actually), split it up ready #
# for you to read. #
# #
# So if you want to have each digest automatically split up #
# by procmail as it arrives, and to read each message #
# individually, then here's some examples of what you can put. #
# The first two lines are exactly the same. The third one has #
# a pipe (vertical line) symbol at the start, and then the #
# command you're piping it through. #
# #
# Yes, I picked a notoriously heavy-traffic one for the first #
# example... And it -should- work, but it's not a list I read, #
# sorry! #
# #
# Instead of this: #
# :0: #
# * ^Sender: owner-linux-kernel@vger.rutgers.edu #
# IN.linux-kernel #
# ...you want this: #
# :0: #
# * ^Sender: owner-linux-kernel@vger.rutgers.edu #
# | formail +1 -ds >> IN.linux-kernel #
# #
# Da-dah! That's all. #
# #
# And for those where the list name changes and that's what #
# you're matching patterns on, instead of this: #
# :0: #
# * ^TOgrrltalk@hub.org #
# IN.linuxchix #
# ...you want this: #
# :0: #
* ^TOgrrltalk-digest@hub.org #
# | formail +1 -ds >> IN.linuxchix #
# #
# Magic :) #
################################################################
################################################################
# That's it. Any email that doesn't match any of the recipes #
# above goes into my usual place for email, which until I read #
# it is /var/spool/mail/hobbit. Procmail appears to know about #
# that without being told. #
# #
# Quick summary for adding your own or changing these: the #
# general format for putting an email into a folder and not #
# doing anything fancy to it first is: #
# #
# :0: #
# * <what you're looking for> #
# <where you're putting it> #
# #
# The ^ sign in my recipes is the sign procmail understands as #
# "start of the line", so "^From" matches the word "From" when #
# it's the start of a header. #
# #
# The "IN." at the start of folder names is not necessary: #
# that's just my naming system. Stolen, like everything else, #
# from a friend's example. It has the benefit that with my #
# mail-reader (mutt), which sorts alphabetically, all of them #
# show up first (capitals are earlier in the alphabet if #
# you're a computer...) and I can save them easily: from #
# IN.blah to blah. If you want to call the folders blah-spool, #
# or just blah, then cool. That'll work, too. #
# #
# It is possible that now you have everything in different #
# folders, you want to read with a cool program which does #
# cool things like display by thread or which understands you #
# when you tell it "These are mailing lists" and does handy #
# things as a result. If you do, and you discover Mutt, you #
# might want to look at my muttrc which is probably next to #
# this file. #
# #
# Have fun! #
# -- Telsa #
################################################################

@ -0,0 +1,350 @@
# hardened build if not overridden
%{!?_hardened_build:%global _hardened_build 1}
%if %{?_hardened_build}%{!?_hardened_build:0}
%global hardened_flags -pie -Wl,-z,relro,-z,now
%endif
Summary: Mail processing program
Name: procmail
Version: 3.24
Release: 7%{?dist}
# Dual licensed "gpl-2.0-or-later OR artistic-perl-1.0", but
# artistic-perl-1.0 is not allowed, thus dropped from the license
# tag as per: https://gitlab.com/fedora/legal/fedora-license-data/-/issues/423
License: gpl-2.0-or-later
URL: https://github.com/BuGlessRB/%{name}
Source0: %{URL}/archive/v%{version}/%{name}-%{version}.tar.gz
# Source2: http://www.linux.org.uk/~telsa/BitsAndPieces/procmailrc
# The Telsa config file doesn't seem to be available anymore, using local copy
Source2: procmailrc
Patch0: procmail-3.24-rhconfig.patch
Patch1: procmail-3.15.1-man.patch
Patch2: procmail-3.22-truncate.patch
Patch3: procmail-3.24-ipv6.patch
Patch4: procmail-3.24-coverity-scan-fixes.patch
# https://github.com/BuGlessRB/procmail/pull/7
Patch5: procmail-3.24-gcc-14-fix.patch
BuildRequires: make
BuildRequires: gcc
%description
Procmail 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.
%prep
%autosetup -p1
find examples -type f | xargs chmod 644
%build
make RPM_OPT_FLAGS="$(getconf LFS_CFLAGS)" autoconf.h
make RPM_OPT_FLAGS="$RPM_OPT_FLAGS %{?hardened_flags} -Wno-comments $(getconf LFS_CFLAGS)"
%install
rm -rf ${RPM_BUILD_ROOT}
mkdir -p ${RPM_BUILD_ROOT}%{_bindir}
mkdir -p ${RPM_BUILD_ROOT}%{_mandir}/man{1,5}
make \
BASENAME=${RPM_BUILD_ROOT}%{_prefix} MANDIR=${RPM_BUILD_ROOT}%{_mandir} \
install
cp -p %{SOURCE2} telsas_procmailrc
%files
%doc Artistic COPYING FAQ FEATURES HISTORY README KNOWN_BUGS examples telsas_procmailrc
%{_bindir}/formail
%attr(2755,root,mail) %{_bindir}/lockfile
%{_bindir}/mailstat
%attr(0755,root,mail) %{_bindir}/procmail
%{_mandir}/man[15]/*
%changelog
* Tue Nov 26 2024 MSVSphere Packaging Team <packager@msvsphere-os.ru> - 3.24-7
- Rebuilt for MSVSphere 10
* Mon Jun 24 2024 Troy Dawson <tdawson@redhat.com> - 3.24-7
- Bump release for June 2024 mass rebuild
* Wed Jan 31 2024 Jaroslav Škarvada <jskarvad@redhat.com> - 3.24-6
- Fixed FTBFS with gcc-14
Resolves: rhbz#2261530
* Fri Jan 26 2024 Fedora Release Engineering <releng@fedoraproject.org> - 3.24-5
- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild
* Sun Jan 21 2024 Fedora Release Engineering <releng@fedoraproject.org> - 3.24-4
- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild
* Tue Dec 12 2023 Jaroslav Škarvada <jskarvad@redhat.com> - 3.24-3
- Converted license tag to SPDX
* Fri Jul 21 2023 Fedora Release Engineering <releng@fedoraproject.org> - 3.24-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild
* Thu Jan 12 2023 Jaroslav Škarvada <jskarvad@redhat.com> - 3.24-1
- Switched to the github fork
- New version
Resolves: rhbz#2143702
* Fri Jul 22 2022 Fedora Release Engineering <releng@fedoraproject.org> - 3.22-57
- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild
* Fri Jan 21 2022 Fedora Release Engineering <releng@fedoraproject.org> - 3.22-56
- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild
* Fri Jul 23 2021 Fedora Release Engineering <releng@fedoraproject.org> - 3.22-55
- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild
* Wed Jan 27 2021 Fedora Release Engineering <releng@fedoraproject.org> - 3.22-54
- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild
* Tue Jul 28 2020 Fedora Release Engineering <releng@fedoraproject.org> - 3.22-53
- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild
* Thu Jan 30 2020 Fedora Release Engineering <releng@fedoraproject.org> - 3.22-52
- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild
* Fri Jul 26 2019 Fedora Release Engineering <releng@fedoraproject.org> - 3.22-51
- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild
* Sat Feb 02 2019 Fedora Release Engineering <releng@fedoraproject.org> - 3.22-50
- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild
* Thu Dec 6 2018 Jaroslav Škarvada <jskarvad@redhat.com> - 3.22-49
- Fixed issues found by Coverity Scan
* Fri Jul 20 2018 Jaroslav Škarvada <jskarvad@redhat.com> - 3.22-48
- Fixed FTBFS by adding gcc requirement
Resolves: rhbz#1606850
* Fri Jul 13 2018 Fedora Release Engineering <releng@fedoraproject.org> - 3.22-47
- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild
* Fri Feb 09 2018 Fedora Release Engineering <releng@fedoraproject.org> - 3.22-46
- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild
* Tue Nov 21 2017 Jaroslav Škarvada <jskarvad@redhat.com> - 3.22-45
- Renamed loadbuf-fix patch to CVE-2017-16844, because it got CVE number
* Tue Oct 10 2017 Jaroslav Škarvada <jskarvad@redhat.com> - 3.22-44
- Fixed possible buffer overflow in loadbuf function
Resolves: rhbz#1500071
* Thu Aug 03 2017 Fedora Release Engineering <releng@fedoraproject.org> - 3.22-43
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild
* Thu Jul 27 2017 Fedora Release Engineering <releng@fedoraproject.org> - 3.22-42
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild
* Wed Mar 22 2017 Jaroslav Škarvada <jskarvad@redhat.com> - 3.22-41
- Fixed some more conditional jumps that depended on uninitialized values
* Sat Feb 11 2017 Fedora Release Engineering <releng@fedoraproject.org> - 3.22-40
- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild
* Thu Feb 04 2016 Fedora Release Engineering <releng@fedoraproject.org> - 3.22-39
- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild
* Thu Jun 18 2015 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 3.22-38
- Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild
* Thu Mar 19 2015 Jaroslav Škarvada <jskarvad@redhat.com> - 3.22-37
- Fixed more buffer overflows and memory corruptions (by crash-fix patch)
* Thu Sep 4 2014 Jaroslav Škarvada <jskarvad@redhat.com> - 3.22-36
- Fixed buffer overflow in formail
Resolves: CVE-2014-3618
* Sun Aug 17 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 3.22-35
- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild
* Sat Jun 07 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 3.22-34
- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild
* Sun Aug 04 2013 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 3.22-33
- Rebuilt for https://fedoraproject.org/wiki/Fedora_20_Mass_Rebuild
* Mon Feb 4 2013 Jaroslav Škarvada <jskarvad@redhat.com> - 3.22-32
- Updated sources URLs
* Tue Sep 4 2012 Jaroslav Škarvada <jskarvad@redhat.com> - 3.22-31
- Hardened build with PIE and full RELRO
Resolves: rhbz#853186
* Sat Jul 21 2012 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 3.22-30
- Rebuilt for https://fedoraproject.org/wiki/Fedora_18_Mass_Rebuild
* Mon Jan 16 2012 Jaroslav Škarvada <jskarvad@redhat.com> - 3.22-29
- Rebuilt without NO_NFS_ATIME_HACK
Resolves: rhbz#666383
* Sat Jan 14 2012 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 3.22-28
- Rebuilt for https://fedoraproject.org/wiki/Fedora_17_Mass_Rebuild
* Fri Nov 25 2011 Jaroslav Škarvada <jskarvad@redhat.com> - 3.22-27
- Defuzzification of ipv6 patch
* Wed Feb 09 2011 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 3.22-26
- Rebuilt for https://fedoraproject.org/wiki/Fedora_15_Mass_Rebuild
* Sun Jul 26 2009 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 3.22-25
- Rebuilt for https://fedoraproject.org/wiki/Fedora_12_Mass_Rebuild
* Tue Jun 30 2009 Miroslav Lichvar <mlichvar@redhat.com> 3.22-24
- rename getline to avoid conflict with glibc (#505977)
- add -Wno-comments to CFLAGS
- remove package name from summary
* Thu Feb 26 2009 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 3.22-23
- Rebuilt for https://fedoraproject.org/wiki/Fedora_11_Mass_Rebuild
* Mon Aug 04 2008 Miroslav Lichvar <mlichvar@redhat.com> 3.22-22
- fix building on sh (CHIKAMA Masaki) (#447658)
* Tue Feb 19 2008 Fedora Release Engineering <rel-eng@fedoraproject.org> - 3.22-21
- Autorebuild for GCC 4.3
* Wed Aug 22 2007 Miroslav Lichvar <mlichvar@redhat.com> 3.22-20
- update license tag
* Tue Mar 27 2007 Miroslav Lichvar <mlichvar@redhat.com> 3.22-19
- fix description (#234098)
- spec cleanup
* Fri Oct 27 2006 Miroslav Lichvar <mlichvar@redhat.com> 3.22-18
- add IPv6 support to comsat notification (#198403)
- package man page for mailstat
- change mail spool directory to /var/spool/mail
* Wed Jul 12 2006 Jesse Keating <jkeating@redhat.com> - 3.22-17.1
- rebuild
* Thu Mar 30 2006 Peter Vrabec <pvrabec@redhat.com> 3.22-17
- fix truncation of mailbox when running into a disk quota or a
full partition. Patch from Solar Designer.
* Fri Feb 10 2006 Jesse Keating <jkeating@redhat.com> - 3.22-16.2.1
- bump again for double-long bug on ppc(64)
* Tue Feb 07 2006 Jesse Keating <jkeating@redhat.com> - 3.22-16.2
- rebuilt for new gcc4.1 snapshot and glibc changes
* Fri Dec 09 2005 Jesse Keating <jkeating@redhat.com>
- rebuilt
* Fri Mar 18 2005 Peter Vrabec <pvrabec@redhat.com> 3.22-16
- rebuilt
* Mon Nov 8 2004 Martin Stransky <stransky@redhat.com> 3.22-15
- add largefiles patch to support 64-bit file I/O
* Tue Jun 15 2004 Elliot Lee <sopwith@redhat.com>
- rebuilt
* Fri Feb 13 2004 Elliot Lee <sopwith@redhat.com>
- rebuilt
* Tue Jan 6 2004 Jens Petersen <petersen@redhat.com> - 3.22-12
- apply procmail_3.22-8.debian.patch from Debian (fixes #79691)
* Mon Sep 22 2003 Florian La Roche <Florian.LaRoche@redhat.de>
- do not link against -ldl and -lnsl
* Wed Jun 04 2003 Elliot Lee <sopwith@redhat.com>
- rebuilt
* Wed Jan 22 2003 Tim Powers <timp@redhat.com>
- rebuilt
* Tue Dec 17 2002 Jens Petersen <petersen@redhat.com>
- convert changelog to utf8
* Wed Dec 11 2002 Tim Powers <timp@redhat.com> 3.22-8
- rebuild on all arches
* Fri Jun 21 2002 Tim Powers <timp@redhat.com>
- automated rebuild
* Thu May 23 2002 Tim Powers <timp@redhat.com>
- automated rebuild
* Mon Mar 25 2002 Trond Eivind Glomsrød <teg@redhat.com> 3.22-5
- Updated Telss's procmailrc file (#61872)
* Thu Mar 14 2002 Trond Eivind Glomsrød <teg@redhat.com> 3.22-4
- Add Telsa Gwynne's procmailrc as a doc file - it's
excellently commented, and is a great example
* Wed Feb 27 2002 Trond Eivind Glomsrød <teg@redhat.com> 3.22-3
- Rebuild
* Wed Jan 09 2002 Tim Powers <timp@redhat.com>
- automated rebuild
* Wed Sep 12 2001 Trond Eivind Glomsrød <teg@redhat.com> 3.22-1
- 3.22
* Sat Jun 30 2001 Trond Eivind Glomsrød <teg@redhat.com>
- 3.21
* Fri Jun 29 2001 Trond Eivind Glomsrød <teg@redhat.com>
- 3.20
- Enable LMTP
* Thu Apr 12 2001 Trond Eivind Glomsrød <teg@redhat.com>
- Change to "License: GPL or artistic" from "Copyright: distributable"
- Fix man page (#35825)
- 3.15.1
- redo config patch
* Sat Jan 6 2001 Jeff Johnson <jbj@redhat.com>
- lose setuid/setgid (root,mail) bits (#23257).
* Fri Aug 11 2000 Jeff Johnson <jbj@redhat.com>
- add space in delivery rules with '!' (#15947).
* Wed Jul 12 2000 Prospector <bugzilla@redhat.com>
- automatic rebuild
* Thu Jun 15 2000 Jeff Johnson <jbj@redhat.com>
- FHS packaging.
* Mon Feb 7 2000 Jeff Johnson <jbj@redhat.com>
- compress man pages.
* Fri Jan 14 2000 Jeff Johnson <jbj@redhat.com>
- update to 3.14.
* Mon Aug 16 1999 Bill Nottingham <notting@redhat.com>
- fix doc perms.
* Wed Apr 21 1999 Cristian Gafton <gafton@redhat.com>
- turn on GROUP_PER_USER
- add some docs to the package
* Mon Apr 05 1999 Cristian Gafton <gafton@redhat.com>
- version 3.13
* Fri Mar 26 1999 Cristian Gafton <gafton@redhat.com>
- fixed Group line
* Sun Mar 21 1999 Cristian Gafton <gafton@redhat.com>
- auto rebuild in the new build environment (release 16)
* Sun Aug 16 1998 Jeff Johnson <jbj@redhat.com>
- build root
* Mon Apr 27 1998 Prospector System <bugs@redhat.com>
- translations modified for de, fr, tr
* Thu Jun 19 1997 Erik Troan <ewt@redhat.com>
- built against glibc
Loading…
Cancel
Save