#include "edge.h"
#include "graph.h"
#include "logger.h"
-#include "meta.h"
#include "net.h"
#include "netutl.h"
#include "node.h"
char to_port[MAX_STRING_SIZE];
char address_local[MAX_STRING_SIZE];
char port_local[MAX_STRING_SIZE];
- sockaddr_t address, local_address = {{0}};
+ sockaddr_t address, local_address = {0};
uint32_t options;
int weight;
/* Check if names are valid */
- if(!check_id(from_name) || !check_id(to_name)) {
+ if(!check_id(from_name) || !check_id(to_name) || !strcmp(from_name, to_name)) {
logger(DEBUG_ALWAYS, LOG_ERR, "Got bad %s from %s (%s): %s", "ADD_EDGE", c->name,
c->hostname, "invalid name");
return false;
}
if(e->weight != weight) {
- splay_node_t *node = splay_unlink(edge_weight_tree, e);
+ splay_node_t *node = splay_unlink(&edge_weight_tree, e);
e->weight = weight;
- splay_insert_node(edge_weight_tree, node);
+ splay_insert_node(&edge_weight_tree, node);
}
} else if(from == myself) {
logger(DEBUG_PROTOCOL, LOG_WARNING, "Got %s from %s (%s) for ourself which does not exist",
/* Check if names are valid */
- if(!check_id(from_name) || !check_id(to_name)) {
+ if(!check_id(from_name) || !check_id(to_name) || !strcmp(from_name, to_name)) {
logger(DEBUG_ALWAYS, LOG_ERR, "Got bad %s from %s (%s): %s", "DEL_EDGE", c->name,
c->hostname, "invalid name");
return false;