Re: Use of ossl_unused in err.h.in

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Please raise a github issue for this.

Matt

On 02/10/2021 17:19, Arran Cudbard-Bell wrote:
In current master HEAD and 3.0.0 calling ERR_GET_REASON  throws the following
  warning:

src/lib/tls/session.c:1323:43: warning: 'ERR_GET_REASON' was marked unused but was used [-Wused-but-marked-unused]
                 while ((ssl_err = ERR_peek_error()) && (ERR_GET_REASON(ssl_err) == BIO_R_UNSUPPORTED_METHOD)) {

This is because the static inline functions in include/openssl/err.h.in have
been marked up with ossl_unused i.e. (__attribute__((unused))).

I'm not sure what compiler the OP of https://github.com/openssl/openssl/issues/12792
was using, but it should not be generating a -Wunused-function for a static inline
function in a header file.  These are by their nature public functions, and should not
generate unused function warnings.  The only correct place to generate this warnings
is when the functions's visibility is limited to the compilation unit, and those functions
are not called within the compilation unit.

Can 067a3057c3aab0cdd9a3cdb13c2e0000f69a4170 either be reverted, or a guard
added so that ossl_unused is only set in the absence of a macro being defined (happy
to send a PR for this).

As it is currently, calling ERR_GET_LIB, ERR_GET_FUNC, ERR_GET_RFLAGS,
ERR_GET_REASON, ERR_FATAL_ERROR will produce spurious
"used-but-marked-unused" warnings at build time.

-Arran




[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Index of Archives]     [Linux ARM Kernel]     [Linux ARM]     [Linux Omap]     [Fedora ARM]     [IETF Annouce]     [Security]     [Bugtraq]     [Linux]     [Linux OMAP]     [Linux MIPS]     [ECOS]     [Asterisk Internet PBX]     [Linux API]

  Powered by Linux