gnunet-svn
[Top][All Lists]
Advanced

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

[GNUnet-SVN] [taler-merchant] branch master updated (a7a5ffd -> 7eba0bc)


From: gnunet
Subject: [GNUnet-SVN] [taler-merchant] branch master updated (a7a5ffd -> 7eba0bc)
Date: Mon, 26 Aug 2019 01:28:43 +0200

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

dold pushed a change to branch master
in repository merchant.

    from a7a5ffd  fix wrong use of GNUNET_PQ_query_param_auto_from_type
     new 42d19f3  payment_redirect_url -> fallback_request_payment_url
     new 7eba0bc  do not consider an order paid if last session id does not 
match

The 2 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails.  The revisions
listed as "add" were already present in the repository and have only
been added to this reference.


Summary of changes:
 src/backend/taler-merchant-httpd_check-payment.c | 19 ++++++++++++++++++-
 src/include/taler_merchant_service.h             |  4 ++--
 src/lib/merchant_api_check_payment.c             |  8 ++++----
 src/lib/test_merchant_api_twisted.c              |  2 +-
 src/lib/testing_api_cmd_pay.c                    |  6 +++---
 5 files changed, 28 insertions(+), 11 deletions(-)

diff --git a/src/backend/taler-merchant-httpd_check-payment.c 
b/src/backend/taler-merchant-httpd_check-payment.c
index f001195..b0d380f 100644
--- a/src/backend/taler-merchant-httpd_check-payment.c
+++ b/src/backend/taler-merchant-httpd_check-payment.c
@@ -123,7 +123,7 @@ send_pay_request (struct MHD_Connection *connection,
   ret = TMH_RESPONSE_reply_json_pack (connection,
                                       MHD_HTTP_OK,
                                       "{s:s, s:s, s:b, s:s?}",
-                                      "payment_redirect_url",
+                                      "fallback_request_payment_url",
                                       url,
                                       "contract_url",
                                       final_contract_url,
@@ -290,6 +290,7 @@ MH_handler_check_payment (struct TMH_RequestHandler *rh,
   session_id = MHD_lookup_connection_value (connection,
                                                 MHD_GET_ARGUMENT_KIND,
                                                 "session_id");
+
   session_sig_str = MHD_lookup_connection_value (connection,
                                                 MHD_GET_ARGUMENT_KIND,
                                                 "session_sig");
@@ -362,6 +363,22 @@ MH_handler_check_payment (struct TMH_RequestHandler *rh,
   GNUNET_assert (NULL != contract_terms);
   GNUNET_assert (NULL != last_session_id);
 
+  if ( (NULL != session_id) && (0 != strcmp (session_id, last_session_id)) )
+  {
+
+    ret = send_pay_request (connection,
+                            final_contract_url,
+                            session_id,
+                            resource_url,
+                            h_contract_terms_str,
+                            mi);
+
+    json_decref (contract_terms);
+    GNUNET_free (last_session_id);
+    GNUNET_free (final_contract_url);
+    return ret;
+  }
+
   if (GNUNET_OK !=
       TALER_JSON_hash (contract_terms,
                        &h_contract_terms))
diff --git a/src/include/taler_merchant_service.h 
b/src/include/taler_merchant_service.h
index 3005963..46e6ec9 100644
--- a/src/include/taler_merchant_service.h
+++ b/src/include/taler_merchant_service.h
@@ -963,7 +963,7 @@ struct TALER_MERCHANT_CheckPaymentOperation;
  *        #GNUNET_NO if refunded, #GNUNET_SYSERR or error
  * @param refunded_amount amount that was refunded, NULL if there
  *        was no refund
- * @param payment_redirect_url URL to redirect the browser to in order to
+ * @param fallback_request_payment_url URL to redirect the browser to in order 
to
  *        execute or re-play the payment (NULL if not applicable)
  */
 typedef void
@@ -973,7 +973,7 @@ typedef void
                                         int paid,
                                         int refunded,
                                         struct TALER_Amount *refund_amount,
-                                        const char *payment_redirect_url);
+                                        const char 
*fallback_request_payment_url);
 
 
 /**
diff --git a/src/lib/merchant_api_check_payment.c 
b/src/lib/merchant_api_check_payment.c
index eb5c420..4605f47 100644
--- a/src/lib/merchant_api_check_payment.c
+++ b/src/lib/merchant_api_check_payment.c
@@ -111,11 +111,11 @@ handle_check_payment_finished (void *cls,
 
   if (! json_boolean_value (json_object_get (json, "paid")))
   {
-    const char *payment_redirect_url = json_string_value (json_object_get 
(json, "payment_redirect_url"));
-    if (NULL == payment_redirect_url)
+    const char *fallback_request_payment_url = json_string_value 
(json_object_get (json, "fallback_request_payment_url"));
+    if (NULL == fallback_request_payment_url)
     {
       GNUNET_log (GNUNET_ERROR_TYPE_WARNING,
-                  "no payment_redirect_url in unpaid check-payment 
response\n");
+                  "no fallback_request_payment_url in unpaid check-payment 
response\n");
       GNUNET_break_op (0);
       cpo->cb (cpo->cb_cls,
                0,
@@ -131,7 +131,7 @@ handle_check_payment_finished (void *cls,
                GNUNET_NO,
                GNUNET_NO,
                &refund_amount,
-               payment_redirect_url);
+               fallback_request_payment_url);
     }
     TALER_MERCHANT_check_payment_cancel (cpo);
     return;
diff --git a/src/lib/test_merchant_api_twisted.c 
b/src/lib/test_merchant_api_twisted.c
index f5403bf..9646fd1 100644
--- a/src/lib/test_merchant_api_twisted.c
+++ b/src/lib/test_merchant_api_twisted.c
@@ -303,7 +303,7 @@ run (void *cls,
 
     TALER_TESTING_cmd_delete_object ("hack-check-payment-0",
                                      PROXY_MERCHANT_CONFIG_FILE,
-                                     "payment_redirect_url"),
+                                     "fallback_request_payment_url"),
     TALER_TESTING_cmd_check_payment
       ("check-payment-fail-invalid",
        twister_merchant_url,
diff --git a/src/lib/testing_api_cmd_pay.c b/src/lib/testing_api_cmd_pay.c
index 68e8b22..a9947a5 100644
--- a/src/lib/testing_api_cmd_pay.c
+++ b/src/lib/testing_api_cmd_pay.c
@@ -316,7 +316,7 @@ check_payment_cleanup (void *cls,
  *        refunded (not refunded).
  * @param refund_amount the amount that was refunded to this
  *        contract.
- * @param payment_redirect_url URL where the payment has to be
+ * @param fallback_request_payment_url URL where the payment has to be
  *        addressed.
  */
 static void
@@ -326,7 +326,7 @@ check_payment_cb (void *cls,
                   int paid,
                   int refunded,
                   struct TALER_Amount *refund_amount,
-                  const char *payment_redirect_url)
+                  const char *fallback_request_payment_url)
 {
   struct CheckPaymentState *cps = cls;
 
@@ -341,7 +341,7 @@ check_payment_cb (void *cls,
               paid);
   GNUNET_log (GNUNET_ERROR_TYPE_INFO,
               "check payment: url: %s\n",
-              payment_redirect_url);
+              fallback_request_payment_url);
 
   if (paid != cps->expect_paid)
     TALER_TESTING_FAIL (cps->is);

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



reply via email to

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