event_add(&age_subnets_event, &(struct timeval){10, 0});
}
-static void learn_mac(mac_t *address)
-{
+static void learn_mac(mac_t *address) {
subnet_t *subnet;
splay_node_t *node;
connection_t *c;
- subnet = lookup_subnet_mac(address);
+ subnet = lookup_subnet_mac(myself, address);
/* If we don't know this MAC address yet, store it */
subnet->type = SUBNET_MAC;
subnet->expires = time(NULL) + macexpire;
subnet->net.mac.address = *address;
+ subnet->weight = 10;
subnet_add(myself, subnet);
/* And tell all other tinc daemons it's our MAC */
/* Lookup destination address */
memcpy(&dest, &packet->data[0], sizeof dest);
- subnet = lookup_subnet_mac(&dest);
+ subnet = lookup_subnet_mac(NULL, &dest);
if(!subnet) {
broadcast_packet(source, packet);