mirror of
https://git.proxmox.com/git/mirror_frr
synced 2025-08-02 15:34:30 +00:00
isisd: fix isis_circuit_af_set() on fresh circuit
A newly-created circuit will be in enabled state but have neither IPv4 nor IPv6 configured. The logic in isis_circuit_af_set assumed that "enabled" is equivalent to "ip || ipv6". This is the only place where this distinction is currently relevant, as the CLI won't allow enabling an interface without enabling either IPv4 or IPv6; and it will also disable a circuit when both are deconfigured. Reported-by: Martin Winter <mwinter@opensourcerouting.org> Signed-off-by: David Lamparter <equinox@opensourcerouting.org>
This commit is contained in:
parent
139c1f36d4
commit
aa11f85082
@ -1240,7 +1240,7 @@ isis_circuit_af_set (struct isis_circuit *circuit, bool ip_router, bool ipv6_rou
|
||||
{
|
||||
struct isis_area *area = circuit->area;
|
||||
bool change = circuit->ip_router != ip_router || circuit->ipv6_router != ipv6_router;
|
||||
bool was_enabled = circuit->ip_router || circuit->ipv6_router;
|
||||
bool was_enabled = !!circuit->area;
|
||||
|
||||
area->ip_circuits += ip_router - circuit->ip_router;
|
||||
area->ipv6_circuits += ipv6_router - circuit->ipv6_router;
|
||||
|
Loading…
Reference in New Issue
Block a user