1/* 2 * This file Copyright (C) Mnemosyne LLC 3 * 4 * This file is licensed by the GPL version 2. Works owned by the 5 * Transmission project are granted a special exemption to clause 2(b) 6 * so that the bulk of its code can remain under the MIT license. 7 * This exemption does not extend to derived works not owned by 8 * the Transmission project. 9 * 10 * $Id: rpc-server.h 12204 2011-03-22 15:19:54Z jordan $ 11 */ 12 13#ifndef __TRANSMISSION__ 14#error only libtransmission should #include this header. 15#endif 16 17#ifndef TR_RPC_SERVER_H 18#define TR_RPC_SERVER_H 19 20typedef struct tr_rpc_server tr_rpc_server; 21 22tr_rpc_server * tr_rpcInit( tr_session * session, 23 tr_benc * settings ); 24 25void tr_rpcClose( tr_rpc_server ** freeme ); 26 27void tr_rpcSetEnabled( tr_rpc_server * server, bool isEnabled ); 28 29bool tr_rpcIsEnabled( const tr_rpc_server * server ); 30 31void tr_rpcSetPort( tr_rpc_server * server, tr_port port ); 32 33tr_port tr_rpcGetPort( const tr_rpc_server * server ); 34 35void tr_rpcSetUrl( tr_rpc_server * server, const char * url ); 36 37const char * tr_rpcGetUrl( const tr_rpc_server * server ); 38 39int tr_rpcSetTest( const tr_rpc_server * server, 40 const char * whitelist, 41 char ** allocme_errmsg ); 42 43void tr_rpcSetWhitelistEnabled( tr_rpc_server * server, 44 bool isEnabled ); 45 46bool tr_rpcGetWhitelistEnabled( const tr_rpc_server * server ); 47 48void tr_rpcSetWhitelist( tr_rpc_server * server, 49 const char * whitelist ); 50 51const char* tr_rpcGetWhitelist( const tr_rpc_server * server ); 52 53void tr_rpcSetPassword( tr_rpc_server * server, 54 const char * password ); 55 56const char* tr_rpcGetPassword( const tr_rpc_server * server ); 57 58void tr_rpcSetUsername( tr_rpc_server * server, 59 const char * username ); 60 61const char* tr_rpcGetUsername( const tr_rpc_server * server ); 62 63void tr_rpcSetPasswordEnabled( tr_rpc_server * server, bool isEnabled ); 64 65bool tr_rpcIsPasswordEnabled( const tr_rpc_server * session ); 66 67const char* tr_rpcGetBindAddress( const tr_rpc_server * server ); 68 69#endif 70