aircrack-ng: fix wrong inclusion of libbsd if detected
Currently aircrack-ng try to link with libbsd if it does detect the library in staging_dir. This is the case with buildbot where every package is selected and compiled. Fix this by adding a pending patch that permits to disable libbsd inclusion even if detected and set the related config flag. aircrack-ng use 2 function of libbsd and it's not worth to include the entire library for 2 simple function for string manipulation. Also add an additional patch that permits to use musl or glibc version of these string functions. Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
This commit is contained in:
parent
9a40592543
commit
bd21652b79
3 changed files with 89 additions and 0 deletions
|
@ -83,6 +83,7 @@ CONFIGURE_ARGS += \
|
|||
--with-libpcap-include=$(STAGING_DIR)/usr/include \
|
||||
--with-libpcap-lib=$(STAGING_DIR)/usr/lib \
|
||||
--without-opt \
|
||||
--with-libbsd=no \
|
||||
\
|
||||
PYTHON=$(PYTHON) \
|
||||
\
|
||||
|
|
|
@ -0,0 +1,58 @@
|
|||
From 0265e79f3c9a27a3ffd186e7d3bcd2f744052605 Mon Sep 17 00:00:00 2001
|
||||
From: Christian Marangi <ansuelsmth@gmail.com>
|
||||
Date: Sat, 28 Oct 2023 17:30:09 +0200
|
||||
Subject: [PATCH] build: add option to disable bsd library inclusion
|
||||
|
||||
It might be needed to disable bsd inclusion and fallback to the compat
|
||||
functions even if bsd headers are detected.
|
||||
|
||||
This is the case when multiple library are cross-compiled and someone
|
||||
wants to explicitly compile aircrack-ng without linking to bsd library.
|
||||
|
||||
With the current implementation, if a bsd header is detected, the bsd
|
||||
library is always linked even if unwanted. Add option to configure this
|
||||
with the combo --with-libbsd=yes|no|auto with auto set by default.
|
||||
|
||||
Also add an extra featurw with introducing the possibility of requiring
|
||||
the bsd library and fail the configure phase.
|
||||
|
||||
Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
|
||||
---
|
||||
build/m4/aircrack_ng_compat.m4 | 24 +++++++++++++++++++++---
|
||||
1 file changed, 21 insertions(+), 3 deletions(-)
|
||||
|
||||
--- a/build/m4/aircrack_ng_compat.m4
|
||||
+++ b/build/m4/aircrack_ng_compat.m4
|
||||
@@ -38,11 +38,29 @@ dnl If you delete this exception stateme
|
||||
dnl program, then also delete it here.
|
||||
|
||||
AC_DEFUN([AIRCRACK_NG_COMPAT], [
|
||||
+AC_ARG_WITH(libbsd,
|
||||
+ [AS_HELP_STRING([--with-libbsd[[=auto|yes|no]]], [use BSD library, [default=auto]])])
|
||||
+
|
||||
+case $with_libbsd in
|
||||
+ yes | "" | auto)
|
||||
+ AC_CHECK_HEADERS([bsd/string.h], [HAVE_BSD_STRING_H=yes])
|
||||
+ AC_CHECK_LIB([bsd], [strlcpy], [:])
|
||||
+ AC_CHECK_FUNCS([strlcpy strlcat], [:])
|
||||
+ ;;
|
||||
+esac
|
||||
|
||||
-AC_CHECK_HEADERS([bsd/string.h], [HAVE_BSD_STRING_H=yes], [HAVE_BSD_STRING_H=no])
|
||||
AM_CONDITIONAL([HAVE_BSD_STRING_H], [test "$HAVE_BSD_STRING_H" = yes])
|
||||
-AC_CHECK_LIB([bsd], [strlcpy], [ LIBS="$LIBS -lbsd" ], [:])
|
||||
-AC_CHECK_FUNCS([strlcpy strlcat], [:])
|
||||
+
|
||||
+if test $with_libbsd != no
|
||||
+then
|
||||
+ if test $ac_cv_lib_bsd_strlcpy = yes
|
||||
+ then
|
||||
+ LIBS="$LIBS -lbsd"
|
||||
+ elif test $with_libbsd = yes
|
||||
+ then
|
||||
+ AC_MSG_ERROR([cannot configure required bsd library])
|
||||
+ fi
|
||||
+fi
|
||||
|
||||
have_bsd=no
|
||||
if test "$cross_compiling" != yes
|
|
@ -0,0 +1,30 @@
|
|||
From 6317063da827732dbc5cc0dd1650ed016bd2927c Mon Sep 17 00:00:00 2001
|
||||
From: Christian Marangi <ansuelsmth@gmail.com>
|
||||
Date: Sun, 29 Oct 2023 14:41:18 +0100
|
||||
Subject: [PATCH] build: support strlcat/strlcpy from musl or recent glibc
|
||||
|
||||
Musl or recent glibc added support for these additional string function,
|
||||
strlcat and strlcpy hence the compat function are not needed and the
|
||||
builtin version can be used instead.
|
||||
|
||||
Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
|
||||
---
|
||||
build/m4/aircrack_ng_compat.m4 | 3 ++-
|
||||
1 file changed, 2 insertions(+), 1 deletion(-)
|
||||
|
||||
--- a/build/m4/aircrack_ng_compat.m4
|
||||
+++ b/build/m4/aircrack_ng_compat.m4
|
||||
@@ -41,11 +41,12 @@ AC_DEFUN([AIRCRACK_NG_COMPAT], [
|
||||
AC_ARG_WITH(libbsd,
|
||||
[AS_HELP_STRING([--with-libbsd[[=auto|yes|no]]], [use BSD library, [default=auto]])])
|
||||
|
||||
+AC_CHECK_FUNCS([strlcpy strlcat], [:])
|
||||
+
|
||||
case $with_libbsd in
|
||||
yes | "" | auto)
|
||||
AC_CHECK_HEADERS([bsd/string.h], [HAVE_BSD_STRING_H=yes])
|
||||
AC_CHECK_LIB([bsd], [strlcpy], [:])
|
||||
- AC_CHECK_FUNCS([strlcpy strlcat], [:])
|
||||
;;
|
||||
esac
|
||||
|
Loading…
Reference in a new issue