typedef void *Ns_OpContext; typedef int (Ns_OpProc) (void *context, Ns_Conn *conn); typedef void (Ns_OpDeleteProc) (void *context); void Ns_GetRequest( char *hServer char *method, char *URL, Ns_OpProc **pProc, Ns_OpDeleteProc **pDeleteProc, Ns_OpContext **pContext int *pflags );
The Ns_GetRequest function sets
pproc to the procedure the server would call to handle a request of method and URL on the specified server.
pContext is set to the context that would be passed to
pProc when called, and
pDeletepProc is set to the delete procedure that would be called if
pProc were unregistered (or re-registered).
pflags points to the flags argument passed to Ns_RegisterRequest. The function returned is the best matching function and not necessarily an exact matching function.
You can use Ns_GetRequest and the NS_OP_NODELETE flag for Ns_RegisterRequest to implement wrapper-type operation, where you save the operation function, delete procedure, and context and register a new function that does some type of pre-processing before calling the operation or delete procedures.