Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 15 Jan 2012 19:28:35 -0800
From:      Devin Teske <devin.teske@fisglobal.com>
To:        Devin Teske <devin.teske@fisglobal.com>
Cc:        FreeBSD Questions <freebsd-questions@freebsd.org>, Dave Robison <Dave.Robison@fisglobal.com>
Subject:   Re: buildworld -DWITHOUT_OPENSSL fails at usr.sbin/wpa/wpa_supplicant (all) (was usr.sbin/wpa/hostapd (depend) (was: lib/libbsnmp/libbsnmp (all) (was: lib/libarchive (depend))))
Message-ID:  <B010B97F-3C13-480E-BF1C-B1030BFD5E8E@fisglobal.com>
In-Reply-To: <0BE673CC-3BF9-469A-9CF1-E16E89F75030@fisglobal.com>
References:  <2F8A82E5-70D7-4A1F-A785-704F41E7DFDA@fisglobal.com> <3489DCF5-0E1F-4F6B-A924-772F6F7B2E18@fisglobal.com> <12FE05E5-A149-43D8-A910-8765B732FE8D@fisglobal.com> <AED014DD-D87C-46C1-8985-85021082A82F@fisglobal.com> <8A9F4627-EE7A-454E-8D6E-B52320F29E24@fisglobal.com> <0BE673CC-3BF9-469A-9CF1-E16E89F75030@fisglobal.com>

Next in thread | Previous in thread | Raw E-Mail | Index | Archive | Help

On Jan 15, 2012, at 5:57 PM, Devin Teske wrote:

>=20
> On Jan 15, 2012, at 10:43 AM, Devin Teske wrote:
>=20
>>=20
>> On Jan 15, 2012, at 10:11 AM, Devin Teske wrote:
>>> On Jan 13, 2012, at 7:28 PM, Devin Teske wrote:
>>>> Trying to buildworld in RELENG_9 with -DWITHOUT_OPENSSL and getting fa=
ilures.
>>>>=20
>>>> First failure we encountered required the following patch to get past =
"lib/libarchive (depend)"...
>>>>=20
>>>>>=20
>>>>> --- lib/libarchive/config_freebsd.h.orig	2012-01-05 03:44:55.00000000=
0 -0800
>>>>> +++ lib/libarchive/config_freebsd.h	2012-01-13 18:43:46.000000000 -08=
00
>>>>> @@ -176,9 +176,4 @@
>>>>> #define	ARCHIVE_HASH_SHA256_OPENSSL 1
>>>>> #define	ARCHIVE_HASH_SHA384_OPENSSL 1
>>>>> #define	ARCHIVE_HASH_SHA512_OPENSSL 1
>>>>> -#else
>>>>> -#define	ARCHIVE_HASH_MD5_LIBC 1
>>>>> -#define	ARCHIVE_HASH_SHA1_LIBC 1
>>>>> -#define	ARCHIVE_HASH_SHA256_LIBC 1
>>>>> -#define	ARCHIVE_HASH_SHA512_LIBC 1
>>>>> #endif
>>>>>=20
>>>>> The above patch allowed the mkdep to succeed and later-compilation in=
 the same directory succeeded (yay).
>>>>=20
>>>> However, you don't get far before the next error.
>>>>=20
>>>> Making all in lib/libbsnmp/libbsnmp with -DWITHOUT_OPENSSL...
>>>>=20
>>>> cc  -I/usr/src/lib/libbsnmp/libbsnmp/../../../contrib/bsnmp/lib -DHAVE=
_ERR_H -DHAVE_GETADDRINFO -DHAVE_STRLCPY -DHAVE_STDINT_H -DHAVE_INTTYPES_H =
-DQUADFMT=3D'"llu"' -DQUADXFMT=3D'"llx"' -std=3Dgnu99 -fstack-protector -Ws=
ystem-headers -Wall -Wno-format-y2k -W -Wno-unused-parameter -Wstrict-proto=
types -Wmissing-prototypes -Wpointer-arith -Wreturn-type -Wcast-qual -Wwrit=
e-strings -Wswitch -Wshadow -Wunused-parameter -Wcast-align -Wchar-subscrip=
ts -Winline -Wnested-externs -Wredundant-decls -Wold-style-definition -Wno-=
pointer-sign -c /usr/src/lib/libbsnmp/libbsnmp/../../../contrib/bsnmp/lib/s=
nmpcrypto.c
>>>> /usr/src/lib/libbsnmp/libbsnmp/../../../contrib/bsnmp/lib/snmpcrypto.c=
:371: error: conflicting types for 'snmp_passwd_to_keys'
>>>> /usr/src/lib/libbsnmp/libbsnmp/../../../contrib/bsnmp/lib/snmp.h:273: =
error: previous declaration of 'snmp_passwd_to_keys' was here
>>>> /usr/src/lib/libbsnmp/libbsnmp/../../../contrib/bsnmp/lib/snmpcrypto.c=
:384: error: conflicting types for 'snmp_get_local_keys'
>>>> /usr/src/lib/libbsnmp/libbsnmp/../../../contrib/bsnmp/lib/snmp.h:274: =
error: previous declaration of 'snmp_get_local_keys' was here
>>>>=20
>>>=20
>>> The solution to this appears to be the following patch:
>>>=20
>>> =3D=3D=3D=3D=3D=3D=3D=3D=3D BEGIN PATCH =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
>>> --- contrib/bsnmp/lib/snmpcrypto.c.orig	2011-09-22 17:51:37.000000000 -=
0700
>>> +++ contrib/bsnmp/lib/snmpcrypto.c	2012-01-15 09:49:27.000000000 -0800
>>> @@ -366,7 +366,7 @@ snmp_pdu_decrypt(const struct snmp_pdu *
>>> 	return (SNMP_CODE_OK);
>>> }
>>>=20
>>> -int
>>> +enum snmp_code
>>> snmp_passwd_to_keys(struct snmp_user *user, char *passwd __unused)
>>> {
>>> 	if (user->auth_proto =3D=3D SNMP_AUTH_NOAUTH &&
>>> @@ -378,7 +378,7 @@ snmp_passwd_to_keys(struct snmp_user *us
>>> 	return (SNMP_CODE_FAILED);
>>> }
>>>=20
>>> -int
>>> +enum snmp_code
>>> snmp_get_local_keys(struct snmp_user *user, uint8_t *eid __unused,
>>>   uint32_t elen __unused)
>>> {
>>>=20
>>> =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D END PATCH =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
>>>=20
>>=20
>> Then you churn along for some lengthy time (even making it all the way t=
hrough clang successfully), but then stop again at usr.sbin/wpa/hostapd (de=
pend) (output at end).
>>=20
>> Probably going to be a patch similar to the libarchive one.
>> --=20
>> Devin
>>=20
>>=20
>> =3D=3D=3D> usr.sbin/wpa/hostapd (depend)
>> rm -f .depend
>> mkdep -f .depend -a    -DDRUID -I/usr/src/usr.sbin/wpa/hostapd -I/usr/sr=
c/usr.sbin/wpa/hostapd/../../../contrib/wpa//src -I/usr/src/usr.sbin/wpa/ho=
stapd/../../../contrib/wpa//src/common -I/usr/src/usr.sbin/wpa/hostapd/../.=
./../contrib/wpa//src/crypto -I/usr/src/usr.sbin/wpa/hostapd/../../../contr=
ib/wpa//src/l2_packet -I/usr/src/usr.sbin/wpa/hostapd/../../../contrib/wpa/=
/src/utils -DCONFIG_CTRL_IFACE -DCONFIG_CTRL_IFACE_UNIX -I/usr/src/usr.sbin=
/wpa/hostapd/../../../contrib/wpa//hostapd -I/usr/src/usr.sbin/wpa/hostapd/=
../../../contrib/wpa//src/drivers -DCONFIG_DRIVER_BSD -DHOSTAPD -DCONFIG_DR=
IVER_RADIUS_ACL -DCONFIG_IPV6 -DEAP_TLS_NONE -DINTERNAL_AES -DINTERNAL_SHA1=
 -DINTERNAL_MD5 -I/usr/src/usr.sbin/wpa/hostapd -I/usr/src/usr.sbin/wpa/hos=
tapd/../../../contrib/wpa//src -I/usr/src/usr.sbin/wpa/hostapd/../../../con=
trib/wpa//src/common -I/usr/src/usr.sbin/wpa/hostapd/../../../contrib/wpa//=
src/crypto -I/usr/src/usr.sbin/wpa/hostapd/../../../contrib/wpa//src/l2_pac=
ket -I/usr/src/usr.sbin/wpa/hostapd/../../../contrib/wpa//src/utils -DCONFI=
G_CTRL_IFACE -DCONFIG_CTRL_IFACE_UNIX /usr/src/usr.sbin/wpa/hostapd/../../.=
./contrib/wpa//src/ap/accounting.c /usr/src/usr.sbin/wpa/hostapd/../../../c=
ontrib/wpa//src/crypto/aes-wrap.c /usr/src/usr.sbin/wpa/hostapd/../../../co=
ntrib/wpa//src/ap/ap_config.c /usr/src/usr.sbin/wpa/hostapd/../../../contri=
b/wpa//src/ap/ap_drv_ops.c /usr/src/usr.sbin/wpa/hostapd/../../../contrib/w=
pa//src/ap/ap_mlme.c /usr/src/usr.sbin/wpa/hostapd/../../../contrib/wpa//sr=
c/ap/authsrv.c /usr/src/usr.sbin/wpa/hostapd/../../../contrib/wpa//src/eap_=
common/chap.c /usr/src/usr.sbin/wpa/hostapd/../../../contrib/wpa//src/utils=
/common.c /usr/src/usr.sbin/wpa/hostapd/../../../contrib/wpa//hostapd/confi=
g_file.c /usr/src/usr.sbin/wpa/hostapd/../../../contrib/wpa//hostapd/ctrl_i=
face.c /usr/src/usr.sbin/wpa/hostapd/../../../contrib/wpa//src/crypto/crypt=
o_openssl.c /usr/src/usr.sbin/wpa/hostapd/../../../contrib/wpa//src/ap/ctrl=
_iface_ap.c /usr/src/usr.sbin/wpa/hostapd/../../../contrib/wpa//src/drivers=
/drivers.c /usr/src/usr.sbin/wpa/hostapd/../../../contrib/wpa//src/ap/drv_c=
allbacks.c /usr/src/usr.sbin/wpa/hostapd/../../../contrib/wpa//hostapd/dump=
_state.c /usr/src/usr.sbin/wpa/hostapd/../../../contrib/wpa//src/eap_common=
/eap_common.c /usr/src/usr.sbin/wpa/hostapd/../../../contrib/wpa//src/eap_c=
ommon/eap_peap_common.c /usr/src/usr.sbin/wpa/hostapd/../../../contrib/wpa/=
/hostapd/eap_register.c /usr/src/usr.sbin/wpa/hostapd/../../../contrib/wpa/=
/src/eap_server/eap_server.c /usr/src/usr.sbin/wpa/hostapd/../../../contrib=
/wpa//src/eap_server/eap_server_gtc.c /usr/src/usr.sbin/wpa/hostapd/../../.=
./contrib/wpa//src/eap_server/eap_server_identity.c /usr/src/usr.sbin/wpa/h=
ostapd/../../../contrib/wpa//src/eap_server/eap_server_md5.c /usr/src/usr.s=
bin/wpa/hostapd/../../../contrib/wpa//src/eap_server/eap_server_methods.c /=
usr/src/usr.sbin/wpa/hostapd/../../../contrib/wpa//src/eap_server/eap_serve=
r_mschapv2.c /usr/src/usr.sbin/wpa/hostapd/../../../contrib/wpa//src/eap_se=
rver/eap_server_peap.c /usr/src/usr.sbin/wpa/hostapd/../../../contrib/wpa//=
src/eap_server/eap_server_tls.c /usr/src/usr.sbin/wpa/hostapd/../../../cont=
rib/wpa//src/eap_server/eap_server_tls_common.c /usr/src/usr.sbin/wpa/hosta=
pd/../../../contrib/wpa//src/eap_server/eap_server_ttls.c /usr/src/usr.sbin=
/wpa/hostapd/../../../contrib/wpa//src/eapol_auth/eapol_auth_dump.c /usr/sr=
c/usr.sbin/wpa/hostapd/../../../contrib/wpa//src/eapol_auth/eapol_auth_sm.c=
 /usr/src/usr.sbin/wpa/hostapd/../../../contrib/wpa//src/utils/eloop.c /usr=
/src/usr.sbin/wpa/hostapd/../../../contrib/wpa//src/ap/hostapd.c /usr/src/u=
sr.sbin/wpa/hostapd/../../../contrib/wpa//src/ap/ieee802_11_auth.c /usr/src=
/usr.sbin/wpa/hostapd/../../../contrib/wpa//src/common/ieee802_11_common.c =
/usr/src/usr.sbin/wpa/hostapd/../../../contrib/wpa//src/ap/ieee802_11_ht.c =
/usr/src/usr.sbin/wpa/hostapd/../../../contrib/wpa//src/ap/ieee802_1x.c /us=
r/src/usr.sbin/wpa/hostapd/../../../contrib/wpa//src/utils/ip_addr.c /usr/s=
rc/usr.sbin/wpa/hostapd/../../../contrib/wpa//src/crypto/md5.c /usr/src/usr=
.sbin/wpa/hostapd/../../../contrib/wpa//hostapd/main.c /usr/src/usr.sbin/wp=
a/hostapd/../../../contrib/wpa//src/crypto/ms_funcs.c /usr/src/usr.sbin/wpa=
/hostapd/../../../contrib/wpa//src/ap/peerkey_auth.c /usr/src/usr.sbin/wpa/=
hostapd/../../../contrib/wpa//src/ap/pmksa_cache_auth.c /usr/src/usr.sbin/w=
pa/hostapd/../../../contrib/wpa//src/ap/preauth_auth.c /usr/src/usr.sbin/wp=
a/hostapd/../../../contrib/wpa//src/radius/radius.c /usr/src/usr.sbin/wpa/h=
ostapd/../../../contrib/wpa//src/radius/radius_client.c /usr/src/usr.sbin/w=
pa/hostapd/../../../contrib/wpa//src/ap/sta_info.c /usr/src/usr.sbin/wpa/ho=
stapd/../../../contrib/wpa//src/crypto/sha1-pbkdf2.c /usr/src/usr.sbin/wpa/=
hostapd/../../../contrib/wpa//src/crypto/sha1-tlsprf.c /usr/src/usr.sbin/wp=
a/hostapd/../../../contrib/wpa//src/crypto/sha1-tprf.c /usr/src/usr.sbin/wp=
a/hostapd/../../../contrib/wpa//src/crypto/sha1.c /usr/src/usr.sbin/wpa/hos=
tapd/../../../contrib/wpa//src/ap/tkip_countermeasures.c /usr/src/usr.sbin/=
wpa/hostapd/../../../contrib/wpa//src/ap/utils.c /usr/src/usr.sbin/wpa/host=
apd/../../../contrib/wpa//src/ap/vlan_init.c /usr/src/usr.sbin/wpa/hostapd/=
../../../contrib/wpa//src/ap/wpa_auth.c /usr/src/usr.sbin/wpa/hostapd/../..=
/../contrib/wpa//src/ap/wpa_auth_glue.c /usr/src/usr.sbin/wpa/hostapd/../..=
/../contrib/wpa//src/ap/wpa_auth_ie.c /usr/src/usr.sbin/wpa/hostapd/../../.=
./contrib/wpa//src/common/wpa_common.c /usr/src/usr.sbin/wpa/hostapd/../../=
../contrib/wpa//src/utils/wpa_debug.c /usr/src/usr.sbin/wpa/hostapd/../../.=
./contrib/wpa//src/utils/wpabuf.c /usr/src/usr.sbin/wpa/hostapd/../../../co=
ntrib/wpa//src/l2_packet/l2_packet_freebsd.c /usr/src/usr.sbin/wpa/hostapd/=
driver_freebsd.c /usr/src/usr.sbin/wpa/hostapd/../../../contrib/wpa//src/ut=
ils/os_unix.c /usr/src/usr.sbin/wpa/hostapd/../../../contrib/wpa//src/crypt=
o/tls_none.c
>> /usr/src/usr.sbin/wpa/hostapd/../../../contrib/wpa//src/crypto/crypto_op=
enssl.c:16:30: error: openssl/opensslv.h: No such file or directory
>> /usr/src/usr.sbin/wpa/hostapd/../../../contrib/wpa//src/crypto/crypto_op=
enssl.c:17:25: error: openssl/err.h: No such file or directory
>> /usr/src/usr.sbin/wpa/hostapd/../../../contrib/wpa//src/crypto/crypto_op=
enssl.c:18:25: error: openssl/des.h: No such file or directory
>> /usr/src/usr.sbin/wpa/hostapd/../../../contrib/wpa//src/crypto/crypto_op=
enssl.c:19:25: error: openssl/aes.h: No such file or directory
>> /usr/src/usr.sbin/wpa/hostapd/../../../contrib/wpa//src/crypto/crypto_op=
enssl.c:20:24: error: openssl/bn.h: No such file or directory
>> /usr/src/usr.sbin/wpa/hostapd/../../../contrib/wpa//src/crypto/crypto_op=
enssl.c:21:25: error: openssl/evp.h: No such file or directory
>> /usr/src/usr.sbin/wpa/hostapd/../../../contrib/wpa//src/crypto/crypto_op=
enssl.c:22:24: error: openssl/dh.h: No such file or directory
>> mkdep: compile failed
>> *** Error code 1
>>=20
>> Stop in /usr/src/usr.sbin/wpa/hostapd.
>> *** Error code 1
>=20
> Quick and dirty way around this one is the following patch:
>=20
> =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D BEGIN PATCH =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
> --- usr.sbin/wpa/hostapd/Makefile.orig	2011-09-22 17:51:37.000000000 -0700
> +++ usr.sbin/wpa/hostapd/Makefile	2012-01-15 11:01:49.000000000 -0800
> @@ -14,7 +14,7 @@
> PROG=3D	hostapd
> SRCS=3D	accounting.c aes-wrap.c ap_config.c \
> 	ap_drv_ops.c ap_mlme.c authsrv.c \
> -	chap.c common.c config_file.c ctrl_iface.c crypto_openssl.c \
> +	chap.c common.c config_file.c ctrl_iface.c \
> 	ctrl_iface_ap.c drivers.c drv_callbacks.c dump_state.c \
> 	eap_common.c eap_peap_common.c eap_register.c eap_server.c \
> 	eap_server_gtc.c eap_server_identity.c eap_server_md5.c \
> @@ -28,6 +28,9 @@
> 	tkip_countermeasures.c utils.c \
> 	vlan_init.c wpa_auth.c wpa_auth_glue.c wpa_auth_ie.c wpa_common.c \
> 	wpa_debug.c wpabuf.c
> +.if ${MK_OPENSSL} !=3D "no"
> +SRCS+=3D	crypto_openssl.c=20
> +.endif
> SRCS+=3D	l2_packet_freebsd.c driver_freebsd.c os_unix.c
>=20
> MAN=3D	hostapd.8 hostapd.conf.5
> =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D END PATCH =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
>=20
> And that gets you a bit further, stopping next at "usr.sbin/wpa/wpa_suppl=
icant" making all.
>=20
> Error is:
>=20
> cc  -I/usr/src/usr.sbin/wpa/wpa_supplicant -I/usr/src/usr.sbin/wpa/wpa_su=
pplicant/../../../contrib/wpa//src -I/usr/src/usr.sbin/wpa/wpa_supplicant/.=
./../../contrib/wpa//src/common -I/usr/src/usr.sbin/wpa/wpa_supplicant/../.=
./../contrib/wpa//src/crypto -I/usr/src/usr.sbin/wpa/wpa_supplicant/../../.=
./contrib/wpa//src/l2_packet -I/usr/src/usr.sbin/wpa/wpa_supplicant/../../.=
./contrib/wpa//src/utils -DCONFIG_CTRL_IFACE -DCONFIG_CTRL_IFACE_UNIX -I/us=
r/src/usr.sbin/wpa/wpa_supplicant/../../../contrib/wpa//wpa_supplicant -I/u=
sr/src/usr.sbin/wpa/wpa_supplicant/../../../contrib/wpa//src/drivers -I/usr=
/src/usr.sbin/wpa/wpa_supplicant/../../../contrib/wpa//src/rsn_supp -DCONFI=
G_DRIVER_BSD -DCONFIG_DRIVER_NDIS -DCONFIG_DRIVER_WIRED -DCONFIG_TERMINATE_=
ONLASTIF -DCONFIG_DEBUG_SYSLOG -DCONFIG_BACKEND_FILE  -DIEEE8021X_EAPOL -DE=
AP_TLS_NONE -DINTERNAL_AES -DINTERNAL_SHA1 -DINTERNAL_MD5 -I/usr/src/usr.sb=
in/wpa/wpa_supplicant -I/usr/src/usr.sbin/wpa/wpa_supplicant/../../../contr=
ib/wpa//src -I/usr/src/usr.sbin/wpa/wpa_supplicant/../../../contrib/wpa//sr=
c/common -I/usr/src/usr.sbin/wpa/wpa_supplicant/../../../contrib/wpa//src/c=
rypto -I/usr/src/usr.sbin/wpa/wpa_supplicant/../../../contrib/wpa//src/l2_p=
acket -I/usr/src/usr.sbin/wpa/wpa_supplicant/../../../contrib/wpa//src/util=
s -DCONFIG_CTRL_IFACE -DCONFIG_CTRL_IFACE_UNIX -std=3Dgnu99 -fstack-protect=
or   -o wpa_supplicant aes-cbc.o aes-ctr.o aes-eax.o aes-encblock.o aes-int=
ernal.o aes-omac1.o aes-unwrap.o aes-wrap.o bss.o blacklist.o common.o conf=
ig.o ctrl_iface.o ctrl_iface_unix.o drivers.o eloop.o events.o l2_packet_fr=
eebsd.o main.o md5.o notify.o preauth.o pmksa_cache.o scan.o sha1-pbkdf2.o =
sha1-tlsprf.o sha1-tprf.o sha1.o wpa.o wpa_common.o wpa_debug.o wpa_ie.o wp=
a_supplicant.o wpabuf.o wpas_glue.o driver_ndis.o Packet32.o driver_wired.o=
 driver_freebsd.o os_unix.o config_file.o base64.o eapol_supp_sm.o eap.o ea=
p_common.o eap_methods.o eap_register.o tls_none.o -lpcap=20
> aes-cbc.o: In function `aes_128_cbc_encrypt':
> aes-cbc.c:(.text+0x37): undefined reference to `aes_encrypt_init'
> aes-cbc.c:(.text+0xba): undefined reference to `aes_encrypt'
> aes-cbc.c:(.text+0xe6): undefined reference to `aes_encrypt_deinit'
> aes-cbc.o: In function `aes_128_cbc_decrypt':
> aes-cbc.c:(.text+0x147): undefined reference to `aes_decrypt_init'
> aes-cbc.c:(.text+0x1a7): undefined reference to `aes_decrypt'
> aes-cbc.c:(.text+0x20c): undefined reference to `aes_decrypt_deinit'
> aes-ctr.o: In function `aes_128_ctr_encrypt':
> aes-ctr.c:(.text+0x42): undefined reference to `aes_encrypt_init'
> aes-ctr.c:(.text+0x84): undefined reference to `aes_encrypt'
> aes-ctr.c:(.text+0x12d): undefined reference to `aes_encrypt_deinit'
> aes-encblock.o: In function `aes_128_encrypt_block':
> aes-encblock.c:(.text+0x1e): undefined reference to `aes_encrypt_init'
> aes-encblock.c:(.text+0x43): undefined reference to `aes_encrypt'
> aes-encblock.c:(.text+0x4c): undefined reference to `aes_encrypt_deinit'
> aes-omac1.o: In function `omac1_aes_128_vector':
> aes-omac1.c:(.text+0xdf): undefined reference to `aes_encrypt_init'
> aes-omac1.c:(.text+0x204): undefined reference to `aes_encrypt'
> aes-omac1.c:(.text+0x238): undefined reference to `aes_encrypt'
> aes-omac1.c:(.text+0x32d): undefined reference to `aes_encrypt'
> aes-omac1.c:(.text+0x336): undefined reference to `aes_encrypt_deinit'
> aes-unwrap.o: In function `aes_unwrap':
> aes-unwrap.c:(.text+0x62): undefined reference to `aes_decrypt_init'
> aes-unwrap.c:(.text+0xfb): undefined reference to `aes_decrypt'
> aes-unwrap.c:(.text+0x14d): undefined reference to `aes_decrypt_deinit'
> aes-wrap.o: In function `aes_wrap':
> aes-wrap.c:(.text+0x6b): undefined reference to `aes_encrypt_init'
> aes-wrap.c:(.text+0xdf): undefined reference to `aes_encrypt'
> aes-wrap.c:(.text+0x15b): undefined reference to `aes_encrypt_deinit'
> md5.o: In function `hmac_md5_vector':
> md5.c:(.text+0x80): undefined reference to `md5_vector'
> md5.c:(.text+0x198): undefined reference to `md5_vector'
> md5.c:(.text+0x24d): undefined reference to `md5_vector'
> sha1.o: In function `hmac_sha1_vector':
> sha1.c:(.text+0x80): undefined reference to `sha1_vector'
> sha1.c:(.text+0x198): undefined reference to `sha1_vector'
> sha1.c:(.text+0x24d): undefined reference to `sha1_vector'
> wpa.o: In function `wpa_supplicant_process_1_of_2_wpa':
> wpa.c:(.text+0x2bc1): undefined reference to `rc4_skip'
> wpa.o: In function `wpa_supplicant_decrypt_key_data':
> wpa.c:(.text+0x34a6): undefined reference to `rc4_skip'
> eapol_supp_sm.o: In function `eapol_sm_processKey':
> eapol_supp_sm.c:(.text+0x1846): undefined reference to `rc4_skip'
> eap.o: In function `eap_sm_parseEapReq':
> eap.c:(.text+0x2362): undefined reference to `md5_vector'
> *** Error code 1
>=20
> Stop in /usr/src/usr.sbin/wpa/wpa_supplicant.
> *** Error code 1
>=20
> I'm seeing that the INTERNAL_MD5 stuff was removed from src/contrib/wpa/s=
rc/crypto/md5.c
>=20


to answer myself... moved to src/contrib/wpa/src/crypto/md5-internal.c whic=
h isn't being included when -DWITHOUT_OPENSSL is passed to buildworld.

This patch does the job to get past that...

=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D BEGIN PATCH =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
--- usr.sbin/wpa/wpa_supplicant/Makefile.orig   2011-09-22 17:51:37.0000000=
00 -0700
+++ usr.sbin/wpa/wpa_supplicant/Makefile        2012-01-15 18:57:58.0000000=
00 -0800
@@ -20,6 +20,10 @@
        driver_ndis.c Packet32.c \
        driver_wired.c \
        driver_freebsd.c os_unix.c
+.if ${MK_OPENSSL} =3D=3D "no"
+SRCS+=3D aes-internal-dec.c aes-internal-enc.c md5-internal.c sha1-interna=
l.c \
+       rc4.c
+.endif
=20
 MAN=3D   wpa_supplicant.8 wpa_supplicant.conf.5
=20
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D END PATCH =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D

However, now I have to go back and add-to my earlier patch to src/usr.sbin/=
wpa/hostapd/Makefile as this is the next roadblock:

=3D=3D=3D> usr.sbin/wpa/hostapd (all)
make: don't know how to make /usr/obj/usr/src/tmp/usr/lib/libssl.a. Stop

I feel like I'm getting closer to restoring -DWITHOUT_OPENSSL support in RE=
LENG_9. All of the patches thus far (above) I'm creating are from comparing=
 RELENG_8 to 9.
--=20
Devin

_____________
The information contained in this message is proprietary and/or confidentia=
l. If you are not the intended recipient, please: (i) delete the message an=
d all copies; (ii) do not disclose, distribute or use the message in any ma=
nner; and (iii) notify the sender immediately. In addition, please be aware=
 that any message addressed to our domain is subject to archiving and revie=
w by persons other than the intended recipient. Thank you.



Want to link to this message? Use this URL: <http://docs.FreeBSD.org/cgi/mid.cgi?B010B97F-3C13-480E-BF1C-B1030BFD5E8E>