summaryrefslogtreecommitdiff
path: root/src/requests.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/requests.c')
-rw-r--r--src/requests.c22
1 files changed, 21 insertions, 1 deletions
diff --git a/src/requests.c b/src/requests.c
index 95be1d7..4e044ab 100644
--- a/src/requests.c
+++ b/src/requests.c
@@ -17,6 +17,10 @@
* 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
*/
+#ifdef HAVE_CONFIG_H
+#include "config.h"
+#endif
+
#include <stdio.h>
#include <glib/gstdio.h>
@@ -180,6 +184,7 @@ JsonNode *torrent_get(gint64 id)
json_array_add_string_element(fields, FIELD_ADDED_DATE);
json_array_add_string_element(fields, FIELD_DOWNLOADEDEVER);
json_array_add_string_element(fields, FIELD_UPLOADEDEVER);
+ json_array_add_string_element(fields, FIELD_CORRUPTEVER);
json_array_add_string_element(fields, FIELD_SIZEWHENDONE);
json_array_add_string_element(fields, FIELD_QUEUE_POSITION);
json_array_add_string_element(fields, FIELD_ID);
@@ -227,7 +232,22 @@ JsonNode *torrent_add_url(const gchar * url, gboolean paused)
return root;
}
-JsonNode *torrent_add(gchar * target, gint flags)
+JsonNode *torrent_add_from_response(trg_response *response, gint flags) {
+ JsonNode *root = base_request(METHOD_TORRENT_ADD);
+ JsonObject *args = node_get_arguments(root);
+ gchar *encoded = g_base64_encode((guchar *)response->raw, response->size);
+
+ json_object_set_string_member(args, PARAM_METAINFO,
+ encoded);
+ g_free(encoded);
+
+ json_object_set_boolean_member(args, PARAM_PAUSED,
+ (flags & TORRENT_ADD_FLAG_PAUSED));
+
+ return root;
+}
+
+JsonNode *torrent_add_from_file(gchar * target, gint flags)
{
JsonNode *root;
JsonObject *args;