diff -Nru aircrack-ng-1.4/build/m4/aircrack_ng_compiler.m4 aircrack-ng-1.5.2/build/m4/aircrack_ng_compiler.m4 --- aircrack-ng-1.4/build/m4/aircrack_ng_compiler.m4 2018-09-29 19:46:36.000000000 +0000 +++ aircrack-ng-1.5.2/build/m4/aircrack_ng_compiler.m4 2018-12-09 22:53:44.000000000 +0000 @@ -90,6 +90,10 @@ AX_APPEND_FLAG(-std=gnu99, [opt_[]_AC_LANG_ABBREV[]flags]) ]) + AX_CHECK_COMPILE_FLAG([-fno-strict-aliasing], [ + AX_APPEND_FLAG(-fno-strict-aliasing, [opt_[]_AC_LANG_ABBREV[]flags]) + ]) + AX_CHECK_COMPILE_FLAG([-Wpointer-arith], [ AX_APPEND_FLAG(-Wpointer-arith, [opt_[]_AC_LANG_ABBREV[]flags]) ]) diff -Nru aircrack-ng-1.4/build/m4/aircrack_ng_crypto.m4 aircrack-ng-1.5.2/build/m4/aircrack_ng_crypto.m4 --- aircrack-ng-1.4/build/m4/aircrack_ng_crypto.m4 2018-09-29 19:46:36.000000000 +0000 +++ aircrack-ng-1.5.2/build/m4/aircrack_ng_crypto.m4 2018-12-09 22:53:44.000000000 +0000 @@ -45,8 +45,9 @@ [static_crypto=$enableval], [static_crypto=no]) if test "x$static_crypto" != "xno"; then - AX_EXT_HAVE_STATIC_LIB(ZLIB, DEFAULT_STATIC_LIB_SEARCH_PATHS, z libz, compress) - AX_EXT_HAVE_STATIC_LIB(OPENSSL, DEFAULT_STATIC_LIB_SEARCH_PATHS, crypto libcrypto, HMAC, -lz -ldl) + AC_REQUIRE([AX_EXT_HAVE_STATIC_LIB_DETECT]) + AX_EXT_HAVE_STATIC_LIB(ZLIB, ${DEFAULT_STATIC_LIB_SEARCH_PATHS}, z libz, compress) + AX_EXT_HAVE_STATIC_LIB(OPENSSL, ${DEFAULT_STATIC_LIB_SEARCH_PATHS}, crypto libcrypto, HMAC, -lz -ldl) else AC_CHECK_LIB([crypto], [OPENSSL_init], [ OPENSSL_LIBS="-lcrypto" diff -Nru aircrack-ng-1.4/build/m4/aircrack_ng_ext_scripts.m4 aircrack-ng-1.5.2/build/m4/aircrack_ng_ext_scripts.m4 --- aircrack-ng-1.4/build/m4/aircrack_ng_ext_scripts.m4 2018-09-29 19:46:36.000000000 +0000 +++ aircrack-ng-1.5.2/build/m4/aircrack_ng_ext_scripts.m4 2018-12-09 22:53:44.000000000 +0000 @@ -41,8 +41,17 @@ if test "$cross_compiling" = no; then - PC_INIT([2.7]) - PC_PYTHON_SITE_PACKAGE_DIR + AC_CHECK_PROGS([PYTHON], [python python3 python2]) + if test $PYTHON = no; then + AC_MSG_FAILURE(failed to find Python) + fi + + if test "x$PYTHON" != "x"; then + pc_cv_python_site_dir=`$PYTHON -c 'import site; print(site.getsitepackages()[[-1]])'` + dnl AC_SUBST([pythondir], [\${prefix}/$pc_cv_python_site_dir]) + AC_SUBST([pythondir], [$pc_cv_python_site_dir]) + AC_SUBST([pkgpythondir], [\${pythondir}/$PACKAGE_NAME]) + fi fi AC_CHECK_PROGS([READLINK], [greadlink readlink]) diff -Nru aircrack-ng-1.4/build/m4/aircrack_ng_hwloc.m4 aircrack-ng-1.5.2/build/m4/aircrack_ng_hwloc.m4 --- aircrack-ng-1.4/build/m4/aircrack_ng_hwloc.m4 2018-09-29 19:46:36.000000000 +0000 +++ aircrack-ng-1.5.2/build/m4/aircrack_ng_hwloc.m4 2018-12-09 22:53:44.000000000 +0000 @@ -53,9 +53,10 @@ AS_IF([test "x$enable_hwloc" != "xno"], [ if test "x$static_hwloc" != "xno"; then - AX_EXT_HAVE_STATIC_LIB(HWLOC, DEFAULT_STATIC_LIB_SEARCH_PATHS, hwloc libhwloc, hwloc_bitmap_alloc, -lnuma -lltdl) - AX_EXT_HAVE_STATIC_LIB(NUMA, DEFAULT_STATIC_LIB_SEARCH_PATHS, numa libnuma, numa_bitmask_setbit, -lltdl) - AX_EXT_HAVE_STATIC_LIB(LTDL, DEFAULT_STATIC_LIB_SEARCH_PATHS, ltdl libltdl, lt_dlopen, -ldl) + AC_REQUIRE([AX_EXT_HAVE_STATIC_LIB_DETECT]) + AX_EXT_HAVE_STATIC_LIB(HWLOC, ${DEFAULT_STATIC_LIB_SEARCH_PATHS}, hwloc libhwloc, hwloc_bitmap_alloc, -lnuma -lltdl) + AX_EXT_HAVE_STATIC_LIB(NUMA, ${DEFAULT_STATIC_LIB_SEARCH_PATHS}, numa libnuma, numa_bitmask_setbit, -lltdl) + AX_EXT_HAVE_STATIC_LIB(LTDL, ${DEFAULT_STATIC_LIB_SEARCH_PATHS}, ltdl libltdl, lt_dlopen, -ldl) HWLOC_LIBS="$HWLOC_LIBS $NUMA_LIBS $LTDL_LIBS" AC_SUBST([HWLOC_LIBS]) HAVE_HWLOC=yes diff -Nru aircrack-ng-1.4/build/m4/aircrack_ng_pcap.m4 aircrack-ng-1.5.2/build/m4/aircrack_ng_pcap.m4 --- aircrack-ng-1.4/build/m4/aircrack_ng_pcap.m4 2018-09-29 19:46:36.000000000 +0000 +++ aircrack-ng-1.5.2/build/m4/aircrack_ng_pcap.m4 2018-12-09 22:53:44.000000000 +0000 @@ -103,7 +103,8 @@ dnl AS_IF([test "$PCAP_FOUND" = yes], [ if test "x$static_pcap" != "xno"; then - AX_EXT_HAVE_STATIC_LIB(PCAP, DEFAULT_STATIC_LIB_SEARCH_PATHS, pcap libpcap, pcap_open_live) + AC_REQUIRE([AX_EXT_HAVE_STATIC_LIB_DETECT]) + AX_EXT_HAVE_STATIC_LIB(PCAP, ${DEFAULT_STATIC_LIB_SEARCH_PATHS}, pcap libpcap, pcap_open_live) if test "x$PCAP_FOUND" = xyes; then AC_DEFINE([HAVE_PCAP], [1]) fi diff -Nru aircrack-ng-1.4/build/m4/aircrack_ng_pcre.m4 aircrack-ng-1.5.2/build/m4/aircrack_ng_pcre.m4 --- aircrack-ng-1.4/build/m4/aircrack_ng_pcre.m4 2018-09-29 19:46:36.000000000 +0000 +++ aircrack-ng-1.5.2/build/m4/aircrack_ng_pcre.m4 2018-12-09 22:53:44.000000000 +0000 @@ -44,7 +44,8 @@ [static_pcre=$enableval], [static_pcre=no]) if test "x$static_pcre" != "xno"; then - AX_EXT_HAVE_STATIC_LIB(PCRE, DEFAULT_STATIC_LIB_SEARCH_PATHS, pcre libpcre, pcre_version) + AC_REQUIRE([AX_EXT_HAVE_STATIC_LIB_DETECT]) + AX_EXT_HAVE_STATIC_LIB(PCRE, ${DEFAULT_STATIC_LIB_SEARCH_PATHS}, pcre libpcre, pcre_version) if test "x$PCRE_FOUND" = xyes; then HAVE_PCRE=yes else diff -Nru aircrack-ng-1.4/build/m4/aircrack_ng_sqlite.m4 aircrack-ng-1.5.2/build/m4/aircrack_ng_sqlite.m4 --- aircrack-ng-1.4/build/m4/aircrack_ng_sqlite.m4 2018-09-29 19:46:36.000000000 +0000 +++ aircrack-ng-1.5.2/build/m4/aircrack_ng_sqlite.m4 2018-12-09 22:53:44.000000000 +0000 @@ -45,7 +45,8 @@ [static_sqlite3=$enableval], [static_sqlite3=no]) if test "x$static_sqlite3" != "xno"; then - AX_EXT_HAVE_STATIC_LIB(SQLITE3, DEFAULT_STATIC_LIB_SEARCH_PATHS, sqlite3 libsqlite3, sqlite3_open, -lpthread -ldl) + AC_REQUIRE([AX_EXT_HAVE_STATIC_LIB_DETECT]) + AX_EXT_HAVE_STATIC_LIB(SQLITE3, ${DEFAULT_STATIC_LIB_SEARCH_PATHS}, sqlite3 libsqlite3, sqlite3_open, -lpthread -ldl) if test "x$SQLITE3_FOUND" = xyes; then HAVE_SQLITE3=yes fi diff -Nru aircrack-ng-1.4/build/m4/ax_ext_have_static_lib.m4 aircrack-ng-1.5.2/build/m4/ax_ext_have_static_lib.m4 --- aircrack-ng-1.4/build/m4/ax_ext_have_static_lib.m4 2018-09-29 19:46:36.000000000 +0000 +++ aircrack-ng-1.5.2/build/m4/ax_ext_have_static_lib.m4 2018-12-09 22:53:44.000000000 +0000 @@ -16,7 +16,8 @@ # # Example: # -# AX_EXT_HAVE_STATIC_LIB(ZLIB, DEFAULT_STATIC_LIB_SEARCH_PATHS, +# AX_EXT_HAVE_STATIC_LIB_DETECT +# AX_EXT_HAVE_STATIC_LIB(ZLIB, [${DEFAULT_STATIC_LIB_SEARCH_PATHS}], # z libz, compress) # # LICENSE @@ -51,15 +52,49 @@ #serial 1 -m4_define([DUMPMACHINE], m4_esyscmd([gcc -dumpmachine 2>/dev/null || echo])) -m4_define([DEFAULT_STATIC_LIB_SEARCH_PATHS], [ - /opt/lib/DUMPMACHINE - /opt/lib - /usr/local/lib/DUMPMACHINE - /usr/local/lib - /usr/lib/DUMPMACHINE - /usr/lib - /lib +AC_DEFUN([AX_EXT_HAVE_STATIC_LIB_DETECT], +[ +AC_REQUIRE([AC_CANONICAL_HOST]) +AC_ARG_VAR([STATIC_HOST_ALIAS], [The alias name for host, default @<:@HOST@:>@.])dnl +AC_ARG_VAR([STATIC_LIBDIR_NAME], [The libdir name for host, default @<:@lib@:>@.])dnl + +AC_CACHE_VAL([ext_cv_static_libdir_name], [ + ext_cv_static_libdir_name="${STATIC_LIBDIR_NAME:-lib}" +]) + +AC_CACHE_VAL([ext_cv_default_static_lib_search_paths], [ + AC_MSG_CHECKING([Default static library search path]) + + static_extpath="" + if test -n "${STATIC_HOST_ALIAS}" + then + static_host="${STATIC_HOST_ALIAS}" + else + if test "${GCC}" = "yes" + then + static_host=`${CC} -dumpmachine 2>/dev/null` + static_extpath=`${CC} -print-search-dirs 2> /dev/null | grep '^libraries' | sed -e 's/@<:@^=@:>@*=//' -e 's/:/ /g'` + else + static_host="${host}" + fi + fi + + ext_cv_default_static_lib_search_paths=" \ + ${static_extpath} \ + /opt/${ext_cv_static_libdir_name}/${static_host} \ + /opt/${ext_cv_static_libdir_name} \ + /usr/local/${ext_cv_static_libdir_name}/${static_host} \ + /usr/local/${ext_cv_static_libdir_name} \ + /usr/${ext_cv_static_libdir_name}/${static_host} \ + /usr/${ext_cv_static_libdir_name} \ + /${ext_cv_static_libdir_name} \ + /opt/lib/${static_host} \ + /opt/lib \ + " + AC_MSG_RESULT([${ext_cv_default_static_lib_search_paths}]) +]) +DEFAULT_STATIC_LIB_SEARCH_PATHS="${ext_cv_default_static_lib_search_paths}" +STATIC_LIBDIR_NAME="${ext_cv_static_libdir_name}" ]) AC_DEFUN([AX_EXT_HAVE_STATIC_LIB], diff -Nru aircrack-ng-1.4/build/m4/ax_lib_sqlite3.m4 aircrack-ng-1.5.2/build/m4/ax_lib_sqlite3.m4 --- aircrack-ng-1.4/build/m4/ax_lib_sqlite3.m4 2018-09-29 19:46:36.000000000 +0000 +++ aircrack-ng-1.5.2/build/m4/ax_lib_sqlite3.m4 2018-12-09 22:53:44.000000000 +0000 @@ -40,6 +40,7 @@ AC_DEFUN([AX_LIB_SQLITE3], [ + AC_REQUIRE([AX_EXT_HAVE_STATIC_LIB_DETECT]) AC_ARG_WITH([sqlite3], AS_HELP_STRING( [--with-sqlite3=@<:@ARG@:>@], @@ -83,7 +84,7 @@ AC_MSG_CHECKING([for SQLite3 header]) if test "$ac_sqlite3_path" != ""; then - ac_sqlite3_ldflags="-L$ac_sqlite3_path/lib" + ac_sqlite3_ldflags="-L$ac_sqlite3_path/${STATIC_LIBDIR_NAME}" ac_sqlite3_cppflags="-I$ac_sqlite3_path/include" AC_MSG_RESULT([explicitly set; $ac_sqlite3_path]) else @@ -92,7 +93,7 @@ && test -r "$ac_sqlite3_path_tmp/include/$ac_sqlite3_header"; then ac_sqlite3_path=$ac_sqlite3_path_tmp ac_sqlite3_cppflags="-I$ac_sqlite3_path_tmp/include" - ac_sqlite3_ldflags="-L$ac_sqlite3_path_tmp/lib" + ac_sqlite3_ldflags="-L$ac_sqlite3_path_tmp/${STATIC_LIBDIR_NAME}" AC_MSG_RESULT([found; $ac_sqlite3_path_tmp/include/$ac_sqlite3_header]) break; fi diff -Nru aircrack-ng-1.4/build/m4/libgcrypt.m4 aircrack-ng-1.5.2/build/m4/libgcrypt.m4 --- aircrack-ng-1.4/build/m4/libgcrypt.m4 2018-09-29 19:46:36.000000000 +0000 +++ aircrack-ng-1.5.2/build/m4/libgcrypt.m4 2018-12-09 22:53:44.000000000 +0000 @@ -19,8 +19,8 @@ dnl with the API version to also check the API compatibility. Example: dnl a MINIMUN-VERSION of 1:1.2.5 won't pass the test unless the installed dnl version of libgcrypt is at least 1.2.5 *and* the API number is 1. Using -dnl this features allows to prevent build against newer versions of libgcrypt -dnl with a changed API. +dnl this features allows one to prevent build against newer versions of +dnl libgcrypt with a changed API. dnl dnl If a prefix option is not used, the config script is first dnl searched in $SYSROOT/bin and then along $PATH. If the used diff -Nru aircrack-ng-1.4/build/m4/python.m4 aircrack-ng-1.5.2/build/m4/python.m4 --- aircrack-ng-1.4/build/m4/python.m4 2018-09-29 19:46:36.000000000 +0000 +++ aircrack-ng-1.5.2/build/m4/python.m4 1970-01-01 00:00:00.000000000 +0000 @@ -1,646 +0,0 @@ -# Copyright 2012, 2013, 2014 Brandon Invergo -# -# This file is part of pyconfigure. This program is free -# software; you can redistribute it and/or modify it under the -# terms of the GNU General Public License as published by the -# Free Software Foundation, either version 3 of the License, or -# (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# Under Section 7 of GPL version 3, you are granted additional -# permissions described in the Autoconf Configure Script Exception, -# version 3.0, as published by the Free Software Foundation. -# -# You should have received a copy of the GNU General Public License -# and a copy of the Autoconf Configure Script Exception along with -# this program; see the files COPYINGv3 and COPYING.EXCEPTION -# respectively. If not, see . - - -# Many of these macros were adapted from ones written by Andrew Dalke -# and James Henstridge and are included with the Automake utility -# under the following copyright terms: -# -# Copyright (C) 1999-2012 Free Software Foundation, Inc. -# -# This file is free software; the Free Software Foundation -# gives unlimited permission to copy and/or distribute it, -# with or without modifications, as long as this notice is preserved. - -# Table of Contents: -# -# 1. Language selection -# and routines to produce programs in a given language. -# -# 2. Producing programs in a given language. -# -# 3. Looking for a compiler -# And possibly the associated preprocessor. -# -# 4. Looking for specific libs & functionality - - -## ----------------------- ## -## 1. Language selection. ## -## ----------------------- ## - - -# AC_LANG(Python) -# --------------- -AC_LANG_DEFINE([Python], [py], [PY], [PYTHON], [], -[ac_ext=py -ac_compile='chmod +x conftest.$ac_ext >&AS_MESSAGE_LOG_FD' -ac_link='chmod +x conftest.$ac_ext && cp conftest.$ac_ext conftest >&AS_MESSAGE_LOG_FD' -]) - - -# AC_LANG_PYTHON -# -------------- -AU_DEFUN([AC_LANG_PYTHON], [AC_LANG(Python)]) - - -## ----------------------- ## -## 2. Producing programs. ## -## ----------------------- ## - - -# AC_LANG_PROGRAM(Python)([PROLOGUE], [BODY]) -# ------------------------------------------- -m4_define([AC_LANG_PROGRAM(Python)], [dnl -@%:@!$PYTHON -$1 -m4_if([$2], [], [], [dnl -if __name__ == '__main__': -$2])]) - - -# _AC_LANG_IO_PROGRAM(Python) -# --------------------------- -# Produce source that performs I/O. -m4_define([_AC_LANG_IO_PROGRAM(Python)], -[AC_LANG_PROGRAM([dnl -import sys -try: - h = open('conftest.out') -except: - sys.exit(1) -else: - close(h) - sys.exit(0) -], [])]) - - -# _AC_LANG_CALL(Python)([PROLOGUE], [FUNCTION]) -# --------------------- -# Produce source that calls FUNCTION -m4_define([_AC_LANG_CALL(Python)], -[AC_LANG_PROGRAM([$1], [$2])]) - - -## -------------------------------------------- ## -## 3. Looking for Compilers and Interpreters. ## -## -------------------------------------------- ## - - -AC_DEFUN([AC_LANG_COMPILER(Python)], -[AC_REQUIRE([PC_PROG_PYTHON])]) - - -# PC_INIT([MIN-VERSION], [MAX-VERSION]) -# ----------------------------- -# Initialize pyconfigure, finding a Python interpreter with a given -# minimum and/or maximum version. -AC_DEFUN([PC_INIT], -[PC_PROG_PYTHON([], [$1], [$2]) -dnl If we found something, do a sanity check that the interpreter really -dnl has the version its name would suggest. -m4_ifval([PYTHON], - [PC_PYTHON_VERIFY_VERSION([>=], [pc_min_ver], [], - [AC_MSG_WARN([No compatible Python interpreter found. If you're sure that you have one, try setting the PYTHON environment variable to the location of the interpreter.])])]) -m4_ifval([PYTHON], - [PC_PYTHON_VERIFY_VERSION([<=], [pc_max_ver], [], - [AC_MSG_WARN([No compatible Python interpreter found. If you're sure that you have one, try setting the PYTHON environment variable to the location of the interpreter.])])]) -])# PC_INIT - -# PC_PROG_PYTHON([PROG-TO-CHECK-FOR], [MIN-VERSION], [MAX-VERSION]) -# --------------------------------- -# Find a Python interpreter. Python versions prior to 2.0 are not -# supported. (2.0 was released on October 16, 2000). -AC_DEFUN_ONCE([PC_PROG_PYTHON], -[AC_ARG_VAR([PYTHON], [the Python interpreter]) -dnl The default minimum version is 2.0 -m4_define_default([pc_min_ver], m4_ifval([$2], [$2], [2.0])) -dnl The default maximum version is 3.3 -m4_define_default([pc_max_ver], m4_ifval([$3], [$3], [4.0])) -dnl Build up a list of possible interpreter names. -m4_define_default([_PC_PYTHON_INTERPRETER_LIST], - [dnl If we want some Python 3 versions (max version >= 3.0), -dnl also search for "python3" - m4_if(m4_version_compare(pc_max_ver, [2.9]), [1], [python3], []) \ -dnl If we want some Python 2 versions (min version <= 2.7), -dnl also search for "python2". - m4_if(m4_version_compare(pc_min_ver, [2.8]), [-1], [python2], []) \ -dnl Construct a comma-separated list of interpreter names (python2.6, -dnl python2.7, etc). We only care about the first 3 characters of the -dnl version strings (major-dot-minor; not -dnl major-dot-minor-dot-bugfix[-dot-whatever]) - m4_foreach([pc_ver], - m4_esyscmd_s(seq -s[[", "]] m4_substr(pc_max_ver, [0], [3]) -0.1 m4_substr(pc_min_ver, [0], [3])), -dnl Remove python2.8 and python2.9 since they will never exist - [m4_bmatch(pc_ver, [2.[89]], [], [python]pc_ver)]) \ - [python]]) -dnl Do the actual search at last. -m4_ifval([$1], - [AC_PATH_PROGS(PYTHON, [$1 _PC_PYTHON_INTERPRETER_LIST])], - [AC_PATH_PROGS(PYTHON, [_PC_PYTHON_INTERPRETER_LIST])]) -])# PC_PROG_PYTHON - - -# PC_PYTHON_PROG_PYTHON_CONFIG(PROG-TO-CHECK-FOR) -# ---------------------------------------------- -# Find the python-config program -AC_DEFUN([PC_PYTHON_PROG_PYTHON_CONFIG], -[AC_REQUIRE([PC_PROG_PYTHON])[]dnl -AC_ARG_VAR([PYTHON_CONFIG], [the Python-config program]) -dnl python-config's binary name is normally based on the Python interpreter's -dnl binary name (i.e. python2.7 -> python2.7-config) -m4_define([_PYTHON_BASENAME], [`basename $PYTHON`]) -m4_ifval([$1], - [AC_PATH_PROGS(PYTHON_CONFIG, [$1 _PYTHON_BASENAME-config])], - [AC_PATH_PROG(PYTHON_CONFIG, _PYTHON_BASENAME-config)]) -]) # PC_PYTHON_PROG_PYTHON_CONFIG - - -# PC_PYTHON_VERIFY_VERSION([RELATION], [VERSION], [ACTION-IF-TRUE], [ACTION-IF-FALSE]) -# --------------------------------------------------------------------------- -# Run ACTION-IF-TRUE if the Python interpreter PROG has version [RELATION] VERSION. -# i.e if RELATION is "<", check if PROG has a version number less than VERSION. -# Run ACTION-IF-FALSE otherwise. -# Specify RELATION as any mathematical comparison "<", ">", "<=", ">=", "==" or "!=" -# This test uses sys.hexversion instead of the string equivalent (first -# word of sys.version), in order to cope with versions such as 2.2c1. -# This supports Python 2.0 or higher. (2.0 was released on October 16, 2000). -AC_DEFUN([PC_PYTHON_VERIFY_VERSION], -[m4_define([pc_python_safe_ver], m4_bpatsubsts($2, [\.], [_])) -AC_CACHE_CHECK([if Python $1 '$2'], - [[pc_cv_python_req_version_]pc_python_safe_ver], - [AC_LANG_PUSH(Python)[]dnl - AC_RUN_IFELSE( - [AC_LANG_PROGRAM([dnl -import sys -], [dnl - # split strings by '.' and convert to numeric. Append some zeros - # because we need at least 4 digits for the hex conversion. - # map returns an iterator in Python 3.0 and a list in 2.x - reqver = list(map(int, '$2'.split('.'))) + [[0, 0, 0]] - reqverhex = 0 - # xrange is not present in Python 3.0 and range returns an iterator - for i in list(range(4)): - reqverhex = (reqverhex << 8) + reqver[[i]] - # the final 8 bits are "0xf0" for final versions, which are all - # we'll test against, since it's doubtful that a released software - # will depend on an alpha- or beta-state Python. - reqverhex += 0xf0 - if sys.hexversion $1 reqverhex: - sys.exit() - else: - sys.exit(1) -])], - [[pc_cv_python_req_version_]pc_python_safe_ver=yes], - [[pc_cv_python_req_version_]pc_python_safe_ver=no]) - AC_LANG_POP(Python)[]dnl - ]) -AS_IF([test "$[pc_cv_python_req_version_]pc_python_safe_ver" = "no"], [$4], [$3]) -])# PC_PYTHON_VERIFY_VERSION - - -# PC_PYTHON_CHECK_VERSION -# ----------------------- -# Query Python for its version number. Getting [:3] seems to be -# the best way to do this; it's what "site.py" does in the standard -# library. -AC_DEFUN([PC_PYTHON_CHECK_VERSION], -[AC_REQUIRE([PC_PROG_PYTHON])[]dnl -AC_CACHE_CHECK([for $1 version], - [pc_cv_python_version], - [AC_LANG_PUSH(Python)[]dnl - AC_LINK_IFELSE([AC_LANG_PROGRAM([dnl -import sys -], [dnl - sys.stdout.write(sys.version[[:3]]) -])], - [pc_cv_python_version=`./conftest`], - [AC_MSG_WARN([failed to run Python program])]) - AC_LANG_POP(Python)[]dnl - ]) -AC_SUBST([PYTHON_VERSION], [$pc_cv_python_version]) -])# PC_PYTHON_CHECK_VERSION - - -# PC_PYTHON_CHECK_PREFIX -# ---------------------- -# Use the value of $prefix for the corresponding value of -# PYTHON_PREFIX. This is made a distinct variable so it can be -# overridden if need be. However, general consensus is that you -# shouldn't need this ability. -AC_DEFUN([PC_PYTHON_CHECK_PREFIX], -[AC_REQUIRE([PC_PYTHON_PROG_PYTHON_CONFIG])[]dnl -dnl Try to get it with python-config otherwise do it from within Python -AC_CACHE_CHECK([for Python prefix], [pc_cv_python_prefix], -[if test -x "$PYTHON_CONFIG"; then - pc_cv_python_prefix=`$PYTHON_CONFIG --prefix 2>&AS_MESSAGE_LOG_FD` -else - AC_LANG_PUSH(Python)[]dnl - AC_LINK_IFELSE([AC_LANG_PROGRAM([dnl -import sys -], [dnl - sys.stdout.write(sys.prefix) -])], [pc_cv_python_prefix=`./conftest`; - if test $? != 0; then - AC_MSG_WARN([could not determine Python prefix]) - fi], - [AC_MSG_WARN([failed to run Python program])]) - AC_LANG_POP(Python)[]dnl -fi]) -AC_SUBST([PYTHON_PREFIX], [$pc_cv_python_prefix])]) - - -# PC_PYTHON_CHECK_EXEC_PREFIX -# -------------------------- -# Like above, but for $exec_prefix -AC_DEFUN([PC_PYTHON_CHECK_EXEC_PREFIX], -[AC_REQUIRE([PC_PYTHON_PROG_PYTHON_CONFIG])[]dnl -dnl Try to get it with python-config otherwise do it from within Python -AC_CACHE_CHECK([for Python exec-prefix], [pc_cv_python_exec_prefix], -[if test -x "$PYTHON_CONFIG"; then - pc_cv_python_exec_prefix=`$PYTHON_CONFIG --exec-prefix 2>&AS_MESSAGE_LOG_FD` -else - AC_LANG_PUSH(Python)[]dnl - AC_LINK_IFELSE([AC_LANG_PROGRAM([dnl -import sys -], [dnl - sys.stdout.write(sys.exec_prefix) -])], - [pc_cv_python_exec_prefix=`./conftest`; - if test $? != 0; then - AC_MSG_WARN([could not determine Python exec_prefix]) - fi], - [AC_MSG_WARN([failed to run Python program])]) - AC_LANG_POP(Python)[]dnl -fi -]) -AC_SUBST([PYTHON_EXEC_PREFIX], [$pc_cv_python_exec_prefix])]) - - -# PC_PYTHON_CHECK_INCLUDES -# ------------------------ -# Find the Python header file include flags (ie -# '-I/usr/include/python') -AC_DEFUN([PC_PYTHON_CHECK_INCLUDES], -[AC_REQUIRE([PC_PYTHON_PROG_PYTHON_CONFIG])[]dnl -dnl Try to find the headers location with python-config otherwise guess -AC_CACHE_CHECK([for Python includes], [pc_cv_python_includes], -[if test -x "$PYTHON_CONFIG"; then - pc_cv_python_includes=`$PYTHON_CONFIG --includes 2>&AS_MESSAGE_LOG_FD` -else - pc_cv_python_includes="[-I$includedir/$_PYTHON_BASENAME]m4_ifdef(PYTHON_ABI_FLAGS, - PYTHON_ABI_FLAGS,)" -fi -]) -AC_SUBST([PYTHON_INCLUDES], [$pc_cv_python_includes])]) - - -# PC_PYTHON_CHECK_HEADERS([ACTION-IF-PRESENT], [ACTION-IF-ABSENT]) -# ----------------------- -# Check for the presence and usability of Python.h -AC_DEFUN([PC_PYTHON_CHECK_HEADERS], -[AC_REQUIRE([PC_PYTHON_CHECK_INCLUDES])[]dnl -pc_cflags_store=$CPPFLAGS -CPPFLAGS="$CFLAGS $PYTHON_INCLUDES" -AC_CHECK_HEADER([Python.h], [$1], [$2]) -CPPFLAGS=$pc_cflags_store -]) - - -# PC_PYTHON_CHECK_LIBS -# -------------------- -# Find the Python lib flags (ie '-lpython') -AC_DEFUN([PC_PYTHON_CHECK_LIBS], -[AC_REQUIRE([PC_PYTHON_PROG_PYTHON_CONFIG])[]dnl -dnl Try to find the lib flags with python-config otherwise guess -AC_CACHE_CHECK([for Python libs], [pc_cv_python_libs], -[if test -x "$PYTHON_CONFIG"; then - pc_cv_python_libs=`$PYTHON_CONFIG --libs 2>&AS_MESSAGE_LOG_FD` -else - pc_cv_python_libs="[-l$_PYTHON_BASENAME]m4_ifdef(PYTHON_ABI_FLAGS, PYTHON_ABI_FLAGS,)" -fi -]) -AC_SUBST([PYTHON_LIBS], [$pc_cv_python_libs])]) - - -# PC_PYTHON_TEST_LIBS(LIBRARY-FUNCTION, [ACTION-IF-PRESENT], [ACTION-IF-ABSENT]) -# ------------------- -# Verify that the Python libs can be loaded -AC_DEFUN([PC_PYTHON_TEST_LIBS], -[AC_REQUIRE([PC_PYTHON_CHECK_LIBS])[]dnl -pc_libflags_store=$LIBS -for lflag in $PYTHON_LIBS; do - case $lflag in - -lpython*@:}@ - LIBS="$LIBS $lflag" - pc_libpython=`echo $lflag | sed -e 's/^-l//'` - ;; - *@:}@;; - esac -done -AC_CHECK_LIB([$pc_libpython], [$1], [$2], [$3])]) - - -# PC_PYTHON_CHECK_CFLAGS -# ---------------------- -# Find the Python CFLAGS -AC_DEFUN([PC_PYTHON_CHECK_CFLAGS], -[AC_REQUIRE([PC_PYTHON_PROG_PYTHON_CONFIG])[]dnl -dnl Try to find the CFLAGS with python-config otherwise give up -AC_CACHE_CHECK([for Python CFLAGS], [pc_cv_python_cflags], -[if test -x "$PYTHON_CONFIG"; then - pc_cv_python_cflags=`$PYTHON_CONFIG --cflags 2>&AS_MESSAGE_LOG_FD` -else - pc_cv_python_cflags= -fi -]) -AC_SUBST([PYTHON_CFLAGS], [$pc_cv_python_cflags])]) - - -# PC_PYTHON_CHECK_LDFLAGS -# ----------------------- -# Find the Python LDFLAGS -AC_DEFUN([PC_PYTHON_CHECK_LDFLAGS], -[AC_REQUIRE([PC_PYTHON_PROG_PYTHON_CONFIG])[]dnl -dnl Try to find the LDFLAGS with python-config otherwise give up -AC_CACHE_CHECK([for Python LDFLAGS], [pc_cv_python_ldflags], -[if test -x "$PYTHON_CONFIG"; then - pc_cv_python_ldflags=`$PYTHON_CONFIG --ldflags 2>&AS_MESSAGE_LOG_FD` -else - pc_cv_python_ldflags= -fi -]) -AC_SUBST([PYTHON_LDFLAGS], [$pc_cv_python_ldflags])]) - - -# PC_PYTHON_CHECK_EXTENSION_SUFFIX -# -------------------------------- -# Find the Python extension suffix (i.e. '.cpython-32.so') -AC_DEFUN([PC_PYTHON_CHECK_EXTENSION_SUFFIX], -[AC_REQUIRE([PC_PYTHON_PROG_PYTHON_CONFIG])[]dnl -dnl Try to find the suffix with python-config otherwise give up -AC_CACHE_CHECK([for Python extension suffix], [pc_cv_python_extension_suffix], -[if test -x "$PYTHON_CONFIG"; then - pc_cv_python_extension_suffix=`$PYTHON_CONFIG --extension-suffix 2>&AS_MESSAGE_LOG_FD` -else - pc_cv_python_extension_suffix= -fi -]) -AC_SUBST([PYTHON_EXTENSION_SUFFIX], [$pc_cv_python_extension_suffix])]) - - -# PC_PYTHON_CHECK_ABI_FLAGS -# ------------------------- -# Find the Python ABI flags -AC_DEFUN([PC_PYTHON_CHECK_ABI_FLAGS], -[AC_REQUIRE([PC_PYTHON_PROG_PYTHON_CONFIG])[]dnl -dnl Try to find the ABI flags with python-config otherwise give up -AC_CACHE_CHECK([for Python ABI flags], [pc_cv_python_abi_flags], -[if test -x "$PYTHON_CONFIG"; then - pc_cv_python_abi_flags=`$PYTHON_CONFIG --abiflags 2>&AS_MESSAGE_LOG_FD` -else - pc_cv_python_abi_flags= -fi -]) -AC_SUBST([PYTHON_ABI_FLAGS], [$pc_cv_python_abi_flags])]) - - -# PC_PYTHON_CHECK_PLATFORM -# ------------------------ -# At times (like when building shared libraries) you may want -# to know which OS platform Python thinks this is. -AC_DEFUN([PC_PYTHON_CHECK_PLATFORM], -[AC_REQUIRE([PC_PROG_PYTHON])[]dnl -dnl Get the platform from within Python (sys.platform) -AC_CACHE_CHECK([for Python platform], [pc_cv_python_platform], - [AC_LANG_PUSH(Python)[]dnl - AC_LINK_IFELSE([AC_LANG_PROGRAM([dnl -import sys -], [dnl - sys.stdout.write(sys.platform) -])], [pc_cv_python_platform=`./conftest`; - if test $? != 0; then - AC_MSG_WARN([could not determine Python platform]) - fi], - [AC_MSG_WARN([failed to run Python program])]) - AC_LANG_POP(Python)[]dnl - ]) -AC_SUBST([PYTHON_PLATFORM], [$pc_cv_python_platform]) -]) - - -# PC_PYTHON_CHECK_SITE_DIR -# --------------------- -# The directory to which new libraries are installed (i.e. the -# "site-packages" directory. -AC_DEFUN([PC_PYTHON_CHECK_SITE_DIR], -[AC_REQUIRE([PC_PROG_PYTHON])AC_REQUIRE([PC_PYTHON_CHECK_PREFIX])[]dnl -AC_CACHE_CHECK([for Python site-packages directory], - [pc_cv_python_site_dir], - [AC_LANG_PUSH(Python)[]dnl - if test "x$prefix" = xNONE - then - pc_py_prefix=$ac_default_prefix - else - pc_py_prefix=$prefix - fi - AC_LINK_IFELSE([AC_LANG_PROGRAM([dnl -import sys -from platform import python_implementation -# sysconfig in CPython 2.7 doesn't work in virtualenv -# -try: - import sysconfig -except: - can_use_sysconfig = False -else: - can_use_sysconfig = True -if can_use_sysconfig: - if python_implementation() == "CPython" and sys.version[[:3]] == '2.7': - can_use_sysconfig = False -if not can_use_sysconfig: - from distutils import sysconfig - sitedir = sysconfig.get_python_lib(False, False, prefix='$pc_py_prefix') -else: - sitedir = sysconfig.get_path('purelib', vars={'base':'$pc_py_prefix'}) -], [dnl - sys.stdout.write(sitedir) -])], [pc_cv_python_site_dir=`./conftest`], - [AC_MSG_WARN([failed to run Python program])]) - AC_LANG_POP(Python)[]dnl - case $pc_cv_python_site_dir in - $pc_py_prefix*) - pc__strip_prefix=`echo "$pc_py_prefix" | sed 's|.|.|g'` - pc_cv_python_site_dir=`echo "$pc_cv_python_site_dir" | sed "s,^$pc__strip_prefix/,,"` - ;; - *) - case $pc_py_prefix in - /usr|/System*) ;; - *) - pc_cv_python_site_dir=lib/python$PYTHON_VERSION/site-packages - ;; - esac - ;; - esac - ]) -AC_SUBST([pythondir], [\${prefix}/$pc_cv_python_site_dir])])# PC_PYTHON_CHECK_SITE_DIR - -# PC_PYTHON_SITE_PACKAGE_DIR -# -------------------------- -# $PACKAGE directory under PYTHON_SITE_DIR -AC_DEFUN([PC_PYTHON_SITE_PACKAGE_DIR], -[AC_REQUIRE([PC_PYTHON_CHECK_SITE_DIR])[]dnl -AC_SUBST([pkgpythondir], [\${pythondir}/$PACKAGE_NAME])]) - - -# PC_PYTHON_CHECK_EXEC_DIR -# ------------------------ -# directory for installing python extension modules (shared libraries) -AC_DEFUN([PC_PYTHON_CHECK_EXEC_DIR], -[AC_REQUIRE([PC_PROG_PYTHON])AC_REQUIRE([PC_PYTHON_CHECK_EXEC_PREFIX])[]dnl - AC_CACHE_CHECK([for Python extension module directory], - [pc_cv_python_exec_dir], - [AC_LANG_PUSH(Python)[]dnl - if test "x$pc_cv_python_exec_prefix" = xNONE - then - pc_py_exec_prefix=$pc_cv_python_prefix - else - pc_py_exec_prefix=$pc_cv_python_exec_prefix - fi - AC_LINK_IFELSE([AC_LANG_PROGRAM([dnl -import sys -from platform import python_implementation -# sysconfig in CPython 2.7 doesn't work in virtualenv -# -try: - import sysconfig -except: - can_use_sysconfig = False -else: - can_use_sysconfig = True -if can_use_sysconfig: - if python_implementation() == "CPython" and sys.version[[:3]] == '2.7': - can_use_sysconfig = False -if not can_use_sysconfig: - from distutils import sysconfig - sitedir = sysconfig.get_python_lib(False, False, prefix='$pc_py__exec_prefix') -else: - sitedir = sysconfig.get_path('purelib', vars={'platbase':'$pc_py_exec_prefix'}) -], [dnl - sys.stdout.write(sitedir) -])], [pc_cv_python_exec_dir=`./conftest`], - [AC_MSG_WARN([failed to run Python program])]) - AC_LANG_POP(Python)[]dnl - case $pc_cv_python_exec_dir in - $pc_py_exec_prefix*) - pc__strip_prefix=`echo "$pc_py_exec_prefix" | sed 's|.|.|g'` - pc_cv_python_exec_dir=`echo "$pc_cv_python_exec_dir" | sed "s,^$pc__strip_prefix/,,"` - ;; - *) - case $pc_py_exec_prefix in - /usr|/System*) ;; - *) - pc_cv_python_exec_dir=lib/python$PYTHON_VERSION/site-packages - ;; - esac - ;; - esac - ]) -AC_SUBST([pyexecdir], [\${exec_prefix}/$pc_cv_python_pyexecdir])]) #PY_PYTHON_CHECK_EXEC_LIB_DIR - - -# PC_PYTHON_EXEC_PACKAGE_DIR -# -------------------------- -# $PACKAGE directory under PYTHON_SITE_DIR -AC_DEFUN([PC_PYTHON_EXEC_PACKAGE_DIR], -[AC_REQUIRE([PC_PYTHON_CHECK_EXEC_DIR])[]dnl -AC_SUBST([pkgpyexecdir], [\${pyexecdir}/$PACKAGE_NAME])]) - - -## -------------------------------------------- ## -## 4. Looking for specific libs & functionality ## -## -------------------------------------------- ## - - -# PC_PYTHON_CHECK_MODULE(LIBRARY, [ACTION-IF-FOUND], [ACTION-IF-NOT-FOUND]) -# ---------------------------------------------------------------------- -# Macro for checking if a Python library is installed -AC_DEFUN([PC_PYTHON_CHECK_MODULE], -[AC_REQUIRE([PC_PROG_PYTHON])[]dnl -m4_define([pc_python_safe_mod], m4_bpatsubsts($1, [\.], [_])) -AC_CACHE_CHECK([for Python '$1' library], - [[pc_cv_python_module_]pc_python_safe_mod], - [AC_LANG_PUSH(Python)[]dnl - AC_RUN_IFELSE( - [AC_LANG_PROGRAM([dnl -import sys -try: - import $1 -except: - sys.exit(1) -else: - sys.exit(0) -], [])], - [[pc_cv_python_module_]pc_python_safe_mod="yes"], - [[pc_cv_python_module_]pc_python_safe_mod="no"]) - AC_LANG_POP(Python)[]dnl - ]) -AS_IF([test "$[pc_cv_python_module_]pc_python_safe_mod" = "no"], [$3], [$2]) -])# PC_PYTHON_CHECK_MODULE - - -# PC_PYTHON_CHECK_FUNC([LIBRARY], FUNCTION, ARGS, [ACTION-IF-FOUND], [ACTION-IF-NOT-FOUND]) -# --------------------------------------------------------------------------------------- -# Check to see if a given function call, optionally from a module, can -# be successfully called -AC_DEFUN([PC_PYTHON_CHECK_FUNC], -[AC_REQUIRE([PC_PROG_PYTHON])[]dnl -m4_define([pc_python_safe_mod], m4_bpatsubsts($1, [\.], [_])) -AC_CACHE_CHECK([for Python m4_ifnblank($1, '$1.$2()', '$2()') function], - [[pc_cv_python_func_]pc_python_safe_mod[_$2]], - [AC_LANG_PUSH(Python)[]dnl - AC_RUN_IFELSE( - [AC_LANG_PROGRAM([dnl -import sys -m4_ifnblank([$1], [dnl -try: - import $1 -except: - sys.exit(1) -], [])], -[ -m4_ifnblank([$1], [ - try: - $1.$2($3)], [ - try: - $2($3)]) - except: - sys.exit(1) - else: - sys.exit(0) -])], - [[pc_cv_python_func_]pc_python_safe_mod[_$2]="yes"], - [[pc_cv_python_func_]pc_python_safe_mod[_$2]="no"]) - AC_LANG_POP(Python)[]dnl - ]) -AS_IF([test "$[pc_cv_python_func_]pc_python_safe_mod[_$2]" = "no"], [$5], [$4]) -])# PC_PYTHON_CHECK_FUNC diff -Nru aircrack-ng-1.4/build/pipelines/package.yaml aircrack-ng-1.5.2/build/pipelines/package.yaml --- aircrack-ng-1.4/build/pipelines/package.yaml 2018-09-29 19:46:36.000000000 +0000 +++ aircrack-ng-1.5.2/build/pipelines/package.yaml 2018-12-09 22:53:44.000000000 +0000 @@ -88,13 +88,28 @@ register: exact_tag - command: date -u +%Y%m%d%H%M%S register: pkg_date + + # Development package naming - name: Calculating the Debian package version command: echo {{ closest_tag }}+git{{ pkg_date }}-1 register: pkg_deb_revision + when: "exact_tag | trim | count == 0" - name: Calculating the RPM package version shell: script: echo {{ closest_tag }}.{% print pkg_date.stdout[:8] %}git$(git rev-parse --short HEAD) register: pkg_rpm_revision + when: "exact_tag | trim | count == 0" + + # Stable package naming + - name: Calculating the Debian package version + command: echo {{ exact_tag }}-1 + register: pkg_deb_revision + when: "exact_tag | trim | count > 0" + - name: Calculating the RPM package version + shell: + script: echo {{ exact_tag }} + register: pkg_rpm_revision + when: "exact_tag | trim | count > 0" - name: Metadata Evaluation echo: | @@ -200,7 +215,7 @@ {% set prefix = "{{ www }}/{{ artifacts }}" %} mkdir -p {{ prefix }}/stable chmod 777 {{ prefix }}/stable - ln -sfnd {{ prefix }}/development/{{ commit_id }} {{ prefix }}/stable/{{ exact_tag }} + ( cd {{ prefix }}/stable && ln -sfnd ../development/{{ commit_id }} {{ branch }} ) when: "exact_tag | trim | count > 0" - name: Deploying stable package manifest @@ -240,11 +255,12 @@ - raspbian/buster - ubuntu/xenial - ubuntu/bionic + - ubuntu/cosmic tasks: - - command: "package_cloud push aircrack-ng/git/{{ matrix_tag }} {{ item.pkg }}" + - command: "package_cloud push --yes aircrack-ng/git/{{ matrix_tag }} {{ item.pkg }}" with_items: "{{ pkg | selectattr('pkg_type', 'equalto', 'deb') | list }}" - - command: "package_cloud push aircrack-ng/release/{{ matrix_tag }} {{ item.pkg }}" + - command: "package_cloud push --yes aircrack-ng/release/{{ matrix_tag }} {{ item.pkg }}" when: "exact_tag | trim | count > 0" with_items: "{{ pkg | selectattr('pkg_type', 'equalto', 'deb') | list }}" @@ -263,10 +279,10 @@ - sles/12.2 - sles/12.3 tasks: - - command: "package_cloud push aircrack-ng/git/{{ matrix_tag }} {{ item.pkg }}" + - command: "package_cloud push --yes aircrack-ng/git/{{ matrix_tag }} {{ item.pkg }}" with_items: "{{ pkg | selectattr('pkg_type', 'equalto', 'rpm') | list }}" - - command: "package_cloud push aircrack-ng/release/{{ matrix_tag }} {{ item.pkg }}" + - command: "package_cloud push --yes aircrack-ng/release/{{ matrix_tag }} {{ item.pkg }}" when: "exact_tag | trim | count > 0" with_items: "{{ pkg | selectattr('pkg_type', 'equalto', 'rpm') | list }}" diff -Nru aircrack-ng-1.4/ChangeLog aircrack-ng-1.5.2/ChangeLog --- aircrack-ng-1.4/ChangeLog 2018-09-29 19:46:36.000000000 +0000 +++ aircrack-ng-1.5.2/ChangeLog 2018-12-09 22:53:44.000000000 +0000 @@ -1,3 +1,20 @@ +Version 1.5.1 (changes from aircrack-ng 1.4) - Released 09 Dec 2018: +* Airodump-ng: Fixed AP selection slip in interactive mode +* Airodump-ng: Revamped GPS logging functionality and added new logging format (logcsv) +* Aircrack-ng: Only load the maximum supported and available crypto engine +* Aircrack-ng: Reworked wordlist producer/consumer queue +* Airserv-ng: Fixed communication between platforms with different size int +* Airmon-ng: Improved detection of Raspberry Pis +* General: Signed and unsigned comparison fixes +* Package: Added package for Ubuntu 18.10 (Cosmic) +* General: Code cleanups +* General: Added more tests +* General: Compilation improvements/fixes in autotools +* General: Big endian fixes +* General: Fixed building on FreeBSD and OpenBSD +* General: Added instructions to compile on DragonflyBSD and OpenBSD +* General: Fixed spelling errors + Version 1.4 (changes from aircrack-ng 1.3) - Released 29 Sep 2018: * Aircrack-ng: Added PMKID cracking * Aircrack-ng: Serious speed up and memory usage decrease when loading large files (multiple Gb) using AVL trees diff -Nru aircrack-ng-1.4/configure.ac aircrack-ng-1.5.2/configure.ac --- aircrack-ng-1.4/configure.ac 2018-09-29 19:46:36.000000000 +0000 +++ aircrack-ng-1.5.2/configure.ac 2018-12-09 22:53:44.000000000 +0000 @@ -120,6 +120,10 @@ AX_LIB_SOCKET_NSL AC_CHECK_LIB([dl], [dlopen], [ LIBS="$LIBS -ldl" ], [:]) AC_CHECK_LIB([m], [sin], [ LIBS="$LIBS -lm" ], [:]) +saved_cflags="$CFLAGS" +CFLAGS="" +AC_CHECK_FUNCS([posix_memalign aligned_alloc memalign __mingw_aligned_malloc _aligned_malloc], break) +CFLAGS="$saved_cflags" # # Code Coverage Support @@ -241,6 +245,7 @@ CPU L1 cache-line size: ${CACHELINE_SIZE} Crypto Libraries: + Crypto Engine: ${CRYPTO_TYPE} Gcrypt: ${GCRYPT_LIBS} OpenSSL: ${OPENSSL_LIBS} diff -Nru aircrack-ng-1.4/debian/changelog aircrack-ng-1.5.2/debian/changelog --- aircrack-ng-1.4/debian/changelog 2018-10-10 18:22:28.000000000 +0000 +++ aircrack-ng-1.5.2/debian/changelog 2018-12-21 11:08:01.000000000 +0000 @@ -1,3 +1,37 @@ +aircrack-ng (1:1.5.2-3) unstable; urgency=medium + + * Team upload. + * Fix helper-script aigraph-ng: see https://bugs.kali.org/view.php?id=5159 + + -- Sophie Brun Fri, 21 Dec 2018 12:08:01 +0100 + +aircrack-ng (1:1.5.2-2) unstable; urgency=medium + + * d/control: Use libhwloc-dev instead of hwloc, thanks to sthibault + (closes:#916780) + + -- Samuel Henrique Tue, 18 Dec 2018 23:26:56 +0000 + +aircrack-ng (1:1.5.2-1) unstable; urgency=medium + + * New upstream version 1.5.2 + + -- Samuel Henrique Thu, 13 Dec 2018 23:48:34 +0000 + +aircrack-ng (1:1.5.1-2) experimental; urgency=medium + + * d/rules: get rid of dependency libs on la-file + + -- Samuel Henrique Sun, 09 Dec 2018 19:19:03 +0000 + +aircrack-ng (1:1.5.1-1) unstable; urgency=medium + + * New upstream version 1.5.1 + * d/p/big-endian: patch applied upstream + * d/copyright: python.m4 file was removed upstream + + -- Samuel Henrique Sun, 09 Dec 2018 18:48:52 +0000 + aircrack-ng (1:1.4-3) unstable; urgency=medium * Upload to unstable diff -Nru aircrack-ng-1.4/debian/control aircrack-ng-1.5.2/debian/control --- aircrack-ng-1.4/debian/control 2018-10-10 18:22:28.000000000 +0000 +++ aircrack-ng-1.5.2/debian/control 2018-12-21 11:08:01.000000000 +0000 @@ -7,7 +7,7 @@ Homepage: http://www.aircrack-ng.org/ Build-Depends: debhelper (>= 11), dh-python, - hwloc, + libhwloc-dev, libcmocka-dev, libgcrypt-dev | libgcrypt20-dev | libgcrypt11-dev, libnl-genl-3-dev [linux-any], diff -Nru aircrack-ng-1.4/debian/copyright aircrack-ng-1.5.2/debian/copyright --- aircrack-ng-1.4/debian/copyright 2018-10-10 18:22:28.000000000 +0000 +++ aircrack-ng-1.5.2/debian/copyright 2018-12-21 11:08:01.000000000 +0000 @@ -58,7 +58,7 @@ Files: build/m4/ax_append_flag.m4 build/m4/ax_cflags_warn_all.m4 build/m4/ax_check_compile_flag.m4 build/m4/ax_compiler_vendor.m4 - build/m4/ax_pthread.m4 build/m4/python.m4 build/m4/python.m4 + build/m4/ax_pthread.m4 Copyright: 2008 Guido U. Draheim 2008 Steven G. Johnson 2008 Matteo Frigo diff -Nru aircrack-ng-1.4/debian/helper-scripts/airgraph-ng aircrack-ng-1.5.2/debian/helper-scripts/airgraph-ng --- aircrack-ng-1.4/debian/helper-scripts/airgraph-ng 2018-10-10 18:22:28.000000000 +0000 +++ aircrack-ng-1.5.2/debian/helper-scripts/airgraph-ng 2018-12-21 11:08:01.000000000 +0000 @@ -2,4 +2,4 @@ set -e -cd /usr/share/airgraph-ng && python airgraph-ng "$@" +python /usr/share/airgraph-ng/airgraph-ng "$@" diff -Nru aircrack-ng-1.4/debian/patches/big-endian.patch aircrack-ng-1.5.2/debian/patches/big-endian.patch --- aircrack-ng-1.4/debian/patches/big-endian.patch 2018-10-10 18:22:28.000000000 +0000 +++ aircrack-ng-1.5.2/debian/patches/big-endian.patch 1970-01-01 00:00:00.000000000 +0000 @@ -1,116 +0,0 @@ -From 258dcad69d789369d88102a2de9536686f1bb63a Mon Sep 17 00:00:00 2001 -From: Joseph Benden -Date: Wed, 10 Oct 2018 01:40:34 +0000 -Subject: [PATCH] aircrack-ng: Big Endian fixes. Fixes #1968. - ---- - src/aircrack-ng.c | 30 ++++++++++++++++++------------ - src/pcap.h | 1 + - 2 files changed, 19 insertions(+), 12 deletions(-) - -diff --git a/src/aircrack-ng.c b/src/aircrack-ng.c -index 7fb50e68..2916daf6 100644 ---- a/src/aircrack-ng.c -+++ b/src/aircrack-ng.c -@@ -1929,7 +1929,7 @@ static void packet_reader_thread(void * arg) - } - - fmt = FORMAT_IVS; -- if (memcmp(&pfh, HCCAPX_MAGIC, 4) == 0) -+ if (memcmp(&pfh, HCCAPX_MAGIC, 4) == 0 || memcmp(&pfh, HCCAPX_CIGAM, 4) == 0) - { - fmt = FORMAT_HCCAPX; - } -@@ -1956,7 +1956,13 @@ static void packet_reader_thread(void * arg) - - /* take care of endian issues and check the link type */ - -- if (pfh.magic == TCPDUMP_CIGAM) SWAP32(pfh.linktype); -+ if (pfh.magic == TCPDUMP_CIGAM) -+ { -+ pfh.version_major = ___my_swab16(pfh.version_major); -+ pfh.version_minor = ___my_swab16(pfh.version_minor); -+ pfh.snaplen = ___my_swab32(pfh.snaplen); -+ pfh.linktype = ___my_swab32(pfh.linktype); -+ } - - if (pfh.linktype != LINKTYPE_IEEE802_11 - && pfh.linktype != LINKTYPE_PRISM_HEADER -@@ -2063,8 +2069,8 @@ static void packet_reader_thread(void * arg) - - if (pfh.magic == TCPDUMP_CIGAM) - { -- SWAP32(pkh.caplen); -- SWAP32(pkh.len); -+ pkh.caplen = ___my_swab32(pkh.caplen); -+ pkh.len = ___my_swab32(pkh.len); - } - - if (pkh.caplen <= 0 || pkh.caplen > 65535) -@@ -2087,9 +2093,7 @@ static void packet_reader_thread(void * arg) - n = 64; - else - { -- n = *(int *) (h80211 + 4); -- -- if (pfh.magic == TCPDUMP_CIGAM) SWAP32(n); -+ n = le32_to_cpu(*(int *) (h80211 + 4)); - } - - if (n < 8 || n >= (int) pkh.caplen) continue; -@@ -2101,7 +2105,7 @@ static void packet_reader_thread(void * arg) - else if (pfh.linktype == LINKTYPE_RADIOTAP_HDR) - { - /* remove the radiotap header */ -- n = *(unsigned short *) (h80211 + 2); -+ n = le16_to_cpu(*(unsigned short *) (h80211 + 2)); - - if (n <= 0 || n >= (int) pkh.caplen) continue; - -@@ -4709,10 +4713,12 @@ struct AP_info * hccapx_to_ap(struct hccapx * hx) - memcpy(&ap->wpa.snonce, &hx->nonce_sta, sizeof(hx->nonce_sta)); - memcpy(&ap->wpa.anonce, &hx->nonce_ap, sizeof(hx->nonce_ap)); - memcpy(&ap->wpa.eapol, &hx->eapol, sizeof(hx->eapol)); -- memcpy(&ap->wpa.eapol_size, &hx->eapol_len, sizeof(hx->eapol_len)); - memcpy(&ap->wpa.keyver, &hx->keyver, sizeof(hx->keyver)); - memcpy(&ap->wpa.keymic, &hx->keymic, sizeof(hx->keymic)); - -+ assert(sizeof(hx->eapol_len) == 2); -+ ap->wpa.eapol_size = le16_to_cpu(hx->eapol_len); -+ - return ap; - } - -@@ -4724,9 +4730,9 @@ static hccapx_t ap_to_hccapx(struct AP_info * ap) - - memset(&hx, 0, sizeof(hx)); - -- temp = HCCAPX_SIGNATURE; -+ temp = cpu_to_le32(HCCAPX_SIGNATURE); - memcpy(&hx.signature, &temp, sizeof(temp)); -- temp = HCCAPX_CURRENT_VERSION; -+ temp = cpu_to_le32(HCCAPX_CURRENT_VERSION); - memcpy(&hx.version, &temp, sizeof(temp)); - hx.message_pair = 0; // Temporary (see docs) - -@@ -4740,7 +4746,7 @@ static hccapx_t ap_to_hccapx(struct AP_info * ap) - memcpy(&hx.keymic, &ap->wpa.keymic, sizeof(ap->wpa.keymic)); - memcpy(&hx.nonce_sta, &ap->wpa.snonce, sizeof(ap->wpa.snonce)); - memcpy(&hx.nonce_ap, &ap->wpa.anonce, sizeof(ap->wpa.anonce)); -- memcpy(&hx.eapol_len, &ap->wpa.eapol_size, sizeof(ap->wpa.eapol_size)); -+ hx.eapol_len = cpu_to_le16(ap->wpa.eapol_size); - memcpy(&hx.eapol, &ap->wpa.eapol, sizeof(ap->wpa.eapol)); - return hx; - } -diff --git a/src/pcap.h b/src/pcap.h -index e2415f4c..4ff3318e 100644 ---- a/src/pcap.h -+++ b/src/pcap.h -@@ -42,6 +42,7 @@ - #define FORMAT_HCCAPX 5 - - #define HCCAPX_MAGIC "HCPX" -+#define HCCAPX_CIGAM "XPCH" - #define TCPDUMP_MAGIC 0xA1B2C3D4 - #define TCPDUMP_CIGAM 0xD4C3B2A1 - #define IVSONLY_MAGIC "\xBF\xCA\x84\xD4" diff -Nru aircrack-ng-1.4/debian/patches/series aircrack-ng-1.5.2/debian/patches/series --- aircrack-ng-1.4/debian/patches/series 2018-10-10 18:22:28.000000000 +0000 +++ aircrack-ng-1.5.2/debian/patches/series 1970-01-01 00:00:00.000000000 +0000 @@ -1 +0,0 @@ -big-endian.patch diff -Nru aircrack-ng-1.4/debian/rules aircrack-ng-1.5.2/debian/rules --- aircrack-ng-1.4/debian/rules 2018-10-10 18:22:28.000000000 +0000 +++ aircrack-ng-1.5.2/debian/rules 2018-12-21 11:08:01.000000000 +0000 @@ -19,6 +19,8 @@ rm -f $(CURDIR)/debian/aircrack-ng/usr/share/man/man8/airdriver-ng* rm -f $(CURDIR)/debian/aircrack-ng/usr/sbin/airodump-ng-oui-update rm -f $(CURDIR)/debian/aircrack-ng/usr/sbin/airdriver-ng + ls $(CURDIR)/debian/aircrack-ng/usr/lib/ + find $(CURDIR)/debian/aircrack-ng/usr/lib/ -iname *.la -type f -exec sed -i "/dependency_libs/ s/'.*'/''/" {} \; override_dh_fixperms-indep: dh_fixperms diff -Nru aircrack-ng-1.4/.github/ISSUE_TEMPLATE/bug_report.md aircrack-ng-1.5.2/.github/ISSUE_TEMPLATE/bug_report.md --- aircrack-ng-1.4/.github/ISSUE_TEMPLATE/bug_report.md 1970-01-01 00:00:00.000000000 +0000 +++ aircrack-ng-1.5.2/.github/ISSUE_TEMPLATE/bug_report.md 2018-12-09 22:53:44.000000000 +0000 @@ -0,0 +1,57 @@ +--- +name: Bug report +about: Used to report a defect in the source code, scripts, etc... Post questions + about usage in the Aircrack-ng forum at https://forum.aircrack-ng.org + +--- + +Please read the following: + +- **exploits MUST be sent to security@aircrack-ng.org.** +- Always test with current git master before opening a bug +- Use the search function to see if the bug you're about to post isn't a duplicate. If an existing bug is open and you have new information, update it. If a bug exists and is closed but still experience the issue with git master, reopen it and add useful information to it +- Unless linked, one bug per ticket. +- Don't worry about any of the items on the right panel (Assignee, Labels or Milestone), we will take care of them + +The following must be taken to the forum first: + - Not receiving any packets with airodump-ng or any other tool + - Can't crack a network + - Wireless card doesn't work + - Channel -1. It is most likely a technique issue or possibly a misunderstanding, refer to the documentation and if still an issue, take it to the forum + + +**REMOVE ALL OF THE ABOVE TEXT** + +# Issue type + +**REMOVE THOSE WHICH DO NOT APPLY** +- Defect - Compilation or `make check` issue - Attach `config.log` and provide relevant system information such as `lscpu` - Make sure dependencies are installed +- Defect - Crash +- Defect - Incorrect value displayed/received/stored +- Defect - Unexpected behavior (obvious or confirmed in the forum) + +# System information + +- OS: +- CPU: +- Wireless card and chipset (if relevant): + +# Aircrack-ng version + +- Version: +- Commit Revision hash: + +# Defect +## How to reproduce the issue + +A clear and concise list of steps describing the issue, relevant commands and errors/outputs. Such as: What command(s) did you run? What was displayed/happened? What did you expect to happen or be displayed? + +Do not use pastebin-type links and avoid images whenever possible. If the content (output or error) is text and can be copy/pasted, enclose it with backticks. If it is large, put it in a file and attach it to the ticket. + +GitHub markdown guide: https://guides.github.com/features/mastering-markdown/ + +If you aren't familiar with bug reporting, [this](https://www.chiark.greenend.org.uk/~sgtatham/bugs.html) is an excellent read to help you describe bugs accurately + +## Related issues + +Link to any related issue from within the project or outside (GitHub or any other bug tracker or relevant forum post, etc...). diff -Nru aircrack-ng-1.4/.github/ISSUE_TEMPLATE/feature_request.md aircrack-ng-1.5.2/.github/ISSUE_TEMPLATE/feature_request.md --- aircrack-ng-1.4/.github/ISSUE_TEMPLATE/feature_request.md 1970-01-01 00:00:00.000000000 +0000 +++ aircrack-ng-1.5.2/.github/ISSUE_TEMPLATE/feature_request.md 2018-12-09 22:53:44.000000000 +0000 @@ -0,0 +1,22 @@ +--- +name: Feature request +about: Suggest an idea for this project + +--- + +Please read the following: + + - Always test with current git master before opening a feature request + - Use the search function to see if the feature you're about to request isn't a duplicate. If an existing issue is open and you have new information, update it + - One feature/topic request per ticket + - Don't worry about any of the items on the right panel (Assignee, Labels or Milestone), we will take care of them + +**REMOVE ALL OF THE ABOVE TEXT** + +# Description + +Describe the feature/topic. Even though the following is more geared toward bug reporting, it is an excellent read to provide useful details: https://www.chiark.greenend.org.uk/~sgtatham/bugs.html + +If output/file content is relevant, add an example enclosed in backticks. + +GitHub markdown guide: https://guides.github.com/features/mastering-markdown/ diff -Nru aircrack-ng-1.4/.gitignore aircrack-ng-1.5.2/.gitignore --- aircrack-ng-1.4/.gitignore 2018-09-29 19:46:36.000000000 +0000 +++ aircrack-ng-1.5.2/.gitignore 2018-12-09 22:53:44.000000000 +0000 @@ -79,3 +79,5 @@ /test/unit/test-string-has-suffix /test/unit/test-wpapsk /test/unit/test-wpapsk-cmac +/test/unit/test-circular-buffer +/test/unit/test-circular-queue diff -Nru aircrack-ng-1.4/INSTALLING aircrack-ng-1.5.2/INSTALLING --- aircrack-ng-1.4/INSTALLING 2018-09-29 19:46:36.000000000 +0000 +++ aircrack-ng-1.5.2/INSTALLING 2018-12-09 22:53:44.000000000 +0000 @@ -45,10 +45,20 @@ `sudo yum install libtool pkgconfig sqlite-devel autoconf automake openssl-devel libpcap-devel pcre-devel rfkill libnl3-devel gcc gcc-c++ ethtool hwloc-devel libcmocka-devel` -==== FreeBSD ==== +==== BSD ==== + +===== FreeBSD ===== `pkg install pkgconf shtool libtool gcc7 automake autoconf pcre sqlite3 openssl gmake hwloc cmocka` +===== DragonflyBSD ===== + + `pkg install pkgconf shtool libtool gcc7 automake autoconf pcre sqlite3 libgcrypt gmake cmocka` + +===== OpenBSD ===== + + `pkg_add pkgconf shtool libtool gcc automake autoconf pcre sqlite3 openssl gmake cmocka` + ==== OSX ==== XCode, Xcode command line tools and HomeBrew are required. @@ -159,7 +169,7 @@ * with-static-simd=: Compile a single optimization in aircrack-ng binary. Useful when compiling statically and/or for space-constrained devices. Valid SIMD options: x86-sse2, - x86-avx, x86-avx2, x86-avx512, ppc-altivec, ppc-power8, arm-neon, arm-asimd + x86-avx, x86-avx2, x86-avx512, ppc-altivec, ppc-power8, arm-neon, arm-asimd. Must be used with --enable-static --disable-shared. When using those 2 options, the default is to compile the generic optimization in the binary. --with-static-simd merely allows to choose another one. @@ -225,7 +235,7 @@ * Compiling on FreeBSD with better performance - `env CC=gcc7 CXX=g++7 ./configure` + `env CC=gcc7 CXX=g++7 MAKE=gmake ./configure` `gmake` * Compiling on Cygwin with Airpcap (assuming Airpcap devpack is unpacked in Aircrack-ng directory) @@ -241,6 +251,24 @@ make ``` + * Compiling on DragonflyBSD with gcrypt using GCC 7 + + ``` + autoreconf -i + env CC=gcc7 CXX=g++7 MAKE=gmake ./configure --with-experimental --with-gcrypt + gmake + ``` + + * Compiling on OpenBSD (with autoconf 2.69 and automake 1.16) + + ``` + export AUTOCONF_VERSION=2.69 + export AUTOMAKE_VERSION=1.16 + autoreconf -i + env MAKE=gmake ./configure + gmake + ``` + == Packaging == Automatic detection of CPU optimization is done at run time. This behavior diff -Nru aircrack-ng-1.4/manpages/airbase-ng.8 aircrack-ng-1.5.2/manpages/airbase-ng.8 --- aircrack-ng-1.4/manpages/airbase-ng.8 2018-09-29 19:46:36.000000000 +0000 +++ aircrack-ng-1.5.2/manpages/airbase-ng.8 2018-12-09 22:53:44.000000000 +0000 @@ -1,4 +1,4 @@ -.TH AIRBASE-NG 8 "September 2018" "Version 1.4" +.TH AIRBASE-NG 8 "December 2018" "Version 1.5.2" .SH NAME airbase-ng - multi-purpose tool aimed at attacking clients as opposed to the Access Point (AP) itself diff -Nru aircrack-ng-1.4/manpages/aircrack-ng.1 aircrack-ng-1.5.2/manpages/aircrack-ng.1 --- aircrack-ng-1.4/manpages/aircrack-ng.1 2018-09-29 19:46:36.000000000 +0000 +++ aircrack-ng-1.5.2/manpages/aircrack-ng.1 2018-12-09 22:53:44.000000000 +0000 @@ -1,4 +1,4 @@ -.TH AIRCRACK-NG 1 "September 2018" "Version 1.4" +.TH AIRCRACK-NG 1 "December 2018" "Version 1.5.2" .SH NAME aircrack-ng - a 802.11 WEP / WPA-PSK key cracker @@ -117,7 +117,7 @@ In order to use a dictionary with hexadecimal values, prefix the dictionary with "h:". Each byte in each key must be separated by ':'. When using with WEP, key length should be specified using -n. .TP .I -N or --new-session -Create a new cracking session. It allows to interrupt cracking session and restart at a later time (using -R or --restore-session). Status files are saved every 5 minutes. It does not overwrite existing session file. +Create a new cracking session. It allows one to interrupt cracking session and restart at a later time (using -R or --restore-session). Status files are saved every 5 minutes. It does not overwrite existing session file. .TP .I -R or --restore-session Restore and continue a previously saved cracking session. This parameter is to be used alone, no other parameter should be specified when starting aircrack-ng (all the required information is in the session file). @@ -147,7 +147,7 @@ .B SIMD selection: .TP .I --simd=