On Thu, Apr 17, 2014 at 10:02 AM, Jeff Trawick <[email protected]> wrote:

> On Thu, Apr 17, 2014 at 9:47 AM, Yann Ylavic <[email protected]> wrote:
>
>> On Tue, Apr 15, 2014 at 9:15 PM,  <[email protected]> wrote:
>> > Author: jim
>> > Date: Tue Apr 15 19:15:02 2014
>> > New Revision: 1587695
>> >
>> > URL: http://svn.apache.org/r1587695
>> > Log:
>> > Merge r1546759, r1546760 from trunk:
>> >
>> > Add suspend_connection and resume_connection hooks to notify modules
>> > when the thread/connection relationship changes.  (Currently implemented
>> > only for the Event MPM; should be implemented for all async MPMs.)
>>
>> When I tested and voted for this feature, my ./configure was using
>> --enable-exception-hook.
>> With a fresh new build, without this option, compilation fails with :
>>
>> mpm_common.c: In function ‘ap_hook_suspend_connection’:
>> mpm_common.c:113: error: ‘struct <anonymous>’ has no member named
>> ‘link_suspend_connection’
>> [...]
>> mpm_common.c: In function ‘ap_hook_resume_connection’:
>> mpm_common.c:116: error: ‘struct <anonymous>’ has no member named
>> ‘link_resume_connection’
>>
>> Sorry to not have caught this before...
>>
>> Probably the following patch should be applied too (ie. declare the
>> links when AP_ENABLE_EXCEPTION_HOOK is 0) :
>>
>> Index: server/mpm_common.c
>> ===================================================================
>> --- server/mpm_common.c    (revision 1588240)
>> +++ server/mpm_common.c    (working copy)
>> @@ -88,6 +88,8 @@
>>      APR_HOOK_LINK(mpm_get_name)
>>      APR_HOOK_LINK(end_generation)
>>      APR_HOOK_LINK(child_status)
>> +    APR_HOOK_LINK(suspend_connection)
>> +    APR_HOOK_LINK(resume_connection)
>>  )
>>  #endif
>>  AP_IMPLEMENT_HOOK_RUN_ALL(int, monitor,
>> [END]
>>
>> Regards,
>> Yann.
>>
>
> Ouch/apologies!  I'll do the right thing now...
>

Ahh, 2.4.x needs the cleanup in trunk to avoid that mess:

 #define DEFAULT_HOOK_LINKS \
    APR_HOOK_LINK(monitor) \
    APR_HOOK_LINK(drop_privileges) \
    APR_HOOK_LINK(mpm) \
    APR_HOOK_LINK(mpm_query) \
    APR_HOOK_LINK(mpm_register_timed_callback) \
    APR_HOOK_LINK(mpm_register_socket_callback) \
    APR_HOOK_LINK(mpm_unregister_socket_callback) \
    APR_HOOK_LINK(mpm_get_name) \
    APR_HOOK_LINK(end_generation) \
    APR_HOOK_LINK(child_status) \
    APR_HOOK_LINK(suspend_connection) \
    APR_HOOK_LINK(resume_connection)

#if AP_ENABLE_EXCEPTION_HOOK
APR_HOOK_STRUCT(
    APR_HOOK_LINK(fatal_exception)
    DEFAULT_HOOK_LINKS
)
AP_IMPLEMENT_HOOK_RUN_ALL(int, fatal_exception,
                          (ap_exception_info_t *ei), (ei), OK, DECLINED)
#else
APR_HOOK_STRUCT(
    DEFAULT_HOOK_LINKS
)
#endif

I'll propose a 2.4.x patch shortly in STATUS...


>
> --
> Born in Roswell... married an alien...
> http://emptyhammock.com/
> http://edjective.org/
>
>


-- 
Born in Roswell... married an alien...
http://emptyhammock.com/
http://edjective.org/

Reply via email to