51 unsigned int param_length,
53 unsigned int scratch_length)
56 (void) scratch_length;
60 if (1 != param_length)
62 param_values[0] = NULL;
102 unsigned int param_length,
104 unsigned int scratch_length)
107 (void) scratch_length;
109 if (1 != param_length)
111 param_values[0] = (
void *)
data;
112 param_lengths[0] = data_len;
113 param_formats[0] = 1;
141 static uint8_t bt = 1;
142 static uint8_t bf = 0;
167 void *param_values[],
170 unsigned int param_length,
172 unsigned int scratch_length)
174 const uint16_t *u_hbo =
data;
178 (void) scratch_length;
180 if (1 != param_length)
184 *u_nbo = htons (*u_hbo);
185 param_values[0] = (
void *) u_nbo;
186 param_lengths[0] =
sizeof(uint16_t);
187 param_formats[0] = 1;
224 void *param_values[],
227 unsigned int param_length,
229 unsigned int scratch_length)
231 const uint32_t *u_hbo =
data;
235 (void) scratch_length;
237 if (1 != param_length)
241 *u_nbo = htonl (*u_hbo);
242 param_values[0] = (
void *) u_nbo;
243 param_lengths[0] =
sizeof(uint32_t);
244 param_formats[0] = 1;
281 void *param_values[],
284 unsigned int param_length,
286 unsigned int scratch_length)
288 const uint64_t *u_hbo =
data;
292 (void) scratch_length;
294 if (1 != param_length)
299 param_values[0] = (
void *) u_nbo;
300 param_lengths[0] =
sizeof(uint64_t);
301 param_formats[0] = 1;
338 void *param_values[],
341 unsigned int param_length,
343 unsigned int scratch_length)
350 if (1 != param_length)
355 param_values[0] = (
void *)
buf;
356 param_lengths[0] = buf_size;
357 param_formats[0] = 1;
394 void *param_values[],
397 unsigned int param_length,
399 unsigned int scratch_length)
406 if (1 != param_length)
411 param_values[0] = (
void *)
buf;
412 param_lengths[0] = buf_size;
413 param_formats[0] = 1;
449 void *param_values[],
452 unsigned int param_length,
454 unsigned int scratch_length)
461 if (1 != param_length)
469 param_values[0] = (
void *) u_nbo;
470 param_lengths[0] =
sizeof(uint64_t);
471 param_formats[0] = 1;
508 void *param_values[],
511 unsigned int param_length,
513 unsigned int scratch_length)
520 if (1 != param_length)
528 param_values[0] = (
void *) u_nbo;
529 param_lengths[0] =
sizeof(uint64_t);
530 param_formats[0] = 1;
uint32_t data
The data value.
helper functions for Postgres DB interactions
#define GNUNET_PQ_query_param_auto_from_type(x)
Generate fixed-size query parameter with size determined by variable type.
size_t GNUNET_CRYPTO_rsa_public_key_encode(const struct GNUNET_CRYPTO_RsaPublicKey *key, void **buffer)
Encode the public key in a format suitable for storing it into a file.
uint64_t GNUNET_htonll(uint64_t n)
Convert unsigned 64-bit integer to network byte order.
size_t GNUNET_CRYPTO_rsa_signature_encode(const struct GNUNET_CRYPTO_RsaSignature *sig, void **buffer)
Encode the given signature in a format suitable for storing it into a file.
#define GNUNET_break(cond)
Use this for internal assertion violations that are not fatal (can be handled) but should not occur.
#define GNUNET_new(type)
Allocate a struct or union of the given type.
struct GNUNET_PQ_QueryParam GNUNET_PQ_query_param_fixed_size(const void *ptr, size_t ptr_size)
Generate query parameter for a buffer ptr of ptr_size bytes.
static int qconv_fixed(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)
Function called to convert input argument into SQL parameters.
struct GNUNET_PQ_QueryParam GNUNET_PQ_query_param_uint64(const uint64_t *x)
Generate query parameter for an uint16_t in host byte order.
static int qconv_rel_time(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)
Function called to convert input argument into SQL parameters.
struct GNUNET_PQ_QueryParam GNUNET_PQ_query_param_null(void)
Generate query parameter to create a NULL value.
struct GNUNET_PQ_QueryParam GNUNET_PQ_query_param_absolute_time(const struct GNUNET_TIME_Absolute *x)
Generate query parameter for an absolute time value.
struct GNUNET_PQ_QueryParam GNUNET_PQ_query_param_relative_time(const struct GNUNET_TIME_Relative *x)
Generate query parameter for a relative time value.
struct GNUNET_PQ_QueryParam GNUNET_PQ_query_param_uint16(const uint16_t *x)
Generate query parameter for an uint16_t in host byte order.
struct GNUNET_PQ_QueryParam GNUNET_PQ_query_param_rsa_public_key(const struct GNUNET_CRYPTO_RsaPublicKey *x)
Generate query parameter for an RSA public key.
static int qconv_null(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)
Function called to convert input argument into SQL parameters.
struct GNUNET_PQ_QueryParam GNUNET_PQ_query_param_absolute_time_nbo(const struct GNUNET_TIME_AbsoluteNBO *x)
Generate query parameter for an absolute time value.
struct GNUNET_PQ_QueryParam GNUNET_PQ_query_param_bool(bool b)
Pass a boolean into a query.
static int qconv_uint64(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)
Function called to convert input argument into SQL parameters.
static int qconv_uint32(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)
Function called to convert input argument into SQL parameters.
static int qconv_abs_time(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)
Function called to convert input argument into SQL parameters.
static int qconv_rsa_signature(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)
Function called to convert input argument into SQL parameters.
struct GNUNET_PQ_QueryParam GNUNET_PQ_query_param_uint32(const uint32_t *x)
Generate query parameter for an uint32_t in host byte order.
static int qconv_uint16(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)
Function called to convert input argument into SQL parameters.
struct GNUNET_PQ_QueryParam GNUNET_PQ_query_param_timestamp(const struct GNUNET_TIME_Timestamp *x)
Generate query parameter for a timestamp.
static int qconv_rsa_public_key(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)
Function called to convert input argument into SQL parameters.
struct GNUNET_PQ_QueryParam GNUNET_PQ_query_param_timestamp_nbo(const struct GNUNET_TIME_TimestampNBO *x)
Generate query parameter for a timestamp in NBO.
struct GNUNET_PQ_QueryParam GNUNET_PQ_query_param_string(const char *ptr)
Generate query parameter for a string.
struct GNUNET_PQ_QueryParam GNUNET_PQ_query_param_rsa_signature(const struct GNUNET_CRYPTO_RsaSignature *x)
Generate query parameter for an RSA signature.
The public information of an RSA key pair.
Description of a DB query parameter.
Time for absolute time used by GNUnet, in microseconds and in network byte order.
Time for absolute times used by GNUnet, in microseconds.
uint64_t abs_value_us
The actual value.
Time for relative time used by GNUnet, in microseconds.
uint64_t rel_value_us
The actual value.
Time for timestamps used by GNUnet, in seconds and in network byte order.
Rounded time for timestamps used by GNUnet, in seconds.