summaryrefslogtreecommitdiffstats
path: root/proto/bgp/bgp.c
AgeCommit message (Collapse)Author
2009-10-11Workaround for stupid callback scheduler.Ondrej Zajicek
There is no reak callback scheduler and previous behavior causes bad things during hard congestion (like BGP hold timeouts). Smart callback scheduler is still missing, but main loop was changed such that it first processes all tx callbacks (which are fast enough) (but max 4* per socket) + rx callbacks for CLI, and in the second phase it processes one rx callback per socket up to four sockets (as rx callback can be slow when there are too many protocols, because route redistribution is done synchronously inside rx callback). If there is event callback ready, second phase is skipped in 90% of iterations (to speed up CLI during congestion).
2009-09-24Passive option.Ondrej Zajicek
2009-07-09Fixed bug related to reconfiguration of BGP with MD5 passwords.Ondrej Zajicek
2009-06-23Replace 'bind' option with 'listen' option.Ondrej Zajicek
To be consistent with other daemons.
2009-06-18Implements option that changes BGP listening socket parametres.Ondrej Zajicek
2009-06-07Minor BGP changes related to error wait time.Ondrej Zajicek
2009-06-06Fixes bug related to startup delay change.Ondrej Zajicek
2009-06-06Differentiate between error delay and connect/reconnect delay.Ondrej Zajicek
The difference is here to reject incoming connections in the first case.
2009-06-04Implements import route limits.Ondrej Zajicek
2009-05-31Changes pipes to transfer all routes between routing table, not just optimal ↵Ondrej Zajicek
routes.
2009-04-29Fixes BGP IPv6 link local next hop handling.Ondrej Zajicek
When sending 'third party' BGP update, Bird used bogus link local addresses instead of addresses it received before.
2009-04-28Fixes handling of 'next hop self' and 'source address' configurationOndrej Zajicek
options.
2009-03-18Better handling of AS4 optional attribute errorsOndrej Zajicek
AS4 optional attribute errors were handled by session drop (according to BGP RFC). This patch implements error handling according to new BGP AS4 draft (*) - ignoring invalid AS4 optional attributes. (*) http://www.ietf.org/internet-drafts/draft-chen-rfc4893bis-02.txt
2009-03-13Update capability handshake optionsOndrej Zajicek
Add 'capabilities' option, change default behavior to advertise ipv4, add some checks and ignore incoming capabilities when capabilities are disabled.
2008-12-24Adds support for fallback to capabilityless BGP connectOndrej Zajicek
When capability related error is received, next connect will be without capabilities. Also cease error subcodes descriptions (according to [RFC4486]) are added.
2008-12-24Fixes bug related to reconfiguration of BGP.Ondrej Zajicek
BGP keeps its copy of configuration ptr and didn't update it during reconfiguration. But old configuration is freed during reconfiguration. That leads to unnecessary reset of BGP connection during reconfiguration (old conf is corrupted and therefore different) and possibly other strange behavior.
2008-12-19Major changes to BGPOndrej Zajicek
Fixes two race conditions causing crash of Bird, several unhandled cases during BGP initialization, and some other bugs. Also changes handling of startup delay to be more useful and implement reporting of last error in 'show protocols' command.
2008-11-01Multihop BGP was completely broken, because listening socket has alwaysOndrej Zajicek
ttl 1.
2008-11-01Implementation of route server.Ondrej Zajicek
2008-10-26Implementation of an option for disabling AS4 support per BGP instance.Ondrej Zajicek
2008-10-26Implementation of route reflection for BGPOndrej Zajicek
2008-10-26Implementation of MD5 authentication of BGP sessions.Ondrej Zajicek
2008-10-26Implementation of 4B ASN support for BGPOndrej Zajicek
2004-06-05Staticized lots of local functions.Martin Mares
2004-06-05... in BGP.Martin Mares
2004-05-31Rewritten the I/O loop. All socket operations are now safe, meaning thatMartin Mares
you can delete the socket from anywhere in the hooks and nothing should break. Also, the receive/transmit buffers are now regular xmalloc()'ed buffers, not separate resources which would need shuffling around between pools. sk_close() is gone, use rfree() instead.
2004-05-31Killed a couple of unused variables.Martin Mares
We really should compile with warnings enabled.
2003-02-22Better selection of link-local NLRI addresses, at least for our ownMartin Mares
address. Need to do it better for the other neighbors -- the current solution works only if they use the standard 64+64 global addresses and the interface identifier in lower 64 bits is the same as for the link-scope addresses.
2002-11-13Added missing includes.Martin Mares
2000-06-20Don't accept incoming connections when the neighbor is not up.Martin Mares
2000-06-07Fixes to the progdoc.Martin Mares
2000-06-07Spelling fixes to progdoc.Martin Mares
2000-06-04BGP documented.Martin Mares
2000-05-19BGP now reports originating AS and origin type in get_route_info().Martin Mares
2000-05-15bgp_get_status: If protocol is down, don't print BGP state.Martin Mares
2000-05-08The bgp_list is gone. Incomming connections are now handled in a muchMartin Mares
more straightforward manner by scanning the active configuration for matching protocols.
2000-05-08Link the instance to the global BGP list as soon as possible.Martin Mares
2000-05-07Setup of incoming connection is now a separate function.Martin Mares
2000-05-02Defined format specifier `%M' which behaves as `%m', but takes theMartin Mares
error code as an argument. Use it in socket hooks where we really shouldn't rely on errno containing the right value or even existing.
2000-05-02Full protocol tracing.Martin Mares
2000-04-27Handle connect errors correctly.Martin Mares
2000-04-26IBGP fixes.Martin Mares
2000-04-26Implemented automatic restart after error with all the timers needed.Martin Mares
2000-04-26Randomize timers properly.Martin Mares
2000-04-25Support dynamic reconfiguration.Martin Mares
2000-04-25Better reporting of both local and remote errors.Martin Mares
2000-04-21LOCAL_PREF is now always present and exported over all ibgp connections [draft]Martin Mares
Allow setting of address of the local end of the TCP connection. Several bug fixes.
2000-04-19Delay fetching of router ID.Martin Mares
2000-04-19Select the right source address and don't check port numbers.Martin Mares
2000-04-10Use neighbor cache to track direct route to the peer or multihop destination.Martin Mares
Calculate next_hop properly based on the local address we get from the neighbor entry.