Add introspection xmlrpc methods
void simplexmlrpc_addIntrospection( simplexmlrpc_registry reg )
Add a value to the structure
int simplexmlrpc_addStructItem( simplexmlrpc_value val, const char * key, simplexmlrpc_value v )
Append an item to an array
int simplexmlrpc_appendArrayItem( simplexmlrpc_value val, simplexmlrpc_value v )
Create a method call context
simplexmlrpc_context simplexmlrpc_context_create()
Destroys an method call context
void simplexmlrpc_context_destroy( simplexmlrpc_context ctx )
Get the name of the function that is being executed
const char *simplexmlrpc_context_getFuncName( simplexmlrpc_context ctx )
Get the current security level
int simplexmlrpc_context_getSecurityLevel( simplexmlrpc_context ctx )
Set the function name for the context
void simplexmlrpc_context_setFuncName( simplexmlrpc_context ctx, const char * funcName )
Set the method call security level.
void simplexmlrpc_context_setSecurityLevel( simplexmlrpc_context ctx, int level )
Create an array
simplexmlrpc_value simplexmlrpc_createArray()
Create a boolean value
simplexmlrpc_value simplexmlrpc_createBoolean( int val )
Create a double-precision floating point value
simplexmlrpc_value simplexmlrpc_createDouble( double val )
Create an error value
simplexmlrpc_value simplexmlrpc_createError( int code, const char * msg )
Create a 32-bit integer value
simplexmlrpc_value simplexmlrpc_createInt( int32_t val )
Create a nil value
simplexmlrpc_value simplexmlrpc_createNil()
Create a new xmlrpc registry
simplexmlrpc_registry simplexmlrpc_createRegistry()
Create a string value
simplexmlrpc_value simplexmlrpc_createString( const char * val )
Create a structure value
simplexmlrpc_value simplexmlrpc_createStruct()
void simplexmlrpc_decRef( simplexmlrpc_value val )
Destroy an xmlrpc registry
void simplexmlrpc_destroyRegistry( simplexmlrpc_registry reg )
wrapper around free()
void simplexmlrpc_free( void * ptr )
wrapper around free()
void simplexmlrpc_freeStr( const char * ptr )
Generate an xmlrpc request xml for the given method and parameters
const char *simplexmlrpc_generateCall( const char * method, simplexmlrpc_value val )
Get an item from the array
simplexmlrpc_value simplexmlrpc_getArrayItem( simplexmlrpc_value val, size_t index )
Get the size of the array
size_t simplexmlrpc_getArraySize( simplexmlrpc_value val )
Get the boolean value
int simplexmlrpc_getBooleanValue( simplexmlrpc_value val )
Get the double-precision floating point number from the value
double simplexmlrpc_getDoubleValue( simplexmlrpc_value val )
Get the error code from a value
int simplexmlrpc_getErrorCode( simplexmlrpc_value val )
Get the error string from the value
const char *simplexmlrpc_getErrorString( simplexmlrpc_value val )
Get the 32-bit integer from the value
int32_t simplexmlrpc_getIntValue( simplexmlrpc_value val )
Get the string from the value and put it into the passed in pointer
int simplexmlrpc_getStringValue( simplexmlrpc_value val, char * ret, size_t max )
Get the string from the value
const char *simplexmlrpc_getStringValueDup( simplexmlrpc_value val )
Get the key in the struct at the given index
const char *simplexmlrpc_getStructKey( simplexmlrpc_value val, size_t index )
Get the size of the struct
size_t simplexmlrpc_getStructSize( simplexmlrpc_value val )
Get the value from the struct with the given key
simplexmlrpc_value simplexmlrpc_getStructValue( simplexmlrpc_value val, const char * key )
Helper function for getting an integer value from a struct at a given key
int32_t simplexmlrpc_getStructValueInt( simplexmlrpc_value val, const char * key )
Helper function for getting a string value from a struct at a given key
const char *simplexmlrpc_getStructValueStringDup( simplexmlrpc_value val, const char * key )
Check if a struct has a key
int simplexmlrpc_hasStructKey( simplexmlrpc_value val, const char * key )
Make an xmlrpc call using libcurl
simplexmlrpc_value simplexmlrpc_httpCall( const char * url, const char * method, simplexmlrpc_value val )
Make an xmlrpc call using libcurl
simplexmlrpc_value simplexmlrpc_httpCallWithAuth( const char * url, const char * user, const char * pass, const char * method, simplexmlrpc_value val )
Increment the value’s reference counter
void simplexmlrpc_incRef( simplexmlrpc_value val )
Check if the value is a array type
int simplexmlrpc_isArray( simplexmlrpc_value val )
Check if the value is a boolean type
int simplexmlrpc_isBoolean( simplexmlrpc_value val )
Check if the value is a double type
int simplexmlrpc_isDouble( simplexmlrpc_value val )
Check if a value is an error
int simplexmlrpc_isError( simplexmlrpc_value val )
Check if the value is an integer type
int simplexmlrpc_isInt( simplexmlrpc_value val )
Check if the value is a string type
int simplexmlrpc_isString( simplexmlrpc_value val )
Check if the value is a struct type
int simplexmlrpc_isStruct( simplexmlrpc_value val )
Register an xmlrpc register with the mongoose http daemon at the given uri
void* simplexmlrpc_mongoose_register( simplexmlrpc_registry reg, struct mg_context * ctx, const char * uri, void * data )
Switch which method registry will get used.
void simplexmlrpc_mongoose_switchRegister( void * ctx, simplexmlrpc_registry reg )
Process an xmlrpc request xml and return an xmlrpc response xml
int simplexmlrpc_processMessageFree( simplexmlrpc_registry reg, simplexmlrpc_context ctx, const char * xmlIn, char ** xmlOut )
Register a method with the xmlrpc server
void simplexmlrpc_registry_addMethod( simplexmlrpc_registry reg, const char * method, int secure, simplexmlrpc_method_cb func, void * data )
Set the error code in the value
void simplexmlrpc_setErrorCode( simplexmlrpc_value val, int code )
Set the error string in the value
void simplexmlrpc_setErrorString( simplexmlrpc_value val, const char * str )