From d9f6f5aef42ff154f95dd65e3a35cd55453b2f3a Mon Sep 17 00:00:00 2001 From: rakshasa Date: Fri, 18 Apr 2014 22:16:24 +0900 Subject: [PATCH 01/12] Cleaned up CurlStack. --- src/core/curl_stack.cc | 53 +++++++++++++++++++++++++++++++----------- src/core/curl_stack.h | 2 ++ 2 files changed, 42 insertions(+), 13 deletions(-) diff --git a/src/core/curl_stack.cc b/src/core/curl_stack.cc index f0e6e8ec..a5e0e499 100644 --- a/src/core/curl_stack.cc +++ b/src/core/curl_stack.cc @@ -86,34 +86,44 @@ CurlStack::new_socket(int fd) { void CurlStack::receive_action(CurlSocket* socket, int events) { + if (this <= (CurlStack*)0x100) + throw torrent::internal_error("CurlStack::receive_action(...) called with shit == NULL"); + + if (this >= (CurlStack*)0x00007fff00000000) + throw torrent::internal_error("CurlStack::receive_action(...) called with this == 0x00007fff00000002"); + + if (socket != NULL && socket <= (CurlSocket*)0x100) + throw torrent::internal_error("CurlStack::receive_action(...) called with socket == NULL"); + + if (socket >= (CurlSocket*)0x00007fff00000000) + throw torrent::internal_error("CurlStack::receive_action(...) called with socket == 0x00007fff00000002"); + CURLMcode code; do { int count; #if (LIBCURL_VERSION_NUM >= 0x071003) - code = curl_multi_socket_action((CURLM*)m_handle, socket != NULL ? socket->file_descriptor() : CURL_SOCKET_TIMEOUT, events, &count); + code = curl_multi_socket_action((CURLM*)m_handle, + socket != NULL ? socket->file_descriptor() : CURL_SOCKET_TIMEOUT, + events, + &count); #else - code = curl_multi_socket((CURLM*)m_handle, socket != NULL ? socket->file_descriptor() : CURL_SOCKET_TIMEOUT, &count); + code = curl_multi_socket((CURLM*)m_handle, + socket != NULL ? socket->file_descriptor() : CURL_SOCKET_TIMEOUT, + &count); #endif if (code > 0) throw torrent::internal_error("Error calling curl_multi_socket_action."); - // Socket might be removed when cleaning handles below, future calls should not use it. + // Socket might be removed when cleaning handles below, future + // calls should not use it. socket = NULL; events = 0; if ((unsigned int)count != size()) { - // Done with some handles. - int t; - CURLMsg* msg; - - while ((msg = curl_multi_info_read((CURLM*)m_handle, &t)) != NULL) { - if (msg->msg != CURLMSG_DONE) - throw torrent::internal_error("CurlStack::receive_action() msg->msg != CURLMSG_DONE."); - - transfer_done(msg->easy_handle, msg->data.result == CURLE_OK ? NULL : curl_easy_strerror(msg->data.result)); - } + while (process_done_handle()) + ; // Do nothing. if (empty()) priority_queue_erase(&taskScheduler, &m_taskTimeout); @@ -122,6 +132,23 @@ CurlStack::receive_action(CurlSocket* socket, int events) { } while (code == CURLM_CALL_MULTI_PERFORM); } +bool +CurlStack::process_done_handle() { + int remaining_msgs = 0; + CURLMsg* msg = curl_multi_info_read((CURLM*)m_handle, &remaining_msgs); + + if (msg == NULL) + return false; + + if (msg->msg != CURLMSG_DONE) + throw torrent::internal_error("CurlStack::receive_action() msg->msg != CURLMSG_DONE."); + + transfer_done(msg->easy_handle, + msg->data.result == CURLE_OK ? NULL : curl_easy_strerror(msg->data.result)); + + return remaining_msgs != 0; +} + void CurlStack::transfer_done(void* handle, const char* msg) { iterator itr = std::find_if(begin(), end(), rak::equal(handle, std::mem_fun(&CurlGet::handle))); diff --git a/src/core/curl_stack.h b/src/core/curl_stack.h index d17f825c..3b8b341b 100644 --- a/src/core/curl_stack.h +++ b/src/core/curl_stack.h @@ -125,6 +125,8 @@ class CurlStack : std::deque { void receive_timeout(); + bool process_done_handle(); + void* m_handle; unsigned int m_active; From 82a68420f4d90098e00cc92f082f10a8079e9800 Mon Sep 17 00:00:00 2001 From: rakshasa Date: Fri, 18 Apr 2014 22:27:13 +0900 Subject: [PATCH 02/12] Fixed non-POSIX conformant included headers. --- src/display/canvas.cc | 2 +- src/input/path_input.cc | 13 ++----------- src/signal_handler.h | 2 +- src/utils/directory.cc | 6 ++---- 4 files changed, 6 insertions(+), 17 deletions(-) diff --git a/src/display/canvas.cc b/src/display/canvas.cc index 4394b894..31db4ad4 100644 --- a/src/display/canvas.cc +++ b/src/display/canvas.cc @@ -38,7 +38,7 @@ #include #include -#include +#include #include #include "canvas.h" diff --git a/src/input/path_input.cc b/src/input/path_input.cc index 461d850f..fa8afdaa 100644 --- a/src/input/path_input.cc +++ b/src/input/path_input.cc @@ -41,16 +41,11 @@ #include #include +#include +#include #include #include -#ifdef __sun__ - #include - #include -#else - #include -#endif - #include "path_input.h" namespace input { @@ -80,11 +75,7 @@ PathInput::pressed(int key) { struct _transform_filename { void operator () (utils::directory_entry& entry) { -#ifdef __sun__ - if (entry.d_type & S_IFDIR) -#else if (entry.d_type == DT_DIR) -#endif entry.d_name += '/'; } }; diff --git a/src/signal_handler.h b/src/signal_handler.h index a6aba468..f34c2810 100644 --- a/src/signal_handler.h +++ b/src/signal_handler.h @@ -37,7 +37,7 @@ #ifndef RTORRENT_SIGNAL_HANDLER_H #define RTORRENT_SIGNAL_HANDLER_H -#include +#include #include class SignalHandler { diff --git a/src/utils/directory.cc b/src/utils/directory.cc index f72d0f28..f934aeb8 100644 --- a/src/utils/directory.cc +++ b/src/utils/directory.cc @@ -38,14 +38,12 @@ #include #include + #include +#include #include #include -#ifdef __sun__ -#include -#endif - #include "directory.h" namespace utils { From ce125b1c54f31117f64a189851538920caaf16fe Mon Sep 17 00:00:00 2001 From: rakshasa Date: Mon, 21 Apr 2014 22:33:47 +0900 Subject: [PATCH 03/12] Updated instrumentation plot. --- doc/plot/instrumentation_transfers.sh | 49 ++++++++++++++------------- 1 file changed, 25 insertions(+), 24 deletions(-) diff --git a/doc/plot/instrumentation_transfers.sh b/doc/plot/instrumentation_transfers.sh index dde74876..297d8b90 100755 --- a/doc/plot/instrumentation_transfers.sh +++ b/doc/plot/instrumentation_transfers.sh @@ -9,40 +9,41 @@ set y2tics set autoscale xfix set key autotitle columnhead -set datafile missing '0' +# set datafile missing '0' set format y "%.0f" set format y2 "%.0f" +set yrange [0:] set y2range [0:] set output "output_$1_transfer_requests.png" plot \ - "instrumentation_transfers.log.$1" using 1:2 title 'delegated' smooth sbezier with lines lw 4 axis x1y1,\ - "instrumentation_transfers.log.$1" using 1:3 title 'downloading' smooth sbezier with lines lw 4 axis x1y1,\ - "instrumentation_transfers.log.$1" using 1:4 title 'finished' smooth sbezier with lines lw 4 axis x1y1,\ - "instrumentation_transfers.log.$1" using 1:5 title 'skipped' smooth sbezier with lines lw 2 axis x1y2,\ - "instrumentation_transfers.log.$1" using 1:6 title 'unknown' smooth sbezier with lines lw 2 axis x1y2,\ - "instrumentation_transfers.log.$1" using 1:7 title 'unordered' smooth sbezier with lines lw 2 axis x1y2,\ - "instrumentation_transfers.log.$1" using 1:19 title 'unaccounted' smooth sbezier with lines lw 2 axis x1y2 + "instrumentation_transfers.log.$1" using 1:2 title 'delegated' with lines lw 4 axis x1y1,\ + "instrumentation_transfers.log.$1" using 1:3 title 'downloading' with lines lw 4 axis x1y1,\ + "instrumentation_transfers.log.$1" using 1:4 title 'finished' with lines lw 4 axis x1y1,\ + "instrumentation_transfers.log.$1" using 1:5 title 'skipped' with lines lw 2 axis x1y2,\ + "instrumentation_transfers.log.$1" using 1:6 title 'unknown' with lines lw 2 axis x1y2,\ + "instrumentation_transfers.log.$1" using 1:7 title 'unordered' with lines lw 2 axis x1y2,\ + "instrumentation_transfers.log.$1" using 1:19 title 'unaccounted' with lines lw 2 axis x1y2 set output "output_$1_transfer_queues.png" plot \ - "instrumentation_transfers.log.$1" using 1:8 title 'queue added' smooth sbezier with lines lw 2 axis x1y1,\ - "instrumentation_transfers.log.$1" using 1:9 title 'queue moved' smooth sbezier with lines lw 2 axis x1y1,\ - "instrumentation_transfers.log.$1" using 1:10 title 'queue removed' smooth sbezier with lines lw 2 axis x1y1,\ - "instrumentation_transfers.log.$1" using 1:11 title 'queue total' smooth sbezier with lines lw 4 axis x1y2,\ - "instrumentation_transfers.log.$1" using 1:12 title 'unordered added' smooth sbezier with lines lw 2 axis x1y1,\ - "instrumentation_transfers.log.$1" using 1:13 title 'unordered moved' smooth sbezier with lines lw 2 axis x1y1,\ - "instrumentation_transfers.log.$1" using 1:14 title 'unordered removed' smooth sbezier with lines lw 2 axis x1y1,\ - "instrumentation_transfers.log.$1" using 1:15 title 'unordered total' smooth sbezier with lines lw 4 axis x1y2,\ - "instrumentation_transfers.log.$1" using 1:16 title 'stalled added' smooth sbezier with lines lw 2 axis x1y1,\ - "instrumentation_transfers.log.$1" using 1:17 title 'stalled moved' smooth sbezier with lines lw 2 axis x1y1,\ - "instrumentation_transfers.log.$1" using 1:18 title 'stalled removed' smooth sbezier with lines lw 2 axis x1y1,\ - "instrumentation_transfers.log.$1" using 1:19 title 'stalled total' smooth sbezier with lines lw 4 axis x1y2,\ - "instrumentation_transfers.log.$1" using 1:20 title 'choked added' smooth sbezier with lines lw 2 axis x1y1,\ - "instrumentation_transfers.log.$1" using 1:21 title 'choked moved' smooth sbezier with lines lw 2 axis x1y1,\ - "instrumentation_transfers.log.$1" using 1:22 title 'choked removed' smooth sbezier with lines lw 2 axis x1y1,\ - "instrumentation_transfers.log.$1" using 1:23 title 'choked total' smooth sbezier with lines lw 4 axis x1y2 + "instrumentation_transfers.log.$1" using 1:8 title 'queue added' with lines lw 2 axis x1y1,\ + "instrumentation_transfers.log.$1" using 1:9 title 'queue moved' with lines lw 2 axis x1y1,\ + "instrumentation_transfers.log.$1" using 1:10 title 'queue removed' with lines lw 2 axis x1y1,\ + "instrumentation_transfers.log.$1" using 1:11 title 'queue total' with lines lw 4 axis x1y2,\ + "instrumentation_transfers.log.$1" using 1:12 title 'unordered added' with lines lw 2 axis x1y1,\ + "instrumentation_transfers.log.$1" using 1:13 title 'unordered moved' with lines lw 2 axis x1y1,\ + "instrumentation_transfers.log.$1" using 1:14 title 'unordered removed' with lines lw 2 axis x1y1,\ + "instrumentation_transfers.log.$1" using 1:15 title 'unordered total' with lines lw 4 axis x1y2,\ + "instrumentation_transfers.log.$1" using 1:16 title 'stalled added' with lines lw 2 axis x1y1,\ + "instrumentation_transfers.log.$1" using 1:17 title 'stalled moved' with lines lw 2 axis x1y1,\ + "instrumentation_transfers.log.$1" using 1:18 title 'stalled removed' with lines lw 2 axis x1y1,\ + "instrumentation_transfers.log.$1" using 1:19 title 'stalled total' with lines lw 4 axis x1y2,\ + "instrumentation_transfers.log.$1" using 1:20 title 'choked added' with lines lw 2 axis x1y1,\ + "instrumentation_transfers.log.$1" using 1:21 title 'choked moved' with lines lw 2 axis x1y1,\ + "instrumentation_transfers.log.$1" using 1:22 title 'choked removed' with lines lw 2 axis x1y1,\ + "instrumentation_transfers.log.$1" using 1:23 title 'choked total' with lines lw 4 axis x1y2 EOF From 9548e089352ac3343340a7ed895a1efe385723b6 Mon Sep 17 00:00:00 2001 From: rakshasa Date: Fri, 25 Apr 2014 17:24:42 +0900 Subject: [PATCH 04/12] Removed debugging exceptions. --- src/core/curl_stack.cc | 12 ------------ 1 file changed, 12 deletions(-) diff --git a/src/core/curl_stack.cc b/src/core/curl_stack.cc index a5e0e499..5c52dbc9 100644 --- a/src/core/curl_stack.cc +++ b/src/core/curl_stack.cc @@ -86,18 +86,6 @@ CurlStack::new_socket(int fd) { void CurlStack::receive_action(CurlSocket* socket, int events) { - if (this <= (CurlStack*)0x100) - throw torrent::internal_error("CurlStack::receive_action(...) called with shit == NULL"); - - if (this >= (CurlStack*)0x00007fff00000000) - throw torrent::internal_error("CurlStack::receive_action(...) called with this == 0x00007fff00000002"); - - if (socket != NULL && socket <= (CurlSocket*)0x100) - throw torrent::internal_error("CurlStack::receive_action(...) called with socket == NULL"); - - if (socket >= (CurlSocket*)0x00007fff00000000) - throw torrent::internal_error("CurlStack::receive_action(...) called with socket == 0x00007fff00000002"); - CURLMcode code; do { From d396c8e058d7665f7bcf85fc79f44030e5269480 Mon Sep 17 00:00:00 2001 From: rakshasa Date: Fri, 25 Apr 2014 19:55:47 +0900 Subject: [PATCH 05/12] Changed rpc log types. --- src/command_network.cc | 8 +++++--- src/rpc/scgi_task.cc | 4 ++-- 2 files changed, 7 insertions(+), 5 deletions(-) diff --git a/src/command_network.cc b/src/command_network.cc index e6cfd081..c445c38c 100644 --- a/src/command_network.cc +++ b/src/command_network.cc @@ -140,7 +140,7 @@ initialize_xmlrpc() { rpc::xmlrpc.insert_command(itr->first, itr->second.m_parm, itr->second.m_doc); } - lt_log_print(torrent::LOG_RPC_INFO, "XMLRPC initialized with %u functions.", count); + lt_log_print(torrent::LOG_RPC_EVENTS, "XMLRPC initialized with %u functions.", count); } torrent::Object @@ -169,7 +169,8 @@ apply_scgi(const std::string& arg, int type) { sa.sa_inet()->clear(); saPtr = &sa; - lt_log_print(torrent::LOG_RPC_WARN, "The SCGI socket has not been bound to any address and likely poses a security risk."); + lt_log_print(torrent::LOG_RPC_EVENTS, + "The SCGI socket has not been bound to any address and likely poses a security risk."); } else if (std::sscanf(arg.c_str(), "%1023[^:]:%i%c", address, &port, &dummy) == 2) { if ((err = rak::address_info::get_address_info(address, PF_INET, SOCK_STREAM, &ai)) != 0) @@ -177,7 +178,8 @@ apply_scgi(const std::string& arg, int type) { saPtr = ai->address(); - lt_log_print(torrent::LOG_RPC_WARN, "The SCGI socket is bound to a specific network device yet may still pose a security risk, consider using 'scgi_local'."); + lt_log_print(torrent::LOG_RPC_EVENTS, + "The SCGI socket is bound to a specific network device yet may still pose a security risk, consider using 'scgi_local'."); } else { throw torrent::input_error("Could not parse address."); diff --git a/src/rpc/scgi_task.cc b/src/rpc/scgi_task.cc index 16a7bb5b..9f2e3290 100644 --- a/src/rpc/scgi_task.cc +++ b/src/rpc/scgi_task.cc @@ -185,7 +185,7 @@ SCgiTask::event_read() { result = write(m_parent->log_fd(), "\n---\n", sizeof("\n---\n")); } - lt_log_print_dump(torrent::LOG_RPC_DEBUG, m_body, m_bufferSize - std::distance(m_buffer, m_body), "scgi", "RPC read.", 0); + lt_log_print_dump(torrent::LOG_RPC_DUMP, m_body, m_bufferSize - std::distance(m_buffer, m_body), "scgi", "RPC read.", 0); // Close if the call failed, else stay open to write back data. if (!m_parent->receive_call(this, m_body, m_bufferSize - std::distance(m_buffer, m_body))) @@ -246,7 +246,7 @@ SCgiTask::receive_write(const char* buffer, uint32_t length) { result = write(m_parent->log_fd(), "\n---\n", sizeof("\n---\n")); } - lt_log_print_dump(torrent::LOG_RPC_DEBUG, m_buffer, m_bufferSize, "scgi", "RPC write.", 0); + lt_log_print_dump(torrent::LOG_RPC_DUMP, m_buffer, m_bufferSize, "scgi", "RPC write.", 0); event_write(); return true; From 6a3234eaa79f15857260df31f98711ef24266191 Mon Sep 17 00:00:00 2001 From: rakshasa Date: Fri, 9 May 2014 17:54:04 +0900 Subject: [PATCH 06/12] Bumped to 0.9.4. --- configure.ac | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/configure.ac b/configure.ac index 1f6f14d6..430c15dd 100644 --- a/configure.ac +++ b/configure.ac @@ -1,4 +1,4 @@ -AC_INIT(rtorrent, 0.9.3, sundell.software@gmail.com) +AC_INIT(rtorrent, 0.9.4, sundell.software@gmail.com) AC_DEFINE(API_VERSION, 8, api version) @@ -45,7 +45,7 @@ PKG_CHECK_MODULES([libcurl], libcurl >= 7.15.4, CXXFLAGS="$CXXFLAGS $libcurl_CFLAGS"; LIBS="$LIBS $libcurl_LIBS") -PKG_CHECK_MODULES([libtorrent], libtorrent >= 0.13.3, +PKG_CHECK_MODULES([libtorrent], libtorrent >= 0.13.4, CXXFLAGS="$CXXFLAGS $libtorrent_CFLAGS"; LIBS="$LIBS $libtorrent_LIBS") From e42ec54920bf27b0f0ec3fcd02e79f34ac8fcbb0 Mon Sep 17 00:00:00 2001 From: rakshasa Date: Fri, 9 May 2014 18:05:30 +0900 Subject: [PATCH 07/12] Bumped scgi listen queue to 100. --- src/rpc/scgi.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/rpc/scgi.h b/src/rpc/scgi.h index ac6e0c4c..4b1a0e44 100644 --- a/src/rpc/scgi.h +++ b/src/rpc/scgi.h @@ -53,7 +53,7 @@ class lt_cacheline_aligned SCgi : public torrent::Event { public: typedef rak::function2 slot_write; - static const int max_tasks = 30; + static const int max_tasks = 100; // Global lock: SCgi() : m_logFd(-1) {} From 8e69930cc4cf98f74a63f08e2f9e054756ddd032 Mon Sep 17 00:00:00 2001 From: rakshasa Date: Thu, 15 May 2014 23:42:36 +0900 Subject: [PATCH 08/12] Changed thread name to included 'rtorrent'. --- src/thread_worker.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/thread_worker.h b/src/thread_worker.h index 088058bb..49414b89 100644 --- a/src/thread_worker.h +++ b/src/thread_worker.h @@ -53,7 +53,7 @@ public: ThreadWorker(); ~ThreadWorker(); - const char* name() const { return "worker_rtorrent"; } + const char* name() const { return "rtorrent scgi"; } virtual void init_thread(); From e4e73aeee9e584c959bea5680bc5830275a0b18b Mon Sep 17 00:00:00 2001 From: rakshasa Date: Fri, 16 May 2014 01:14:47 +0900 Subject: [PATCH 09/12] Set deprecated commands to be off by default. If needed use the '-D' option, however note that they will be removed permanently in the future. --- src/command_dynamic.cc | 2 +- src/main.cc | 26 ++++++++++++++------------ 2 files changed, 15 insertions(+), 13 deletions(-) diff --git a/src/command_dynamic.cc b/src/command_dynamic.cc index 7ec16fb4..6c600d09 100644 --- a/src/command_dynamic.cc +++ b/src/command_dynamic.cc @@ -438,7 +438,7 @@ cmd_catch(rpc::target_type target, const torrent::Object& args) { void initialize_command_dynamic() { - CMD2_VAR_BOOL ("method.use_deprecated", true); + CMD2_VAR_BOOL ("method.use_deprecated", false); CMD2_VAR_VALUE ("method.use_intermediate", 1); CMD2_ANY_LIST ("method.insert", tr1::bind(&system_method_insert, tr1::placeholders::_2)); diff --git a/src/main.cc b/src/main.cc index 5e826bb1..fa5a5bff 100644 --- a/src/main.cc +++ b/src/main.cc @@ -230,7 +230,7 @@ main(int argc, char** argv) { initialize_commands(); if (OptionParser::has_flag('D', argc, argv)) { - rpc::call_command_set_value("method.use_deprecated.set", false); + rpc::call_command_set_value("method.use_deprecated.set", true); lt_log_print(torrent::LOG_WARN, "Disabled deprecated commands."); } @@ -397,8 +397,20 @@ main(int argc, char** argv) { CMD2_REDIRECT_GENERIC("directory", "directory.default.set"); CMD2_REDIRECT_GENERIC("session", "session.path.set"); + CMD2_REDIRECT ("check_hash", "pieces.hash.on_completion.set"); + CMD2_REDIRECT ("key_layout", "keys.layout.set"); + CMD2_REDIRECT_GENERIC("to_gm_time", "convert.gm_time"); + CMD2_REDIRECT_GENERIC("to_gm_date", "convert.gm_date"); + CMD2_REDIRECT_GENERIC("to_time", "convert.time"); + CMD2_REDIRECT_GENERIC("to_date", "convert.date"); + CMD2_REDIRECT_GENERIC("to_elapsed_time", "convert.elapsed_time"); + CMD2_REDIRECT_GENERIC("to_kb", "convert.kb"); + CMD2_REDIRECT_GENERIC("to_mb", "convert.mb"); + CMD2_REDIRECT_GENERIC("to_xb", "convert.xb"); + CMD2_REDIRECT_GENERIC("to_throttle", "convert.throttle"); + // Deprecated commands. Don't use these anymore. if (rpc::call_command_value("method.use_intermediate") == 1) { @@ -634,7 +646,6 @@ main(int argc, char** argv) { CMD2_REDIRECT ("get_session_on_completion", "session.on_completion"); CMD2_REDIRECT_GENERIC("set_session_on_completion", "session.on_completion.set"); - CMD2_REDIRECT ("check_hash", "pieces.hash.on_completion.set"); CMD2_REDIRECT ("get_check_hash", "pieces.hash.on_completion"); CMD2_REDIRECT_GENERIC("set_check_hash", "pieces.hash.on_completion.set"); @@ -809,16 +820,6 @@ main(int argc, char** argv) { // Rename these to avoid conflicts with old style. CMD2_REDIRECT_GENERIC("d.multicall", "d.multicall2"); - CMD2_REDIRECT_GENERIC("to_gm_time", "convert.gm_time"); - CMD2_REDIRECT_GENERIC("to_gm_date", "convert.gm_date"); - CMD2_REDIRECT_GENERIC("to_time", "convert.time"); - CMD2_REDIRECT_GENERIC("to_date", "convert.date"); - CMD2_REDIRECT_GENERIC("to_elapsed_time", "convert.elapsed_time"); - CMD2_REDIRECT_GENERIC("to_kb", "convert.kb"); - CMD2_REDIRECT_GENERIC("to_mb", "convert.mb"); - CMD2_REDIRECT_GENERIC("to_xb", "convert.xb"); - CMD2_REDIRECT_GENERIC("to_throttle", "convert.throttle"); - CMD2_REDIRECT_GENERIC("execute_throw", "execute.throw"); CMD2_REDIRECT_GENERIC("execute_nothrow", "execute.nothrow"); CMD2_REDIRECT_GENERIC("execute_raw", "execute.raw"); @@ -1002,6 +1003,7 @@ print_help() { std::cout << "order. Use the up/down/left/right arrow keys to move between screens." << std::endl; std::cout << std::endl; std::cout << "Usage: rtorrent [OPTIONS]... [FILE]... [URL]..." << std::endl; + std::cout << " -D Enable deprecated commands" << std::endl; std::cout << " -h Display this very helpful text" << std::endl; std::cout << " -n Don't try to load ~/.rtorrent.rc on startup" << std::endl; std::cout << " -b Bind the listening socket to this IP" << std::endl; From 5acfd592f08375cfde68421fd5ed5fe61e6cb203 Mon Sep 17 00:00:00 2001 From: rakshasa Date: Tue, 20 May 2014 17:55:12 +0900 Subject: [PATCH 10/12] Added sed script for converting gui's to the new 0.9 commands. --- doc/scripts/update_commands_0.9.sed | 576 ++++++++++++++++++++++++++++ 1 file changed, 576 insertions(+) create mode 100644 doc/scripts/update_commands_0.9.sed diff --git a/doc/scripts/update_commands_0.9.sed b/doc/scripts/update_commands_0.9.sed new file mode 100644 index 00000000..15bc49b4 --- /dev/null +++ b/doc/scripts/update_commands_0.9.sed @@ -0,0 +1,576 @@ +s/'d\.multicall'/'d\.multicall2'/g +s/'d\.get_hash'/'d\.hash'/g +s/'d\.get_local_id'/'d\.local_id'/g +s/'d\.get_local_id_html'/'d\.local_id_html'/g +s/'d\.get_bitfield'/'d\.bitfield'/g +s/'d\.get_base_path'/'d\.base_path'/g +s/'d\.get_base_filename'/'d\.base_filename'/g +s/'d\.get_name'/'d\.name'/g +s/'d\.get_creation_date'/'d\.creation_date'/g +s/'d\.get_peer_exchange'/'d\.peer_exchange'/g +s/'d\.get_up_rate'/'d\.up\.rate'/g +s/'d\.get_up_total'/'d\.up\.total'/g +s/'d\.get_down_rate'/'d\.down\.rate'/g +s/'d\.get_down_total'/'d\.down\.total'/g +s/'d\.get_skip_rate'/'d\.skip\.rate'/g +s/'d\.get_skip_total'/'d\.skip\.total'/g +s/'d\.get_bytes_done'/'d\.bytes_done'/g +s/'d\.get_chunk_size'/'d\.chunk_size'/g +s/'d\.get_chunks_hashed'/'d\.chunks_hashed'/g +s/'d\.get_complete'/'d\.complete'/g +s/'d\.get_completed_bytes'/'d\.completed_bytes'/g +s/'d\.get_completed_chunks'/'d\.completed_chunks'/g +s/'d\.get_connection_current'/'d\.connection_current'/g +s/'d\.get_connection_leech'/'d\.connection_leech'/g +s/'d\.get_connection_seed'/'d\.connection_seed'/g +s/'d\.get_custom'/'d\.custom'/g +s/'d\.get_custom1'/'d\.custom1'/g +s/'d\.get_custom2'/'d\.custom2'/g +s/'d\.get_custom3'/'d\.custom3'/g +s/'d\.get_custom4'/'d\.custom4'/g +s/'d\.get_custom5'/'d\.custom5'/g +s/'d\.get_custom_throw'/'d\.custom_throw'/g +s/'d\.get_directory'/'d\.directory'/g +s/'d\.get_directory_base'/'d\.directory_base'/g +s/'d\.get_free_diskspace'/'d\.free_diskspace'/g +s/'d\.get_hashing'/'d\.hashing'/g +s/'d\.get_hashing_failed'/'d\.hashing_failed'/g +s/'d\.get_ignore_commands'/'d\.ignore_commands'/g +s/'d\.get_left_bytes'/'d\.left_bytes'/g +s/'d\.get_loaded_file'/'d\.loaded_file'/g +s/'d\.get_max_file_size'/'d\.max_file_size'/g +s/'d\.get_max_size_pex'/'d\.max_size_pex'/g +s/'d\.get_message'/'d\.message'/g +s/'d\.get_mode'/'d\.mode'/g +s/'d\.get_peers_accounted'/'d\.peers_accounted'/g +s/'d\.get_peers_complete'/'d\.peers_complete'/g +s/'d\.get_peers_connected'/'d\.peers_connected'/g +s/'d\.get_peers_max'/'d\.peers_max'/g +s/'d\.get_peers_min'/'d\.peers_min'/g +s/'d\.get_peers_not_connected'/'d\.peers_not_connected'/g +s/'d\.get_priority'/'d\.priority'/g +s/'d\.get_priority_str'/'d\.priority_str'/g +s/'d\.get_ratio'/'d\.ratio'/g +s/'d\.get_size_bytes'/'d\.size_bytes'/g +s/'d\.get_size_chunks'/'d\.size_chunks'/g +s/'d\.get_size_files'/'d\.size_files'/g +s/'d\.get_size_pex'/'d\.size_pex'/g +s/'d\.get_state'/'d\.state'/g +s/'d\.get_state_changed'/'d\.state_changed'/g +s/'d\.get_state_counter'/'d\.state_counter'/g +s/'d\.get_throttle_name'/'d\.throttle_name'/g +s/'d\.get_tied_to_file'/'d\.tied_to_file'/g +s/'d\.get_tracker_focus'/'d\.tracker_focus'/g +s/'d\.get_tracker_numwant'/'d\.tracker_numwant'/g +s/'d\.get_tracker_size'/'d\.tracker_size'/g +s/'d\.get_uploads_max'/'d\.uploads_max'/g +s/'d\.set_connection_current'/'d\.connection_current\.set'/g +s/'d\.set_custom'/'d\.custom\.set'/g +s/'d\.set_custom1'/'d\.custom1\.set'/g +s/'d\.set_custom2'/'d\.custom2\.set'/g +s/'d\.set_custom3'/'d\.custom3\.set'/g +s/'d\.set_custom4'/'d\.custom4\.set'/g +s/'d\.set_custom5'/'d\.custom5\.set'/g +s/'d\.set_directory'/'d\.directory\.set'/g +s/'d\.set_directory_base'/'d\.directory_base\.set'/g +s/'d\.set_hashing_failed'/'d\.hashing_failed\.set'/g +s/'d\.set_ignore_commands'/'d\.ignore_commands\.set'/g +s/'d\.set_max_file_size'/'d\.max_file_size\.set'/g +s/'d\.set_message'/'d\.message\.set'/g +s/'d\.set_peers_max'/'d\.peers_max\.set'/g +s/'d\.set_peers_min'/'d\.peers_min\.set'/g +s/'d\.set_priority'/'d\.priority\.set'/g +s/'d\.set_throttle_name'/'d\.throttle_name\.set'/g +s/'d\.set_tied_to_file'/'d\.tied_to_file\.set'/g +s/'d\.set_tracker_numwant'/'d\.tracker_numwant\.set'/g +s/'d\.set_uploads_max'/'d\.uploads_max\.set'/g +s/'create_link'/'d\.create_link'/g +s/'delete_link'/'d\.delete_link'/g +s/'delete_tied'/'d\.delete_tied'/g +s/'t\.get_group'/'t\.group'/g +s/'t\.get_id'/'t\.id'/g +s/'t\.get_min_interval'/'t\.min_interval'/g +s/'t\.get_normal_interval'/'t\.normal_interval'/g +s/'t\.get_scrape_complete'/'t\.scrape_complete'/g +s/'t\.get_scrape_downloaded'/'t\.scrape_downloaded'/g +s/'t\.get_scrape_incomplete'/'t\.scrape_incomplete'/g +s/'t\.get_scrape_time_last'/'t\.scrape_time_last'/g +s/'t\.get_type'/'t\.type'/g +s/'t\.get_url'/'t\.url'/g +s/'t\.set_enabled'/'t\.is_enabled\.set'/g +s/'f\.get_completed_chunks'/'f\.completed_chunks'/g +s/'f\.get_frozen_path'/'f\.frozen_path'/g +s/'f\.get_last_touched'/'f\.last_touched'/g +s/'f\.get_match_depth_next'/'f\.match_depth_next'/g +s/'f\.get_match_depth_prev'/'f\.match_depth_prev'/g +s/'f\.get_offset'/'f\.offset'/g +s/'f\.get_path'/'f\.path'/g +s/'f\.get_path_components'/'f\.path_components'/g +s/'f\.get_path_depth'/'f\.path_depth'/g +s/'f\.get_priority'/'f\.priority'/g +s/'f\.get_range_first'/'f\.range_first'/g +s/'f\.get_range_second'/'f\.range_second'/g +s/'f\.get_size_bytes'/'f\.size_bytes'/g +s/'f\.get_size_chunks'/'f\.size_chunks'/g +s/'f\.set_priority'/'f\.priority\.set'/g +s/'fi\.get_filename_last'/'fi\.filename_last'/g +s/'p\.get_address'/'p\.address'/g +s/'p\.get_client_version'/'p\.client_version'/g +s/'p\.get_completed_percent'/'p\.completed_percent'/g +s/'p\.get_down_rate'/'p\.down_rate'/g +s/'p\.get_down_total'/'p\.down_total'/g +s/'p\.get_id'/'p\.id'/g +s/'p\.get_id_html'/'p\.id_html'/g +s/'p\.get_options_str'/'p\.options_str'/g +s/'p\.get_peer_rate'/'p\.peer_rate'/g +s/'p\.get_peer_total'/'p\.peer_total'/g +s/'p\.get_port'/'p\.port'/g +s/'p\.get_up_rate'/'p\.up_rate'/g +s/'p\.get_up_total'/'p\.up_total'/g +s/'system\.method\.insert'/'method\.insert'/g +s/'system\.method\.erase'/'method\.erase'/g +s/'system\.method\.get'/'method\.get'/g +s/'system\.method\.set'/'method\.set'/g +s/'system\.method\.list_keys'/'method\.list_keys'/g +s/'system\.method\.has_key'/'method\.has_key'/g +s/'system\.method\.set_key'/'method\.set_key'/g +s/'get_directory'/'directory\.default'/g +s/'set_directory'/'directory\.default\.set'/g +s/'get_session'/'session\.path'/g +s/'set_session'/'session\.path\.set'/g +s/'session_save'/'session\.save'/g +s/'get_name'/'session\.name'/g +s/'set_name'/'session\.name\.set'/g +s/'system\.file_allocate'/'system\.file\.allocate'/g +s/'system\.file_allocate\.set'/'system\.file\.allocate\.set'/g +s/'get_max_file_size'/'system\.file\.max_size'/g +s/'set_max_file_size'/'system\.file\.max_size\.set'/g +s/'get_split_file_size'/'system\.file\.split_size'/g +s/'set_split_file_size'/'system\.file\.split_size\.set'/g +s/'get_split_suffix'/'system\.file\.split_suffix'/g +s/'set_split_suffix'/'system\.file\.split_suffix\.set'/g +s/'get_timeout_sync'/'pieces\.sync\.timeout'/g +s/'set_timeout_sync'/'pieces\.sync\.timeout\.set'/g +s/'get_timeout_safe_sync'/'pieces\.sync\.timeout_safe'/g +s/'set_timeout_safe_sync'/'pieces\.sync\.timeout_safe\.set'/g +s/'get_preload_type'/'pieces\.preload\.type'/g +s/'get_preload_min_size'/'pieces\.preload\.min_size'/g +s/'get_preload_required_rate'/'pieces\.preload\.min_rate'/g +s/'set_preload_type'/'pieces\.preload\.type\.set'/g +s/'set_preload_min_size'/'pieces\.preload\.min_size\.set'/g +s/'set_preload_required_rate'/'pieces\.preload\.min_rate\.set'/g +s/'get_stats_preloaded'/'pieces\.stats_preloaded'/g +s/'get_stats_not_preloaded'/'pieces\.stats_not_preloaded'/g +s/'get_safe_sync'/'pieces\.sync\.always_safe'/g +s/'set_safe_sync'/'pieces\.sync\.always_safe\.set'/g +s/'get_memory_usage'/'pieces\.memory\.current'/g +s/'get_max_memory_usage'/'pieces\.memory\.max'/g +s/'set_max_memory_usage'/'pieces\.memory\.max\.set'/g +s/'load'/'load\.normal'/g +s/'load_verbose'/'load\.verbose'/g +s/'load_start'/'load\.start'/g +s/'load_start_verbose'/'load\.start_verbose'/g +s/'load_raw'/'load\.raw'/g +s/'load_raw_start'/'load\.raw_start'/g +s/'load_raw_verbose'/'load\.raw_verbose'/g +s/'get_connection_leech'/'protocol\.connection\.leech'/g +s/'get_connection_seed'/'protocol\.connection\.seed'/g +s/'set_connection_leech'/'protocol\.connection\.leech\.set'/g +s/'set_connection_seed'/'protocol\.connection\.seed\.set'/g +s/'throttle_up'/'throttle\.up'/g +s/'throttle_down'/'throttle\.down'/g +s/'throttle_ip'/'throttle\.ip'/g +s/'get_throttle_up_max'/'throttle\.up\.max'/g +s/'get_throttle_up_rate'/'throttle\.up\.rate'/g +s/'get_throttle_down_max'/'throttle\.down\.max'/g +s/'get_throttle_down_rate'/'throttle\.down\.rate'/g +s/'set_min_peers'/'throttle\.min_peers\.normal\.set'/g +s/'set_max_peers'/'throttle\.max_peers\.normal\.set'/g +s/'set_min_peers_seed'/'throttle\.min_peers\.seed\.set'/g +s/'set_max_peers_seed'/'throttle\.max_peers\.seed\.set'/g +s/'set_max_uploads'/'throttle\.max_uploads\.set'/g +s/'set_max_uploads_div'/'throttle\.max_uploads\.div\.set'/g +s/'set_max_uploads_global'/'throttle\.max_uploads\.global\.set'/g +s/'set_max_downloads_div'/'throttle\.max_downloads\.div\.set'/g +s/'set_max_downloads_global'/'throttle\.max_downloads\.global\.set'/g +s/'get_min_peers'/'throttle\.min_peers\.normal'/g +s/'get_max_peers'/'throttle\.max_peers\.normal'/g +s/'get_min_peers_seed'/'throttle\.min_peers\.seed'/g +s/'get_max_peers_seed'/'throttle\.max_peers\.seed'/g +s/'get_max_uploads'/'throttle\.max_uploads'/g +s/'get_max_uploads_div'/'throttle\.max_uploads\.div'/g +s/'get_max_uploads_global'/'throttle\.max_uploads\.global'/g +s/'get_max_downloads_div'/'throttle\.max_downloads\.div'/g +s/'get_max_downloads_global'/'throttle\.max_downloads\.global'/g +s/'get_up_rate'/'throttle\.global_up\.rate'/g +s/'get_up_total'/'throttle\.global_up\.total'/g +s/'get_upload_rate'/'throttle\.global_up\.max_rate'/g +s/'set_upload_rate'/'throttle\.global_up\.max_rate\.set'/g +s/'get_down_rate'/'throttle\.global_down\.rate'/g +s/'get_down_total'/'throttle\.global_down\.total'/g +s/'get_download_rate'/'throttle\.global_down\.max_rate'/g +s/'set_download_rate'/'throttle\.global_down\.max_rate\.set'/g +s/'get_send_buffer_size'/'network\.send_buffer\.size'/g +s/'set_send_buffer_size'/'network\.send_buffer\.size\.set'/g +s/'get_receive_buffer_size'/'network\.receive_buffer\.size'/g +s/'set_receive_buffer_size'/'network\.receive_buffer\.size\.set'/g +s/'set_bind'/'network\.bind_address\.set'/g +s/'get_bind'/'network\.bind_address'/g +s/'set_ip'/'network\.local_address\.set'/g +s/'get_ip'/'network\.local_address'/g +s/'get_port_range'/'network\.port_range'/g +s/'set_port_range'/'network\.port_range\.set'/g +s/'get_port_random'/'network\.port_random'/g +s/'set_port_random'/'network\.port_random\.set'/g +s/'port_open'/'network\.port_open\.set'/g +s/'get_port_open'/'network\.port_open'/g +s/'set_port_open'/'network\.port_open\.set'/g +s/'set_proxy_address'/'network\.proxy_address\.set'/g +s/'get_proxy_address'/'network\.proxy_address'/g +s/'scgi_port'/'network\.scgi\.open_port'/g +s/'scgi_local'/'network\.scgi\.open_local'/g +s/'scgi_dont_route'/'network\.scgi\.dont_route\.set'/g +s/'set_scgi_dont_route'/'network\.scgi\.dont_route\.set'/g +s/'get_scgi_dont_route'/'network\.scgi\.dont_route'/g +s/'get_max_open_sockets'/'network\.max_open_sockets'/g +s/'get_max_open_files'/'network\.max_open_files'/g +s/'set_max_open_files'/'network\.max_open_files\.set'/g +s/'xmlrpc_dialect'/'network\.xmlrpc\.dialect\.set'/g +s/'set_xmlrpc_dialect'/'network\.xmlrpc\.dialect\.set'/g +s/'xmlrpc_size_limit'/'network\.xmlrpc\.size_limit\.set'/g +s/'get_xmlrpc_size_limit'/'network\.xmlrpc\.size_limit'/g +s/'set_xmlrpc_size_limit'/'network\.xmlrpc\.size_limit\.set'/g +s/'http_capath'/'network\.http\.capath\.set'/g +s/'get_http_capath'/'network\.http\.capath'/g +s/'set_http_capath'/'network\.http\.capath\.set'/g +s/'http_cacert'/'network\.http\.cacert\.set'/g +s/'get_http_cacert'/'network\.http\.cacert'/g +s/'set_http_cacert'/'network\.http\.cacert\.set'/g +s/'get_max_open_http'/'network\.http\.max_open'/g +s/'set_max_open_http'/'network\.http\.max_open\.set'/g +s/'http_proxy'/'network\.http\.proxy_address\.set'/g +s/'get_http_proxy'/'network\.http\.proxy_address'/g +s/'set_http_proxy'/'network\.http\.proxy_address\.set'/g +s/'peer_exchange'/'protocol\.pex\.set'/g +s/'get_peer_exchange'/'protocol\.pex'/g +s/'set_peer_exchange'/'protocol\.pex\.set'/g +s/'tracker_numwant'/'trackers\.numwant\.set'/g +s/'get_tracker_numwant'/'trackers\.numwant'/g +s/'set_tracker_numwant'/'trackers\.numwant\.set'/g +s/'use_udp_trackers'/'trackers\.use_udp\.set'/g +s/'get_use_udp_trackers'/'trackers\.use_udp'/g +s/'set_use_udp_trackers'/'trackers\.use_udp\.set'/g +s/'dht_add_node'/'dht\.add_node'/g +s/'dht_statistics'/'dht\.statistics'/g +s/'get_dht_port'/'dht\.port'/g +s/'set_dht_port'/'dht\.port\.set'/g +s/'get_dht_throttle'/'dht\.throttle\.name'/g +s/'set_dht_throttle'/'dht\.throttle\.name\.set'/g +s/'get_session_lock'/'session\.use_lock'/g +s/'set_session_lock'/'session\.use_lock\.set'/g +s/'get_session_on_completion'/'session\.on_completion'/g +s/'set_session_on_completion'/'session\.on_completion\.set'/g +s/'get_check_hash'/'pieces\.hash\.on_completion'/g +s/'set_check_hash'/'pieces\.hash\.on_completion\.set'/g +s/'view_add'/'view\.add'/g +s/'view_filter'/'view\.filter'/g +s/'view_filter_on'/'view\.filter_on'/g +s/'view_list'/'view\.list'/g +s/'view_set'/'view\.set'/g +s/'view_sort'/'view\.sort'/g +s/'view_sort_current'/'view\.sort_current'/g +s/'view_sort_new'/'view\.sort_new'/g +s/'execute_throw'/'execute\.throw'/g +s/'execute_nothrow'/'execute\.nothrow'/g +s/'execute_raw'/'execute\.raw'/g +s/'execute_raw_nothrow'/'execute\.raw_nothrow'/g +s/'execute_capture'/'execute\.capture'/g +s/'execute_capture_nothrow'/'execute\.capture_nothrow'/g +s/'d\.multicall=/'d\.multicall2=/g +s/'d\.get_hash=/'d\.hash=/g +s/'d\.get_local_id=/'d\.local_id=/g +s/'d\.get_local_id_html=/'d\.local_id_html=/g +s/'d\.get_bitfield=/'d\.bitfield=/g +s/'d\.get_base_path=/'d\.base_path=/g +s/'d\.get_base_filename=/'d\.base_filename=/g +s/'d\.get_name=/'d\.name=/g +s/'d\.get_creation_date=/'d\.creation_date=/g +s/'d\.get_peer_exchange=/'d\.peer_exchange=/g +s/'d\.get_up_rate=/'d\.up\.rate=/g +s/'d\.get_up_total=/'d\.up\.total=/g +s/'d\.get_down_rate=/'d\.down\.rate=/g +s/'d\.get_down_total=/'d\.down\.total=/g +s/'d\.get_skip_rate=/'d\.skip\.rate=/g +s/'d\.get_skip_total=/'d\.skip\.total=/g +s/'d\.get_bytes_done=/'d\.bytes_done=/g +s/'d\.get_chunk_size=/'d\.chunk_size=/g +s/'d\.get_chunks_hashed=/'d\.chunks_hashed=/g +s/'d\.get_complete=/'d\.complete=/g +s/'d\.get_completed_bytes=/'d\.completed_bytes=/g +s/'d\.get_completed_chunks=/'d\.completed_chunks=/g +s/'d\.get_connection_current=/'d\.connection_current=/g +s/'d\.get_connection_leech=/'d\.connection_leech=/g +s/'d\.get_connection_seed=/'d\.connection_seed=/g +s/'d\.get_custom=/'d\.custom=/g +s/'d\.get_custom1=/'d\.custom1=/g +s/'d\.get_custom2=/'d\.custom2=/g +s/'d\.get_custom3=/'d\.custom3=/g +s/'d\.get_custom4=/'d\.custom4=/g +s/'d\.get_custom5=/'d\.custom5=/g +s/'d\.get_custom_throw=/'d\.custom_throw=/g +s/'d\.get_directory=/'d\.directory=/g +s/'d\.get_directory_base=/'d\.directory_base=/g +s/'d\.get_free_diskspace=/'d\.free_diskspace=/g +s/'d\.get_hashing=/'d\.hashing=/g +s/'d\.get_hashing_failed=/'d\.hashing_failed=/g +s/'d\.get_ignore_commands=/'d\.ignore_commands=/g +s/'d\.get_left_bytes=/'d\.left_bytes=/g +s/'d\.get_loaded_file=/'d\.loaded_file=/g +s/'d\.get_max_file_size=/'d\.max_file_size=/g +s/'d\.get_max_size_pex=/'d\.max_size_pex=/g +s/'d\.get_message=/'d\.message=/g +s/'d\.get_mode=/'d\.mode=/g +s/'d\.get_peers_accounted=/'d\.peers_accounted=/g +s/'d\.get_peers_complete=/'d\.peers_complete=/g +s/'d\.get_peers_connected=/'d\.peers_connected=/g +s/'d\.get_peers_max=/'d\.peers_max=/g +s/'d\.get_peers_min=/'d\.peers_min=/g +s/'d\.get_peers_not_connected=/'d\.peers_not_connected=/g +s/'d\.get_priority=/'d\.priority=/g +s/'d\.get_priority_str=/'d\.priority_str=/g +s/'d\.get_ratio=/'d\.ratio=/g +s/'d\.get_size_bytes=/'d\.size_bytes=/g +s/'d\.get_size_chunks=/'d\.size_chunks=/g +s/'d\.get_size_files=/'d\.size_files=/g +s/'d\.get_size_pex=/'d\.size_pex=/g +s/'d\.get_state=/'d\.state=/g +s/'d\.get_state_changed=/'d\.state_changed=/g +s/'d\.get_state_counter=/'d\.state_counter=/g +s/'d\.get_throttle_name=/'d\.throttle_name=/g +s/'d\.get_tied_to_file=/'d\.tied_to_file=/g +s/'d\.get_tracker_focus=/'d\.tracker_focus=/g +s/'d\.get_tracker_numwant=/'d\.tracker_numwant=/g +s/'d\.get_tracker_size=/'d\.tracker_size=/g +s/'d\.get_uploads_max=/'d\.uploads_max=/g +s/'d\.set_connection_current=/'d\.connection_current\.set=/g +s/'d\.set_custom=/'d\.custom\.set=/g +s/'d\.set_custom1=/'d\.custom1\.set=/g +s/'d\.set_custom2=/'d\.custom2\.set=/g +s/'d\.set_custom3=/'d\.custom3\.set=/g +s/'d\.set_custom4=/'d\.custom4\.set=/g +s/'d\.set_custom5=/'d\.custom5\.set=/g +s/'d\.set_directory=/'d\.directory\.set=/g +s/'d\.set_directory_base=/'d\.directory_base\.set=/g +s/'d\.set_hashing_failed=/'d\.hashing_failed\.set=/g +s/'d\.set_ignore_commands=/'d\.ignore_commands\.set=/g +s/'d\.set_max_file_size=/'d\.max_file_size\.set=/g +s/'d\.set_message=/'d\.message\.set=/g +s/'d\.set_peers_max=/'d\.peers_max\.set=/g +s/'d\.set_peers_min=/'d\.peers_min\.set=/g +s/'d\.set_priority=/'d\.priority\.set=/g +s/'d\.set_throttle_name=/'d\.throttle_name\.set=/g +s/'d\.set_tied_to_file=/'d\.tied_to_file\.set=/g +s/'d\.set_tracker_numwant=/'d\.tracker_numwant\.set=/g +s/'d\.set_uploads_max=/'d\.uploads_max\.set=/g +s/'create_link=/'d\.create_link=/g +s/'delete_link=/'d\.delete_link=/g +s/'delete_tied=/'d\.delete_tied=/g +s/'t\.get_group=/'t\.group=/g +s/'t\.get_id=/'t\.id=/g +s/'t\.get_min_interval=/'t\.min_interval=/g +s/'t\.get_normal_interval=/'t\.normal_interval=/g +s/'t\.get_scrape_complete=/'t\.scrape_complete=/g +s/'t\.get_scrape_downloaded=/'t\.scrape_downloaded=/g +s/'t\.get_scrape_incomplete=/'t\.scrape_incomplete=/g +s/'t\.get_scrape_time_last=/'t\.scrape_time_last=/g +s/'t\.get_type=/'t\.type=/g +s/'t\.get_url=/'t\.url=/g +s/'t\.set_enabled=/'t\.is_enabled\.set=/g +s/'f\.get_completed_chunks=/'f\.completed_chunks=/g +s/'f\.get_frozen_path=/'f\.frozen_path=/g +s/'f\.get_last_touched=/'f\.last_touched=/g +s/'f\.get_match_depth_next=/'f\.match_depth_next=/g +s/'f\.get_match_depth_prev=/'f\.match_depth_prev=/g +s/'f\.get_offset=/'f\.offset=/g +s/'f\.get_path=/'f\.path=/g +s/'f\.get_path_components=/'f\.path_components=/g +s/'f\.get_path_depth=/'f\.path_depth=/g +s/'f\.get_priority=/'f\.priority=/g +s/'f\.get_range_first=/'f\.range_first=/g +s/'f\.get_range_second=/'f\.range_second=/g +s/'f\.get_size_bytes=/'f\.size_bytes=/g +s/'f\.get_size_chunks=/'f\.size_chunks=/g +s/'f\.set_priority=/'f\.priority\.set=/g +s/'fi\.get_filename_last=/'fi\.filename_last=/g +s/'p\.get_address=/'p\.address=/g +s/'p\.get_client_version=/'p\.client_version=/g +s/'p\.get_completed_percent=/'p\.completed_percent=/g +s/'p\.get_down_rate=/'p\.down_rate=/g +s/'p\.get_down_total=/'p\.down_total=/g +s/'p\.get_id=/'p\.id=/g +s/'p\.get_id_html=/'p\.id_html=/g +s/'p\.get_options_str=/'p\.options_str=/g +s/'p\.get_peer_rate=/'p\.peer_rate=/g +s/'p\.get_peer_total=/'p\.peer_total=/g +s/'p\.get_port=/'p\.port=/g +s/'p\.get_up_rate=/'p\.up_rate=/g +s/'p\.get_up_total=/'p\.up_total=/g +s/'system\.method\.insert=/'method\.insert=/g +s/'system\.method\.erase=/'method\.erase=/g +s/'system\.method\.get=/'method\.get=/g +s/'system\.method\.set=/'method\.set=/g +s/'system\.method\.list_keys=/'method\.list_keys=/g +s/'system\.method\.has_key=/'method\.has_key=/g +s/'system\.method\.set_key=/'method\.set_key=/g +s/'get_directory=/'directory\.default=/g +s/'set_directory=/'directory\.default\.set=/g +s/'get_session=/'session\.path=/g +s/'set_session=/'session\.path\.set=/g +s/'session_save=/'session\.save=/g +s/'get_name=/'session\.name=/g +s/'set_name=/'session\.name\.set=/g +s/'system\.file_allocate=/'system\.file\.allocate=/g +s/'system\.file_allocate\.set=/'system\.file\.allocate\.set=/g +s/'get_max_file_size=/'system\.file\.max_size=/g +s/'set_max_file_size=/'system\.file\.max_size\.set=/g +s/'get_split_file_size=/'system\.file\.split_size=/g +s/'set_split_file_size=/'system\.file\.split_size\.set=/g +s/'get_split_suffix=/'system\.file\.split_suffix=/g +s/'set_split_suffix=/'system\.file\.split_suffix\.set=/g +s/'get_timeout_sync=/'pieces\.sync\.timeout=/g +s/'set_timeout_sync=/'pieces\.sync\.timeout\.set=/g +s/'get_timeout_safe_sync=/'pieces\.sync\.timeout_safe=/g +s/'set_timeout_safe_sync=/'pieces\.sync\.timeout_safe\.set=/g +s/'get_preload_type=/'pieces\.preload\.type=/g +s/'get_preload_min_size=/'pieces\.preload\.min_size=/g +s/'get_preload_required_rate=/'pieces\.preload\.min_rate=/g +s/'set_preload_type=/'pieces\.preload\.type\.set=/g +s/'set_preload_min_size=/'pieces\.preload\.min_size\.set=/g +s/'set_preload_required_rate=/'pieces\.preload\.min_rate\.set=/g +s/'get_stats_preloaded=/'pieces\.stats_preloaded=/g +s/'get_stats_not_preloaded=/'pieces\.stats_not_preloaded=/g +s/'get_safe_sync=/'pieces\.sync\.always_safe=/g +s/'set_safe_sync=/'pieces\.sync\.always_safe\.set=/g +s/'get_memory_usage=/'pieces\.memory\.current=/g +s/'get_max_memory_usage=/'pieces\.memory\.max=/g +s/'set_max_memory_usage=/'pieces\.memory\.max\.set=/g +s/'load=/'load\.normal=/g +s/'load_verbose=/'load\.verbose=/g +s/'load_start=/'load\.start=/g +s/'load_start_verbose=/'load\.start_verbose=/g +s/'load_raw=/'load\.raw=/g +s/'load_raw_start=/'load\.raw_start=/g +s/'load_raw_verbose=/'load\.raw_verbose=/g +s/'get_connection_leech=/'protocol\.connection\.leech=/g +s/'get_connection_seed=/'protocol\.connection\.seed=/g +s/'set_connection_leech=/'protocol\.connection\.leech\.set=/g +s/'set_connection_seed=/'protocol\.connection\.seed\.set=/g +s/'throttle_up=/'throttle\.up=/g +s/'throttle_down=/'throttle\.down=/g +s/'throttle_ip=/'throttle\.ip=/g +s/'get_throttle_up_max=/'throttle\.up\.max=/g +s/'get_throttle_up_rate=/'throttle\.up\.rate=/g +s/'get_throttle_down_max=/'throttle\.down\.max=/g +s/'get_throttle_down_rate=/'throttle\.down\.rate=/g +s/'set_min_peers=/'throttle\.min_peers\.normal\.set=/g +s/'set_max_peers=/'throttle\.max_peers\.normal\.set=/g +s/'set_min_peers_seed=/'throttle\.min_peers\.seed\.set=/g +s/'set_max_peers_seed=/'throttle\.max_peers\.seed\.set=/g +s/'set_max_uploads=/'throttle\.max_uploads\.set=/g +s/'set_max_uploads_div=/'throttle\.max_uploads\.div\.set=/g +s/'set_max_uploads_global=/'throttle\.max_uploads\.global\.set=/g +s/'set_max_downloads_div=/'throttle\.max_downloads\.div\.set=/g +s/'set_max_downloads_global=/'throttle\.max_downloads\.global\.set=/g +s/'get_min_peers=/'throttle\.min_peers\.normal=/g +s/'get_max_peers=/'throttle\.max_peers\.normal=/g +s/'get_min_peers_seed=/'throttle\.min_peers\.seed=/g +s/'get_max_peers_seed=/'throttle\.max_peers\.seed=/g +s/'get_max_uploads=/'throttle\.max_uploads=/g +s/'get_max_uploads_div=/'throttle\.max_uploads\.div=/g +s/'get_max_uploads_global=/'throttle\.max_uploads\.global=/g +s/'get_max_downloads_div=/'throttle\.max_downloads\.div=/g +s/'get_max_downloads_global=/'throttle\.max_downloads\.global=/g +s/'get_up_rate=/'throttle\.global_up\.rate=/g +s/'get_up_total=/'throttle\.global_up\.total=/g +s/'get_upload_rate=/'throttle\.global_up\.max_rate=/g +s/'set_upload_rate=/'throttle\.global_up\.max_rate\.set=/g +s/'get_down_rate=/'throttle\.global_down\.rate=/g +s/'get_down_total=/'throttle\.global_down\.total=/g +s/'get_download_rate=/'throttle\.global_down\.max_rate=/g +s/'set_download_rate=/'throttle\.global_down\.max_rate\.set=/g +s/'get_send_buffer_size=/'network\.send_buffer\.size=/g +s/'set_send_buffer_size=/'network\.send_buffer\.size\.set=/g +s/'get_receive_buffer_size=/'network\.receive_buffer\.size=/g +s/'set_receive_buffer_size=/'network\.receive_buffer\.size\.set=/g +s/'set_bind=/'network\.bind_address\.set=/g +s/'get_bind=/'network\.bind_address=/g +s/'set_ip=/'network\.local_address\.set=/g +s/'get_ip=/'network\.local_address=/g +s/'get_port_range=/'network\.port_range=/g +s/'set_port_range=/'network\.port_range\.set=/g +s/'get_port_random=/'network\.port_random=/g +s/'set_port_random=/'network\.port_random\.set=/g +s/'port_open=/'network\.port_open\.set=/g +s/'get_port_open=/'network\.port_open=/g +s/'set_port_open=/'network\.port_open\.set=/g +s/'set_proxy_address=/'network\.proxy_address\.set=/g +s/'get_proxy_address=/'network\.proxy_address=/g +s/'scgi_port=/'network\.scgi\.open_port=/g +s/'scgi_local=/'network\.scgi\.open_local=/g +s/'scgi_dont_route=/'network\.scgi\.dont_route\.set=/g +s/'set_scgi_dont_route=/'network\.scgi\.dont_route\.set=/g +s/'get_scgi_dont_route=/'network\.scgi\.dont_route=/g +s/'get_max_open_sockets=/'network\.max_open_sockets=/g +s/'get_max_open_files=/'network\.max_open_files=/g +s/'set_max_open_files=/'network\.max_open_files\.set=/g +s/'xmlrpc_dialect=/'network\.xmlrpc\.dialect\.set=/g +s/'set_xmlrpc_dialect=/'network\.xmlrpc\.dialect\.set=/g +s/'xmlrpc_size_limit=/'network\.xmlrpc\.size_limit\.set=/g +s/'get_xmlrpc_size_limit=/'network\.xmlrpc\.size_limit=/g +s/'set_xmlrpc_size_limit=/'network\.xmlrpc\.size_limit\.set=/g +s/'http_capath=/'network\.http\.capath\.set=/g +s/'get_http_capath=/'network\.http\.capath=/g +s/'set_http_capath=/'network\.http\.capath\.set=/g +s/'http_cacert=/'network\.http\.cacert\.set=/g +s/'get_http_cacert=/'network\.http\.cacert=/g +s/'set_http_cacert=/'network\.http\.cacert\.set=/g +s/'get_max_open_http=/'network\.http\.max_open=/g +s/'set_max_open_http=/'network\.http\.max_open\.set=/g +s/'http_proxy=/'network\.http\.proxy_address\.set=/g +s/'get_http_proxy=/'network\.http\.proxy_address=/g +s/'set_http_proxy=/'network\.http\.proxy_address\.set=/g +s/'peer_exchange=/'protocol\.pex\.set=/g +s/'get_peer_exchange=/'protocol\.pex=/g +s/'set_peer_exchange=/'protocol\.pex\.set=/g +s/'tracker_numwant=/'trackers\.numwant\.set=/g +s/'get_tracker_numwant=/'trackers\.numwant=/g +s/'set_tracker_numwant=/'trackers\.numwant\.set=/g +s/'use_udp_trackers=/'trackers\.use_udp\.set=/g +s/'get_use_udp_trackers=/'trackers\.use_udp=/g +s/'set_use_udp_trackers=/'trackers\.use_udp\.set=/g +s/'dht_add_node=/'dht\.add_node=/g +s/'dht_statistics=/'dht\.statistics=/g +s/'get_dht_port=/'dht\.port=/g +s/'set_dht_port=/'dht\.port\.set=/g +s/'get_dht_throttle=/'dht\.throttle\.name=/g +s/'set_dht_throttle=/'dht\.throttle\.name\.set=/g +s/'get_session_lock=/'session\.use_lock=/g +s/'set_session_lock=/'session\.use_lock\.set=/g +s/'get_session_on_completion=/'session\.on_completion=/g +s/'set_session_on_completion=/'session\.on_completion\.set=/g +s/'get_check_hash=/'pieces\.hash\.on_completion=/g +s/'set_check_hash=/'pieces\.hash\.on_completion\.set=/g +s/'view_add=/'view\.add=/g +s/'view_filter=/'view\.filter=/g +s/'view_filter_on=/'view\.filter_on=/g +s/'view_list=/'view\.list=/g +s/'view_set=/'view\.set=/g +s/'view_sort=/'view\.sort=/g +s/'view_sort_current=/'view\.sort_current=/g +s/'view_sort_new=/'view\.sort_new=/g +s/'execute_throw=/'execute\.throw=/g +s/'execute_nothrow=/'execute\.nothrow=/g +s/'execute_raw=/'execute\.raw=/g +s/'execute_raw_nothrow=/'execute\.raw_nothrow=/g +s/'execute_capture=/'execute\.capture=/g +s/'execute_capture_nothrow=/'execute\.capture_nothrow=/g From 4ac807870e1782a3ec589076c799cad50bd33977 Mon Sep 17 00:00:00 2001 From: rakshasa Date: Wed, 28 May 2014 17:04:06 +0900 Subject: [PATCH 11/12] Un-deprecate scgi_port/local. --- src/main.cc | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/src/main.cc b/src/main.cc index fa5a5bff..cda0bcdc 100644 --- a/src/main.cc +++ b/src/main.cc @@ -394,6 +394,9 @@ main(int argc, char** argv) { CMD2_REDIRECT ("port_random", "network.port_random.set"); CMD2_REDIRECT ("proxy_address", "network.proxy_address.set"); + CMD2_REDIRECT ("scgi_port", "network.scgi.open_port"); + CMD2_REDIRECT ("scgi_local", "network.scgi.open_local"); + CMD2_REDIRECT_GENERIC("directory", "directory.default.set"); CMD2_REDIRECT_GENERIC("session", "session.path.set"); @@ -568,10 +571,6 @@ main(int argc, char** argv) { CMD2_REDIRECT_GENERIC("set_proxy_address", "network.proxy_address.set"); CMD2_REDIRECT ("get_proxy_address", "network.proxy_address"); - CMD2_REDIRECT ("scgi_port", "network.scgi.open_port"); - CMD2_REDIRECT ("scgi_local", "network.scgi.open_local"); - - CMD2_REDIRECT ("scgi_dont_route", "network.scgi.dont_route.set"); CMD2_REDIRECT_GENERIC("set_scgi_dont_route", "network.scgi.dont_route.set"); CMD2_REDIRECT ("get_scgi_dont_route", "network.scgi.dont_route"); From bfd1a8da8c239d42ff4b0a49777f3a3c742960ba Mon Sep 17 00:00:00 2001 From: rakshasa Date: Sat, 31 May 2014 03:18:26 +0900 Subject: [PATCH 12/12] Updated migration script to handle rutorrent. --- doc/scripts/update_commands_0.9.sed | 618 +++++++++++++++++++++++++++- 1 file changed, 611 insertions(+), 7 deletions(-) diff --git a/doc/scripts/update_commands_0.9.sed b/doc/scripts/update_commands_0.9.sed index 15bc49b4..03d3e092 100644 --- a/doc/scripts/update_commands_0.9.sed +++ b/doc/scripts/update_commands_0.9.sed @@ -1,3 +1,38 @@ +s/"execute_capture",array(/"execute.capture",array("",/g +s/"execute_capture", array(/"execute.capture", array("",/g + +s/"execute.nothrow", array("sh"/"execute.nothrow", array("", "sh"/g + +s/"execute",array(/"execute2",array("",/g +s/"execute", array(/"execute2", array("",/g + +s/"d.multicall",array(/"d.multicall2",array("", /g +s/"d.multicall", array(/"d.multicall2", array("", /g + +s/"d.multicall", "main"/"d.multicall2", array("", "main")/g + +s/var cmd = new rXMLRPCCommand("d.multicall");/var cmd = new rXMLRPCCommand("d.multicall2"); cmd.addParameter("string","");/g + +s/'load_raw' );/'load.raw' ); $cmd->addParameter("");/g +s/'load' );/'load.normal' ); $cmd->addParameter("");/g + +s/'system\.method\.insert',/'method.insert','',/g +s/'system\.method\.erase',/'method.erase','',/g +s/'system\.method\.get',/'method.get','',/g +s/'system\.method\.set',/'method.set','',/g +s/'system\.method\.list_keys',/'method.list_keys','',/g +s/'system\.method\.has_key',/'method.has_key','',/g +s/'system\.method\.set_key',/'method.set_key','',/g + +s/"system\.method\.insert"/"method.insert"/g +s/"system\.method\.erase"/"method.erase"/g +s/"system\.method\.get"/"method.get"/g +s/"system\.method\.set"/"method.set"/g +s/"system\.method\.list_keys"/"method.list_keys"/g +s/"system\.method\.has_key"/"method.has_key"/g +s/"system\.method\.set_key"/"method.set_key"/g + + s/'d\.multicall'/'d\.multicall2'/g s/'d\.get_hash'/'d\.hash'/g s/'d\.get_local_id'/'d\.local_id'/g @@ -127,13 +162,6 @@ s/'p\.get_peer_total'/'p\.peer_total'/g s/'p\.get_port'/'p\.port'/g s/'p\.get_up_rate'/'p\.up_rate'/g s/'p\.get_up_total'/'p\.up_total'/g -s/'system\.method\.insert'/'method\.insert'/g -s/'system\.method\.erase'/'method\.erase'/g -s/'system\.method\.get'/'method\.get'/g -s/'system\.method\.set'/'method\.set'/g -s/'system\.method\.list_keys'/'method\.list_keys'/g -s/'system\.method\.has_key'/'method\.has_key'/g -s/'system\.method\.set_key'/'method\.set_key'/g s/'get_directory'/'directory\.default'/g s/'set_directory'/'directory\.default\.set'/g s/'get_session'/'session\.path'/g @@ -286,6 +314,7 @@ s/'execute_raw'/'execute\.raw'/g s/'execute_raw_nothrow'/'execute\.raw_nothrow'/g s/'execute_capture'/'execute\.capture'/g s/'execute_capture_nothrow'/'execute\.capture_nothrow'/g +s/'execute'/'execute2'/g s/'d\.multicall=/'d\.multicall2=/g s/'d\.get_hash=/'d\.hash=/g s/'d\.get_local_id=/'d\.local_id=/g @@ -574,3 +603,578 @@ s/'execute_raw=/'execute\.raw=/g s/'execute_raw_nothrow=/'execute\.raw_nothrow=/g s/'execute_capture=/'execute\.capture=/g s/'execute_capture_nothrow=/'execute\.capture_nothrow=/g +s/'execute=/'execute2=/g + +s/"d\.multicall"/"d\.multicall2"/g +s/"d\.get_hash"/"d\.hash"/g +s/"d\.get_local_id"/"d\.local_id"/g +s/"d\.get_local_id_html"/"d\.local_id_html"/g +s/"d\.get_bitfield"/"d\.bitfield"/g +s/"d\.get_base_path"/"d\.base_path"/g +s/"d\.get_base_filename"/"d\.base_filename"/g +s/"d\.get_name"/"d\.name"/g +s/"d\.get_creation_date"/"d\.creation_date"/g +s/"d\.get_peer_exchange"/"d\.peer_exchange"/g +s/"d\.get_up_rate"/"d\.up\.rate"/g +s/"d\.get_up_total"/"d\.up\.total"/g +s/"d\.get_down_rate"/"d\.down\.rate"/g +s/"d\.get_down_total"/"d\.down\.total"/g +s/"d\.get_skip_rate"/"d\.skip\.rate"/g +s/"d\.get_skip_total"/"d\.skip\.total"/g +s/"d\.get_bytes_done"/"d\.bytes_done"/g +s/"d\.get_chunk_size"/"d\.chunk_size"/g +s/"d\.get_chunks_hashed"/"d\.chunks_hashed"/g +s/"d\.get_complete"/"d\.complete"/g +s/"d\.get_completed_bytes"/"d\.completed_bytes"/g +s/"d\.get_completed_chunks"/"d\.completed_chunks"/g +s/"d\.get_connection_current"/"d\.connection_current"/g +s/"d\.get_connection_leech"/"d\.connection_leech"/g +s/"d\.get_connection_seed"/"d\.connection_seed"/g +s/"d\.get_custom"/"d\.custom"/g +s/"d\.get_custom1"/"d\.custom1"/g +s/"d\.get_custom2"/"d\.custom2"/g +s/"d\.get_custom3"/"d\.custom3"/g +s/"d\.get_custom4"/"d\.custom4"/g +s/"d\.get_custom5"/"d\.custom5"/g +s/"d\.get_custom_throw"/"d\.custom_throw"/g +s/"d\.get_directory"/"d\.directory"/g +s/"d\.get_directory_base"/"d\.directory_base"/g +s/"d\.get_free_diskspace"/"d\.free_diskspace"/g +s/"d\.get_hashing"/"d\.hashing"/g +s/"d\.get_hashing_failed"/"d\.hashing_failed"/g +s/"d\.get_ignore_commands"/"d\.ignore_commands"/g +s/"d\.get_left_bytes"/"d\.left_bytes"/g +s/"d\.get_loaded_file"/"d\.loaded_file"/g +s/"d\.get_max_file_size"/"d\.max_file_size"/g +s/"d\.get_max_size_pex"/"d\.max_size_pex"/g +s/"d\.get_message"/"d\.message"/g +s/"d\.get_mode"/"d\.mode"/g +s/"d\.get_peers_accounted"/"d\.peers_accounted"/g +s/"d\.get_peers_complete"/"d\.peers_complete"/g +s/"d\.get_peers_connected"/"d\.peers_connected"/g +s/"d\.get_peers_max"/"d\.peers_max"/g +s/"d\.get_peers_min"/"d\.peers_min"/g +s/"d\.get_peers_not_connected"/"d\.peers_not_connected"/g +s/"d\.get_priority"/"d\.priority"/g +s/"d\.get_priority_str"/"d\.priority_str"/g +s/"d\.get_ratio"/"d\.ratio"/g +s/"d\.get_size_bytes"/"d\.size_bytes"/g +s/"d\.get_size_chunks"/"d\.size_chunks"/g +s/"d\.get_size_files"/"d\.size_files"/g +s/"d\.get_size_pex"/"d\.size_pex"/g +s/"d\.get_state"/"d\.state"/g +s/"d\.get_state_changed"/"d\.state_changed"/g +s/"d\.get_state_counter"/"d\.state_counter"/g +s/"d\.get_throttle_name"/"d\.throttle_name"/g +s/"d\.get_tied_to_file"/"d\.tied_to_file"/g +s/"d\.get_tracker_focus"/"d\.tracker_focus"/g +s/"d\.get_tracker_numwant"/"d\.tracker_numwant"/g +s/"d\.get_tracker_size"/"d\.tracker_size"/g +s/"d\.get_uploads_max"/"d\.uploads_max"/g +s/"d\.set_connection_current"/"d\.connection_current\.set"/g +s/"d\.set_custom"/"d\.custom\.set"/g +s/"d\.set_custom1"/"d\.custom1\.set"/g +s/"d\.set_custom2"/"d\.custom2\.set"/g +s/"d\.set_custom3"/"d\.custom3\.set"/g +s/"d\.set_custom4"/"d\.custom4\.set"/g +s/"d\.set_custom5"/"d\.custom5\.set"/g +s/"d\.set_directory"/"d\.directory\.set"/g +s/"d\.set_directory_base"/"d\.directory_base\.set"/g +s/"d\.set_hashing_failed"/"d\.hashing_failed\.set"/g +s/"d\.set_ignore_commands"/"d\.ignore_commands\.set"/g +s/"d\.set_max_file_size"/"d\.max_file_size\.set"/g +s/"d\.set_message"/"d\.message\.set"/g +s/"d\.set_peers_max"/"d\.peers_max\.set"/g +s/"d\.set_peers_min"/"d\.peers_min\.set"/g +s/"d\.set_priority"/"d\.priority\.set"/g +s/"d\.set_throttle_name"/"d\.throttle_name\.set"/g +s/"d\.set_tied_to_file"/"d\.tied_to_file\.set"/g +s/"d\.set_tracker_numwant"/"d\.tracker_numwant\.set"/g +s/"d\.set_uploads_max"/"d\.uploads_max\.set"/g +s/"create_link"/"d\.create_link"/g +s/"delete_link"/"d\.delete_link"/g +s/"delete_tied"/"d\.delete_tied"/g +s/"t\.get_group"/"t\.group"/g +s/"t\.get_id"/"t\.id"/g +s/"t\.get_min_interval"/"t\.min_interval"/g +s/"t\.get_normal_interval"/"t\.normal_interval"/g +s/"t\.get_scrape_complete"/"t\.scrape_complete"/g +s/"t\.get_scrape_downloaded"/"t\.scrape_downloaded"/g +s/"t\.get_scrape_incomplete"/"t\.scrape_incomplete"/g +s/"t\.get_scrape_time_last"/"t\.scrape_time_last"/g +s/"t\.get_type"/"t\.type"/g +s/"t\.get_url"/"t\.url"/g +s/"t\.set_enabled"/"t\.is_enabled\.set"/g +s/"f\.get_completed_chunks"/"f\.completed_chunks"/g +s/"f\.get_frozen_path"/"f\.frozen_path"/g +s/"f\.get_last_touched"/"f\.last_touched"/g +s/"f\.get_match_depth_next"/"f\.match_depth_next"/g +s/"f\.get_match_depth_prev"/"f\.match_depth_prev"/g +s/"f\.get_offset"/"f\.offset"/g +s/"f\.get_path"/"f\.path"/g +s/"f\.get_path_components"/"f\.path_components"/g +s/"f\.get_path_depth"/"f\.path_depth"/g +s/"f\.get_priority"/"f\.priority"/g +s/"f\.get_range_first"/"f\.range_first"/g +s/"f\.get_range_second"/"f\.range_second"/g +s/"f\.get_size_bytes"/"f\.size_bytes"/g +s/"f\.get_size_chunks"/"f\.size_chunks"/g +s/"f\.set_priority"/"f\.priority\.set"/g +s/"fi\.get_filename_last"/"fi\.filename_last"/g +s/"p\.get_address"/"p\.address"/g +s/"p\.get_client_version"/"p\.client_version"/g +s/"p\.get_completed_percent"/"p\.completed_percent"/g +s/"p\.get_down_rate"/"p\.down_rate"/g +s/"p\.get_down_total"/"p\.down_total"/g +s/"p\.get_id"/"p\.id"/g +s/"p\.get_id_html"/"p\.id_html"/g +s/"p\.get_options_str"/"p\.options_str"/g +s/"p\.get_peer_rate"/"p\.peer_rate"/g +s/"p\.get_peer_total"/"p\.peer_total"/g +s/"p\.get_port"/"p\.port"/g +s/"p\.get_up_rate"/"p\.up_rate"/g +s/"p\.get_up_total"/"p\.up_total"/g +s/"get_directory"/"directory\.default"/g +s/"set_directory",/"directory\.default\.set","",/g +s/"get_session"/"session\.path"/g +s/"set_session",/"session\.path\.set","",/g +s/"session_save"/"session\.save"/g +s/"get_name"/"session\.name"/g +s/"set_name",/"session\.name\.set","",/g +s/"system\.file_allocate"/"system\.file\.allocate"/g +s/"system\.file_allocate\.set"/"system\.file\.allocate\.set"/g +s/"get_max_file_size"/"system\.file\.max_size"/g +s/"set_max_file_size",/"system\.file\.max_size\.set","",/g +s/"get_split_file_size"/"system\.file\.split_size"/g +s/"set_split_file_size",/"system\.file\.split_size\.set","",/g +s/"get_split_suffix"/"system\.file\.split_suffix"/g +s/"set_split_suffix",/"system\.file\.split_suffix\.set","",/g +s/"get_timeout_sync"/"pieces\.sync\.timeout"/g +s/"set_timeout_sync",/"pieces\.sync\.timeout\.set","",/g +s/"get_timeout_safe_sync"/"pieces\.sync\.timeout_safe"/g +s/"set_timeout_safe_sync",/"pieces\.sync\.timeout_safe\.set","",/g +s/"get_preload_type"/"pieces\.preload\.type"/g +s/"get_preload_min_size"/"pieces\.preload\.min_size"/g +s/"get_preload_required_rate"/"pieces\.preload\.min_rate"/g +s/"set_preload_type",/"pieces\.preload\.type\.set","",/g +s/"set_preload_min_size",/"pieces\.preload\.min_size\.set","",/g +s/"set_preload_required_rate",/"pieces\.preload\.min_rate\.set","",/g +s/"get_stats_preloaded"/"pieces\.stats_preloaded"/g +s/"get_stats_not_preloaded"/"pieces\.stats_not_preloaded"/g +s/"get_safe_sync"/"pieces\.sync\.always_safe"/g +s/"set_safe_sync",/"pieces\.sync\.always_safe\.set","",/g +s/"get_memory_usage"/"pieces\.memory\.current"/g +s/"get_max_memory_usage"/"pieces\.memory\.max"/g +s/"set_max_memory_usage",/"pieces\.memory\.max\.set","",/g +s/"load"/"load\.normal"/g +s/"load_verbose"/"load\.verbose"/g +s/"load_start"/"load\.start"/g +s/"load_start_verbose"/"load\.start_verbose"/g +s/"load_raw"/"load\.raw"/g +s/"load_raw_start"/"load\.raw_start"/g +s/"load_raw_verbose"/"load\.raw_verbose"/g +s/"get_connection_leech"/"protocol\.connection\.leech"/g +s/"get_connection_seed"/"protocol\.connection\.seed"/g +s/"set_connection_leech",/"protocol\.connection\.leech\.set","",/g +s/"set_connection_seed",/"protocol\.connection\.seed\.set","",/g +s/"throttle_up"/"throttle\.up"/g +s/"throttle_down"/"throttle\.down"/g +s/"throttle_ip"/"throttle\.ip"/g +s/"get_throttle_up_max"/"throttle\.up\.max"/g +s/"get_throttle_up_rate"/"throttle\.up\.rate"/g +s/"get_throttle_down_max"/"throttle\.down\.max"/g +s/"get_throttle_down_rate"/"throttle\.down\.rate"/g +s/"set_min_peers",/"throttle\.min_peers\.normal\.set","",/g +s/"set_max_peers",/"throttle\.max_peers\.normal\.set","",/g +s/"set_min_peers_seed",/"throttle\.min_peers\.seed\.set","",/g +s/"set_max_peers_seed",/"throttle\.max_peers\.seed\.set","",/g +s/"set_max_uploads",/"throttle\.max_uploads\.set","",/g +s/"set_max_uploads_div",/"throttle\.max_uploads\.div\.set","",/g +s/"set_max_uploads_global",/"throttle\.max_uploads\.global\.set","",/g +s/"set_max_downloads_div",/"throttle\.max_downloads\.div\.set","",/g +s/"set_max_downloads_global",/"throttle\.max_downloads\.global\.set","",/g +s/"get_min_peers"/"throttle\.min_peers\.normal"/g +s/"get_max_peers"/"throttle\.max_peers\.normal"/g +s/"get_min_peers_seed"/"throttle\.min_peers\.seed"/g +s/"get_max_peers_seed"/"throttle\.max_peers\.seed"/g +s/"get_max_uploads"/"throttle\.max_uploads"/g +s/"get_max_uploads_div"/"throttle\.max_uploads\.div"/g +s/"get_max_uploads_global"/"throttle\.max_uploads\.global"/g +s/"get_max_downloads_div"/"throttle\.max_downloads\.div"/g +s/"get_max_downloads_global"/"throttle\.max_downloads\.global"/g +s/"get_up_rate"/"throttle\.global_up\.rate"/g +s/"get_up_total"/"throttle\.global_up\.total"/g +s/"get_upload_rate"/"throttle\.global_up\.max_rate"/g +s/"set_upload_rate",/"throttle\.global_up\.max_rate\.set","",/g +s/"get_down_rate"/"throttle\.global_down\.rate"/g +s/"get_down_total"/"throttle\.global_down\.total"/g +s/"get_download_rate"/"throttle\.global_down\.max_rate"/g +s/"set_download_rate",/"throttle\.global_down\.max_rate\.set","",/g +s/"get_send_buffer_size"/"network\.send_buffer\.size"/g +s/"set_send_buffer_size",/"network\.send_buffer\.size\.set","",/g +s/"get_receive_buffer_size"/"network\.receive_buffer\.size"/g +s/"set_receive_buffer_size",/"network\.receive_buffer\.size\.set","",/g +s/"set_bind",/"network\.bind_address\.set","",/g +s/"get_bind"/"network\.bind_address"/g +s/"set_ip",/"network\.local_address\.set","",/g +s/"get_ip"/"network\.local_address"/g +s/"get_port_range"/"network\.port_range"/g +s/"set_port_range",/"network\.port_range\.set","",/g +s/"get_port_random"/"network\.port_random"/g +s/"set_port_random",/"network\.port_random\.set","",/g +s/"port_open"/"network\.port_open\.set"/g +s/"get_port_open"/"network\.port_open"/g +s/"set_port_open",/"network\.port_open\.set","",/g +s/"set_proxy_address",/"network\.proxy_address\.set","",/g +s/"get_proxy_address"/"network\.proxy_address"/g +s/"scgi_port"/"network\.scgi\.open_port"/g +s/"scgi_local"/"network\.scgi\.open_local"/g +s/"scgi_dont_route"/"network\.scgi\.dont_route\.set"/g +s/"set_scgi_dont_route",/"network\.scgi\.dont_route\.set","",/g +s/"get_scgi_dont_route"/"network\.scgi\.dont_route"/g +s/"get_max_open_sockets"/"network\.max_open_sockets"/g +s/"get_max_open_files"/"network\.max_open_files"/g +s/"set_max_open_files",/"network\.max_open_files\.set","",/g + +s/"xmlrpc_dialect",/"network\.xmlrpc\.dialect\.set",""/g +s/"set_xmlrpc_dialect",/"network\.xmlrpc\.dialect\.set","",/g +s/"xmlrpc_size_limit",/"network\.xmlrpc\.size_limit\.set","",/g +s/"get_xmlrpc_size_limit"/"network\.xmlrpc\.size_limit"/g +s/"set_xmlrpc_size_limit",/"network\.xmlrpc\.size_limit\.set","",/g + +s/"http_capath"/"network\.http\.capath\.set"/g +s/"get_http_capath"/"network\.http\.capath"/g +s/"set_http_capath",/"network\.http\.capath\.set","",/g +s/"http_cacert"/"network\.http\.cacert\.set"/g +s/"get_http_cacert"/"network\.http\.cacert"/g +s/"set_http_cacert",/"network\.http\.cacert\.set","",/g +s/"get_max_open_http"/"network\.http\.max_open"/g +s/"set_max_open_http",/"network\.http\.max_open\.set","",/g +s/"http_proxy"/"network\.http\.proxy_address\.set"/g +s/"get_http_proxy"/"network\.http\.proxy_address"/g +s/"set_http_proxy",/"network\.http\.proxy_address\.set","",/g +s/"peer_exchange"/"protocol\.pex\.set"/g +s/"get_peer_exchange"/"protocol\.pex"/g +s/"set_peer_exchange",/"protocol\.pex\.set","",/g +s/"tracker_numwant"/"trackers\.numwant\.set"/g +s/"get_tracker_numwant"/"trackers\.numwant"/g +s/"set_tracker_numwant",/"trackers\.numwant\.set","",/g +s/"use_udp_trackers"/"trackers\.use_udp\.set"/g +s/"get_use_udp_trackers"/"trackers\.use_udp"/g +s/"set_use_udp_trackers",/"trackers\.use_udp\.set","",/g +s/"dht_add_node"/"dht\.add_node"/g +s/"dht_statistics"/"dht\.statistics"/g +s/"get_dht_port"/"dht\.port"/g +s/"set_dht_port",/"dht\.port\.set","",/g +s/"get_dht_throttle"/"dht\.throttle\.name"/g +s/"set_dht_throttle",/"dht\.throttle\.name\.set","",/g +s/"get_session_lock"/"session\.use_lock"/g +s/"set_session_lock",/"session\.use_lock\.set","",/g +s/"get_session_on_completion"/"session\.on_completion"/g +s/"set_session_on_completion",/"session\.on_completion\.set","",/g +s/"get_check_hash"/"pieces\.hash\.on_completion"/g +s/"set_check_hash",/"pieces\.hash\.on_completion\.set","",/g +s/"view_add"/"view\.add"/g +s/"view_filter"/"view\.filter"/g +s/"view_filter_on"/"view\.filter_on"/g +s/"view_list"/"view\.list"/g +s/"view_set"/"view\.set"/g +s/"view_sort"/"view\.sort"/g +s/"view_sort_current"/"view\.sort_current"/g +s/"view_sort_new"/"view\.sort_new"/g +s/"execute_throw"/"execute\.throw"/g +s/"execute_nothrow"/"execute\.nothrow"/g +s/"execute_raw"/"execute\.raw"/g +s/"execute_raw_nothrow"/"execute\.raw_nothrow"/g +s/"execute_capture"/"execute\.capture"/g +s/"execute_capture_nothrow"/"execute\.capture_nothrow"/g +s/"execute"/"execute2"/g +s/"d\.multicall=/"d\.multicall2=/g +s/"d\.get_hash=/"d\.hash=/g +s/"d\.get_local_id=/"d\.local_id=/g +s/"d\.get_local_id_html=/"d\.local_id_html=/g +s/"d\.get_bitfield=/"d\.bitfield=/g +s/"d\.get_base_path=/"d\.base_path=/g +s/"d\.get_base_filename=/"d\.base_filename=/g +s/"d\.get_name=/"d\.name=/g +s/"d\.get_creation_date=/"d\.creation_date=/g +s/"d\.get_peer_exchange=/"d\.peer_exchange=/g +s/"d\.get_up_rate=/"d\.up\.rate=/g +s/"d\.get_up_total=/"d\.up\.total=/g +s/"d\.get_down_rate=/"d\.down\.rate=/g +s/"d\.get_down_total=/"d\.down\.total=/g +s/"d\.get_skip_rate=/"d\.skip\.rate=/g +s/"d\.get_skip_total=/"d\.skip\.total=/g +s/"d\.get_bytes_done=/"d\.bytes_done=/g +s/"d\.get_chunk_size=/"d\.chunk_size=/g +s/"d\.get_chunks_hashed=/"d\.chunks_hashed=/g +s/"d\.get_complete=/"d\.complete=/g +s/"d\.get_completed_bytes=/"d\.completed_bytes=/g +s/"d\.get_completed_chunks=/"d\.completed_chunks=/g +s/"d\.get_connection_current=/"d\.connection_current=/g +s/"d\.get_connection_leech=/"d\.connection_leech=/g +s/"d\.get_connection_seed=/"d\.connection_seed=/g +s/"d\.get_custom=/"d\.custom=/g +s/"d\.get_custom1=/"d\.custom1=/g +s/"d\.get_custom2=/"d\.custom2=/g +s/"d\.get_custom3=/"d\.custom3=/g +s/"d\.get_custom4=/"d\.custom4=/g +s/"d\.get_custom5=/"d\.custom5=/g +s/"d\.get_custom_throw=/"d\.custom_throw=/g +s/"d\.get_directory=/"d\.directory=/g +s/"d\.get_directory_base=/"d\.directory_base=/g +s/"d\.get_free_diskspace=/"d\.free_diskspace=/g +s/"d\.get_hashing=/"d\.hashing=/g +s/"d\.get_hashing_failed=/"d\.hashing_failed=/g +s/"d\.get_ignore_commands=/"d\.ignore_commands=/g +s/"d\.get_left_bytes=/"d\.left_bytes=/g +s/"d\.get_loaded_file=/"d\.loaded_file=/g +s/"d\.get_max_file_size=/"d\.max_file_size=/g +s/"d\.get_max_size_pex=/"d\.max_size_pex=/g +s/"d\.get_message=/"d\.message=/g +s/"d\.get_mode=/"d\.mode=/g +s/"d\.get_peers_accounted=/"d\.peers_accounted=/g +s/"d\.get_peers_complete=/"d\.peers_complete=/g +s/"d\.get_peers_connected=/"d\.peers_connected=/g +s/"d\.get_peers_max=/"d\.peers_max=/g +s/"d\.get_peers_min=/"d\.peers_min=/g +s/"d\.get_peers_not_connected=/"d\.peers_not_connected=/g +s/"d\.get_priority=/"d\.priority=/g +s/"d\.get_priority_str=/"d\.priority_str=/g +s/"d\.get_ratio=/"d\.ratio=/g +s/"d\.get_size_bytes=/"d\.size_bytes=/g +s/"d\.get_size_chunks=/"d\.size_chunks=/g +s/"d\.get_size_files=/"d\.size_files=/g +s/"d\.get_size_pex=/"d\.size_pex=/g +s/"d\.get_state=/"d\.state=/g +s/"d\.get_state_changed=/"d\.state_changed=/g +s/"d\.get_state_counter=/"d\.state_counter=/g +s/"d\.get_throttle_name=/"d\.throttle_name=/g +s/"d\.get_tied_to_file=/"d\.tied_to_file=/g +s/"d\.get_tracker_focus=/"d\.tracker_focus=/g +s/"d\.get_tracker_numwant=/"d\.tracker_numwant=/g +s/"d\.get_tracker_size=/"d\.tracker_size=/g +s/"d\.get_uploads_max=/"d\.uploads_max=/g +s/"d\.set_connection_current=/"d\.connection_current\.set=/g +s/"d\.set_custom=/"d\.custom\.set=/g +s/"d\.set_custom1=/"d\.custom1\.set=/g +s/"d\.set_custom2=/"d\.custom2\.set=/g +s/"d\.set_custom3=/"d\.custom3\.set=/g +s/"d\.set_custom4=/"d\.custom4\.set=/g +s/"d\.set_custom5=/"d\.custom5\.set=/g +s/"d\.set_directory=/"d\.directory\.set=/g +s/"d\.set_directory_base=/"d\.directory_base\.set=/g +s/"d\.set_hashing_failed=/"d\.hashing_failed\.set=/g +s/"d\.set_ignore_commands=/"d\.ignore_commands\.set=/g +s/"d\.set_max_file_size=/"d\.max_file_size\.set=/g +s/"d\.set_message=/"d\.message\.set=/g +s/"d\.set_peers_max=/"d\.peers_max\.set=/g +s/"d\.set_peers_min=/"d\.peers_min\.set=/g +s/"d\.set_priority=/"d\.priority\.set=/g +s/"d\.set_throttle_name=/"d\.throttle_name\.set=/g +s/"d\.set_tied_to_file=/"d\.tied_to_file\.set=/g +s/"d\.set_tracker_numwant=/"d\.tracker_numwant\.set=/g +s/"d\.set_uploads_max=/"d\.uploads_max\.set=/g +s/"create_link=/"d\.create_link=/g +s/"delete_link=/"d\.delete_link=/g +s/"delete_tied=/"d\.delete_tied=/g +s/"t\.get_group=/"t\.group=/g +s/"t\.get_id=/"t\.id=/g +s/"t\.get_min_interval=/"t\.min_interval=/g +s/"t\.get_normal_interval=/"t\.normal_interval=/g +s/"t\.get_scrape_complete=/"t\.scrape_complete=/g +s/"t\.get_scrape_downloaded=/"t\.scrape_downloaded=/g +s/"t\.get_scrape_incomplete=/"t\.scrape_incomplete=/g +s/"t\.get_scrape_time_last=/"t\.scrape_time_last=/g +s/"t\.get_type=/"t\.type=/g +s/"t\.get_url=/"t\.url=/g +s/"t\.set_enabled=/"t\.is_enabled\.set=/g +s/"f\.get_completed_chunks=/"f\.completed_chunks=/g +s/"f\.get_frozen_path=/"f\.frozen_path=/g +s/"f\.get_last_touched=/"f\.last_touched=/g +s/"f\.get_match_depth_next=/"f\.match_depth_next=/g +s/"f\.get_match_depth_prev=/"f\.match_depth_prev=/g +s/"f\.get_offset=/"f\.offset=/g +s/"f\.get_path=/"f\.path=/g +s/"f\.get_path_components=/"f\.path_components=/g +s/"f\.get_path_depth=/"f\.path_depth=/g +s/"f\.get_priority=/"f\.priority=/g +s/"f\.get_range_first=/"f\.range_first=/g +s/"f\.get_range_second=/"f\.range_second=/g +s/"f\.get_size_bytes=/"f\.size_bytes=/g +s/"f\.get_size_chunks=/"f\.size_chunks=/g +s/"f\.set_priority=/"f\.priority\.set=/g +s/"fi\.get_filename_last=/"fi\.filename_last=/g +s/"p\.get_address=/"p\.address=/g +s/"p\.get_client_version=/"p\.client_version=/g +s/"p\.get_completed_percent=/"p\.completed_percent=/g +s/"p\.get_down_rate=/"p\.down_rate=/g +s/"p\.get_down_total=/"p\.down_total=/g +s/"p\.get_id=/"p\.id=/g +s/"p\.get_id_html=/"p\.id_html=/g +s/"p\.get_options_str=/"p\.options_str=/g +s/"p\.get_peer_rate=/"p\.peer_rate=/g +s/"p\.get_peer_total=/"p\.peer_total=/g +s/"p\.get_port=/"p\.port=/g +s/"p\.get_up_rate=/"p\.up_rate=/g +s/"p\.get_up_total=/"p\.up_total=/g +s/"system\.method\.insert=/"method\.insert=/g +s/"system\.method\.erase=/"method\.erase=/g +s/"system\.method\.get=/"method\.get=/g +s/"system\.method\.set=/"method\.set=/g +s/"system\.method\.list_keys=/"method\.list_keys=/g +s/"system\.method\.has_key=/"method\.has_key=/g +s/"system\.method\.set_key=/"method\.set_key=/g +s/"get_directory=/"directory\.default=/g +s/"set_directory=/"directory\.default\.set=/g +s/"get_session=/"session\.path=/g +s/"set_session=/"session\.path\.set=/g +s/"session_save=/"session\.save=/g +s/"get_name=/"session\.name=/g +s/"set_name=/"session\.name\.set=/g +s/"system\.file_allocate=/"system\.file\.allocate=/g +s/"system\.file_allocate\.set=/"system\.file\.allocate\.set=/g +s/"get_max_file_size=/"system\.file\.max_size=/g +s/"set_max_file_size=/"system\.file\.max_size\.set=/g +s/"get_split_file_size=/"system\.file\.split_size=/g +s/"set_split_file_size=/"system\.file\.split_size\.set=/g +s/"get_split_suffix=/"system\.file\.split_suffix=/g +s/"set_split_suffix=/"system\.file\.split_suffix\.set=/g +s/"get_timeout_sync=/"pieces\.sync\.timeout=/g +s/"set_timeout_sync=/"pieces\.sync\.timeout\.set=/g +s/"get_timeout_safe_sync=/"pieces\.sync\.timeout_safe=/g +s/"set_timeout_safe_sync=/"pieces\.sync\.timeout_safe\.set=/g +s/"get_preload_type=/"pieces\.preload\.type=/g +s/"get_preload_min_size=/"pieces\.preload\.min_size=/g +s/"get_preload_required_rate=/"pieces\.preload\.min_rate=/g +s/"set_preload_type=/"pieces\.preload\.type\.set=/g +s/"set_preload_min_size=/"pieces\.preload\.min_size\.set=/g +s/"set_preload_required_rate=/"pieces\.preload\.min_rate\.set=/g +s/"get_stats_preloaded=/"pieces\.stats_preloaded=/g +s/"get_stats_not_preloaded=/"pieces\.stats_not_preloaded=/g +s/"get_safe_sync=/"pieces\.sync\.always_safe=/g +s/"set_safe_sync=/"pieces\.sync\.always_safe\.set=/g +s/"get_memory_usage=/"pieces\.memory\.current=/g +s/"get_max_memory_usage=/"pieces\.memory\.max=/g +s/"set_max_memory_usage=/"pieces\.memory\.max\.set=/g +s/"load=/"load\.normal=/g +s/"load_verbose=/"load\.verbose=/g +s/"load_start=/"load\.start=/g +s/"load_start_verbose=/"load\.start_verbose=/g +s/"load_raw=/"load\.raw=/g +s/"load_raw_start=/"load\.raw_start=/g +s/"load_raw_verbose=/"load\.raw_verbose=/g +s/"get_connection_leech=/"protocol\.connection\.leech=/g +s/"get_connection_seed=/"protocol\.connection\.seed=/g +s/"set_connection_leech=/"protocol\.connection\.leech\.set=/g +s/"set_connection_seed=/"protocol\.connection\.seed\.set=/g +s/"throttle_up=/"throttle\.up=/g +s/"throttle_down=/"throttle\.down=/g +s/"throttle_ip=/"throttle\.ip=/g +s/"get_throttle_up_max=/"throttle\.up\.max=/g +s/"get_throttle_up_rate=/"throttle\.up\.rate=/g +s/"get_throttle_down_max=/"throttle\.down\.max=/g +s/"get_throttle_down_rate=/"throttle\.down\.rate=/g +s/"set_min_peers=/"throttle\.min_peers\.normal\.set=/g +s/"set_max_peers=/"throttle\.max_peers\.normal\.set=/g +s/"set_min_peers_seed=/"throttle\.min_peers\.seed\.set=/g +s/"set_max_peers_seed=/"throttle\.max_peers\.seed\.set=/g +s/"set_max_uploads=/"throttle\.max_uploads\.set=/g +s/"set_max_uploads_div=/"throttle\.max_uploads\.div\.set=/g +s/"set_max_uploads_global=/"throttle\.max_uploads\.global\.set=/g +s/"set_max_downloads_div=/"throttle\.max_downloads\.div\.set=/g +s/"set_max_downloads_global=/"throttle\.max_downloads\.global\.set=/g +s/"get_min_peers=/"throttle\.min_peers\.normal=/g +s/"get_max_peers=/"throttle\.max_peers\.normal=/g +s/"get_min_peers_seed=/"throttle\.min_peers\.seed=/g +s/"get_max_peers_seed=/"throttle\.max_peers\.seed=/g +s/"get_max_uploads=/"throttle\.max_uploads=/g +s/"get_max_uploads_div=/"throttle\.max_uploads\.div=/g +s/"get_max_uploads_global=/"throttle\.max_uploads\.global=/g +s/"get_max_downloads_div=/"throttle\.max_downloads\.div=/g +s/"get_max_downloads_global=/"throttle\.max_downloads\.global=/g +s/"get_up_rate=/"throttle\.global_up\.rate=/g +s/"get_up_total=/"throttle\.global_up\.total=/g +s/"get_upload_rate=/"throttle\.global_up\.max_rate=/g +s/"set_upload_rate=/"throttle\.global_up\.max_rate\.set=/g +s/"get_down_rate=/"throttle\.global_down\.rate=/g +s/"get_down_total=/"throttle\.global_down\.total=/g +s/"get_download_rate=/"throttle\.global_down\.max_rate=/g +s/"set_download_rate=/"throttle\.global_down\.max_rate\.set=/g +s/"get_send_buffer_size=/"network\.send_buffer\.size=/g +s/"set_send_buffer_size=/"network\.send_buffer\.size\.set=/g +s/"get_receive_buffer_size=/"network\.receive_buffer\.size=/g +s/"set_receive_buffer_size=/"network\.receive_buffer\.size\.set=/g +s/"set_bind=/"network\.bind_address\.set=/g +s/"get_bind=/"network\.bind_address=/g +s/"set_ip=/"network\.local_address\.set=/g +s/"get_ip=/"network\.local_address=/g +s/"get_port_range=/"network\.port_range=/g +s/"set_port_range=/"network\.port_range\.set=/g +s/"get_port_random=/"network\.port_random=/g +s/"set_port_random=/"network\.port_random\.set=/g +s/"port_open=/"network\.port_open\.set=/g +s/"get_port_open=/"network\.port_open=/g +s/"set_port_open=/"network\.port_open\.set=/g +s/"set_proxy_address=/"network\.proxy_address\.set=/g +s/"get_proxy_address=/"network\.proxy_address=/g +s/"scgi_port=/"network\.scgi\.open_port=/g +s/"scgi_local=/"network\.scgi\.open_local=/g +s/"scgi_dont_route=/"network\.scgi\.dont_route\.set=/g +s/"set_scgi_dont_route=/"network\.scgi\.dont_route\.set=/g +s/"get_scgi_dont_route=/"network\.scgi\.dont_route=/g +s/"get_max_open_sockets=/"network\.max_open_sockets=/g +s/"get_max_open_files=/"network\.max_open_files=/g +s/"set_max_open_files=/"network\.max_open_files\.set=/g +s/"xmlrpc_dialect=/"network\.xmlrpc\.dialect\.set=/g +s/"set_xmlrpc_dialect=/"network\.xmlrpc\.dialect\.set=/g +s/"xmlrpc_size_limit=/"network\.xmlrpc\.size_limit\.set=/g +s/"get_xmlrpc_size_limit=/"network\.xmlrpc\.size_limit=/g +s/"set_xmlrpc_size_limit=/"network\.xmlrpc\.size_limit\.set=/g +s/"http_capath=/"network\.http\.capath\.set=/g +s/"get_http_capath=/"network\.http\.capath=/g +s/"set_http_capath=/"network\.http\.capath\.set=/g +s/"http_cacert=/"network\.http\.cacert\.set=/g +s/"get_http_cacert=/"network\.http\.cacert=/g +s/"set_http_cacert=/"network\.http\.cacert\.set=/g +s/"get_max_open_http=/"network\.http\.max_open=/g +s/"set_max_open_http=/"network\.http\.max_open\.set=/g +s/"http_proxy=/"network\.http\.proxy_address\.set=/g +s/"get_http_proxy=/"network\.http\.proxy_address=/g +s/"set_http_proxy=/"network\.http\.proxy_address\.set=/g +s/"peer_exchange=/"protocol\.pex\.set=/g +s/"get_peer_exchange=/"protocol\.pex=/g +s/"set_peer_exchange=/"protocol\.pex\.set=/g +s/"tracker_numwant=/"trackers\.numwant\.set=/g +s/"get_tracker_numwant=/"trackers\.numwant=/g +s/"set_tracker_numwant=/"trackers\.numwant\.set=/g +s/"use_udp_trackers=/"trackers\.use_udp\.set=/g +s/"get_use_udp_trackers=/"trackers\.use_udp=/g +s/"set_use_udp_trackers=/"trackers\.use_udp\.set=/g +s/"dht_add_node=/"dht\.add_node=/g +s/"dht_statistics=/"dht\.statistics=/g +s/"get_dht_port=/"dht\.port=/g +s/"set_dht_port=/"dht\.port\.set=/g +s/"get_dht_throttle=/"dht\.throttle\.name=/g +s/"set_dht_throttle=/"dht\.throttle\.name\.set=/g +s/"get_session_lock=/"session\.use_lock=/g +s/"set_session_lock=/"session\.use_lock\.set=/g +s/"get_session_on_completion=/"session\.on_completion=/g +s/"set_session_on_completion=/"session\.on_completion\.set=/g +s/"get_check_hash=/"pieces\.hash\.on_completion=/g +s/"set_check_hash=/"pieces\.hash\.on_completion\.set=/g +s/"view_add=/"view\.add=/g +s/"view_filter=/"view\.filter=/g +s/"view_filter_on=/"view\.filter_on=/g +s/"view_list=/"view\.list=/g +s/"view_set=/"view\.set=/g +s/"view_sort=/"view\.sort=/g +s/"view_sort_current=/"view\.sort_current=/g +s/"view_sort_new=/"view\.sort_new=/g +s/"execute_throw=/"execute\.throw=/g +s/"execute_nothrow=/"execute\.nothrow=/g +s/"execute_raw=/"execute\.raw=/g +s/"execute_raw_nothrow=/"execute\.raw_nothrow=/g +s/"execute_capture=/"execute\.capture=/g +s/"execute_capture_nothrow=/"execute\.capture_nothrow=/g +s/"execute=/"execute2=/g