pkgsrc-Changes archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

CVS commit: pkgsrc/mail/procmail



Module Name:    pkgsrc
Committed By:   vins
Date:           Wed Jul 31 22:31:50 UTC 2024

Modified Files:
        pkgsrc/mail/procmail: Makefile PLIST distinfo
        pkgsrc/mail/procmail/patches: patch-ac patch-ad
Added Files:
        pkgsrc/mail/procmail/patches: patch-src_autoconf patch-src_formisc.c
            patch-src_mailfold.c
Removed Files:
        pkgsrc/mail/procmail/patches: patch-af patch-ba patch-bb patch-bc
            patch-bd

Log Message:
mail/procmail: long due update to v3.24

Fixed all bugs collected by Debian and others
during the past 21 years.  See the git commit history
for detailed descriptions.


To generate a diff of this commit:
cvs rdiff -u -r1.56 -r1.57 pkgsrc/mail/procmail/Makefile
cvs rdiff -u -r1.3 -r1.4 pkgsrc/mail/procmail/PLIST
cvs rdiff -u -r1.20 -r1.21 pkgsrc/mail/procmail/distinfo
cvs rdiff -u -r1.4 -r1.5 pkgsrc/mail/procmail/patches/patch-ac \
    pkgsrc/mail/procmail/patches/patch-ad
cvs rdiff -u -r1.1 -r0 pkgsrc/mail/procmail/patches/patch-af
cvs rdiff -u -r1.3 -r0 pkgsrc/mail/procmail/patches/patch-ba \
    pkgsrc/mail/procmail/patches/patch-bb \
    pkgsrc/mail/procmail/patches/patch-bc
cvs rdiff -u -r1.4 -r0 pkgsrc/mail/procmail/patches/patch-bd
cvs rdiff -u -r0 -r1.1 pkgsrc/mail/procmail/patches/patch-src_autoconf \
    pkgsrc/mail/procmail/patches/patch-src_formisc.c \
    pkgsrc/mail/procmail/patches/patch-src_mailfold.c

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: pkgsrc/mail/procmail/Makefile
diff -u pkgsrc/mail/procmail/Makefile:1.56 pkgsrc/mail/procmail/Makefile:1.57
--- pkgsrc/mail/procmail/Makefile:1.56  Wed Mar  1 13:37:26 2023
+++ pkgsrc/mail/procmail/Makefile       Wed Jul 31 22:31:50 2024
@@ -1,10 +1,9 @@
-# $NetBSD: Makefile,v 1.56 2023/03/01 13:37:26 gdt Exp $
+# $NetBSD: Makefile,v 1.57 2024/07/31 22:31:50 vins Exp $
 
-DISTNAME=      procmail-3.22
-PKGREVISION=   5
+DISTNAME=      procmail-3.24
 CATEGORIES=    mail
-#MASTER_SITES= ftp://ftp.procmail.org/pub/procmail/
-# 3.24 is at https://github.com/BuGlessRB/procmail/archive/refs/tags/v3.24.tar.gz
+MASTER_SITES=  ${MASTER_SITE_GITHUB:=BuGlessRB/}
+GITHUB_TAG=    v${PKGVERSION_NOREV}
 
 MAINTAINER=    kim%NetBSD.org@localhost
 HOMEPAGE=      https://github.com/BuGlessRB/procmail
@@ -13,6 +12,10 @@ LICENSE=     artistic OR gnu-gpl-v2
 
 MAKE_JOBS_SAFE=        no
 
+### Inlining functions (implied by -O3 or higher) cause the strstr() test
+### to enter an infinite loop so disable it.  This fixes PR pkg/30999.
+CFLAGS+=       -fno-inline-functions
+
 MAKE_ENV+=             SHELL=${SH:Q} CHMOD=${CHMOD:Q}
 INSTALL_TARGET=                install-suid install.man
 UNLIMIT_RESOURCES=     datasize
@@ -23,14 +26,14 @@ SPECIAL_PERMS+=     bin/procmail ${SETUID_RO
 
 BUILD_DEFS+=   PROCMAIL_MAILSPOOLHOME PROCMAIL_TRUSTED_IDS
 
-PROCMAIL_TRUSTED_IDS?=\
-"root","daemon","uucp","mail","x400","network","list","slist","lists","news",0
+EGDIR=         ${PREFIX}/share/examples/${PKGBASE}
+DOCDIR=                ${PREFIX}/share/doc/${PKGBASE}
 
-INSTALLATION_DIRS=     bin ${PKGMANDIR}/man1 ${PKGMANDIR}/man5
+PROCMAIL_TRUSTED_IDS?= \
+       "root","daemon","uucp","mail","x400","network","list","slist","lists","news",0
 
-### Inlining functions (implied by -O3 or higher) cause the strstr() test
-### to enter an infinite loop so disable it.  This fixes PR pkg/30999.
-CFLAGS+=       -fno-inline-functions
+INSTALLATION_DIRS=     bin ${PKGMANDIR}/man1 ${PKGMANDIR}/man5
+INSTALLATION_DIRS+=    share/examples/${PKGBASE} share/doc/${PKGBASE}
 
 pre-configure:
        ${ECHO} "#define TRUSTED_IDS {${PROCMAIL_TRUSTED_IDS:Q}}"       \
@@ -46,17 +49,17 @@ pre-configure:
        >> ${WRKSRC}/src/authenticate.h
 .endif
 
-.if !empty(USE_CROSS_COMPILE:M[yY][eE][sS])
+.if ${USE_CROSS_COMPILE:U:tl} == yes
 MAKE_FLAGS+=   CC_FOR_BUILD=${NATIVE_CC:Q}
 
-.if exists(${FILESDIR}/autoconf-${OPSYS}.h.in)
+.  if exists(${FILESDIR}/autoconf-${OPSYS}.h.in)
 post-configure:
        cd ${WRKSRC} && ${MAKE} init
        ${SED} -e s,@PREFIX@,${PREFIX:U},g                              \
                -e s,@PKGVERSION@,${PKGVERSION:U},g                     \
            < ${FILESDIR}/autoconf-${OPSYS}.h.in                        \
            > ${WRKSRC}/autoconf.h
-.endif
+.  endif
 .endif
 
 .if ${OPSYS} == "SunOS"
@@ -74,4 +77,12 @@ do-install:
        done
 .endif
 
+PKG_DOCS=      FAQ FEATURES HISTORY KNOWN_BUGS README
+PKG_EXAMPLES=  1procmailrc 1rmail 2procmailrc 2rmail 3procmailrc 3rmail \
+               advanced dirname forward local_procmail_lmtp.m4 mailstat
+
+post-install:
+       ${INSTALL_DATA} ${PKG_DOCS:S|^|${WRKSRC}/|} ${DESTDIR}${DOCDIR}
+       ${INSTALL_DATA} ${PKG_EXAMPLES:S|^|${WRKSRC}/examples/|} ${DESTDIR}${EGDIR}
+
 .include "../../mk/bsd.pkg.mk"

Index: pkgsrc/mail/procmail/PLIST
diff -u pkgsrc/mail/procmail/PLIST:1.3 pkgsrc/mail/procmail/PLIST:1.4
--- pkgsrc/mail/procmail/PLIST:1.3      Mon Jan  1 22:29:41 2018
+++ pkgsrc/mail/procmail/PLIST  Wed Jul 31 22:31:50 2024
@@ -1,11 +1,28 @@
-@comment $NetBSD: PLIST,v 1.3 2018/01/01 22:29:41 rillig Exp $
+@comment $NetBSD: PLIST,v 1.4 2024/07/31 22:31:50 vins Exp $
 bin/formail
 bin/lockfile
 bin/mailstat
 bin/procmail
 man/man1/formail.1
 man/man1/lockfile.1
+man/man1/mailstat.1
 man/man1/procmail.1
 man/man5/procmailex.5
 man/man5/procmailrc.5
 man/man5/procmailsc.5
+share/doc/procmail/FAQ
+share/doc/procmail/FEATURES
+share/doc/procmail/HISTORY
+share/doc/procmail/KNOWN_BUGS
+share/doc/procmail/README
+share/examples/procmail/1procmailrc
+share/examples/procmail/1rmail
+share/examples/procmail/2procmailrc
+share/examples/procmail/2rmail
+share/examples/procmail/3procmailrc
+share/examples/procmail/3rmail
+share/examples/procmail/advanced
+share/examples/procmail/dirname
+share/examples/procmail/forward
+share/examples/procmail/local_procmail_lmtp.m4
+share/examples/procmail/mailstat

Index: pkgsrc/mail/procmail/distinfo
diff -u pkgsrc/mail/procmail/distinfo:1.20 pkgsrc/mail/procmail/distinfo:1.21
--- pkgsrc/mail/procmail/distinfo:1.20  Tue Oct 26 10:54:22 2021
+++ pkgsrc/mail/procmail/distinfo       Wed Jul 31 22:31:50 2024
@@ -1,18 +1,16 @@
-$NetBSD: distinfo,v 1.20 2021/10/26 10:54:22 nia Exp $
+$NetBSD: distinfo,v 1.21 2024/07/31 22:31:50 vins Exp $
 
-BLAKE2s (procmail-3.22.tar.gz) = 33be19e42bd561fcd35520ca56f3ccd4b4cf7a651563f0d847ed5bbc4bddb696
-SHA512 (procmail-3.22.tar.gz) = 3d0658329a55957a8d5741e03b0853b030c4524acef30641663213aa9eefc8264f8cc2b68a00a89e5f9f0f7c916c41a42e1b6c8df562c545ba97d8ab9049a936
-Size (procmail-3.22.tar.gz) = 226817 bytes
+BLAKE2s (procmail-3.24.tar.gz) = 767825dbe6f0f2d6d089930e630e0db402dc31ab00a855a895d1f39422df8f9c
+SHA512 (procmail-3.24.tar.gz) = ce3763205d7e34c8a096c411487de296ecfb190ba817ad07926d44811222e689faedb97a3d4e85989db70e5a2298b26fff70c9d0cb0324a447ddc8988d7fe8ea
+Size (procmail-3.24.tar.gz) = 299704 bytes
+SHA1 (patch-Makefile) = d37a6b8d7769bd98efeca3abb7d52b12873971c0
 SHA1 (patch-aa) = 6e29885f53d24662c5c69ac906ccc36a26665be2
 SHA1 (patch-ab) = 5233a6033198dc2baec135a6fba987e7e2b89ff2
-SHA1 (patch-ac) = fe2350e704546c2262d546bb615175dd0591ba8b
-SHA1 (patch-ad) = b35d6d508a15b8e70734ac7ccd58c19db31717ab
+SHA1 (patch-ac) = 733cd77ec249f9173fd92d04e7003b547450a4ed
+SHA1 (patch-ad) = 93b091d6e49ed16ef8024767e210896905b74aa6
 SHA1 (patch-ae) = b5ac027b337c8d9cf9c6096a48ef534315e18250
-SHA1 (patch-af) = 889f937f50561308c644d5a4bd836eccabbb2938
 SHA1 (patch-ag) = 8f2ae1f2e7bdc3c2295148c33183176423802fee
-SHA1 (patch-ba) = 2ebbd43d2773b147ee6410e37ab3696aeda3c07c
-SHA1 (patch-bb) = 5b273bd60d24168794189bb844e39e94bd688ea8
-SHA1 (patch-bc) = 7344d3c2fce1bcd3276d8e5014bf9537c6dece5c
-SHA1 (patch-bd) = 27a7711e400f934bc82937eae68681e0b5c30c4a
-SHA1 (patch-Makefile) = d37a6b8d7769bd98efeca3abb7d52b12873971c0
 SHA1 (patch-src_Makefile.0) = 9136b5f011456cba313d1a4884144e881974261d
+SHA1 (patch-src_autoconf) = 1bb90bb2280651cf55d00ee32565e14d52067fbe
+SHA1 (patch-src_formisc.c) = ce14e9587f47f70741c2ce44261fd4146361f621
+SHA1 (patch-src_mailfold.c) = 52b800662885f3da094c545961d2b054224bcc91

Index: pkgsrc/mail/procmail/patches/patch-ac
diff -u pkgsrc/mail/procmail/patches/patch-ac:1.4 pkgsrc/mail/procmail/patches/patch-ac:1.5
--- pkgsrc/mail/procmail/patches/patch-ac:1.4   Sat Aug 26 14:26:58 2000
+++ pkgsrc/mail/procmail/patches/patch-ac       Wed Jul 31 22:31:50 2024
@@ -1,8 +1,26 @@
-$NetBSD: patch-ac,v 1.4 2000/08/26 14:26:58 wiz Exp $
+$NetBSD: patch-ac,v 1.5 2024/07/31 22:31:50 vins Exp $
 
---- initmake.orig      Sat Jan 29 07:52:13 2000
+--- initmake.orig      2022-03-02 09:52:56.000000000 +0000
 +++ initmake
-@@ -433,8 +433,8 @@
+@@ -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
+@@ -433,8 +433,8 @@ test -z "$newln" || echo "LN       = $LN"                  >>
  test -z "$MAKE" && echo "MAKE = make"                 >>_Makefile
  test a"$cc" != a"$CC" && echo "CC     = $cc"          >>_Makefile
  
Index: pkgsrc/mail/procmail/patches/patch-ad
diff -u pkgsrc/mail/procmail/patches/patch-ad:1.4 pkgsrc/mail/procmail/patches/patch-ad:1.5
--- pkgsrc/mail/procmail/patches/patch-ad:1.4   Wed Jan 27 18:14:05 2010
+++ pkgsrc/mail/procmail/patches/patch-ad       Wed Jul 31 22:31:50 2024
@@ -1,6 +1,6 @@
-$NetBSD: patch-ad,v 1.4 2010/01/27 18:14:05 joerg Exp $
+$NetBSD: patch-ad,v 1.5 2024/07/31 22:31:50 vins Exp $
 
---- src/recommend.c.orig       1999-10-20 04:47:45.000000000 +0000
+--- src/recommend.c.orig       2022-03-02 09:52:56.000000000 +0000
 +++ src/recommend.c
 @@ -19,7 +19,6 @@ int main(argc,argv)const int argc;const 
     { fprintf(stderr,"Please run this program via 'make recommend'\n");
@@ -30,7 +30,7 @@ $NetBSD: patch-ad,v 1.4 2010/01/27 18:14
 +     printf("chmod %lo ${DESTDIR}%s\n",(unsigned long)(sgid|PERMIS),argv[2]);
    else if(chmdir==1)
       goto nogchmod;
-   if(chmdir)
+   if (!SANEvarmail && chmdir)
 -     printf("chmod %c+w %s/.\n",chmdir==1?'g':'a',mailspooldir);
 +     printf("chmod %c+w ${DESTDIR}%s/.\n",chmdir==1?'g':'a',mailspooldir);
  nogchmod:

Added files:

Index: pkgsrc/mail/procmail/patches/patch-src_autoconf
diff -u /dev/null pkgsrc/mail/procmail/patches/patch-src_autoconf:1.1
--- /dev/null   Wed Jul 31 22:31:50 2024
+++ pkgsrc/mail/procmail/patches/patch-src_autoconf     Wed Jul 31 22:31:50 2024
@@ -0,0 +1,94 @@
+$NetBSD: patch-src_autoconf,v 1.1 2024/07/31 22:31:50 vins Exp $
+
+Fix build with gcc-14
+
+--- src/autoconf.orig  2022-03-02 09:52:56.000000000 +0000
++++ src/autoconf
+@@ -416,6 +416,12 @@ cat >_autotst.c <<HERE
+ int dolock,child[NR_of_forks],timeout,fdcollect;
+ char dirlocktest[]="_locktest";
+ 
++#include <stdlib.h>
++int killchildren();
++int fdlock(int fd);
++int sfdlock(int fd);
++int fdunlock();
++
+ void stimeout()
+ { timeout=1;close(fdcollect);killchildren();
+ }
+@@ -437,7 +443,7 @@ unsigned sfork()
+   return pid;
+ }
+ 
+-int main(argc,argv)char*argv[];
++int main(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);
+@@ -587,13 +593,13 @@ int killchildren()
+   return 0;
+ }
+ 
+-int sfdlock(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);
+ }
+ 
+-static oldfdlock;
++static int oldfdlock;
+ #ifdef F_SETLKW
+ static struct flock flck;             /* why can't it be a local variable? */
+ #endif
+@@ -601,7 +607,7 @@ static struct flock flck;          /* why can't 
+ static off_t oldlockoffset;
+ #endif
+ 
+-int fdlock(fd)
++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;
+@@ -997,11 +1003,11 @@ int main(){int i;i=1;
+  i+=WIFEXITED(i);
+  i+=WIFSTOPPED(i);
+  i+=WEXITSTATUS(i);
+- i+=WSIGTERM(i);
++ i+=WTERMSIG(i);
+  return i;}
+ HERE
+ 
+-echo 'Testing for WIFEXITED(), WIFSTOPPED(), WEXITSTATUS() & WSIGTERM()'
++echo 'Testing for WIFEXITED(), WIFSTOPPED(), WEXITSTATUS() & WTERMSIG()'
+ if $MAKE _autotst.$O >_autotst.rrr 2>&1
+ then
+    $FGREP -v include/ <_autotst.rrr >_autotst.$O
+@@ -1033,6 +1039,8 @@ cat >_autotst.c <<HERE
+ #ifndef NO_COMSAT
+ #include "network.h"
+ #endif
++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 +1067,7 @@ echo 'Testing for memmove, strchr, strpb
+ 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
+@@ -1201,7 +1209,7 @@ unsigned long dobench(strstr,iter,haysta
+   return (unsigned long)clock()-to;
+ }
+ #endif
+-int main(argc,argv)int argc;const char*argv[];
++int main(int argc,const char*argv[])
+ { if(argc==1)
+    { char*haystack;
+ #ifdef BENCHSIZE
Index: pkgsrc/mail/procmail/patches/patch-src_formisc.c
diff -u /dev/null pkgsrc/mail/procmail/patches/patch-src_formisc.c:1.1
--- /dev/null   Wed Jul 31 22:31:50 2024
+++ pkgsrc/mail/procmail/patches/patch-src_formisc.c    Wed Jul 31 22:31:50 2024
@@ -0,0 +1,16 @@
+$NetBSD: patch-src_formisc.c,v 1.1 2024/07/31 22:31:50 vins Exp $
+
+Prevent buffer overflow in loadbuf()
+https://access.redhat.com/security/cve/CVE-2014-3618
+
+--- src/formisc.c.orig 2024-07-31 20:17:03.892214915 +0000
++++ src/formisc.c
+@@ -101,7 +101,7 @@ void loadsaved(sp)const struct saved*con
+ }
+                                                           /* 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=buffilled+len+Bsize);
+   tmemmove(buf+buffilled,text,len);buffilled+=len;
+ }
Index: pkgsrc/mail/procmail/patches/patch-src_mailfold.c
diff -u /dev/null pkgsrc/mail/procmail/patches/patch-src_mailfold.c:1.1
--- /dev/null   Wed Jul 31 22:31:50 2024
+++ pkgsrc/mail/procmail/patches/patch-src_mailfold.c   Wed Jul 31 22:31:50 2024
@@ -0,0 +1,15 @@
+$NetBSD: patch-src_mailfold.c,v 1.1 2024/07/31 22:31:50 vins Exp $
+
+Fix build with gcc-14
+
+--- src/mailfold.c.orig        2024-07-31 22:05:34.826652596 +0000
++++ src/mailfold.c
+@@ -373,7 +373,7 @@ void concon(ch)const int ch;   /* flip b
+    }
+ }
+ 
+-int readmail(rhead,tobesent)int rhead;const long tobesent;
++int readmail(int rhead,const long tobesent)
+ { char*chp,*pastend;static size_t contlengthoffset;
+   ;{ long dfilled;
+      if(rhead==2)               /* already read, just examine what we have */



Home | Main Index | Thread Index | Old Index