diff options
author | Ondrej Zajicek <santiago@crfreenet.org> | 2010-07-12 17:39:39 +0200 |
---|---|---|
committer | Ondrej Zajicek <santiago@crfreenet.org> | 2010-07-12 17:39:39 +0200 |
commit | 9be9a264137cdd881f339c37d1a1918527924254 (patch) | |
tree | 0b815a7ac09fb59a3e72aad6ce713c7a77ed0662 /proto/bgp/bgp.h | |
parent | cfe34a316e35a209fcd814ccf3523c262e8d4b0a (diff) |
Implements proper multihop BGP.
Also does some incompatible changes to config file syntax,
like removing 'via IP' from multihop option.
Diffstat (limited to 'proto/bgp/bgp.h')
-rw-r--r-- | proto/bgp/bgp.h | 9 |
1 files changed, 3 insertions, 6 deletions
diff --git a/proto/bgp/bgp.h b/proto/bgp/bgp.h index 76844af3..160aa3db 100644 --- a/proto/bgp/bgp.h +++ b/proto/bgp/bgp.h @@ -20,7 +20,6 @@ struct bgp_config { u32 local_as, remote_as; ip_addr remote_ip; int multihop; /* Number of hops if multihop */ - ip_addr multihop_via; /* Multihop: address to route to */ ip_addr source_addr; /* Source address to use */ int next_hop_self; /* Always set next hop to local IP address */ int missing_lladdr; /* What we will do when we don' know link-local addr, see MLL_* */ @@ -89,10 +88,8 @@ struct bgp_proto { struct bgp_conn outgoing_conn; /* Outgoing connection we're working with */ struct bgp_conn incoming_conn; /* Incoming connection we have neither accepted nor rejected yet */ struct object_lock *lock; /* Lock for neighbor connection */ - ip_addr next_hop; /* Either the peer or multihop_via */ - struct neighbor *neigh; /* Neighbor entry corresponding to next_hop */ - ip_addr local_addr; /* Address of the local end of the link to next_hop */ - ip_addr source_addr; /* Address used as advertised next hop, usually local_addr */ + struct neighbor *neigh; /* Neighbor entry corresponding to remote ip, NULL if multihop */ + ip_addr source_addr; /* Local address used as an advertised next hop */ rtable *igp_table; /* Table used for recursive next hop lookups */ struct event *event; /* Event for respawning and shutting process */ struct timer *startup_timer; /* Timer used to delay protocol startup due to previous errors (startup_delay) */ @@ -109,7 +106,7 @@ struct bgp_proto { #ifdef IPV6 byte *mp_reach_start, *mp_unreach_start; /* Multiprotocol BGP attribute notes */ unsigned mp_reach_len, mp_unreach_len; - ip_addr local_link; /* Link-level version of local_addr */ + ip_addr local_link; /* Link-level version of source_addr */ #endif }; |