refactor: Rename announce functions into their own namespace.

This avoids common names like `on_stored` and `store_data` in global
symbols. Turns out, toxic also has a `store_data`.
This commit is contained in:
iphydf 2022-04-04 12:57:17 +00:00
parent d539e34f91
commit c4beda4dd1
No known key found for this signature in database
GPG Key ID: 3855DBA2D74403C9
4 changed files with 34 additions and 34 deletions

View File

@ -19,21 +19,21 @@ static void test_bucketnum(void)
random_bytes(rng, key1, sizeof(key1)); random_bytes(rng, key1, sizeof(key1));
memcpy(key2, key1, CRYPTO_PUBLIC_KEY_SIZE); memcpy(key2, key1, CRYPTO_PUBLIC_KEY_SIZE);
ck_assert_msg(get_bucketnum(key1, key2) == 0, "Bad bucketnum"); ck_assert_msg(announce_get_bucketnum(key1, key2) == 0, "Bad bucketnum");
key2[4] ^= 0x09; key2[4] ^= 0x09;
key2[5] ^= 0xc5; key2[5] ^= 0xc5;
ck_assert_msg(get_bucketnum(key1, key2) == 7, "Bad bucketnum"); ck_assert_msg(announce_get_bucketnum(key1, key2) == 7, "Bad bucketnum");
key2[4] ^= 0x09; key2[4] ^= 0x09;
ck_assert_msg(get_bucketnum(key1, key2) == 17, "Bad bucketnum"); ck_assert_msg(announce_get_bucketnum(key1, key2) == 17, "Bad bucketnum");
key2[5] ^= 0xc5; key2[5] ^= 0xc5;
key2[31] ^= 0x09; key2[31] ^= 0x09;
ck_assert_msg(get_bucketnum(key1, key2) == 4, "Bad bucketnum"); ck_assert_msg(announce_get_bucketnum(key1, key2) == 4, "Bad bucketnum");
} }
typedef struct Announce_Test_Data { typedef struct Announce_Test_Data {
@ -65,7 +65,7 @@ static void test_store_data(void)
ck_assert(announce != nullptr); ck_assert(announce != nullptr);
/* Just to prevent CI from complaining that set_synch_offset is unused: */ /* Just to prevent CI from complaining that set_synch_offset is unused: */
set_synch_offset(announce, 0); announce_set_synch_offset(announce, 0);
Announce_Test_Data test_data; Announce_Test_Data test_data;
random_bytes(rng, test_data.data, sizeof(test_data.data)); random_bytes(rng, test_data.data, sizeof(test_data.data));
@ -74,30 +74,30 @@ static void test_store_data(void)
uint8_t key[CRYPTO_PUBLIC_KEY_SIZE]; uint8_t key[CRYPTO_PUBLIC_KEY_SIZE];
random_bytes(rng, key, sizeof(key)); random_bytes(rng, key, sizeof(key));
ck_assert_msg(!on_stored(announce, key, nullptr, nullptr), "Unstored announcement exists"); ck_assert_msg(!announce_on_stored(announce, key, nullptr, nullptr), "Unstored announcement exists");
ck_assert_msg(store_data(announce, key, test_data.data, sizeof(test_data.data), ck_assert_msg(announce_store_data(announce, key, test_data.data, sizeof(test_data.data),
MAX_MAX_ANNOUNCEMENT_TIMEOUT), "Failed to store announcement"); MAX_MAX_ANNOUNCEMENT_TIMEOUT), "Failed to store announcement");
ck_assert_msg(on_stored(announce, key, test_announce_data, &test_data), "Failed to get stored announcement"); ck_assert_msg(announce_on_stored(announce, key, test_announce_data, &test_data), "Failed to get stored announcement");
ck_assert_msg(test_data.passed, "Bad stored announcement data"); ck_assert_msg(test_data.passed, "Bad stored announcement data");
const uint8_t *const base = dht_get_self_public_key(dht); const uint8_t *const base = dht_get_self_public_key(dht);
ck_assert_msg(store_data(announce, base, test_data.data, sizeof(test_data.data), 1), "failed to store base"); ck_assert_msg(announce_store_data(announce, base, test_data.data, sizeof(test_data.data), 1), "failed to store base");
uint8_t test_keys[ANNOUNCE_BUCKET_SIZE + 1][CRYPTO_PUBLIC_KEY_SIZE]; uint8_t test_keys[ANNOUNCE_BUCKET_SIZE + 1][CRYPTO_PUBLIC_KEY_SIZE];
for (uint8_t i = 0; i < ANNOUNCE_BUCKET_SIZE + 1; ++i) { for (uint8_t i = 0; i < ANNOUNCE_BUCKET_SIZE + 1; ++i) {
memcpy(test_keys[i], base, CRYPTO_PUBLIC_KEY_SIZE); memcpy(test_keys[i], base, CRYPTO_PUBLIC_KEY_SIZE);
test_keys[i][i] ^= 1; test_keys[i][i] ^= 1;
ck_assert_msg(store_data(announce, test_keys[i], test_data.data, sizeof(test_data.data), 1), ck_assert_msg(announce_store_data(announce, test_keys[i], test_data.data, sizeof(test_data.data), 1),
"Failed to store announcement %d", i); "Failed to store announcement %d", i);
} }
ck_assert_msg(on_stored(announce, base, nullptr, nullptr), "base was evicted"); ck_assert_msg(announce_on_stored(announce, base, nullptr, nullptr), "base was evicted");
ck_assert_msg(!on_stored(announce, test_keys[0], nullptr, nullptr), "furthest was not evicted"); ck_assert_msg(!announce_on_stored(announce, test_keys[0], nullptr, nullptr), "furthest was not evicted");
ck_assert_msg(!store_data(announce, test_keys[0], nullptr, 0, 1), "furthest evicted closer"); ck_assert_msg(!announce_store_data(announce, test_keys[0], nullptr, 0, 1), "furthest evicted closer");
kill_announcements(announce); kill_announcements(announce);
kill_forwarding(forwarding); kill_forwarding(forwarding);

View File

@ -1 +1 @@
4e6c181b03e20cdd0669296fae53a9433e31a7c37beed5430272fbefbf501bbb /usr/local/bin/tox-bootstrapd 146fb36bf3100115f913a07583c096c8dc98ab26e1220567e465b2ca86a69583 /usr/local/bin/tox-bootstrapd

View File

@ -17,7 +17,7 @@
#include "timed_auth.h" #include "timed_auth.h"
#include "util.h" #include "util.h"
uint8_t response_of_request_type(uint8_t request_type) uint8_t announce_response_of_request_type(uint8_t request_type)
{ {
switch (request_type) { switch (request_type) {
case NET_PACKET_DATA_SEARCH_REQUEST: case NET_PACKET_DATA_SEARCH_REQUEST:
@ -63,7 +63,7 @@ struct Announcements {
Announce_Entry entries[ANNOUNCE_BUCKETS * ANNOUNCE_BUCKET_SIZE]; Announce_Entry entries[ANNOUNCE_BUCKETS * ANNOUNCE_BUCKET_SIZE];
}; };
void set_synch_offset(Announcements *announce, int32_t synch_offset) void announce_set_synch_offset(Announcements *announce, int32_t synch_offset)
{ {
announce->synch_offset = synch_offset; announce->synch_offset = synch_offset;
} }
@ -95,7 +95,7 @@ static uint8_t truncate_pk_at_index(const uint8_t *pk, uint16_t index, uint16_t
((i + 1 < CRYPTO_PUBLIC_KEY_SIZE ? pk[i + 1] : 0) >> (16 - bits - j)); ((i + 1 < CRYPTO_PUBLIC_KEY_SIZE ? pk[i + 1] : 0) >> (16 - bits - j));
} }
uint16_t get_bucketnum(const uint8_t *base, const uint8_t *pk) uint16_t announce_get_bucketnum(const uint8_t *base, const uint8_t *pk)
{ {
const uint16_t index = bit_by_bit_cmp(base, pk); const uint16_t index = bit_by_bit_cmp(base, pk);
@ -106,7 +106,7 @@ uint16_t get_bucketnum(const uint8_t *base, const uint8_t *pk)
non_null() non_null()
static Announce_Entry *bucket_of_key(Announcements *announce, const uint8_t *pk) static Announce_Entry *bucket_of_key(Announcements *announce, const uint8_t *pk)
{ {
return &announce->entries[get_bucketnum(announce->public_key, pk) * ANNOUNCE_BUCKET_SIZE]; return &announce->entries[announce_get_bucketnum(announce->public_key, pk) * ANNOUNCE_BUCKET_SIZE];
} }
non_null() non_null()
@ -130,7 +130,7 @@ static Announce_Entry *get_stored(Announcements *announce, const uint8_t *data_p
non_null() non_null()
static const Announce_Entry *bucket_of_key_const(const Announcements *announce, const uint8_t *pk) static const Announce_Entry *bucket_of_key_const(const Announcements *announce, const uint8_t *pk)
{ {
return &announce->entries[get_bucketnum(announce->public_key, pk) * ANNOUNCE_BUCKET_SIZE]; return &announce->entries[announce_get_bucketnum(announce->public_key, pk) * ANNOUNCE_BUCKET_SIZE];
} }
non_null() non_null()
@ -152,8 +152,8 @@ static const Announce_Entry *get_stored_const(const Announcements *announce, con
} }
bool on_stored(const Announcements *announce, const uint8_t *data_public_key, bool announce_on_stored(const Announcements *announce, const uint8_t *data_public_key,
on_retrieve_cb *on_retrieve_callback, void *object) announce_on_retrieve_cb *on_retrieve_callback, void *object)
{ {
const Announce_Entry *const entry = get_stored_const(announce, data_public_key); const Announce_Entry *const entry = get_stored_const(announce, data_public_key);
@ -210,7 +210,7 @@ static bool would_accept_store_request(Announcements *announce, const uint8_t *d
return find_entry_slot(announce, data_public_key) != nullptr; return find_entry_slot(announce, data_public_key) != nullptr;
} }
bool store_data(Announcements *announce, const uint8_t *data_public_key, bool announce_store_data(Announcements *announce, const uint8_t *data_public_key,
const uint8_t *data, uint32_t length, uint32_t timeout) const uint8_t *data, uint32_t length, uint32_t timeout)
{ {
if (length > MAX_ANNOUNCEMENT_SIZE) { if (length > MAX_ANNOUNCEMENT_SIZE) {
@ -479,7 +479,7 @@ static int create_reply_plain_store_announce_request(Announcements *announce,
stored->store_until = mono_time_get(announce->mono_time) + timeout; stored->store_until = mono_time_get(announce->mono_time) + timeout;
} }
} else { } else {
if (!store_data(announce, data_public_key, announcement, announcement_len, timeout)) { if (!announce_store_data(announce, data_public_key, announcement, announcement_len, timeout)) {
return -1; return -1;
} }
} }
@ -585,7 +585,7 @@ static int create_reply(Announcements *announce, const IP_Port *source,
const uint16_t plain_reply_len = plain_reply_noping_len + sizeof(uint64_t); const uint16_t plain_reply_len = plain_reply_noping_len + sizeof(uint64_t);
const uint8_t response_type = response_of_request_type(data[0]); const uint8_t response_type = announce_response_of_request_type(data[0]);
return dht_create_packet(announce->rng, announce->public_key, shared_key, response_type, return dht_create_packet(announce->rng, announce->public_key, shared_key, response_type,
plain_reply, plain_reply_len, reply, reply_max_length); plain_reply, plain_reply_len, reply, reply_max_length);

View File

@ -9,9 +9,9 @@
#define MAX_ANNOUNCEMENT_SIZE 512 #define MAX_ANNOUNCEMENT_SIZE 512
typedef void on_retrieve_cb(void *object, const uint8_t *data, uint16_t length); typedef void announce_on_retrieve_cb(void *object, const uint8_t *data, uint16_t length);
uint8_t response_of_request_type(uint8_t request_type); uint8_t announce_response_of_request_type(uint8_t request_type);
typedef struct Announcements Announcements; typedef struct Announcements Announcements;
@ -24,11 +24,11 @@ Announcements *new_announcements(const Logger *log, const Random *rng, const Mon
* @return true if data is stored, false otherwise. * @return true if data is stored, false otherwise.
*/ */
non_null(1, 2) nullable(3, 4) non_null(1, 2) nullable(3, 4)
bool on_stored(const Announcements *announce, const uint8_t *data_public_key, bool announce_on_stored(const Announcements *announce, const uint8_t *data_public_key,
on_retrieve_cb *on_retrieve_callback, void *object); announce_on_retrieve_cb *on_retrieve_callback, void *object);
non_null() non_null()
void set_synch_offset(Announcements *announce, int32_t synch_offset); void announce_set_synch_offset(Announcements *announce, int32_t synch_offset);
nullable(1) nullable(1)
void kill_announcements(Announcements *announce); void kill_announcements(Announcements *announce);
@ -41,11 +41,11 @@ void kill_announcements(Announcements *announce);
* base and pk first differ * base and pk first differ
*/ */
non_null() non_null()
uint16_t get_bucketnum(const uint8_t *base, const uint8_t *pk); uint16_t announce_get_bucketnum(const uint8_t *base, const uint8_t *pk);
/** @private */ /** @private */
non_null(1, 2) nullable(3) non_null(1, 2) nullable(3)
bool store_data(Announcements *announce, const uint8_t *data_public_key, bool announce_store_data(Announcements *announce, const uint8_t *data_public_key,
const uint8_t *data, uint32_t length, uint32_t timeout); const uint8_t *data, uint32_t length, uint32_t timeout);
/** @private */ /** @private */