Classes | |
class | CachedResource |
Abstraction of a resource accessed via xmlrpc or http. More... | |
class | MethodCall |
Abstraction of a MethodCall on a remote server. More... | |
class | MethodCallParser |
An xml parser for a MethodCall. More... | |
class | MethodCallParserBase |
An xml parser for a MethodCall. More... | |
class | MethodCallParserWb |
An wbxml parser for a MethodCall. More... | |
class | ConnectorWrapperBase |
Internal helper class, not intended for public use. More... | |
class | ConnectorWrapper |
Internal helper class template, not intended for public use. More... | |
class | Connection |
Base class for connection between XML RPC client and server. More... | |
class | Dispatcher |
XML RPC Dispatcher (rpc server). More... | |
class | Exception |
Base class for XML RPC exceptions. More... | |
class | ConnectionException |
Exception due to connection or network problems. More... | |
class | RuntimeException |
Exception due to runtime errors. More... | |
class | XmlException |
XML RPC exception due to a faulty xml structure. More... | |
class | ParameterException |
XML RPC exception due to faulty rpc parameters. More... | |
class | MethodException |
XML RPC exception due to problems while executing the remote method. More... | |
class | ExpatWrapper |
A wrapper for expat. More... | |
class | FileResource |
A resource that caches a file. More... | |
class | HtmlFormData |
Helper class to deal with form data. More... | |
class | HtmlFormHandler |
Helper class to deal with html "post" and "get" requests. More... | |
class | StringProcessor |
Helper class to store the message body in a string. More... | |
class | FileProcessor |
Helper class to store the message body in a file. More... | |
class | BodyProcessor |
Helper class to process a chunk of the message body. More... | |
class | HttpClient |
A simple client for an http connection. More... | |
class | HttpProtocol |
Runs http as protocol for rpc transmition. More... | |
class | HttpServer |
A simple server for an http connection. More... | |
class | MethodHandler |
Wrapper class for the method handlers. More... | |
class | Log4JSender |
Simple logger support class based on log4j. More... | |
class | MethodAdder |
Define interface for adding rpc method to a dispatcher. More... | |
class | MultiThreadRpcServer |
A multi threaded xml rpc server. More... | |
class | Mutex |
Supporter class for mutual exclusion of processes/threads. More... | |
class | Protocol |
Base class for the protocol of the rpc transportation. More... | |
struct | DispatcherData |
class | Requester |
XML RPC Requester (rpc client). More... | |
class | MethodResponse |
Abstraction of a response from a remote server. More... | |
class | MethodResponseParser |
An xml parser for a MethodResponse. More... | |
class | MethodResponseParserBase |
An xml parser for a MethodResponse. More... | |
class | MethodResponseParserWb |
An xml parser for a MethodResponse. More... | |
class | Signature |
Convenience class to generate larger signature strings for RPC methods: Usage examples:. More... | |
class | SSLConnection |
Class for ssl connections between XML RPC client and server. More... | |
class | TcpIpConnection |
Run a generic tcp/ip connection between a client and a server. More... | |
class | Value |
Abstraction of an XML RPC parameter. More... | |
class | ValueBase |
Base class of XML RPC parameters. More... | |
class | Void |
Implementation of a void value. More... | |
class | Boolean |
Implementation of a boolean value. More... | |
class | Integer |
Implementation of a integer value. More... | |
class | Double |
Implementation of a floating point value. More... | |
class | Array |
Implementation of a parameter collection. More... | |
class | Struct |
Implementation of a "named" collection. More... | |
class | RpcString |
Implementation of a string value. More... | |
class | DateTime |
Implementation of a date and time value. More... | |
class | Base64 |
Implementation of a base64 value. More... | |
class | ValueParser |
Base class for XML RPC parsing. More... | |
class | ValueParserBase |
Base class for WBXML RPC parsing. More... | |
class | ValueParserWb |
Base class for WBXML RPC parsing. More... | |
class | VirtualResource |
A resource that only exists in memory. More... | |
class | WbXmlParser |
Base class for binary XML parsing. More... | |
class | XmlParser |
Base class for XML parsing with expat. More... | |
class | XmlParserBase |
Base class for XML parsing. More... | |
Namespaces | |
namespace | hidden |
Typedefs | |
typedef std::basic_string< wchar_t > | Cpp16BitString |
typedef std::string | Cpp8BitString |
typedef std::wostringstream | CppOStringStream |
typedef Cpp16BitString | CppString |
typedef wchar_t | Char |
typedef MethodAdder::StaticMethodCall_t | MethodAdder_StaticMethodCall_t |
Enumerations | |
enum | ValueType { RpcInteger, RpcDouble, RpcBoolean, RpcStrType, RpcDateTime, RpcBase64, RpcArray, RpcStruct, RpcVoid } |
enum | WbStates { stNone, stVersion, stPubId, stCharset, stStrTableLen, stBody, stStr_I } |
Functions | |
void | getVersion (int &major, int &minor, int &patch, bool &debug, CppString &info) |
Gets the various parts of the version number. | |
Cpp16BitString | getUnicode (const std::string &latin1) |
Converts a string from latin1 to unicode. | |
std::string | getLatin1 (const Cpp16BitString &uni) |
Converts a string from unicode to latin1. | |
CppString | stripWS (const CppString &s) |
Removes trailing and leading white space. | |
CppString | encodeBase64 (const CppString &normstr, bool add_crlf=true) |
Converts binary data into base64 encoding. | |
CppString | decodeBase64 (const CppString &b64str, bool errcheck=true) |
Converts a base64 encoded string into raw data. | |
CppString | xmlEscape (const CppString &str, bool supp=false) |
Replaces dangerous sequences in xml strings. | |
CppString | charRefDezCont (ULXR_PCHAR("0123456789")) |
CppString | charRefHexCont (ULXR_PCHAR("0123456789aAbBcCdDeEfF")) |
static void | resolveCharRef (const CppString &ins, unsigned &pos, CppString &outs) |
CppString | xmlUnEscape (const CppString &str) |
Re-converts strings after being parsed. | |
static unsigned | decodeUtf8Group (const Cpp8BitString &val, unsigned &i) |
Cpp8BitString | utf8ToAscii (const Cpp8BitString &val) |
Returns a string in utf8 as 8bit ascii. | |
Cpp16BitString | utf8ToUnicode (const Cpp8BitString &val) |
Returns a string in utf8 as 16bit Unicode. | |
Cpp8BitString | unicodeToUtf8 (const Cpp16BitString &val) |
Returns a string in 16bit Unicode as utf8. | |
Cpp8BitString | asciiToUtf8 (const Cpp8BitString &val) |
Returns a string in 8bit extended ascii as utf8. | |
Cpp8BitString | unicodeToUtf8 (const unsigned c) |
Returns a character in 16bit Unicode as utf8. | |
Cpp8BitString | convertEncoding (const Cpp8BitString &val, const char *to_encoding, const char *from_encoding) |
Cpp8BitString | convertEncoding (const Cpp8BitString &val, iconv_t con) |
Returns a string converted from and to a user encoding. | |
Cpp8BitString | encodingToUtf8 (const Cpp8BitString &val, const char *encoding) |
Returns a string in a user encoding as utf8. | |
Cpp8BitString | utf8ToEncoding (const Cpp8BitString &val, const char *encoding) |
Returns a string in utf8 as user encoding. | |
void | makeLower (CppString &str) |
Converts string into lowercase. | |
void | makeUpper (CppString &str) |
Converts string into uppercase. | |
std::string | getWbXmlExtInt (long int i) |
Converts an integer in a wbxml multibyte uint32 sequence. | |
long int | wbXmlToInt (std::string &inp) |
Converts a wbxml multibyte sequence to an integer. | |
std::string | getWbXmlString (const CppString &inp) |
Converts a string in a wbxml inline string sequence. | |
CppString | wbXmlToString (std::string &inp) |
Converts a wbxml inline string sequence to a CppString. | |
CppString | binaryDebugOutput (const std::string &s) |
Converts a binary string into visible output in hex. | |
int | getRand () |
Returns a random number. | |
CppString | getLastErrorString (unsigned errornum) |
Returns a readable string about the cause of the last system error. | |
Log4JSender * | getLogger4J () |
Gets a pointer to the global log4j object. | |
void | intializeLog4J (const std::string &appname, const CppString &loghost=L"localhost") |
Initializes the global log4j object. | |
void | enableXmlPrettyPrint (bool pretty) |
Enables pretty-print of xml repsponses for better readability. | |
CppString | getXmlLinefeed () |
Gets a string with the line feed for an xml response. | |
CppString | getXmlIndent (unsigned indent) |
Gets a string with spaces for an indentation in an xml response. | |
Cpp16BitString | getUnicode (const Cpp16BitString &uni) |
Converts a string from unicode to unicode. | |
std::string | getLatin1 (const std::string &latin1) |
Converts a string from latin1 to latin1. | |
void | free_dynamic_method (const Dispatcher::MethodCallMap::value_type &method) |
template<class T> | |
MethodHandler * | make_methodhandler (T &w, typename hidden::MethodHandlerWrapper< T >::PMF pmf) |
Specialisation of template to achive uniform look in handler creation. | |
MethodHandler * | make_methodhandler (hidden::StaticMethodHandler ptr) |
Specialisation of template to achive uniform look in handler creation. | |
template<class T> | |
hidden::MethodWrapperBase * | make_method (T &w, typename hidden::MethodWrapper< T >::PMF pmf) |
Creates a wrapper object to a method of a worker class. | |
MethodAdder_StaticMethodCall_t | make_method (MethodAdder_StaticMethodCall_t ptr) |
Specialisation of template to achive uniform look in responder creation. | |
void * | dispatchThreaded (DispatcherData *data) |
template<class T> | |
hidden::ReceiverWrapperBase * | make_receiver (T &w, typename hidden::ReceiverWrapper< T >::PMF pmf) |
Creates a wrapper object to a method of a worker class. | |
hidden::StaticReceiver_t | make_receiver (hidden::StaticReceiver_t ptr) |
Specialisation of template to achive uniform look in receiver creation. | |
static int | password_cb (char *buf, int num, int, void *userdata) |
static CppString | padded (unsigned num) |
Struct::Member | operator<< (const CppString &str, const Value &t) |
Struct::Member | make_member (const CppString &str, const Value &t) |
Struct & | operator<< (Struct &st, const Struct::Member &k) |
template<class T> | |
Array & | operator<< (Array &array, const T &t) |
Helper function template to "stream" an item into an array. | |
Variables | |
static ulxr::Char | b64_encodetable [64] |
static int | b64_decodetable [256] |
Mutex | randMutex |
help to protect non-reentrant std::rand() | |
Mutex | strerrorMutex |
help to protect non-reentrant std::strerror() | |
Mutex | ctimeMutex |
help to protect non-reentrant std::ctime() | |
Mutex | localtimeMutex |
help to protect non-reentrant std::localtime() | |
Mutex | gethostbynameMutex |
help to protect non-reentrant std::gethostbyname() | |
Mutex | gethostbyaddrMutex |
help to protect non-reentrant std::gethostbyaddr() | |
std::auto_ptr< TcpIpConnection > | l4jconn |
std::auto_ptr< Log4JSender > | l4j |
bool | pretty_xml = false |
const int | NotWellformedError = -32700 |
const int | UnsupportedEncodingError = -32701 |
const int | InvalidCharacterError = -32702 |
const int | NotConformingError = -32600 |
const int | MethodNotFoundError = -32601 |
const int | InvalidMethodParameterError = -32602 |
const int | InternalXmlRpcError = -32603 |
const int | ApplicationError = -32500 |
const int | SystemError = -32400 |
const int | TransportError = -32300 |
Mutex | strerrorMutex |
help to protect non-reentrant std::strerror() | |
Mutex | ctimeMutex |
help to protect non-reentrant std::ctime() | |
Mutex | localtimeMutex |
help to protect non-reentrant std::localtime() | |
Mutex | gethostbynameMutex |
help to protect non-reentrant std::gethostbyname() | |
Mutex | gethostbyaddrMutex |
help to protect non-reentrant std::gethostbyaddr() | |
Mutex | randMutex |
help to protect non-reentrant std::rand() |
typedef wchar_t ulxr::Char |
Definition at line 411 of file ulxmlrpcpp.h.
typedef std::basic_string<wchar_t> ulxr::Cpp16BitString |
Definition at line 172 of file ulxmlrpcpp.h.
typedef std::string ulxr::Cpp8BitString |
Definition at line 179 of file ulxmlrpcpp.h.
typedef std::wostringstream ulxr::CppOStringStream |
Definition at line 409 of file ulxmlrpcpp.h.
typedef Cpp16BitString ulxr::CppString |
Definition at line 410 of file ulxmlrpcpp.h.
Definition at line 269 of file ulxr_method_adder.h.
enum ulxr::ValueType |
RpcInteger | |
RpcDouble | |
RpcBoolean | |
RpcStrType | |
RpcDateTime | |
RpcBase64 | |
RpcArray | |
RpcStruct | |
RpcVoid |
Definition at line 46 of file ulxr_value.h.
enum ulxr::WbStates |
Definition at line 65 of file ulxr_wbxmlparse.cpp.
CppString ulxr::binaryDebugOutput | ( | const std::string & | s | ) |
Converts a binary string into visible output in hex.
s | input data in binary |
Definition at line 1115 of file ulxmlrpcpp.cpp.
References ulxr::HtmlFormHandler::makeHexNumber(), and ULXR_PCHAR.
Referenced by ulxr::HttpProtocol::sendRpcCall(), ulxr::HttpProtocol::sendRpcResponse(), and ulxr::Requester::waitForResponse().
CppString ulxr::charRefDezCont | ( | ULXR_PCHAR("0123456789") | ) |
Referenced by resolveCharRef().
CppString ulxr::charRefHexCont | ( | ULXR_PCHAR("0123456789aAbBcCdDeEfF") | ) |
Referenced by resolveCharRef().
Cpp8BitString ulxr::convertEncoding | ( | const Cpp8BitString & | val, | |
const char * | to_encoding, | |||
const char * | from_encoding | |||
) |
Definition at line 909 of file ulxmlrpcpp.cpp.
References ulxr_i18n, ULXR_PCHAR, and UnsupportedEncodingError.
Referenced by encodingToUtf8(), and utf8ToEncoding().
CppString ulxr::decodeBase64 | ( | const CppString & | b64str, | |
bool | errcheck = true | |||
) |
Converts a base64 encoded string into raw data.
b64str | encoded string | |
errcheck | true: throw exception in cas of error |
Definition at line 335 of file ulxmlrpcpp.cpp.
References ApplicationError, b64_decodetable, ULXR_CHAR, ULXR_GET_STRING, ulxr_i18n, ULXR_PCHAR, and ULXR_UNICODE.
Referenced by ulxr::Base64::getString(), and ulxr::HttpProtocol::getUserPass().
static unsigned ulxr::decodeUtf8Group | ( | const Cpp8BitString & | val, | |
unsigned & | i | |||
) | [static] |
Definition at line 663 of file ulxmlrpcpp.cpp.
References ApplicationError, ulxr_i18n, ULXR_I18N_NOOP, and ULXR_PCHAR.
Referenced by utf8ToAscii(), and utf8ToUnicode().
void* ulxr::dispatchThreaded | ( | DispatcherData * | data | ) |
Definition at line 296 of file ulxr_requester.cpp.
References ulxr::Requester::decPending(), ulxr::Requester::forwardException(), ulxr::hidden::Receiver_t::free(), ulxr::Requester::incPending(), ulxr::Requester::isWbXml(), ulxr::DispatcherData::prot, ulxr::hidden::Receiver_t::receive(), ulxr::DispatcherData::recv, ulxr::DispatcherData::requester, ULXR_PCHAR, ULXR_TRACE, and ulxr::Requester::waitForResponse().
void ulxr::enableXmlPrettyPrint | ( | bool | pretty | ) |
Enables pretty-print of xml repsponses for better readability.
pretty | true: add spaces and linefeeds for better readability |
Definition at line 1200 of file ulxmlrpcpp.cpp.
References pretty_xml.
Referenced by ulxr::Dispatcher::xml_pretty_print().
CppString ulxr::encodeBase64 | ( | const CppString & | normstr, | |
bool | add_crlf = true | |||
) |
Converts binary data into base64 encoding.
normstr | the raw data | |
add_crlf | add cr/lf after each 78 characters to limit line length |
Definition at line 202 of file ulxmlrpcpp.cpp.
References ApplicationError, b64_encodetable, ulxr_i18n, and ULXR_PCHAR.
Referenced by ulxr::HttpProtocol::sendRequestHeader(), ulxr::HttpProtocol::setMessageAuthentication(), ulxr::Base64::setString(), and ulxr::HttpProtocol::tryConnect().
void ulxr::free_dynamic_method | ( | const Dispatcher::MethodCallMap::value_type & | method | ) |
Definition at line 189 of file ulxr_dispatcher.cpp.
References ulxr::MethodAdder::CallDynamic, ULXR_PCHAR, and ULXR_TRACE.
Referenced by ulxr::Dispatcher::removeMethod().
CppString ulxr::getLastErrorString | ( | unsigned | errornum | ) |
Returns a readable string about the cause of the last system error.
Simply calls nonreentrant std::strerror()
in a thread safe mode.
errornum | error number taken from errno |
Definition at line 1155 of file ulxmlrpcpp.cpp.
References ULXR_GET_STRING.
Referenced by funtik::MultiProcessRpcServer::blockSigchld(), ulxr::Connection::getErrorString(), funtik::SSLConnectionException::SSLConnectionException(), ulxr::Requester::startDispatch(), funtik::MultiProcessRpcServer::storeFuncResult(), funtik::MultiProcessRpcServer::unblockSigchld(), funtik::MultiProcessRpcServer::waitChildren(), and funtik::MultiProcessRpcServer::waitConnection().
Log4JSender * ulxr::getLogger4J | ( | ) |
Gets a pointer to the global log4j object.
!= 0 pointer to object
Definition at line 1173 of file ulxmlrpcpp.cpp.
References l4j.
int ulxr::getRand | ( | ) |
Returns a random number.
Simply calls nonreentrant std::rand()
in a thread safe mode.
Definition at line 1145 of file ulxmlrpcpp.cpp.
References randMutex.
void ulxr::getVersion | ( | int & | major, | |
int & | minor, | |||
int & | patch, | |||
bool & | debug, | |||
CppString & | info | |||
) |
Gets the various parts of the version number.
major | major part | |
minor | minor part | |
patch | patch counter | |
debug | true: compiled with DEBUG | |
info | some human readable information |
Definition at line 98 of file ulxmlrpcpp.cpp.
References getLatin1(), ulxr_atoi, ULXR_CHAR, ULXR_GET_STRING, and ULXR_VERSION.
std::string ulxr::getWbXmlExtInt | ( | long int | i | ) |
Converts an integer in a wbxml multibyte uint32 sequence.
i | value to convert |
Definition at line 997 of file ulxmlrpcpp.cpp.
References ulxr::WbXmlParser::wbxml_EXT_T_0.
std::string ulxr::getWbXmlString | ( | const CppString & | inp | ) |
Converts a string in a wbxml inline string sequence.
inp | inline string |
Definition at line 1065 of file ulxmlrpcpp.cpp.
References unicodeToUtf8(), and ulxr::WbXmlParser::wbxml_STR_I.
Referenced by ulxr::Struct::getWbXml(), ulxr::DateTime::getWbXml(), ulxr::Base64::getWbXml(), ulxr::RpcString::getWbXml(), ulxr::Double::getWbXml(), ulxr::Integer::getWbXml(), ulxr::Boolean::getWbXml(), and ulxr::MethodCall::getWbXml().
CppString ulxr::getXmlIndent | ( | unsigned | indent | ) |
Gets a string with spaces for an indentation in an xml response.
indent | number of spaces to indent |
string with indent
spaces
Definition at line 1219 of file ulxmlrpcpp.cpp.
References pretty_xml, and ULXR_PCHAR.
Referenced by ulxr::Struct::getXml(), ulxr::Array::getXml(), ulxr::DateTime::getXml(), ulxr::Base64::getXml(), ulxr::RpcString::getXml(), ulxr::Double::getXml(), ulxr::Integer::getXml(), ulxr::Boolean::getXml(), ulxr::MethodResponse::getXml(), and ulxr::MethodCall::getXml().
CppString ulxr::getXmlLinefeed | ( | ) |
Gets a string with the line feed for an xml response.
string for a regular line feed otherwise
Definition at line 1206 of file ulxmlrpcpp.cpp.
References pretty_xml, and ULXR_PCHAR.
Referenced by ulxr::Struct::getXml(), ulxr::Array::getXml(), ulxr::MethodResponse::getXml(), and ulxr::MethodCall::getXml().
void ulxr::intializeLog4J | ( | const std::string & | appname, | |
const CppString & | loghost = L"localhost" | |||
) |
Initializes the global log4j object.
appname | application name. May directly come from argv[0] with full path. | |
loghost | Name of log host. Port is always 4448. |
Definition at line 1179 of file ulxmlrpcpp.cpp.
References l4j, l4jconn, and ULXR_GET_STRING.
Struct::Member ulxr::make_member | ( | const CppString & | str, | |
const Value & | t | |||
) |
MethodAdder_StaticMethodCall_t ulxr::make_method | ( | MethodAdder_StaticMethodCall_t | ptr | ) | [inline] |
Specialisation of template to achive uniform look in responder creation.
ptr | pointer to worker function |
Definition at line 276 of file ulxr_method_adder.h.
hidden::MethodWrapperBase* ulxr::make_method | ( | T & | w, | |
typename hidden::MethodWrapper< T >::PMF | pmf | |||
) | [inline] |
Creates a wrapper object to a method of a worker class.
new ulxr::hidden::MethodWrapper<classname> (&obj, &classname::method),
w | reference to worker class | |
pmf | adress of member function in worker class |
Definition at line 253 of file ulxr_method_adder.h.
MethodHandler* ulxr::make_methodhandler | ( | hidden::StaticMethodHandler | ptr | ) | [inline] |
Specialisation of template to achive uniform look in handler creation.
ptr | pointer to handler function |
Definition at line 572 of file ulxr_http_server.h.
MethodHandler* ulxr::make_methodhandler | ( | T & | w, | |
typename hidden::MethodHandlerWrapper< T >::PMF | pmf | |||
) | [inline] |
Specialisation of template to achive uniform look in handler creation.
w | reference to handler object | |
pmf | pointer to member function |
Definition at line 551 of file ulxr_http_server.h.
hidden::StaticReceiver_t ulxr::make_receiver | ( | hidden::StaticReceiver_t | ptr | ) | [inline] |
Specialisation of template to achive uniform look in receiver creation.
ptr | pointer to receiver function |
Definition at line 366 of file ulxr_requester.h.
hidden::ReceiverWrapperBase* ulxr::make_receiver | ( | T & | w, | |
typename hidden::ReceiverWrapper< T >::PMF | pmf | |||
) | [inline] |
Creates a wrapper object to a method of a worker class.
w | reference to worker class | |
pmf | adress of member function in worker class |
Definition at line 345 of file ulxr_requester.h.
void ulxr::makeLower | ( | CppString & | str | ) |
Converts string into lowercase.
Since the C-library is used this is only valid for ascii characters
str | pointer to the string to convert |
Definition at line 977 of file ulxmlrpcpp.cpp.
References ulxr_tolower, and ULXR_UNICODE.
Referenced by ulxr::HttpProtocol::determineClosing(), ulxr::HttpProtocol::getHttpProperty(), ulxr::HttpProtocol::getUserPass(), ulxr::HttpServer::guessMimeType(), ulxr::HttpProtocol::hasClosingProperty(), ulxr::HttpProtocol::hasHttpProperty(), and ulxr::HttpProtocol::parseHeaderLine().
void ulxr::makeUpper | ( | CppString & | str | ) |
Converts string into uppercase.
Since the C-library is used this is only valid for ascii characters
str | pointer to the string to convert |
Definition at line 987 of file ulxmlrpcpp.cpp.
References ulxr_toupper, and ULXR_UNICODE.
Referenced by ulxr::HttpServer::addHttpHandler(), and ulxr::HttpServer::interpreteHttpHeader().
Array& ulxr::operator<< | ( | Array & | array, | |
const T & | t | |||
) |
Helper function template to "stream" an item into an array.
Definition at line 911 of file ulxr_value.h.
References ulxr::Array::addItem().
Struct & ulxr::operator<< | ( | Struct & | st, | |
const Struct::Member & | k | |||
) |
Definition at line 1600 of file ulxr_value.cpp.
References ulxr::Struct::addMember(), ulxr::Struct::Member::getName(), ulxr::Struct::Member::getValue(), ULXR_PCHAR, and ULXR_TRACE.
Struct::Member ulxr::operator<< | ( | const CppString & | str, | |
const Value & | t | |||
) |
static CppString ulxr::@59::padded | ( | unsigned | num | ) | [static] |
Definition at line 1226 of file ulxr_value.cpp.
References ulxr::HtmlFormHandler::makeNumber().
Referenced by ulxr::DateTime::setDateTime().
static int ulxr::password_cb | ( | char * | buf, | |
int | num, | |||
int | , | |||
void * | userdata | |||
) | [static] |
Definition at line 54 of file ulxr_ssl_connection.cpp.
References ulxr::SSLConnection::getPassword(), ULXR_PCHAR, and ULXR_TRACE.
Referenced by ulxr::SSLConnection::initializeCTX().
static void ulxr::resolveCharRef | ( | const CppString & | ins, | |
unsigned & | pos, | |||
CppString & | outs | |||
) | [static] |
Definition at line 502 of file ulxmlrpcpp.cpp.
References charRefDezCont(), charRefHexCont(), InvalidCharacterError, ULXR_CHAR, ulxr_i18n, ulxr_isdigit, ULXR_PCHAR, ulxr_toupper, ULXR_UNICODE, and unicodeToUtf8().
Referenced by xmlUnEscape().
CppString ulxr::stripWS | ( | const CppString & | s | ) |
Removes trailing and leading white space.
s | input string |
Definition at line 175 of file ulxmlrpcpp.cpp.
References ulxr_isspace.
Referenced by ulxr::Protocol::addAuthentication(), ulxr::HttpProtocol::addOneTimeHttpField(), ulxr::HttpProtocol::getUserPass(), ulxr::HttpServer::interpreteHttpHeader(), ulxr::HttpProtocol::parseHeaderLine(), ulxr::HttpProtocol::responseStatus(), ulxr::HttpProtocol::setCookie(), and ulxr::HttpProtocol::splitHeaderLine().
long int ulxr::wbXmlToInt | ( | std::string & | inp | ) |
Converts a wbxml multibyte sequence to an integer.
The start of an inline multibyte sequence is expected in the input. This sequence is transformed and removed from the input.
inp | reference to multibyte sequnce |
Definition at line 1033 of file ulxmlrpcpp.cpp.
References ApplicationError, ulxr_i18n, ULXR_PCHAR, and ulxr::WbXmlParser::wbxml_EXT_T_0.
CppString ulxr::wbXmlToString | ( | std::string & | inp | ) |
Converts a wbxml inline string sequence to a CppString.
The start of an inline string sequence is expected in the input. This sequence is transformed and removed from the input.
inp | reference to inline string |
Definition at line 1079 of file ulxmlrpcpp.cpp.
References ApplicationError, ulxr_i18n, ULXR_PCHAR, utf8ToUnicode(), and ulxr::WbXmlParser::wbxml_STR_I.
CppString ulxr::xmlEscape | ( | const CppString & | str, | |
bool | supp = false | |||
) |
Replaces dangerous sequences in xml strings.
Several characters have a special meaning in xml and must be converted to not disturb parsing.
str | the string to escape | |
supp | supress non-unicode characterss like #0 or 0x0c |
Definition at line 429 of file ulxmlrpcpp.cpp.
References ULXR_CHAR, and ULXR_PCHAR.
Referenced by ulxr::RpcString::getXml(), ulxr::HtmlFormHandler::makeText(), and ulxr::Log4JSender::send().
CppString ulxr::xmlUnEscape | ( | const CppString & | str | ) |
Re-converts strings after being parsed.
str | the string to escape |
Definition at line 574 of file ulxmlrpcpp.cpp.
References InvalidCharacterError, resolveCharRef(), STRNCMP, ULXR_CHAR, ulxr_i18n, and ULXR_PCHAR.
const int ulxr::ApplicationError = -32500 |
Definition at line 403 of file ulxmlrpcpp.h.
Referenced by ulxr::TcpIpConnection::accept(), ulxr::HttpServer::addHttpHandler(), ulxr::Dispatcher::addMethodDescriptor(), ulxr::HtmlFormHandler::addSubResource(), ulxr::HttpServer::checkValidPath(), decodeBase64(), decodeUtf8Group(), ulxr::Dispatcher::dispatchCall(), encodeBase64(), ulxr::HttpServer::executeHttpPOST(), ulxr::HtmlFormData::getElement(), ulxr::Struct::getMember(), ulxr::Dispatcher::getMethod(), ulxr::Double::getWbXml(), ulxr::Integer::getWbXml(), ulxr::Double::getXml(), ulxr::Integer::getXml(), ulxr::TcpIpConnection::open(), ulxr::Connection::read(), ulxr::HttpServer::runPicoHttpd(), ulxr::MultiThreadRpcServer::serverLoop(), ulxr::ValueParserWb::testEndElement(), ulxr::ValueParser::testEndElement(), ulxr::MethodResponseParserWb::testEndElement(), ulxr::MethodResponseParser::testEndElement(), ulxr::MethodCallParserWb::testEndElement(), ulxr::MethodCallParser::testEndElement(), unicodeToUtf8(), utf8ToAscii(), utf8ToUnicode(), wbXmlToInt(), wbXmlToString(), and ulxr::Connection::write().
int ulxr::b64_decodetable[256] [static] |
ulxr::Char ulxr::b64_encodetable[64] [static] |
Initial value:
{ 'A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W', 'X', 'Y', 'Z', 'a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm', 'n', 'o', 'p', 'q', 'r', 's', 't', 'u', 'v', 'w', 'x', 'y', 'z', '0', '1', '2', '3', '4', '5', '6', '7', '8', '9', '+', '/' }
Definition at line 189 of file ulxmlrpcpp.cpp.
Referenced by encodeBase64().
help to protect non-reentrant std::ctime()
Definition at line 1138 of file ulxmlrpcpp.cpp.
Referenced by ulxr::HttpProtocol::getDateStr().
help to protect non-reentrant std::ctime()
Definition at line 1138 of file ulxmlrpcpp.cpp.
Referenced by ulxr::HttpProtocol::getDateStr().
help to protect non-reentrant std::gethostbyaddr()
Definition at line 1141 of file ulxmlrpcpp.cpp.
Referenced by ulxr::TcpIpConnection::accept(), and ulxr::TcpIpConnection::open().
help to protect non-reentrant std::gethostbyaddr()
Definition at line 1141 of file ulxmlrpcpp.cpp.
Referenced by ulxr::TcpIpConnection::accept(), and ulxr::TcpIpConnection::open().
help to protect non-reentrant std::gethostbyname()
Definition at line 1140 of file ulxmlrpcpp.cpp.
Referenced by ulxr::TcpIpConnection::asciiToInAddr(), ulxr::TcpIpConnection::getHostAdress(), and ulxr::TcpIpConnection::init().
help to protect non-reentrant std::gethostbyname()
Definition at line 1140 of file ulxmlrpcpp.cpp.
Referenced by ulxr::TcpIpConnection::asciiToInAddr(), ulxr::TcpIpConnection::getHostAdress(), and ulxr::TcpIpConnection::init().
const int ulxr::InternalXmlRpcError = -32603 |
Definition at line 400 of file ulxmlrpcpp.h.
const int ulxr::InvalidCharacterError = -32702 |
Definition at line 394 of file ulxmlrpcpp.h.
Referenced by ulxr::ExpatWrapper::mapToFaultCode(), resolveCharRef(), and xmlUnEscape().
const int ulxr::InvalidMethodParameterError = -32602 |
std::auto_ptr<Log4JSender> ulxr::l4j [static] |
std::auto_ptr<TcpIpConnection> ulxr::l4jconn [static] |
help to protect non-reentrant std::localtime()
Definition at line 1139 of file ulxmlrpcpp.cpp.
Referenced by ulxr::DateTime::setDateTime().
help to protect non-reentrant std::localtime()
Definition at line 1139 of file ulxmlrpcpp.cpp.
Referenced by ulxr::DateTime::setDateTime().
const int ulxr::MethodNotFoundError = -32601 |
const int ulxr::NotConformingError = -32600 |
Definition at line 397 of file ulxmlrpcpp.h.
Referenced by ulxr::HttpProtocol::determineContentLength(), ulxr::HttpServer::executeHttpRPC(), ulxr::HttpServer::executeUnknownHttpMethod(), ulxr::HttpProtocol::getHttpProperty(), funtik::MultiProcessRpcServer::handleXmlRequest(), ulxr::Dispatcher::waitForCall(), ulxr::Requester::waitForResponse(), and ulxr::HttpProtocol::writeChunk().
const int ulxr::NotWellformedError = -32700 |
Definition at line 392 of file ulxmlrpcpp.h.
Referenced by ulxr::XmlParser::assertEndElement(), ulxr::ExpatWrapper::mapToFaultCode(), ulxr::WbXmlParser::parse(), ulxr::XmlParser::testEndElement(), ulxr::WbXmlParser::testEndElement(), ulxr::XmlParser::testStartElement(), and ulxr::WbXmlParser::testStartElement().
bool ulxr::pretty_xml = false [static] |
Definition at line 1196 of file ulxmlrpcpp.cpp.
Referenced by enableXmlPrettyPrint(), getXmlIndent(), and getXmlLinefeed().
help to protect non-reentrant std::rand()
Definition at line 1136 of file ulxmlrpcpp.cpp.
Referenced by getRand().
help to protect non-reentrant std::rand()
Definition at line 1136 of file ulxmlrpcpp.cpp.
Referenced by getRand().
const int ulxr::SystemError = -32400 |
Definition at line 404 of file ulxmlrpcpp.h.
Referenced by ulxr::TcpIpConnection::accept(), ulxr::SSLConnection::accept(), ulxr::TcpIpConnection::asciiToInAddr(), ulxr::HttpProtocol::connectionMachine(), convertEncoding(), ulxr::SSLConnection::createSSL(), ulxr::Dispatcher::dispatchCall(), ulxr::HttpServer::executeHttpDELETE(), ulxr::HttpServer::executeHttpGET(), ulxr::HttpServer::executeHttpPUT(), ulxr::HttpClient::fileGET(), ulxr::HttpClient::filePUT(), funtik::MultiProcessRpcServer::handleRequest(), ulxr::TcpIpConnection::init(), ulxr::Mutex::lock(), ulxr::SSLConnection::low_level_read(), ulxr::SSLConnection::low_level_write(), ulxr::Mutex::Mutex(), ulxr::TcpIpConnection::open(), ulxr::SSLConnection::open(), ulxr::FileProcessor::process(), ulxr::Connection::read(), ulxr::HttpServer::runPicoHttpd(), ulxr::MultiThreadRpcServer::serverLoop(), ulxr::TcpIpConnection::setProxy(), ulxr::Requester::startDispatch(), ulxr::TcpIpConnection::TcpIpConnection(), ulxr::Mutex::unlock(), funtik::MultiProcessRpcServer::waitConnection(), and ulxr::Connection::write().
const int ulxr::TransportError = -32300 |
Definition at line 405 of file ulxmlrpcpp.h.
Referenced by ulxr::HttpProtocol::awaitConnect(), ulxr::TcpIpConnection::ServerSocketData::close(), ulxr::Connection::close(), ulxr::HttpClient::doDELETE(), ulxr::HttpClient::fileGET(), ulxr::HttpClient::filePUT(), funtik::MultiProcessRpcServer::handleXmlRequest(), ulxr::HttpClient::msgGET(), ulxr::HttpClient::msgPOST(), ulxr::HttpClient::msgPUT(), ulxr::HttpServer::performHttpTransaction(), ulxr::Connection::read(), ulxr::HttpClient::receiveResponse(), ulxr::TcpIpConnection::shutdown(), ulxr::TcpIpConnection::ServerSocketData::shutdown(), ulxr::Dispatcher::waitForCall(), ulxr::Requester::waitForResponse(), and ulxr::Connection::write().
const int ulxr::UnsupportedEncodingError = -32701 |
Definition at line 393 of file ulxmlrpcpp.h.
Referenced by convertEncoding(), and ulxr::ExpatWrapper::mapToFaultCode().