diff options
author | Christian Blättler <blatc2@bfh.ch> | 2024-04-18 08:46:48 +0200 |
---|---|---|
committer | Christian Blättler <blatc2@bfh.ch> | 2024-04-18 08:47:44 +0200 |
commit | b8ccad96cd8f6c4888cca01162ec7536bb8cc7d3 (patch) | |
tree | 9697547dea1152a5a5638acfe86881d706f38a05 /src/pq/pq_query_helper.c | |
parent | 8fe81d1ce49f34438c5de9b0414d10068372c48a (diff) | |
download | exchange-b8ccad96cd8f6c4888cca01162ec7536bb8cc7d3.tar.xz |
move query & result helpers to gnunet
Diffstat (limited to 'src/pq/pq_query_helper.c')
-rw-r--r-- | src/pq/pq_query_helper.c | 200 |
1 files changed, 0 insertions, 200 deletions
diff --git a/src/pq/pq_query_helper.c b/src/pq/pq_query_helper.c index d25b3223e..b1dfd4cf1 100644 --- a/src/pq/pq_query_helper.c +++ b/src/pq/pq_query_helper.c @@ -1336,204 +1336,4 @@ TALER_PQ_query_param_array_amount_with_currency ( } -/** - * Function called to convert input argument into SQL parameters. - * - * @param cls closure - * @param data pointer to input argument - * @param data_len number of bytes in @a data (if applicable) - * @param[out] param_values SQL data to set - * @param[out] param_lengths SQL length data to set - * @param[out] param_formats SQL format data to set - * @param param_length number of entries available in the @a param_values, @a param_lengths and @a param_formats arrays - * @param[out] scratch buffer for dynamic allocations (to be done via #GNUNET_malloc() - * @param scratch_length number of entries left in @a scratch - * @return -1 on error, number of offsets used in @a scratch otherwise - */ -static int -qconv_blind_sign_pub (void *cls, - const void *data, - size_t data_len, - void *param_values[], - int param_lengths[], - int param_formats[], - unsigned int param_length, - void *scratch[], - unsigned int scratch_length) -{ - const struct GNUNET_CRYPTO_BlindSignPublicKey *public_key = data; - size_t tlen; - size_t len; - uint32_t be; - char *buf; - void *tbuf; - - (void) cls; - (void) data_len; - GNUNET_assert (1 == param_length); - GNUNET_assert (scratch_length > 0); - GNUNET_break (NULL == cls); - be = htonl ((uint32_t) public_key->cipher); - switch (public_key->cipher) - { - case GNUNET_CRYPTO_BSA_RSA: - tlen = GNUNET_CRYPTO_rsa_public_key_encode ( - public_key->details.rsa_public_key, - &tbuf); - break; - case GNUNET_CRYPTO_BSA_CS: - tlen = sizeof (public_key->details.cs_public_key); - break; - default: - GNUNET_assert (0); - } - len = tlen + sizeof (be); - buf = GNUNET_malloc (len); - GNUNET_memcpy (buf, - &be, - sizeof (be)); - switch (public_key->cipher) - { - case GNUNET_CRYPTO_BSA_RSA: - GNUNET_memcpy (&buf[sizeof (be)], - tbuf, - tlen); - GNUNET_free (tbuf); - break; - case GNUNET_CRYPTO_BSA_CS: - GNUNET_memcpy (&buf[sizeof (be)], - &public_key->details.cs_public_key, - tlen); - break; - default: - GNUNET_assert (0); - } - - scratch[0] = buf; - param_values[0] = (void *) buf; - param_lengths[0] = len; - param_formats[0] = 1; - return 1; -} - - -/** - * Generate query parameter for a blind sign public key of variable size. - * - * @param public_key pointer to the query parameter to pass - */ -struct GNUNET_PQ_QueryParam -TALER_PQ_query_param_blind_sign_pub ( - const struct GNUNET_CRYPTO_BlindSignPublicKey *public_key) -{ - struct GNUNET_PQ_QueryParam res = { - .conv = &qconv_blind_sign_pub, - .data = public_key, - .num_params = 1 - }; - - return res; -} - - -/** - * Function called to convert input argument into SQL parameters. - * - * @param cls closure - * @param data pointer to input argument - * @param data_len number of bytes in @a data (if applicable) - * @param[out] param_values SQL data to set - * @param[out] param_lengths SQL length data to set - * @param[out] param_formats SQL format data to set - * @param param_length number of entries available in the @a param_values, @a param_lengths and @a param_formats arrays - * @param[out] scratch buffer for dynamic allocations (to be done via #GNUNET_malloc() - * @param scratch_length number of entries left in @a scratch - * @return -1 on error, number of offsets used in @a scratch otherwise - */ -static int -qconv_blind_sign_priv (void *cls, - const void *data, - size_t data_len, - void *param_values[], - int param_lengths[], - int param_formats[], - unsigned int param_length, - void *scratch[], - unsigned int scratch_length) -{ - const struct GNUNET_CRYPTO_BlindSignPrivateKey *private_key = data; - size_t tlen; - size_t len; - uint32_t be; - char *buf; - void *tbuf; - - (void) cls; - (void) data_len; - GNUNET_assert (1 == param_length); - GNUNET_assert (scratch_length > 0); - GNUNET_break (NULL == cls); - be = htonl ((uint32_t) private_key->cipher); - switch (private_key->cipher) - { - case GNUNET_CRYPTO_BSA_RSA: - tlen = GNUNET_CRYPTO_rsa_private_key_encode ( - private_key->details.rsa_private_key, - &tbuf); - break; - case GNUNET_CRYPTO_BSA_CS: - tlen = sizeof (private_key->details.cs_private_key); - break; - default: - GNUNET_assert (0); - } - len = tlen + sizeof (be); - buf = GNUNET_malloc (len); - GNUNET_memcpy (buf, - &be, - sizeof (be)); - switch (private_key->cipher) - { - case GNUNET_CRYPTO_BSA_RSA: - GNUNET_memcpy (&buf[sizeof (be)], - tbuf, - tlen); - GNUNET_free (tbuf); - break; - case GNUNET_CRYPTO_BSA_CS: - GNUNET_memcpy (&buf[sizeof (be)], - &private_key->details.cs_private_key, - tlen); - break; - default: - GNUNET_assert (0); - } - - scratch[0] = buf; - param_values[0] = (void *) buf; - param_lengths[0] = len; - param_formats[0] = 1; - return 1; -} - - -/** - * Generate query parameter for a blind sign private key of variable size. - * - * @param private_key pointer to the query parameter to pass - */ -struct GNUNET_PQ_QueryParam -TALER_PQ_query_param_blind_sign_priv ( - const struct GNUNET_CRYPTO_BlindSignPrivateKey *private_key) -{ - struct GNUNET_PQ_QueryParam res = { - .conv = &qconv_blind_sign_priv, - .data = private_key, - .num_params = 1 - }; - - return res; -} - - /* end of pq/pq_query_helper.c */ |