diff options
| author | Christian Grothoff <christian@grothoff.org> | 2015-06-12 21:29:21 +0200 | 
|---|---|---|
| committer | Christian Grothoff <christian@grothoff.org> | 2015-06-12 21:29:21 +0200 | 
| commit | 699f283ca77c5685c9dc610805312215eef9babc (patch) | |
| tree | 8c7dcc9854d8dc476c28904d9093e77d926f2604 /src/mintdb | |
| parent | 5c01da52b1309607311b0b2e608e5de3a77b7ffe (diff) | |
| parent | 6c440e0cec9b1faa0ae819e85f9974fddd38b9c2 (diff) | |
Merge branch 'master' of git+ssh://git.taler.net/var/git/mint
Diffstat (limited to 'src/mintdb')
| -rw-r--r-- | src/mintdb/perf_taler_mintdb_init.c | 2 | ||||
| -rw-r--r-- | src/mintdb/perf_taler_mintdb_init.h | 48 | ||||
| -rw-r--r-- | src/mintdb/perf_taler_mintdb_interpreter.c | 18 | ||||
| -rw-r--r-- | src/mintdb/perf_taler_mintdb_interpreter.h | 18 | 
4 files changed, 74 insertions, 12 deletions
| diff --git a/src/mintdb/perf_taler_mintdb_init.c b/src/mintdb/perf_taler_mintdb_init.c index b4add8d3..f88695d8 100644 --- a/src/mintdb/perf_taler_mintdb_init.c +++ b/src/mintdb/perf_taler_mintdb_init.c @@ -376,6 +376,8 @@ PERF_TALER_MINTDB_coin_public_info_init ()  int  PERF_TALER_MINTDB_coin_public_info_free (struct TALER_CoinPublicInfo *cpi)  { +  GNUNET_CRYPTO_rsa_signature_free (cpi->denom_sig.rsa_signature); +  GNUNET_CRYPTO_rsa_public_key_free (cpi->denom_pub.rsa_public_key);    GNUNET_free (cpi);     return GNUNET_OK;  } diff --git a/src/mintdb/perf_taler_mintdb_init.h b/src/mintdb/perf_taler_mintdb_init.h index eef2165d..14bbb212 100644 --- a/src/mintdb/perf_taler_mintdb_init.h +++ b/src/mintdb/perf_taler_mintdb_init.h @@ -27,40 +27,86 @@  #define CURRENCY "EUR" +/** + * @return a randomly generated CollectableBlindcoin + */  struct TALER_MINTDB_CollectableBlindcoin *  PERF_TALER_MINTDB_collectable_blindcoin_init (void); +/** + * Liberate memory of @a coin + */  int  PERF_TALER_MINTDB_collectable_blindcoin_free (struct TALER_MINTDB_CollectableBlindcoin *NAME); +/** + * @return a randomly generated reserve + */  struct TALER_MINTDB_Reserve *  PERF_TALER_MINTDB_reserve_init (void); +/** + * Free memory of a reserve + */  int  PERF_TALER_MINTDB_reserve_free (struct TALER_MINTDB_Reserve *reserve); +/** + * @return a randomly generated refresh session + */  struct TALER_MINTDB_RefreshSession *  PERF_TALER_MINTDB_refresh_session_init (void); +/** + * Frees memory of a refresh_session + */ +int +PERF_TALER_MINTDB_refresh_session_free (struct TALER_MINTDB_RefreshSession *refresh_session); + + +/** + * Create a randomly generated deposit + */  struct TALER_MINTDB_Deposit *  PERF_TALER_MINTDB_deposit_init (); +/** + * Free memory of a deposit + */  int  PERF_TALER_MINTDB_deposit_free (struct TALER_MINTDB_Deposit *deposit); +/** + * Generate a randomly generate DenominationKeyInformation + */  struct TALER_MINTDB_DenominationKeyIssueInformation * -PERF_TALER_MINTDB_init_denomination(void); +PERF_TALER_MINTDB_denomination_init (void); +/** + * Free memory for a DenominationKeyIssueInformation + */  int  PERF_TALER_MINTDB_denomination_free (struct TALER_MINTDB_DenominationKeyIssueInformation *dki); +/** + * Generate a random CoinPublicInfo + */ +struct TALER_CoinPublicInfo * +PERF_TALER_MINTDB_coin_public_info_init (void); + + +/** + * Free a CoinPublicInfo + */ +int PERF_TALER_MINTDB_coin_public_info_free (struct TALER_CoinPublicInfo *cpi); +  #endif diff --git a/src/mintdb/perf_taler_mintdb_interpreter.c b/src/mintdb/perf_taler_mintdb_interpreter.c index 8efe0a77..ac2ea1e6 100644 --- a/src/mintdb/perf_taler_mintdb_interpreter.c +++ b/src/mintdb/perf_taler_mintdb_interpreter.c @@ -135,7 +135,7 @@ static int  cmd_clean (struct PERF_TALER_MINTDB_Cmd cmd[])  {    int i = 0; -  for (i=0; PERF_TALER_MINTDB_CMD_END != cmd[i].command; i++) +  for (i = 0; PERF_TALER_MINTDB_CMD_END != cmd[i].command; i++)    {      switch (cmd[i].command)      { @@ -152,15 +152,12 @@ cmd_clean (struct PERF_TALER_MINTDB_Cmd cmd[])            cmd[i].details.save_array.data_saved = NULL;          } -      case PERF_TALER_MINTDB_CMD_INSERT_DEPOSIT: -        PERF_TALER_MINTDB_deposit_free (cmd[i].exposed.deposit); -        break; -        case PERF_TALER_MINTDB_CMD_LOAD_ARRAY:          GNUNET_free (cmd[i].details.load_array.permutation);          break;        default: +        data_free (&cmd[i].exposed, cmd[i].exposed_type);          break;      } @@ -178,15 +175,17 @@ interpret_end_loop (struct PERF_TALER_MINTDB_interpreter_state *state)  {    int jump = cmd_find (state->cmd,                          state->cmd[state->i].details.end_loop.label_loop); +   +  state->cmd[jump].details.loop.curr_iteration++;    // If the loop is not finished    if (state->cmd[jump].details.loop.max_iterations >         state->cmd[jump].details.loop.curr_iteration)    {      // jump back to the start -    state->i = jump -1; +    state->i = jump;    }else{      // Reset the loop counter and continue running -    state->cmd[jump].details.loop.curr_iteration = -1; +    state->cmd[jump].details.loop.curr_iteration = 0;    }    // Cleaning up the memory in the loop    int j; @@ -216,8 +215,11 @@ interpret (struct PERF_TALER_MINTDB_interpreter_state *state)        case PERF_TALER_MINTDB_CMD_END:          return GNUNET_YES; +      case PERF_TALER_MINTDB_CMD_DEBUG: +        printf("%s\n", state->cmd[state->i].label); +        break; +        case PERF_TALER_MINTDB_CMD_LOOP: -        state->cmd[state->i].details.loop.curr_iteration++;          break;        case PERF_TALER_MINTDB_CMD_END_LOOP: diff --git a/src/mintdb/perf_taler_mintdb_interpreter.h b/src/mintdb/perf_taler_mintdb_interpreter.h index 9556095c..a10d29d5 100644 --- a/src/mintdb/perf_taler_mintdb_interpreter.h +++ b/src/mintdb/perf_taler_mintdb_interpreter.h @@ -36,6 +36,16 @@    .exposed_type = PERF_TALER_MINTDB_NONE \  } + +/** + * + */ +#define PERF_TALER_MINTDB_INIT_CMD_DEBUG(_label) \ +{ \ +  .command = PERF_TALER_MINTDB_CMD_DEBUG, \ +  .label = _label, \ +  .exposed_type = PERF_TALER_MINTDB_NONE \ +}  /**   * The begining of a loop   * @param _label the name of the loop @@ -48,7 +58,7 @@    .exposed_type = PERF_TALER_MINTDB_NONE , \    .details.loop = { \      .max_iterations = _iter , \ -    .curr_iteration = -1} \ +    .curr_iteration = 0} \  }  /** @@ -155,6 +165,7 @@  { \    .command = PERF_TALER_MINTDB_CMD_LOAD_ARRAY, \    .label = _label, \ +  .exposed_type = PERF_TALER_MINTDB_NONE, \    .details.load_array = { \      .label_loop = _label_loop, \      .label_save = _label_save \ @@ -170,8 +181,8 @@  enum PERF_TALER_MINTDB_Type   {    PERF_TALER_MINTDB_NONE, -  PERF_TALER_MINTDB_DEPOSIT,    PERF_TALER_MINTDB_TIME, +  PERF_TALER_MINTDB_DEPOSIT,  }; @@ -192,7 +203,8 @@ enum PERF_TALER_MINTDB_CMD_Name  {    // All comand chain must hace this as their last command    PERF_TALER_MINTDB_CMD_END, - +  // Prints it's label +  PERF_TALER_MINTDB_CMD_DEBUG,    // Define the start of al command chain loop    PERF_TALER_MINTDB_CMD_LOOP,    // | 
