mirror of
https://git.proxmox.com/git/mirror_frr
synced 2025-08-06 00:41:20 +00:00
isisd: refuse adjacencies with our own system ID
isisd would form an adjacency with another router despite the system IDs being identical. This would later cause an assertion failure like this: assertion=0x555555596db8 "isis_find_vertex (spftree->paths, id, vtype) == ((void *)0)", file=0x555555596c60 "isis_spf.c", line=515, function=0x555555597900 "isis_spf_add2tent") at log.c:619 which is caused by trying to add a path expected to not exist, but suddenly colliding due to the duplicate system ID. * isis_pdu.c: check for system ID collision on receiving Hello Signed-off-by: David Lamparter <equinox@opensourcerouting.org>
This commit is contained in:
parent
91d799e8cd
commit
19f78cebd2
@ -988,6 +988,13 @@ process_lan_hello (int level, struct isis_circuit *circuit, u_char * ssnpa)
|
||||
}
|
||||
}
|
||||
|
||||
if (!memcmp (hdr.source_id, isis->sysid, ISIS_SYS_ID_LEN))
|
||||
{
|
||||
zlog_warn ("ISIS-Adj (%s): duplicate system ID on interface %s",
|
||||
circuit->area->area_tag, circuit->interface->name);
|
||||
return ISIS_WARNING;
|
||||
}
|
||||
|
||||
/*
|
||||
* Accept the level 1 adjacency only if a match between local and
|
||||
* remote area addresses is found
|
||||
|
Loading…
Reference in New Issue
Block a user