Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 710992 - net-wireless/hostapd-2.9-r2[libressl]: ld: tls_openssl.c: undefined reference to SSL_set_cert_cb
Summary: net-wireless/hostapd-2.9-r2[libressl]: ld: tls_openssl.c: undefined reference...
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: All Linux
: Normal normal (vote)
Assignee: Andriy Utkin (RETIRED)
URL:
Whiteboard:
Keywords:
Depends on:
Blocks: libressl-support
  Show dependency tree
 
Reported: 2020-02-27 20:14 UTC by Quentin Retornaz
Modified: 2020-04-21 22:23 UTC (History)
1 user (show)

See Also:
Package list:
Runtime testing required: ---


Attachments
build.log (build.log,245.70 KB, text/plain)
2020-02-27 20:18 UTC, Quentin Retornaz
Details
emerge-info.txt (emerge-info.txt,5.58 KB, text/plain)
2020-02-27 20:19 UTC, Quentin Retornaz
Details
environment (environment,63.07 KB, application/octet-stream)
2020-02-27 20:20 UTC, Quentin Retornaz
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Quentin Retornaz 2020-02-27 20:14:34 UTC
last hostapd update is failing to build against libressl.
Comment 1 Quentin Retornaz 2020-02-27 20:18:20 UTC
Created attachment 616400 [details]
build.log
Comment 2 Quentin Retornaz 2020-02-27 20:19:22 UTC
Created attachment 616402 [details]
emerge-info.txt
Comment 3 Quentin Retornaz 2020-02-27 20:20:19 UTC
Created attachment 616404 [details]
environment
Comment 4 Andriy Utkin (RETIRED) gentoo-dev 2020-03-06 23:15:24 UTC
Thanks for the report.
Indeed I haven't had a libressl env to test my last revbump's changes which enabled a few important new features.
Comment 5 Andriy Utkin (RETIRED) gentoo-dev 2020-04-14 22:21:41 UTC
This bug is not an easy one to patch.

SSL_set_cert_cb is a handshake-time callback API which is used by hostapd to perform some sanity checks. LibreSSL, just as OpenSSL older than 1.0.2, just won't do.

LibreSSL doesn't provide this API and I do not see any mention of such plans or work in progress. I found just a LibreSSL enhancement request and mentioned the current Gentoo bug: https://github.com/libressl-portable/portable/issues/534

It's a shame because this "regression" has been caused by enablement of SUITEB functionality which I've done on suggestion from zerochaos and which seems quite important. So the choices are:

* leave LibreSSL broken with >=hostapd-2.9-r2;
* disable SUITEB (= drop the changes between 2.9-r1 and 2.9-r2, or part of them);
* add USE flag and declare conflict of SUITEB and LibreSSL.

The last one sounds the most Gentooish, but this accidental proliferation of USE flags is a bit annoying, since if not this compatibility issue users won't want to make a choice.
Comment 6 Quentin Retornaz 2020-04-14 22:31:57 UTC
Another possibility is to disabling suiteb only if libressl USE is set?
Comment 7 Andriy Utkin (RETIRED) gentoo-dev 2020-04-14 22:36:37 UTC
(In reply to Quentin R. from comment #6)
> Another possibility is to disabling suiteb only if libressl USE is set?

Technically yes, but would be a bad surprise for users.

USE flags are meant to be orthogonal.
Comment 8 Larry the Git Cow gentoo-dev 2020-04-21 22:18:52 UTC
The bug has been referenced in the following commit(s):

https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=f24ef74b43a105f8b0ac8377db6526d4a05c2a36

commit f24ef74b43a105f8b0ac8377db6526d4a05c2a36
Author:     Andrey Utkin <andrey_utkin@gentoo.org>
AuthorDate: 2020-04-21 22:01:28 +0000
Commit:     Andrey Utkin <andrey_utkin@gentoo.org>
CommitDate: 2020-04-21 22:17:33 +0000

    net-wireless/hostapd: make USE flag for Suite B
    
    Suite B functionality in hostapd uses OpenSSL feature unavailable in
    LibreSSL. So, enabling that functionality conflicts with using LibreSSL.
    
    Before hostapd-2.9-r2 ebuild, Suite B was disabled.
    hostapd-2.9-r2 ebuild has enablied Suite B was unconditionally.
    This commit enables it based on suiteb USE flag, which is enabled by
    default, and which is declared conflicting with libressl USE flag.
    
    Bug: https://bugs.gentoo.org/710992
    Package-Manager: Portage-2.3.66, Repoman-2.3.16
    Signed-off-by: Andrey Utkin <andrey_utkin@gentoo.org>

 net-wireless/hostapd/hostapd-2.9-r2.ebuild | 12 +++++++++---
 net-wireless/hostapd/hostapd-9999.ebuild   | 12 +++++++++---
 net-wireless/hostapd/metadata.xml          |  1 +
 3 files changed, 19 insertions(+), 6 deletions(-)
Comment 9 Andriy Utkin (RETIRED) gentoo-dev 2020-04-21 22:23:19 UTC
Should work now. Thanks for your patience.