Skip to content

Commit 6c17a1c

Browse files
committed
small refactoring
1 parent 671b20b commit 6c17a1c

File tree

3 files changed

+21
-22
lines changed

3 files changed

+21
-22
lines changed

src/kad.c

Lines changed: 1 addition & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -64,23 +64,13 @@ typedef struct {
6464

6565
// This callback is called when a search result arrives or a search completes
6666
void dht_callback_func( void *closure, int event, const uint8_t *info_hash, const void *data, size_t data_len ) {
67-
struct search_t **searches;
6867
struct search_t *search;
6968
dht_addr4_t *data4;
7069
dht_addr6_t *data6;
7170
IP addr;
7271
size_t i;
7372

74-
// Find search
75-
search = NULL;
76-
searches = searches_get();
77-
while( *searches ) {
78-
if( memcmp( (*searches)->id, info_hash, SHA1_BIN_LENGTH ) == 0 ) {
79-
search = *searches;
80-
break;
81-
}
82-
searches++;
83-
}
73+
search = searches_find_by_id( info_hash );
8474

8575
if( search == NULL ) {
8676
return;

src/searches.c

Lines changed: 17 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -51,13 +51,22 @@ static const char *str_state( int state ) {
5151
}
5252
}
5353

54-
// External access to all current results
55-
struct search_t** searches_get( void ) {
56-
return &g_searches[0];
54+
struct search_t *searches_find_by_id( const uint8_t id[] ) {
55+
struct search_t **searches;
56+
57+
searches = &g_searches[0];
58+
while( *searches ) {
59+
if( memcmp( (*searches)->id, id, SHA1_BIN_LENGTH ) == 0 ) {
60+
return *searches;
61+
}
62+
searches++;
63+
}
64+
65+
return NULL;
5766
}
5867

59-
// Find a value search result
60-
static struct search_t *searches_find( const char query[] ) {
68+
69+
static struct search_t *searches_find_by_query( const char query[] ) {
6170
struct search_t **search;
6271
struct search_t *searches;
6372

@@ -108,7 +117,7 @@ static struct result_t *find_next_result( struct search_t *search ) {
108117
static struct search_t *find_next_search( auth_callback *callback ) {
109118
struct search_t **searches;
110119

111-
searches = searches_get();
120+
searches = &g_searches[0];
112121
while( *searches ) {
113122
if( !(*searches)->done && (*searches)->callback == callback ) {
114123
return *searches;
@@ -147,7 +156,7 @@ void searches_set_auth_state( const char query[], const IP *addr, const int stat
147156

148157
log_debug( "SRC: Set authentication state for %s: %s", query, str_state( state ) );
149158

150-
search = searches_find( query );
159+
search = searches_find_by_query( query );
151160

152161
if( search ) {
153162
// Search and set authentication state of result
@@ -253,7 +262,7 @@ struct search_t* searches_start( const char query[] ) {
253262
struct search_t* new;
254263

255264
// Find existing search
256-
if( (search = searches_find( query )) != NULL ) {
265+
if( (search = searches_find_by_query( query )) != NULL ) {
257266
// Restart search after half of search lifetime
258267
if( (time_now_sec() - search->start_time) > (MAX_SEARCH_LIFETIME / 2) ) {
259268
search_restart( search );

src/searches.h

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -34,9 +34,6 @@ struct search_t {
3434
auth_callback *callback;
3535
};
3636

37-
// used only in kad.c to insert local values..?
38-
struct search_t **searches_get( void );
39-
4037
void searches_set_auth_state( const char query[], const IP *addr, const int state );
4138
struct result_t *searches_get_auth_target( char query[], IP *addr, auth_callback *callback );
4239

@@ -46,6 +43,9 @@ void searches_free( void );
4643
// Start a search
4744
struct search_t *searches_start( const char query[] );
4845

46+
// Find a search by infohash, so we can add results
47+
struct search_t *searches_find_by_id( const uint8_t id[] );
48+
4949
// Add an address to a result bucket
5050
int searches_add_addr( struct search_t *search, const IP *addr );
5151

0 commit comments

Comments
 (0)