Message ID | 20190906101849.4621-1-alexander.i.mukhin@gmail.com |
---|---|
State | Changes Requested |
Headers | show |
Series | pppd: use uclibc libcrypt instead of openssl | expand |
Hello Alexander, On Fri, 6 Sep 2019 13:18:49 +0300 Alexander Mukhin <alexander.i.mukhin@gmail.com> wrote: > If building with uclibc, fall back to using its cryptographic routines > instead of openssl. This removes unnecessary dependence. > > Signed-off-by: Alexander Mukhin <alexander.i.mukhin@gmail.com> I am surprised: which functions are provided by uClibc that glibc doesn't provide ? Also, what about the musl C library that we support ? Thomas
Hi Thomas, On Fri, Sep 06 2019, Thomas Petazzoni wrote: > On Fri, 6 Sep 2019 13:18:49 +0300 > Alexander Mukhin <alexander.i.mukhin@gmail.com> wrote: > >> If building with uclibc, fall back to using its cryptographic routines >> instead of openssl. This removes unnecessary dependence. >> >> Signed-off-by: Alexander Mukhin <alexander.i.mukhin@gmail.com> > > I am surprised: which functions are provided by uClibc that glibc > doesn't provide ? > > Also, what about the musl C library that we support ? pppd has: depends on !BR2_TOOLCHAIN_USES_MUSL # Use __P() macro all over the tree baruch
Hello Thomas, On Fri, Sep 06, 2019 at 01:35:41PM +0200, Thomas Petazzoni wrote: > I am surprised: which functions are provided by uClibc that glibc > doesn't provide ? According to Fabrice Fontaine's commit 541021, glibc since 2.28 dropped support for DES encryption functions encrypt(), setkey(), etc. But uclibc still provides them.
Hello Alexander, On Fri, 6 Sep 2019 19:31:07 +0300 Alexander Mukhin <alexander.i.mukhin@gmail.com> wrote: > On Fri, Sep 06, 2019 at 01:35:41PM +0200, Thomas Petazzoni wrote: > > I am surprised: which functions are provided by uClibc that glibc > > doesn't provide ? > > According to Fabrice Fontaine's commit 541021, glibc since 2.28 dropped > support for DES encryption functions encrypt(), setkey(), etc. But > uclibc still provides them. OK, thanks for the additional details. Could you send an updated version which explains this in the commit log ? Thanks, Thomas
diff --git a/package/pppd/Config.in b/package/pppd/Config.in index bf05689f53..7db5674bf1 100644 --- a/package/pppd/Config.in +++ b/package/pppd/Config.in @@ -3,7 +3,7 @@ config BR2_PACKAGE_PPPD depends on !BR2_STATIC_LIBS depends on !BR2_TOOLCHAIN_USES_MUSL # Use __P() macro all over the tree depends on BR2_USE_MMU - select BR2_PACKAGE_OPENSSL + select BR2_PACKAGE_OPENSSL if BR2_TOOLCHAIN_USES_GLIBC help An implementation of the Point-to-point protocol. diff --git a/package/pppd/pppd.mk b/package/pppd/pppd.mk index 4dffc17941..be6c443eec 100644 --- a/package/pppd/pppd.mk +++ b/package/pppd/pppd.mk @@ -12,10 +12,14 @@ PPPD_LICENSE_FILES = \ pppd/tdb.c pppd/plugins/pppoatm/COPYING \ pppdump/bsd-comp.c pppd/ccp.c pppd/plugins/passprompt.c +PPPD_MAKE_OPTS = HAVE_INET6=y +ifeq ($(BR2_TOOLCHAIN_USES_GLIBC),y) PPPD_DEPENDENCIES = openssl -PPPD_MAKE_OPTS = \ - HAVE_INET6=y \ - OPENSSL_INCLUDE_DIR=$(STAGING_DIR)/usr/include/openssl +PPPD_MAKE_OPTS += OPENSSL_INCLUDE_DIR=$(STAGING_DIR)/usr/include/openssl +else +PPPD_MAKE_OPTS += USE_CRYPT=y +endif + PPPD_INSTALL_STAGING = YES PPPD_TARGET_BINS = chat pppd pppdump pppstats PPPD_RADIUS_CONF = \
If building with uclibc, fall back to using its cryptographic routines instead of openssl. This removes unnecessary dependence. Signed-off-by: Alexander Mukhin <alexander.i.mukhin@gmail.com> --- package/pppd/Config.in | 2 +- package/pppd/pppd.mk | 10 +++++++--- 2 files changed, 8 insertions(+), 4 deletions(-)