On Thu, Feb 16, 2017 at 11:33 PM, Yann Ylavic <ylavic....@gmail.com> wrote:
> On Thu, Feb 16, 2017 at 10:52 PM, William A Rowe Jr <wr...@rowe-clan.net> 
> wrote:
>> I'm not clear that this was a good usage of the current API...
>>
>> In file included from httpd-2.x/modules/ssl/ssl_private.h:90:0,
>>                  from httpd-2.x/modules/ssl/ssl_engine_init.c:29:
>> httpd-2.x/modules/ssl/ssl_engine_init.c: In function ‘ssl_init_server_certs’:
>> include/openssl/ssl.h:1287:51: warning: statement with no effect
>> [-Wunused-value]
>>  # define SSL_CTX_set_ecdh_auto(dummy, onoff)      ((onoff) != 0)
>>                                                    ^
>> httpd-2.x/modules/ssl/ssl_engine_init.c:1328:9: note: in expansion of
>> macro ‘SSL_CTX_set_ecdh_auto’
>>          SSL_CTX_set_ecdh_auto(mctx->ssl_ctx, 1);
>>          ^~~~~~~~~~~~~~~~~~~~~
>
> Looks like OpenSSL missed a cast to void in its macro implementation.
> I think goal was to still evaluate "onoff", but in this case
> "((void)((onoff) != 0))" or the usual "do (void)((onoff) != 0); while
> (0)" would have been more clean/compatible...

Wait, SSL_CTX_set_ecdh_auto() used to return an int so the macro is
right actually.
Hmm, picky compiler :)

>
> I guess we'll have to work around this with our own (void) casting.

That still holds...

Reply via email to