You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@httpd.apache.org by NormW <no...@gknw.net> on 2015/08/20 11:56:31 UTC
httpd-trunk\modules\http2\h2_session.c Mystery
Hi,
My compiler (no names) is vastly smarter than I at understanding C, but
I can't tell if the following 'error' is drivel or just over my head;
> # File: h2_session.c
> # ---------------------
> # 512:nghttp2_session_callbacks_set_on_invalid_frame_recv_callback(*pcb,
on_invalid_frame_recv_cb)
> # Error: ^
> # illegal implicit conversion
> # from 'int (struct nghttp2_session *, const union *, @enum$24h2_session_c, void *)'
> # to 'int (*)(struct nghttp2_session *, const union *, int, void *)'
Beyond this one 'blip', mod_h2 builds without issue, even the static
build/link of nghttp2 lib.
TIA,
Norm
Re: httpd-trunk\modules\http2\h2_session.c Mystery
Posted by Stefan Eissing <st...@greenbytes.de>.
Ah, yes. I think that once changed in an older nghttp2 release and went unnoticed. Thanks for the fix!
> Am 20.08.2015 um 12:39 schrieb Yann Ylavic <yl...@gmail.com>:
>
> Hi,
>
> On Thu, Aug 20, 2015 at 11:56 AM, NormW <no...@gknw.net> wrote:
>>>
>>> # File: h2_session.c
>>> # ---------------------
>>> #
>>> 512:nghttp2_session_callbacks_set_on_invalid_frame_recv_callback(*pcb,
>>
>> on_invalid_frame_recv_cb)
>>>
>>> # Error:
>>> ^
>>> # illegal implicit conversion
>>> # from 'int (struct nghttp2_session *, const union *,
>>> @enum$24h2_session_c, void *)'
>>> # to 'int (*)(struct nghttp2_session *, const union *, int, void *)'
>
> It seems that the nghttp2_on_invalid_frame_recv_callback type requires
> an int for its error parameter, not a nghttp2_error enum.
>
> Does the attached patch helps?
>
> Regards,
> Yann.
> <httpd-trunk-h2_session_on_invalid_frame_recv_cb.patch>
<green/>bytes GmbH
Hafenweg 16, 48155 Münster, Germany
Phone: +49 251 2807760. Amtsgericht Münster: HRB5782
Re: httpd-trunk\modules\http2\h2_session.c Mystery
Posted by NormW <no...@gknw.net>.
On 20/08/2015 8:39 PM, Yann Ylavic wrote:
> Hi,
>
> On Thu, Aug 20, 2015 at 11:56 AM, NormW <no...@gknw.net> wrote:
>>>
>>> # File: h2_session.c
>>> # ---------------------
>>> #
>>> 512:nghttp2_session_callbacks_set_on_invalid_frame_recv_callback(*pcb,
>>
>> on_invalid_frame_recv_cb)
>>>
>>> # Error:
>>> ^
>>> # illegal implicit conversion
>>> # from 'int (struct nghttp2_session *, const union *,
>>> @enum$24h2_session_c, void *)'
>>> # to 'int (*)(struct nghttp2_session *, const union *, int, void *)'
>
> It seems that the nghttp2_on_invalid_frame_recv_callback type requires
> an int for its error parameter, not a nghttp2_error enum.
>
> Does the attached patch helps?
>
> Regards,
> Yann.
>
G/Evening from Down Under,
Yes! Whatever the patch did (not yet looked) it worked; h2_session.c
(and mod_h2 now compile/link without error.
If my compiler was a person I'd have to shout it a beer.
Regards,
Thanks for solving my Mystery.
Norm
Re: httpd-trunk\modules\http2\h2_session.c Mystery
Posted by Yann Ylavic <yl...@gmail.com>.
Hi,
On Thu, Aug 20, 2015 at 11:56 AM, NormW <no...@gknw.net> wrote:
>>
>> # File: h2_session.c
>> # ---------------------
>> #
>> 512:nghttp2_session_callbacks_set_on_invalid_frame_recv_callback(*pcb,
>
> on_invalid_frame_recv_cb)
>>
>> # Error:
>> ^
>> # illegal implicit conversion
>> # from 'int (struct nghttp2_session *, const union *,
>> @enum$24h2_session_c, void *)'
>> # to 'int (*)(struct nghttp2_session *, const union *, int, void *)'
It seems that the nghttp2_on_invalid_frame_recv_callback type requires
an int for its error parameter, not a nghttp2_error enum.
Does the attached patch helps?
Regards,
Yann.