* Allow i8 and apache style 64bit integer support in XMLRPC. Use

"xmlrpc_dialect" command to change.


git-svn-id: svn://rakshasa.no/libtorrent/trunk/rtorrent@929 e378c898-3ddf-0310-93e7-cc216c733640
This commit is contained in:
rakshasa
2007-07-05 13:10:13 +00:00
parent a492cadf00
commit 0c3038783e
3 changed files with 120 additions and 35 deletions
+20
View File
@@ -243,6 +243,25 @@ apply_scgi(const std::string& arg, int type) {
control->scgi()->set_slot_process(rak::mem_fn(control->xmlrpc(), &rpc::XmlRpc::process));
}
void
apply_xmlrpc_dialect(const std::string& arg) {
if (control->xmlrpc() == NULL)
initialize_xmlrpc();
int value;
if (arg == "i8")
value = rpc::XmlRpc::dialect_i8;
else if (arg == "apache")
value = rpc::XmlRpc::dialect_apache;
else if (arg == "generic")
value = rpc::XmlRpc::dialect_generic;
else
value = -1;
control->xmlrpc()->set_dialect(value);
}
void
initialize_command_network() {
// core::DownloadList* downloadList = control->core()->download_list();
@@ -299,6 +318,7 @@ initialize_command_network() {
ADD_COMMAND_STRING_UN("scgi_port", rak::bind2nd(std::ptr_fun(&apply_scgi), 1));
ADD_COMMAND_STRING_UN("scgi_local", rak::bind2nd(std::ptr_fun(&apply_scgi), 2));
ADD_VARIABLE_BOOL("scgi_dont_route", false);
ADD_COMMAND_STRING_UN("xmlrpc_dialect", std::ptr_fun(&apply_xmlrpc_dialect));
ADD_COMMAND_VALUE_TRI("hash_read_ahead", std::ptr_fun(&apply_hash_read_ahead), rak::ptr_fun(torrent::hash_read_ahead));
ADD_COMMAND_VALUE_TRI("hash_interval", std::ptr_fun(&apply_hash_interval), rak::ptr_fun(torrent::hash_interval));