mirror of
https://gitlab.alpinelinux.org/alpine/aports.git
synced 2026-01-18 23:22:24 +01:00
fixes a corner case that system had broken routing (typically due to dual ISP), it gets fixed without changing gre interface.
26 lines
937 B
Diff
26 lines
937 B
Diff
commit 578db3f65caec301ceb402e5c7b51624ed1c4576 (HEAD, origin/master, origin/HEAD, master)
|
|
Author: Timo Teräs <timo.teras@iki.fi>
|
|
Date: Thu Jul 11 14:14:15 2013 +0300
|
|
|
|
peer: reset interface nat cie when server does not detect nat
|
|
|
|
fixes a corner case that system had broken routing, it gets fixed
|
|
without changing gre interface. for normal operation the nat cie is
|
|
reset by gre interface change hooks.
|
|
|
|
diff --git a/nhrp/nhrp_peer.c b/nhrp/nhrp_peer.c
|
|
index 97bbe48..2dbdeea 100644
|
|
--- a/nhrp/nhrp_peer.c
|
|
+++ b/nhrp/nhrp_peer.c
|
|
@@ -1001,6 +1001,9 @@ static void nhrp_peer_handle_registration_reply(void *ctx,
|
|
peer->interface->nat_cie = *cie;
|
|
}
|
|
}
|
|
+ if (payload == NULL || cie == NULL)
|
|
+ memset(&peer->interface->nat_cie, 0,
|
|
+ sizeof(peer->interface->nat_cie));
|
|
|
|
/* If not re-registration, send a purge request for each subnet
|
|
* we accept shortcuts to, to clear server redirection cache. */
|
|
|