diff options
author | Özgür Kesim <oec-taler@kesim.org> | 2022-01-08 14:40:20 +0100 |
---|---|---|
committer | Özgür Kesim <oec-taler@kesim.org> | 2022-01-08 14:40:20 +0100 |
commit | cc7d7707ab2bd43bc9e95c0eeec9ce95cdc0c523 (patch) | |
tree | 472e895b321e539f4675f016a285d6f6e6436b76 /src/include/taler_exchangedb_plugin.h | |
parent | b49fac3d5892f75a2eb7fbfbca0056965c6967c7 (diff) | |
download | exchange-cc7d7707ab2bd43bc9e95c0eeec9ce95cdc0c523.tar.gz exchange-cc7d7707ab2bd43bc9e95c0eeec9ce95cdc0c523.tar.bz2 exchange-cc7d7707ab2bd43bc9e95c0eeec9ce95cdc0c523.zip |
[age restriction] progress 10/n
More work towards support for extensions:
- Prepared statements and DB-plugin-functions for setting and retrieving
configurations from the database added.
- primitive "registry" of extensions for age restrictions and peer2peer
(stub)
- TALER_Extensions now with FP for parsing, setting and converting a
configuration.
- /management/extensions handler now verifies signature of the (opaque)
json object for all extensions.
- /management/extensions handler calls the FP in the corrensponding
TALER_Extension for parsing and setting the configuration of a
particular extension
More work towards age restriction:
- TALER_Extensions interfaces for config-parser, -setter and converter
implemented for age restriction
- DB event handler now retrieves config from database, parses it and
sets it (the age mask) in the global extension.
- load_age_mask now loads age mask from the global extension (and not
from the config file)
- add age_restricted_denoms to /keys response
Diffstat (limited to 'src/include/taler_exchangedb_plugin.h')
-rw-r--r-- | src/include/taler_exchangedb_plugin.h | 29 |
1 files changed, 28 insertions, 1 deletions
diff --git a/src/include/taler_exchangedb_plugin.h b/src/include/taler_exchangedb_plugin.h index ee691084e..4aa80b674 100644 --- a/src/include/taler_exchangedb_plugin.h +++ b/src/include/taler_exchangedb_plugin.h @@ -4025,8 +4025,35 @@ struct TALER_EXCHANGEDB_Plugin (*delete_shard_locks)(void *cls); /** - * TODO-oec: add function for adding extension config + * Function called to save the configuration of an extension + * (age-restriction, peer2peer, ...) + * + * @param cls the @e cls of this struct with the plugin-specific state + * @param extension_name the name of the extension + * @param config JSON object of the configuration as string + * @param config_sig signature of the configuration by the offline master key + * @return transaction status code */ + enum GNUNET_DB_QueryStatus + (*set_extension_config)(void *cls, + const char *extension_name, + const char *config, + const struct TALER_MasterSignatureP *config_sig); + + /** + * Function called to retrieve the configuration of an extension + * (age-restriction, peer2peer, ...) + * + * @param cls the @e cls of this struct with the plugin-specific state + * @param extension_name the name of the extension + * @param[out] config JSON object of the configuration as string + * @param[out] config_sig signature of the configuration by the master key + * @return transaction status code + */ + enum GNUNET_DB_QueryStatus + (*get_extension_config)(void *cls, + const char *extension_name, + char **config); }; |