GNUnet is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published
- by the Free Software Foundation; either version 2, or (at your
+ by the Free Software Foundation; either version 3, or (at your
option) any later version.
GNUnet is distributed in the hope that it will be useful, but
pos++;
slen++;
}
- if ('\0' != *pos)
+ if (left == 0)
{
/* 0-termination not found */
GNUNET_break_op (0);
GNUNET_HELLO_GenerateAddressListCallback addrgen,
void *addrgen_cls)
{
- char buffer[GNUNET_SERVER_MAX_MESSAGE_SIZE - 256 -
+ char buffer[GNUNET_SERVER_MAX_MESSAGE_SIZE - 1 - 256 -
sizeof (struct GNUNET_HELLO_Message)];
size_t max;
size_t used;
ec.tname = tname;
GNUNET_HELLO_iterate_addresses (mc->other, GNUNET_NO, &get_match_exp, &ec);
if ( (ec.found == GNUNET_NO) ||
- (ec.expiration.value < expiration.value) ||
- ( (ec.expiration.value == expiration.value) &&
+ (ec.expiration.abs_value < expiration.abs_value) ||
+ ( (ec.expiration.abs_value == expiration.abs_value) &&
(mc->take_equal == GNUNET_YES) ) )
{
mc->ret += GNUNET_HELLO_add_address (tname,
GNUNET_HELLO_iterate_addresses (dc->old_hello,
GNUNET_NO, &get_match_exp, &ec);
if ((ec.found == GNUNET_YES) &&
- ((ec.expiration.value > expiration.value) ||
- (ec.expiration.value >= dc->expiration_limit.value)))
+ ((ec.expiration.abs_value > expiration.abs_value) ||
+ (ec.expiration.abs_value >= dc->expiration_limit.abs_value)))
return GNUNET_YES; /* skip */
ret = dc->it (dc->it_cls, tname, expiration, addr, addrlen);
return ret;
{
struct EqualsContext *ec = cls;
- if (expiration.value < ec->expiration_limit.value)
+ if (expiration.abs_value < ec->expiration_limit.abs_value)
return GNUNET_YES;
if ( (addrlen == ec->addrlen) &&
(0 == strcmp (tname,
addrlen)) )
{
ec->found = GNUNET_YES;
- if (expiration.value < ec->expiration.value)
+ if (expiration.abs_value < ec->expiration.abs_value)
ec->result = GNUNET_TIME_absolute_min (expiration,
ec->result);
return GNUNET_SYSERR;
{
struct EqualsContext *ec = cls;
- if (expiration.value < ec->expiration_limit.value)
+ if (expiration.abs_value < ec->expiration_limit.abs_value)
return GNUNET_YES;
ec->tname = tname;
ec->expiration = expiration;
GNUNET_NO,
&find_matching,
&ec);
- if (ec.result.value ==
- GNUNET_TIME_UNIT_ZERO.value)
+ if (ec.result.abs_value ==
+ GNUNET_TIME_UNIT_ZERO.rel_value)
return ec.result;
ec.h2 = h1;
GNUNET_HELLO_iterate_addresses (h2,