|
|
|
|
|
|
|
|
#ifndef XMLRPC_SERVER_H_INCLUDED |
|
|
#define XMLRPC_SERVER_H_INCLUDED |
|
|
|
|
|
#include <xmlrpc-c/c_util.h> |
|
|
#include <xmlrpc-c/base.h> |
|
|
|
|
|
#ifdef __cplusplus |
|
|
extern "C" { |
|
|
#endif |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#ifdef XMLRPC_BUILDING_SERVER |
|
|
#define XMLRPC_SERVER_EXPORTED XMLRPC_DLLEXPORT |
|
|
#else |
|
|
#define XMLRPC_SERVER_EXPORTED |
|
|
#endif |
|
|
|
|
|
typedef struct xmlrpc_registry xmlrpc_registry; |
|
|
|
|
|
typedef void |
|
|
(*xmlrpc_preinvoke_method)(xmlrpc_env * const envP, |
|
|
const char * const methodName, |
|
|
xmlrpc_value * const paramArrayP, |
|
|
void * const userData); |
|
|
|
|
|
typedef xmlrpc_value * |
|
|
(*xmlrpc_method1)(xmlrpc_env * const envP, |
|
|
xmlrpc_value * const paramArrayP, |
|
|
void * const serverInfo); |
|
|
|
|
|
typedef xmlrpc_value * |
|
|
(*xmlrpc_method2)(xmlrpc_env * const envP, |
|
|
xmlrpc_value * const paramArrayP, |
|
|
void * const serverInfo, |
|
|
void * const callInfo); |
|
|
|
|
|
typedef xmlrpc_method1 xmlrpc_method; |
|
|
|
|
|
typedef xmlrpc_value * |
|
|
(*xmlrpc_default_method)(xmlrpc_env * const envP, |
|
|
const char * const callInfoP, |
|
|
const char * const methodName, |
|
|
xmlrpc_value * const paramArrayP, |
|
|
void * const serverInfo); |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
extern unsigned int const xmlrpc_server_version_major; |
|
|
extern unsigned int const xmlrpc_server_version_minor; |
|
|
extern unsigned int const xmlrpc_server_version_point; |
|
|
|
|
|
XMLRPC_SERVER_EXPORTED |
|
|
void |
|
|
xmlrpc_server_version(unsigned int * const majorP, |
|
|
unsigned int * const minorP, |
|
|
unsigned int * const pointP); |
|
|
|
|
|
XMLRPC_SERVER_EXPORTED |
|
|
xmlrpc_registry * |
|
|
xmlrpc_registry_new(xmlrpc_env * const envP); |
|
|
|
|
|
XMLRPC_SERVER_EXPORTED |
|
|
void |
|
|
xmlrpc_registry_free(xmlrpc_registry * const registryP); |
|
|
|
|
|
XMLRPC_SERVER_EXPORTED |
|
|
void |
|
|
xmlrpc_registry_disable_introspection(xmlrpc_registry * const registryP); |
|
|
|
|
|
XMLRPC_SERVER_EXPORTED |
|
|
void |
|
|
xmlrpc_registry_add_method(xmlrpc_env * const envP, |
|
|
xmlrpc_registry * const registryP, |
|
|
const char * const host, |
|
|
const char * const methodName, |
|
|
xmlrpc_method const method, |
|
|
void * const serverInfo); |
|
|
|
|
|
XMLRPC_SERVER_EXPORTED |
|
|
void |
|
|
xmlrpc_registry_add_method_w_doc(xmlrpc_env * const envP, |
|
|
xmlrpc_registry * const registryP, |
|
|
const char * const host, |
|
|
const char * const methodName, |
|
|
xmlrpc_method const method, |
|
|
void * const serverInfo, |
|
|
const char * const signatureString, |
|
|
const char * const help); |
|
|
|
|
|
XMLRPC_SERVER_EXPORTED |
|
|
void |
|
|
xmlrpc_registry_add_method2(xmlrpc_env * const envP, |
|
|
xmlrpc_registry * const registryP, |
|
|
const char * const methodName, |
|
|
xmlrpc_method2 method, |
|
|
const char * const signatureString, |
|
|
const char * const help, |
|
|
void * const serverInfo); |
|
|
|
|
|
struct xmlrpc_method_info3 { |
|
|
const char * methodName; |
|
|
xmlrpc_method2 methodFunction; |
|
|
void * serverInfo; |
|
|
size_t stackSize; |
|
|
const char * signatureString; |
|
|
const char * help; |
|
|
}; |
|
|
|
|
|
XMLRPC_SERVER_EXPORTED |
|
|
void |
|
|
xmlrpc_registry_add_method3( |
|
|
xmlrpc_env * const envP, |
|
|
xmlrpc_registry * const registryP, |
|
|
const struct xmlrpc_method_info3 * const infoP); |
|
|
|
|
|
XMLRPC_SERVER_EXPORTED |
|
|
void |
|
|
xmlrpc_registry_set_default_method(xmlrpc_env * const envP, |
|
|
xmlrpc_registry * const registryP, |
|
|
xmlrpc_default_method const handler, |
|
|
void * const userData); |
|
|
|
|
|
XMLRPC_SERVER_EXPORTED |
|
|
void |
|
|
xmlrpc_registry_set_preinvoke_method(xmlrpc_env * const envP, |
|
|
xmlrpc_registry * const registryP, |
|
|
xmlrpc_preinvoke_method const method, |
|
|
void * const userData); |
|
|
|
|
|
|
|
|
typedef void xmlrpc_server_shutdown_fn(xmlrpc_env * const envP, |
|
|
void * const context, |
|
|
const char * const comment, |
|
|
void * const callInfo); |
|
|
|
|
|
XMLRPC_SERVER_EXPORTED |
|
|
void |
|
|
xmlrpc_registry_set_shutdown(xmlrpc_registry * const registryP, |
|
|
xmlrpc_server_shutdown_fn * const shutdownFn, |
|
|
void * const context); |
|
|
|
|
|
XMLRPC_SERVER_EXPORTED |
|
|
void |
|
|
xmlrpc_registry_set_dialect(xmlrpc_env * const envP, |
|
|
xmlrpc_registry * const registryP, |
|
|
xmlrpc_dialect const dialect); |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
XMLRPC_SERVER_EXPORTED |
|
|
void |
|
|
xmlrpc_registry_process_call2(xmlrpc_env * const envP, |
|
|
xmlrpc_registry * const registryP, |
|
|
const char * const xmlData, |
|
|
size_t const xmlLen, |
|
|
void * const callInfo, |
|
|
xmlrpc_mem_block ** const outputPP); |
|
|
|
|
|
XMLRPC_SERVER_EXPORTED |
|
|
xmlrpc_mem_block * |
|
|
xmlrpc_registry_process_call(xmlrpc_env * const envP, |
|
|
xmlrpc_registry * const registryP, |
|
|
const char * const host, |
|
|
const char * const xmlData, |
|
|
size_t const xmlLen); |
|
|
|
|
|
XMLRPC_SERVER_EXPORTED |
|
|
size_t |
|
|
xmlrpc_registry_max_stackSize(xmlrpc_registry * const registryP); |
|
|
|
|
|
#ifdef __cplusplus |
|
|
} |
|
|
#endif |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#endif |
|
|
|