X-Git-Url: http://tinc-vpn.org/git/browse?a=blobdiff_plain;f=src%2Fprotocol_subnet.c;h=526cd9692f13f9c2505c9806679a119f4a4e2772;hb=4f48176209832913975843b6cf3bf1753152da3f;hp=3e82e4737399a14f1b63bb84409996ce912a2fad;hpb=f6e87ab476a0faf8b124ecaaa27f967d825e6457;p=tinc diff --git a/src/protocol_subnet.c b/src/protocol_subnet.c index 3e82e473..526cd969 100644 --- a/src/protocol_subnet.c +++ b/src/protocol_subnet.c @@ -23,14 +23,12 @@ #include "conf.h" #include "connection.h" +#include "crypto.h" #include "logger.h" -#include "net.h" -#include "netutl.h" #include "node.h" #include "protocol.h" #include "subnet.h" #include "utils.h" -#include "xalloc.h" bool send_add_subnet(connection_t *c, const subnet_t *subnet) { char netstr[MAXNETSTR]; @@ -39,14 +37,14 @@ bool send_add_subnet(connection_t *c, const subnet_t *subnet) { return false; } - return send_request(c, "%d %x %s %s", ADD_SUBNET, rand(), subnet->owner->name, netstr); + return send_request(c, "%d %x %s %s", ADD_SUBNET, prng(UINT32_MAX), subnet->owner->name, netstr); } bool add_subnet_h(connection_t *c, const char *request) { char subnetstr[MAX_STRING_SIZE]; char name[MAX_STRING_SIZE]; node_t *owner; - subnet_t s = {NULL}, *new, *old; + subnet_t s = {0}, *new, *old; if(sscanf(request, "%*d %*x " MAX_STRING " " MAX_STRING, name, subnetstr) != 2) { logger(DEBUG_ALWAYS, LOG_ERR, "Got bad %s from %s (%s)", "ADD_SUBNET", c->name, @@ -86,8 +84,7 @@ bool add_subnet_h(connection_t *c, const char *request) { } if(!owner) { - owner = new_node(); - owner->name = xstrdup(name); + owner = new_node(name); node_add(owner); } @@ -155,14 +152,14 @@ bool send_del_subnet(connection_t *c, const subnet_t *s) { return false; } - return send_request(c, "%d %x %s %s", DEL_SUBNET, rand(), s->owner->name, netstr); + return send_request(c, "%d %x %s %s", DEL_SUBNET, prng(UINT32_MAX), s->owner->name, netstr); } bool del_subnet_h(connection_t *c, const char *request) { char subnetstr[MAX_STRING_SIZE]; char name[MAX_STRING_SIZE]; node_t *owner; - subnet_t s = {NULL}, *find; + subnet_t s = {0}, *find; if(sscanf(request, "%*d %*x " MAX_STRING " " MAX_STRING, name, subnetstr) != 2) { logger(DEBUG_ALWAYS, LOG_ERR, "Got bad %s from %s (%s)", "DEL_SUBNET", c->name,