diff options
Diffstat (limited to 'ext/rpc/xmlrpc/libxmlrpc/xmlrpc.h')
-rw-r--r-- | ext/rpc/xmlrpc/libxmlrpc/xmlrpc.h | 40 |
1 files changed, 37 insertions, 3 deletions
diff --git a/ext/rpc/xmlrpc/libxmlrpc/xmlrpc.h b/ext/rpc/xmlrpc/libxmlrpc/xmlrpc.h index c7223adf2e..bcfa46fadc 100644 --- a/ext/rpc/xmlrpc/libxmlrpc/xmlrpc.h +++ b/ext/rpc/xmlrpc/libxmlrpc/xmlrpc.h @@ -43,7 +43,7 @@ extern "C" { /* allow version to be specified via compile line define */ #ifndef XMLRPC_LIB_VERSION - #define XMLRPC_LIB_VERSION "0.41" + #define XMLRPC_LIB_VERSION "0.50" #endif /* this number, representing the date, must be increased each time the API changes */ @@ -61,6 +61,7 @@ extern "C" { * XMLRPC_VALUE_TYPE * NOTES * Defines data types for XMLRPC_VALUE + * Deprecated for public use. See XMLRPC_VALUE_TYPE_EASY * SEE ALSO * XMLRPC_VECTOR_TYPE * XMLRPC_REQUEST_TYPE @@ -83,7 +84,8 @@ typedef enum _XMLRPC_VALUE_TYPE { * NAME * XMLRPC_VECTOR_TYPE * NOTES - * Defines data types for XMLRPC_VECTOR + * Defines data types for XMLRPC_VECTOR. + * Deprecated for public use. See XMLRPC_VALUE_TYPE_EASY * SEE ALSO * XMLRPC_VALUE_TYPE * XMLRPC_REQUEST_TYPE @@ -97,6 +99,33 @@ typedef enum _XMLRPC_VECTOR_TYPE { } XMLRPC_VECTOR_TYPE; /*******/ +/****d* VALUE/XMLRPC_VALUE_TYPE_EASY + * NAME + * XMLRPC_VALUE_TYPE_EASY + * NOTES + * Defines data types for XMLRPC_VALUE, including vector types. + * SEE ALSO + * XMLRPC_VECTOR_TYPE + * XMLRPC_REQUEST_TYPE + * SOURCE + */ +typedef enum _XMLRPC_VALUE_TYPE_EASY { + xmlrpc_type_none, /* not a value */ + xmlrpc_type_empty, /* empty value, eg NULL */ + xmlrpc_type_base64, /* base64 value, eg binary data */ + xmlrpc_type_boolean, /* boolean [0 | 1] */ + xmlrpc_type_datetime, /* datetime [ISO8601 | time_t] */ + xmlrpc_type_double, /* double / floating point */ + xmlrpc_type_int, /* integer */ + xmlrpc_type_string, /* string */ +/* -- IMPORTANT: identical to XMLRPC_VALUE_TYPE to this point. -- */ + xmlrpc_type_array, /* vector array */ + xmlrpc_type_mixed, /* vector mixed */ + xmlrpc_type_struct /* vector struct */ +} XMLRPC_VALUE_TYPE_EASY; +/*******/ + + /****d* VALUE/XMLRPC_REQUEST_TYPE * NAME * XMLRPC_REQUEST_TYPE @@ -165,7 +194,8 @@ typedef enum _xmlrpc_version { xmlrpc_version_none, /* not a recognized vocabulary */ xmlrpc_version_1_0, /* xmlrpc 1.0 standard vocab */ xmlrpc_version_simple = 2, /* alt more readable vocab */ - xmlrpc_version_danda = 2 /* same as simple. legacy */ + xmlrpc_version_danda = 2, /* same as simple. legacy */ + xmlrpc_version_soap_1_1 = 3 /* SOAP. version 1.1 */ } XMLRPC_VERSION; /******/ @@ -303,7 +333,10 @@ XMLRPC_VALUE XMLRPC_CreateVector(const char* id, XMLRPC_VECTOR_TYPE type); /* Cleanup values */ void XMLRPC_CleanupValue(XMLRPC_VALUE value); + +/* Copy values */ XMLRPC_VALUE XMLRPC_CopyValue(XMLRPC_VALUE value); +XMLRPC_VALUE XMLRPC_DupValueNew(XMLRPC_VALUE xSource); /* Set Values */ void XMLRPC_SetValueDateTime(XMLRPC_VALUE value, time_t time); @@ -329,6 +362,7 @@ const char* XMLRPC_GetValueID(XMLRPC_VALUE value); /* Type introspection */ XMLRPC_VALUE_TYPE XMLRPC_GetValueType(XMLRPC_VALUE v); +XMLRPC_VALUE_TYPE_EASY XMLRPC_GetValueTypeEasy(XMLRPC_VALUE v); XMLRPC_VECTOR_TYPE XMLRPC_GetVectorType(XMLRPC_VALUE v); /* Parsing and Creating XML */ |