git head broken on NetBSD 7.2 - weird

Hal Murray hmurray at megapathdsl.net
Thu Aug 22 09:35:35 UTC 2019


I've traced it as far as it's compiling some code that I think should be 
ifdef-ed out.

./waf configure build says:
...
[37/94] Compiling ntpd/ntp_monitor.c
[38/94] Compiling ntpd/nts_server.c
[39/94] Compiling ntpd/nts_client.c
[40/94] Compiling ntpd/ntp_leapsec.c
...
[78/94] Linking build/main/ntpd/ntpd
ntpd/nts_server.c.1.o: In function `nts_server_init':
nts_server.c:(.text+0x229): undefined reference to `SSL_CTX_set_alpn_select_cb'
ntpd/nts_client.c.1.o: In function `set_hostname':
nts_client.c:(.text+0x3a7): undefined reference to `SSL_get0_param'
nts_client.c:(.text+0x3cd): undefined reference to 
`X509_VERIFY_PARAM_set1_host'
ntpd/nts_client.c.1.o: In function `make_ssl_client_ctx':
nts_client.c:(.text+0x9c6): undefined reference to `SSL_CTX_set_alpn_protos'

Note that it doesn't complain when it compiles nts_server or nts_client.

With different configure options, I get:
[88/98] Linking bob2/main/ntpd/ntpd
ntpd/nts_server.c.1.o: In function `nts_server_init':
/home/murray/ntpsec/raw/bob2/main/../../ntpd/nts_server.c:106: undefined 
reference to `SSL_CTX_set_alpn_select_cb'
ntpd/nts_client.c.1.o: In function `set_hostname':
/home/murray/ntpsec/raw/bob2/main/../../ntpd/nts_client.c:331: undefined 
reference to `SSL_get0_param'
/home/murray/ntpsec/raw/bob2/main/../../ntpd/nts_client.c:332: undefined 
reference to `X509_VERIFY_PARAM_set1_host'
ntpd/nts_client.c.1.o: In function `make_ssl_client_ctx':
/home/murray/ntpsec/raw/bob2/main/../../ntpd/nts_client.c:218: undefined 
reference to `SSL_CTX_set_alpn_protos'

Here is that chunk from nts_server:
#if (OPENSSL_VERSION_NUMBER > 0x1000200fL)
        SSL_CTX_set_alpn_select_cb(server_ctx, alpn_select_cb, NULL);
#endif

-bash-5.0$ grep OPENSSL_VERSION_NUMBER /usr/include/openssl/ -r
/usr/include/openssl/crypto.h:# define SSLEAY_VERSION_NUMBER   
OPENSSL_VERSION_NUMBER
/usr/include/openssl/opensslv.h:# define OPENSSL_VERSION_NUMBER  0x1000115fL
-bash-5.0$ 

-bash-5.0$ grep SSL_CTX_set_alpn_select_cb /usr/include/openssl/ -r
-bash-5.0$

I'm pretty sure that 0x1000115fL is not bigger than 0x1000200fL
I can't see why it's compiling that line of code at all and I don't understand 
why it didn't give any undefined warnings at compile time.

It worked a month ago.  The system is a year old.

I probably updated something on that system recently, but I don't remember 
what.  gcc and cpp say:
gcc (nb2 20150115) 4.8.5
cpp (nb2 20150115) 4.8.5
-r-xr-xr-x  2 root  wheel  654499 Aug 29  2018 /usr/bin/gcc
-r-xr-xr-x  2 root  wheel  654543 Aug 29  2018 /usr/bin/cpp


Has anybody seen anything like this before?

Assuming "no", I'll try bisecting tomorrow.



-- 
These are my opinions.  I hate spam.





More information about the devel mailing list