diff --git a/net/hostapd-devel/Makefile b/net/hostapd-devel/Makefile index f5347f5c7873..9fab3e93958f 100644 --- a/net/hostapd-devel/Makefile +++ b/net/hostapd-devel/Makefile @@ -1,46 +1,45 @@ PORTNAME= hostapd PORTVERSION= ${COMMIT_DATE} -PORTREVISION= 3 CATEGORIES= net PKGNAMESUFFIX= -devel MAINTAINER= cy@FreeBSD.org COMMENT= IEEE 802.11 AP, IEEE 802.1X/WPA/WPA2/EAP/RADIUS Authenticator WWW= https://w1.fi/hostapd/ USE_GITHUB= yes GH_ACCOUNT= cschuber GH_PROJECT= hostap -GH_TAGNAME= 2d4be0019 -COMMIT_DATE= 2023.10.05 +GH_TAGNAME= 77785da66 +COMMIT_DATE= 2023.10.30 LICENSE= BSD3CLAUSE USES= cpe gmake ssl CPE_VENDOR= w1.fi BUILD_WRKSRC= ${WRKSRC}/hostapd CFLAGS+= -I${OPENSSLINC} LDFLAGS+= -L${OPENSSLLIB} PLIST_FILES= sbin/hostapd sbin/hostapd_cli man/man1/hostapd_cli.1.gz \ man/man8/hostapd.8.gz .if !exists(/etc/rc.d/hostapd) USE_RC_SUBR= hostapd .endif post-patch: @${REINPLACE_CMD} -e 's|@$$(E) " CC " $$<|@$$(E) " $$(CC) " $$<|' \ ${BUILD_WRKSRC}/Makefile @${SED} -e 's|@PREFIX@|${PREFIX}|g' ${FILESDIR}/config \ >> ${WRKSRC}/hostapd/.config do-install: ${INSTALL_PROGRAM} ${WRKSRC}/hostapd/hostapd ${STAGEDIR}${PREFIX}/sbin ${INSTALL_PROGRAM} ${WRKSRC}/hostapd/hostapd_cli \ ${STAGEDIR}${PREFIX}/sbin ${INSTALL_MAN} ${WRKSRC}/hostapd/hostapd_cli.1 \ ${STAGEDIR}${MANPREFIX}/man/man1 ${INSTALL_MAN} ${WRKSRC}/hostapd/hostapd.8 \ ${STAGEDIR}${MANPREFIX}/man/man8 .include diff --git a/net/hostapd-devel/distinfo b/net/hostapd-devel/distinfo index aea8eaeabd38..927ce2b22091 100644 --- a/net/hostapd-devel/distinfo +++ b/net/hostapd-devel/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1696992505 -SHA256 (cschuber-hostap-2023.10.05-2d4be0019_GH0.tar.gz) = 79621569d1cafe506293ae3a76ee964655f22094f85297eff9d0e73851bbfb52 -SIZE (cschuber-hostap-2023.10.05-2d4be0019_GH0.tar.gz) = 5116272 +TIMESTAMP = 1698698885 +SHA256 (cschuber-hostap-2023.10.30-77785da66_GH0.tar.gz) = a7fd27b661bd3d52cd9a1c846e58ca162d08ba93be24fe5d13750baddade0d7a +SIZE (cschuber-hostap-2023.10.30-77785da66_GH0.tar.gz) = 5125026 diff --git a/net/hostapd-devel/files/patch-src_l2__packet_l2__packet__freebsd.c b/net/hostapd-devel/files/patch-src_l2__packet_l2__packet__freebsd.c index 5cef27d8a415..2ec52fcdcd85 100644 --- a/net/hostapd-devel/files/patch-src_l2__packet_l2__packet__freebsd.c +++ b/net/hostapd-devel/files/patch-src_l2__packet_l2__packet__freebsd.c @@ -1,74 +1,14 @@ ---- src/l2_packet/l2_packet_freebsd.c.orig 2023-09-05 10:38:47.000000000 -0700 -+++ src/l2_packet/l2_packet_freebsd.c 2023-09-11 22:21:57.799201000 -0700 +--- src/l2_packet/l2_packet_freebsd.c.orig 2023-10-30 10:53:18.000000000 -0700 ++++ src/l2_packet/l2_packet_freebsd.c 2023-10-30 14:10:36.396969000 -0700 @@ -8,7 +8,10 @@ */ #include "includes.h" -#if defined(__APPLE__) || defined(__GLIBC__) +#if defined(__FreeBSD__) \ + || defined(__DragonFly__) \ + || defined(__APPLE__) \ + || defined(__GLIBC__) #include #endif /* __APPLE__ */ #include -@@ -20,6 +23,7 @@ - #include - #endif /* __sun__ */ - -+#include - #include - #include - #include -@@ -76,24 +80,33 @@ - { - struct l2_packet_data *l2 = eloop_ctx; - pcap_t *pcap = sock_ctx; -- struct pcap_pkthdr hdr; -+ struct pcap_pkthdr *hdr; - const u_char *packet; - struct l2_ethhdr *ethhdr; - unsigned char *buf; - size_t len; - -- packet = pcap_next(pcap, &hdr); -+ if (pcap_next_ex(pcap, &hdr, &packet) == -1) { -+ wpa_printf(MSG_ERROR, "Error reading packet, has device disappeared?"); -+ packet = NULL; -+ eloop_terminate(); -+ } - -- if (!l2->rx_callback || !packet || hdr.caplen < sizeof(*ethhdr)) -+ if (!l2->rx_callback || !packet || hdr->caplen < sizeof(*ethhdr)) - return; - - ethhdr = (struct l2_ethhdr *) packet; - if (l2->l2_hdr) { - buf = (unsigned char *) ethhdr; -- len = hdr.caplen; -+ len = hdr->caplen; - } else { - buf = (unsigned char *) (ethhdr + 1); -- len = hdr.caplen - sizeof(*ethhdr); -+ len = hdr->caplen - sizeof(*ethhdr); -+ /* handle 8021Q encapsulated frames */ -+ if (ethhdr->h_proto == htons(ETH_P_8021Q)) { -+ buf += ETHER_VLAN_ENCAP_LEN; -+ len -= ETHER_VLAN_ENCAP_LEN; -+ } - } - l2->rx_callback(l2->rx_callback_ctx, ethhdr->h_source, buf, len); - } -@@ -122,10 +135,10 @@ - os_snprintf(pcap_filter, sizeof(pcap_filter), - "not ether src " MACSTR " and " - "( ether dst " MACSTR " or ether dst " MACSTR " ) and " -- "ether proto 0x%x", -+ "( ether proto 0x%x or ( vlan 0 and ether proto 0x%x ) )", - MAC2STR(l2->own_addr), /* do not receive own packets */ - MAC2STR(l2->own_addr), MAC2STR(pae_group_addr), -- protocol); -+ protocol, protocol); - if (pcap_compile(l2->pcap, &pcap_fp, pcap_filter, 1, pcap_netp) < 0) { - fprintf(stderr, "pcap_compile: %s\n", pcap_geterr(l2->pcap)); - return -1;