Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 03 Jul 2017 05:47:29 +0000
From:      bugzilla-noreply@freebsd.org
To:        freebsd-ports-bugs@FreeBSD.org
Subject:   [Bug 219763] net/freeradius 3.0.4.14 fails to build on FreeBSD 11.1-Prerelease with libressl due to missing psk_identity
Message-ID:  <bug-219763-13-jXkRPoyeNP@https.bugs.freebsd.org/bugzilla/>
In-Reply-To: <bug-219763-13@https.bugs.freebsd.org/bugzilla/>
References:  <bug-219763-13@https.bugs.freebsd.org/bugzilla/>

next in thread | previous in thread | raw e-mail | index | archive | help
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=3D219763

--- Comment #2 from dewayne@heuristicsystems.com.au ---
(In reply to Kubilay Kocak from comment #1)
I doubt that this is going to help, I need to spend more time on it.

Interim update.
Freeradius3 3.0.13 successfully builds with libressl 2.5.4 on FreeBSD11.1Be=
ta3
amd64.=20=20

We only use certs, no psk's. Both FreeRadius3 and libressl have been upgrad=
ed
3.0.14 and 2.5.4.  The error=20
src/main/tls.c:3169:10: error: 'fr_tls_server_conf_t {aka struct
fr_tls_server_conf_t}' has no member named 'psk_identity'
  if (conf->psk_identity) {

seems to arise because=20
PSK_MAX_IDENTITY_LEN
is defined in openssl's /usr/local/include/openssl/ssl.h but not in libress=
l's
instance.  (Aside libressl is used on amd64, while the i386's use openssl (=
for
padlock))

openssl's ssl.h is=20
-rw-r--r--  1 root  wheel  149267 Jul  1 18:45 /usr/local/include/openssl/s=
sl.h
while libressl has
-rw-r--r--  1 root  wheel  84869 Jul  1 15:33 /usr/local/include/openssl/ss=
l.h

obviously a significant difference.  But if that mattered, why would 3.0.13
build on libressl but 3.0.14 doesn't :(

So I compared the tls.c's "include" files for a clue (compared 3.0.13 with
those in 3.0.14)

# sh -c 'for i in process.h rad_assert.h radiusd.h; do diff
freeradius-server-3.0.13/src/include/$i
/var/ports/usr/ports/net/freeradius3/work/freeradius-server-3.0.14/src/incl=
ude/$i;
done'
#
No differences.

diff'ing tls.c revealed a lot of changes.  Apart from=20

< #if OPENSSL_VERSION_NUMBER >=3D 0x10100000L
---
> #if OPENSSL_VERSION_NUMBER >=3D 0x10100000L && !defined(LIBRESSL_VERSION_=
NUMBER)

There wasn't anything obviously related.


FYI: Config for all tests options:
b2# make -C /usr/ports/net/freeradius3 -DUSE_K8 showconfig|grep =3Don
     DOCS=3Don: Build and/or install documentation
     HEIMDAL=3Don: With Heimdal Kerberos support
     HEIMDAL_PORT=3Don: With Heimdal Kerberos from ports
     KERBEROS=3Don: Kerberos support
     LDAP=3Don: LDAP protocol support
     PERL=3Don: Perl scripting language support
     USER=3Don: Run as user freeradius, group freeradius
b2#

And significant flags on amd64:

# make -C /usr/ports/net/freeradius3 -DUSE_K8 -DUSE_GCC5 showconfig -VCFLAGS
-Vspacer -VLDFLAGS
-O2 -pipe -DOPENSSL_NO_SSL2 -DOPENSSL_NO_SSL3 -g0 -ggdb0 -DSTRIP_FBSDID
-UDEBUGGING -UEBUGGING -UDEBUG -march=3Dcore-avx-i -mtune=3Dcore-avx-i=20
-I/usr/local/include -fstack-protector -Wl,-rpath=3D/usr/local/lib/gcc5
-DLDAP_DEPRECATED -fno-strict-aliasing

 -L/usr/local/lib -L/usr/local/lib/heimdal -Wl,-rpath,/usr/local/lib
-fstack-protector -Wl,-rpath=3D/usr/local/lib/gcc5 -L/usr/local/lib/gcc5

In trying to get this to build, I used gcc5 whereas we normally build with
clang.  The behaviour is the same regardless of compiler.

Please note that I have some local changes to my libressl.  If anyone can b=
uild
freeradius3 3.0.14 with libressl 2.5.4 on 11.1beta3 or later then I may have
the problem, as the other 1170 ports build fine.

Unfortunately on this build cycle, I've run out of time and reverted
freeradius3, back to 3.0.13 :/

--=20
You are receiving this mail because:
You are the assignee for the bug.=



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?bug-219763-13-jXkRPoyeNP>