summaryrefslogtreecommitdiffstats
path: root/bgpd
Commit message (Collapse)AuthorAgeFilesLines
* Merge branch 'upstream' into jennerStephen Hemminger2009-06-044-16/+18
|\ | | | | | | | | | | | | | | | | Conflicts: bgpd/bgp_aspath.c bgpd/bgpd.c lib/smux.c lib/workqueue.c ospfd/ospf_snmp.c
| * Merge remote branch 'origin/master'Paul Jakma2009-06-023-5/+5
| |\
| | * [trivia] Fixed typos in communities text (#334)Denis Ovsienko2009-06-012-4/+4
| | |
| | * [bgpd] 64-bit bugfix in community_del_val by Jeremy Jackson <jerj@coplanar.net>Andrew J. Schorr2009-05-291-1/+1
| | | | | | | | | | | | | | | * bgpd/bgp_community.c: (community_del_val) Fix bug in memcpy that was using the wrong size on architectures where a pointer is not 32 bits.
| * | [snmp] Compiler warning fixes for when "--enable-snmp" is configured.Chris Caputo2009-06-021-16/+23
| | | | | | | | | | | | | | | Compiled on 32-bit and 64-bit linux gcc 4.1.2 platforms. No run-time testing on 32-bit and limited run-time testing on 64-bit.
| * | [bgp] Fix crash on SIGHUP, deref of freed workqueuesSteve Hill2009-06-021-3/+9
| |/ | | | | | | | | | | | | * lib/workqueue.c: free-ing workqueues had never been tested obviously, queue's thread was not being stopped * bgpd/bgpd.c: null out freed workqueues, to prevent acting on freed workqueues
| * Fix bgp ipv4/ipv6 accept handlingStephen Hemminger2009-05-081-0/+9
| | | | | | | | | | | | | | When bgp calls getaddrinfo, it gets both ipv6 and ipv4 addresses. Unless IPV6_ONLY is set on Linux, only the ipv6 bind will succeed, and the IPV4 connections will come in as mapped connections on the IPV6 socket.
| * [bgpd] AS4 bugfix by Chris Caputo <ccaputo@alt.net>Denis Ovsienko2009-04-3010-85/+62
| | | | | | | | | | | | | | | | | | * bgpd/bgp_aspath.c: (aspath_make_str_count) "assert (len < str_size)" was getting hit under certain 4-byte ASN conditions. New realloc strategy. * bgpd/bgp_aspath.c: (aspath_key_make) const warning fix. "%d" -> "%u" 4-byte ASN corrections. Prevent negative number when ASN is above 2^31.
* | Add a BGP flag to default to import checkStephen Hemminger2009-06-033-1/+9
| | | | | | | | | | | | | | This adds a flag to bgpd that makes each BGP instance start with import-check enabled. With Vyatta CLI, this resolves issues resulting from ordering at startup and how command elements for disable-import-check are used.
* | BGP Community Deletion BugMichael Lambert2009-05-211-1/+1
| | | | | | | | | | | | | | | | The attached patch was already posted to the list once (thanks to whoever found it first). However, it never made it into the code base. It is a severe to critical bug affecting community deletions on 64-bit machines and is bug #515 in bugzilla.
* | BGP make message lists read onlyStephen Hemminger2009-05-152-16/+16
| |
* | BGP main program cleanupStephen Hemminger2009-05-151-7/+11
| | | | | | | | | | Check result of daemon() call to fix warning Make local variables static
* | BGP make ecommunity variables/functions localStephen Hemminger2009-05-152-3/+2
| |
* | BGP make some damp function staticStephen Hemminger2009-05-152-6/+5
| |
* | BGP make community hash table staticStephen Hemminger2009-05-151-1/+1
| |
* | BGP make message list in bgp_open constStephen Hemminger2009-05-151-4/+6
| |
* | BGP make receive capability staticStephen Hemminger2009-05-151-1/+1
| |
* | BGP make flag action table read-onlyStephen Hemminger2009-05-152-7/+7
| | | | | | | | | | This table should be read-only. Also, comment out some unused code.
* | BGP aspath eliminate dead codeStephen Hemminger2009-05-152-3/+5
| |
* | BGP make some bgp_attr functions staticStephen Hemminger2009-05-152-7/+2
| |
* | Make BGP FSM table read-only staticStephen Hemminger2009-05-151-1/+1
| | | | | | | | The finite state machine table is immutable.
* | BGP make attribute variables localStephen Hemminger2009-05-151-5/+5
| | | | | | | | | | Message lists can be read-only, and hash tables are local to this code.
* | Fix compile warningsStephen Hemminger2009-05-151-4/+5
| | | | | | | | Fix printf format warning and make capability table 'const static'
* | Bgp socket use static initializationStephen Hemminger2009-05-151-6/+5
| | | | | | | | Save a little code, getaddrinfo hint can be static initialized.
* | Remove assertion when route clears and peer !EstablishedStephen Hemminger2009-05-151-13/+0
| | | | | | | | | | | | It is possible on BGP shutdown for routes to finish clearing while peer is waiting deletion. Therefore the assertion check in bgp_clear_route can be deleted.
* | Reference count BGP instanceStephen Hemminger2009-05-143-6/+42
| | | | | | | | | | | | | | | | | | Bug 3436 Add reference counting on BGP structure. Don't free BGP instance until all peer's are deleted. Fix memory leak where self reference created but never freed
* | Revert "Wait for peers to clear on BGP shutdown"Stephen Hemminger2009-05-133-15/+0
| | | | | | | | This reverts commit 732ebcdfad6e3a786386e38a126c84477d192105.
* | Wait for peers to clear on BGP shutdownStephen Hemminger2009-05-113-0/+15
| | | | | | | | | | | | Bugfix 3436 Wait for all items in the peer clear queue to finish before deleting BGP instance.
* | Make declarations matchStephen Hemminger2009-05-081-2/+2
| | | | | | | | These variables are const.
* | Be safer in bgp_terminateStephen Hemminger2009-05-081-2/+6
| | | | | | | | | | bgp_terminate is used when process SIGHUP, clear workqueue references after freeing them.
* | avoid zombie accepted peer entriesTimo Teräs2009-05-071-0/+2
| | | | | | | | | | | | | | | | | | | | | | Currently, when accepting the connection, it can be left as zombie, when the peer just initiates a connection, but never sends data (and the TCP connection end packets are lost). This happens because for accepted connections a temporary new peer entry is created until OPEN message is exchanged, and this temporary peer entry does not get the hold time parameter set at all. Signed-off-by: Timo Teras <timo.teras@iki.fi>
* | Fix "show ip bgp dampened-paths" garbage output.Chris Caputo2009-05-063-10/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * bgpd/bgp_damp.c: Make bgp_damp_reuse_time_vty() accept a buffer and length, rather than returning a local var buffer whose contents can get trounced. Remove duplicate BGP_UPTIME_LEN define. * bgpd/bgp_damp.h: bgp_damp_reuse_time_vty() prototype change. * bgpd/bgp_route.c: Provide bgp_damp_reuse_time_vty() with a buffer and length. Remove duplicate BGP_UPTIME_LEN define. This problem was noticed in 2005... http://hibernia.jakma.org/~paul/patches/quagga-test.diff ...but the fix didn't make it into the code. Signed-off-by: Chris Caputo <ccaputo at alt.net>
* | Compiler warning fixes for when --enable-snmp is configured.Chris Caputo2009-05-061-15/+22
| | | | | | | | | | Compiled on 32-bit and 64-bit linux gcc 4.1.2 platforms. No run-time testing on 32-bit and limited run-time testing on 64-bit.
* | Expanding asn path bufferStephen Hemminger2009-04-301-53/+27
| | | | | | | | | | | | | | | | Based on: [bgpd] AS4 bugfix by Chris Caputo <ccaputo@alt.net> * bgpd/bgp_aspath.c: (aspath_make_str_count) "assert (len < str_size)" was getting hit under certain 4-byte ASN conditions. New realloc strategy.
* | Handle large ASN print formattingDenis Ovsienko2009-04-309-31/+31
| | | | | | | | | | "%d" -> "%u" 4-byte ASN corrections. Prevent negative number when ASN is above 2^31.
* | Align bgp with upstreamStephen Hemminger2009-02-096-4/+16
| |
* | Convert XMALLOC/memset to XCALLOCStephen Hemminger2009-02-092-16/+7
| | | | | | | | Simple conversion of XMALLOC/memset to XCALLOC
* | whitespace fixStephen Hemminger2009-02-091-1/+1
| |
* | Merge branch 'vyatta-update' of /home/shemminger/src/quagga into jennerStephen Hemminger2009-02-0912-32/+32
|\ \
| * | bgp: change () to (void)Stephen Hemminger2009-02-0912-32/+32
| |/ | | | | | | | | Use Ansi-C prototypes rather than old K&R method of declaring function without arguments
* | Use XCALLOC instead of XMALLOC/memsetStephen Hemminger2008-12-011-6/+2
| | | | | | | | A couple more trivial optimization.
* | Merge branch 'master' of /home/shemminger/src/quagga into jennerStephen Hemminger2008-12-011-0/+31
|\| | | | | | | | | | | Conflicts: lib/checksum.c
| * [bgpd] Add 'show bgp views' commandMichael Lambert2008-11-161-0/+31
| | | | | | | | | | | | | | | | * bgp_vty.c: (show_bgp_views_cmd) new command to list all defined views. (with small edits by Paul Jakma) Signed-off-by: Paul Jakma <paul@quagga.net>
* | Merge in latest quagga (0.99.11)Stephen Hemminger2008-10-2710-3999/+177
|\ \ | | | | | | | | | Merge in current upstream version of quagga.
| * | Merge branch 'master' of /home/shemminger/src/quagga into upstreamStephen Hemminger2008-10-1320-4032/+299
| |\| | | | | | | | | | Resolve all conflicts by using upstream version.
| | * Merge branch 'bgpd/fsm'Paul Jakma2008-10-021-4/+5
| | |\
| | | * [bgpd] Allow accepted peers to progress even if realpeer is in ConnectPaul Jakma2008-09-091-4/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | * bgpd/bgp_packet.c: (bgp_open_receive) Try fix the little race in the FSM, where a accept-peer that progress faster than realpeer gets closed down if realpeer is still just in Connect, by allowing the realpeer to be bgp_stop'ed and doing the regular swapping-of-FSM state.
| | * | [bgpd] Fix definition of an rsclient commandMichael Lambert2008-09-241-1/+1
| | |/ | | | | | | | | | | | | | | | | | | * bgp_route.c: (show_ip_bgp_view_rsclient_route_cmd) Add the missing "ip" to the command string. Signed-off-by: Paul Jakma <paul@quagga.net>
| | * [bgpd] Document the FSM dummy-peer race that sometimes afflicts session setupPaul Jakma2008-09-061-0/+45
| | | | | | | | | | | | | | | | | | | | | * bgp_packet.c: (bgp_open_receive) the accept-peer hack can sometimes cause a race between two peers that try to establish sessions to each other, causing session setup to fail when it should have succeeded. In the worst case, the race can 'loop', causing prolonged failure to establish sessions.
| | * Merge branch 'restricted-mode'Paul Jakma2008-09-043-0/+96
| | |\