aboutsummaryrefslogtreecommitdiff
path: root/src/include
diff options
context:
space:
mode:
Diffstat (limited to 'src/include')
-rw-r--r--src/include/taler_error_codes.h5
-rw-r--r--src/include/taler_exchangedb_plugin.h14
2 files changed, 19 insertions, 0 deletions
diff --git a/src/include/taler_error_codes.h b/src/include/taler_error_codes.h
index 754681b41..35dceb7c4 100644
--- a/src/include/taler_error_codes.h
+++ b/src/include/taler_error_codes.h
@@ -175,6 +175,11 @@ enum TALER_ErrorCode
*/
TALER_EC_PAYTO_MALFORMED = 1013,
+ /**
+ * We failed to update the database of known coins.
+ */
+ TALER_EC_DB_COIN_HISTORY_STORE_ERROR = 1014,
+
/* ********** request-specific error codes ************* */
/**
diff --git a/src/include/taler_exchangedb_plugin.h b/src/include/taler_exchangedb_plugin.h
index 6e5947377..b06bc7409 100644
--- a/src/include/taler_exchangedb_plugin.h
+++ b/src/include/taler_exchangedb_plugin.h
@@ -1398,6 +1398,20 @@ struct TALER_EXCHANGEDB_Plugin
/**
+ * Make sure the given @a coin is known to the database.
+ *
+ * @param cls database connection plugin state
+ * @param session database session
+ * @param coin the coin that must be made known
+ * @return database transaction status, non-negative on success
+ */
+ enum GNUNET_DB_QueryStatus
+ (*ensure_coin_known) (void *cls,
+ struct TALER_EXCHANGEDB_Session *session,
+ const struct TALER_CoinPublicInfo *coin);
+
+
+ /**
* Check if we have the specified deposit already in the database.
*
* @param cls the @e cls of this struct with the plugin-specific state