Changeset 6336 for trunk/libtransmission/rpc-server.c
- Timestamp:
- Jul 15, 2008, 7:25:46 PM (14 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/libtransmission/rpc-server.c
r6334 r6336 113 113 if( body ) 114 114 { 115 int err;116 tr_ctor * ctor;115 char * b64, *json, *freeme; 116 int json_len; 117 117 size_t body_len; 118 tr_benc top, *args; 119 118 120 body += 4; 119 121 body_len = part_len - ( body - text ); 120 122 if( body_len >= 2 && !memcmp(&body[body_len-2],"\r\n",2) ) 121 123 body_len -= 2; 122 123 ctor = tr_ctorNew( s->session ); 124 tr_ctorSetMetainfo( ctor, (void*)body, body_len ); 125 tr_ctorSetPaused( ctor, TR_FORCE, paused ); 126 tr_torrentNew( s->session, ctor, &err ); 127 tr_ctorFree( ctor ); 124 125 tr_bencInitDict( &top, 2 ); 126 args = tr_bencDictAddDict( &top, "arguments", 2 ); 127 tr_bencDictAddStr( &top, "method", "torrent-add" ); 128 b64 = tr_base64_encode( body, body_len, NULL ); 129 tr_bencDictAddStr( args, "metainfo", b64 ); 130 tr_bencDictAddInt( args, "paused", paused ); 131 json = tr_bencSaveAsJSON( &top, &json_len ); 132 freeme = tr_rpc_request_exec_json( s->session, json, json_len, NULL ); 133 134 tr_free( freeme ); 135 tr_free( json ); 136 tr_free( b64 ); 137 tr_bencFree( &top ); 128 138 } 129 139 }
Note: See TracChangeset
for help on using the changeset viewer.