1 /*
2  * This file Copyright (C) 2008-2014 Mnemosyne LLC
3  *
4  * It may be used under the GNU GPL versions 2 or 3
5  * or any future license endorsed by Mnemosyne LLC.
6  *
7  */
8 
9 #pragma once
10 
11 #ifndef __TRANSMISSION__
12 #error only libtransmission should #include this header.
13 #endif
14 
15 #include "variant.h"
16 
17 typedef struct tr_rpc_server tr_rpc_server;
18 
19 tr_rpc_server* tr_rpcInit(tr_session* session, tr_variant* settings);
20 
21 void tr_rpcClose(tr_rpc_server** freeme);
22 
23 void tr_rpcSetEnabled(tr_rpc_server* server, bool isEnabled);
24 
25 bool tr_rpcIsEnabled(tr_rpc_server const* server);
26 
27 void tr_rpcSetPort(tr_rpc_server* server, tr_port port);
28 
29 tr_port tr_rpcGetPort(tr_rpc_server const* server);
30 
31 void tr_rpcSetUrl(tr_rpc_server* server, char const* url);
32 
33 char const* tr_rpcGetUrl(tr_rpc_server const* server);
34 
35 int tr_rpcSetTest(tr_rpc_server const* server, char const* whitelist, char** allocme_errmsg);
36 
37 void tr_rpcSetWhitelistEnabled(tr_rpc_server* server, bool isEnabled);
38 
39 bool tr_rpcGetWhitelistEnabled(tr_rpc_server const* server);
40 
41 void tr_rpcSetWhitelist(tr_rpc_server* server, char const* whitelist);
42 
43 char const* tr_rpcGetWhitelist(tr_rpc_server const* server);
44 
45 void tr_rpcSetHostWhitelistEnabled(tr_rpc_server* server, bool isEnabled);
46 
47 void tr_rpcSetHostWhitelist(tr_rpc_server* server, char const* whitelist);
48 
49 void tr_rpcSetPassword(tr_rpc_server* server, char const* password);
50 
51 char const* tr_rpcGetPassword(tr_rpc_server const* server);
52 
53 void tr_rpcSetUsername(tr_rpc_server* server, char const* username);
54 
55 char const* tr_rpcGetUsername(tr_rpc_server const* server);
56 
57 void tr_rpcSetPasswordEnabled(tr_rpc_server* server, bool isEnabled);
58 
59 bool tr_rpcIsPasswordEnabled(tr_rpc_server const* session);
60 
61 char const* tr_rpcGetBindAddress(tr_rpc_server const* server);
62