diff options
| author | Philippe Guibert <philippe.guibert@6wind.com> | 2023-04-03 18:06:48 +0200 | 
|---|---|---|
| committer | Philippe Guibert <philippe.guibert@6wind.com> | 2023-04-04 09:06:37 +0200 | 
| commit | 9f04ffe8d61bb09d0a52a901612c6fad4a19978c (patch) | |
| tree | e06f35c40d391a7ed9ea0f3f9dfc377181924c41 /isisd/isis_circuit.c | |
| parent | c810c690452fc56f4c1b74ad7d0596074a917bbd (diff) | |
isisd: consider link local ipv4 addresses as valid
It is not possible to create an adjacency by using interface
addresses within the `169.254.0.0/24` pool.
When forging the IIH messages, the interface addresses from
that pool are not appended:
> Neither IPv4 nor IPv6 considered usable. Ignoring IIH
Using this network pool is possible on other IS-IS
implementations. Let us authorize to use such network
addresses.
Signed-off-by: Philippe Guibert <philippe.guibert@6wind.com>
Diffstat (limited to 'isisd/isis_circuit.c')
| -rw-r--r-- | isisd/isis_circuit.c | 3 | 
1 files changed, 1 insertions, 2 deletions
diff --git a/isisd/isis_circuit.c b/isisd/isis_circuit.c index 124dcdd86d..64b405737f 100644 --- a/isisd/isis_circuit.c +++ b/isisd/isis_circuit.c @@ -286,8 +286,7 @@ void isis_circuit_add_addr(struct isis_circuit *circuit,  	if (connected->address->family == AF_INET) {  		uint32_t addr = connected->address->u.prefix4.s_addr;  		addr = ntohl(addr); -		if (IPV4_NET0(addr) || IPV4_NET127(addr) || IN_CLASSD(addr) -		    || IPV4_LINKLOCAL(addr)) +		if (IPV4_NET0(addr) || IPV4_NET127(addr) || IN_CLASSD(addr))  			return;  		for (ALL_LIST_ELEMENTS_RO(circuit->ip_addrs, node, ipv4))  | 
