On Sat, 6 Nov 2004, Roman Listov wrote:
> Saturday, November 6, 2004, 2:58:08 PM, you wrote:
>
> > On Sat, 6 Nov 2004, Roman Listov wrote:
>
> >> Как я понимаю, перый обработчик, который вызывается в стандартном
> >> апачевсом API происходит уже после получения запроса?
>
> > Да.
>
> >> А как можно, кроме как патчить апач, получить управление сразу после
> >> коннекта? Может ли это EAPI и если да, где бы почитать, как его
> >> использовать, не посоветуете? Или в идеале набросок его
> >> использования.
>
> > Нет, EAPI это не позвоялет. Нужно патчить.
>
> Я тут как раз почитал ридми
> EAPI adds the following additional
> hook pointers to the module structure:
> ...
> new_connection:
> Called from within the internal new_connection() function, right
> after the conn_rec structure for the new established connection was
> created and before Apache starts processing the request with
> ap_read_request(). It is mainly intended to be used to setup/run
> connection dependent things like sending start headers for
> on-the-fly compression, etc.
>
> Но принципы использования этого хука все равно для меня
> расплывчаты...
Виноват, ошибся. Я смотрел хуки "ap::", а это оказался хук типа фазы.
Как использовать, посмотри в самом конце pkg.sslmod/mod_ssl.c из mod_ssl:
/* Extended API (forced to be enabled with mod_ssl) */
ssl_hook_AddModule, /* after modules was added to core */
ssl_hook_RemoveModule, /* before module is removed from core */
ssl_hook_RewriteCommand, /* configuration command rewriting */
ssl_hook_NewConnection, /* socket connection open */
ssl_hook_CloseConnection /* socket connection close */
};
Обработчик имеет вид:
void ssl_hook_NewConnection(conn_rec *c);
Игорь Сысоев
http://sysoev.ru