Date: Friday, May 15, 2020 @ 15:22:48 Author: jelle Revision: 383696 archrelease: copy trunk to extra-x86_64
Added: a2ps/repos/extra-x86_64/CVE-2014-0466.patch (from rev 383695, a2ps/trunk/CVE-2014-0466.patch) a2ps/repos/extra-x86_64/CVE-2015-8107.patch (from rev 383695, a2ps/trunk/CVE-2015-8107.patch) a2ps/repos/extra-x86_64/PKGBUILD (from rev 383695, a2ps/trunk/PKGBUILD) a2ps/repos/extra-x86_64/a2ps-4.13-manpage-chmod.patch (from rev 383695, a2ps/trunk/a2ps-4.13-manpage-chmod.patch) a2ps/repos/extra-x86_64/a2ps-4.13-security.patch (from rev 383695, a2ps/trunk/a2ps-4.13-security.patch) a2ps/repos/extra-x86_64/a2ps-4.13c-emacs.patch (from rev 383695, a2ps/trunk/a2ps-4.13c-emacs.patch) a2ps/repos/extra-x86_64/a2ps-4.13c-fnmatch-replacement.patch (from rev 383695, a2ps/trunk/a2ps-4.13c-fnmatch-replacement.patch) a2ps/repos/extra-x86_64/a2ps-4.14-check-mempcpy.patch (from rev 383695, a2ps/trunk/a2ps-4.14-check-mempcpy.patch) a2ps/repos/extra-x86_64/a2ps-4.14-fix-stpcpy-proto.patch (from rev 383695, a2ps/trunk/a2ps-4.14-fix-stpcpy-proto.patch) a2ps/repos/extra-x86_64/a2ps-texinfo5.patch (from rev 383695, a2ps/trunk/a2ps-texinfo5.patch) a2ps/repos/extra-x86_64/a2ps-texinfo67.patch (from rev 383695, a2ps/trunk/a2ps-texinfo67.patch) a2ps/repos/extra-x86_64/adhere-source-date-epoch.patch (from rev 383695, a2ps/trunk/adhere-source-date-epoch.patch) Deleted: a2ps/repos/extra-x86_64/CVE-2014-0466.patch a2ps/repos/extra-x86_64/CVE-2015-8107.patch a2ps/repos/extra-x86_64/PKGBUILD a2ps/repos/extra-x86_64/a2ps-4.13-manpage-chmod.patch a2ps/repos/extra-x86_64/a2ps-4.13-security.patch a2ps/repos/extra-x86_64/a2ps-4.13c-emacs.patch a2ps/repos/extra-x86_64/a2ps-4.13c-fnmatch-replacement.patch a2ps/repos/extra-x86_64/a2ps-4.14-check-mempcpy.patch a2ps/repos/extra-x86_64/a2ps-4.14-fix-stpcpy-proto.patch a2ps/repos/extra-x86_64/a2ps-texinfo5.patch a2ps/repos/extra-x86_64/a2ps-texinfo67.patch --------------------------------------+ CVE-2014-0466.patch | 50 ++++++------ CVE-2015-8107.patch | 134 ++++++++++++++++----------------- PKGBUILD | 133 ++++++++++++++++---------------- a2ps-4.13-manpage-chmod.patch | 24 ++--- a2ps-4.13-security.patch | 130 ++++++++++++++++---------------- a2ps-4.13c-emacs.patch | 20 ++-- a2ps-4.13c-fnmatch-replacement.patch | 86 ++++++++++----------- a2ps-4.14-check-mempcpy.patch | 24 ++--- a2ps-4.14-fix-stpcpy-proto.patch | 34 ++++---- a2ps-texinfo5.patch | 92 +++++++++++----------- a2ps-texinfo67.patch | 76 +++++++++--------- adhere-source-date-epoch.patch | 22 +++++ 12 files changed, 425 insertions(+), 400 deletions(-) Deleted: CVE-2014-0466.patch =================================================================== --- CVE-2014-0466.patch 2020-05-15 15:22:31 UTC (rev 383695) +++ CVE-2014-0466.patch 2020-05-15 15:22:48 UTC (rev 383696) @@ -1,25 +0,0 @@ -From 5ea5ff8bc0094ca1eda0dd0e011d860e994c0a88 Mon Sep 17 00:00:00 2001 -From: David Seifert <s...@gentoo.org> -Date: Sun, 17 Sep 2017 23:26:32 +0200 -Subject: Add fix for CVE-2014-0466 - ---- - contrib/fixps.in | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/contrib/fixps.in b/contrib/fixps.in -index 45eeafc..bd6244e 100644 ---- a/contrib/fixps.in -+++ b/contrib/fixps.in -@@ -393,7 +393,7 @@ if test $task != check; then - eval "$command" ;; - gs) - $verbose "$program: making a full rewrite of the file ($gs)." >&2 -- $gs -q -dNOPAUSE -dBATCH -sDEVICE=pswrite -sOutputFile=- -c save pop -f $file ;; -+ $gs -q -dSAFER -dNOPAUSE -dBATCH -sDEVICE=pswrite -sOutputFile=- -c save pop -f $file ;; - esac - ) - fi --- -cgit v1.2.1 - Copied: a2ps/repos/extra-x86_64/CVE-2014-0466.patch (from rev 383695, a2ps/trunk/CVE-2014-0466.patch) =================================================================== --- CVE-2014-0466.patch (rev 0) +++ CVE-2014-0466.patch 2020-05-15 15:22:48 UTC (rev 383696) @@ -0,0 +1,25 @@ +From 5ea5ff8bc0094ca1eda0dd0e011d860e994c0a88 Mon Sep 17 00:00:00 2001 +From: David Seifert <s...@gentoo.org> +Date: Sun, 17 Sep 2017 23:26:32 +0200 +Subject: Add fix for CVE-2014-0466 + +--- + contrib/fixps.in | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/contrib/fixps.in b/contrib/fixps.in +index 45eeafc..bd6244e 100644 +--- a/contrib/fixps.in ++++ b/contrib/fixps.in +@@ -393,7 +393,7 @@ if test $task != check; then + eval "$command" ;; + gs) + $verbose "$program: making a full rewrite of the file ($gs)." >&2 +- $gs -q -dNOPAUSE -dBATCH -sDEVICE=pswrite -sOutputFile=- -c save pop -f $file ;; ++ $gs -q -dSAFER -dNOPAUSE -dBATCH -sDEVICE=pswrite -sOutputFile=- -c save pop -f $file ;; + esac + ) + fi +-- +cgit v1.2.1 + Deleted: CVE-2015-8107.patch =================================================================== --- CVE-2015-8107.patch 2020-05-15 15:22:31 UTC (rev 383695) +++ CVE-2015-8107.patch 2020-05-15 15:22:48 UTC (rev 383696) @@ -1,67 +0,0 @@ -From 90b876cb480ca9e092490c825663f23909c6173c Mon Sep 17 00:00:00 2001 -From: David Seifert <s...@gentoo.org> -Date: Sun, 17 Sep 2017 23:31:56 +0200 -Subject: Add fix for CVE-2015-8107 - ---- - lib/output.c | 2 +- - lib/parseppd.y | 2 +- - lib/psgen.c | 2 +- - src/parsessh.y | 2 +- - 4 files changed, 4 insertions(+), 4 deletions(-) - -diff --git a/lib/output.c b/lib/output.c -index b0011e1..449df0c 100644 ---- a/lib/output.c -+++ b/lib/output.c -@@ -518,7 +518,7 @@ output_file (struct output * out, a2ps_job * job, - expand_user_string (job, FIRST_FILE (job), - (const uchar *) "Expand: requirement", - (const uchar *) token)); -- output (dest, expansion); -+ output (dest, "%s", expansion); - continue; - } - -diff --git a/lib/parseppd.y b/lib/parseppd.y -index cb393e2..6e50ecb 100644 ---- a/lib/parseppd.y -+++ b/lib/parseppd.y -@@ -156,7 +156,7 @@ font_clause : - void - yyerror (const char *msg) - { -- error_at_line (1, 0, ppdfilename, ppdlineno, msg); -+ error_at_line (1, 0, ppdfilename, ppdlineno, "%s", msg); - } - - /* -diff --git a/lib/psgen.c b/lib/psgen.c -index 8738512..1cc3513 100644 ---- a/lib/psgen.c -+++ b/lib/psgen.c -@@ -221,7 +221,7 @@ output_marker (a2ps_job * job, const char * kind, unsigned char * marker) - default: - *buf = '\0'; - ps_escape_char (job, cp[i], buf); -- output (jdiv, (char *) buf); -+ output (jdiv, "%s", (char *) buf); - break; - } - } -diff --git a/src/parsessh.y b/src/parsessh.y -index 78d2039..b301d87 100644 ---- a/src/parsessh.y -+++ b/src/parsessh.y -@@ -742,7 +742,7 @@ exception_def_opt: - void - yyerror (const char *msg) - { -- error_at_line (1, 0, sshfilename, sshlineno, msg); -+ error_at_line (1, 0, sshfilename, sshlineno, "%s", msg); - } - - /* --- -cgit v1.2.1 - Copied: a2ps/repos/extra-x86_64/CVE-2015-8107.patch (from rev 383695, a2ps/trunk/CVE-2015-8107.patch) =================================================================== --- CVE-2015-8107.patch (rev 0) +++ CVE-2015-8107.patch 2020-05-15 15:22:48 UTC (rev 383696) @@ -0,0 +1,67 @@ +From 90b876cb480ca9e092490c825663f23909c6173c Mon Sep 17 00:00:00 2001 +From: David Seifert <s...@gentoo.org> +Date: Sun, 17 Sep 2017 23:31:56 +0200 +Subject: Add fix for CVE-2015-8107 + +--- + lib/output.c | 2 +- + lib/parseppd.y | 2 +- + lib/psgen.c | 2 +- + src/parsessh.y | 2 +- + 4 files changed, 4 insertions(+), 4 deletions(-) + +diff --git a/lib/output.c b/lib/output.c +index b0011e1..449df0c 100644 +--- a/lib/output.c ++++ b/lib/output.c +@@ -518,7 +518,7 @@ output_file (struct output * out, a2ps_job * job, + expand_user_string (job, FIRST_FILE (job), + (const uchar *) "Expand: requirement", + (const uchar *) token)); +- output (dest, expansion); ++ output (dest, "%s", expansion); + continue; + } + +diff --git a/lib/parseppd.y b/lib/parseppd.y +index cb393e2..6e50ecb 100644 +--- a/lib/parseppd.y ++++ b/lib/parseppd.y +@@ -156,7 +156,7 @@ font_clause : + void + yyerror (const char *msg) + { +- error_at_line (1, 0, ppdfilename, ppdlineno, msg); ++ error_at_line (1, 0, ppdfilename, ppdlineno, "%s", msg); + } + + /* +diff --git a/lib/psgen.c b/lib/psgen.c +index 8738512..1cc3513 100644 +--- a/lib/psgen.c ++++ b/lib/psgen.c +@@ -221,7 +221,7 @@ output_marker (a2ps_job * job, const char * kind, unsigned char * marker) + default: + *buf = '\0'; + ps_escape_char (job, cp[i], buf); +- output (jdiv, (char *) buf); ++ output (jdiv, "%s", (char *) buf); + break; + } + } +diff --git a/src/parsessh.y b/src/parsessh.y +index 78d2039..b301d87 100644 +--- a/src/parsessh.y ++++ b/src/parsessh.y +@@ -742,7 +742,7 @@ exception_def_opt: + void + yyerror (const char *msg) + { +- error_at_line (1, 0, sshfilename, sshlineno, msg); ++ error_at_line (1, 0, sshfilename, sshlineno, "%s", msg); + } + + /* +-- +cgit v1.2.1 + Deleted: PKGBUILD =================================================================== --- PKGBUILD 2020-05-15 15:22:31 UTC (rev 383695) +++ PKGBUILD 2020-05-15 15:22:48 UTC (rev 383696) @@ -1,65 +0,0 @@ -# Maintainer: Eric Bélanger <e...@archlinux.org> - -pkgname=a2ps -pkgver=4.14 -pkgrel=9 -pkgdesc="An Any to PostScript filter" -arch=('x86_64') -url="https://www.gnu.org/software/a2ps/" -license=('GPL3') -depends=('psutils' 'imagemagick') -makedepends=('gperf') -backup=('etc/a2ps/a2ps.cfg' 'etc/a2ps/a2ps-site.cfg') -source=(https://ftp.gnu.org/gnu/a2ps/${pkgname}-${pkgver}.tar.gz{,.sig} - a2ps-4.13c-fnmatch-replacement.patch a2ps-4.13c-emacs.patch - a2ps-4.13-manpage-chmod.patch a2ps-4.14-check-mempcpy.patch - a2ps-4.14-fix-stpcpy-proto.patch a2ps-texinfo5.patch - a2ps-4.13-security.patch - CVE-2014-0466.patch - CVE-2015-8107.patch - a2ps-texinfo67.patch) -sha1sums=('365abbbe4b7128bf70dad16d06e23c5701874852' - 'SKIP' - '8783952d3410d8d59ed953e1db45e2ef1a0b8f65' - '94e35a6ad9268161bec22a56d4cfb696d635994a' - '2bb3d0a2ef2f3ff9262723e35c742a80ab0235ce' - '6aed29c1399e79f3914b408059610f9e7c0fc38e' - '58fa90134f1027e3f05aeb08212cbcc10f420738' - '81269db9dd29685b0ece2539070ced3f7a8472df' - '93a4db17edfaa99e3498c7d952c560dab49dbe42' - '0a04f4c145d3aef8f3c7537eb00cb4040c7209c9' - '08c51a9361eaefe76af61b70392fa5ac1c4356c7' - 'f54b6b319a5c134e0ee9be8dc9c8f80a65dc98d6') -validpgpkeys=('6EB39358D8328FE3CDC903A8CB6FA340E7075A54') - -prepare() { - cd ${pkgname}-${pkgver} - sed -i -e '/^AM_C_PROTOTYPES/d' -e '/^AUTOMAKE_OPTIONS.*ansi2knr/d' \ - -e 's:AM_CONFIG_HEADER:AC_CONFIG_HEADERS:' -e 's:AM_PROG_CC_STDC:AC_PROG_CC:' \ - configure.in {contrib/sample,lib,src}/Makefile.am m4/protos.m4 - sed -i "s:^countdictstack: \0:" contrib/psset.in - patch -p1 -i "${srcdir}/a2ps-4.13c-fnmatch-replacement.patch" - patch -p1 -i "${srcdir}/a2ps-4.13c-emacs.patch" - patch -p1 -i "${srcdir}/a2ps-4.13-manpage-chmod.patch" - patch -p1 -i "${srcdir}/a2ps-4.14-check-mempcpy.patch" - patch -p0 -i "${srcdir}/a2ps-4.14-fix-stpcpy-proto.patch" - patch -p1 -i "${srcdir}/a2ps-texinfo5.patch" - patch -p1 -i "${srcdir}/a2ps-4.13-security.patch" - patch -p1 -i "${srcdir}/CVE-2014-0466.patch" - patch -p1 -i "${srcdir}/CVE-2015-8107.patch" - patch -p1 -i "${srcdir}/a2ps-texinfo67.patch" -} - -build() { - cd ${pkgname}-${pkgver} - libtoolize --force --copy - autoreconf --force --install -I m4 - LIBS+="-lm" ./configure --prefix=/usr --sysconfdir=/etc/a2ps \ - --includedir=/usr/include --enable-shared --enable-nls - make -} - -package() { - cd ${pkgname}-${pkgver} - make DESTDIR="${pkgdir}" install -} Copied: a2ps/repos/extra-x86_64/PKGBUILD (from rev 383695, a2ps/trunk/PKGBUILD) =================================================================== --- PKGBUILD (rev 0) +++ PKGBUILD 2020-05-15 15:22:48 UTC (rev 383696) @@ -0,0 +1,68 @@ +# Maintainer: Eric Bélanger <e...@archlinux.org> + +pkgname=a2ps +pkgver=4.14 +pkgrel=10 +pkgdesc="An Any to PostScript filter" +arch=('x86_64') +url="https://www.gnu.org/software/a2ps/" +license=('GPL3') +depends=('psutils' 'imagemagick') +makedepends=('gperf') +backup=('etc/a2ps/a2ps.cfg' 'etc/a2ps/a2ps-site.cfg') +source=(https://ftp.gnu.org/gnu/a2ps/${pkgname}-${pkgver}.tar.gz{,.sig} + a2ps-4.13c-fnmatch-replacement.patch a2ps-4.13c-emacs.patch + a2ps-4.13-manpage-chmod.patch a2ps-4.14-check-mempcpy.patch + a2ps-4.14-fix-stpcpy-proto.patch a2ps-texinfo5.patch + a2ps-4.13-security.patch + CVE-2014-0466.patch + CVE-2015-8107.patch + a2ps-texinfo67.patch + adhere-source-date-epoch.patch) +sha1sums=('365abbbe4b7128bf70dad16d06e23c5701874852' + 'SKIP' + '8783952d3410d8d59ed953e1db45e2ef1a0b8f65' + '94e35a6ad9268161bec22a56d4cfb696d635994a' + '2bb3d0a2ef2f3ff9262723e35c742a80ab0235ce' + '6aed29c1399e79f3914b408059610f9e7c0fc38e' + '58fa90134f1027e3f05aeb08212cbcc10f420738' + '81269db9dd29685b0ece2539070ced3f7a8472df' + '93a4db17edfaa99e3498c7d952c560dab49dbe42' + '0a04f4c145d3aef8f3c7537eb00cb4040c7209c9' + '08c51a9361eaefe76af61b70392fa5ac1c4356c7' + 'f54b6b319a5c134e0ee9be8dc9c8f80a65dc98d6' + 'd53042daa93db3969fbb5564c4f93ddc91ef6334') +validpgpkeys=('6EB39358D8328FE3CDC903A8CB6FA340E7075A54') + +prepare() { + cd ${pkgname}-${pkgver} + sed -i -e '/^AM_C_PROTOTYPES/d' -e '/^AUTOMAKE_OPTIONS.*ansi2knr/d' \ + -e 's:AM_CONFIG_HEADER:AC_CONFIG_HEADERS:' -e 's:AM_PROG_CC_STDC:AC_PROG_CC:' \ + configure.in {contrib/sample,lib,src}/Makefile.am m4/protos.m4 + sed -i "s:^countdictstack: \0:" contrib/psset.in + patch -p1 -i "${srcdir}/a2ps-4.13c-fnmatch-replacement.patch" + patch -p1 -i "${srcdir}/a2ps-4.13c-emacs.patch" + patch -p1 -i "${srcdir}/a2ps-4.13-manpage-chmod.patch" + patch -p1 -i "${srcdir}/a2ps-4.14-check-mempcpy.patch" + patch -p0 -i "${srcdir}/a2ps-4.14-fix-stpcpy-proto.patch" + patch -p1 -i "${srcdir}/a2ps-texinfo5.patch" + patch -p1 -i "${srcdir}/a2ps-4.13-security.patch" + patch -p1 -i "${srcdir}/CVE-2014-0466.patch" + patch -p1 -i "${srcdir}/CVE-2015-8107.patch" + patch -p1 -i "${srcdir}/a2ps-texinfo67.patch" + patch -p1 -i "${srcdir}/adhere-source-date-epoch.patch" +} + +build() { + cd ${pkgname}-${pkgver} + libtoolize --force --copy + autoreconf --force --install -I m4 + LIBS+="-lm" ./configure --prefix=/usr --sysconfdir=/etc/a2ps \ + --includedir=/usr/include --enable-shared --enable-nls + make +} + +package() { + cd ${pkgname}-${pkgver} + make DESTDIR="${pkgdir}" install +} Deleted: a2ps-4.13-manpage-chmod.patch =================================================================== --- a2ps-4.13-manpage-chmod.patch 2020-05-15 15:22:31 UTC (rev 383695) +++ a2ps-4.13-manpage-chmod.patch 2020-05-15 15:22:48 UTC (rev 383696) @@ -1,12 +0,0 @@ -diff -ur a2ps-4.13.orig/man/Makefile.maint a2ps-4.13/man/Makefile.maint ---- a2ps-4.13.orig/man/Makefile.maint 2002-03-04 20:46:26.000000000 +0200 -+++ a2ps-4.13/man/Makefile.maint 2007-02-19 21:50:29.000000000 +0200 -@@ -20,7 +20,7 @@ - --include=$(basename $@).x \ - --include=common.x \ - $(executable) > $@-t || exit 1; \ -- chmod -w $@-t || exit 1; \ -+ chmod a-w $@-t || exit 1; \ - rm -f $@ || exit 1; \ - mv $@-t $@ || exit 1; \ - else \ Copied: a2ps/repos/extra-x86_64/a2ps-4.13-manpage-chmod.patch (from rev 383695, a2ps/trunk/a2ps-4.13-manpage-chmod.patch) =================================================================== --- a2ps-4.13-manpage-chmod.patch (rev 0) +++ a2ps-4.13-manpage-chmod.patch 2020-05-15 15:22:48 UTC (rev 383696) @@ -0,0 +1,12 @@ +diff -ur a2ps-4.13.orig/man/Makefile.maint a2ps-4.13/man/Makefile.maint +--- a2ps-4.13.orig/man/Makefile.maint 2002-03-04 20:46:26.000000000 +0200 ++++ a2ps-4.13/man/Makefile.maint 2007-02-19 21:50:29.000000000 +0200 +@@ -20,7 +20,7 @@ + --include=$(basename $@).x \ + --include=common.x \ + $(executable) > $@-t || exit 1; \ +- chmod -w $@-t || exit 1; \ ++ chmod a-w $@-t || exit 1; \ + rm -f $@ || exit 1; \ + mv $@-t $@ || exit 1; \ + else \ Deleted: a2ps-4.13-security.patch =================================================================== --- a2ps-4.13-security.patch 2020-05-15 15:22:31 UTC (rev 383695) +++ a2ps-4.13-security.patch 2020-05-15 15:22:48 UTC (rev 383696) @@ -1,65 +0,0 @@ ---- a2ps-4.13/lib/routines.c.security Sat Oct 16 05:46:37 1999 -+++ a2ps-4.13/lib/routines.c Mon Feb 12 17:45:15 2001 -@@ -242,3 +242,50 @@ - /* Don't complain if you can't unlink. Who cares of a tmp file? */ - unlink (filename); - } -+ -+/* -+ * Securely generate a temp file, and make sure it gets -+ * deleted upon exit. -+ */ -+static char ** tempfiles; -+static unsigned ntempfiles; -+ -+static void -+cleanup_tempfiles() -+{ -+ while (ntempfiles--) -+ unlink(tempfiles[ntempfiles]); -+} -+ -+char * -+safe_tempnam(const char *pfx) -+{ -+ char *dirname, *filename; -+ int fd; -+ -+ if (!(dirname = getenv("TMPDIR"))) -+ dirname = "/tmp"; -+ -+ tempfiles = (char **) realloc(tempfiles, -+ (ntempfiles+1) * sizeof(char *)); -+ if (tempfiles == NULL) -+ return NULL; -+ -+ filename = malloc(strlen(dirname) + strlen(pfx) + sizeof("/XXXXXX")); -+ if (!filename) -+ return NULL; -+ -+ sprintf(filename, "%s/%sXXXXXX", dirname, pfx); -+ -+ if ((fd = mkstemp(filename)) < 0) { -+ free(filename); -+ return NULL; -+ } -+ close(fd); -+ -+ if (ntempfiles == 0) -+ atexit(cleanup_tempfiles); -+ tempfiles[ntempfiles++] = filename; -+ -+ return filename; -+} ---- a2ps-4.13/lib/routines.h.security Mon Oct 18 21:24:41 1999 -+++ a2ps-4.13/lib/routines.h Mon Feb 12 17:39:30 2001 -@@ -255,7 +255,8 @@ - /* If _STR_ is not defined, give it a tempname in _TMPDIR_ */ - #define tempname_ensure(Str) \ - do { \ -- (Str) = (Str) ? (Str) : tempnam (NULL, "a2_"); \ -+ (Str) = (Str) ? (Str) : safe_tempnam("a2_"); \ - } while (0) -+char * safe_tempnam(const char *); - - #endif Copied: a2ps/repos/extra-x86_64/a2ps-4.13-security.patch (from rev 383695, a2ps/trunk/a2ps-4.13-security.patch) =================================================================== --- a2ps-4.13-security.patch (rev 0) +++ a2ps-4.13-security.patch 2020-05-15 15:22:48 UTC (rev 383696) @@ -0,0 +1,65 @@ +--- a2ps-4.13/lib/routines.c.security Sat Oct 16 05:46:37 1999 ++++ a2ps-4.13/lib/routines.c Mon Feb 12 17:45:15 2001 +@@ -242,3 +242,50 @@ + /* Don't complain if you can't unlink. Who cares of a tmp file? */ + unlink (filename); + } ++ ++/* ++ * Securely generate a temp file, and make sure it gets ++ * deleted upon exit. ++ */ ++static char ** tempfiles; ++static unsigned ntempfiles; ++ ++static void ++cleanup_tempfiles() ++{ ++ while (ntempfiles--) ++ unlink(tempfiles[ntempfiles]); ++} ++ ++char * ++safe_tempnam(const char *pfx) ++{ ++ char *dirname, *filename; ++ int fd; ++ ++ if (!(dirname = getenv("TMPDIR"))) ++ dirname = "/tmp"; ++ ++ tempfiles = (char **) realloc(tempfiles, ++ (ntempfiles+1) * sizeof(char *)); ++ if (tempfiles == NULL) ++ return NULL; ++ ++ filename = malloc(strlen(dirname) + strlen(pfx) + sizeof("/XXXXXX")); ++ if (!filename) ++ return NULL; ++ ++ sprintf(filename, "%s/%sXXXXXX", dirname, pfx); ++ ++ if ((fd = mkstemp(filename)) < 0) { ++ free(filename); ++ return NULL; ++ } ++ close(fd); ++ ++ if (ntempfiles == 0) ++ atexit(cleanup_tempfiles); ++ tempfiles[ntempfiles++] = filename; ++ ++ return filename; ++} +--- a2ps-4.13/lib/routines.h.security Mon Oct 18 21:24:41 1999 ++++ a2ps-4.13/lib/routines.h Mon Feb 12 17:39:30 2001 +@@ -255,7 +255,8 @@ + /* If _STR_ is not defined, give it a tempname in _TMPDIR_ */ + #define tempname_ensure(Str) \ + do { \ +- (Str) = (Str) ? (Str) : tempnam (NULL, "a2_"); \ ++ (Str) = (Str) ? (Str) : safe_tempnam("a2_"); \ + } while (0) ++char * safe_tempnam(const char *); + + #endif Deleted: a2ps-4.13c-emacs.patch =================================================================== --- a2ps-4.13c-emacs.patch 2020-05-15 15:22:31 UTC (rev 383695) +++ a2ps-4.13c-emacs.patch 2020-05-15 15:22:48 UTC (rev 383696) @@ -1,10 +0,0 @@ ---- a2ps-4.13/contrib/emacs/a2ps-print.el.orig 2005-12-05 08:03:48.000000000 +0100 -+++ a2ps-4.13/contrib/emacs/a2ps-print.el 2005-12-06 16:38:14.000000000 +0100 -@@ -93,6 +93,7 @@ - (concat "--center-title=" name) - (concat "--footer=" (concat name " Emacs buffer")) - (concat "--pretty-print=" filetype) -+ (concat "-d") - ;Uncommenting the following gives a print preview (only): - ; (concat "--output=/tmp/foo.ps") - ) Copied: a2ps/repos/extra-x86_64/a2ps-4.13c-emacs.patch (from rev 383695, a2ps/trunk/a2ps-4.13c-emacs.patch) =================================================================== --- a2ps-4.13c-emacs.patch (rev 0) +++ a2ps-4.13c-emacs.patch 2020-05-15 15:22:48 UTC (rev 383696) @@ -0,0 +1,10 @@ +--- a2ps-4.13/contrib/emacs/a2ps-print.el.orig 2005-12-05 08:03:48.000000000 +0100 ++++ a2ps-4.13/contrib/emacs/a2ps-print.el 2005-12-06 16:38:14.000000000 +0100 +@@ -93,6 +93,7 @@ + (concat "--center-title=" name) + (concat "--footer=" (concat name " Emacs buffer")) + (concat "--pretty-print=" filetype) ++ (concat "-d") + ;Uncommenting the following gives a print preview (only): + ; (concat "--output=/tmp/foo.ps") + ) Deleted: a2ps-4.13c-fnmatch-replacement.patch =================================================================== --- a2ps-4.13c-fnmatch-replacement.patch 2020-05-15 15:22:31 UTC (rev 383695) +++ a2ps-4.13c-fnmatch-replacement.patch 2020-05-15 15:22:48 UTC (rev 383696) @@ -1,43 +0,0 @@ -diff -Naurp a2ps-4.13.orig/lib/fnmatch.c a2ps-4.13/lib/fnmatch.c ---- a2ps-4.13.orig/lib/fnmatch.c 2002-03-04 12:46:25 -0600 -+++ a2ps-4.13/lib/fnmatch.c 2006-05-27 11:41:15 -0500 -@@ -27,18 +27,6 @@ - #include <fnmatch.h> - #include <ctype.h> - -- --/* Comment out all this code if we are using the GNU C Library, and are not -- actually compiling the library itself. This code is part of the GNU C -- Library, but also included in many other GNU distributions. Compiling -- and linking in this code is a waste when using the GNU C library -- (especially if it is a shared library). Rather than having every GNU -- program understand `configure --with-gnu-libc' and omit the object files, -- it is simpler to just do this in the source for each such file. */ -- --#if defined _LIBC || !defined __GNU_LIBRARY__ -- -- - # if defined STDC_HEADERS || !defined isascii - # define ISASCII(c) 1 - # else -@@ -52,10 +40,13 @@ - extern int errno; - # endif - -+/* fnmatch replacement taken from the GNU C Library for systems that -+ provide a broken implementation. */ -+ - /* Match STRING against the filename pattern PATTERN, returning zero if - it matches, nonzero if not. */ - int --fnmatch (const char *pattern, const char *string, int flags) -+rpl_fnmatch (const char *pattern, const char *string, int flags) - { - register const char *p = pattern, *n = string; - register char c; -@@ -233,5 +224,3 @@ fnmatch (const char *pattern, const char - - # undef FOLD - } -- --#endif /* _LIBC or not __GNU_LIBRARY__. */ Copied: a2ps/repos/extra-x86_64/a2ps-4.13c-fnmatch-replacement.patch (from rev 383695, a2ps/trunk/a2ps-4.13c-fnmatch-replacement.patch) =================================================================== --- a2ps-4.13c-fnmatch-replacement.patch (rev 0) +++ a2ps-4.13c-fnmatch-replacement.patch 2020-05-15 15:22:48 UTC (rev 383696) @@ -0,0 +1,43 @@ +diff -Naurp a2ps-4.13.orig/lib/fnmatch.c a2ps-4.13/lib/fnmatch.c +--- a2ps-4.13.orig/lib/fnmatch.c 2002-03-04 12:46:25 -0600 ++++ a2ps-4.13/lib/fnmatch.c 2006-05-27 11:41:15 -0500 +@@ -27,18 +27,6 @@ + #include <fnmatch.h> + #include <ctype.h> + +- +-/* Comment out all this code if we are using the GNU C Library, and are not +- actually compiling the library itself. This code is part of the GNU C +- Library, but also included in many other GNU distributions. Compiling +- and linking in this code is a waste when using the GNU C library +- (especially if it is a shared library). Rather than having every GNU +- program understand `configure --with-gnu-libc' and omit the object files, +- it is simpler to just do this in the source for each such file. */ +- +-#if defined _LIBC || !defined __GNU_LIBRARY__ +- +- + # if defined STDC_HEADERS || !defined isascii + # define ISASCII(c) 1 + # else +@@ -52,10 +40,13 @@ + extern int errno; + # endif + ++/* fnmatch replacement taken from the GNU C Library for systems that ++ provide a broken implementation. */ ++ + /* Match STRING against the filename pattern PATTERN, returning zero if + it matches, nonzero if not. */ + int +-fnmatch (const char *pattern, const char *string, int flags) ++rpl_fnmatch (const char *pattern, const char *string, int flags) + { + register const char *p = pattern, *n = string; + register char c; +@@ -233,5 +224,3 @@ fnmatch (const char *pattern, const char + + # undef FOLD + } +- +-#endif /* _LIBC or not __GNU_LIBRARY__. */ Deleted: a2ps-4.14-check-mempcpy.patch =================================================================== --- a2ps-4.14-check-mempcpy.patch 2020-05-15 15:22:31 UTC (rev 383695) +++ a2ps-4.14-check-mempcpy.patch 2020-05-15 15:22:48 UTC (rev 383696) @@ -1,12 +0,0 @@ ---- a2ps-4.14-orig/configure.in 2008-04-16 08:36:03.000000000 +0200 -+++ a2ps-4.14/configure.in 2008-04-16 08:36:29.000000000 +0200 -@@ -137,7 +137,8 @@ - ad_REPLACE_FUNC_STRCASECMP - ad_REPLACE_FUNC_STRNCASECMP - ad_REPLACE_FUNC_RENAME --AC_CHECK_FUNCS(uname strchr strerror strerror_r getcwd bcopy bzero tempnam strsignal psignal setlocale) -+AC_CHECK_FUNCS(uname strchr strerror strerror_r getcwd bcopy bzero \ -+ tempnam strsignal psignal setlocale mempcpy) - ad_FUNC_SYSTEMPAPERNAME - ad_FUNC_ATEXIT - ad_FUNC_STRFTIME Copied: a2ps/repos/extra-x86_64/a2ps-4.14-check-mempcpy.patch (from rev 383695, a2ps/trunk/a2ps-4.14-check-mempcpy.patch) =================================================================== --- a2ps-4.14-check-mempcpy.patch (rev 0) +++ a2ps-4.14-check-mempcpy.patch 2020-05-15 15:22:48 UTC (rev 383696) @@ -0,0 +1,12 @@ +--- a2ps-4.14-orig/configure.in 2008-04-16 08:36:03.000000000 +0200 ++++ a2ps-4.14/configure.in 2008-04-16 08:36:29.000000000 +0200 +@@ -137,7 +137,8 @@ + ad_REPLACE_FUNC_STRCASECMP + ad_REPLACE_FUNC_STRNCASECMP + ad_REPLACE_FUNC_RENAME +-AC_CHECK_FUNCS(uname strchr strerror strerror_r getcwd bcopy bzero tempnam strsignal psignal setlocale) ++AC_CHECK_FUNCS(uname strchr strerror strerror_r getcwd bcopy bzero \ ++ tempnam strsignal psignal setlocale mempcpy) + ad_FUNC_SYSTEMPAPERNAME + ad_FUNC_ATEXIT + ad_FUNC_STRFTIME Deleted: a2ps-4.14-fix-stpcpy-proto.patch =================================================================== --- a2ps-4.14-fix-stpcpy-proto.patch 2020-05-15 15:22:31 UTC (rev 383695) +++ a2ps-4.14-fix-stpcpy-proto.patch 2020-05-15 15:22:48 UTC (rev 383696) @@ -1,17 +0,0 @@ -=== modified file 'lib/xstrrpl.c' ---- lib/xstrrpl.c 2008-04-14 18:04:50 +0000 -+++ lib/xstrrpl.c 2008-04-14 18:20:20 +0000 -@@ -20,12 +20,10 @@ - - #include "system.h" - #include <assert.h> - #include "xstrrpl.h" - --extern char * stpcpy(); -- - /* Perform subsitutions in string. Result is malloc'd - E.g., result = xstrrrpl ("1234", subst) gives result = "112333" - where subst = { {"1", "11"}, {"3", "333"}, { "4", ""}} - */ - char * - Copied: a2ps/repos/extra-x86_64/a2ps-4.14-fix-stpcpy-proto.patch (from rev 383695, a2ps/trunk/a2ps-4.14-fix-stpcpy-proto.patch) =================================================================== --- a2ps-4.14-fix-stpcpy-proto.patch (rev 0) +++ a2ps-4.14-fix-stpcpy-proto.patch 2020-05-15 15:22:48 UTC (rev 383696) @@ -0,0 +1,17 @@ +=== modified file 'lib/xstrrpl.c' +--- lib/xstrrpl.c 2008-04-14 18:04:50 +0000 ++++ lib/xstrrpl.c 2008-04-14 18:20:20 +0000 +@@ -20,12 +20,10 @@ + + #include "system.h" + #include <assert.h> + #include "xstrrpl.h" + +-extern char * stpcpy(); +- + /* Perform subsitutions in string. Result is malloc'd + E.g., result = xstrrrpl ("1234", subst) gives result = "112333" + where subst = { {"1", "11"}, {"3", "333"}, { "4", ""}} + */ + char * + Deleted: a2ps-texinfo5.patch =================================================================== --- a2ps-texinfo5.patch 2020-05-15 15:22:31 UTC (rev 383695) +++ a2ps-texinfo5.patch 2020-05-15 15:22:48 UTC (rev 383696) @@ -1,46 +0,0 @@ -diff -Naur a2ps-4.14-orig/doc/a2ps.texi a2ps-4.14/doc/a2ps.texi ---- a2ps-4.14-orig/doc/a2ps.texi 2013-07-30 02:27:21.950434805 -0400 -+++ a2ps-4.14/doc/a2ps.texi 2013-07-30 02:29:07.286445041 -0400 -@@ -22,12 +22,12 @@ - @c `a2ps'. Avoid those quotes. - @iftex - @macro pack --@code{@value{PACKAGE}}@c -+@code{@value{PACKAGE}} - @end macro - @end iftex - @ifnottex - @macro pack --@value{PACKAGE}@c -+@value{PACKAGE} - @end macro - @end ifnottex - -@@ -43,11 +43,6 @@ - @end macro - @end ifnottex - --@c TeX variants --@macro LaTeX --La@TeX{} --@end macro -- - @macro PreTeX - Pre@TeX{} - @end macro -@@ -3965,13 +3960,13 @@ - @itemx \end@{enumerate@} - @itemx \begin@{description@} - @itemx \end@{description@} --These commands are legal in @LaTeX but have no sense in @PreTeX{}. -+These commands are legal in @LaTeX{} but have no sense in @PreTeX{}. - Hence there are simply ignored and not printed (if immediately followed - by an end-of-line). - @end table - - @node Differences with LaTeX --@subsubsection Differences with @LaTeX -+@subsubsection Differences with @LaTeX{} - The following symbols, inherited from the style sheet @code{Symbol}, are - not supported by @LaTeX{}: - Copied: a2ps/repos/extra-x86_64/a2ps-texinfo5.patch (from rev 383695, a2ps/trunk/a2ps-texinfo5.patch) =================================================================== --- a2ps-texinfo5.patch (rev 0) +++ a2ps-texinfo5.patch 2020-05-15 15:22:48 UTC (rev 383696) @@ -0,0 +1,46 @@ +diff -Naur a2ps-4.14-orig/doc/a2ps.texi a2ps-4.14/doc/a2ps.texi +--- a2ps-4.14-orig/doc/a2ps.texi 2013-07-30 02:27:21.950434805 -0400 ++++ a2ps-4.14/doc/a2ps.texi 2013-07-30 02:29:07.286445041 -0400 +@@ -22,12 +22,12 @@ + @c `a2ps'. Avoid those quotes. + @iftex + @macro pack +-@code{@value{PACKAGE}}@c ++@code{@value{PACKAGE}} + @end macro + @end iftex + @ifnottex + @macro pack +-@value{PACKAGE}@c ++@value{PACKAGE} + @end macro + @end ifnottex + +@@ -43,11 +43,6 @@ + @end macro + @end ifnottex + +-@c TeX variants +-@macro LaTeX +-La@TeX{} +-@end macro +- + @macro PreTeX + Pre@TeX{} + @end macro +@@ -3965,13 +3960,13 @@ + @itemx \end@{enumerate@} + @itemx \begin@{description@} + @itemx \end@{description@} +-These commands are legal in @LaTeX but have no sense in @PreTeX{}. ++These commands are legal in @LaTeX{} but have no sense in @PreTeX{}. + Hence there are simply ignored and not printed (if immediately followed + by an end-of-line). + @end table + + @node Differences with LaTeX +-@subsubsection Differences with @LaTeX ++@subsubsection Differences with @LaTeX{} + The following symbols, inherited from the style sheet @code{Symbol}, are + not supported by @LaTeX{}: + Deleted: a2ps-texinfo67.patch =================================================================== --- a2ps-texinfo67.patch 2020-05-15 15:22:31 UTC (rev 383695) +++ a2ps-texinfo67.patch 2020-05-15 15:22:48 UTC (rev 383696) @@ -1,38 +0,0 @@ -The patchs fixes build failure against texinfo-6.7+: -``` -Malformed UTF-8 character: \xcb\xeb (unexpected non-continuation byte 0xeb, immediately after start byte 0xcb; -need 2 bytes, got 1) in pattern match (m//) at /usr/share/texinfo/Texinfo/ParserNonXS.pm line 3364. -Malformed UTF-8 character (fatal) at /usr/share/texinfo/Texinfo/ParserNonXS.pm line 3364. -make[2]: *** [Makefile:472: a2ps.info] Error 25 -``` - -Fixed-by: Neil Bothwick ---- a/doc/a2ps.texi 2019-11-24 18:51:07.000000000 +0000 -+++ a/doc/a2ps.texi 2019-11-24 18:56:30.390438433 +0000 -@@ -1,5 +1,6 @@ - \input texinfo @c -*- texinfo -*- - @c %**start of header -+@documentencoding ISO-8859-1 - @setfilename a2ps.info - @settitle General Purpose PostScript Generating Utility - @c @setchapternewpage odd - ---- a/doc/regex.texi 2002-03-04 18:46:24.000000000 +0000 -+++ a/doc/regex.texi 2019-11-24 18:56:42.861052598 +0000 -@@ -1,5 +1,6 @@ - \input texinfo - @c %**start of header -+@documentencoding ISO-8859-1 - @setfilename regex.info - @settitle Regex - @c %**end of header - ---- a/ogonkify/doc/ogonkify.texi 2007-12-29 02:09:38.000000000 +0000 -+++ a/ogonkify/doc/ogonkify.texi 2019-11-24 18:57:03.173424149 +0000 -@@ -1,5 +1,6 @@ - \input texinfo @c -*-texinfo-*- - @c %**start of header -+@documentencoding ISO-8859-1 - @setfilename ogonkify.info - @settitle Ogonkify - @setchapternewpage off Copied: a2ps/repos/extra-x86_64/a2ps-texinfo67.patch (from rev 383695, a2ps/trunk/a2ps-texinfo67.patch) =================================================================== --- a2ps-texinfo67.patch (rev 0) +++ a2ps-texinfo67.patch 2020-05-15 15:22:48 UTC (rev 383696) @@ -0,0 +1,38 @@ +The patchs fixes build failure against texinfo-6.7+: +``` +Malformed UTF-8 character: \xcb\xeb (unexpected non-continuation byte 0xeb, immediately after start byte 0xcb; +need 2 bytes, got 1) in pattern match (m//) at /usr/share/texinfo/Texinfo/ParserNonXS.pm line 3364. +Malformed UTF-8 character (fatal) at /usr/share/texinfo/Texinfo/ParserNonXS.pm line 3364. +make[2]: *** [Makefile:472: a2ps.info] Error 25 +``` + +Fixed-by: Neil Bothwick +--- a/doc/a2ps.texi 2019-11-24 18:51:07.000000000 +0000 ++++ a/doc/a2ps.texi 2019-11-24 18:56:30.390438433 +0000 +@@ -1,5 +1,6 @@ + \input texinfo @c -*- texinfo -*- + @c %**start of header ++@documentencoding ISO-8859-1 + @setfilename a2ps.info + @settitle General Purpose PostScript Generating Utility + @c @setchapternewpage odd + +--- a/doc/regex.texi 2002-03-04 18:46:24.000000000 +0000 ++++ a/doc/regex.texi 2019-11-24 18:56:42.861052598 +0000 +@@ -1,5 +1,6 @@ + \input texinfo + @c %**start of header ++@documentencoding ISO-8859-1 + @setfilename regex.info + @settitle Regex + @c %**end of header + +--- a/ogonkify/doc/ogonkify.texi 2007-12-29 02:09:38.000000000 +0000 ++++ a/ogonkify/doc/ogonkify.texi 2019-11-24 18:57:03.173424149 +0000 +@@ -1,5 +1,6 @@ + \input texinfo @c -*-texinfo-*- + @c %**start of header ++@documentencoding ISO-8859-1 + @setfilename ogonkify.info + @settitle Ogonkify + @setchapternewpage off Copied: a2ps/repos/extra-x86_64/adhere-source-date-epoch.patch (from rev 383695, a2ps/trunk/adhere-source-date-epoch.patch) =================================================================== --- adhere-source-date-epoch.patch (rev 0) +++ adhere-source-date-epoch.patch 2020-05-15 15:22:48 UTC (rev 383696) @@ -0,0 +1,22 @@ +diff -aur a2ps-4.14.old/etc/Makefile.am a2ps-4.14/etc/Makefile.am +--- a2ps-4.14.old/etc/Makefile.am 2020-05-15 16:22:46.236954254 +0200 ++++ a2ps-4.14/etc/Makefile.am 2020-05-15 16:58:42.382348094 +0200 +@@ -44,5 +44,5 @@ + + # Building a time stamp to know the version. + README: README.in Makefile +- sed "s!@date@!`date`!g;s!@version@!$(VERSION)!g" \ ++ sed "s!@date@!$(shell date --utc --date="${SOURCE_DATE_EPOCH:-$(date +%s)}")!g;s!@version@!$(VERSION)!g" \ + $(srcdir)/README.in > README +diff -aur a2ps-4.14.old/etc/Makefile.in a2ps-4.14/etc/Makefile.in +--- a2ps-4.14.old/etc/Makefile.in 2020-05-15 16:22:46.236954254 +0200 ++++ a2ps-4.14/etc/Makefile.in 2020-05-15 16:59:00.132720058 +0200 +@@ -486,7 +486,7 @@ + + # Building a time stamp to know the version. + README: README.in Makefile +- sed "s!@date@!`date`!g;s!@version@!$(VERSION)!g" \ ++ sed "s!@date@!$(shell date --utc --date="${SOURCE_DATE_EPOCH:-$(date +%s)}")!g;s!@version@!$(VERSION)!g" \ + $(srcdir)/README.in > README + # Tell versions [3.59,3.63) of GNU make to not export all variables. + # Otherwise a system limit (for SysV at least) may be exceeded.