The Ulxmlrpcpp Handbook


Published: 2007-08-26


XML-RPC is an extensible mechanism allowing a computer to offer a limited set of services which can be accessed from anywhere in the net.

XML-RPC uses common and easy to learn internet standards like XML and HTTP.

ulxmlrpcpp is a library to perform such calls in an object oriented approach implemented in C++. It is intended to have simple interfaces and to be easy to learn. But it shall still be fully compliant to the standards and safe in it's use.

Table of Contents

1. How to use this library
1.1. Introduction
1.2. Basic Variable Types
1.3. Communicating via XML-RPC
1.3.1. The Server
1.3.2. The Client
1.3.3. Asynchronous Communication
1.4. Talking HTTP
1.4.1. The Server
1.4.2. The Client
1.4.3. Processing HTML Requests
1.4.4. HTTP Handlers
1.4.5. Cached Resources
1.4.6. Processing HTML Data
1.5. Securing Network Transmissions
1.6. Multi-Processing XML-RPC
1.6.1. The Multi-Threaded Server
1.6.2. The Multi-Processing Server
1.6.3. The Client
1.7. Multithreaded HTTP server
1.8. Behaviour of TCP/IP Connections
1.8.1. Disabling Buffer Mechanism
1.8.2. Shutting a Socket Down
1.8.3. Abort on Close
1.9. Secure Connections via SSL/TLS
1.10. Tracking Partners With Cookies
1.10.1. Cookies in Server Mode
1.10.2. Cookies in Client Mode
1.11. Connections Via a Proxy Server
1.11.1. Transparently Using a Proxy Server
1.11.2. A SSL Connection over a Proxy Server
1.12. Transfer Encoding via HTTP
1.12.1. Chunked Encoding
1.13. Using the XML Parser
1.14. Using the WAP Binary XML Parser
1.14.1. What is WAP Binary XML?
1.14.2. Creating a WAP Binary XML parser
1.15. Worth to Know About UNICODE
2. Automatically Create Server and Client Sources
2.1. Sources From your C++ Headers
2.1.1. Parsing The Header File
2.1.2. Generating The Files
2.2. Sources From Introspection
3. Frequently And Never Asked Questions
4. Credits and License
4.1. Related Links
4.2. Copyrights
1.1. Installation
1.1.1. How to obtain ulxmlrpcpp
1.1.2. Requirements
1.1.3. Compilation and installation
1.1.4. Creating and Installing an RPM
1.1.5. Installing on other systems