On Sun, 27 Feb 2022 at 02:42, Sebastian Andrzej Siewior < sebast...@breakpoint.cc> wrote:
> | transports/snmpTLSBaseDomain.c:59:22: error: static declaration of > ‘ERR_get_error_all’ follows non-static declaration > | 59 | static unsigned long ERR_get_error_all(const char **file, int > *line, | | ^~~~~~~~~~~~~~~~~ > | In file included from transports/snmpTLSBaseDomain.c:31: > | /usr/include/openssl/err.h:406:15: note: previous declaration of > ‘ERR_get_error_all’ with type ‘long unsigned int(const char **, int > *, const char **, const char **, int *)’ > | 406 | unsigned long ERR_get_error_all(const char **file, int *line, > | | ^~~~~~~~~~~~~~~~~ > This should not be compiled because HAVE_ERR_GET_ERROR_ALL should be defined (so it's skipped over) Looks like the configure script is not picking it up. It looks like the test program does not include openssl/err.h which means it fails. AC_CHECK_FUNC doesn't include additional headers, which is why this isn't working. | transports/snmpTLSBaseDomain.c: In function ‘ERR_get_error_all’: > | transports/snmpTLSBaseDomain.c:64:5: warning: > ‘ERR_get_error_line_data’ is deprecated: Since OpenSSL 3.0 > [-Wdeprecated-declarations] > | 64 | return ERR_get_error_line_data(file, line, data, flags); > | | ^~~~~~ > | In file included from transports/snmpTLSBaseDomain.c:31: > | /usr/include/openssl/err.h:413:15: note: declared here > | 413 | unsigned long ERR_get_error_line_data(const char **file, int > *line, > | | ^~~~~~~~~~~~~~~~~~~~~~~ > | make[3]: *** [Makefile:101: transports/snmpTLSBaseDomain.lo] Error 1 > | make[3]: Leaving directory '/<<PKGBUILDDIR>>/snmplib > At the very least I'll just remove the code within the ifndef as its a *backport* of the OpenSSL 1.1.1e function. I'll look at https://stackoverflow.com/questions/63942436/determining-openssl-version-with-ifdef or something like that to properly check the result. - Craig