# Change the 0 on the following line to 1 for beta release versions %if 0 %global beta rc1 %endif # Use "rpmbuild --define 'suse_version 1'" to build for SuSE system %global rpmrel 1 Name: pptp Version: 1.8.0 Release: %{?beta:0.%{beta}.}%{rpmrel}%{?suse_version:suse}%{?dist} Summary: Point-to-Point Tunneling Protocol (PPTP) Client %if %{?suse_version:0}%{!?suse_version:1} Group: Applications/Internet %else Group: Productivity/Networking/Security %endif Distribution: PPTP Client Project License: GPLv2+ URL: http://pptpclient.sourceforge.net/ Source0: http://downloads.sf.net/pptpclient/pptp-%{version}.tar.gz Source1: pptp-tmpfs.conf Patch5: pptp-1.7.2-pptpsetup-mppe-pppd.patch BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(id -nu) BuildRequires: /usr/bin/pod2man Obsoletes: pptp-scripts <= 1.6.0 pptp-linux <= 1.6.0 Provides: pptp-linux = %{version}-%{release}, pptp-scripts = %{version}-%{release} Requires: ppp >= 2.4.2, /sbin/ip %if 0%{?fedora} > 14 Requires: systemd-units %endif %description Client for the proprietary Microsoft Point-to-Point Tunneling Protocol, PPTP. Allows connection to a PPTP based VPN as used by employers and some cable and ADSL service providers. Requires MPPE support in kernel.%{?suse_version: Use the ppp-mppe package.} %package setup Summary: PPTP Tunnel Configuration Script Group: Applications/Internet Requires: %{name} = %{version}-%{release} %description setup This package provides a simple configuration script for setting up PPTP tunnels. %prep %setup -q # Don't check for MPPE capability in pppd at all because we require # pppd ≥ 2.4.2, which includes MPPE support (#502967) %patch5 -p1 -b .mppe-pppd # Pacify rpmlint perl -pi -e 's/install -o root -m 555 pptp/install -m 755 pptp/;' Makefile %build OUR_CFLAGS="-Wall %{optflags} -Wextra -Wstrict-aliasing=2 -Wnested-externs -Wstrict-prototypes" make %{?_smp_mflags} CFLAGS="$OUR_CFLAGS" IP=/sbin/ip %install rm -rf %{buildroot} make DESTDIR=%{buildroot} install install -d -m 750 %{buildroot}%{_localstatedir}/run/pptp # Make sure /var/run/pptp exists at boot time for systems # with /var/run on tmpfs (#656672) %if 0%{?fedora} > 14 install -d -m 755 %{buildroot}%{_prefix}/lib/tmpfiles.d install -p -m 644 %{SOURCE1} %{buildroot}%{_prefix}/lib/tmpfiles.d/pptp.conf %endif %clean rm -rf %{buildroot} %files %defattr(-,root,root,-) %doc AUTHORS COPYING DEVELOPERS NEWS README TODO USING %doc ChangeLog Documentation/DESIGN.PPTP PROTOCOL-SECURITY %if 0%{?fedora} > 14 %{_prefix}/lib/tmpfiles.d/pptp.conf %endif %{_sbindir}/pptp %{_mandir}/man8/pptp.8* %dir %attr(750,root,root) %{_localstatedir}/run/pptp/ %config(noreplace) %{_sysconfdir}/ppp/options.pptp %files setup %defattr(-,root,root,-) %{_sbindir}/pptpsetup %{_mandir}/man8/pptpsetup.8* %changelog * Wed Oct 23 2013 Paul Howarth 1.8.0-1 - Update to 1.8.0 - Options file, fix option documentation and links - Fix many warnings - Fix parallel build failure - Fix call disconnect notify - Add --nohostroute option to disable routing calls - Add --rtmark option for Linux policy routing - Move free of conn struct out of main loop - Avoid using conn struct after it is freed - Correct response to call disconnect notify - Avoid superfluous MPPE capability checks in pptpsetup - Retain permissions on chap-secrets, closes RH BZ #492090 - Compilation fixes for older distributions of Linux - Port routing change feature for Solaris - Add IP_BINARY - Add include file build dependencies - Drop all upstreamed patches - BR: /usr/bin/pod2man for generation of pptpsetup man page - Don't hard-code /etc (RHBZ#880574) * Fri Aug 31 2012 Paul Howarth 1.7.2-17 - Add note in options.pptp about MPPE not being available in FIPS mode (RHBZ#845112) - Add note in options.pptp about PPTP with MSCHAP-V2 being insecure - Add patch to fix highly-parallel build (e.g. -j16) - Add additional compiler warning flags to highlight questionable code - Add patch to fix comparisons between signed and unsigned integers - Add patch to fix const usage - Add patch to fix missing field initializers - Add patch to suppress warnings about possibly unused variables - Add patch to fix declarations that are not prototypes - Add patch to fix warnings about nested externs - Add patch to fix dubious typecasts that violate strict-aliasing rules - Add upstream patch to support setting SO_MARK for the PPTP TCP control connection as well as on the GRE packets - Add upstream patch to implement the --nohostroute option - Add patch to fix broken Call-Disconnect-Notify code - Update the FSF address references and GPLv2 license text - Nobody else likes macros for commands - Add /usr/lib/tmpfiles.d/pptp.conf to create /var/run/pptp at boot time for systems with /var/run on tmpfs (RHBZ#656672) [Fedora 15 onwards only] - Require systemd-units for ownership of /usr/lib/tmpfiles.d directory - Split pptpsetup into subpackage to avoid perl dependency (RHBZ#524972) * Tue Jun 15 2010 Paul Howarth 1.7.2-5 - Add some fixes from CVS: - Fix waitpid usage - Move free of connection struct out of main loop - Avoid using connection struct after it is freed * Mon Aug 3 2009 Paul Howarth 1.7.2-4 - Don't check for MPPE capability in kernel and pppd unless we're creating a tunnel that requires encryption - Don't check for MPPE capability in pppd at all because we require pppd >= 2.4.2, which includes MPPE support (RHBZ#502967) - Retain permissions on /etc/ppp/chap-secrets when using pptpsetup (RHBZ#492090) - Use upstream versions of patches - Re-enable parallel build; Makefile dependencies now fixed - Use perl rather than sed to edit Makefile, for spec compatibility with ancient distro releases - Don't package INSTALL file, not of value to end users - Don't remove CVS directories - should be none present in the first place - Define RPM macros in global scope * Mon May 19 2008 Paul Howarth 1.7.2-3 - Add dependency on /sbin/ip - Disable parallel make - object files are missing dependency on config.h * Mon May 19 2008 Paul Howarth 1.7.2-2 - Use /sbin/ip, not /bin/ip for routing * Wed May 14 2008 Paul Howarth 1.7.2-1 - Update to 1.7.2 - Include new script and manpage: pptpsetup - Update declaration patch (original problem fixed, similar issues introduced in different files) - Add patch to remove reference to stropts.h, not shipped in F9 onwards and only needed for Solaris * Tue Jan 8 2008 Paul Howarth 1.7.1-5 - Old distributions like RHL7/8 don't have a sed that supports the "-i" option, so use perl to do inline edits instead - Apply patch to declare local variables at the start of functions, needed to build on old distributions like RHL7/8 * Mon Nov 12 2007 Paul Howarth 1.7.1-4 - Change download URL from df.sf.net to downloads.sf.net - Clarify license as GPL version 2 or later - Add optional dist tag - Add blank lines between spec changelog entries - Use versioned obsoletes * Mon Feb 13 2006 Paul Howarth 1.7.1-3 - remove buildroot unconditionally in %%clean and %%install - don't use macros in build-time command paths, hardcode them instead - add PROTOCOL-SECURITY as %%doc * Mon Feb 13 2006 James Cameron 1.7.1-2 - update to 1.7.1 * Wed Aug 10 2005 Paul Howarth 1.7.0-2 - own directory %%{_localstatedir}/run/pptp * Thu Jul 28 2005 Paul Howarth 1.7.0-1 - define %%{__id_u} if it's not already done (e.g. on Mandriva) - explictly provide version/release for Provides: - use full URL for source - add URL tag - move changelog to end of spec file - do parallel makes if possible - make sure directories have correct permissions - don't overwrite user-edited options.pptp - add DEVELOPERS, ChangeLog & DESIGN.PPTP as %%doc - install pptp mode 755 to keep rpmlint happy - no longer need other mode fixes - use system-default optflags - edit Makefile to prevent attempted chown in %%install * Wed Jul 27 2005 James Cameron 1.7.0-0 - new upstream version 1.7.0. * Fri Feb 18 2005 Paul Howarth 1.6.0-1 - changed deprecated Copyright: tag to License: - more macros for portability - group is Productivity/Networking/Security if built for SuSE system - use upstream Makefile for %%install after clearing out buildroot - add macro support for 'beta' releases, with 0.beta.rpmrel release ID, with removal of `CVS' directories if required - add "Provides: pptp-linux" and "Obsoletes: pptp-linux" to handle name change nicely - remove redundant %%attr tags from file list * Fri Feb 18 2005 James Cameron 1.6.0-0 - move options.pptp to main Makefile - rename package to pptp as planned - remove pptp-command (has been deprecated since 1.2.0; no active maintainer and has caused much mailing list traffic; replacement is pptpconfig) - new upstream version 1.6.0. * Tue Jun 22 2004 James Cameron - remove /etc/pptp.d as unused - remove RFC and development documentation - new upstream version 1.5.0. * Mon Nov 10 2003 James Cameron - new upstream version 1.4.0. * Wed Jun 11 2003 James Cameron - new upstream version 1.3.1. * Tue Jun 10 2003 James Cameron - new upstream version 1.3.0. * Wed Jan 15 2003 James Cameron - rewrite INSTALL. - add man page to install target. - fix response to dropped packets. - fix man page, address must be before options. * Mon Dec 30 2002 James Cameron - adopt man page contributed by Thomas Quinot. - close stderr to prevent holding open ssh sessions. - minor hint added in case of EIO on read() of pty. - support synchronous HDLC ppp encoding. Synchronous mode results in an important improvement of the CPU efficiency. - handle out-of-order packets arriving on the GRE socket by buffering. - bind GRE socket early to prevent ICMP Unreachable response by client. * Fri Mar 22 2002 James Cameron - new release engineer. - avoid requiring ppp-mppe. - allow activation as a psuedo-tty child process from pppd. - ADSL modem quirks handler by mulix@actcom.co.il. - Orckit ADSL modem compatibility. - Cisco PIX compatibility. - enhance bad FCS error message. - ported to FreeBSD and NetBSD.