From 83cf29c540b89f98ec44e0fe3d6b9c9e83c85bf0 Mon Sep 17 00:00:00 2001 From: adrianp Date: Sun, 30 Oct 2005 20:14:07 +0000 Subject: Security fixes for SA16906 (CAN-2005-3069 and CAN-2005-3070) from hylafax CVS Remove obsolete patches to make this build again on NetBSD (x86) --- comms/hylafax/Makefile | 3 ++- comms/hylafax/distinfo | 11 ++++++----- comms/hylafax/patches/patch-aj | 13 ------------- comms/hylafax/patches/patch-ak | 13 ------------- comms/hylafax/patches/patch-ar | 13 ------------- comms/hylafax/patches/patch-as | 13 ------------- comms/hylafax/patches/patch-ba | 20 ++++++++++++++++++++ comms/hylafax/patches/patch-bb | 28 ++++++++++++++++++++++++++++ comms/hylafax/patches/patch-bc | 21 +++++++++++++++++++++ comms/hylafax/patches/patch-bd | 38 ++++++++++++++++++++++++++++++++++++++ comms/hylafax/patches/patch-be | 19 +++++++++++++++++++ 11 files changed, 134 insertions(+), 58 deletions(-) delete mode 100644 comms/hylafax/patches/patch-aj delete mode 100644 comms/hylafax/patches/patch-ak delete mode 100644 comms/hylafax/patches/patch-ar delete mode 100644 comms/hylafax/patches/patch-as create mode 100644 comms/hylafax/patches/patch-ba create mode 100644 comms/hylafax/patches/patch-bb create mode 100644 comms/hylafax/patches/patch-bc create mode 100644 comms/hylafax/patches/patch-bd create mode 100644 comms/hylafax/patches/patch-be (limited to 'comms/hylafax') diff --git a/comms/hylafax/Makefile b/comms/hylafax/Makefile index 0e4f3f3a577..9c1b94416cc 100644 --- a/comms/hylafax/Makefile +++ b/comms/hylafax/Makefile @@ -1,6 +1,7 @@ -# $NetBSD: Makefile,v 1.43 2005/04/11 21:45:07 tv Exp $ +# $NetBSD: Makefile,v 1.44 2005/10/30 20:14:07 adrianp Exp $ DISTNAME= hylafax-4.2.1 +PKGREVISION= 1 CATEGORIES= comms MASTER_SITES= ftp://ftp.hylafax.org/source/ \ ftp://ftp.leo.org/pub/comp/os/unix/networking/fax/hylafax/source/ diff --git a/comms/hylafax/distinfo b/comms/hylafax/distinfo index dd6281a6d80..ebf3c62988e 100644 --- a/comms/hylafax/distinfo +++ b/comms/hylafax/distinfo @@ -1,4 +1,4 @@ -$NetBSD: distinfo,v 1.14 2005/02/23 16:05:30 agc Exp $ +$NetBSD: distinfo,v 1.15 2005/10/30 20:14:07 adrianp Exp $ SHA1 (hylafax/hylafax-4.2.1.tar.gz) = 7686daa4db84a90695cff6eba2f873ef59659e0e RMD160 (hylafax/hylafax-4.2.1.tar.gz) = 49634ac9048b428bd4cebae0a0a72c7e3047bcfc @@ -12,12 +12,13 @@ SHA1 (patch-af) = 5c2429d08f2f4c6f5af19dd4775277434abc7ac4 SHA1 (patch-ag) = e1a38918cadf1d1cca7765ee2c050e99dfed0b7f SHA1 (patch-ah) = 084a99cfe21d7090fca33d9e068036e19707f441 SHA1 (patch-ai) = d45bb9e224b18999489314aa1c1c74fc62a77328 -SHA1 (patch-aj) = 4fb211cbe98c3b0919b2f54959320b11da92d1a7 -SHA1 (patch-ak) = 56c027115b470819a85974c0e70d3ab649fec744 SHA1 (patch-al) = edac7c7af07556f7321ba7ede1eeca55e618b8cc SHA1 (patch-am) = b004485310a2257630561a42b3f08896604ce986 SHA1 (patch-an) = 535f9454e473d7bb26a256aec3158cffdb3d0399 SHA1 (patch-ao) = 73da088c0dbc13a0dcb8d6abaa36804f34638c51 SHA1 (patch-ap) = f9d6a2796535e7200419d6e24203b9995e5cfb39 -SHA1 (patch-ar) = d5f331cf4be711c33073a348304eb053d41ab0b3 -SHA1 (patch-as) = 57c85bfd08738efdb91ec63f5d5e5c36c79fd3a3 +SHA1 (patch-ba) = d675d4ef737e0e0ec06c3c668bc094980f2e018d +SHA1 (patch-bb) = 7b035593390cbcbebfc2cc311695c52cc6a8177f +SHA1 (patch-bc) = 6810f1ead317173d0cc0dead389f55a279d5738a +SHA1 (patch-bd) = f3c52d9372831d1f75389fcd1a7cf67fe44079aa +SHA1 (patch-be) = 73e0f40182665a8d0c9007230ddfcc4c6a4477d2 diff --git a/comms/hylafax/patches/patch-aj b/comms/hylafax/patches/patch-aj deleted file mode 100644 index d4333244ff4..00000000000 --- a/comms/hylafax/patches/patch-aj +++ /dev/null @@ -1,13 +0,0 @@ -$NetBSD: patch-aj,v 1.6 2005/01/27 16:22:37 adam Exp $ - ---- faxd/FaxModem.c++.orig 2004-11-23 18:11:02.000000000 +0000 -+++ faxd/FaxModem.c++ -@@ -734,7 +734,7 @@ FaxModem::notifyPageSent(TIFF* tif) - #include "MemoryDecoder.h" - - int --FaxModem::correctPhaseCData(u_char* buf, u_long* pBufSize, -+FaxModem::correctPhaseCData(u_char* buf, uint32* pBufSize, - u_int fillorder, const Class2Params& params) - { - u_char* endOfData; diff --git a/comms/hylafax/patches/patch-ak b/comms/hylafax/patches/patch-ak deleted file mode 100644 index 5cda9fd2830..00000000000 --- a/comms/hylafax/patches/patch-ak +++ /dev/null @@ -1,13 +0,0 @@ -$NetBSD: patch-ak,v 1.6 2005/01/27 16:22:37 adam Exp $ - ---- faxd/FaxModem.h.orig 2004-09-20 19:18:07.000000000 +0000 -+++ faxd/FaxModem.h -@@ -152,7 +152,7 @@ protected: - /* - * Correct if neccessary Phase C (T.4/T.6) data (remove extra RTC/EOFB etc.) - */ -- int correctPhaseCData(u_char* buf, u_long* pBufSize, -+ int correctPhaseCData(u_char* buf, uint32* pBufSize, - u_int fillorder, const Class2Params& params); - /* - * Convert Phase C data... diff --git a/comms/hylafax/patches/patch-ar b/comms/hylafax/patches/patch-ar deleted file mode 100644 index 58481c81356..00000000000 --- a/comms/hylafax/patches/patch-ar +++ /dev/null @@ -1,13 +0,0 @@ -$NetBSD: patch-ar,v 1.8 2005/01/27 16:22:37 adam Exp $ - ---- faxd/Class1Send.c++.orig 2004-12-29 02:16:46.000000000 +0000 -+++ faxd/Class1Send.c++ -@@ -1673,7 +1673,7 @@ Class1Modem::sendPage(TIFF* tif, Class2P - uint32* stripbytecount; - (void) TIFFGetField(tif, TIFFTAG_STRIPBYTECOUNTS, &stripbytecount); - tstrip_t strip; -- u_long totdata = 0; -+ uint32 totdata = 0; - for (strip = 0; strip < nstrips; strip++) - totdata += stripbytecount[strip]; - /* diff --git a/comms/hylafax/patches/patch-as b/comms/hylafax/patches/patch-as deleted file mode 100644 index b1a2e00bb7c..00000000000 --- a/comms/hylafax/patches/patch-as +++ /dev/null @@ -1,13 +0,0 @@ -$NetBSD: patch-as,v 1.6 2005/01/27 16:22:37 adam Exp $ - ---- faxd/Class2Send.c++.orig 2004-11-23 18:11:02.000000000 +0000 -+++ faxd/Class2Send.c++ -@@ -450,7 +450,7 @@ Class2Modem::sendPageData(TIFF* tif, u_i - uint32* stripbytecount; - (void) TIFFGetField(tif, TIFFTAG_STRIPBYTECOUNTS, &stripbytecount); - tstrip_t strip; -- u_long totdata = 0; -+ uint32 totdata = 0; - for (strip = 0; strip < nstrips; strip++) - totdata += stripbytecount[strip]; - /* diff --git a/comms/hylafax/patches/patch-ba b/comms/hylafax/patches/patch-ba new file mode 100644 index 00000000000..c4bf6cab99e --- /dev/null +++ b/comms/hylafax/patches/patch-ba @@ -0,0 +1,20 @@ +$NetBSD: patch-ba,v 1.1 2005/10/30 20:14:07 adrianp Exp $ + +--- util/faxcron.sh.in.orig 2005-10-30 19:13:07.000000000 +0000 ++++ util//faxcron.sh.in +@@ -69,9 +69,12 @@ TEE=tee + UPDATE="date +'%D %H:%M' >$LAST" + + # security +-TMPDIR=/tmp/.faxcron.sh$$ +-rm -rf $TMPDIR +-mkdir $TMPDIR || exit 1 ++TMPDIR=`(mktemp -d /tmp/.faxcron.XXXXXX) 2>/dev/null` ++if test X$TMPDIR = X; then ++ TMPDIR=/tmp/.faxcron$$ ++fi ++@RM@ -fr $TMPDIR ++(umask 077 ; mkdir $TMPDIR) || exit 1 + + JUNK=$TMPDIR/faxjunk$$ # temp file used multiple times + AWKTMP=$TMPDIR/faxawk$$ # temp file for awk program diff --git a/comms/hylafax/patches/patch-bb b/comms/hylafax/patches/patch-bb new file mode 100644 index 00000000000..cb141148746 --- /dev/null +++ b/comms/hylafax/patches/patch-bb @@ -0,0 +1,28 @@ +$NetBSD: patch-bb,v 1.1 2005/10/30 20:14:07 adrianp Exp $ + +--- util/recvstats.sh.in.orig 2005-10-30 19:15:58.000000000 +0000 ++++ util/recvstats.sh.in +@@ -142,14 +142,15 @@ esac + # + # Generate an awk program to process the statistics file. + # +-tmpAwk=/tmp/xferfax$$ +-trap "rm -f $tmpAwk; exit 1" 0 1 2 15 +- +-# security +-rm -rf $tmpAwk +-${NOCLOBBER_ON} +-> $tmpAwk || exit 1 +-${NOCLOBBER_OFF} ++TMPDIR=`(mktemp -d /tmp/.recvstats.XXXXXX) 2>/dev/null` ++if test X$TMPDIR = X; then ++ TMPDIR=/tmp/.recvstats$$ ++fi ++ ++@RM@ -fr $TMPDIR ++(umask 077 ; mkdir $TMPDIR) || exit 1 ++tmpAwk=$TMPDIR/xferfax$$ ++trap "@RM@ -f $tmpAwk; @RM@ -fr $TMPDIR; exit 1" 0 1 2 15 + + ($CAT<<'EOF' + # diff --git a/comms/hylafax/patches/patch-bc b/comms/hylafax/patches/patch-bc new file mode 100644 index 00000000000..cf2c5c78264 --- /dev/null +++ b/comms/hylafax/patches/patch-bc @@ -0,0 +1,21 @@ +$NetBSD: patch-bc,v 1.1 2005/10/30 20:14:07 adrianp Exp $ + +--- util/xferfaxstats.sh.in.orig 2005-10-30 19:24:06.000000000 +0000 ++++ util/xferfaxstats.sh.in +@@ -169,8 +169,14 @@ esac + # + # Generate an awk program to process the statistics file. + # +-tmpAwk=/tmp/xferfax$$ +-trap "rm -f $tmpAwk; exit 1" 0 1 2 15 ++TMPDIR=`(mktemp -d /tmp/.xferfaxstats.XXXXXX) 2>/dev/null` ++if test X$TMPDIR = X; then ++ TMPDIR=/tmp/.xferfaxstats$$ ++fi ++@RM@ -fr $TMPDIR ++(umask 077 ; mkdir $TMPDIR) || exit 1 ++tmpAwk=$TMPDIR/xferfax$$ ++trap "@RM@ -fr $TMPDIR; exit 1" 0 1 2 15 + + ($CAT<<'EOF' + # diff --git a/comms/hylafax/patches/patch-bd b/comms/hylafax/patches/patch-bd new file mode 100644 index 00000000000..85da3c45f7a --- /dev/null +++ b/comms/hylafax/patches/patch-bd @@ -0,0 +1,38 @@ +$NetBSD: patch-bd,v 1.1 2005/10/30 20:14:07 adrianp Exp $ + +--- util/Transport.c++.orig 2005-10-30 19:41:36.000000000 +0000 ++++ util/Transport.c++ +@@ -27,7 +27,9 @@ + #include "Transport.h" + #include "FaxClient.h" + #include "InetTransport.h" ++#if CONFIG_UNIXTRANSPORT + #include "UnixTransport.h" ++#endif + #include "Sys.h" + + #include +@@ -50,17 +52,23 @@ Transport::getTransport(FaxClient& clien + * An unqualified destination; look for + * the best available transport facility. + */ ++#if CONFIG_UNIXTRANPSORT + if (UnixTransport::isA(FAX_DEFUNIX)) { + client.setHost(FAX_DEFUNIX); + return *new UnixTransport(client); + } else { ++#endif + client.setHost(FAX_DEFHOST); + return *new InetTransport(client); ++#if CONFIG_UNIXTRANPSORT + } ++#endif + } else { ++#if CONFIG_UNIXTRANPSORT + if (UnixTransport::isA(address)) + return *new UnixTransport(client); + else ++#endif + return *new InetTransport(client); + } + } diff --git a/comms/hylafax/patches/patch-be b/comms/hylafax/patches/patch-be new file mode 100644 index 00000000000..28abb251c0e --- /dev/null +++ b/comms/hylafax/patches/patch-be @@ -0,0 +1,19 @@ +$NetBSD: patch-be,v 1.1 2005/10/30 20:14:07 adrianp Exp $ + +--- util/UnixTransport.c++.orig 2005-10-30 19:44:31.000000000 +0000 ++++ util/UnixTransport.c++ +@@ -31,13 +31,13 @@ + UnixTransport::UnixTransport(FaxClient& c) : Transport(c) {} + UnixTransport::~UnixTransport() {} + ++#if CONFIG_UNIXTRANPSORT + bool + UnixTransport::isA(const char* address) + { + return Sys::isSocketFile(address); + } + +-#if CONFIG_UNIXTRANSPORT + #include "Socket.h" + + extern "C" { -- cgit v1.2.3