diff options
author | Jafar Al-Gharaibeh <Jafaral@users.noreply.github.com> | 2021-04-04 05:37:25 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2021-04-04 05:37:25 +0200 |
commit | 283981e4a718be65170341d6d4aed0f60ebcb192 (patch) | |
tree | ad8645c8c64514f0b0164a1c0833fd992407e9aa /nhrpd/nhrpd.h | |
parent | Merge pull request #8378 from pguibert6WIND/listen_group_limit (diff) | |
parent | nhrpd: Fix memory leak in error path when forwarding packets (diff) | |
download | frr-283981e4a718be65170341d6d4aed0f60ebcb192.tar.xz frr-283981e4a718be65170341d6d4aed0f60ebcb192.zip |
Merge pull request #8240 from reubendowle/fixes/nhrp-nat
nhrp: NAT fixes
Diffstat (limited to 'nhrpd/nhrpd.h')
-rw-r--r-- | nhrpd/nhrpd.h | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/nhrpd/nhrpd.h b/nhrpd/nhrpd.h index 9c8c293b9..e4afb22f8 100644 --- a/nhrpd/nhrpd.h +++ b/nhrpd/nhrpd.h @@ -156,6 +156,7 @@ struct nhrp_peer { struct nhrp_vc *vc; struct thread *t_fallback; struct notifier_block vc_notifier, ifp_notifier; + struct thread *t_timer; }; struct nhrp_packet_parser { @@ -225,9 +226,11 @@ struct nhrp_cache { struct { enum nhrp_cache_type type; union sockunion remote_nbma_natoa; + union sockunion remote_nbma_claimed; struct nhrp_peer *peer; time_t expires; uint32_t mtu; + int holding_time; } cur, new; }; @@ -383,7 +386,8 @@ void nhrp_cache_config_foreach(struct interface *ifp, void nhrp_cache_set_used(struct nhrp_cache *, int); int nhrp_cache_update_binding(struct nhrp_cache *, enum nhrp_cache_type type, int holding_time, struct nhrp_peer *p, - uint32_t mtu, union sockunion *nbma_natoa); + uint32_t mtu, union sockunion *nbma_natoa, + union sockunion *claimed_nbma); void nhrp_cache_notify_add(struct nhrp_cache *c, struct notifier_block *, notifier_fn_t); void nhrp_cache_notify_del(struct nhrp_cache *c, struct notifier_block *); @@ -465,4 +469,6 @@ void nhrp_peer_recv(struct nhrp_peer *p, struct zbuf *zb); void nhrp_peer_send(struct nhrp_peer *p, struct zbuf *zb); void nhrp_peer_send_indication(struct interface *ifp, uint16_t, struct zbuf *); +int nhrp_nhs_match_ip(union sockunion *in_ip, struct nhrp_interface *nifp); + #endif |