Index: head/security/wpa_supplicant/Makefile =================================================================== --- head/security/wpa_supplicant/Makefile (revision 381443) +++ head/security/wpa_supplicant/Makefile (revision 381444) @@ -1,167 +1,162 @@ # $FreeBSD$ PORTNAME= wpa_supplicant -PORTVERSION= 2.3 -PORTREVISION= 3 +PORTVERSION= 2.4 CATEGORIES= security net MASTER_SITES= http://w1.fi/releases/ MAINTAINER= marino@FreeBSD.org COMMENT= Supplicant (client) for WPA/802.1x protocols USES= gmake readline USE_OPENSSL= yes BUILD_WRKSRC= ${WRKSRC}/wpa_supplicant INSTALL_WRKSRC= ${WRKSRC}/src CFLAGS+= ${CPPFLAGS} # USES=readline only augments CPPFLAGS and LDFLAGS LDFLAGS= -lutil SUB_FILES= pkg-message -PLIST_FILES= sbin/wpa_supplicant \ - sbin/wpa_passphrase \ - sbin/wpa_cli \ - "@sample etc/wpa_supplicant.conf.sample" PORTDOCS= README ChangeLog CFG= ${BUILD_WRKSRC}/.config OPTIONS_MULTI= DRV EAP OPTIONS_MULTI_DRV= BSD WIRED NDIS TEST NONE #ROBOSWITCH OPTIONS_MULTI_EAP= TLS PEAP TTLS MD5 MSCHAPv2 GTC LEAP OTP PSK FAST \ SIM PWD PAX AKA AKA_PRIME SAKE GPSK TNC IKEv2 EKE OPTIONS_DEFINE= WPS WPS_ER WPS_NOREG WPS_NFC PKCS12 SMARTCARD \ HT_OVERRIDES VHT_OVERRIDES TLSV12 IEEE80211W \ IEEE80211R DEBUG_FILE DEBUG_SYSLOG PRIVSEP \ DELAYED_MIC IEEE80211N IEEE80211AC INTERWORKING \ HS20 NO_ROAMING P2P TDLS OPTIONS_DEFAULT= BSD WIRED NDIS \ TLS PEAP TTLS MD5 MSCHAPv2 GTC LEAP OTP PSK \ WPS PKCS12 SMARTCARD IEEE80211R DEBUG_SYSLOG \ INTERWORKING HS20 WPS_DESC= Wi-Fi Protected Setup WPS_ER_DESC= Enable WPS External Registrar WPS_NOREG_DESC= Disable open network credentials when registrar WPS_NFC_DESC= Near Field Communication (NFC) configuration PKCS12_DESC= PKCS\#12 (PFS) support SMARTCARD_DESC= Private key on smartcard support HT_OVERRIDES_DESC= Disable HT/HT40, mask MCS rates, etc VHT_OVERRIDES_DESC= Disable VHT, mask MCS rates, etc TLSV12_DESC= Build with TLS v1.2 instead of TLS v1.0 IEEE80211AC_DESC= Very High Throughput, AP mode (IEEE 802.11ac) IEEE80211N_DESC= High Throughput, AP mode (IEEE 802.11n) IEEE80211R_DESC= Fast BSS Transition (IEEE 802.11r-2008) IEEE80211W_DESC= Management Frame Protection (IEEE 802.11w) DEBUG_FILE_DESC= Support for writing debug log to a file DEBUG_SYSLOG_DESC= Send debug messages to syslog instead of stdout PRIVSEP_DESC= Privilege separation DELAYED_MIC_DESC= Mitigate TKIP attack, random delay on MIC errors INTERWORKING_DESC= Improve ext. network interworking (IEEE 802.11u) HS20_DESC= Hotspot 2.0 NO_ROAMING_DESC= Disable roaming P2P_DESC= Peer-to-Peer support TDLS_DESC= Tunneled Direct Link Setup DRV_DESC= Driver options BSD_DESC= BSD net80211 interface NDIS_DESC= Windows NDIS interface WIRED_DESC= Wired ethernet interface ROBOSWITCH_DESC= Broadcom Roboswitch interface TEST_DESC= Development testing interface NONE_DESC= The 'no driver' interface, e.g. WPS ER only EAP_DESC= Extensible Authentication Protocols TLS_DESC= Transport Layer Security PEAP_DESC= Protected Extensible Authentication Protocol TTLS_DESC= Tunneled Transport Layer Security MD5_DESC= MD5 hash (deprecated, no key generation) MSCHAPv2_DESC= Microsoft CHAP version 2 (RFC 2759) GTC_DESC= Generic Token Card LEAP_DESC= Lightweight Extensible Authentication Protocol OTP_DESC= One-Time Password PSK_DESC= Pre-Shared key FAST_DESC= Flexible Authentication via Secure Tunneling AKA_DESC= Autentication and Key Agreement (UMTS) AKA_PRIME_DESC= AKA Prime variant (RFC 5448) EKE_DESC= Encrypted Key Exchange SIM_DESC= Subscriber Identity Module IKEv2_DESC= Internet Key Exchange version 2 PWD_DESC= Shared password (RFC 5931) PAX_DESC= Password Authenticated Exchange SAKE_DESC= Shared-Secret Authentication & Key Establishment GPSK_DESC= Generalized Pre-Shared Key TNC_DESC= Trusted Network Connect .include .if ${PORT_OPTIONS:MSIM} || ${PORT_OPTIONS:MAKA} || ${PORT_OPTIONS:MAKA_PRIME} LIB_DEPENDS+= libpcsclite.so:${PORTSDIR}/devel/pcsc-lite CFLAGS+= -I${LOCALBASE}/include/PCSC LDFLAGS+= -L${LOCALBASE}/lib .endif .if ${PORT_OPTIONS:MPRIVSEP} PLIST_FILES+= sbin/wpa_priv .endif post-patch: ${CP} ${FILESDIR}/Packet32.[ch] ${FILESDIR}/ntddndis.h \ ${WRKSRC}/src/utils # Set driver(s) .for item in BSD NDIS WIRED ROBOSWITCH TEST NONE . if ${PORT_OPTIONS:M${item}} @${ECHO} CONFIG_DRIVER_${item}=y >> ${CFG} . endif .endfor # Set EAP protocol(s) .for item in MD5 MSCHAPv2 TLS PEAP TTLS FAST GTC OTP PSK PWD PAX LEAP SIM \ AKA AKA_PRIME SAKE GPSK TNC IKEv2 EKE . if ${PORT_OPTIONS:M${item}} @${ECHO} CONFIG_EAP_${item:tu}=y >> ${CFG} . endif .endfor .if ${PORT_OPTIONS:MSIM} || ${PORT_OPTIONS:MAKA} || ${PORT_OPTIONS:MAKA_PRIME} @${ECHO} CONFIG_PCSC=y >> ${CFG} .endif .for simple in WPS WPS_ER WPS_NFC PKCS12 SMARTCARD HT_OVERRIDES \ VHT_OVERRIDES TLSV12 IEEE80211AC IEEE80211N IEEE80211R IEEE80211W \ INTERWORKING DEBUG_FILE DEBUG_SYSLOG HS20 NO_ROAMING PRIVSEP P2P TDLS . if ${PORT_OPTIONS:M${simple}} @${ECHO} CONFIG_${simple}=y >> ${CFG} . endif .endfor .for item in READLINE PEERKEY @${ECHO} CONFIG_${item}=y >> ${CFG} .endfor .if ${PORT_OPTIONS:MIEEE80211AC} || ${PORT_OPTIONS:MIEEE80211N} @${ECHO} CONFIG_AP=y >> ${CFG} .endif .if ${PORT_OPTIONS:MGPSK} # GPSK desired, assume highest SHA desired too @${ECHO} CONFIG_EAP_GPSK_SHA256=y >> ${CFG} .endif .if ${PORT_OPTIONS:MWPS_NOREG} @${ECHO} CONFIG_WPS_REG_DISABLE_OPEN=y >> ${CFG} .endif .if ${PORT_OPTIONS:MDELAYED_MIC} @${ECHO} CONFIG_DELAYED_MIC_ERROR_REPORT=y >> ${CFG} .endif @${ECHO} CONFIG_OS=unix >> ${CFG} @${ECHO} CONFIG_CTRL_IFACE=unix >> ${CFG} @${ECHO} CONFIG_BACKEND=file >> ${CFG} @${ECHO} CONFIG_L2_PACKET=freebsd >> ${CFG} @${ECHO} CONFIG_TLS=openssl >> ${CFG} do-install: @${MKDIR} ${STAGEDIR}${DOCSDIR} (cd ${BUILD_WRKSRC} && ${INSTALL_PROGRAM} wpa_supplicant wpa_cli \ wpa_passphrase ${STAGEDIR}${PREFIX}/sbin) .if ${PORT_OPTIONS:MPRIVSEP} ${INSTALL_PROGRAM} ${BUILD_WRKSRC}/wpa_priv ${STAGEDIR}${PREFIX}/sbin .endif ${INSTALL_DATA} ${BUILD_WRKSRC}/wpa_supplicant.conf \ ${STAGEDIR}${PREFIX}/etc/wpa_supplicant.conf.sample (cd ${BUILD_WRKSRC} && \ ${INSTALL_DATA} ${PORTDOCS} ${STAGEDIR}${DOCSDIR}) .include Index: head/security/wpa_supplicant/distinfo =================================================================== --- head/security/wpa_supplicant/distinfo (revision 381443) +++ head/security/wpa_supplicant/distinfo (revision 381444) @@ -1,2 +1,2 @@ -SHA256 (wpa_supplicant-2.3.tar.gz) = eaaa5bf3055270e521b2dff64f2d203ec8040f71958b8588269a82c00c9d7b6a -SIZE (wpa_supplicant-2.3.tar.gz) = 2398722 +SHA256 (wpa_supplicant-2.4.tar.gz) = 058dc832c096139a059e6df814080f50251a8d313c21b13364c54a1e70109122 +SIZE (wpa_supplicant-2.4.tar.gz) = 2525648 Index: head/security/wpa_supplicant/files/patch-src_drivers_driver__bsd.c =================================================================== --- head/security/wpa_supplicant/files/patch-src_drivers_driver__bsd.c (revision 381443) +++ head/security/wpa_supplicant/files/patch-src_drivers_driver__bsd.c (nonexistent) @@ -1,16 +0,0 @@ ---- src/drivers/driver_bsd.c.orig 2014-10-09 14:41:31 UTC -+++ src/drivers/driver_bsd.c -@@ -1334,7 +1334,13 @@ wpa_driver_bsd_add_scan_entry(struct wpa - *pos++ = 1; - *pos++ = sr->isr_erp; - -+#if defined(__FreeBSD__) || defined(__FreeBSD_kernel__) \ -+ || defined(__DragonFly__) -+ os_memcpy(pos, (u8 *)(sr + 1) + sr->isr_ssid_len + sr->isr_meshid_len, -+ sr->isr_ie_len); -+#else - os_memcpy(pos, (u8 *)(sr + 1) + sr->isr_ssid_len, sr->isr_ie_len); -+#endif - pos += sr->isr_ie_len; - - result->ie_len = pos - (u8 *)(result + 1); Property changes on: head/security/wpa_supplicant/files/patch-src_drivers_driver__bsd.c ___________________________________________________________________ Deleted: fbsd:nokeywords ## -1 +0,0 ## -yes \ No newline at end of property Deleted: svn:eol-style ## -1 +0,0 ## -native \ No newline at end of property Deleted: svn:mime-type ## -1 +0,0 ## -text/plain \ No newline at end of property Index: head/security/wpa_supplicant/files/patch-src_drivers_driver__privsep.c =================================================================== --- head/security/wpa_supplicant/files/patch-src_drivers_driver__privsep.c (revision 381443) +++ head/security/wpa_supplicant/files/patch-src_drivers_driver__privsep.c (nonexistent) @@ -1,20 +0,0 @@ ---- src/drivers/driver_privsep.c.orig 2014-10-09 14:41:31 UTC -+++ src/drivers/driver_privsep.c -@@ -228,7 +228,7 @@ static int wpa_driver_privsep_associate( - - wpa_printf(MSG_DEBUG, "%s: priv=%p freq=%d pairwise_suite=%d " - "group_suite=%d key_mgmt_suite=%d auth_alg=%d mode=%d", -- __func__, priv, params->freq, params->pairwise_suite, -+ __func__, priv, params->freq.freq, params->pairwise_suite, - params->group_suite, params->key_mgmt_suite, - params->auth_alg, params->mode); - -@@ -241,7 +241,7 @@ static int wpa_driver_privsep_associate( - os_memcpy(data->bssid, params->bssid, ETH_ALEN); - os_memcpy(data->ssid, params->ssid, params->ssid_len); - data->ssid_len = params->ssid_len; -- data->freq = params->freq; -+ data->freq = params->freq.freq; - data->pairwise_suite = params->pairwise_suite; - data->group_suite = params->group_suite; - data->key_mgmt_suite = params->key_mgmt_suite; Property changes on: head/security/wpa_supplicant/files/patch-src_drivers_driver__privsep.c ___________________________________________________________________ Deleted: fbsd:nokeywords ## -1 +0,0 ## -yes \ No newline at end of property Deleted: svn:eol-style ## -1 +0,0 ## -native \ No newline at end of property Deleted: svn:mime-type ## -1 +0,0 ## -text/plain \ No newline at end of property Index: head/security/wpa_supplicant/files/patch-src-l2_packet-l2_packet_freebsd.c =================================================================== --- head/security/wpa_supplicant/files/patch-src-l2_packet-l2_packet_freebsd.c (revision 381443) +++ head/security/wpa_supplicant/files/patch-src-l2_packet-l2_packet_freebsd.c (revision 381444) @@ -1,14 +1,14 @@ ---- src/l2_packet/l2_packet_freebsd.c.orig 2014-06-04 13:26:14 UTC +--- src/l2_packet/l2_packet_freebsd.c.orig 2015-03-15 17:30:39 UTC +++ src/l2_packet/l2_packet_freebsd.c @@ -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 Index: head/security/wpa_supplicant/files/patch-src_drivers_driver__ndis.c =================================================================== --- head/security/wpa_supplicant/files/patch-src_drivers_driver__ndis.c (revision 381443) +++ head/security/wpa_supplicant/files/patch-src_drivers_driver__ndis.c (revision 381444) @@ -1,28 +1,28 @@ ---- src/drivers/driver_ndis.c.orig 2014-10-09 14:41:31 UTC +--- src/drivers/driver_ndis.c.orig 2015-03-15 17:30:39 UTC +++ src/drivers/driver_ndis.c @@ -2110,7 +2110,11 @@ static int wpa_driver_ndis_get_names(str dlen = dpos - desc; else dlen = os_strlen(desc); - drv->adapter_desc = dup_binstr(desc, dlen); + drv->adapter_desc = os_malloc(dlen + 1); + if (drv->adapter_desc) { + os_memcpy(drv->adapter_desc, desc, dlen); + drv->adapter_desc[dlen] = '\0'; + } os_free(b); if (drv->adapter_desc == NULL) return -1; @@ -2278,7 +2282,11 @@ static int wpa_driver_ndis_get_names(str } else { dlen = os_strlen(desc[i]); } - drv->adapter_desc = dup_binstr(desc[i], dlen); + drv->adapter_desc = os_malloc(dlen + 1); + if (drv->adapter_desc) { + os_memcpy(drv->adapter_desc, desc[i], dlen); + drv->adapter_desc[dlen] = '\0'; + } os_free(names); if (drv->adapter_desc == NULL) return -1; Index: head/security/wpa_supplicant/files/patch-src_utils_os__unix.c =================================================================== --- head/security/wpa_supplicant/files/patch-src_utils_os__unix.c (revision 381443) +++ head/security/wpa_supplicant/files/patch-src_utils_os__unix.c (revision 381444) @@ -1,62 +1,62 @@ ---- src/utils/os_unix.c.orig 2014-10-09 14:41:31 UTC +--- src/utils/os_unix.c.orig 2015-03-15 17:30:39 UTC +++ src/utils/os_unix.c @@ -190,17 +190,42 @@ static int os_daemon(int nochdir, int no #define os_daemon daemon #endif /* __APPLE__ */ +#if defined(__FreeBSD__) || defined(__DragonFly__) +#define FREE_DRAGON +#include +#include +#include +#endif /* __FreeBSD__ || __DragonFly__ */ int os_daemonize(const char *pid_file) { #if defined(__uClinux__) || defined(__sun__) return -1; #else /* defined(__uClinux__) || defined(__sun__) */ +#ifdef FREE_DRAGON + pid_t otherpid; + struct pidfh *pfh; + + pfh = pidfile_open(pid_file, 0600, &otherpid); + if (pfh == NULL) { + if (errno == EEXIST) { + errx(1, "Daemon already running, pid: %jd.", + (intmax_t)otherpid); + } + warn("Cannot open or create pidfile."); + } +#endif /* FREE_DRAGON */ if (os_daemon(0, 0)) { perror("daemon"); +#ifdef FREE_DRAGON + pidfile_remove(pfh); +#endif /* FREE_DRAGON */ return -1; } +#ifdef FREE_DRAGON + pidfile_write(pfh); +#else if (pid_file) { FILE *f = fopen(pid_file, "w"); if (f) { @@ -208,6 +233,7 @@ int os_daemonize(const char *pid_file) fclose(f); } } +#endif /* FREE_DRAGON */ return -0; #endif /* defined(__uClinux__) || defined(__sun__) */ -@@ -360,7 +386,7 @@ int os_setenv(const char *name, const ch +@@ -357,7 +383,7 @@ int os_setenv(const char *name, const ch int os_unsetenv(const char *name) { -#if defined(__FreeBSD__) || defined(__NetBSD__) || defined(__APPLE__) || \ +#if defined(FREE_DRAGON) || defined(__NetBSD__) || defined(__APPLE__) || \ defined(__OpenBSD__) unsetenv(name); return 0; Index: head/security/wpa_supplicant/files/patch-src_wps_wps__upnp.c =================================================================== --- head/security/wpa_supplicant/files/patch-src_wps_wps__upnp.c (revision 381443) +++ head/security/wpa_supplicant/files/patch-src_wps_wps__upnp.c (revision 381444) @@ -1,22 +1,22 @@ ---- src/wps/wps_upnp.c.orig 2014-10-09 14:41:31 UTC +--- src/wps/wps_upnp.c.orig 2015-03-15 17:30:39 UTC +++ src/wps/wps_upnp.c -@@ -829,7 +829,8 @@ fail: +@@ -837,7 +837,8 @@ fail: } -#if defined(__FreeBSD__) || defined(__FreeBSD_kernel__) +#if defined(__FreeBSD__) || defined(__FreeBSD_kernel__) \ + || defined(__DragonFly__) #include #include #include -@@ -916,7 +917,8 @@ int get_netif_info(const char *net_if, u +@@ -924,7 +925,8 @@ int get_netif_info(const char *net_if, u goto fail; } os_memcpy(mac, req.ifr_addr.sa_data, 6); -#elif defined(__FreeBSD__) || defined(__FreeBSD_kernel__) +#elif defined(__FreeBSD__) || defined(__FreeBSD_kernel__) \ + || defined(__DragonFly__) if (eth_get(net_if, mac) < 0) { wpa_printf(MSG_ERROR, "WPS UPnP: Failed to get MAC address"); goto fail; Index: head/security/wpa_supplicant/files/patch-wpa__supplicant_Makefile =================================================================== --- head/security/wpa_supplicant/files/patch-wpa__supplicant_Makefile (revision 381443) +++ head/security/wpa_supplicant/files/patch-wpa__supplicant_Makefile (revision 381444) @@ -1,17 +1,17 @@ ---- wpa_supplicant/Makefile.orig 2014-10-09 14:41:31 UTC +--- wpa_supplicant/Makefile.orig 2015-03-15 17:30:39 UTC +++ wpa_supplicant/Makefile -@@ -97,6 +97,14 @@ OBJS += ../src/utils/os_$(CONFIG_OS).o +@@ -99,6 +99,14 @@ OBJS += ../src/utils/os_$(CONFIG_OS).o OBJS_p += ../src/utils/os_$(CONFIG_OS).o OBJS_c += ../src/utils/os_$(CONFIG_OS).o +ifdef CONFIG_DRIVER_NDIS +OBJS += ../src/utils/Packet32.o +ifdef CONFIG_PRIVSEP +OBJS += ../src/drivers/driver_ndis.o +endif +OBJS_priv += ../src/utils/Packet32.o +endif + ifdef CONFIG_WPA_TRACE CFLAGS += -DWPA_TRACE OBJS += ../src/utils/trace.o Index: head/security/wpa_supplicant/files/patch-wpa__supplicant_main.c =================================================================== --- head/security/wpa_supplicant/files/patch-wpa__supplicant_main.c (revision 381443) +++ head/security/wpa_supplicant/files/patch-wpa__supplicant_main.c (revision 381444) @@ -1,14 +1,14 @@ ---- wpa_supplicant/main.c.orig 2014-10-09 14:41:31 UTC +--- wpa_supplicant/main.c.orig 2015-03-15 17:30:39 UTC +++ wpa_supplicant/main.c @@ -173,6 +173,11 @@ int main(int argc, char *argv[]) wpa_supplicant_fd_workaround(1); +#ifdef CONFIG_DRIVER_NDIS + void driver_ndis_init_ops(void); + driver_ndis_init_ops(); +#endif /* CONFIG_DRIVER_NDIS */ + for (;;) { c = getopt(argc, argv, "b:Bc:C:D:de:f:g:G:hi:I:KLm:No:O:p:P:qsTtuvW"); Index: head/security/wpa_supplicant/files/patch-wpa__supplicant_scan.c =================================================================== --- head/security/wpa_supplicant/files/patch-wpa__supplicant_scan.c (revision 381443) +++ head/security/wpa_supplicant/files/patch-wpa__supplicant_scan.c (revision 381444) @@ -1,31 +1,32 @@ ---- wpa_supplicant/scan.c.orig 2014-10-09 14:41:31 UTC +--- wpa_supplicant/scan.c.orig 2015-03-15 17:30:39 UTC +++ wpa_supplicant/scan.c -@@ -1548,7 +1548,7 @@ struct wpabuf * wpa_scan_get_vendor_ie_m +@@ -1621,7 +1621,7 @@ struct wpabuf * wpa_scan_get_vendor_ie_m + * better. */ static int wpa_scan_result_compar(const void *a, const void *b) { - #define IS_5GHZ(n) (n > 4000) -#define MIN(a,b) a < b ? a : b +#define MINAB(a,b) a < b ? a : b struct wpa_scan_res **_wa = (void *) a; struct wpa_scan_res **_wb = (void *) b; struct wpa_scan_res *wa = *_wa; -@@ -1577,8 +1577,8 @@ static int wpa_scan_result_compar(const +@@ -1650,9 +1650,9 @@ static int wpa_scan_result_compar(const - if ((wa->flags & wb->flags & WPA_SCAN_LEVEL_DBM) && - !((wa->flags | wb->flags) & WPA_SCAN_NOISE_INVALID)) { -- snr_a = MIN(wa->level - wa->noise, GREAT_SNR); -- snr_b = MIN(wb->level - wb->noise, GREAT_SNR); -+ snr_a = MINAB(wa->level - wa->noise, GREAT_SNR); -+ snr_b = MINAB(wb->level - wb->noise, GREAT_SNR); + if (wa->flags & wb->flags & WPA_SCAN_LEVEL_DBM) { + snr_a_full = wa->snr; +- snr_a = MIN(wa->snr, GREAT_SNR); ++ snr_a = MINAB(wa->snr, GREAT_SNR); + snr_b_full = wb->snr; +- snr_b = MIN(wa->snr, GREAT_SNR); ++ snr_b = MINAB(wa->snr, GREAT_SNR); } else { - /* Not suitable information to calculate SNR, so use level */ - snr_a = wa->level; -@@ -1604,7 +1604,7 @@ static int wpa_scan_result_compar(const - if (snr_b == snr_a) + /* Level is not in dBm, so we can't calculate + * SNR. Just use raw level (units unknown). */ +@@ -1675,7 +1675,7 @@ static int wpa_scan_result_compar(const + if (snr_b_full == snr_a_full) return wb->qual - wa->qual; - return snr_b - snr_a; + return snr_b_full - snr_a_full; -#undef MIN +#undef MINAB - #undef IS_5GHZ } + Index: head/security/wpa_supplicant/files/patch-wpa__supplicant_wpa__priv.c =================================================================== --- head/security/wpa_supplicant/files/patch-wpa__supplicant_wpa__priv.c (revision 381443) +++ head/security/wpa_supplicant/files/patch-wpa__supplicant_wpa__priv.c (revision 381444) @@ -1,37 +1,28 @@ ---- wpa_supplicant/wpa_priv.c.orig 2014-10-09 14:41:31 UTC +--- wpa_supplicant/wpa_priv.c.orig 2015-03-15 17:30:39 UTC +++ wpa_supplicant/wpa_priv.c -@@ -202,7 +202,7 @@ static void wpa_priv_cmd_associate(struc - if (assoc->ssid_len > 32) - return; - params.ssid_len = assoc->ssid_len; -- params.freq = assoc->freq; -+ params.freq.freq = assoc->freq; - if (assoc->wpa_ie_len) { - params.wpa_ie = (u8 *) (assoc + 1); - params.wpa_ie_len = assoc->wpa_ie_len; -@@ -947,6 +947,7 @@ static void usage(void) +@@ -952,6 +952,7 @@ static void usage(void) int main(int argc, char *argv[]) { int c, i; + int eloop_initialized = 0; int ret = -1; char *pid_file = NULL; int daemonize = 0; -@@ -992,6 +993,7 @@ int main(int argc, char *argv[]) +@@ -997,6 +998,7 @@ int main(int argc, char *argv[]) wpa_printf(MSG_ERROR, "Failed to initialize event loop"); goto out; } + else eloop_initialized = 1; for (i = optind; i < argc; i++) { wpa_printf(MSG_DEBUG, "Adding driver:interface %s", argv[i]); -@@ -1018,7 +1020,8 @@ out: +@@ -1023,7 +1025,8 @@ out: wpa_priv_interface_deinit(prev); } - eloop_destroy(); + if (eloop_initialized) + eloop_destroy(); os_daemonize_terminate(pid_file); os_free(pid_file); Index: head/security/wpa_supplicant/files/patch-wpa__supplicant_wpa__supplicant.c =================================================================== --- head/security/wpa_supplicant/files/patch-wpa__supplicant_wpa__supplicant.c (revision 381443) +++ head/security/wpa_supplicant/files/patch-wpa__supplicant_wpa__supplicant.c (revision 381444) @@ -1,11 +1,11 @@ ---- wpa_supplicant/wpa_supplicant.c.orig 2014-10-09 14:41:31 UTC +--- wpa_supplicant/wpa_supplicant.c.orig 2015-03-15 17:30:39 UTC +++ wpa_supplicant/wpa_supplicant.c -@@ -4098,7 +4098,7 @@ struct wpa_global * wpa_supplicant_init( +@@ -4506,7 +4506,7 @@ struct wpa_global * wpa_supplicant_init( if (params == NULL) return NULL; -#ifdef CONFIG_DRIVER_NDIS +#ifdef XXXCONFIG_DRIVER_NDIS { void driver_ndis_init_ops(void); driver_ndis_init_ops(); Index: head/security/wpa_supplicant/pkg-plist =================================================================== --- head/security/wpa_supplicant/pkg-plist (nonexistent) +++ head/security/wpa_supplicant/pkg-plist (revision 381444) @@ -0,0 +1,4 @@ +sbin/wpa_supplicant +sbin/wpa_passphrase +sbin/wpa_cli +@sample etc/wpa_supplicant.conf.sample Property changes on: head/security/wpa_supplicant/pkg-plist ___________________________________________________________________ Added: fbsd:nokeywords ## -0,0 +1 ## +yes \ No newline at end of property Added: svn:eol-style ## -0,0 +1 ## +native \ No newline at end of property Added: svn:mime-type ## -0,0 +1 ## +text/plain \ No newline at end of property