aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/util/bandwidth.c184
-rw-r--r--src/util/bio.c255
-rw-r--r--src/util/client.c822
-rw-r--r--src/util/common_allocation.c60
-rw-r--r--src/util/common_endian.c2
-rw-r--r--src/util/common_logging.c405
-rw-r--r--src/util/configuration.c769
-rw-r--r--src/util/connection.c1086
-rw-r--r--src/util/container_bloomfilter.c263
-rw-r--r--src/util/container_heap.c202
-rw-r--r--src/util/container_meta_data.c794
-rw-r--r--src/util/container_multihashmap.c237
-rw-r--r--src/util/container_slist.c74
-rw-r--r--src/util/crypto_aes.c79
-rw-r--r--src/util/crypto_crc.c14
-rw-r--r--src/util/crypto_hash.c217
-rw-r--r--src/util/crypto_hkdf.c120
-rw-r--r--src/util/crypto_kdf.c16
-rw-r--r--src/util/crypto_ksk.c517
-rw-r--r--src/util/crypto_random.c203
-rw-r--r--src/util/crypto_rsa.c765
-rw-r--r--src/util/disk.c1454
-rw-r--r--src/util/getopt.c1022
-rw-r--r--src/util/getopt_helpers.c173
-rw-r--r--src/util/gnunet-config-diff.c8
-rw-r--r--src/util/gnunet-resolver.c6
-rw-r--r--src/util/gnunet-service-resolver.c411
-rw-r--r--src/util/load.c48
-rw-r--r--src/util/network.c1137
-rw-r--r--src/util/os_installation.c289
-rw-r--r--src/util/os_network.c369
-rw-r--r--src/util/os_priority.c1132
-rw-r--r--src/util/peer.c104
-rw-r--r--src/util/perf_crypto_hash.c20
-rw-r--r--src/util/plugin.c118
-rw-r--r--src/util/program.c112
-rw-r--r--src/util/pseudonym.c282
-rw-r--r--src/util/resolver_api.c602
-rw-r--r--src/util/scheduler.c110
-rw-r--r--src/util/server.c816
-rw-r--r--src/util/server_mst.c278
-rw-r--r--src/util/server_nc.c221
-rw-r--r--src/util/server_tc.c79
-rw-r--r--src/util/service.c1433
-rw-r--r--src/util/signal.c19
-rw-r--r--src/util/strings.c291
-rw-r--r--src/util/test_bio.c55
-rw-r--r--src/util/test_client.c56
-rw-r--r--src/util/test_common_allocation.c24
-rw-r--r--src/util/test_common_logging.c49
-rw-r--r--src/util/test_common_logging_dummy.c4
-rw-r--r--src/util/test_common_logging_runtime_loglevels.c334
-rw-r--r--src/util/test_configuration.c477
-rw-r--r--src/util/test_connection.c64
-rw-r--r--src/util/test_connection_addressing.c69
-rw-r--r--src/util/test_connection_receive_cancel.c22
-rw-r--r--src/util/test_connection_timeout.c43
-rw-r--r--src/util/test_connection_timeout_no_connect.c16
-rw-r--r--src/util/test_connection_transmit_cancel.c15
-rw-r--r--src/util/test_container_bloomfilter.c206
-rw-r--r--src/util/test_container_heap.c14
-rw-r--r--src/util/test_container_meta_data.c256
-rw-r--r--src/util/test_container_multihashmap.c29
-rw-r--r--src/util/test_container_slist.c95
-rw-r--r--src/util/test_crypto_aes.c120
-rw-r--r--src/util/test_crypto_aes_weak.c127
-rw-r--r--src/util/test_crypto_hash.c13
-rw-r--r--src/util/test_crypto_hkdf.c94
-rw-r--r--src/util/test_crypto_ksk.c192
-rw-r--r--src/util/test_crypto_random.c18
-rw-r--r--src/util/test_crypto_rsa.c210
-rw-r--r--src/util/test_disk.c101
-rw-r--r--src/util/test_getopt.c68
-rw-r--r--src/util/test_os_network.c8
-rw-r--r--src/util/test_os_priority.c12
-rw-r--r--src/util/test_os_start_process.c78
-rw-r--r--src/util/test_peer.c46
-rw-r--r--src/util/test_program.c18
-rw-r--r--src/util/test_pseudonym.c46
-rw-r--r--src/util/test_resolver_api.c267
-rw-r--r--src/util/test_scheduler.c16
-rw-r--r--src/util/test_scheduler_delay.c20
-rw-r--r--src/util/test_server.c43
-rw-r--r--src/util/test_server_disconnect.c21
-rw-r--r--src/util/test_server_with_client.c58
-rw-r--r--src/util/test_server_with_client_unix.c52
-rw-r--r--src/util/test_service.c77
-rw-r--r--src/util/test_strings.c24
-rw-r--r--src/util/test_time.c52
-rw-r--r--src/util/time.c64
-rw-r--r--src/util/winproc.c230
91 files changed, 10941 insertions, 10580 deletions
diff --git a/src/util/bandwidth.c b/src/util/bandwidth.c
index c0ac540544..ceac4d87b0 100644
--- a/src/util/bandwidth.c
+++ b/src/util/bandwidth.c
@@ -29,6 +29,8 @@
#define DEBUG_BANDWIDTH GNUNET_EXTRA_LOGGING
+#define LOG(kind,...) GNUNET_log_from (kind, "util",__VA_ARGS__)
+
/**
* Create a new bandwidth value.
*
@@ -41,8 +43,8 @@ GNUNET_BANDWIDTH_value_init (uint32_t bytes_per_second)
struct GNUNET_BANDWIDTH_Value32NBO ret;
#if DEBUG_BANDWIDTH
- GNUNET_log (GNUNET_ERROR_TYPE_DEBUG, "Initializing bandwidth of %u Bps\n",
- (unsigned int) bytes_per_second);
+ LOG (GNUNET_ERROR_TYPE_DEBUG, "Initializing bandwidth of %u Bps\n",
+ (unsigned int) bytes_per_second);
#endif
ret.value__ = htonl (bytes_per_second);
return ret;
@@ -58,11 +60,11 @@ GNUNET_BANDWIDTH_value_init (uint32_t bytes_per_second)
*/
struct GNUNET_BANDWIDTH_Value32NBO
GNUNET_BANDWIDTH_value_min (struct GNUNET_BANDWIDTH_Value32NBO b1,
- struct GNUNET_BANDWIDTH_Value32NBO b2)
+ struct GNUNET_BANDWIDTH_Value32NBO b2)
{
return
- GNUNET_BANDWIDTH_value_init (GNUNET_MIN
- (ntohl (b1.value__), ntohl (b2.value__)));
+ GNUNET_BANDWIDTH_value_init (GNUNET_MIN
+ (ntohl (b1.value__), ntohl (b2.value__)));
}
@@ -76,18 +78,18 @@ GNUNET_BANDWIDTH_value_min (struct GNUNET_BANDWIDTH_Value32NBO b1,
*/
uint64_t
GNUNET_BANDWIDTH_value_get_available_until (struct GNUNET_BANDWIDTH_Value32NBO
- bps,
- struct GNUNET_TIME_Relative
- deadline)
+ bps,
+ struct GNUNET_TIME_Relative
+ deadline)
{
uint64_t b;
b = ntohl (bps.value__);
#if DEBUG_BANDWIDTH
- GNUNET_log (GNUNET_ERROR_TYPE_DEBUG,
- "Bandwidth has %llu bytes available until deadline in %llums\n",
- (unsigned long long) ((b * deadline.rel_value + 500LL) / 1000LL),
- deadline.rel_value);
+ LOG (GNUNET_ERROR_TYPE_DEBUG,
+ "Bandwidth has %llu bytes available until deadline in %llums\n",
+ (unsigned long long) ((b * deadline.rel_value + 500LL) / 1000LL),
+ deadline.rel_value);
#endif
return (b * deadline.rel_value + 500LL) / 1000LL;
}
@@ -103,25 +105,25 @@ GNUNET_BANDWIDTH_value_get_available_until (struct GNUNET_BANDWIDTH_Value32NBO
*/
struct GNUNET_TIME_Relative
GNUNET_BANDWIDTH_value_get_delay_for (struct GNUNET_BANDWIDTH_Value32NBO bps,
- uint64_t size)
+ uint64_t size)
{
uint64_t b;
struct GNUNET_TIME_Relative ret;
b = ntohl (bps.value__);
if (b == 0)
- {
+ {
#if DEBUG_BANDWIDTH
- GNUNET_log (GNUNET_ERROR_TYPE_DEBUG,
- "Bandwidth suggests delay of infinity (zero bandwidth)\n");
+ LOG (GNUNET_ERROR_TYPE_DEBUG,
+ "Bandwidth suggests delay of infinity (zero bandwidth)\n");
#endif
- return GNUNET_TIME_UNIT_FOREVER_REL;
- }
+ return GNUNET_TIME_UNIT_FOREVER_REL;
+ }
ret.rel_value = size * 1000LL / b;
#if DEBUG_BANDWIDTH
- GNUNET_log (GNUNET_ERROR_TYPE_DEBUG,
- "Bandwidth suggests delay of %llu ms for %llu bytes of traffic\n",
- (unsigned long long) ret.rel_value, (unsigned long long) size);
+ LOG (GNUNET_ERROR_TYPE_DEBUG,
+ "Bandwidth suggests delay of %llu ms for %llu bytes of traffic\n",
+ (unsigned long long) ret.rel_value, (unsigned long long) size);
#endif
return ret;
}
@@ -143,18 +145,18 @@ GNUNET_BANDWIDTH_value_get_delay_for (struct GNUNET_BANDWIDTH_Value32NBO bps,
*/
void
GNUNET_BANDWIDTH_tracker_init (struct GNUNET_BANDWIDTH_Tracker *av,
- struct GNUNET_BANDWIDTH_Value32NBO
- bytes_per_second_limit, uint32_t max_carry_s)
+ struct GNUNET_BANDWIDTH_Value32NBO
+ bytes_per_second_limit, uint32_t max_carry_s)
{
av->consumption_since_last_update__ = 0;
av->last_update__ = GNUNET_TIME_absolute_get ();
av->available_bytes_per_s__ = ntohl (bytes_per_second_limit.value__);
av->max_carry_s__ = max_carry_s;
#if DEBUG_BANDWIDTH
- GNUNET_log (GNUNET_ERROR_TYPE_DEBUG,
- "Tracker %p initialized with %u Bps and max carry %u\n", av,
- (unsigned int) av->available_bytes_per_s__,
- (unsigned int) max_carry_s);
+ LOG (GNUNET_ERROR_TYPE_DEBUG,
+ "Tracker %p initialized with %u Bps and max carry %u\n", av,
+ (unsigned int) av->available_bytes_per_s__,
+ (unsigned int) max_carry_s);
#endif
}
@@ -177,26 +179,26 @@ update_tracker (struct GNUNET_BANDWIDTH_Tracker *av)
now = GNUNET_TIME_absolute_get ();
delta_time = now.abs_value - av->last_update__.abs_value;
delta_avail =
- (delta_time * ((unsigned long long) av->available_bytes_per_s__) +
- 500LL) / 1000LL;
+ (delta_time * ((unsigned long long) av->available_bytes_per_s__) +
+ 500LL) / 1000LL;
av->consumption_since_last_update__ -= delta_avail;
av->last_update__ = now;
if (av->consumption_since_last_update__ < 0)
- {
- left_bytes = -av->consumption_since_last_update__;
- max_carry = av->available_bytes_per_s__ * av->max_carry_s__;
- if (max_carry < GNUNET_SERVER_MAX_MESSAGE_SIZE)
- max_carry = GNUNET_SERVER_MAX_MESSAGE_SIZE;
- if (max_carry > left_bytes)
- av->consumption_since_last_update__ = -left_bytes;
- else
- av->consumption_since_last_update__ = -max_carry;
- }
+ {
+ left_bytes = -av->consumption_since_last_update__;
+ max_carry = av->available_bytes_per_s__ * av->max_carry_s__;
+ if (max_carry < GNUNET_SERVER_MAX_MESSAGE_SIZE)
+ max_carry = GNUNET_SERVER_MAX_MESSAGE_SIZE;
+ if (max_carry > left_bytes)
+ av->consumption_since_last_update__ = -left_bytes;
+ else
+ av->consumption_since_last_update__ = -max_carry;
+ }
#if DEBUG_BANDWIDTH
- GNUNET_log (GNUNET_ERROR_TYPE_DEBUG,
- "Tracker %p updated, have %u Bps, last update was %llu ms ago\n",
- av, (unsigned int) av->available_bytes_per_s__,
- (unsigned long long) delta_time);
+ LOG (GNUNET_ERROR_TYPE_DEBUG,
+ "Tracker %p updated, have %u Bps, last update was %llu ms ago\n",
+ av, (unsigned int) av->available_bytes_per_s__,
+ (unsigned long long) delta_time);
#endif
}
@@ -215,38 +217,38 @@ update_tracker (struct GNUNET_BANDWIDTH_Tracker *av)
*/
int
GNUNET_BANDWIDTH_tracker_consume (struct GNUNET_BANDWIDTH_Tracker *av,
- ssize_t size)
+ ssize_t size)
{
int64_t nc;
#if DEBUG_BANDWIDTH
- GNUNET_log (GNUNET_ERROR_TYPE_DEBUG, "Tracker %p consumes %d bytes\n", av,
- (int) size);
+ LOG (GNUNET_ERROR_TYPE_DEBUG, "Tracker %p consumes %d bytes\n", av,
+ (int) size);
#endif
if (size > 0)
- {
- nc = av->consumption_since_last_update__ + size;
- if (nc < av->consumption_since_last_update__)
- {
- GNUNET_break (0);
- return GNUNET_SYSERR;
- }
- av->consumption_since_last_update__ = nc;
- update_tracker (av);
- if (av->consumption_since_last_update__ > 0)
{
+ nc = av->consumption_since_last_update__ + size;
+ if (nc < av->consumption_since_last_update__)
+ {
+ GNUNET_break (0);
+ return GNUNET_SYSERR;
+ }
+ av->consumption_since_last_update__ = nc;
+ update_tracker (av);
+ if (av->consumption_since_last_update__ > 0)
+ {
#if DEBUG_BANDWIDTH
- GNUNET_log (GNUNET_ERROR_TYPE_DEBUG,
- "Tracker %p consumption %llu bytes above limit\n", av,
- (unsigned long long) av->consumption_since_last_update__);
+ LOG (GNUNET_ERROR_TYPE_DEBUG,
+ "Tracker %p consumption %llu bytes above limit\n", av,
+ (unsigned long long) av->consumption_since_last_update__);
#endif
- return GNUNET_YES;
+ return GNUNET_YES;
+ }
}
- }
else
- {
- av->consumption_since_last_update__ += size;
- }
+ {
+ av->consumption_since_last_update__ += size;
+ }
return GNUNET_NO;
}
@@ -262,35 +264,35 @@ GNUNET_BANDWIDTH_tracker_consume (struct GNUNET_BANDWIDTH_Tracker *av,
*/
struct GNUNET_TIME_Relative
GNUNET_BANDWIDTH_tracker_get_delay (struct GNUNET_BANDWIDTH_Tracker *av,
- size_t size)
+ size_t size)
{
struct GNUNET_TIME_Relative ret;
int64_t bytes_needed;
if (av->available_bytes_per_s__ == 0)
- {
+ {
#if DEBUG_BANDWIDTH
- GNUNET_log (GNUNET_ERROR_TYPE_DEBUG, "Tracker %p delay is infinity\n", av);
+ LOG (GNUNET_ERROR_TYPE_DEBUG, "Tracker %p delay is infinity\n", av);
#endif
- return GNUNET_TIME_UNIT_FOREVER_REL;
- }
+ return GNUNET_TIME_UNIT_FOREVER_REL;
+ }
update_tracker (av);
bytes_needed = size + av->consumption_since_last_update__;
if (bytes_needed <= 0)
- {
+ {
#if DEBUG_BANDWIDTH
- GNUNET_log (GNUNET_ERROR_TYPE_DEBUG,
- "Tracker %p delay for %u bytes is zero\n", av,
- (unsigned int) size);
+ LOG (GNUNET_ERROR_TYPE_DEBUG,
+ "Tracker %p delay for %u bytes is zero\n", av,
+ (unsigned int) size);
#endif
- return GNUNET_TIME_UNIT_ZERO;
- }
+ return GNUNET_TIME_UNIT_ZERO;
+ }
ret.rel_value =
- 1000LL * bytes_needed / (unsigned long long) av->available_bytes_per_s__;
+ 1000LL * bytes_needed / (unsigned long long) av->available_bytes_per_s__;
#if DEBUG_BANDWIDTH
- GNUNET_log (GNUNET_ERROR_TYPE_DEBUG,
- "Tracker %p delay for %u bytes is %llu ms\n", av,
- (unsigned int) size, (unsigned long long) ret.rel_value);
+ LOG (GNUNET_ERROR_TYPE_DEBUG,
+ "Tracker %p delay for %u bytes is %llu ms\n", av,
+ (unsigned int) size, (unsigned long long) ret.rel_value);
#endif
return ret;
}
@@ -313,14 +315,14 @@ GNUNET_BANDWIDTH_tracker_get_available (struct GNUNET_BANDWIDTH_Tracker * av)
update_tracker (av);
bps = GNUNET_BANDWIDTH_value_init (av->available_bytes_per_s__);
avail =
- GNUNET_BANDWIDTH_value_get_available_until (bps,
- GNUNET_TIME_absolute_get_duration
- (av->last_update__));
+ GNUNET_BANDWIDTH_value_get_available_until (bps,
+ GNUNET_TIME_absolute_get_duration
+ (av->last_update__));
used = av->consumption_since_last_update__;
#if DEBUG_BANDWIDTH
- GNUNET_log (GNUNET_ERROR_TYPE_DEBUG,
- "Tracker %p available bandwidth is %lld bytes\n", av,
- (long long) (int64_t) (avail - used));
+ LOG (GNUNET_ERROR_TYPE_DEBUG,
+ "Tracker %p available bandwidth is %lld bytes\n", av,
+ (long long) (int64_t) (avail - used));
#endif
return (int64_t) (avail - used);
}
@@ -334,23 +336,23 @@ GNUNET_BANDWIDTH_tracker_get_available (struct GNUNET_BANDWIDTH_Tracker * av)
*/
void
GNUNET_BANDWIDTH_tracker_update_quota (struct GNUNET_BANDWIDTH_Tracker *av,
- struct GNUNET_BANDWIDTH_Value32NBO
- bytes_per_second_limit)
+ struct GNUNET_BANDWIDTH_Value32NBO
+ bytes_per_second_limit)
{
uint32_t old_limit;
uint32_t new_limit;
new_limit = ntohl (bytes_per_second_limit.value__);
#if DEBUG_BANDWIDTH
- GNUNET_log (GNUNET_ERROR_TYPE_DEBUG,
- "Tracker %p bandwidth changed to %u Bps\n", av,
- (unsigned int) new_limit);
+ LOG (GNUNET_ERROR_TYPE_DEBUG,
+ "Tracker %p bandwidth changed to %u Bps\n", av,
+ (unsigned int) new_limit);
#endif
update_tracker (av);
old_limit = av->available_bytes_per_s__;
av->available_bytes_per_s__ = new_limit;
if (old_limit > new_limit)
- update_tracker (av); /* maximum excess might be less now */
+ update_tracker (av); /* maximum excess might be less now */
}
diff --git a/src/util/bio.c b/src/util/bio.c
index 404b7aa3bb..9c2b9d0dd9 100644
--- a/src/util/bio.c
+++ b/src/util/bio.c
@@ -26,6 +26,8 @@
#include "gnunet_bio_lib.h"
#include "gnunet_disk_lib.h"
+#define LOG(kind,...) GNUNET_log_from (kind, "util",__VA_ARGS__)
+
#define BIO_BUFFER_SIZE 65536
#define MAX_META_DATA (1024 * 1024)
@@ -56,7 +58,8 @@ GNUNET_BIO_read_open (const char *fn)
struct GNUNET_DISK_FileHandle *fd;
struct GNUNET_BIO_ReadHandle *h;
- fd = GNUNET_DISK_file_open (fn, GNUNET_DISK_OPEN_READ, GNUNET_DISK_PERM_NONE);
+ fd =
+ GNUNET_DISK_file_open (fn, GNUNET_DISK_OPEN_READ, GNUNET_DISK_PERM_NONE);
if (NULL == fd)
return NULL;
h = GNUNET_malloc (sizeof (struct GNUNET_BIO_ReadHandle) + BIO_BUFFER_SIZE);
@@ -102,7 +105,7 @@ GNUNET_BIO_read_close (struct GNUNET_BIO_ReadHandle *h, char **emsg)
*/
int
GNUNET_BIO_read (struct GNUNET_BIO_ReadHandle *h, const char *what,
- void *result, size_t len)
+ void *result, size_t len)
{
char *dst = result;
size_t min;
@@ -113,38 +116,38 @@ GNUNET_BIO_read (struct GNUNET_BIO_ReadHandle *h, const char *what,
return GNUNET_SYSERR;
pos = 0;
do
- {
- /* first, use buffer */
- min = h->have - h->pos;
- if (min > 0)
- {
- if (min > len - pos)
- min = len - pos;
- memcpy (&dst[pos], &h->buffer[h->pos], min);
- h->pos += min;
- pos += min;
- }
- if (pos == len)
- return GNUNET_OK; /* done! */
- GNUNET_assert (h->have == h->pos);
- /* fill buffer */
- ret = GNUNET_DISK_file_read (h->fd, h->buffer, h->size);
- if (ret == -1)
- {
- GNUNET_asprintf (&h->emsg, _("Error reading `%s': %s"), what,
- STRERROR (errno));
- return GNU