Commit Graph

24 Commits

Author SHA1 Message Date
Adolf Belka
2d94a852a8 ppp: Fix definition of directory for pid files
- When ppp was updated from version 2.5.0 to e1266c7 I missed that a new configure option
   was introduced. This is --with-runtime-dir=DIR.
- If this option is used then the run time directory for the pid files is defined by that
   DIR entry. If the option is not used then the pid directory is fixed as /var/run/pppd/
- Even if the --runstatedir=DIR option is used then it is ignored if the
   --with-runtime-dir=DIR option is used or not used even though both effectively deal
   with the same aspect.
- Some users in the forum had noticed that they had log messages saying that pid files
   could not be created because the files or directories did not exist. The pid files
   were being tried to be stored in /var/run/pppd/ but the pppd directory did not exist.
- This patch submission adds the --with-runtime-dir=/var/run option to the ppp configure
   command. This basically makes ppp act the same as it used to do previously with version
   2.5.0 and earlier.
- Changing IPFire to use /var/run/pppd/ is not a good idea as then there are several
   locations in IPFire that specify the pid directory location to /var/run/ as hard coded
   path. All of these locations would need to be identified and changed.
- Leaving IPFire to use /var/run means that only the ppp configure command needs to be
   modified.
- I hope that @adamgibbo and @markadewwet will be able to test out this change in CU187
   Testing when it is accepted. Those two users have got the pid error messages.
- Even if the ppp pid file can not be stored ppp will still successfully start. However
   the likelihood is that stoppinf ppp will not work as would be expected. This patch
   ensures that ppp will be able to store its pid files asa required whyen starting up.

Signed-off-by: Adolf Belka <adolf.belka@ipfire.org>
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2024-07-02 09:08:43 +00:00
Adolf Belka
c11817a12d ppp: Update to include bug fixes that should be in 2.5.1 but not yet released
- Update from version 2.5.0 to commit e1266c7
- Update of rootfile
- When ppp-2.5.0 was released it had a bug bin it that the lock and run directories
   had non standard defaults but also that if the directory did not exist ppp just
   ignored it and continued to start but would then have error messages in the logs about
   not being able to cretae the lock file
- This issue was raised in the ppp github issues and a set of patches merged into ppp.
- The plan was written in Nov 2023 that this would be released as 2.5.1, however nearly
   three months later there is no sight of 2.5.1 being released and people continue to
   flag up the lock directory issues and have to apply a workaround to create the directory
   in local.rc
- This patch has taken the zip source tarball of master at the commit e1266c7. The zip
   tarball was then extracted and then tar'd back up as a tar.gz file with the version set
   at e1266c7 rather than master. I could not find any other way to get a source tarball\
   created at a certain commit stage.
- The patch ppp-2.5.0-2-everywhere-O_CLOEXEC-harder.patch had to be updated due to some
   changes in the source files.
- The patch ppp-2.5.0-7-add-configure-check-to-see-if-we-have-struct-sockaddr_ll.patch
   was removed as the changes are now built into the source tarball.
- This will need to be tested thoroughly by people with ppp to confirm that the lock
   directory is created if it doesn't exist on the system. I can't test that as I have
   no access to a ppp connection system.
- For a view of the changelog between 2.5.0 and e1266c7 the github commits list needs to
   be reviewed. https://github.com/ppp-project/ppp/commits/master/?before=e1266c76d1ad39f98f11676e34f180f78c5a510c+35

Signed-off-by: Adolf Belka <adolf.belka@ipfire.org>
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2024-03-19 11:09:15 +00:00
Adolf Belka
3dcbb53a21 ppp: Patch to stop CU179 Testing error msg - pppd uses obsolete (PF_INET, SOCK_PACKET)
- This issue was found by Peter Müller in the CU179 Testing evaluation.
- The issue was found to have already been raised and closed on the ppp github issues page.
- Patch for fix downloaded and applied to this submission.
- When ppp-2.5.1 is released then this patch can be removed.
- update of rootfile not required.

Signed-off-by: Adolf Belka <adolf.belka@ipfire.org>
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2023-08-24 10:10:32 +00:00
Adolf Belka
b5d85855e5 ppp: Bug#13164 - Update configure options to have correct directory for pid
- The original poster of the bug#13164 has already tested out ppp-2.5.0 in CU179 (master)
   and identified that the startup could not find the directory /usr/var/run/. This is due
   to the change in use of the prefix command in 2.5.0 vs 2.4.9 so --localstatedir set to
   /var. runstatedir is then set to localstatedir/run ie /var/run which is then correct
   for IPFire.
- This fix needs to be implemented into CU179 so that the bug poster can test out the update
- Updated rootfile to remove additional empty line

Fixes: Bug#13164
Signed-off-by: Adolf Belka <adolf.belka@ipfire.org>
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2023-08-21 10:01:08 +00:00
Adolf Belka
27a3ef9834 ppp: Fixes bug#13164 - Update to version 2.5.0
- Update from version 2.4.9 to 2.5.0
   This includes breaking changes for third-party plugins but as far as I can see IPFire
    is not using any third party plugins
- Update of rootfile
- Update of patches and sed commands
   - pcap-int.h and if_pppol2tp.h files have not been in source file since at least 2014
   - Some of the patches required updates as additional lines needing to be patched are
      now present. nThis was related to the O_CLOEXEC & SOCK_CLOEXEC related patches
   - connect-errors file location is now defined by a configure command --with-logfile-dir
- install-etcppp is no longer provided. However the install command in this version still
   has the same files available in /etc/ppp as previously. There is a new file,
   openssl.cnf, which I have commented out. If it is required in future it can always be
   uncommented in future releases.
- Build went without any problems with the updated patches.
- I cannot test this as I don't use ppp, however the original bug reporter has agreed to
   test this out when it is released into Testing unless anyone else is capable of testing
   it.
- Changelog
    What's new in ppp-2.5.0.
	The 2.5.0 release is a major release of pppd which contains breaking
	 changes for third-party plugins, a complete revamp of the build-system
	 and that allows for flexibility of configuring features as needed.
	In Summary:
		* Support for PEAP authentication by Eivind Næss and Rustam Kovhaev
		* Support for loading PKCS12 certificate envelopes
		* Adoption of GNU Autoconf / Automake build environment, by Eivind Næss
		  and others.
		* Support for pkgconfig tool has been added by Eivind Næss.
		* Bunch of fixes and cleanup to PPPoE and IPv6 support by Pali Rohár.
		* Major revision to PPPD's Plugin API by Eivind Næss.
		  - Defines in which describes what features was included in pppd
		  - Functions now prefixed with explicit ppp_* to indicate that
		    pppd functions being called.
		  - Header files were renamed to better align with their features,
		    and now use proper include guards
		  - A pppdconf.h file is supplied to allow third-party modules to use
		    the same feature defines pppd was compiled with.
		  - No extern declarations of internal variable names of pppd,
		    continued use of these extern variables are considered
		    unstable.
		* Lots of internal fixes and cleanups for Radius and PPPoE by Jaco Kroon
		* Dropped IPX support, as Linux has dropped support in version 5.15
		  for this protocol.
		* Many more fixes and cleanups.
		* Pppd is no longer installed setuid-root.
		* New pppd options:
		  - ipv6cp-noremote, ipv6cp-nosend, ipv6cp-use-remotenumber,
		    ipv6-up-script, ipv6-down-script
		  - -v, show-options
		  - usepeerwins, ipcp-no-address, ipcp-no-addresses, nosendip
		* On Linux, any baud rate can be set on a serial port provided the
		  kernel serial driver supports that.
	Note that if you have built and installed previous versions of this
	 package and you want to continue having configuration and TDB files in
	 /etc/ppp, you will need to use the --sysconfdir option to ./configure.
	For a list of the changes made during the 2.4 series releases of this
	 package, see the Changes-2.4 file.
	Compression methods.
		This package supports two packet compression methods: Deflate and
		 BSD-Compress.  Other compression methods which are in common use
		 include Predictor, LZS, and MPPC.  These methods are not supported for
		 two reasons - they are patent-encumbered, and they cause some packets
		 to expand slightly, which pppd doesn't currently allow for.
		 BSD-Compress and Deflate (which uses the same algorithm as gzip) don't
		 ever expand packets.

Fixes: bug#13164
Signed-off-by: Adolf Belka <adolf.belka@ipfire.org>
Reviewed-by: Michael Tremer <michael.tremer@ipfire.org>
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2023-08-07 14:10:42 +00:00
Peter Müller
9a7e4d8506 Switch checksums from MD5 to BLAKE2
Historically, the MD5 checksums in our LFS files serve as a protection
against broken downloads, or accidentally corrupted source files.

While the sources are nowadays downloaded via HTTPS, it make sense to
beef up integrity protection for them, since transparently intercepting
TLS is believed to be feasible for more powerful actors, and the state
of the public PKI ecosystem is clearly not helping.

Therefore, this patch switches from MD5 to BLAKE2, updating all LFS
files as well as make.sh to deal with this checksum algorithm. BLAKE2 is
notably faster (and more secure) than SHA2, so the performance penalty
introduced by this patch is negligible, if noticeable at all.

In preparation of this patch, the toolchain files currently used have
been supplied with BLAKE2 checksums as well on
https://source.ipfire.org/.

Cc: Michael Tremer <michael.tremer@ipfire.org>
Signed-off-by: Peter Müller <peter.mueller@ipfire.org>
Acked-by: Michael Tremer <michael.tremeripfire.org>
2022-04-02 14:19:25 +00:00
Peter Müller
aa45d923eb Revert "Revert "ppp: update to 2.4.9""
This reverts commit 2d6e633d7f.

Signed-off-by: Arne Fitzenreiter <arne_f@ipfire.org>
2021-10-22 10:54:07 +00:00
Michael Tremer
2d6e633d7f Revert "ppp: update to 2.4.9"
This reverts commit 0cd9215b56.

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2021-07-02 14:38:28 +00:00
Peter Müller
0cd9215b56 ppp: update to 2.4.9
This is the first ppp release for years, and the project appears to have
a different maintainer (team?) by now. As a result, some of our patches
are no longer necessary as they made it into upstream, while others need
to be adjusted slightly.

In addition, their configure script does not handle commas in CFLAGS
properly, which is why the delimiter for the 'sed' call in it has to be
changed to something neither appearing in a path nor in our CLFAGS set.

The full changelog of this release can be retrieved from
https://ppp.samba.org/README.html and says:

* Support for new EAP (Extensible Authentication Protocol) methods:
  - Support for EAP-TLS, from Jan Just Keijser and others
  - Support for EAP-MSCHAPv2, from Eivind Næss, Thomas Omerzu, Tijs
    Van Buggenhout and others

* New pppd options:
  - chap-timeout
  - chapms-strip-domain
  - replacedefaultroute
  - noreplacedefaultroute
  - ipv6cp-accept-remote
  - lcp-echo-adaptive
  - ip-up-script
  - ip-down-script
  - ca
  - capath
  - cert
  - key
  - crl-dir
  - crl
  - max-tls-version
  - need-peer-eap

* Fixes for CVE-2020-8597 and CVE-2015-3310.

* libpcap is now required when compiling on Linux (previously, if
  libpcap was not present, pppd would be compiled without packet
  filtering support).

* The rp-pppoe plugin has been renamed to pppoe, to distinguish it
  from the upstream rp-pppoe code.  Its options have changed names,
  but the old names are kept as aliases.

* The configure script now supports cross-compilation.

* Many bug fixes and cleanups.

Thanks to Michael for his hint on the ./configure CFLAGS issue.

The second version of this patch correctly updates the
src/patches/ppp/0013-everywhere-O_CLOEXEC-harder.patch patch for the
second hunk in pppd/main.c, where socket permissions have been changed
meanwhile.

Further, it has been successfully tested against a VDSL 100 line in
Germany, using PAP to Easybell via 1&1 L2 BSA. No connectivity issues or
other anomalies have been observed so far.

Signed-off-by: Peter Müller <peter.mueller@ipfire.org>
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2021-04-11 12:21:33 +00:00
Stefan Schantl
5cbcd514de ppp: Add upstream patch to fix bounds check in EAP code.
Signed-off-by: Stefan Schantl <stefan.schantl@ipfire.org>
Signed-off-by: Arne Fitzenreiter <arne_f@ipfire.org>
2020-02-22 15:37:06 +00:00
Stefan Schantl
8f60b4ff30 ppp: Update to 2.4.8
Signed-off-by: Stefan Schantl <stefan.schantl@ipfire.org>
Reviewed-by: Michael Tremer <michael.tremer@ipfire.org>
Signed-off-by: Arne Fitzenreiter <arne_f@ipfire.org>
2020-02-18 17:10:50 +00:00
Michael Tremer
e28e813eeb ppp: Build against openssl
libcrypt has been removed from glibc and openssl
can be used instead for cryptographic operations.

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2018-10-21 22:03:21 +01:00
Peter Müller
eee037b890 update disclaimer in LFS files
Most of these files still used old dates and/or domain names for contact
mail addresses. This is now replaced by an up-to-date copyright line.

Just some housekeeping... :-)

Signed-off-by: Peter Müller <peter.mueller@link38.eu>
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2018-09-10 19:20:36 +01:00
Arne Fitzenreiter
d93a661b2d ppp: fix build with kernel 4.9 headers
Signed-off-by: Arne Fitzenreiter <arne_f@ipfire.org>
2017-02-12 19:50:15 +01:00
Arne Fitzenreiter
d2a08170b9 ppp: update to 2.4.7.
Fix for ms-chap-v2.
fixes #10575.
2014-08-19 16:17:44 +02:00
Michael Tremer
172c1f72c4 ppp: Import some more patches from Fedora. 2014-05-14 20:20:36 +02:00
Michael Tremer
0a511b7693 ppp: Try longer to connect via PPPoE (60 seconds). 2014-05-14 20:02:55 +02:00
Michael Tremer
93b36c3e22 ppp: Update to 2.4.6. 2014-03-26 23:42:05 +01:00
Michael Tremer
11a2fa0571 ppp: Package ignored CFLAGS. 2012-11-11 19:12:29 +01:00
Michael Tremer
20010a5aab ppp: Fix building PPPoE stuff with new headers. 2012-11-11 19:07:41 +01:00
Michael Tremer
6af867f6bb Update ppp to 2.4.5. 2010-06-26 15:58:15 +02:00
ms
70df830214 Ein Paar Dateien fuer die GPLv3 angepasst.
git-svn-id: http://svn.ipfire.org/svn/ipfire/trunk@853 ea5c0bd1-69bd-2848-81d8-4f18e57aeed8
2007-08-29 13:25:32 +00:00
ms
d316437b8d Zwischencommit fuer LFS.
git-svn-id: http://svn.ipfire.org/svn/ipfire/trunk@310 ea5c0bd1-69bd-2848-81d8-4f18e57aeed8
2006-10-08 22:55:09 +00:00
ipfire
cd1a292722 git-svn-id: http://svn.ipfire.org/svn/ipfire/IPFire/source@16 ea5c0bd1-69bd-2848-81d8-4f18e57aeed8 2006-02-15 21:15:54 +00:00