test_pseudonym.c | test_pseudonym.c | |||
---|---|---|---|---|
skipping to change at line 42 | skipping to change at line 42 | |||
#include "gnunet_pseudonym_lib.h" | #include "gnunet_pseudonym_lib.h" | |||
#define CHECK(a) do { if (!(a)) { ok = GNUNET_NO; GNUNET_break(0); goto FAI LURE; } } while (0) | #define CHECK(a) do { if (!(a)) { ok = GNUNET_NO; GNUNET_break(0); goto FAI LURE; } } while (0) | |||
static struct GNUNET_CONTAINER_MetaData *meta; | static struct GNUNET_CONTAINER_MetaData *meta; | |||
static GNUNET_HashCode id1; | static GNUNET_HashCode id1; | |||
static int | static int | |||
iter (void *cls, const GNUNET_HashCode * pseudonym, | iter (void *cls, const GNUNET_HashCode * pseudonym, | |||
const char *name, const char *unique_name, | ||||
const struct GNUNET_CONTAINER_MetaData *md, int rating) | const struct GNUNET_CONTAINER_MetaData *md, int rating) | |||
{ | { | |||
int *ok = cls; | int *ok = cls; | |||
if ((0 == memcmp (pseudonym, &id1, sizeof (GNUNET_HashCode))) && | if ((0 == memcmp (pseudonym, &id1, sizeof (GNUNET_HashCode))) && | |||
(!GNUNET_CONTAINER_meta_data_test_equal (md, meta))) | (!GNUNET_CONTAINER_meta_data_test_equal (md, meta))) | |||
{ | { | |||
*ok = GNUNET_NO; | *ok = GNUNET_NO; | |||
GNUNET_break (0); | GNUNET_break (0); | |||
} | } | |||
return GNUNET_OK; | return GNUNET_OK; | |||
} | } | |||
static int | static int | |||
noti_callback (void *cls, const GNUNET_HashCode * pseudonym, | noti_callback (void *cls, const GNUNET_HashCode * pseudonym, | |||
const char *name, const char *unique_name, | ||||
const struct GNUNET_CONTAINER_MetaData *md, int rating) | const struct GNUNET_CONTAINER_MetaData *md, int rating) | |||
{ | { | |||
int *ret = cls; | int *ret = cls; | |||
(*ret)++; | (*ret)++; | |||
return GNUNET_OK; | return GNUNET_OK; | |||
} | } | |||
static int | static int | |||
fake_noti_callback (void *cls, const GNUNET_HashCode * pseudonym, | fake_noti_callback (void *cls, const GNUNET_HashCode * pseudonym, | |||
const char *name, const char *unique_name, | ||||
const struct GNUNET_CONTAINER_MetaData *md, int rating) | const struct GNUNET_CONTAINER_MetaData *md, int rating) | |||
{ | { | |||
int *ret = cls; | int *ret = cls; | |||
(*ret)++; | (*ret)++; | |||
return GNUNET_OK; | return GNUNET_OK; | |||
} | } | |||
static int | static int | |||
false_callback (void *cls, const GNUNET_HashCode * pseudonym, | false_callback (void *cls, const GNUNET_HashCode * pseudonym, | |||
const char *name, const char *unique_name, | ||||
const struct GNUNET_CONTAINER_MetaData *md, int rating) | const struct GNUNET_CONTAINER_MetaData *md, int rating) | |||
{ | { | |||
return GNUNET_OK; | return GNUNET_OK; | |||
} | } | |||
int | int | |||
main (int argc, char *argv[]) | main (int argc, char *argv[]) | |||
{ | { | |||
int ok; | int ok; | |||
GNUNET_HashCode rid1; | GNUNET_HashCode rid1; | |||
skipping to change at line 98 | skipping to change at line 102 | |||
GNUNET_HashCode rid2; | GNUNET_HashCode rid2; | |||
GNUNET_HashCode fid; | GNUNET_HashCode fid; | |||
GNUNET_HashCode id3; | GNUNET_HashCode id3; | |||
int old; | int old; | |||
int newVal; | int newVal; | |||
struct GNUNET_CONFIGURATION_Handle *cfg; | struct GNUNET_CONFIGURATION_Handle *cfg; | |||
char *name1; | char *name1; | |||
char *name2; | char *name2; | |||
char *name3; | char *name3; | |||
char *name1_unique; | ||||
char *name2_unique; | ||||
char *noname; | char *noname; | |||
int noname_is_a_dup; | ||||
int notiCount, fakenotiCount; | int notiCount, fakenotiCount; | |||
int count; | int count; | |||
static char m[1024 * 1024 * 10]; | static char m[1024 * 1024 * 10]; | |||
memset (m, 'b', sizeof (m)); | memset (m, 'b', sizeof (m)); | |||
m[sizeof (m) - 1] = '\0'; | m[sizeof (m) - 1] = '\0'; | |||
GNUNET_log_setup ("test-pseudonym", "WARNING", NULL); | GNUNET_log_setup ("test-pseudonym", "WARNING", NULL); | |||
ok = GNUNET_YES; | ok = GNUNET_YES; | |||
GNUNET_CRYPTO_random_disable_entropy_gathering (); | GNUNET_CRYPTO_random_disable_entropy_gathering (); | |||
skipping to change at line 155 | skipping to change at line 162 | |||
newVal = GNUNET_PSEUDONYM_list_all (cfg, &iter, &ok); | newVal = GNUNET_PSEUDONYM_list_all (cfg, &iter, &ok); | |||
CHECK (old < newVal); | CHECK (old < newVal); | |||
GNUNET_assert (GNUNET_OK == | GNUNET_assert (GNUNET_OK == | |||
GNUNET_CONTAINER_meta_data_insert (meta, "<test>", | GNUNET_CONTAINER_meta_data_insert (meta, "<test>", | |||
EXTRACTOR_METATYPE_COMM ENT, | EXTRACTOR_METATYPE_COMM ENT, | |||
EXTRACTOR_METAFORMAT_UT F8, | EXTRACTOR_METAFORMAT_UT F8, | |||
"text/plain", m, | "text/plain", m, | |||
strlen (m) + 1)); | strlen (m) + 1)); | |||
GNUNET_CRYPTO_hash_create_random (GNUNET_CRYPTO_QUALITY_WEAK, &id3); | GNUNET_CRYPTO_hash_create_random (GNUNET_CRYPTO_QUALITY_WEAK, &id3); | |||
GNUNET_PSEUDONYM_add (cfg, &id3, meta); | GNUNET_PSEUDONYM_add (cfg, &id3, meta); | |||
name3 = GNUNET_PSEUDONYM_id_to_name (cfg, &id3); | GNUNET_PSEUDONYM_get_info (cfg, &id3, NULL, NULL, &name3, NULL); | |||
name2 = GNUNET_PSEUDONYM_id_to_name (cfg, &id2); | CHECK (name3 != NULL); | |||
GNUNET_PSEUDONYM_get_info (cfg, &id2, NULL, NULL, &name2, NULL); | ||||
CHECK (name2 != NULL); | CHECK (name2 != NULL); | |||
name1 = GNUNET_PSEUDONYM_id_to_name (cfg, &id1); | GNUNET_PSEUDONYM_get_info (cfg, &id1, NULL, NULL, &name1, NULL); | |||
CHECK (name1 != NULL); | CHECK (name1 != NULL); | |||
CHECK (0 != strcmp (name1, name2)); | CHECK (0 == strcmp (name1, name2)); | |||
name1_unique = GNUNET_PSEUDONYM_name_uniquify (cfg, &id1, name1, NULL); | ||||
name2_unique = GNUNET_PSEUDONYM_name_uniquify (cfg, &id2, name2, NULL); | ||||
CHECK (0 != strcmp (name1_unique, name2_unique)); | ||||
CHECK (GNUNET_SYSERR == GNUNET_PSEUDONYM_name_to_id (cfg, "fake", &rid2)) ; | CHECK (GNUNET_SYSERR == GNUNET_PSEUDONYM_name_to_id (cfg, "fake", &rid2)) ; | |||
CHECK (GNUNET_OK == GNUNET_PSEUDONYM_name_to_id (cfg, name2, &rid2)); | CHECK (GNUNET_SYSERR == GNUNET_PSEUDONYM_name_to_id (cfg, name2, &rid2)); | |||
CHECK (GNUNET_OK == GNUNET_PSEUDONYM_name_to_id (cfg, name1, &rid1)); | CHECK (GNUNET_SYSERR == GNUNET_PSEUDONYM_name_to_id (cfg, name1, &rid1)); | |||
CHECK (GNUNET_OK == GNUNET_PSEUDONYM_name_to_id (cfg, name2_unique, &rid2 | ||||
)); | ||||
CHECK (GNUNET_OK == GNUNET_PSEUDONYM_name_to_id (cfg, name1_unique, &rid1 | ||||
)); | ||||
CHECK (0 == memcmp (&id1, &rid1, sizeof (GNUNET_HashCode))); | CHECK (0 == memcmp (&id1, &rid1, sizeof (GNUNET_HashCode))); | |||
CHECK (0 == memcmp (&id2, &rid2, sizeof (GNUNET_HashCode))); | CHECK (0 == memcmp (&id2, &rid2, sizeof (GNUNET_HashCode))); | |||
GNUNET_CRYPTO_hash_create_random (GNUNET_CRYPTO_QUALITY_WEAK, &fid); | GNUNET_CRYPTO_hash_create_random (GNUNET_CRYPTO_QUALITY_WEAK, &fid); | |||
GNUNET_log_skip (1, GNUNET_NO); | GNUNET_log_skip (1, GNUNET_NO); | |||
CHECK (0 == GNUNET_PSEUDONYM_rank (cfg, &fid, 0)); | CHECK (0 == GNUNET_PSEUDONYM_rank (cfg, &fid, 0)); | |||
GNUNET_log_skip (0, GNUNET_YES); | GNUNET_log_skip (0, GNUNET_YES); | |||
noname = GNUNET_PSEUDONYM_id_to_name (cfg, &fid); | CHECK (GNUNET_OK == GNUNET_PSEUDONYM_get_info (cfg, &fid, NULL, NULL, &no name, &noname_is_a_dup)); | |||
CHECK (noname != NULL); | CHECK (noname != NULL); | |||
CHECK (noname_is_a_dup == GNUNET_YES); | ||||
CHECK (0 == GNUNET_PSEUDONYM_rank (cfg, &id1, 0)); | CHECK (0 == GNUNET_PSEUDONYM_rank (cfg, &id1, 0)); | |||
CHECK (5 == GNUNET_PSEUDONYM_rank (cfg, &id1, 5)); | CHECK (5 == GNUNET_PSEUDONYM_rank (cfg, &id1, 5)); | |||
CHECK (-5 == GNUNET_PSEUDONYM_rank (cfg, &id1, -10)); | CHECK (-5 == GNUNET_PSEUDONYM_rank (cfg, &id1, -10)); | |||
CHECK (0 == GNUNET_PSEUDONYM_rank (cfg, &id1, 5)); | CHECK (0 == GNUNET_PSEUDONYM_rank (cfg, &id1, 5)); | |||
GNUNET_free (name1); | GNUNET_free (name1); | |||
GNUNET_free (name2); | GNUNET_free (name2); | |||
GNUNET_free (name1_unique); | ||||
GNUNET_free (name2_unique); | ||||
GNUNET_free (name3); | GNUNET_free (name3); | |||
GNUNET_free (noname); | GNUNET_free (noname); | |||
/* END OF TEST CODE */ | /* END OF TEST CODE */ | |||
FAILURE: | FAILURE: | |||
GNUNET_PSEUDONYM_discovery_callback_unregister (¬i_callback, ¬iCoun t); | GNUNET_PSEUDONYM_discovery_callback_unregister (¬i_callback, ¬iCoun t); | |||
GNUNET_CONTAINER_meta_data_destroy (meta); | GNUNET_CONTAINER_meta_data_destroy (meta); | |||
GNUNET_CONFIGURATION_destroy (cfg); | GNUNET_CONFIGURATION_destroy (cfg); | |||
GNUNET_break (GNUNET_OK == | GNUNET_break (GNUNET_OK == | |||
GNUNET_DISK_directory_remove ("/tmp/gnunet-pseudonym-test") ); | GNUNET_DISK_directory_remove ("/tmp/gnunet-pseudonym-test") ); | |||
return (ok == GNUNET_YES) ? 0 : 1; | return (ok == GNUNET_YES) ? 0 : 1; | |||
End of changes. 13 change blocks. | ||||
7 lines changed or deleted | 25 lines changed or added | |||
This html diff was produced by rfcdiff 1.41. The latest version is available from http://tools.ietf.org/tools/rfcdiff/ |