[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[taler-merchant] branch master updated: rename stuff, move stuff, fix FT
From: |
gnunet |
Subject: |
[taler-merchant] branch master updated: rename stuff, move stuff, fix FTBFS with donau |
Date: |
Fri, 27 Dec 2024 17:22:38 +0100 |
This is an automated email from the git hooks/post-receive script.
grothoff pushed a commit to branch master
in repository merchant.
The following commit(s) were added to refs/heads/master by this push:
new 22f87970 rename stuff, move stuff, fix FTBFS with donau
22f87970 is described below
commit 22f879704438bea407108e49e842741e07549180
Author: Christian Grothoff <christian@grothoff.org>
AuthorDate: Fri Dec 27 14:21:35 2024 +0100
rename stuff, move stuff, fix FTBFS with donau
---
src/backend/taler-merchant-httpd_contract.c | 60 +--
src/backend/taler-merchant-httpd_contract.h | 587 +--------------------
.../taler-merchant-httpd_post-orders-ID-pay.c | 50 +-
.../taler-merchant-httpd_private-post-orders.c | 121 +++--
src/include/taler_merchant_util.h | 3 +-
5 files changed, 140 insertions(+), 681 deletions(-)
diff --git a/src/backend/taler-merchant-httpd_contract.c
b/src/backend/taler-merchant-httpd_contract.c
index a3547a56..d7dcdcba 100644
--- a/src/backend/taler-merchant-httpd_contract.c
+++ b/src/backend/taler-merchant-httpd_contract.c
@@ -26,39 +26,39 @@
#include "taler-merchant-httpd_contract.h"
-enum TALER_MerchantContractInputType
+enum TALER_MERCHANT_ContractInputType
TMH_contract_input_type_from_string (const char *str)
{
/* For now, only 'token' is the only supported option. */
if (0 == strcmp ("token", str))
{
- return TALER_MCIT_TOKEN;
+ return TALER_MERCHANT_CONTRACT_INPUT_TYPE_TOKEN;
}
- return TALER_MCIT_INVALID;
+ return TALER_MERCHANT_CONTRACT_INPUT_TYPE_INVALID;
}
-enum TALER_MerchantContractOutputType
+enum TALER_MERCHANT_ContractOutputType
TMH_contract_output_type_from_string (const char *str)
{
/* For now, only 'token' is the only supported option. */
if (0 == strcmp ("token", str))
{
- return TALER_MCOT_TOKEN;
+ return TALER_MERCHANT_CONTRACT_OUTPUT_TYPE_TOKEN;
}
- return TALER_MCOT_INVALID;
+ return TALER_MERCHANT_CONTRACT_OUTPUT_TYPE_INVALID;
}
const char *
-TMH_string_from_contract_input_type (enum TALER_MerchantContractInputType t)
+TMH_string_from_contract_input_type (enum TALER_MERCHANT_ContractInputType t)
{
switch (t)
{
- case TALER_MCIT_TOKEN:
+ case TALER_MERCHANT_CONTRACT_INPUT_TYPE_TOKEN:
return "token";
- case TALER_MCIT_COIN:
+ case TALER_MERCHANT_CONTRACT_INPUT_TYPE_COIN:
return "coin";
default:
return "invalid";
@@ -67,16 +67,16 @@ TMH_string_from_contract_input_type (enum
TALER_MerchantContractInputType t)
const char *
-TMH_string_from_contract_output_type (enum TALER_MerchantContractOutputType t)
+TMH_string_from_contract_output_type (enum TALER_MERCHANT_ContractOutputType t)
{
switch (t)
{
- case TALER_MCOT_TOKEN:
+ case TALER_MERCHANT_CONTRACT_OUTPUT_TYPE_TOKEN:
return "token";
- case TALER_MCOT_COIN:
+ case TALER_MERCHANT_CONTRACT_OUTPUT_TYPE_COIN:
return "coin";
- case TALER_MCOT_TAX_RECEIPT:
- return "tax_receipt";
+ case TALER_MERCHANT_CONTRACT_OUTPUT_TYPE_DONATION_RECEIPT:
+ return "donation_receipt";
default:
return "invalid";
}
@@ -96,7 +96,7 @@ parse_choices (void *cls,
json_t *root,
struct GNUNET_JSON_Specification *ospec)
{
- struct TALER_MerchantContractChoice **choices = ospec->ptr;
+ struct TALER_MERCHANT_ContractChoice **choices = ospec->ptr;
unsigned int *choices_len = cls;
if (! json_is_array (root))
@@ -111,7 +111,7 @@ parse_choices (void *cls,
for (unsigned int i = 0; i<*choices_len; i++)
{
- struct TALER_MerchantContractChoice *choice = &(*choices)[i];
+ struct TALER_MERCHANT_ContractChoice *choice = &(*choices)[i];
const json_t *jinputs;
const json_t *joutputs;
struct GNUNET_JSON_Specification spec[] = {
@@ -150,7 +150,7 @@ parse_choices (void *cls,
size_t idx;
json_array_foreach ((json_t *) jinputs, idx, jinput)
{
- struct TALER_MerchantContractInput input = {
+ struct TALER_MERCHANT_ContractInput input = {
.details.token.count = 1
};
const char *kind;
@@ -185,7 +185,7 @@ parse_choices (void *cls,
input.type = TMH_contract_input_type_from_string (kind);
- if (TALER_MCIT_INVALID == input.type)
+ if (TALER_MERCHANT_CONTRACT_INPUT_TYPE_INVALID == input.type)
{
GNUNET_log (GNUNET_ERROR_TYPE_WARNING,
"Field 'kind' invalid in input #%u\n",
@@ -211,7 +211,7 @@ parse_choices (void *cls,
size_t idx;
json_array_foreach ((json_t *) joutputs, idx, joutput)
{
- struct TALER_MerchantContractOutput output = {
+ struct TALER_MERCHANT_ContractOutput output = {
.details.token.count = 1
};
const char *kind;
@@ -249,7 +249,7 @@ parse_choices (void *cls,
output.details.token.key_index = ki;
output.type = TMH_contract_output_type_from_string (kind);
- if (TALER_MCOT_INVALID == output.type)
+ if (TALER_MERCHANT_CONTRACT_OUTPUT_TYPE_INVALID == output.type)
{
GNUNET_log (GNUNET_ERROR_TYPE_WARNING,
"Field 'kind' invalid in output #%u\n",
@@ -276,7 +276,7 @@ parse_choices (void *cls,
struct GNUNET_JSON_Specification
TALER_JSON_spec_choices (const char *name,
- struct TALER_MerchantContractChoice **choices,
+ struct TALER_MERCHANT_ContractChoice **choices,
unsigned int *choices_len)
{
struct GNUNET_JSON_Specification ret = {
@@ -304,7 +304,7 @@ parse_token_families (void *cls,
json_t *root,
struct GNUNET_JSON_Specification *ospec)
{
- struct TALER_MerchantContractTokenFamily **families = ospec->ptr;
+ struct TALER_MERCHANT_ContractTokenFamily **families = ospec->ptr;
unsigned int *families_len = cls;
json_t *jfamily;
const char *slug;
@@ -317,7 +317,7 @@ parse_token_families (void *cls,
json_object_foreach (root, slug, jfamily)
{
const json_t *keys;
- struct TALER_MerchantContractTokenFamily family = {
+ struct TALER_MERCHANT_ContractTokenFamily family = {
.slug = GNUNET_strdup (slug)
};
struct GNUNET_JSON_Specification spec[] = {
@@ -350,7 +350,7 @@ parse_token_families (void *cls,
for (unsigned int i = 0; i<family.keys_len; i++)
{
- struct TALER_MerchantContractTokenFamilyKey *key = &family.keys[i];
+ struct TALER_MERCHANT_ContractTokenFamilyKey *key = &family.keys[i];
struct GNUNET_JSON_Specification key_spec[] = {
TALER_JSON_spec_token_pub (
"public_key",
@@ -393,7 +393,7 @@ parse_token_families (void *cls,
struct GNUNET_JSON_Specification
TALER_JSON_spec_token_families (
const char *name,
- struct TALER_MerchantContractTokenFamily **families,
+ struct TALER_MERCHANT_ContractTokenFamily **families,
unsigned int *families_len)
{
struct GNUNET_JSON_Specification ret = {
@@ -411,14 +411,14 @@ enum GNUNET_GenericReturnValue
TMH_find_token_family_key (
const char *slug,
struct GNUNET_TIME_Timestamp valid_after,
- const struct TALER_MerchantContractTokenFamily *families,
+ const struct TALER_MERCHANT_ContractTokenFamily *families,
unsigned int families_len,
- struct TALER_MerchantContractTokenFamily *family,
- struct TALER_MerchantContractTokenFamilyKey *key)
+ struct TALER_MERCHANT_ContractTokenFamily *family,
+ struct TALER_MERCHANT_ContractTokenFamilyKey *key)
{
for (unsigned int i = 0; i < families_len; i++)
{
- const struct TALER_MerchantContractTokenFamily *fami
+ const struct TALER_MERCHANT_ContractTokenFamily *fami
= &families[i];
if (0 != strcmp (fami->slug,
@@ -428,7 +428,7 @@ TMH_find_token_family_key (
*family = *fami;
for (unsigned int k = 0; k < fami->keys_len; k++)
{
- struct TALER_MerchantContractTokenFamilyKey *ki = &fami->keys[k];
+ struct TALER_MERCHANT_ContractTokenFamilyKey *ki = &fami->keys[k];
if (GNUNET_TIME_timestamp_cmp (ki->valid_after,
==,
diff --git a/src/backend/taler-merchant-httpd_contract.h
b/src/backend/taler-merchant-httpd_contract.h
index 182e7732..751a59ef 100644
--- a/src/backend/taler-merchant-httpd_contract.h
+++ b/src/backend/taler-merchant-httpd_contract.h
@@ -24,585 +24,24 @@
#include "taler-merchant-httpd.h"
#include <gnunet/gnunet_common.h>
#include <gnunet/gnunet_time_lib.h>
+#include "taler_merchant_util.h"
#include <jansson.h>
-/**
- * Possible versions of the contract terms.
- */
-enum TALER_MerchantContractVersion
-{
-
- /**
- * Version 0
- */
- TALER_MCV_V0 = 0,
-
- /**
- * Version 1
- */
- TALER_MCV_V1 = 1
-};
-
-/**
- * Possible token kinds.
- */
-enum TALER_MerchantContractTokenKind
-{
-
- /**
- * Subscription token kind
- */
- TALER_MCTK_SUBSCRIPTION = 0,
-
- /**
- * Discount token kind
- */
- TALER_MCTK_DISCOUNT = 1
-};
-
-/**
- * Possible input types for the contract terms.
- */
-enum TALER_MerchantContractInputType
-{
-
- /**
- * Input type invalid
- */
- TALER_MCIT_INVALID = 0,
-
- /**
- * Input type coin
- */
- TALER_MCIT_COIN = 1,
-
- /**
- * Input type token
- */
- TALER_MCIT_TOKEN = 2
-};
-
-/**
- * Contract input (part of the v1 contract terms).
- */
-struct TALER_MerchantContractInput
-{
- /**
- * Type of the input.
- */
- enum TALER_MerchantContractInputType type;
-
- union
- {
- /**
- * Coin-based input (ration). (Future work, only here for reference)
- */
- // struct
- // {
- // /**
- // * Price to be paid.
- // */
- // struct TALER_Amount price;
-
- // /**
- // * Base URL of the ration authority.
- // */
- // const char *ration_authority_url;
- // } coin;
-
- /**
- * Token-based input.
- */
- struct
- {
- /**
- * Slug of the token family to be used.
- */
- const char *token_family_slug;
-
- /**
- * Number of tokens of this type required. Defaults to one if the
- * field is not provided.
- */
- unsigned int count;
- } token;
- } details;
-};
-
-/**
- * Possible output types for the contract terms.
- */
-enum TALER_MerchantContractOutputType
-{
-
- /**
- * Invalid output type
- */
- TALER_MCOT_INVALID = 0,
-
- /**
- * Output type coin
- */
- TALER_MCOT_COIN = 1,
-
- /**
- * Output type token
- */
- TALER_MCOT_TOKEN = 2,
-
- /**
- * Output type tax-receipt
- */
- TALER_MCOT_TAX_RECEIPT = 3
-
-};
-
-/**
- * Contract output (part of the v1 contract terms).
- */
-struct TALER_MerchantContractOutput
-{
- /**
- * Type of the output.
- */
- enum TALER_MerchantContractOutputType type;
-
- union
- {
- /**
- * Coin-based output.
- */
- struct
- {
- /**
- * Coins that will be yielded. This excludes any applicable withdraw
fees.
- */
- struct TALER_Amount brutto_yield;
-
- /**
- * Base URL of the exchange that will issue the coins.
- */
- const char *exchange_url;
-
- } coin;
-
- /**
- * Tax-receipt output.
- */
- struct
- {
- /**
- * Base URL of the donation authority that will issue the tax receipt.
- */
- const char *donau_url;
- } tax_receipt;
-
- /**
- * Token-based output.
- */
- struct
- {
- /**
- * Slug of the token family to be issued.
- */
- const char *token_family_slug;
-
- /**
- * Index of the public key in the @a token_family_slug's token family
- * ``keys`` array that this output token will have.
- */
- unsigned int key_index;
-
- /**
- * Number of tokens of this type required. Defaults to one if the
- * field is not provided.
- */
- unsigned int count;
-
- // FIXME: add support for clients picking a validity
- // period in the future for output tokens!
-
- } token;
-
- } details;
-
-};
-
-/**
- * Contract choice (part of the v1 contract terms).
- */
-struct TALER_MerchantContractChoice
-{
-
- /**
- * Amount to be paid for this choice.
- */
- struct TALER_Amount amount;
-
- /**
- * Maximum fee the merchant is willing to pay for this choice.
- * Set to an invalid amount to use instance defaults (zero or STEFAN).
- */
- struct TALER_Amount max_fee;
-
- /**
- * List of inputs the wallet must provision (all of them) to satisfy the
- * conditions for the contract.
- */
- struct TALER_MerchantContractInput *inputs;
-
- /**
- * Length of the @e inputs array.
- */
- unsigned int inputs_len;
-
- /**
- * List of outputs the merchant promises to yield (all of them) once
- * the contract is paid.
- */
- struct TALER_MerchantContractOutput *outputs;
-
- /**
- * Length of the @e outputs array.
- */
- unsigned int outputs_len;
-};
-
-/**
- * Public key and corresponding metadata for a token family.
- */
-struct TALER_MerchantContractTokenFamilyKey
-{
- /**
- * Public key.
- */
- struct TALER_TokenIssuePublicKey pub;
-
- /**
- * Start time of the token family duration.
- */
- struct GNUNET_TIME_Timestamp valid_after;
-
- /**
- * Tokens signed by this key will be valid until this time.
- */
- struct GNUNET_TIME_Timestamp valid_before;
-};
-
-struct TALER_MerchantContractTokenFamily
-{
- /**
- * Slug of the token family.
- */
- char *slug;
-
- /**
- * Human-readable name of the token family.
- */
- char *name;
-
- /**
- * Human-readable description of the semantics of the tokens issued by
- * this token family.
- */
- char *description;
-
- /**
- * Map from IETF BCP 47 language tags to localized description.
- */
- json_t *description_i18n;
-
- /**
- * Relevant public keys of this token family for the given contract.
- */
- struct TALER_MerchantContractTokenFamilyKey *keys;
-
- /**
- * Length of the @e keys array.
- */
- unsigned int keys_len;
-
- /**
- * Must a wallet understand this token type to process contracts that
- * consume or yield it?
- */
- bool critical;
-
- /**
- * Kind of the token family.
- */
- enum TALER_MerchantContractTokenKind kind;
-
- /**
- * Kind-specific information about the token.
- */
- union
- {
- /**
- * Subscription token.
- */
- struct
- {
- /**
- * Array of domain names where this subscription can be safely used
- * (e.g. the issuer warrants that these sites will re-issue tokens of
- * this type if the respective contract says so). May contain "*" for
- * any domain or subdomain.
- */
- char **trusted_domains;
-
- /**
- * Length of the @e trusted_domains array.
- */
- size_t trusted_domains_len;
- } subscription;
-
- /**
- * Discount token.
- */
- struct
- {
- /**
- * Array of domain names where this discount token is intended to be
- * used. May contain "*" for any domain or subdomain. Users should be
- * warned about sites proposing to consume discount tokens of this
- * type that are not in this list that the merchant is accepting a
- * coupon from a competitor and thus may be attaching different
- * semantics (like get 20% discount for my competitors 30% discount
- * token).
- */
- char **expected_domains;
-
- /**
- * Length of the @e expected_domains array.
- */
- unsigned int expected_domains_len;
-
- } discount;
- } details;
-};
-
-
-/**
- * Struct to hold contract terms.
- */
-struct TALER_MerchantContract
-{
- /**
- * URL where the same contract could be ordered again (if available).
- */
- const char *public_reorder_url;
-
- /**
- * Our order ID.
- */
- const char *order_id;
-
- /**
- * Merchant base URL.
- */
- char *merchant_base_url;
-
- /**
- * Merchant information.
- */
- struct
- {
- /**
- * Legal name of the instance
- */
- char *name;
-
- /**
- * Merchant's site url
- */
- char *website;
-
- /**
- * Email contact for customers
- */
- char *email;
-
- /**
- * merchant's logo data uri
- */
- char *logo;
-
- /**
- * Merchant address
- */
- json_t *address;
-
- /**
- * Jurisdiction of the business
- */
- json_t *jurisdiction;
-
- } merchant;
-
- /**
- * Summary of the contract.
- */
- const char *summary;
-
- /**
- * Internationalized summary.
- */
- json_t *summary_i18n;
-
- /**
- * URL that will show that the contract was successful
- * after it has been paid for.
- */
- const char *fulfillment_url;
-
- /**
- * Message shown to the customer after paying for the contract.
- * Either fulfillment_url or fulfillment_message must be specified.
- */
- const char *fulfillment_message;
-
- /**
- * Map from IETF BCP 47 language tags to localized fulfillment messages.
- */
- json_t *fulfillment_message_i18n;
-
- /**
- * Array of products that are part of the purchase.
- */
- const json_t *products;
-
- /**
- * Timestamp of the contract.
- */
- struct GNUNET_TIME_Timestamp timestamp;
-
- /**
- * Deadline for refunds.
- */
- struct GNUNET_TIME_Timestamp refund_deadline;
-
- /**
- * Specifies for how long the wallet should try to get an
- * automatic refund for the purchase.
- */
- struct GNUNET_TIME_Relative auto_refund;
-
- /**
- * Payment deadline.
- */
- struct GNUNET_TIME_Timestamp pay_deadline;
-
- /**
- * Wire transfer deadline.
- */
- struct GNUNET_TIME_Timestamp wire_deadline;
-
- /**
- * Delivery date.
- */
- struct GNUNET_TIME_Timestamp delivery_date;
-
- /**
- * Delivery location.
- */
- json_t *delivery_location;
-
- /**
- * Nonce generated by the wallet and echoed by the merchant
- * in this field when the proposal is generated.
- */
- const char *nonce;
-
- /**
- * Extra data that is only interpreted by the merchant frontend.
- */
- const json_t *extra;
-
- /**
- * Specified version of the contract.
- */
- enum TALER_MerchantContractVersion version;
-
- /**
- * Details depending on the @e version.
- */
- union
- {
-
- /**
- * Details for v0 contracts.
- */
- struct
- {
-
- /**
- * Price to be paid for the transaction. Could be 0. The price is in
addition
- * to other instruments, such as rations and tokens.
- * The exchange will subtract deposit fees from that amount
- * before transferring it to the merchant.
- */
- struct TALER_Amount brutto;
-
- /**
- * Maximum fee as given by the client request.
- */
- struct TALER_Amount max_fee;
-
- } v0;
-
- /**
- * Details for v1 contracts.
- */
- struct
- {
-
- /**
- * Array of possible specific contracts the wallet/customer may choose
- * from by selecting the respective index when signing the deposit
- * confirmation.
- */
- struct TALER_MerchantContractChoice *choices;
-
- /**
- * Length of the @e choices array.
- */
- unsigned int choices_len;
-
- /**
- * Array of token authorities.
- */
- struct TALER_MerchantContractTokenFamily *token_authorities;
-
- /**
- * Length of the @e token_authorities array.
- */
- unsigned int token_authorities_len;
-
- } v1;
-
- } details;
-
- // FIXME: Add exchanges array?
-
-};
-
-
-enum TALER_MerchantContractInputType
+enum TALER_MERCHANT_ContractInputType
TMH_contract_input_type_from_string (const char *str);
-enum TALER_MerchantContractOutputType
+enum TALER_MERCHANT_ContractOutputType
TMH_contract_output_type_from_string (const char *str);
const char *
-TMH_string_from_contract_input_type (enum TALER_MerchantContractInputType t);
+TMH_string_from_contract_input_type (enum TALER_MERCHANT_ContractInputType t);
const char *
-TMH_string_from_contract_output_type (enum TALER_MerchantContractOutputType t);
+TMH_string_from_contract_output_type (enum TALER_MERCHANT_ContractOutputType
t);
/**
* Serialize @a contract to a JSON object, ready to be stored in the database.
@@ -617,21 +56,21 @@ TMH_string_from_contract_output_type (enum
TALER_MerchantContractOutputType t);
* #GNUNET_SYSERR on failure
*/
enum GNUNET_GenericReturnValue
-TMH_serialize_contract (const struct TALER_MerchantContract *contract,
+TMH_serialize_contract (const struct TALER_MERCHANT_Contract *contract,
const struct TMH_MerchantInstance *instance,
json_t *exchanges,
json_t **out);
enum GNUNET_GenericReturnValue
-TMH_serialize_contract_v0 (const struct TALER_MerchantContract *contract,
+TMH_serialize_contract_v0 (const struct TALER_MERCHANT_Contract *contract,
const struct TMH_MerchantInstance *instance,
json_t *exchanges,
json_t **out);
enum GNUNET_GenericReturnValue
-TMH_serialize_contract_v1 (const struct TALER_MerchantContract *contract,
+TMH_serialize_contract_v1 (const struct TALER_MERCHANT_Contract *contract,
const struct TMH_MerchantInstance *instance,
json_t *exchanges,
json_t **out);
@@ -648,7 +87,7 @@ TMH_serialize_contract_v1 (const struct
TALER_MerchantContract *contract,
struct GNUNET_JSON_Specification
TALER_JSON_spec_choices (
const char *name,
- struct TALER_MerchantContractChoice **choices,
+ struct TALER_MERCHANT_ContractChoice **choices,
unsigned int *choices_len);
@@ -664,7 +103,7 @@ TALER_JSON_spec_choices (
struct GNUNET_JSON_Specification
TALER_JSON_spec_token_families (
const char *name,
- struct TALER_MerchantContractTokenFamily **families,
+ struct TALER_MERCHANT_ContractTokenFamily **families,
unsigned int *families_len);
@@ -685,9 +124,9 @@ enum GNUNET_GenericReturnValue
TMH_find_token_family_key (
const char *slug,
struct GNUNET_TIME_Timestamp valid_after,
- const struct TALER_MerchantContractTokenFamily *families,
+ const struct TALER_MERCHANT_ContractTokenFamily *families,
unsigned int families_len,
- struct TALER_MerchantContractTokenFamily *family,
- struct TALER_MerchantContractTokenFamilyKey *key);
+ struct TALER_MERCHANT_ContractTokenFamily *family,
+ struct TALER_MERCHANT_ContractTokenFamilyKey *key);
#endif
diff --git a/src/backend/taler-merchant-httpd_post-orders-ID-pay.c
b/src/backend/taler-merchant-httpd_post-orders-ID-pay.c
index ba47d7a6..c8bc793b 100644
--- a/src/backend/taler-merchant-httpd_post-orders-ID-pay.c
+++ b/src/backend/taler-merchant-httpd_post-orders-ID-pay.c
@@ -500,7 +500,7 @@ struct PayContext
/**
* Version of the contract terms.
*/
- enum TALER_MerchantContractVersion version;
+ enum TALER_MERCHANT_ContractVersion version;
/**
* @e version dependent details from our contract.
@@ -532,12 +532,12 @@ struct PayContext
/**
* Array with @e choices_len choices from the contract terms.
*/
- struct TALER_MerchantContractChoice *choices;
+ struct TALER_MERCHANT_ContractChoice *choices;
/**
* Array with @e token_families_len token families from the contract
terms.
*/
- struct TALER_MerchantContractTokenFamily *token_families;
+ struct TALER_MERCHANT_ContractTokenFamily *token_families;
/**
* Length of the @e choices array.
@@ -2514,7 +2514,7 @@ phase_execute_pay_transaction (struct PayContext *pc)
static enum GNUNET_GenericReturnValue
find_valid_input_tokens (
struct PayContext *pc,
- const struct TALER_MerchantContractTokenFamily *family,
+ const struct TALER_MERCHANT_ContractTokenFamily *family,
unsigned int index,
unsigned int expected_num)
{
@@ -2525,11 +2525,11 @@ find_valid_input_tokens (
for (unsigned int j = 0; j < expected_num; j++)
{
struct TokenUseConfirmation *tuc = &pc->tokens[index + j];
- const struct TALER_MerchantContractTokenFamilyKey *key = NULL;
+ const struct TALER_MERCHANT_ContractTokenFamilyKey *key = NULL;
for (unsigned int i=0; i<family->keys_len; i++)
{
- const struct TALER_MerchantContractTokenFamilyKey *ki
+ const struct TALER_MERCHANT_ContractTokenFamilyKey *ki
= &family->keys[i];
if (GNUNET_TIME_timestamp_cmp (ki->valid_after, >, now) ||
@@ -2624,7 +2624,7 @@ find_valid_input_tokens (
static enum GNUNET_GenericReturnValue
sign_token_envelopes (struct PayContext *pc,
- struct TALER_MerchantContractTokenFamilyKey *key,
+ struct TALER_MERCHANT_ContractTokenFamilyKey *key,
struct TALER_TokenIssuePrivateKey *priv,
bool critical,
unsigned int index,
@@ -2695,13 +2695,13 @@ sign_token_envelopes (struct PayContext *pc,
* @param slug slug to search for
* @return NULL if @a slug was not found
*/
-static const struct TALER_MerchantContractTokenFamily *
+static const struct TALER_MERCHANT_ContractTokenFamily *
find_family (const struct PayContext *pc,
const char *slug)
{
for (unsigned int i = 0; i<pc->details.v1.token_families_len; i++)
{
- const struct TALER_MerchantContractTokenFamily *tfi
+ const struct TALER_MERCHANT_ContractTokenFamily *tfi
= &pc->details.v1.token_families[i];
if (0 == strcmp (tfi->slug,
@@ -2731,15 +2731,15 @@ phase_validate_tokens (struct PayContext *pc)
{
switch (pc->version)
{
- case TALER_MCV_V0:
+ case TALER_MERCHANT_CONTRACT_VERSION_0:
/* No tokens to validate */
pc->phase = PP_PAY_TRANSACTION;
pc->validate_tokens.max_fee = pc->details.v0.max_fee;
pc->validate_tokens.brutto = pc->details.v0.amount;
break;
- case TALER_MCV_V1:
+ case TALER_MERCHANT_CONTRACT_VERSION_1:
{
- const struct TALER_MerchantContractChoice *selected
+ const struct TALER_MERCHANT_ContractChoice *selected
= &pc->details.v1.choices[pc->choice_index];
pc->validate_tokens.max_fee = selected->max_fee;
@@ -2747,11 +2747,11 @@ phase_validate_tokens (struct PayContext *pc)
for (unsigned int i = 0; i<selected->inputs_len; i++)
{
- const struct TALER_MerchantContractInput *input
+ const struct TALER_MERCHANT_ContractInput *input
= &selected->inputs[i];
- const struct TALER_MerchantContractTokenFamily *family;
+ const struct TALER_MERCHANT_ContractTokenFamily *family;
- if (input->type != TALER_MCIT_TOKEN)
+ if (input->type != TALER_MERCHANT_CONTRACT_INPUT_TYPE_TOKEN)
{
/* only validate inputs of type token (for now) */
continue;
@@ -2791,12 +2791,12 @@ phase_validate_tokens (struct PayContext *pc)
{
enum GNUNET_DB_QueryStatus qs;
struct TALER_MERCHANTDB_TokenFamilyKeyDetails details;
- const struct TALER_MerchantContractOutput *output
+ const struct TALER_MERCHANT_ContractOutput *output
= &selected->outputs[i];
- const struct TALER_MerchantContractTokenFamily *family;
- struct TALER_MerchantContractTokenFamilyKey *key;
+ const struct TALER_MERCHANT_ContractTokenFamily *family;
+ struct TALER_MERCHANT_ContractTokenFamilyKey *key;
- if (output->type != TALER_MCOT_TOKEN)
+ if (output->type != TALER_MERCHANT_CONTRACT_OUTPUT_TYPE_TOKEN)
{
/* only validate outputs of type tokens (for now) */
continue;
@@ -3313,7 +3313,7 @@ phase_check_contract (struct PayContext *pc)
return;
}
}
- pc->version = TALER_MCV_V0;
+ pc->version = TALER_MERCHANT_CONTRACT_VERSION_0;
break;
case 1:
{
@@ -3371,7 +3371,7 @@ phase_check_contract (struct PayContext *pc)
return;
}
}
- pc->version = TALER_MCV_V1;
+ pc->version = TALER_MERCHANT_CONTRACT_VERSION_1;
break;
default:
GNUNET_break (0);
@@ -3880,12 +3880,12 @@ pay_context_cleanup (void *cls)
GNUNET_free (pc->egs);
switch (pc->version)
{
- case TALER_MCV_V0:
+ case TALER_MERCHANT_CONTRACT_VERSION_0:
break;
- case TALER_MCV_V1:
+ case TALER_MERCHANT_CONTRACT_VERSION_1:
for (unsigned int i = 0; i< pc->details.v1.token_families_len; i++)
{
- struct TALER_MerchantContractTokenFamily *tf
+ struct TALER_MERCHANT_ContractTokenFamily *tf
= &pc->details.v1.token_families[i];
GNUNET_free (tf->slug);
@@ -3894,7 +3894,7 @@ pay_context_cleanup (void *cls)
json_decref (tf->description_i18n);
for (unsigned int j = 0; j<tf->keys_len; j++)
{
- struct TALER_MerchantContractTokenFamilyKey *key
+ struct TALER_MERCHANT_ContractTokenFamilyKey *key
= &tf->keys[j];
TALER_token_issue_pub_free (&key->pub);
diff --git a/src/backend/taler-merchant-httpd_private-post-orders.c
b/src/backend/taler-merchant-httpd_private-post-orders.c
index 98831226..1ce2de5f 100644
--- a/src/backend/taler-merchant-httpd_private-post-orders.c
+++ b/src/backend/taler-merchant-httpd_private-post-orders.c
@@ -350,7 +350,7 @@ struct OrderContext
/**
* Version of the contract terms.
*/
- enum TALER_MerchantContractVersion version;
+ enum TALER_MERCHANT_ContractVersion version;
/**
* Details present depending on @e version.
@@ -398,7 +398,7 @@ struct OrderContext
* from by selecting the respective index when signing the deposit
* confirmation.
*/
- struct TALER_MerchantContractChoice *choices;
+ struct TALER_MERCHANT_ContractChoice *choices;
/**
* Length of the @e choices array.
@@ -408,7 +408,7 @@ struct OrderContext
/**
* Array of token families referenced in the contract.
*/
- struct TALER_MerchantContractTokenFamily *token_families;
+ struct TALER_MERCHANT_ContractTokenFamily *token_families;
/**
* Length of the @e token_families array.
@@ -632,6 +632,10 @@ struct OrderContext
ORDER_PHASE_PARSE_REQUEST,
ORDER_PHASE_PARSE_ORDER,
ORDER_PHASE_PARSE_CHOICES,
+#ifdef HAVE_DONAU_DONAU_SERVICE_H
+ // TODO: PLACE HOLDER FOR THE PARSE DONAU INSTANCES, maybe it needs to be
lower in the order
+ ORDER_PHASE_PARSE_DONAU,
+#endif
ORDER_PHASE_MERGE_INVENTORY,
ORDER_PHASE_ADD_PAYMENT_DETAILS,
ORDER_PHASE_SET_EXCHANGES,
@@ -777,9 +781,9 @@ clean_order (void *cls)
GNUNET_free (oc->set_exchanges.total_exchange_limits);
switch (oc->parse_order.version)
{
- case TALER_MCV_V0:
+ case TALER_MERCHANT_CONTRACT_VERSION_0:
break;
- case TALER_MCV_V1:
+ case TALER_MERCHANT_CONTRACT_VERSION_1:
GNUNET_free (oc->set_max_fee.details.v1.max_fees);
GNUNET_free (oc->set_exchanges.details.v1.max_stefan_fees);
break;
@@ -803,7 +807,7 @@ clean_order (void *cls)
0);
for (unsigned int i = 0; i<oc->parse_choices.token_families_len; i++)
{
- struct TALER_MerchantContractTokenFamily *mctf
+ struct TALER_MERCHANT_ContractTokenFamily *mctf
= &oc->parse_choices.token_families[i];
GNUNET_free (mctf->slug);
@@ -812,12 +816,12 @@ clean_order (void *cls)
json_decref (mctf->description_i18n);
switch (mctf->kind)
{
- case TALER_MCTK_SUBSCRIPTION:
+ case TALER_MERCHANT_CONTRACT_TOKEN_KIND_SUBSCRIPTION:
for (size_t j = 0; j<mctf->details.subscription.trusted_domains_len; j++)
GNUNET_free (mctf->details.subscription.trusted_domains[j]);
GNUNET_free (mctf->details.subscription.trusted_domains);
break;
- case TALER_MCTK_DISCOUNT:
+ case TALER_MERCHANT_CONTRACT_TOKEN_KIND_DISCOUNT:
for (size_t j = 0; j<mctf->details.discount.expected_domains_len; j++)
GNUNET_free (mctf->details.discount.expected_domains[j]);
GNUNET_free (mctf->details.discount.expected_domains);
@@ -1373,7 +1377,7 @@ get_rounded_time_interval (struct GNUNET_TIME_Relative
precision,
* @param slug slug to search for
* @return NULL if @a slug was not found
*/
-static struct TALER_MerchantContractTokenFamily *
+static struct TALER_MERCHANT_ContractTokenFamily *
find_family (const struct OrderContext *oc,
const char *slug)
{
@@ -1405,14 +1409,14 @@ add_family_key (void *cls,
{
struct OrderContext *oc = cls;
const struct TALER_MERCHANTDB_TokenFamilyDetails *tf = &tfkd->token_family;
- struct TALER_MerchantContractTokenFamily *family;
+ struct TALER_MERCHANT_ContractTokenFamily *family;
family = find_family (oc,
tf->slug);
if (NULL == family)
{
/* Family not yet in our contract terms, create new entry */
- struct TALER_MerchantContractTokenFamily new_family = {
+ struct TALER_MERCHANT_ContractTokenFamily new_family = {
.slug = GNUNET_strdup (tf->slug),
.name = GNUNET_strdup (tf->name),
.description = GNUNET_strdup (tf->description),
@@ -1428,7 +1432,7 @@ add_family_key (void *cls,
json_t *dom;
size_t i;
- new_family.kind = TALER_MCTK_SUBSCRIPTION;
+ new_family.kind = TALER_MERCHANT_CONTRACT_TOKEN_KIND_SUBSCRIPTION;
new_family.critical = true;
new_family.details.subscription.trusted_domains_len
= json_array_size (tdomains);
@@ -1457,7 +1461,7 @@ add_family_key (void *cls,
json_t *dom;
size_t i;
- new_family.kind = TALER_MCTK_DISCOUNT;
+ new_family.kind = TALER_MERCHANT_CONTRACT_TOKEN_KIND_DISCOUNT;
new_family.critical = false;
new_family.details.discount.expected_domains_len
= json_array_size (edomains);
@@ -1499,7 +1503,7 @@ add_family_key (void *cls,
}
{
- struct TALER_MerchantContractTokenFamilyKey key;
+ struct TALER_MERCHANT_ContractTokenFamilyKey key;
TALER_token_issue_pub_copy (&key.pub,
&tfkd->pub);
@@ -1578,7 +1582,7 @@ add_input_token_family (struct OrderContext *oc,
* @return #GNUNET_OK if a matching key was found
*/
static enum GNUNET_GenericReturnValue
-find_key_index (struct TALER_MerchantContractTokenFamily *family,
+find_key_index (struct TALER_MERCHANT_ContractTokenFamily *family,
struct GNUNET_TIME_Timestamp valid_at,
unsigned int *key_index)
{
@@ -1663,7 +1667,7 @@ add_output_token_family (struct OrderContext *oc,
unsigned int *key_index)
{
struct TALER_MERCHANTDB_TokenFamilyKeyDetails key_details;
- struct TALER_MerchantContractTokenFamily *family;
+ struct TALER_MERCHANT_ContractTokenFamily *family;
enum GNUNET_DB_QueryStatus qs;
family = find_family (oc,
@@ -1746,7 +1750,7 @@ add_output_token_family (struct OrderContext *oc,
/* No suitable key exists, create one! */
{
- struct TALER_MerchantContractTokenFamilyKey key;
+ struct TALER_MERCHANT_ContractTokenFamilyKey key;
enum GNUNET_DB_QueryStatus iqs;
struct TALER_TokenIssuePrivateKey token_priv;
struct GNUNET_TIME_Timestamp key_expires;
@@ -1895,7 +1899,7 @@ output_token_families (struct OrderContext *oc)
GNUNET_assert (NULL != token_families);
for (unsigned int i = 0; i<oc->parse_choices.token_families_len; i++)
{
- const struct TALER_MerchantContractTokenFamily *family
+ const struct TALER_MERCHANT_ContractTokenFamily *family
= &oc->parse_choices.token_families[i];
json_t *keys;
json_t *jfamily;
@@ -1904,7 +1908,7 @@ output_token_families (struct OrderContext *oc)
GNUNET_assert (NULL != keys);
for (unsigned int j = 0; j<family->keys_len; j++)
{
- const struct TALER_MerchantContractTokenFamilyKey *key
+ const struct TALER_MERCHANT_ContractTokenFamilyKey *key
= &family->keys[j];
json_t *jkey = GNUNET_JSON_PACK (
TALER_JSON_pack_token_pub ("public_key",
@@ -1959,7 +1963,7 @@ output_contract_choices (struct OrderContext *oc)
GNUNET_assert (NULL != choices);
for (unsigned int i = 0; i<oc->parse_choices.choices_len; i++)
{
- const struct TALER_MerchantContractChoice *choice
+ const struct TALER_MERCHANT_ContractChoice *choice
= &oc->parse_choices.choices[i];
json_t *inputs = json_array ();
json_t *outputs = json_array ();
@@ -1968,12 +1972,12 @@ output_contract_choices (struct OrderContext *oc)
GNUNET_assert (NULL != outputs);
for (unsigned int j = 0; j<choice->inputs_len; j++)
{
- const struct TALER_MerchantContractInput *input
+ const struct TALER_MERCHANT_ContractInput *input
= &choice->inputs[j];
json_t *jinput;
/* For now, only tokens are supported for inputs */
- GNUNET_assert (TALER_MCIT_TOKEN == input->type);
+ GNUNET_assert (TALER_MERCHANT_CONTRACT_INPUT_TYPE_TOKEN == input->type);
jinput = GNUNET_JSON_PACK (
GNUNET_JSON_pack_string ("kind",
TMH_string_from_contract_input_type (
@@ -1991,13 +1995,13 @@ output_contract_choices (struct OrderContext *oc)
for (unsigned int j = 0; j<choice->outputs_len; j++)
{
- struct TALER_MerchantContractOutput *output = &choice->outputs[j];
+ struct TALER_MERCHANT_ContractOutput *output = &choice->outputs[j];
json_t *joutput;
/* For now, only tokens are supported */
switch (output->type)
{
- case TALER_MCOT_INVALID:
+ case TALER_MERCHANT_CONTRACT_OUTPUT_TYPE_INVALID:
/* How did we get here? */
GNUNET_assert (0);
/* mostly to make compiler happy... */
@@ -2005,7 +2009,7 @@ output_contract_choices (struct OrderContext *oc)
MHD_NO);
json_decref (choices);
return NULL;
- case TALER_MCOT_TOKEN:
+ case TALER_MERCHANT_CONTRACT_OUTPUT_TYPE_TOKEN:
joutput = GNUNET_JSON_PACK (
GNUNET_JSON_pack_string ("kind",
TMH_string_from_contract_output_type (
@@ -2018,7 +2022,7 @@ output_contract_choices (struct OrderContext *oc)
output->details.token.key_index)
);
break;
- case TALER_MCOT_COIN:
+ case TALER_MERCHANT_CONTRACT_OUTPUT_TYPE_COIN:
/* Not implemented, how did we get here? */
GNUNET_break (0);
reply_with_error (oc,
@@ -2027,7 +2031,7 @@ output_contract_choices (struct OrderContext *oc)
"currency conversion not supported");
json_decref (choices);
return NULL;
- case TALER_MCOT_TAX_RECEIPT:
+ case TALER_MERCHANT_CONTRACT_OUTPUT_TYPE_DONATION_RECEIPT:
// FIXME: generate JSON for DONAU here instead of killing
// the connection!
GNUNET_break (0);
@@ -2186,14 +2190,14 @@ serialize_order (struct OrderContext *oc)
switch (oc->parse_order.version)
{
- case TALER_MCV_V0:
+ case TALER_MERCHANT_CONTRACT_VERSION_0:
xtra = GNUNET_JSON_PACK (
TALER_JSON_pack_amount ("max_fee",
&oc->set_max_fee.details.v0.max_fee),
TALER_JSON_pack_amount ("amount",
&oc->parse_order.details.v0.brutto));
break;
- case TALER_MCV_V1:
+ case TALER_MERCHANT_CONTRACT_VERSION_1:
{
json_t *token_families = output_token_families (oc);
json_t *choices = output_contract_choices (oc);
@@ -2295,14 +2299,14 @@ set_max_fee (struct OrderContext *oc)
{
switch (oc->parse_order.version)
{
- case TALER_MCV_V0:
+ case TALER_MERCHANT_CONTRACT_VERSION_0:
compute_fee (oc,
&oc->parse_order.details.v0.brutto,
&oc->parse_order.details.v0.max_fee,
&oc->set_exchanges.details.v0.max_stefan_fee,
&oc->set_max_fee.details.v0.max_fee);
break;
- case TALER_MCV_V1:
+ case TALER_MERCHANT_CONTRACT_VERSION_1:
oc->set_max_fee.details.v1.max_fees
= GNUNET_new_array (oc->parse_choices.choices_len,
struct TALER_Amount);
@@ -2407,12 +2411,12 @@ update_stefan (struct OrderContext *oc,
{
switch (oc->parse_order.version)
{
- case TALER_MCV_V0:
+ case TALER_MERCHANT_CONTRACT_VERSION_0:
compute_stefan_fee (keys,
&oc->parse_order.details.v0.brutto,
&oc->set_exchanges.details.v0.max_stefan_fee);
break;
- case TALER_MCV_V1:
+ case TALER_MERCHANT_CONTRACT_VERSION_1:
oc->set_exchanges.details.v1.max_stefan_fees
= GNUNET_new_array (oc->parse_choices.choices_len,
struct TALER_Amount);
@@ -2579,7 +2583,7 @@ keys_cb (
switch (oc->parse_order.version)
{
- case TALER_MCV_V0:
+ case TALER_MERCHANT_CONTRACT_VERSION_0:
if (0 == strcasecmp (keys->currency,
oc->parse_order.details.v0.brutto.currency))
{
@@ -2587,7 +2591,7 @@ keys_cb (
currency_ok = true;
}
break;
- case TALER_MCV_V1:
+ case TALER_MERCHANT_CONTRACT_VERSION_1:
for (unsigned int i = 0; i<oc->parse_choices.choices_len; i++)
{
const struct TALER_Amount *amount
@@ -2786,11 +2790,11 @@ set_exchanges (struct OrderContext *oc)
}
switch (oc->parse_order.version)
{
- case TALER_MCV_V0:
+ case TALER_MERCHANT_CONTRACT_VERSION_0:
need_exchange = ! TALER_amount_is_zero (
&oc->parse_order.details.v0.brutto);
break;
- case TALER_MCV_V1:
+ case TALER_MERCHANT_CONTRACT_VERSION_1:
need_exchange = false;
for (unsigned int i = 0; i<oc->parse_choices.choices_len; i++)
if (! TALER_amount_is_zero (&oc->parse_choices.choices[i].amount))
@@ -2882,12 +2886,12 @@ set_exchanges (struct OrderContext *oc)
switch (oc->parse_order.version)
{
- case TALER_MCV_V0:
+ case TALER_MERCHANT_CONTRACT_VERSION_0:
ea = oc->parse_order.details.v0.brutto;
ok = check_exchange_limits (oc,
&ea);
break;
- case TALER_MCV_V1:
+ case TALER_MERCHANT_CONTRACT_VERSION_1:
ok = true;
for (unsigned int i = 0; i<oc->parse_choices.choices_len; i++)
{
@@ -3105,7 +3109,7 @@ parse_order (struct OrderContext *oc)
"choices array must be null for v0 contracts");
return;
}
- oc->parse_order.version = TALER_MCV_V0;
+ oc->parse_order.version = TALER_MERCHANT_CONTRACT_VERSION_0;
break;
}
case 1:
@@ -3127,7 +3131,7 @@ parse_order (struct OrderContext *oc)
ret);
return;
}
- oc->parse_order.version = TALER_MCV_V1;
+ oc->parse_order.version = TALER_MERCHANT_CONTRACT_VERSION_1;
break;
}
default:
@@ -3417,6 +3421,17 @@ parse_order (struct OrderContext *oc)
}
+#ifdef HAVE_DONAU_DONAU_SERVICE_H
+
+static void
+parse_donau_instances (struct OrderContext *oc)
+{
+ return;
+}
+
+
+#endif
+
/**
* Parse the inputs for a particular choice.
*
@@ -3428,7 +3443,7 @@ parse_order (struct OrderContext *oc)
*/
static enum GNUNET_GenericReturnValue
parse_order_inputs (struct OrderContext *oc,
- struct TALER_MerchantContractChoice *choice,
+ struct TALER_MERCHANT_ContractChoice *choice,
const json_t *jinputs)
{
const json_t *jinput;
@@ -3436,7 +3451,7 @@ parse_order_inputs (struct OrderContext *oc,
json_array_foreach ((json_t *) jinputs, idx, jinput)
{
- struct TALER_MerchantContractInput input = {
+ struct TALER_MERCHANT_ContractInput input = {
.details.token.count = 1
};
const char *kind;
@@ -3473,7 +3488,7 @@ parse_order_inputs (struct OrderContext *oc,
}
input.type = TMH_contract_input_type_from_string (kind);
- if (TALER_MCIT_INVALID == input.type)
+ if (TALER_MERCHANT_CONTRACT_INPUT_TYPE_INVALID == input.type)
{
GNUNET_log (GNUNET_ERROR_TYPE_WARNING,
"Field 'kind' invalid in input #%u\n",
@@ -3518,7 +3533,7 @@ parse_order_inputs (struct OrderContext *oc,
*/
static enum GNUNET_GenericReturnValue
parse_order_outputs (struct OrderContext *oc,
- struct TALER_MerchantContractChoice *choice,
+ struct TALER_MERCHANT_ContractChoice *choice,
const json_t *joutputs)
{
const json_t *joutput;
@@ -3526,7 +3541,7 @@ parse_order_outputs (struct OrderContext *oc,
json_array_foreach ((json_t *) joutputs, idx, joutput)
{
- struct TALER_MerchantContractOutput output = {
+ struct TALER_MERCHANT_ContractOutput output = {
.details.token.count = 1
};
const char *kind;
@@ -3592,7 +3607,7 @@ parse_order_outputs (struct OrderContext *oc,
}
output.type = TMH_contract_output_type_from_string (kind);
- if (TALER_MCOT_INVALID == output.type)
+ if (TALER_MERCHANT_CONTRACT_OUTPUT_TYPE_INVALID == output.type)
{
GNUNET_log (GNUNET_ERROR_TYPE_WARNING,
"Field 'kind' invalid in output #%u\n",
@@ -3641,10 +3656,10 @@ parse_choices (struct OrderContext *oc)
switch (oc->parse_order.version)
{
- case TALER_MCV_V0:
+ case TALER_MERCHANT_CONTRACT_VERSION_0:
oc->phase++;
return;
- case TALER_MCV_V1:
+ case TALER_MERCHANT_CONTRACT_VERSION_1:
/* handle below */
break;
default:
@@ -3657,7 +3672,7 @@ parse_choices (struct OrderContext *oc)
json_array_size (choices));
for (unsigned int i = 0; i<oc->parse_choices.choices_len; i++)
{
- struct TALER_MerchantContractChoice *choice
+ struct TALER_MERCHANT_ContractChoice *choice
= &oc->parse_choices.choices[i];
const char *error_name;
unsigned int error_line;
@@ -4159,6 +4174,12 @@ TMH_private_post_orders (
case ORDER_PHASE_PARSE_CHOICES:
parse_choices (oc);
break;
+#ifdef HAVE_DONAU_DONAU_SERVICE_H
+ // TODO: PLACE HOLDER FOR THE PARSE DONAU INSTANCES, maybe it needs to be
lower in the order
+ case ORDER_PHASE_PARSE_DONAU:
+ parse_donau_instances (oc);
+ break;
+#endif
case ORDER_PHASE_MERGE_INVENTORY:
merge_inventory (oc);
break;
diff --git a/src/include/taler_merchant_util.h
b/src/include/taler_merchant_util.h
index d981d528..9243426e 100644
--- a/src/include/taler_merchant_util.h
+++ b/src/include/taler_merchant_util.h
@@ -25,7 +25,6 @@
#include <taler/taler_util.h>
#include <jansson.h>
-
/**
* Return default project data used by Taler merchant.
*/
@@ -118,6 +117,7 @@ struct TALER_MERCHANT_ContractInput
const char *ration_authority_url;
} coin;
#endif
+
/**
* Token-based input.
*/
@@ -214,7 +214,6 @@ struct TALER_MERCHANT_ContractOutput
/**
* Base URLs of the donation authorities that will issue the tax receipt.
*/
- // FIXME
// const char *donau_url;
} donation_receipt;
--
To stop receiving notification emails like this one, please contact
gnunet@gnunet.org.
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [taler-merchant] branch master updated: rename stuff, move stuff, fix FTBFS with donau,
gnunet <=