ap_hook_handler

Prototypes

int ap_hook_handler(int (*TraiterRequete)(request_rec *RequeteApache), const char *Inutile1, const char **Inutile2, int Priorite);

Description

Déclare une fonction de rappel du frontal Apache vers le module pour traiter les requêtes Http.

Le paramètre TraiterRequete est la fonction de rappel. Son paramètre RequeteApache est le descripteur de la requête Apache. Son code retour est soit :

Le paramètre Priorite est le code de priorité d'usage de cette fonction de rappel par Apache. Les valeurs possibles sont :

Les principaux champs RequeteApache sont les suivants :

Exemple

#include <httpd.h>
#include <http_config.h>
#include <http_log.h>
#include <http_protocol.h>
#include <http_request.h>
#include <http_core.h>
#include <ap_compat.h>

...
static void TraiterDemarrer(apr_pool_t *PouleFils, server_rec *ServeurApache)
/***************************************************************************/
{
...
}

static int TraiterConnecter(request_rec *RequeteApache)
/*****************************************************/
{
...
return(OK);
}

static int TraiterRequete(request_rec *RequeteApache)
/***************************************************/
{
...
return(OK);
}

static void EnregistrerRappels(apr_pool_t *Poule)
/***********************************************/
{
...
if (ap_hook_child_init(TraiterDemarrer,NULL,NULL,APR_HOOK_MIDDLE)!=APR_SUCCESS) if (ap_hook_check_user_id(TraiterConnecter,NULL,NULL,APR_HOOK_MIDDLE)!=APR_SUCCESS) if (ap_hook_handler(TraiterRequete,NULL,NULL,APR_HOOK_MIDDLE)!=APR_SUCCESS) ...
}

#if defined(__cplusplus)
extern "C" {
#endif
module AP_MODULE_DECLARE_DATA MonModule={STANDARD20_MODULE_STUFF,NULL,NULL,NULL,NULL,NULL,EnregistrerRappels};
#if defined(__cplusplus)
}
#endif

Voir aussi

ap_hook_check_user_id pour déclarer la méthode de rappel de connexion. ap_hook_child_init pour déclarer la méthode de rappel de démarrage.