Michael Jerris 3abb7730b2 add xmlrpc-c 1.03.14 to in tree libs
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@3772 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-12-21 03:57:49 +00:00

76 lines
2.5 KiB
C

/* Copyright information is at the end of the file */
#ifndef XMLRPC_TRANSPORT_H_INCLUDED
#define XMLRPC_TRANSPORT_H_INCLUDED
#ifdef __cplusplus
extern "C" {
#endif
#include "xmlrpc-c/base.h"
struct xmlrpc_call_info;
struct xmlrpc_client_transport;
/*=========================================================================
** Transport function type declarations.
**=========================================================================
*/
typedef void (*xmlrpc_transport_create)(
xmlrpc_env * const envP,
int const flags,
const char * const appname,
const char * const appversion,
const struct xmlrpc_xportparms * const transportparmsP,
size_t const transportparm_size,
struct xmlrpc_client_transport ** const handlePP);
typedef void (*xmlrpc_transport_destroy)(
struct xmlrpc_client_transport * const clientTransportP);
typedef void (*xmlrpc_transport_asynch_complete)(
struct xmlrpc_call_info * const callInfoP,
xmlrpc_mem_block * const responseXmlP,
xmlrpc_env const env);
typedef void (*xmlrpc_transport_send_request)(
xmlrpc_env * const envP,
struct xmlrpc_client_transport * const clientTransportP,
const xmlrpc_server_info * const serverP,
xmlrpc_mem_block * const xmlP,
xmlrpc_transport_asynch_complete complete,
struct xmlrpc_call_info * const callInfoP);
typedef void (*xmlrpc_transport_call)(
xmlrpc_env * const envP,
struct xmlrpc_client_transport * const clientTransportP,
const xmlrpc_server_info * const serverP,
xmlrpc_mem_block * const xmlP,
xmlrpc_mem_block ** const responsePP);
typedef enum {timeout_no, timeout_yes} xmlrpc_timeoutType;
typedef unsigned long xmlrpc_timeout;
/* A timeout in milliseconds. */
typedef void (*xmlrpc_transport_finish_asynch)(
struct xmlrpc_client_transport * const clientTransportP,
xmlrpc_timeoutType const timeoutType,
xmlrpc_timeout const timeout);
struct xmlrpc_client_transport_ops {
xmlrpc_transport_create create;
xmlrpc_transport_destroy destroy;
xmlrpc_transport_send_request send_request;
xmlrpc_transport_call call;
xmlrpc_transport_finish_asynch finish_asynch;
};
#ifdef __cplusplus
}
#endif
#endif