diff options
Diffstat (limited to 'source/n/ppp')
-rw-r--r-- | source/n/ppp/ppp.CVE-2015-3310.diff | 11 | ||||
-rwxr-xr-x | source/n/ppp/ppp.SlackBuild | 38 | ||||
-rw-r--r-- | source/n/ppp/ppp.crypt.diff | 64 | ||||
-rw-r--r-- | source/n/ppp/ppp.slack.diff | 97 | ||||
-rw-r--r-- | source/n/ppp/servers | 4 |
5 files changed, 113 insertions, 101 deletions
diff --git a/source/n/ppp/ppp.CVE-2015-3310.diff b/source/n/ppp/ppp.CVE-2015-3310.diff new file mode 100644 index 00000000..ecf53ce4 --- /dev/null +++ b/source/n/ppp/ppp.CVE-2015-3310.diff @@ -0,0 +1,11 @@ +--- ./pppd/plugins/radius/util.c.orig 2015-04-17 11:43:59.687374237 -0500 ++++ ./pppd/plugins/radius/util.c 2015-04-17 11:45:12.612379499 -0500 +@@ -77,7 +77,7 @@ + static unsigned short int cnt = 0; + sprintf (buf, "%08lX%04X%02hX", + (unsigned long int) time (NULL), +- (unsigned int) getpid (), ++ (unsigned int) getpid () % 65535, + cnt & 0xFF); + cnt++; + return buf; diff --git a/source/n/ppp/ppp.SlackBuild b/source/n/ppp/ppp.SlackBuild index 3c229953..daaf1e3a 100755 --- a/source/n/ppp/ppp.SlackBuild +++ b/source/n/ppp/ppp.SlackBuild @@ -1,6 +1,6 @@ #!/bin/sh -# Copyright 2008, 2009, 2010, 2013 Patrick J. Volkerding, Sebeka, MN, USA +# Copyright 2008, 2009, 2010, 2013, 2015 Patrick J. Volkerding, Sebeka, MN, USA # All rights reserved. # # Redistribution and use of this script, with or without modification, is @@ -20,10 +20,10 @@ # OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF # ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -VERSION=2.4.5 -RADVER=0.3.2 +VERSION=2.4.7 +RADVER=1.1.6 PPPVER=1.98 -BUILD=${BUILD:-2} +BUILD=${BUILD:-1} NUMJOBS=${NUMJOBS:-" -j7 "} @@ -55,7 +55,7 @@ echo "| ppp-$VERSION |" echo "+============+" cd $TMP rm -rf ppp-$VERSION -tar xvf $CWD/ppp-$VERSION.tar.bz2 || exit 1 +tar xvf $CWD/ppp-$VERSION.tar.xz || exit 1 cd ppp-$VERSION || exit 1 chown -R root:root . find . \ @@ -66,20 +66,18 @@ find . \ zcat $CWD/ppp.slack.diff.gz | patch -p1 --verbose --backup --suffix=.orig || exit 1 sed -i -e "s#lib/pppd#lib${LIBDIRSUFFIX}/pppd#g" $(grep -lr 'lib/pppd' *) -zcat $CWD/ppp.crypt.diff.gz | patch -p1 --verbose || exit 1 # This conflicts with the header in 3.5+ kernels: rm -f include/linux/if_pppol2tp.h +zcat $CWD/ppp.CVE-2015-3310.diff.gz | patch -p1 --verbose || exit 1 + ./configure \ --prefix=/usr \ --libdir=/usr/lib${LIBDIRSUFFIX} make $NUMJOBS || make || exit 1 make install DESTDIR=$PKG/usr -mv $PKG/usr/share/man $PKG/usr -rmdir $PKG/usr/share - # Install PPP config files: mkdir -p $PKG/etc/ppp cp -a etc.ppp/* $PKG/etc/ppp @@ -102,24 +100,22 @@ cp -a \ $PKG/usr/doc/ppp-$VERSION echo "+====================+" -echo "| radiusclient-$RADVER |" +echo "| freeradius-client-$RADVER |" echo "+====================+" cd $TMP -rm -rf radiusclient-$RADVER -tar xf $CWD/radiusclient-$RADVER.tar.bz2 || exit 1 -cd radiusclient-$RADVER || exit 1 +rm -rf freeradius-client-$RADVER +tar xf $CWD/freeradius-client-$RADVER.tar.xz || exit 1 +cd freeradius-client-$RADVER || exit 1 chown -R root:root . -#cp /usr/share/libtool/config.{guess,sub} . # libtool-1.x -cp /usr/share/libtool/config/config.{guess,sub} . # libtool-2.x ./configure \ --prefix=/usr \ --libdir=/usr/lib${LIBDIRSUFFIX} \ - --sysconfdir=/etc + --sysconfdir=/etc \ + --build=$ARCH-slackware-linux make $NUMJOBS || make || exit 1 make install DESTDIR=$PKG || exit 1 zcat $CWD/radius.msdict.gz > $PKG/etc/radiusclient/dictionary.microsoft zcat $CWD/realms.gz > $PKG/etc/radiusclient/realms -zcat $CWD/servers.gz > $PKG/etc/radiusclient/servers ( cd $PKG/etc/radiusclient chmod 600 realms servers mv issue issue.new @@ -127,18 +123,18 @@ zcat $CWD/servers.gz > $PKG/etc/radiusclient/servers mv realms realms.new mv servers servers.new ) -mkdir -p $PKG/usr/doc/radiusclient-$RADVER +mkdir -p $PKG/usr/doc/freeradius-client-$RADVER cp -a \ BUGS CHANGES COPYRIGHT README README.radexample doc/instop.html \ - $PKG/usr/doc/radiusclient-$RADVER -chmod 644 $PKG/usr/doc/radiusclient-$RADVER/* + $PKG/usr/doc/freeradius-client-$RADVER +chmod 644 $PKG/usr/doc/freeradius-client-$RADVER/* echo "+===============+" echo "| pppsetup-$PPPVER |" echo "+===============+" cd $TMP rm -rf pppsetup-$PPPVER -tar xvf $CWD/pppsetup-$PPPVER.tar.gz || exit 1 +tar xvf $CWD/pppsetup-$PPPVER.tar.xz || exit 1 cd pppsetup-$PPPVER || exit 1 chown -R root:root . zcat $CWD/pppsetup-1.98.slack.diff.gz | patch -p1 --backup || exit diff --git a/source/n/ppp/ppp.crypt.diff b/source/n/ppp/ppp.crypt.diff deleted file mode 100644 index 2e39af2b..00000000 --- a/source/n/ppp/ppp.crypt.diff +++ /dev/null @@ -1,64 +0,0 @@ -From 04c4348108d847e034dd91066cc6843f60d71731 Mon Sep 17 00:00:00 2001 -From: Paul Mackerras <paulus@samba.org> -Date: Sun, 20 May 2012 14:14:55 +1000 -Subject: [PATCH] pppd: Don't crash if crypt() returns NULL - -It is possible for crypt() to return NULL under some circumstances, -so we need to check the return value before passing it to strcmp(). -If we do get NULL from crypt(), treat it as an authentication failure. - -Reported-by: Paul Wouters <pwouters@redhat.com> -Signed-off-by: Paul Mackerras <paulus@samba.org> ---- - pppd/auth.c | 8 +++++--- - pppd/session.c | 7 +++++-- - 2 files changed, 10 insertions(+), 5 deletions(-) - -diff --git a/pppd/auth.c b/pppd/auth.c -index fb71944..883b7f5 100644 ---- a/pppd/auth.c -+++ b/pppd/auth.c -@@ -1442,9 +1442,11 @@ check_passwd(unit, auser, userlen, apasswd, passwdlen, msg) - } - if (secret[0] != 0 && !login_secret) { - /* password given in pap-secrets - must match */ -- if ((cryptpap || strcmp(passwd, secret) != 0) -- && strcmp(crypt(passwd, secret), secret) != 0) -- ret = UPAP_AUTHNAK; -+ if (cryptpap || strcmp(passwd, secret) != 0) { -+ char *cbuf = crypt(passwd, secret); -+ if (!cbuf || strcmp(cbuf, secret) != 0) -+ ret = UPAP_AUTHNAK; -+ } - } - } - fclose(f); -diff --git a/pppd/session.c b/pppd/session.c -index 32901a2..56385dd 100644 ---- a/pppd/session.c -+++ b/pppd/session.c -@@ -178,6 +178,7 @@ session_start(flags, user, passwd, ttyName, msg) - bool try_session = 0; - #else /* #ifdef USE_PAM */ - struct passwd *pw; -+ char *cbuf; - #ifdef HAS_SHADOW - struct spwd *spwd; - struct spwd *getspnam(); -@@ -348,8 +349,10 @@ session_start(flags, user, passwd, ttyName, msg) - /* - * If no passwd, don't let them login if we're authenticating. - */ -- if (pw->pw_passwd == NULL || strlen(pw->pw_passwd) < 2 -- || strcmp(crypt(passwd, pw->pw_passwd), pw->pw_passwd) != 0) -+ if (pw->pw_passwd == NULL || strlen(pw->pw_passwd) < 2) -+ return SESSION_FAILED; -+ cbuf = crypt(passwd, pw->pw_passwd); -+ if (!cbuf || strcmp(cbuf, pw->pw_passwd) != 0) - return SESSION_FAILED; - } - --- -1.7.10.4 - - diff --git a/source/n/ppp/ppp.slack.diff b/source/n/ppp/ppp.slack.diff index dafd0d3e..6332324a 100644 --- a/source/n/ppp/ppp.slack.diff +++ b/source/n/ppp/ppp.slack.diff @@ -1,7 +1,40 @@ -diff -r -u ppp-2.4.2.orig/pppd/Makefile.linux ppp-2.4.2/pppd/Makefile.linux ---- ppp-2.4.2.orig/pppd/Makefile.linux 2003-11-27 13:55:19.000000000 -0800 -+++ ppp-2.4.2/pppd/Makefile.linux 2004-02-22 21:36:11.000000000 -0800 -@@ -31,7 +31,7 @@ +diff -Nur ppp-2.4.7.orig/chat/Makefile.linux ppp-2.4.7/chat/Makefile.linux +--- ppp-2.4.7.orig/chat/Makefile.linux 2014-08-09 07:31:39.000000000 -0500 ++++ ppp-2.4.7/chat/Makefile.linux 2014-08-09 17:10:27.423374415 -0500 +@@ -2,7 +2,7 @@ + + DESTDIR = $(INSTROOT)@DESTDIR@ + BINDIR = $(DESTDIR)/sbin +-MANDIR = $(DESTDIR)/share/man/man8 ++MANDIR = $(DESTDIR)/man/man8 + + CDEF1= -DTERMIOS # Use the termios structure + CDEF2= -DSIGTYPE=void # Standard definition +diff -Nur ppp-2.4.7.orig/linux/Makefile.top ppp-2.4.7/linux/Makefile.top +--- ppp-2.4.7.orig/linux/Makefile.top 2014-08-09 07:31:39.000000000 -0500 ++++ ppp-2.4.7/linux/Makefile.top 2014-08-09 17:11:14.156384165 -0500 +@@ -3,7 +3,7 @@ + DESTDIR = $(INSTROOT)@DESTDIR@ + BINDIR = $(DESTDIR)/sbin + INCDIR = $(DESTDIR)/include +-MANDIR = $(DESTDIR)/share/man ++MANDIR = $(DESTDIR)/man + ETCDIR = $(INSTROOT)@SYSCONF@/ppp + + # uid 0 = root +diff -Nur ppp-2.4.7.orig/pppd/Makefile.linux ppp-2.4.7/pppd/Makefile.linux +--- ppp-2.4.7.orig/pppd/Makefile.linux 2014-08-09 07:31:39.000000000 -0500 ++++ ppp-2.4.7/pppd/Makefile.linux 2014-08-09 17:07:27.458308345 -0500 +@@ -6,7 +6,7 @@ + # Default installation locations + DESTDIR = $(INSTROOT)@DESTDIR@ + BINDIR = $(DESTDIR)/sbin +-MANDIR = $(DESTDIR)/share/man/man8 ++MANDIR = $(DESTDIR)/man/man8 + INCDIR = $(DESTDIR)/include + + TARGETS = pppd +@@ -32,7 +32,7 @@ # CC = gcc # @@ -10,14 +43,7 @@ diff -r -u ppp-2.4.2.orig/pppd/Makefile.linux ppp-2.4.2/pppd/Makefile.linux LIBS = # Uncomment the next 2 lines to include support for Microsoft's -@@ -61,13 +61,13 @@ - - HAS_SHADOW=y - #USE_PAM=y --#HAVE_INET6=y -+HAVE_INET6=y - - # Enable plugins +@@ -68,7 +68,7 @@ PLUGIN=y # Enable Microsoft proprietary Callback Control Protocol @@ -26,3 +52,50 @@ diff -r -u ppp-2.4.2.orig/pppd/Makefile.linux ppp-2.4.2/pppd/Makefile.linux # Enable EAP SRP-SHA1 authentication (requires libsrp) #USE_SRP=y +diff -Nur ppp-2.4.7.orig/pppd/plugins/Makefile.linux ppp-2.4.7/pppd/plugins/Makefile.linux +--- ppp-2.4.7.orig/pppd/plugins/Makefile.linux 2014-08-09 07:31:39.000000000 -0500 ++++ ppp-2.4.7/pppd/plugins/Makefile.linux 2014-08-09 17:11:10.734383553 -0500 +@@ -6,7 +6,7 @@ + + DESTDIR = $(INSTROOT)@DESTDIR@ + BINDIR = $(DESTDIR)/sbin +-MANDIR = $(DESTDIR)/share/man/man8 ++MANDIR = $(DESTDIR)/man/man8 + LIBDIR = $(DESTDIR)/lib/pppd/$(VERSION) + + SUBDIRS := rp-pppoe pppoatm pppol2tp +diff -Nur ppp-2.4.7.orig/pppd/plugins/radius/Makefile.linux ppp-2.4.7/pppd/plugins/radius/Makefile.linux +--- ppp-2.4.7.orig/pppd/plugins/radius/Makefile.linux 2014-08-09 07:31:39.000000000 -0500 ++++ ppp-2.4.7/pppd/plugins/radius/Makefile.linux 2014-08-09 17:11:08.470383139 -0500 +@@ -4,7 +4,7 @@ + # + + DESTDIR = $(INSTROOT)@DESTDIR@ +-MANDIR = $(DESTDIR)/share/man/man8 ++MANDIR = $(DESTDIR)/man/man8 + LIBDIR = $(DESTDIR)/lib/pppd/$(VERSION) + + VERSION = $(shell awk -F '"' '/VERSION/ { print $$2; }' ../../patchlevel.h) +diff -Nur ppp-2.4.7.orig/pppdump/Makefile.linux ppp-2.4.7/pppdump/Makefile.linux +--- ppp-2.4.7.orig/pppdump/Makefile.linux 2014-08-09 07:31:39.000000000 -0500 ++++ ppp-2.4.7/pppdump/Makefile.linux 2014-08-09 17:10:35.672376354 -0500 +@@ -1,6 +1,6 @@ + DESTDIR = $(INSTROOT)@DESTDIR@ + BINDIR = $(DESTDIR)/sbin +-MANDIR = $(DESTDIR)/share/man/man8 ++MANDIR = $(DESTDIR)/man/man8 + + CFLAGS= -O -I../include/net + OBJS = pppdump.o bsd-comp.o deflate.o zlib.o +diff -Nur ppp-2.4.7.orig/pppstats/Makefile.linux ppp-2.4.7/pppstats/Makefile.linux +--- ppp-2.4.7.orig/pppstats/Makefile.linux 2014-08-09 07:31:39.000000000 -0500 ++++ ppp-2.4.7/pppstats/Makefile.linux 2014-08-09 17:10:42.293377843 -0500 +@@ -4,7 +4,7 @@ + # + DESTDIR = $(INSTROOT)@DESTDIR@ + BINDIR = $(DESTDIR)/sbin +-MANDIR = $(DESTDIR)/share/man/man8 ++MANDIR = $(DESTDIR)/man/man8 + + PPPSTATSRCS = pppstats.c + PPPSTATOBJS = pppstats.o diff --git a/source/n/ppp/servers b/source/n/ppp/servers deleted file mode 100644 index b061bf93..00000000 --- a/source/n/ppp/servers +++ /dev/null @@ -1,4 +0,0 @@ -#Server Name or Client/Server pair Key -#---------------- --------------- -#portmaster.elemental.net hardlyasecret -#portmaster2.elemental.net donttellanyone |