From 8c4bc349094674900d4f525f4dcdbfd35963e6d1 Mon Sep 17 00:00:00 2001 From: Erich Eckner Date: Sun, 31 Mar 2019 13:38:12 +0200 Subject: procmail new --- manualPorts/procmail/.footprint | 16 +++++++ manualPorts/procmail/.md5sum | 4 ++ manualPorts/procmail/.signature | 8 ++++ manualPorts/procmail/Pkgfile | 23 +++++++++ .../procmail/fix_memory_allocation_bug.diff | 11 +++++ manualPorts/procmail/formisc.c.patch | 14 ++++++ manualPorts/procmail/procmail-3.22-getline.patch | 56 ++++++++++++++++++++++ 7 files changed, 132 insertions(+) create mode 100644 manualPorts/procmail/.footprint create mode 100644 manualPorts/procmail/.md5sum create mode 100644 manualPorts/procmail/.signature create mode 100644 manualPorts/procmail/Pkgfile create mode 100644 manualPorts/procmail/fix_memory_allocation_bug.diff create mode 100644 manualPorts/procmail/formisc.c.patch create mode 100644 manualPorts/procmail/procmail-3.22-getline.patch diff --git a/manualPorts/procmail/.footprint b/manualPorts/procmail/.footprint new file mode 100644 index 0000000..1a6950c --- /dev/null +++ b/manualPorts/procmail/.footprint @@ -0,0 +1,16 @@ +drwxr-xr-x root/root usr/ +drwxr-xr-x root/root usr/bin/ +-rwxr-xr-x root/root usr/bin/formail +-rwxr-xr-x root/root usr/bin/lockfile +-rwxr-xr-x root/root usr/bin/mailstat +-rwxr-xr-x root/root usr/bin/procmail +drwxr-xr-x root/root usr/share/ +drwxr-xr-x root/root usr/share/man/ +drwxr-xr-x root/root usr/share/man/man1/ +-rw-r--r-- root/root usr/share/man/man1/formail.1.gz +-rw-r--r-- root/root usr/share/man/man1/lockfile.1.gz +-rw-r--r-- root/root usr/share/man/man1/procmail.1.gz +drwxr-xr-x root/root usr/share/man/man5/ +-rw-r--r-- root/root usr/share/man/man5/procmailex.5.gz +-rw-r--r-- root/root usr/share/man/man5/procmailrc.5.gz +-rw-r--r-- root/root usr/share/man/man5/procmailsc.5.gz diff --git a/manualPorts/procmail/.md5sum b/manualPorts/procmail/.md5sum new file mode 100644 index 0000000..dfbd66c --- /dev/null +++ b/manualPorts/procmail/.md5sum @@ -0,0 +1,4 @@ +08ab919cc740421a054f28ce7a3eb7de fix_memory_allocation_bug.diff +6ff3fbbf6b31fe869a1312c3566eb52c formisc.c.patch +cf8e5d4854050ab0c836e07406a3dfa9 procmail-3.22-getline.patch +1678ea99b973eb77eda4ecf6acae53f1 procmail-3.22.tar.gz diff --git a/manualPorts/procmail/.signature b/manualPorts/procmail/.signature new file mode 100644 index 0000000..b4c01a0 --- /dev/null +++ b/manualPorts/procmail/.signature @@ -0,0 +1,8 @@ +untrusted comment: verify with /etc/ports/deepthought.pub +RWQxCptPusLGGhZvn0eZRNrP+aouG5JpfTklAB+Xx6Lj9tDQtNvwkebmWc4UlsWHFuR1JcHIfi6sKzbtIlcwQZZ1pYZs56tfVA4= +SHA256 (Pkgfile) = 125958ec9337bf0f26401bcf3662d0e82251a07f2ece5e942ba7b421c825da97 +SHA256 (.footprint) = 163bf75bacc7c2e95de87c980114815255cc8e6a0216bb946fe6474317eb460d +SHA256 (procmail-3.22.tar.gz) = 087c75b34dd33d8b9df5afe9e42801c9395f4bf373a784d9bc97153b0062e117 +SHA256 (procmail-3.22-getline.patch) = aaa5ce562e5ef65f56a0225eedda3fcc7ab2938da6097ed4d9b11abf861929de +SHA256 (formisc.c.patch) = b7d983e5eba1d1869871a6ebb97404c511d0705673b0e59646b5c074c6ba34d8 +SHA256 (fix_memory_allocation_bug.diff) = 0f0e68b4eeac1dd7d9b167ff68d29cc8608e5247f4e59cf7098b65c9f1fb66e3 diff --git a/manualPorts/procmail/Pkgfile b/manualPorts/procmail/Pkgfile new file mode 100644 index 0000000..98165a7 --- /dev/null +++ b/manualPorts/procmail/Pkgfile @@ -0,0 +1,23 @@ +# Description: Highly configurable auto mail processing +# URL: http://www.procmail.org +# Maintainer: Erich Eckner, crux at eckner dot net + +name=procmail +version=3.22 +release=1 +source=("http://ftp.osuosl.org/pub/blfs/conglomeration/procmail/${name}-${version}.tar.gz" +procmail-3.22-getline.patch formisc.c.patch fix_memory_allocation_bug.diff) + +build() { + +ls -lA + cd ${name}-${version} + + patch -p1 -i "${SRC}/procmail-3.22-getline.patch" + patch -p1 -i "${SRC}/formisc.c.patch" + patch -p1 -i "${SRC}/fix_memory_allocation_bug.diff" + + yes n | make CFLAGS0="${CFLAGS} ${LDFLAGS}" LOCKINGTEST="/tmp ." + make BASENAME=${PKG}/usr MANDIR=${PKG}/usr/share/man install + +} diff --git a/manualPorts/procmail/fix_memory_allocation_bug.diff b/manualPorts/procmail/fix_memory_allocation_bug.diff new file mode 100644 index 0000000..ba95429 --- /dev/null +++ b/manualPorts/procmail/fix_memory_allocation_bug.diff @@ -0,0 +1,11 @@ +--- a/src/pipes.c.old 2002-12-02 23:45:15.000000000 +0100 ++++ b/src/pipes.c 2002-12-02 23:45:24.000000000 +0100 +@@ -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); diff --git a/manualPorts/procmail/formisc.c.patch b/manualPorts/procmail/formisc.c.patch new file mode 100644 index 0000000..59102b3 --- /dev/null +++ b/manualPorts/procmail/formisc.c.patch @@ -0,0 +1,14 @@ +diff --git a/src/formisc.c b/src/formisc.c +index d91b227..6c7594b 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/manualPorts/procmail/procmail-3.22-getline.patch b/manualPorts/procmail/procmail-3.22-getline.patch new file mode 100644 index 0000000..fb9a4ec --- /dev/null +++ b/manualPorts/procmail/procmail-3.22-getline.patch @@ -0,0 +1,56 @@ +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)); -- cgit v1.2.3-70-g09d2