[Swan-dev] Git Breakage - blapi.h (fwd)

Lennart Sorensen lsorense at csclub.uwaterloo.ca
Wed Sep 19 12:34:53 UTC 2018

On Wed, Sep 19, 2018 at 12:36:23PM +0200, António Silva wrote:
> Hi,
> i've got the same error on debian jessie:
> /home/antonio/libreswan-3.26/programs/pluto/keys.c:75:19: fatal error:
> blapi.h: No such file or directory
>  #include <blapi.h>
>                    ^
> But i couldn't find a workaround... this headers are not present on debian
> libnss3-dev:
> https://packages.debian.org/jessie/amd64/libnss3-dev/filelist
> There is a discussion about the missing headers for the pkg nss-pem:
> https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=855879
> Not sure if they will be included...Currently i couldn't find any pkg with
> those headers.
> i try to copy the missing headers from the source pkg nss, but no luck.. i
> got a new error when compiling..
> /usr/bin/ld: cannot find -lfreebl
> collect2: error: ld returned 1 exit status
> any idea how to compile it on debian jessie or is not supported?
> I also had the issue:
> libreswan-3.26/lib/libswan/ike_alg_dh.c:323:13: error: 'SEC_OID_CURVE25519'
> undeclared here (not in a function)
> found the solution in:
> https://www.mail-archive.com/swan-dev@lists.libreswan.org/msg02454.html
> echo "USE_DH31=false" >> Makefile.inc.local

I think the library is called libfreebl3 on Debian, so change -lfreebl
to -lfreebl3 and see if that helps.

Debian does not put up with upstreams that don't understand how to
version their ABIs and will do it for them if necesary.

Looking at the source for nss, blapit.h is listed in manifest.mn as
EXPORT.  blapi.h is listed as PRIVATE_EXPORTS.  Debian ships the public
headers, not the private ones.  So either nss is wrong in flagging it
as private, or libreswan is wrong in trying to use a private header file.
My initial guess would be the last option.

Len Sorensen

More information about the Swan-dev mailing list