static struct GNUNET_GNSRECORD_Data *
create_record (int count)
{
- unsigned int c;
struct GNUNET_GNSRECORD_Data *rd;
rd = GNUNET_malloc (count * sizeof (struct GNUNET_GNSRECORD_Data));
- for (c = 0; c < count; c++)
+ for (unsigned int c = 0; c < count; c++)
{
rd[c].expiration_time = GNUNET_TIME_absolute_get().abs_value_us + 1000000000;
rd[c].record_type = TEST_RECORD_TYPE;
const struct GNUNET_GNSRECORD_Data *rd)
{
char rd_cmp_data[TEST_RECORD_DATALEN];
- int c;
GNUNET_assert (RECORDS == rd_count);
GNUNET_assert (NULL != rd);
-
- memset (rd_cmp_data, 'a', TEST_RECORD_DATALEN);
- for (c = 0; c < rd_count; c++)
+ memset (rd_cmp_data,
+ 'a',
+ TEST_RECORD_DATALEN);
+ for (unsigned int c = 0; c < rd_count; c++)
{
GNUNET_assert (TEST_RECORD_TYPE == rd[c].record_type);
GNUNET_assert (TEST_RECORD_DATALEN == rd[c].data_size);
- GNUNET_assert (0 == memcmp (&rd_cmp_data, rd[c].data, TEST_RECORD_DATALEN));
+ GNUNET_assert (0 == memcmp (&rd_cmp_data,
+ rd[c].data,
+ TEST_RECORD_DATALEN));
}
GNUNET_log (GNUNET_ERROR_TYPE_DEBUG,
"Block was decrypted successfully \n");
}
static void
-run (void *cls, char *const *args, const char *cfgfile,
+run (void *cls,
+ char *const *args,
+ const char *cfgfile,
const struct GNUNET_CONFIGURATION_Handle *cfg)
{
struct GNUNET_GNSRECORD_Block *block;
struct GNUNET_CRYPTO_EcdsaPublicKey pubkey;
+ struct GNUNET_HashCode query_pub;
+ struct GNUNET_HashCode query_priv;
- /* load privat key */
- char *hostkey_file;
- GNUNET_asprintf(&hostkey_file,
- "zonefiles%s%s",
- DIR_SEPARATOR_STR,
- "N0UJMP015AFUNR2BTNM3FKPBLG38913BL8IDMCO2H0A1LIB81960.zkey");
- GNUNET_log (GNUNET_ERROR_TYPE_DEBUG,
- "Using zonekey file `%s'\n",
- hostkey_file);
- privkey = GNUNET_CRYPTO_ecdsa_key_create_from_file(hostkey_file);
- GNUNET_free (hostkey_file);
- GNUNET_assert (privkey != NULL);
+ privkey = GNUNET_CRYPTO_ecdsa_key_create ();
+ GNUNET_assert (NULL != privkey);
struct GNUNET_TIME_Absolute expire = GNUNET_TIME_absolute_get();
- /* get public key */
- GNUNET_CRYPTO_ecdsa_key_get_public(privkey, &pubkey);
+ /* get public key */
+ GNUNET_CRYPTO_ecdsa_key_get_public (privkey,
+ &pubkey);
+
+ /* test query derivation */
+ GNUNET_GNSRECORD_query_from_private_key (privkey,
+ "testlabel",
+ &query_priv);
+ GNUNET_GNSRECORD_query_from_public_key (&pubkey,
+ "testlabel",
+ &query_pub);
+ GNUNET_assert (0 == memcmp (&query_priv,
+ &query_pub,
+ sizeof (struct GNUNET_HashCode)));
/* create record */
s_name = "DUMMY.dummy.gnunet";
s_rd = create_record (RECORDS);
/* Create block */
- GNUNET_assert (NULL != (block = GNUNET_GNSRECORD_block_create (privkey, expire,s_name, s_rd, RECORDS)));
- GNUNET_assert (GNUNET_OK == GNUNET_GNSRECORD_block_verify (block));
- GNUNET_assert (GNUNET_OK == GNUNET_GNSRECORD_block_decrypt (block, &pubkey, s_name, &rd_decrypt_cb, s_name));
-
+ GNUNET_assert (NULL != (block =
+ GNUNET_GNSRECORD_block_create (privkey,
+ expire,
+ s_name,
+ s_rd,
+ RECORDS)));
+ GNUNET_assert (GNUNET_OK ==
+ GNUNET_GNSRECORD_block_verify (block));
+ GNUNET_assert (GNUNET_OK ==
+ GNUNET_GNSRECORD_block_decrypt (block,
+ &pubkey,
+ s_name,
+ &rd_decrypt_cb,
+ s_name));
GNUNET_free (block);
}
int
main (int argc, char *argv[])
{
- static char *const argvx[] = { "test-gnsrecord-crypto",
+ static char *const argvx[] = {
+ "test-gnsrecord-crypto",
NULL
};
static struct GNUNET_GETOPT_CommandLineOption options[] = {
};
res = 1;
- GNUNET_PROGRAM_run ((sizeof (argvx) / sizeof (char *)) - 1, argvx, "test-namestore-api",
- "nohelp", options, &run, &res);
+ GNUNET_PROGRAM_run ((sizeof (argvx) / sizeof (char *)) - 1,
+ argvx,
+ "test-gnsrecord-crypto",
+ "nohelp", options,
+ &run, &res);
return res;
}