summaryrefslogtreecommitdiff
path: root/ot_vector.c
diff options
context:
space:
mode:
Diffstat (limited to 'ot_vector.c')
-rw-r--r--ot_vector.c16
1 files changed, 8 insertions, 8 deletions
diff --git a/ot_vector.c b/ot_vector.c
index d068999..e3c3d3f 100644
--- a/ot_vector.c
+++ b/ot_vector.c
@@ -13,10 +13,6 @@
13/* Opentracker */ 13/* Opentracker */
14#include "trackerlogic.h" 14#include "trackerlogic.h"
15 15
16/* Libowfat */
17#include "uint16.h"
18#include "uint32.h"
19
20static int vector_compare_peer6(const void *peer1, const void *peer2) { return memcmp(peer1, peer2, OT_PEER_COMPARE_SIZE6); } 16static int vector_compare_peer6(const void *peer1, const void *peer2) { return memcmp(peer1, peer2, OT_PEER_COMPARE_SIZE6); }
21static int vector_compare_peer4(const void *peer1, const void *peer2) { return memcmp(peer1, peer2, OT_PEER_COMPARE_SIZE4); } 17static int vector_compare_peer4(const void *peer1, const void *peer2) { return memcmp(peer1, peer2, OT_PEER_COMPARE_SIZE4); }
22 18
@@ -222,8 +218,10 @@ void vector_redistribute_buckets(ot_peerlist *peer_list, size_t peer_size) {
222 for (bucket = 0; bucket < num_buckets_new; ++bucket) { 218 for (bucket = 0; bucket < num_buckets_new; ++bucket) {
223 bucket_list_new[bucket].space = bucket_size_new; 219 bucket_list_new[bucket].space = bucket_size_new;
224 bucket_list_new[bucket].data = malloc(bucket_size_new * peer_size); 220 bucket_list_new[bucket].data = malloc(bucket_size_new * peer_size);
225 if (!bucket_list_new[bucket].data) 221 if (!bucket_list_new[bucket].data) {
226 return vector_clean_list(bucket_list_new, num_buckets_new); 222 vector_clean_list(bucket_list_new, num_buckets_new);
223 return;
224 }
227 } 225 }
228 226
229 /* Now sort them into the correct bucket */ 227 /* Now sort them into the correct bucket */
@@ -236,8 +234,10 @@ void vector_redistribute_buckets(ot_peerlist *peer_list, size_t peer_size) {
236 bucket_dest += vector_hash_peer(peers_old, OT_PEER_COMPARE_SIZE_FROM_PEER_SIZE(peer_size), num_buckets_new); 234 bucket_dest += vector_hash_peer(peers_old, OT_PEER_COMPARE_SIZE_FROM_PEER_SIZE(peer_size), num_buckets_new);
237 if (bucket_dest->size + 1 > bucket_dest->space) { 235 if (bucket_dest->size + 1 > bucket_dest->space) {
238 void *tmp = realloc(bucket_dest->data, peer_size * OT_VECTOR_GROW_RATIO * bucket_dest->space); 236 void *tmp = realloc(bucket_dest->data, peer_size * OT_VECTOR_GROW_RATIO * bucket_dest->space);
239 if (!tmp) 237 if (!tmp) {
240 return vector_clean_list(bucket_list_new, num_buckets_new); 238 vector_clean_list(bucket_list_new, num_buckets_new);
239 return;
240 }
241 bucket_dest->data = tmp; 241 bucket_dest->data = tmp;
242 bucket_dest->space *= OT_VECTOR_GROW_RATIO; 242 bucket_dest->space *= OT_VECTOR_GROW_RATIO;
243 } 243 }