From 6ae3f50e34434586079a1d8a10ca61e7190883eb Mon Sep 17 00:00:00 2001 From: Thomas Woerner Date: Mon, 18 Jul 2005 11:55:02 +0000 Subject: [PATCH] [tw] - new version 2.4.3 - updated patches: make, lib64, dontwriteetc, fix, fix64, no_strip, radiusplugin - dropped patches: bpf, signal, pcap, pppoatm, pkgcheck --- ppp-2.4.3-fix.patch | 139 ++++++++++++++++++++++++++++++++++++++++++ ppp-2.4.3-fix64.patch | 10 +++ ppp-2.4.3-make.patch | 91 +++++++++++++++++++++++++++ ppp.spec | 43 ++++++------- 4 files changed, 262 insertions(+), 21 deletions(-) create mode 100644 ppp-2.4.3-fix.patch create mode 100644 ppp-2.4.3-fix64.patch create mode 100644 ppp-2.4.3-make.patch diff --git a/ppp-2.4.3-fix.patch b/ppp-2.4.3-fix.patch new file mode 100644 index 0000000..85a946c --- /dev/null +++ b/ppp-2.4.3-fix.patch @@ -0,0 +1,139 @@ +--- ppp-2.4.3/pppd/plugins/rp-pppoe/discovery.c.fix 2004-11-04 11:07:37.000000000 +0100 ++++ ppp-2.4.3/pppd/plugins/rp-pppoe/discovery.c 2004-11-22 16:00:24.522462124 +0100 +@@ -13,6 +13,8 @@ + + #include "pppoe.h" + ++void warn __P((char *, ...)); /* log a warning message */ ++ + #ifdef HAVE_SYSLOG_H + #include + #endif +--- ppp-2.4.3/pppd/ipv6cp.c.fix 2004-11-13 03:28:15.000000000 +0100 ++++ ppp-2.4.3/pppd/ipv6cp.c 2004-11-22 16:00:27.049114044 +0100 +@@ -151,6 +151,7 @@ + */ + + #include ++#include + #include + #include + #include +@@ -1064,7 +1065,9 @@ + return (rc); /* Return final code */ + } + +- ++#if defined(SOL2) || defined(__linux__) ++int ether_to_eui64(eui64_t *p_eui64); ++#endif + /* + * ipv6_check_options - check that any IP-related options are OK, + * and assign appropriate defaults. +--- ppp-2.4.3/include/linux/if_pppox.h.fix 2001-12-15 01:34:24.000000000 +0100 ++++ ppp-2.4.3/include/linux/if_pppox.h 2004-11-22 16:00:27.049114044 +0100 +@@ -18,7 +18,7 @@ + + + #include +-#include ++#include + + #ifdef __KERNEL__ + #include +@@ -97,10 +97,10 @@ + #define PTT_GEN_ERR __constant_htons(0x0203) + + struct pppoe_hdr { +-#if defined(__LITTLE_ENDIAN_BITFIELD) ++#if __BYTE_ORDER == __LITTLE_ENDIAN + __u8 ver : 4; + __u8 type : 4; +-#elif defined(__BIG_ENDIAN_BITFIELD) ++#elif __BYTE_ORDER == __BIG_ENDIAN + __u8 type : 4; + __u8 ver : 4; + #else +--- ppp-2.4.3/pppdump/deflate.c.fix 2004-02-02 04:36:46.000000000 +0100 ++++ ppp-2.4.3/pppdump/deflate.c 2004-11-22 16:02:18.071820020 +0100 +@@ -39,6 +39,7 @@ + #include + #include + #include ++#include + #include + #include + #include "ppp_defs.h" +@@ -237,8 +238,8 @@ + { + struct deflate_state *state = (struct deflate_state *) arg; + u_char *rptr, *wptr; +- int rlen, olen, ospace; +- int seq, i, flush, r, decode_proto; ++ int rlen, olen; ++ int seq, r; + + rptr = mi; + if (*rptr == 0) +--- ppp-2.4.3/pppdump/bsd-comp.c.fix 2004-02-02 04:36:46.000000000 +0100 ++++ ppp-2.4.3/pppdump/bsd-comp.c 2004-11-22 16:00:27.052113631 +0100 +@@ -383,7 +383,7 @@ + || options[0] != CI_BSD_COMPRESS || options[1] != CILEN_BSD_COMPRESS + || BSD_VERSION(options[2]) != BSD_CURRENT_VERSION + || BSD_NBITS(options[2]) != db->maxbits +- || decomp && db->lens == NULL) ++ || (decomp && db->lens == NULL)) + return 0; + + if (decomp) { +@@ -556,11 +556,11 @@ + u_int n_bits = db->n_bits; + u_int tgtbitno = 32-n_bits; /* bitno when we have a code */ + struct bsd_dict *dictp; +- int explen, i, seq, len; ++ int explen, seq, len; + u_int incode, oldcode, finchar; + u_char *p, *rptr, *wptr; + int ilen; +- int dlen, space, codelen, extra; ++ int dlen=0, codelen, extra; + + rptr = cmsg; + if (*rptr == 0) +@@ -616,7 +616,7 @@ + } + + if (incode > max_ent + 2 || incode > db->maxmaxcode +- || incode > max_ent && oldcode == CLEAR) { ++ || (incode > max_ent && oldcode == CLEAR)) { + if (db->debug) { + printf("bsd_decomp%d: bad code 0x%x oldcode=0x%x ", + db->unit, incode, oldcode); +--- ppp-2.4.3/pppdump/pppdump.c.fix 2004-02-02 04:36:46.000000000 +0100 ++++ ppp-2.4.3/pppdump/pppdump.c 2004-11-22 16:00:27.054113356 +0100 +@@ -34,6 +34,7 @@ + * OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. + */ + #include ++#include + #include + #include + #include +@@ -191,7 +192,7 @@ + show_time(f, c); + break; + default: +- printf("?%.2x\n"); ++ printf("?%.2x\n", c); + } + } + } +@@ -421,7 +422,7 @@ + show_time(f, c); + break; + default: +- printf("?%.2x\n"); ++ printf("?%.2x\n", c); + } + } + } diff --git a/ppp-2.4.3-fix64.patch b/ppp-2.4.3-fix64.patch new file mode 100644 index 0000000..96aee82 --- /dev/null +++ b/ppp-2.4.3-fix64.patch @@ -0,0 +1,10 @@ +--- ppp-2.4.3/pppd/sha1.c.fix64 2004-10-25 01:28:02.000000000 +0200 ++++ ppp-2.4.3/pppd/sha1.c 2004-11-22 16:44:16.850768926 +0100 +@@ -18,6 +18,7 @@ + + #include + #include /* htonl() */ ++#include /* u_int32_t */ + #include "sha1.h" + + static void diff --git a/ppp-2.4.3-make.patch b/ppp-2.4.3-make.patch new file mode 100644 index 0000000..737956a --- /dev/null +++ b/ppp-2.4.3-make.patch @@ -0,0 +1,91 @@ +--- ppp-2.4.3/pppd/Makefile.linux.make 2004-11-13 13:02:22.000000000 +0100 ++++ ppp-2.4.3/pppd/Makefile.linux 2004-11-22 15:46:49.871309478 +0100 +@@ -30,10 +30,10 @@ + include .depend + endif + +-# CC = gcc ++CC = gcc + # +-COPTS = -O2 -pipe -Wall -g +-LIBS = ++COPTS = -Wall $(RPM_OPT_FLAGS) ++LIBS = -lutil + + # Uncomment the next 2 lines to include support for Microsoft's + # MS-CHAP authentication protocol. Also, edit plugins/radius/Makefile.linux. +@@ -61,8 +61,8 @@ + USE_TDB=y + + HAS_SHADOW=y +-#USE_PAM=y +-#HAVE_INET6=y ++USE_PAM=y ++HAVE_INET6=y + + # Enable plugins + PLUGIN=y +--- ppp-2.4.3/pppd/plugins/Makefile.linux.make 2004-11-14 08:57:35.000000000 +0100 ++++ ppp-2.4.3/pppd/plugins/Makefile.linux 2004-11-22 15:46:49.873309203 +0100 +@@ -1,5 +1,5 @@ + CC = gcc +-COPTS = -O2 -g ++COPTS = $(RPM_OPT_FLAGS) + CFLAGS = $(COPTS) -I.. -I../../include -fPIC + LDFLAGS = -shared + INSTALL = install +--- ppp-2.4.3/pppd/plugins/radius/Makefile.linux.make 2004-11-14 08:02:31.000000000 +0100 ++++ ppp-2.4.3/pppd/plugins/radius/Makefile.linux 2004-11-22 15:49:08.858233692 +0100 +@@ -12,7 +12,7 @@ + INSTALL = install + + PLUGIN=radius.so radattr.so radrealms.so +-CFLAGS=-I. -I../.. -I../../../include -O2 -fPIC -DRC_LOG_FACILITY=LOG_DAEMON ++CFLAGS=-I. -I../.. -I../../../include $(RPM_OPT_FLAGS) -DRC_LOG_FACILITY=LOG_DAEMON + + # Uncomment the next line to include support for Microsoft's + # MS-CHAP authentication protocol. +--- ppp-2.4.3/pppd/plugins/rp-pppoe/Makefile.linux.make 2004-11-14 08:58:37.000000000 +0100 ++++ ppp-2.4.3/pppd/plugins/rp-pppoe/Makefile.linux 2004-11-22 15:46:49.875308929 +0100 +@@ -24,7 +24,7 @@ + # Version is set ONLY IN THE MAKEFILE! Don't delete this! + VERSION=3.3 + +-COPTS=-O2 -g ++COPTS=$(RPM_OPT_FLAGS) + CFLAGS=$(COPTS) -I../../../include/linux + all: rp-pppoe.so pppoe-discovery + +--- ppp-2.4.3/pppdump/Makefile.linux.make 2004-10-31 02:36:52.000000000 +0200 ++++ ppp-2.4.3/pppdump/Makefile.linux 2004-11-22 15:48:16.795379237 +0100 +@@ -2,7 +2,7 @@ + BINDIR = $(DESTDIR)/sbin + MANDIR = $(DESTDIR)/share/man/man8 + +-CFLAGS= -O -I../include/net ++CFLAGS= $(RPM_OPT_FLAGS) -I../include/net + OBJS = pppdump.o bsd-comp.o deflate.o zlib.o + + INSTALL= install +--- ppp-2.4.3/pppstats/Makefile.linux.make 2004-10-31 23:09:03.000000000 +0100 ++++ ppp-2.4.3/pppstats/Makefile.linux 2004-11-22 15:46:49.872309341 +0100 +@@ -10,7 +10,7 @@ + PPPSTATOBJS = pppstats.o + + #CC = gcc +-COPTS = -O ++COPTS = $(RPM_OPT_FLAGS) + COMPILE_FLAGS = -I../include + LIBS = + +--- ppp-2.4.3/chat/Makefile.linux.make 2004-11-03 12:51:47.000000000 +0100 ++++ ppp-2.4.3/chat/Makefile.linux 2004-11-22 15:47:59.445760450 +0100 +@@ -10,7 +10,7 @@ + CDEF4= -DFNDELAY=O_NDELAY # Old name value + CDEFS= $(CDEF1) $(CDEF2) $(CDEF3) $(CDEF4) + +-COPTS= -O2 -g -pipe ++COPTS= $(RPM_OPT_FLAGS) + CFLAGS= $(COPTS) $(CDEFS) + + INSTALL= install diff --git a/ppp.spec b/ppp.spec index 65121b3..b9ad113 100644 --- a/ppp.spec +++ b/ppp.spec @@ -1,31 +1,27 @@ Summary: The PPP (Point-to-Point Protocol) daemon. Name: ppp -Version: 2.4.2 -Release: 7 +Version: 2.4.3 +Release: 1 License: distributable Group: System Environment/Daemons Source0: ftp://ftp.samba.org/pub/ppp/ppp-%{version}.tar.gz Source1: ppp-2.3.5-pamd.conf Source2: ppp.logrotate -Patch0: ppp-2.4.2-make.patch +Patch0: ppp-2.4.3-make.patch Patch1: ppp-2.3.6-sample.patch Patch2: ppp-2.4.2-libutil.patch Patch3: ppp-2.4.1-varargs.patch -Patch4: ppp-2.4.2-lib64.patch -Patch5: ppp-2.4.2-bpf.patch -Patch6: ppp-2.4.2-dontwriteetc.patch +Patch4: ppp-2.4.3-lib64.patch +Patch6: ppp-2.4.3-dontwriteetc.patch Patch7: ppp-2.4.2-pie.patch -Patch8: ppp-2.4.2-fix.patch -Patch9: ppp-2.4.2-fix64.patch -Patch10: ppp-2.4.2-signal.patch +Patch8: ppp-2.4.3-fix.patch +Patch9: ppp-2.4.3-fix64.patch Patch11: ppp-2.4.2-change_resolv_conf.patch -Patch12: ppp-2.4.2-pcap.patch -Patch13: ppp-2.4.2-no_strip.patch +Patch13: ppp-2.4.3-no_strip.patch Patch14: ppp-2.4.2-argv.patch -Patch15: ppp-2.4.2-pppoatm.patch Patch16: ppp-2.4.2-pppoatm-mtu.patch Patch17: ppp-2.4.2-pppoatm-make.patch -Patch18: ppp-2.4.1-pkgcheck.patch +Patch18: ppp-2.4.3-radiusplugin.patch BuildRoot: %{_tmppath}/%{name}-root BuildPrereq: pam-devel, libpcap @@ -47,20 +43,16 @@ organization over a modem and phone line. %patch3 -p1 -b .varargs # patch 4 depends on the -lutil in patch 0 %patch4 -p1 -b .lib64 -%patch5 -p1 -b .bpf %patch6 -p1 -b .dontwriteetc %patch7 -p1 -b .pie %patch8 -p1 -b .fix %patch9 -p1 -b .fix64 -%patch10 -p1 -b .signal %patch11 -p1 -b .change_resolv_conf -%patch12 -p1 -b .pcap %patch13 -p1 -b .no_strip %patch14 -p1 -b .argv -%patch15 -p1 -b .atm %patch16 -p1 -b .atm-mtu %patch17 -p1 -b .atm-make -%patch18 -p1 -b .pkgcheck +%patch18 -p1 -b .radiusplugin find . -type f -name "*.sample" | xargs rm -f @@ -73,7 +65,7 @@ make %install [ "$RPM_BUILD_ROOT" != "/" ] && rm -rf $RPM_BUILD_ROOT -make install DESTDIR=$RPM_BUILD_ROOT MANDIR=$RPM_BUILD_ROOT%{_mandir} BINDIR=$RPM_BUILD_ROOT%{_sbindir} +make install DESTDIR=$RPM_BUILD_ROOT MANDIR=$RPM_BUILD_ROOT%{_mandir}/man8 BINDIR=$RPM_BUILD_ROOT%{_sbindir} LIBDIR=$RPM_BUILD_ROOT%{_libdir}/pppd/%{version}/ ## it shouldn't be SUID root be default #chmod 755 $RPM_BUILD_ROOT/usr/sbin/pppd @@ -85,8 +77,8 @@ mkdir -p $RPM_BUILD_ROOT/etc/pam.d install -m 644 %{SOURCE1} $RPM_BUILD_ROOT/etc/pam.d/ppp # Provide pointers for people who expect stuff in old places -ln -s ../../var/log/ppp/connect-errors $RPM_BUILD_ROOT/etc/ppp/connect-errors -ln -s ../../var/run/ppp/resolv.conf $RPM_BUILD_ROOT/etc/ppp/resolv.conf +mkdir -p $RPM_BUILD_ROOT/var/log/ppp +mkdir -p $RPM_BUILD_ROOT/var/run/ppp # Logrotate script mkdir -p $RPM_BUILD_ROOT/etc/logrotate.d @@ -100,10 +92,13 @@ rm -rf $RPM_BUILD_ROOT %{_sbindir}/chat %{_sbindir}/pppd %{_sbindir}/pppdump +%{_sbindir}/pppoe-discovery %{_sbindir}/pppstats %{_mandir}/man8/chat.8* %{_mandir}/man8/pppd.8* %{_mandir}/man8/pppdump.8* +%{_mandir}/man8/pppd-radattr.8* +%{_mandir}/man8/pppd-radius.8* %{_mandir}/man8/pppstats.8* %{_includedir}/pppd %{_libdir}/pppd @@ -119,6 +114,12 @@ rm -rf $RPM_BUILD_ROOT %changelog +* Mon Jul 18 2005 Thomas Woerner 2.4.3-1 +- new version 2.4.3 + - updated patches: make, lib64, dontwriteetc, fix, fix64, no_strip, + radiusplugin + - dropped patches: bpf, signal, pcap, pppoatm, pkgcheck + * Tue Nov 2 2004 Thomas Woerner 2.4.2-7 - fixed out of bounds memory access, possible DOS