gnunet-svn
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[GNUnet-SVN] [taler-exchange] branch master updated: hack in bank-lib co


From: gnunet
Subject: [GNUnet-SVN] [taler-exchange] branch master updated: hack in bank-lib compression
Date: Sun, 12 May 2019 22:00:02 +0200

This is an automated email from the git hooks/post-receive script.

dold pushed a commit to branch master
in repository exchange.

The following commit(s) were added to refs/heads/master by this push:
     new 7fa67030 hack in bank-lib compression
7fa67030 is described below

commit 7fa67030a85a2113067d3637cfda5b5a4c8a2a12
Author: Florian Dold <address@hidden>
AuthorDate: Sun May 12 21:59:55 2019 +0200

    hack in bank-lib compression
---
 src/bank-lib/Makefile.am      |  3 ++-
 src/bank-lib/bank_api_admin.c | 61 ++++++++++++++-----------------------------
 2 files changed, 22 insertions(+), 42 deletions(-)

diff --git a/src/bank-lib/Makefile.am b/src/bank-lib/Makefile.am
index 0858efb3..2678884b 100644
--- a/src/bank-lib/Makefile.am
+++ b/src/bank-lib/Makefile.am
@@ -42,7 +42,8 @@ libtalerbank_la_SOURCES = \
   bank_api_common.c bank_api_common.h \
   bank_api_history.c \
   bank_api_reject.c \
-  bank_api_parse.c
+  bank_api_parse.c \
+  ../lib/teah_common.c # FIXME: ugly hack!!
 
 libtalerbank_la_LIBADD = \
   $(top_builddir)/src/json/libtalerjson.la \
diff --git a/src/bank-lib/bank_api_admin.c b/src/bank-lib/bank_api_admin.c
index 8eff229f..d019a7e1 100644
--- a/src/bank-lib/bank_api_admin.c
+++ b/src/bank-lib/bank_api_admin.c
@@ -23,6 +23,8 @@
 #include "bank_api_common.h"
 #include <microhttpd.h> /* just for HTTP status codes */
 #include "taler_signatures.h"
+// FIXME(dold): temporary hack
+#include "../lib/teah_common.h"
 
 
 /**
@@ -37,9 +39,9 @@ struct TALER_BANK_AdminAddIncomingHandle
   char *request_url;
 
   /**
-   * JSON encoding of the request to POST.
+   * POST context.
    */
-  char *json_enc;
+  struct TEAH_PostContext *post_ctx;
 
   /**
    * Handle for the request.
@@ -47,11 +49,6 @@ struct TALER_BANK_AdminAddIncomingHandle
   struct GNUNET_CURL_Job *job;
 
   /**
-   * HTTP authentication-related headers for the request.
-   */
-  struct curl_slist *authh;
-
-  /**
    * Function to call with the result.
    */
   TALER_BANK_AdminAddIncomingResultCallback cb;
@@ -192,6 +189,7 @@ TALER_BANK_admin_add_incoming (struct GNUNET_CURL_Context 
*ctx,
   struct TALER_BANK_AdminAddIncomingHandle *aai;
   json_t *admin_obj;
   CURL *eh;
+  struct curl_slist *headers = NULL;
 
   if (NULL == exchange_base_url)
   {
@@ -215,45 +213,28 @@ TALER_BANK_admin_add_incoming (struct GNUNET_CURL_Context 
*ctx,
   aai->cb_cls = res_cb_cls;
   aai->request_url = TALER_BANK_path_to_url_ (bank_base_url,
                                               "/admin/add/incoming");
-  aai->authh = TALER_BANK_make_auth_header_ (auth);
-  /* Append content type header here, can't do it in GNUNET_CURL_job_add
-     as that would override the CURLOPT_HTTPHEADER instead of appending. */
-  {
-    struct curl_slist *ext;
+  headers = TALER_BANK_make_auth_header_ (auth);
 
-    ext = curl_slist_append (aai->authh,
-                             "Content-Type: application/json");
-    if (NULL == ext)
-      GNUNET_break (0);
-    else
-      aai->authh = ext;
-  }
+  GNUNET_assert (NULL !=
+                 (headers = curl_slist_append (headers,
+                                               "Content-Type: 
application/json")));
   eh = curl_easy_init ();
-  GNUNET_assert (NULL != (aai->json_enc =
-                          json_dumps (admin_obj,
-                                      JSON_COMPACT)));
+
+  GNUNET_assert (GNUNET_OK ==
+                 TEAH_curl_easy_post (aai->post_ctx, eh, admin_obj));
+
   json_decref (admin_obj);
-  GNUNET_assert (CURLE_OK ==
-                 curl_easy_setopt (eh,
-                                   CURLOPT_HTTPHEADER,
-                                   aai->authh));
+
   GNUNET_assert (CURLE_OK ==
                  curl_easy_setopt (eh,
                                    CURLOPT_URL,
                                    aai->request_url));
-  GNUNET_assert (CURLE_OK ==
-                 curl_easy_setopt (eh,
-                                   CURLOPT_POSTFIELDS,
-                                   aai->json_enc));
-  GNUNET_assert (CURLE_OK ==
-                 curl_easy_setopt (eh,
-                                   CURLOPT_POSTFIELDSIZE,
-                                   strlen (aai->json_enc)));
-  aai->job = GNUNET_CURL_job_add (ctx,
-                                  eh,
-                                  GNUNET_NO,
-                                  &handle_admin_add_incoming_finished,
-                                  aai);
+
+  aai->job = GNUNET_CURL_job_add2 (ctx,
+                                   eh,
+                                   headers,
+                                   &handle_admin_add_incoming_finished,
+                                   aai);
   return aai;
 }
 
@@ -272,9 +253,7 @@ TALER_BANK_admin_add_incoming_cancel (struct 
TALER_BANK_AdminAddIncomingHandle *
     GNUNET_CURL_job_cancel (aai->job);
     aai->job = NULL;
   }
-  curl_slist_free_all (aai->authh);
   GNUNET_free (aai->request_url);
-  GNUNET_free (aai->json_enc);
   GNUNET_free (aai);
 }
 

-- 
To stop receiving notification emails like this one, please contact
address@hidden



reply via email to

[Prev in Thread] Current Thread [Next in Thread]