The following patch is pretty major. It represents a
fairly significant re-working of the code to add SSL,
multithreading, and Linux RPM support. This is against
0.7.
The patch includes baseline support for TCP and SSL
over TCP connections, but it is now easy to extend the
system to work over other connection types (e.g.
unix-domain-sockets) and to stack interfaces together
(e.g. stacking SSL on top of unix-domain-sockets, for
instance).
The basic API remains the same, with "legacy" support
for the original methods (e.g.
XmlRpcServer::bindAndListen and
XmlRpcClient::XmlRpcClient). If you want to use the
new advanced interfaces, see ./test/HelloServerMt.cpp,
./test/HelloServerSsl.cpp, and ./test/HelloClientSsl.cpp.
The primary downside to these changes are that the
library now depends on -lssl and -lboost_thread-mt.
However, it would be quite trivial to seperate out the
ssl and mt sections into a new library (e.g.
-lXmlRpcSsl and -lXmlRpcMt) so that the baseline
library retains its stand-alone status. This was not a
requirement for our application, so I didnt bother.
Good Luck
-Greg