On 2021/08/27 01:10, Brad Smith wrote:
> On 8/20/2021 11:12 PM, Brad Smith wrote:
> > Here is an update to Aircrack-ng 1.6.
> > 
> > Other than building the package that is all I have tested on amd64
> > and i386.
> > 
> > Any users familiar with Aircrack-ng able to test this out?
> 
> Anyone?

I haven't looked into runtime, but the test suite goes a lot better
with USE_LIBTOOL=gnu..

> > Index: Makefile
> > ===================================================================
> > RCS file: /home/cvs/ports/security/aircrack-ng/Makefile,v
> > retrieving revision 1.33
> > diff -u -p -u -p -r1.33 Makefile
> > --- Makefile        27 Dec 2020 18:13:18 -0000      1.33
> > +++ Makefile        20 Aug 2021 00:21:44 -0000
> > @@ -1,8 +1,8 @@
> >   # $OpenBSD: Makefile,v 1.33 2020/12/27 18:13:18 sthen Exp $
> >   COMMENT=          802.11 WEP and WPA-PSK keys cracking program
> > -DISTNAME=          aircrack-ng-1.5.2
> > -REVISION=          6
> > +
> > +DISTNAME=          aircrack-ng-1.6
> >   CATEGORIES=               security
> >   HOMEPAGE=         https://www.aircrack-ng.org/
> > @@ -10,8 +10,7 @@ HOMEPAGE=         https://www.aircrack-ng.org/
> >   # GPLv2
> >   PERMIT_PACKAGE=   Yes
> > -WANTLIB+=          c pthread crypto z pcre
> > -WANTLIB+=          ${COMPILER_LIBCXX} m sqlite3
> > +WANTLIB+=          ${COMPILER_LIBCXX} c crypto m pcre pthread sqlite3 ssl z
> >   MASTER_SITES=             https://download.aircrack-ng.org/
> > @@ -23,10 +22,6 @@ LIB_DEPENDS=             databases/sqlite3 \
> >   RUN_DEPENDS+=             net/arp-scan,-mac>=20190128
> >   USE_GMAKE=                Yes
> > -.if ${MACHINE_ARCH} == "i386"
> > -# ld: error: undefined symbol: __i686.get_pc_thunk.bx
> > -USE_LLD=           No
> > -.endif
> >   LIBTOOL_FLAGS=            --tag=disable-static
> >   AUTOCONF_VERSION= 2.69
> >   AUTOMAKE_VERSION= 1.16
> > @@ -56,8 +51,7 @@ PKG_ARGS+=              -Darm=0
> >   MAKE_ENV+=              ALTIVEC=false POWER8=false
> >   .endif
> > -
> >   pre-configure:
> > -   ${SUBST_CMD} ${WRKSRC}/src/airodump-ng.h
> > +   ${SUBST_CMD} ${WRKSRC}/src/airodump-ng/airodump-ng.c
> >   .include <bsd.port.mk>
> > Index: distinfo
> > ===================================================================
> > RCS file: /home/cvs/ports/security/aircrack-ng/distinfo,v
> > retrieving revision 1.4
> > diff -u -p -u -p -r1.4 distinfo
> > --- distinfo        23 Feb 2019 22:23:25 -0000      1.4
> > +++ distinfo        20 Aug 2021 00:21:44 -0000
> > @@ -1,2 +1,2 @@
> > -SHA256 (aircrack-ng-1.5.2.tar.gz) = 
> > nlkv52WARiIOCsCm0FxAJpA/MHeySIk+AFbMvk7ogkE=
> > -SIZE (aircrack-ng-1.5.2.tar.gz) = 7138360
> > +SHA256 (aircrack-ng-1.6.tar.gz) = 
> > Twv9SG78bqcin3+8VDQP+LIJSg1z6fYX4KOfh4mZokc=
> > +SIZE (aircrack-ng-1.6.tar.gz) = 7933308
> > Index: patches/patch-build_m4_aircrack_ng_simd_m4
> > ===================================================================
> > RCS file: patches/patch-build_m4_aircrack_ng_simd_m4
> > diff -N patches/patch-build_m4_aircrack_ng_simd_m4
> > --- patches/patch-build_m4_aircrack_ng_simd_m4      13 Jun 2020 17:38:49 
> > -0000      1.1
> > +++ /dev/null       1 Jan 1970 00:00:00 -0000
> > @@ -1,25 +0,0 @@
> > -$OpenBSD: patch-build_m4_aircrack_ng_simd_m4,v 1.1 2020/06/13 17:38:49 
> > cwen Exp $
> > -
> > -Ensure that disabling AltiVec and POWER8 instructions with MAKE_ENV is 
> > honoured
> > -even if the build machine supports them, from:
> > -https://github.com/aircrack-ng/aircrack-ng/issues/1941
> > -
> > -Index: build/m4/aircrack_ng_simd.m4
> > ---- build/m4/aircrack_ng_simd.m4.orig
> > -+++ build/m4/aircrack_ng_simd.m4
> > -@@ -132,7 +132,6 @@ then
> > -     AX_CHECK_COMPILE_FLAG([-maltivec], [
> > -         AX_APPEND_FLAG(-maltivec, [ppc_altivec_[]_AC_LANG_ABBREV[]flags])
> > -         AC_SUBST(ppc_altivec_[]_AC_LANG_ABBREV[]flags)
> > --        ALTIVEC_FOUND=1
> > -     ])
> > -
> > -     AX_CHECK_COMPILE_FLAG([-mabi=altivec], [
> > -@@ -148,7 +147,6 @@ then
> > -     AX_CHECK_COMPILE_FLAG([-mpower8-vector], [
> > -         AX_APPEND_FLAG(-mpower8-vector, 
> > [ppc_altivec_[]_AC_LANG_ABBREV[]flags])
> > -         AC_SUBST(ppc_altivec_[]_AC_LANG_ABBREV[]flags)
> > --        POWER8_FOUND=1
> > -     ])
> > - fi
> > -
> > Index: patches/patch-include_aircrack-ng_crypto_sha1-sse2_h
> > ===================================================================
> > RCS file: patches/patch-include_aircrack-ng_crypto_sha1-sse2_h
> > diff -N patches/patch-include_aircrack-ng_crypto_sha1-sse2_h
> > --- /dev/null       1 Jan 1970 00:00:00 -0000
> > +++ patches/patch-include_aircrack-ng_crypto_sha1-sse2_h    20 Aug 2021 
> > 00:21:44 -0000
> > @@ -0,0 +1,365 @@
> > +$OpenBSD$
> > +
> > +chore: remove unused assembly routines
> > +
> > +Index: include/aircrack-ng/crypto/sha1-sse2.h
> > +--- include/aircrack-ng/crypto/sha1-sse2.h.orig
> > ++++ include/aircrack-ng/crypto/sha1-sse2.h
> > +@@ -36,357 +36,3 @@
> > + #include <time.h>
> > +
> > + #include <aircrack-ng/crypto/crypto.h>
> > +-
> > +-#if defined(__i386__) || ((defined(__x86_64__) && !defined(__CYGWIN__))   
> >      \
> > +-                                            || (defined(__x86_64__) && 
> > defined(__CYGWIN__)       \
> > +-                                                    && 
> > !defined(__clang__)))
> > +-
> > +-#ifdef OLD_SSE_CORE
> > +-void show_result(char * key, unsigned char * pmk)
> > +-{
> > +-  int i;
> > +-  printf("%-14s ", key);
> > +-  for (i = 0; i < 32; i++) printf("%.2X", pmk[i]);
> > +-  printf("\n");
> > +-}
> > +-
> > +-#endif
> > +-extern int shasse2_init(unsigned char ctx[80]) 
> > __attribute__((regparm(1)));
> > +-
> > +-extern int shasse2_ends(unsigned char ctx[80], unsigned char digests[80])
> > +-  __attribute__((regparm(2)));
> > +-
> > +-extern int shasse2_data(unsigned char ctx[80],
> > +-                                          unsigned char data[256],
> > +-                                          unsigned char buf[1280]) 
> > __attribute__((regparm(3)));
> > +-
> > +-extern int shasse2_cpuid(void);
> > +-
> > +-#ifdef OLD_SSE_CORE
> > +-void calc_4pmk(char * _key1,
> > +-                     char * _key2,
> > +-                     char * _key3,
> > +-                     char * _key4,
> > +-                     char * _essid,
> > +-                     unsigned char * _pmk1,
> > +-                     unsigned char * _pmk2,
> > +-                     unsigned char * _pmk3,
> > +-                     unsigned char * _pmk4)
> > +-{
> > +-  int slen;
> > +-  char essid[36] __attribute__((aligned(16)));
> > +-  char key1[128] __attribute__((aligned(16)));
> > +-  char key2[128] __attribute__((aligned(16)));
> > +-  char key3[128] __attribute__((aligned(16)));
> > +-  char key4[128] __attribute__((aligned(16)));
> > +-  unsigned char pmks[128 * 4] __attribute__((aligned(16)));
> > +-
> > +-  // All in double size
> > +-  unsigned char k_ipad[256] __attribute__((aligned(16)));
> > +-  unsigned char ctx_ipad[80] __attribute__((aligned(16)));
> > +-  unsigned char k_opad[256] __attribute__((aligned(16)));
> > +-  unsigned char ctx_opad[80] __attribute__((aligned(16)));
> > +-  unsigned char buffer[256] __attribute__((aligned(16)));
> > +-  unsigned char sha1_ctx[80] __attribute__((aligned(16)));
> > +-  unsigned char wrkbuf[1280] __attribute__((aligned(16)));
> > +-  unsigned i, *u, *v, *w, *u3, *v4;
> > +-  unsigned char *pmk1, *pmk2, *pmk3, *pmk4;
> > +-
> > +-  pmk1 = pmks;
> > +-  pmk2 = pmks + 128;
> > +-  pmk3 = pmks + 128 * 2;
> > +-  pmk4 = pmks + 128 * 3;
> > +-
> > +-  memset(key1, 0, sizeof(key1));
> > +-  memset(key2, 0, sizeof(key2));
> > +-  memset(key3, 0, sizeof(key3));
> > +-  memset(key4, 0, sizeof(key4));
> > +-  memset(essid, 0, sizeof(essid));
> > +-  memset(pmks, 0, sizeof(pmks));
> > +-  memset(buffer, 0, sizeof(buffer));
> > +-  memset(wrkbuf, 0, sizeof(wrkbuf));
> > +-
> > +-  memccpy(essid, _essid, 0, sizeof(essid));
> > +-  memccpy(key1, _key1, 0, sizeof(key1));
> > +-  memccpy(key2, _key2, 0, sizeof(key2));
> > +-  memccpy(key3, _key3, 0, sizeof(key3));
> > +-  memccpy(key4, _key4, 0, sizeof(key4));
> > +-
> > +-  slen = strlen(essid) + 4;
> > +-
> > +-  /* SSE2 available, so compute four PMKs in a single row */
> > +-
> > +-  memset(k_ipad, 0, sizeof(k_ipad));
> > +-  memset(k_opad, 0, sizeof(k_opad));
> > +-
> > +-  memcpy(k_ipad, key1, strlen(key1));
> > +-  memcpy(k_opad, key1, strlen(key1));
> > +-
> > +-  memcpy(k_ipad + 64, key2, strlen(key2));
> > +-  memcpy(k_opad + 64, key2, strlen(key2));
> > +-
> > +-  memcpy(k_ipad + 128, key3, strlen(key3));
> > +-  memcpy(k_opad + 128, key3, strlen(key3));
> > +-
> > +-  memcpy(k_ipad + 192, key4, strlen(key4));
> > +-  memcpy(k_opad + 192, key4, strlen(key4));
> > +-
> > +-  u = (unsigned *) (k_ipad);
> > +-  v = (unsigned *) (k_ipad + 64);
> > +-  u3 = (unsigned *) (k_ipad + 128);
> > +-  v4 = (unsigned *) (k_ipad + 192);
> > +-  w = (unsigned *) buffer;
> > +-
> > +-  for (i = 0; i < 16; i++)
> > +-  {
> > +-          /* interleave the data */
> > +-
> > +-          *w++ = *u++ ^ 0x36363636;
> > +-          *w++ = *v++ ^ 0x36363636;
> > +-          *w++ = *u3++ ^ 0x36363636;
> > +-          *w++ = *v4++ ^ 0x36363636;
> > +-  }
> > +-
> > +-  shasse2_init(ctx_ipad);
> > +-  shasse2_data(ctx_ipad, buffer, wrkbuf);
> > +-
> > +-  u = (unsigned *) (k_opad);
> > +-  v = (unsigned *) (k_opad + 64);
> > +-  u3 = (unsigned *) (k_opad + 128);
> > +-  v4 = (unsigned *) (k_opad + 192);
> > +-  w = (unsigned *) buffer;
> > +-
> > +-  for (i = 0; i < 16; i++)
> > +-  {
> > +-          *w++ = *u++ ^ 0x5C5C5C5C;
> > +-          *w++ = *v++ ^ 0x5C5C5C5C;
> > +-          *w++ = *u3++ ^ 0x5C5C5C5C;
> > +-          *w++ = *v4++ ^ 0x5C5C5C5C;
> > +-  }
> > +-
> > +-  shasse2_init(ctx_opad);
> > +-  shasse2_data(ctx_opad, buffer, wrkbuf);
> > +-
> > +-  memset(buffer, 0, sizeof(buffer));
> > +-
> > +-  buffer[80] = buffer[84] = buffer[88] = buffer[92] = 0x80;
> > +-  buffer[242] = buffer[246] = buffer[250] = buffer[254] = 0x02;
> > +-  buffer[243] = buffer[247] = buffer[251] = buffer[255] = 0xA0;
> > +-
> > +-  essid[slen - 1] = '\1';
> > +-
> > +-  HMAC(EVP_sha1(),
> > +-           (unsigned char *) key1,
> > +-           strlen(key1),
> > +-           (unsigned char *) essid,
> > +-           slen,
> > +-           pmk1,
> > +-           NULL);
> > +-  HMAC(EVP_sha1(),
> > +-           (unsigned char *) key2,
> > +-           strlen(key2),
> > +-           (unsigned char *) essid,
> > +-           slen,
> > +-           pmk2,
> > +-           NULL);
> > +-  HMAC(EVP_sha1(),
> > +-           (unsigned char *) key3,
> > +-           strlen(key3),
> > +-           (unsigned char *) essid,
> > +-           slen,
> > +-           pmk3,
> > +-           NULL);
> > +-  HMAC(EVP_sha1(),
> > +-           (unsigned char *) key4,
> > +-           strlen(key4),
> > +-           (unsigned char *) essid,
> > +-           slen,
> > +-           pmk4,
> > +-           NULL);
> > +-
> > +-  u = (unsigned *) pmk1;
> > +-  v = (unsigned *) pmk2;
> > +-  u3 = (unsigned *) pmk3;
> > +-  v4 = (unsigned *) pmk4;
> > +-  w = (unsigned *) buffer;
> > +-
> > +-  *w++ = *u++;
> > +-  *w++ = *v++;
> > +-  *w++ = *u3++;
> > +-  *w++ = *v4++;
> > +-  *w++ = *u++;
> > +-  *w++ = *v++;
> > +-  *w++ = *u3++;
> > +-  *w++ = *v4++;
> > +-  *w++ = *u++;
> > +-  *w++ = *v++;
> > +-  *w++ = *u3++;
> > +-  *w++ = *v4++;
> > +-  *w++ = *u++;
> > +-  *w++ = *v++;
> > +-  *w++ = *u3++;
> > +-  *w++ = *v4++;
> > +-  *w++ = *u++;
> > +-  *w++ = *v++;
> > +-  *w++ = *u3++;
> > +-  *w++ = *v4++;
> > +-
> > +-  for (i = 1; i < 4096; i++)
> > +-  {
> > +-          memcpy(sha1_ctx, ctx_ipad, 80); // eran 40
> > +-          shasse2_data(sha1_ctx, buffer, wrkbuf);
> > +-          shasse2_ends(sha1_ctx, buffer);
> > +-
> > +-          memcpy(sha1_ctx, ctx_opad, 80);
> > +-          shasse2_data(sha1_ctx, buffer, wrkbuf);
> > +-          shasse2_ends(sha1_ctx, buffer);
> > +-
> > +-          u = (unsigned *) pmk1;
> > +-          v = (unsigned *) pmk2;
> > +-          u3 = (unsigned *) pmk3;
> > +-          v4 = (unsigned *) pmk4;
> > +-          w = (unsigned *) buffer;
> > +-
> > +-          /* de-interleave the digests */
> > +-          *u++ ^= *w++;
> > +-          *v++ ^= *w++;
> > +-          *u3++ ^= *w++;
> > +-          *v4++ ^= *w++;
> > +-          *u++ ^= *w++;
> > +-          *v++ ^= *w++;
> > +-          *u3++ ^= *w++;
> > +-          *v4++ ^= *w++;
> > +-          *u++ ^= *w++;
> > +-          *v++ ^= *w++;
> > +-          *u3++ ^= *w++;
> > +-          *v4++ ^= *w++;
> > +-          *u++ ^= *w++;
> > +-          *v++ ^= *w++;
> > +-          *u3++ ^= *w++;
> > +-          *v4++ ^= *w++;
> > +-          *u++ ^= *w++;
> > +-          *v++ ^= *w++;
> > +-          *u3++ ^= *w++;
> > +-          *v4++ ^= *w++;
> > +-  }
> > +-
> > +-  essid[slen - 1] = '\2';
> > +-
> > +-  HMAC(EVP_sha1(),
> > +-           (unsigned char *) key1,
> > +-           strlen(key1),
> > +-           (unsigned char *) essid,
> > +-           slen,
> > +-           pmk1 + 20,
> > +-           NULL);
> > +-  HMAC(EVP_sha1(),
> > +-           (unsigned char *) key2,
> > +-           strlen(key2),
> > +-           (unsigned char *) essid,
> > +-           slen,
> > +-           pmk2 + 20,
> > +-           NULL);
> > +-  HMAC(EVP_sha1(),
> > +-           (unsigned char *) key3,
> > +-           strlen(key3),
> > +-           (unsigned char *) essid,
> > +-           slen,
> > +-           pmk3 + 20,
> > +-           NULL);
> > +-  HMAC(EVP_sha1(),
> > +-           (unsigned char *) key4,
> > +-           strlen(key4),
> > +-           (unsigned char *) essid,
> > +-           slen,
> > +-           pmk4 + 20,
> > +-           NULL);
> > +-
> > +-  u = (unsigned *) (pmk1 + 20); // eran 20
> > +-  v = (unsigned *) (pmk2 + 20);
> > +-  u3 = (unsigned *) (pmk3 + 20); // eran 20
> > +-  v4 = (unsigned *) (pmk4 + 20);
> > +-  w = (unsigned *) buffer;
> > +-
> > +-  *w++ = *u++;
> > +-  *w++ = *v++;
> > +-  *w++ = *u3++;
> > +-  *w++ = *v4++;
> > +-  *w++ = *u++;
> > +-  *w++ = *v++;
> > +-  *w++ = *u3++;
> > +-  *w++ = *v4++;
> > +-  *w++ = *u++;
> > +-  *w++ = *v++;
> > +-  *w++ = *u3++;
> > +-  *w++ = *v4++;
> > +-  *w++ = *u++;
> > +-  *w++ = *v++;
> > +-  *w++ = *u3++;
> > +-  *w++ = *v4++;
> > +-  *w++ = *u++;
> > +-  *w++ = *v++;
> > +-  *w++ = *u3++;
> > +-  *w++ = *v4++;
> > +-
> > +-  for (i = 1; i < 4096; i++)
> > +-  {
> > +-          memcpy(sha1_ctx, ctx_ipad, 80); // eran 40
> > +-          shasse2_data(sha1_ctx, buffer, wrkbuf);
> > +-          shasse2_ends(sha1_ctx, buffer);
> > +-
> > +-          memcpy(sha1_ctx, ctx_opad, 80);
> > +-          shasse2_data(sha1_ctx, buffer, wrkbuf);
> > +-          shasse2_ends(sha1_ctx, buffer);
> > +-
> > +-          u = (unsigned *) (pmk1 + 20); // eran 20
> > +-          v = (unsigned *) (pmk2 + 20);
> > +-          u3 = (unsigned *) (pmk3 + 20);
> > +-          v4 = (unsigned *) (pmk4 + 20);
> > +-          w = (unsigned *) buffer;
> > +-
> > +-          *u++ ^= *w++;
> > +-          *v++ ^= *w++;
> > +-          *u3++ ^= *w++;
> > +-          *v4++ ^= *w++;
> > +-          *u++ ^= *w++;
> > +-          *v++ ^= *w++;
> > +-          *u3++ ^= *w++;
> > +-          *v4++ ^= *w++;
> > +-          *u++ ^= *w++;
> > +-          *v++ ^= *w++;
> > +-          *u3++ ^= *w++;
> > +-          *v4++ ^= *w++;
> > +-  }
> > +-
> > +-  memcpy(_pmk3, pmk3, 32);
> > +-  memcpy(_pmk4, pmk4, 32);
> > +-  memcpy(_pmk1, pmk1, 32);
> > +-  memcpy(_pmk2, pmk2, 32);
> > +-
> > +-  /*printf("\n");
> > +-  show_result(_key1, _pmk1);
> > +-  show_result(_key2, _pmk2);
> > +-  show_result(_key3, _pmk3);
> > +-  show_result(_key4, _pmk4);
> > +-  fflush(stdout);*/
> > +-}
> > +-#endif
> > +-#else
> > +-#ifdef OLD_SSE_CORE
> > +-void calc_4pmk(char * _key1,
> > +-                     char * _key2,
> > +-                     char * _key3,
> > +-                     char * _key4,
> > +-                     char * _essid,
> > +-                     unsigned char * _pmk1,
> > +-                     unsigned char * _pmk2,
> > +-                     unsigned char * _pmk3,
> > +-                     unsigned char * _pmk4)
> > +-{
> > +-  calc_pmk(_key1, _essid, _pmk1);
> > +-  calc_pmk(_key2, _essid, _pmk2);
> > +-  calc_pmk(_key3, _essid, _pmk3);
> > +-  calc_pmk(_key4, _essid, _pmk4);
> > +-}
> > +-#endif
> > +-#endif
> > Index: patches/patch-lib_Makefile_inc
> > ===================================================================
> > RCS file: patches/patch-lib_Makefile_inc
> > diff -N patches/patch-lib_Makefile_inc
> > --- /dev/null       1 Jan 1970 00:00:00 -0000
> > +++ patches/patch-lib_Makefile_inc  20 Aug 2021 00:21:44 -0000
> > @@ -0,0 +1,26 @@
> > +$OpenBSD$
> > +
> > +chore: remove unused assembly routines
> > +
> > +Index: lib/Makefile.inc
> > +--- lib/Makefile.inc.orig
> > ++++ lib/Makefile.inc
> > +@@ -64,10 +64,6 @@ if LIBGCRYPT
> > + SRC_CRYPTO        +=      %D%/crypto/sha1-git.c
> > + endif
> > +
> > +-if X86
> > +-SRC_CRYPTO        +=      %D%/crypto/sha1-sse2.S
> > +-endif
> > +-
> > + libaccrypto_la_SOURCES    = $(SRC_CRYPTO)
> > + libaccrypto_la_CFLAGS             = $(COMMON_CFLAGS) $(PCRE_CFLAGS)
> > + libaccrypto_la_LIBADD             = $(PCRE_LIBS) 
> > $(LIBAIRCRACK_OSDEP_LIBS) $(CRYPTO_LIBS)
> > +@@ -251,7 +247,6 @@ EXTRA_DIST +=  %D%/ce-wep/uniqueiv.c \
> > +                                                   %D%/cowpatty/cowpatty.c 
> > \
> > +                                                   %D%/crypto/crypto.c \
> > +                                                   %D%/crypto/sha1-git.c \
> > +-                                                  %D%/crypto/sha1-sse2.S \
> > +                                                   
> > %D%/libac/adt/avl_tree.c \
> > +                                                   
> > %D%/libac/adt/circular_buffer.c \
> > +                                                   
> > %D%/libac/adt/circular_queue.c \
> > Index: patches/patch-lib_osdep_openbsd_c
> > ===================================================================
> > RCS file: patches/patch-lib_osdep_openbsd_c
> > diff -N patches/patch-lib_osdep_openbsd_c
> > --- /dev/null       1 Jan 1970 00:00:00 -0000
> > +++ patches/patch-lib_osdep_openbsd_c       20 Aug 2021 00:31:36 -0000
> > @@ -0,0 +1,67 @@
> > +$OpenBSD$
> > +
> > +- fix(osdep/openbsd): use memcpy for fixed length copies
> > +- fix(osdep/openbsd): remove kernel-only header
> > +
> > +Index: lib/osdep/openbsd.c
> > +--- lib/osdep/openbsd.c.orig
> > ++++ lib/osdep/openbsd.c
> > +@@ -42,7 +42,6 @@
> > + #include <net80211/ieee80211_crypto.h>
> > + #include <frame.h>
> > + #include <sys/timeout.h>
> > +-#include <machine/intr.h>
> > + #undef _KERNEL
> > + #include <net80211/ieee80211_node.h>
> > + #include <net80211/ieee80211_ioctl.h>
> > +@@ -364,19 +363,19 @@ static int do_obsd_open(struct wif * wi, char * 
> > iface)
> > +
> > +   /* set iface up and promisc */
> > +   memset(&ifr, 0, sizeof(ifr));
> > +-  strncpy(ifr.ifr_name, iface, IFNAMSIZ);
> > ++  memcpy(ifr.ifr_name, iface, IFNAMSIZ);
> > +   if (ioctl(s, SIOCGIFFLAGS, &ifr) == -1) goto close_sock;
> > +
> > +   flags = ifr.ifr_flags;
> > +   flags |= IFF_UP | IFF_PROMISC;
> > +   memset(&ifr, 0, sizeof(ifr));
> > +-  strncpy(ifr.ifr_name, iface, IFNAMSIZ);
> > ++  memcpy(ifr.ifr_name, iface, IFNAMSIZ);
> > +   ifr.ifr_flags = flags & 0xffff;
> > +   if (ioctl(s, SIOCSIFFLAGS, &ifr) == -1) goto close_sock;
> > +
> > +   /* monitor mode */
> > +   memset(&ifmr, 0, sizeof(ifmr));
> > +-  strncpy(ifmr.ifm_name, iface, IFNAMSIZ);
> > ++  memcpy(ifmr.ifm_name, iface, IFNAMSIZ);
> > +   if (ioctl(s, SIOCGIFMEDIA, &ifmr) == -1) goto close_sock;
> > +
> > +   assert(ifmr.ifm_count != 0);
> > +@@ -392,15 +391,15 @@ static int do_obsd_open(struct wif * wi, char * 
> > iface)
> > +   free(mwords);
> > +
> > +   memset(&ifr, 0, sizeof(ifr));
> > +-  strncpy(ifr.ifr_name, iface, IFNAMSIZ);
> > ++  memcpy(ifr.ifr_name, iface, IFNAMSIZ);
> > +   ifr.ifr_media = ifmr.ifm_current | IFM_IEEE80211_MONITOR;
> > +   if (ioctl(s, SIOCSIFMEDIA, &ifr) == -1) goto close_sock;
> > +
> > +   /* setup ifreq for chan that may be used in future */
> > +-  strncpy(po->po_ireq.i_name, iface, IFNAMSIZ);
> > ++  memcpy(po->po_ireq.i_name, iface, IFNAMSIZ);
> > +
> > +   /* same for ifreq [mac addr] */
> > +-  strncpy(po->po_ifr.ifr_name, iface, IFNAMSIZ);
> > ++  memcpy(po->po_ifr.ifr_name, iface, IFNAMSIZ);
> > +
> > +   /* open bpf */
> > +   for (i = 0; i < 256; i++)
> > +@@ -421,7 +420,7 @@ static int do_obsd_open(struct wif * wi, char * iface)
> > +
> > +   if (ioctl(fd, BIOCSBLEN, &size) < 0) goto close_bpf;
> > +
> > +-  strncpy(ifr.ifr_name, iface, IFNAMSIZ);
> > ++  memcpy(ifr.ifr_name, iface, IFNAMSIZ);
> > +
> > +   if (ioctl(fd, BIOCSETIF, &ifr) < 0) goto close_bpf;
> > +
> > Index: patches/patch-lib_osdep_openbsd_tap_c
> > ===================================================================
> > RCS file: patches/patch-lib_osdep_openbsd_tap_c
> > diff -N patches/patch-lib_osdep_openbsd_tap_c
> > --- /dev/null       1 Jan 1970 00:00:00 -0000
> > +++ patches/patch-lib_osdep_openbsd_tap_c   20 Aug 2021 00:21:44 -0000
> > @@ -0,0 +1,27 @@
> > +$OpenBSD$
> > +
> > +- fix(osdep/openbsd_tap): use correct define for sized buffer
> > +- fix(osdep/openbsd_tap): fix dest buffer length
> > +- chore(osdep/openbsd_tap): switch to memcpy, no formatting is used
> > +
> > +Index: lib/osdep/openbsd_tap.c
> > +--- lib/osdep/openbsd_tap.c.orig
> > ++++ lib/osdep/openbsd_tap.c
> > +@@ -41,7 +41,7 @@ struct tip_obsd
> > +   int to_fd;
> > +   int to_ioctls;
> > +   struct ifreq to_ifr;
> > +-  char to_name[MAX_IFACE_NAME];
> > ++  char to_name[IFNAMSIZ];
> > +   int to_destroy;
> > + };
> > +
> > +@@ -79,7 +79,7 @@ static int ti_do_open_obsd(struct tif * ti, char * nam
> > +   /* get flags */
> > +   ifr = &priv->to_ifr;
> > +   memset(ifr, 0, sizeof(*ifr));
> > +-  snprintf(ifr->ifr_name, sizeof(ifr->ifr_name) - 1, "%s", priv->to_name);
> > ++  memcpy(ifr->ifr_name, priv->to_name, sizeof(ifr->ifr_name));
> > +   if (ioctl(s, SIOCGIFFLAGS, ifr) == -1) goto err2;
> > +   flags = ifr->ifr_flags;
> > +
> > Index: patches/patch-src_Makefile_am
> > ===================================================================
> > RCS file: patches/patch-src_Makefile_am
> > diff -N patches/patch-src_Makefile_am
> > --- patches/patch-src_Makefile_am   23 Feb 2019 22:23:25 -0000      1.1
> > +++ /dev/null       1 Jan 1970 00:00:00 -0000
> > @@ -1,17 +0,0 @@
> > -$OpenBSD: patch-src_Makefile_am,v 1.1 2019/02/23 22:23:25 sebastia Exp $
> > -
> > -our base libtool fails finding libaircrack-util
> > -
> > -
> > -Index: src/Makefile.am
> > ---- src/Makefile.am.orig
> > -+++ src/Makefile.am
> > -@@ -205,7 +205,7 @@ ivstools_LDADD = $(COMMON_LDADD) $(LIBAC_LIBS) $(LIBAI
> > -
> > - kstats_SOURCES = kstats.c
> > - kstats_CFLAGS = $(LIBAC_CFLAGS) $(PTHREAD_CFLAGS)
> > --kstats_LDADD = $(COMMON_LDADD) $(LIBAC_LIBS)
> > -+kstats_LDADD = $(COMMON_LDADD) $(LIBAC_LIBS) $(LIBAIRCRACK_UTIL_LIBS)
> > -
> > - wesside_ng_SOURCES = $(SRC_WS) $(LIBAIRCRACK_OSDEP) $(LIBAIRCRACK_UTIL)
> > - wesside_ng_CFLAGS = $(COMMON_CFLAGS) $(LIBNL_CFLAGS)
> > Index: patches/patch-src_aircrack-osdep_openbsd_c
> > ===================================================================
> > RCS file: patches/patch-src_aircrack-osdep_openbsd_c
> > diff -N patches/patch-src_aircrack-osdep_openbsd_c
> > --- patches/patch-src_aircrack-osdep_openbsd_c      22 Jul 2020 12:53:31 
> > -0000      1.2
> > +++ /dev/null       1 Jan 1970 00:00:00 -0000
> > @@ -1,31 +0,0 @@
> > -$OpenBSD: patch-src_aircrack-osdep_openbsd_c,v 1.2 2020/07/22 12:53:31 tb 
> > Exp $
> > -
> > -Index: src/aircrack-osdep/openbsd.c
> > ---- src/aircrack-osdep/openbsd.c.orig
> > -+++ src/aircrack-osdep/openbsd.c
> > -@@ -37,7 +37,6 @@
> > - #include <net80211/ieee80211_crypto.h>
> > - #include <frame.h>
> > - #include <sys/timeout.h>
> > --#include <machine/intr.h>
> > - #undef _KERNEL
> > - #include <net80211/ieee80211_node.h>
> > - #include <net80211/ieee80211_ioctl.h>
> > -@@ -322,7 +321,7 @@ static int do_obsd_open(struct wif * wi, char * iface)
> > -   int s;
> > -   unsigned int flags;
> > -   struct ifmediareq ifmr;
> > --  int * mwords;
> > -+  uint64_t * mwords;
> > -   struct priv_obsd * po = wi_priv(wi);
> > -   unsigned int size = sizeof(po->po_buf);
> > -
> > -@@ -353,7 +352,7 @@ static int do_obsd_open(struct wif * wi, char * iface)
> > -
> > -   assert(ifmr.ifm_count != 0);
> > -
> > --  mwords = (int *) malloc(ifmr.ifm_count * sizeof(int));
> > -+  mwords = calloc(ifmr.ifm_count, sizeof(*mwords));
> > -   if (!mwords) goto close_sock;
> > -   ifmr.ifm_ulist = mwords;
> > -   if (ioctl(s, SIOCGIFMEDIA, &ifmr) == -1)
> > Index: patches/patch-src_airodump-ng_airodump-ng_c
> > ===================================================================
> > RCS file: patches/patch-src_airodump-ng_airodump-ng_c
> > diff -N patches/patch-src_airodump-ng_airodump-ng_c
> > --- /dev/null       1 Jan 1970 00:00:00 -0000
> > +++ patches/patch-src_airodump-ng_airodump-ng_c     20 Aug 2021 00:21:44 
> > -0000
> > @@ -0,0 +1,21 @@
> > +$OpenBSD$
> > +
> > +Index: src/airodump-ng/airodump-ng.c
> > +--- src/airodump-ng/airodump-ng.c.orig
> > ++++ src/airodump-ng/airodump-ng.c
> > +@@ -92,14 +92,12 @@
> > + #include "radiotap/radiotap_iter.h"
> > +
> > + struct devices dev;
> > +-uint8_t h80211[4096] __attribute__((aligned(16)));
> > +-uint8_t tmpbuf[4096] __attribute__((aligned(16)));
> > +
> > + static const unsigned char llcnull[] = {0, 0, 0, 0};
> > +
> > + static const char * OUI_PATHS[]
> > +   = {"./airodump-ng-oui.txt",
> > +-     "/etc/aircrack-ng/airodump-ng-oui.txt",
> > ++     "${PREFIX}/share/mac-vendor/aircrack-oui.txt",
> > +      "/usr/local/etc/aircrack-ng/airodump-ng-oui.txt",
> > +      "/usr/share/aircrack-ng/airodump-ng-oui.txt",
> > +      "/var/lib/misc/oui.txt",
> > Index: patches/patch-src_airodump-ng_h
> > ===================================================================
> > RCS file: patches/patch-src_airodump-ng_h
> > diff -N patches/patch-src_airodump-ng_h
> > --- patches/patch-src_airodump-ng_h 23 Feb 2019 22:23:25 -0000      1.2
> > +++ /dev/null       1 Jan 1970 00:00:00 -0000
> > @@ -1,16 +0,0 @@
> > -$OpenBSD: patch-src_airodump-ng_h,v 1.2 2019/02/23 22:23:25 sebastia Exp $
> > -
> > -use the mac-vendors OUI file
> > -
> > -Index: src/airodump-ng.h
> > ---- src/airodump-ng.h.orig
> > -+++ src/airodump-ng.h
> > -@@ -124,7 +124,7 @@ extern const unsigned long int crc_tbl[256];
> > - extern const unsigned char crc_chop_tbl[256][4];
> > -
> > - const char * OUI_PATHS[] = {"./airodump-ng-oui.txt",
> > --                                                  
> > "/etc/aircrack-ng/airodump-ng-oui.txt",
> > -+                                                  
> > "${PREFIX}/share/mac-vendor/aircrack-oui.txt",
> > -                                                   
> > "/usr/local/etc/aircrack-ng/airodump-ng-oui.txt",
> > -                                                   
> > "/usr/share/aircrack-ng/airodump-ng-oui.txt",
> > -                                                   "/var/lib/misc/oui.txt",
> > Index: patches/patch-src_wpaclean_c
> > ===================================================================
> > RCS file: patches/patch-src_wpaclean_c
> > diff -N patches/patch-src_wpaclean_c
> > --- patches/patch-src_wpaclean_c    9 Mar 2019 18:02:35 -0000       1.1
> > +++ /dev/null       1 Jan 1970 00:00:00 -0000
> > @@ -1,21 +0,0 @@
> > -$OpenBSD: patch-src_wpaclean_c,v 1.1 2019/03/09 18:02:35 sebastia Exp $
> > -
> > -prevent wpaclean from overwriting the outputfile
> > -with next capture each time a new capture is found
> > -in a source file
> > -
> > -Index: src/wpaclean.c
> > ---- src/wpaclean.c.orig
> > -+++ src/wpaclean.c
> > -@@ -138,7 +138,10 @@ static void save_network(const struct network * n)
> > - {
> > -   int i;
> > -
> > --  _outfd = open_pcap(_outfilename);
> > -+  if (_outfd == 0)
> > -+  {
> > -+          _outfd = open_pcap(_outfilename);
> > -+  }
> > -   write_pcap(_outfd, n->n_beacon, n->n_beaconlen);
> > -
> > -   for (i = 0; i < 4; i++)
> > Index: pkg/PFRAG.x86
> > ===================================================================
> > RCS file: /home/cvs/ports/security/aircrack-ng/pkg/PFRAG.x86,v
> > retrieving revision 1.1
> > diff -u -p -u -p -r1.1 PFRAG.x86
> > --- pkg/PFRAG.x86   23 Feb 2019 22:23:25 -0000      1.1
> > +++ pkg/PFRAG.x86   20 Aug 2021 01:21:29 -0000
> > @@ -1,10 +1,10 @@
> >   @comment $OpenBSD: PFRAG.x86,v 1.1 2019/02/23 22:23:25 sebastia Exp $
> > -lib/libaircrack-crypto-x86-avx-1.3.0.so
> > -lib/libaircrack-crypto-x86-avx.la
> > -lib/libaircrack-crypto-x86-avx.so
> > -lib/libaircrack-crypto-x86-avx2-1.3.0.so
> > -lib/libaircrack-crypto-x86-avx2.la
> > -lib/libaircrack-crypto-x86-avx2.so
> > -lib/libaircrack-crypto-x86-sse2-1.3.0.so
> > -lib/libaircrack-crypto-x86-sse2.la
> > -lib/libaircrack-crypto-x86-sse2.so
> > +@so lib/libaircrack-ce-wpa-x86-avx-1.6.0.so
> > +lib/libaircrack-ce-wpa-x86-avx.la
> > +@so lib/libaircrack-ce-wpa-x86-avx.so
> > +@so lib/libaircrack-ce-wpa-x86-avx2-1.6.0.so
> > +lib/libaircrack-ce-wpa-x86-avx2.la
> > +@so lib/libaircrack-ce-wpa-x86-avx2.so
> > +@so lib/libaircrack-ce-wpa-x86-sse2-1.6.0.so
> > +lib/libaircrack-ce-wpa-x86-sse2.la
> > +@so lib/libaircrack-ce-wpa-x86-sse2.so
> > Index: pkg/PLIST
> > ===================================================================
> > RCS file: /home/cvs/ports/security/aircrack-ng/pkg/PLIST,v
> > retrieving revision 1.5
> > diff -u -p -u -p -r1.5 PLIST
> > --- pkg/PLIST       13 Jun 2020 17:38:49 -0000      1.5
> > +++ pkg/PLIST       20 Aug 2021 00:21:44 -0000
> > @@ -8,14 +8,77 @@
> >   @bin bin/makeivs-ng
> >   @bin bin/packetforge-ng
> >   @bin bin/wpaclean
> > -lib/libaircrack-crypto-1.3.0.so
> >   %%x86%%
> >   %%arm%%
> > -lib/libaircrack-crypto.la
> > -lib/libaircrack-crypto.so
> > -lib/libaircrack-osdep-1.3.0.so
> > +include/aircrack-ng/
> > +include/aircrack-ng/adt/
> > +include/aircrack-ng/adt/avl_tree.h
> > +include/aircrack-ng/adt/circular_buffer.h
> > +include/aircrack-ng/adt/circular_queue.h
> > +include/aircrack-ng/aircrack-ng.h
> > +include/aircrack-ng/ce-wep/
> > +include/aircrack-ng/ce-wep/uniqueiv.h
> > +include/aircrack-ng/ce-wpa/
> > +include/aircrack-ng/ce-wpa/aligned.h
> > +include/aircrack-ng/ce-wpa/arch.h
> > +include/aircrack-ng/ce-wpa/crypto_engine.h
> > +include/aircrack-ng/ce-wpa/jcommon.h
> > +include/aircrack-ng/ce-wpa/johnswap.h
> > +include/aircrack-ng/ce-wpa/memdbg.h
> > +include/aircrack-ng/ce-wpa/memory.h
> > +include/aircrack-ng/ce-wpa/misc.h
> > +include/aircrack-ng/ce-wpa/pseudo_intrinsics.h
> > +include/aircrack-ng/ce-wpa/simd-intrinsics-load-flags.h
> > +include/aircrack-ng/ce-wpa/simd-intrinsics.h
> > +include/aircrack-ng/ce-wpa/wpapsk.h
> > +include/aircrack-ng/cowpatty/
> > +include/aircrack-ng/cowpatty/cowpatty.h
> > +include/aircrack-ng/cpu/
> > +include/aircrack-ng/cpu/cpuset.h
> > +include/aircrack-ng/cpu/simd_cpuid.h
> > +include/aircrack-ng/cpu/trampoline.h
> > +include/aircrack-ng/crypto/
> > +include/aircrack-ng/crypto/crctable.h
> > +include/aircrack-ng/crypto/crypto.h
> > +include/aircrack-ng/crypto/gcrypt-openssl-wrapper.h
> > +include/aircrack-ng/crypto/sha1-git.h
> > +include/aircrack-ng/crypto/sha1-sse2.h
> > +include/aircrack-ng/defs.h
> > +include/aircrack-ng/osdep/
> > +include/aircrack-ng/osdep/byteorder.h
> > +include/aircrack-ng/osdep/channel.h
> > +include/aircrack-ng/osdep/common.h
> > +include/aircrack-ng/osdep/network.h
> > +include/aircrack-ng/osdep/osdep.h
> > +include/aircrack-ng/osdep/packed.h
> > +include/aircrack-ng/ptw/
> > +include/aircrack-ng/ptw/aircrack-ptw-lib.h
> > +include/aircrack-ng/support/
> > +include/aircrack-ng/support/common.h
> > +include/aircrack-ng/support/communications.h
> > +include/aircrack-ng/support/crypto_engine_loader.h
> > +include/aircrack-ng/support/fragments.h
> > +include/aircrack-ng/support/mcs_index_rates.h
> > +include/aircrack-ng/support/pcap_local.h
> > +include/aircrack-ng/support/station.h
> > +include/aircrack-ng/third-party/
> > +include/aircrack-ng/third-party/eapol.h
> > +include/aircrack-ng/third-party/ethernet.h
> > +include/aircrack-ng/third-party/hashcat.h
> > +include/aircrack-ng/third-party/ieee80211.h
> > +include/aircrack-ng/third-party/if_arp.h
> > +include/aircrack-ng/third-party/if_llc.h
> > +include/aircrack-ng/tui/
> > +include/aircrack-ng/tui/console.h
> > +include/aircrack-ng/utf8/
> > +include/aircrack-ng/utf8/verifyssid.h
> > +include/aircrack-ng/version.h
> > +@so lib/libaircrack-ce-wpa-1.6.0.so
> > +lib/libaircrack-ce-wpa.la
> > +@so lib/libaircrack-ce-wpa.so
> > +@so lib/libaircrack-osdep-1.6.0.so
> >   lib/libaircrack-osdep.la
> > -lib/libaircrack-osdep.so
> > +@so lib/libaircrack-osdep.so
> >   @man man/man1/aircrack-ng.1
> >   @man man/man1/airdecap-ng.1
> >   @man man/man1/airdecloak-ng.1
> > @@ -40,5 +103,6 @@ lib/libaircrack-osdep.so
> >   @bin sbin/aireplay-ng
> >   @comment sbin/airmon-ng
> >   @bin sbin/airodump-ng
> > +sbin/airodump-ng-oui-update
> >   @bin sbin/airserv-ng
> >   @comment sbin/airtun-ng
> > 
> 

Reply via email to