From 6457c46897d6e0c63476bf4ba4ca14b4844fac0d Mon Sep 17 00:00:00 2001 From: m0gg Date: Thu, 23 Nov 2006 15:27:32 +0000 Subject: Code cleanup --- libcsoap/soap-router.h | 117 +++++++++++++++++++++++++++++++------------------ 1 file changed, 74 insertions(+), 43 deletions(-) (limited to 'libcsoap/soap-router.h') diff --git a/libcsoap/soap-router.h b/libcsoap/soap-router.h index da6199f..69f0e86 100644 --- a/libcsoap/soap-router.h +++ b/libcsoap/soap-router.h @@ -1,5 +1,5 @@ /****************************************************************** - * $Id: soap-router.h,v 1.10 2006/11/21 20:59:02 m0gg Exp $ + * $Id: soap-router.h,v 1.11 2006/11/23 15:27:33 m0gg Exp $ * * CSOAP Project: A SOAP client/server library in C * Copyright (C) 2003 Ferhat Ayaz @@ -25,72 +25,103 @@ #define __csoap_router_h /** - The router object. A router can store a set of - services. A service is a C function. + * + * Authentication callback function for a cSOAP service. + * + */ +typedef int (*soap_auth) (struct SoapEnv *request, const char *user, const char *pass); + +/** + * + * The router object. A router can store a set of + * services. A service is a C function. + * */ -typedef struct _SoapRouter +struct SoapRouter { SoapServiceNode *service_head; SoapServiceNode *service_tail; SoapService *default_service; - httpd_auth auth; - xmlDocPtr wsdl; -} SoapRouter; + soap_auth auth; + xmlDocPtr description; +}; #ifdef __cplusplus extern "C" { #endif /** - Creates a new router object. Create a router if - you are implementing a soap server. Then register - the services to this router. -

A router points also to http url context. - - @returns Soap router - @see soap_router_free + * + * Creates a new router object. Create a router if + * you are implementing a soap server. Then register + * the services to this router. + *

A router points also to http url context. + * + * @returns Soap router + * + * @see soap_router_free + * */ -extern SoapRouter *soap_router_new(void); - +extern struct SoapRouter *soap_router_new(void); /** - Registers a SOAP service (in this case a C function) - to the router. - - @param router The router object - @param func Function to register as a soap service - @param method Method name to call the function from - the client side. - @param urn The urn for this service + * + * Registers a SOAP service (in this case a C function) + * to the router. + * + * @param router The router object + * @param func Function to register as a soap service + * @param method Method name to call the function from + * the client side. + * @param urn The urn for this service + * */ -extern herror_t soap_router_register_service(SoapRouter * router, - SoapServiceFunc func, - const char *method, const char *urn); - -extern herror_t soap_router_register_default_service(SoapRouter * router, SoapServiceFunc func, const char *method, const char *urn); - - -extern void soap_router_register_description(SoapRouter *router, xmlDocPtr doc); - -extern void soap_router_register_security(SoapRouter *router, httpd_auth auth); +extern herror_t soap_router_register_service(struct SoapRouter *router, SoapServiceFunc func, const char *method, const char *urn); /** - Searches for a registered soap service. + * + * Register a default service for the router. + * + */ +extern herror_t soap_router_register_default_service(struct SoapRouter * router, SoapServiceFunc func, const char *method, const char *urn); - @param router The router object - @param urn URN of the service - @param method The name under which the service was registered. +/** + * + * Register a service description for the router. + * + */ +extern void soap_router_register_description(struct SoapRouter *router, xmlDocPtr doc); - @return The service if found, NULL otherwise. +/** + * + * Register a security provider for the router. + * */ -extern SoapService *soap_router_find_service(SoapRouter * router, const char *urn, const char *method); +extern void soap_router_register_security(struct SoapRouter *router, soap_auth auth); /** - Frees the router object. + * + * Searches for a registered soap service. + * + * @param router The router object + * @param urn URN of the service + * @param method The name under which the service was registered. + * + * @return The service if found, NULL otherwise. + * + */ +extern SoapService *soap_router_find_service(struct SoapRouter *router, const char *urn, const char *method); - @param router The router object to free +/** + * + * Frees the router object. + * + * @param router The router object to free + * + * @see soap_router_new + * */ -extern void soap_router_free(SoapRouter * router); +extern void soap_router_free(struct SoapRouter * router); #ifdef __cplusplus } -- cgit v1.1-32-gdbae