| Commit message (Collapse) | Author | Age | Files | Lines |
|\ |
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
- aspath_gettoken(): use as_t to fix 4-byte ASN scanning (bug #484)
- set_aspath_prepend_cmd(): use CMD_AS_RANGE in message to match
actual range
- no_set_aspath_prepend_val_cmd(): idem
- set_aspath_exclude_cmd(): idem
- no_set_aspath_exclude_val_cmd(): idem
|
| |
| |
| |
| |
| | |
Since BGPD now has flag to default to import-check on, show the
current state of import-check in dump output.
|
|\|
| |
| |
| |
| |
| |
| |
| |
| | |
Conflicts:
bgpd/bgp_aspath.c
bgpd/bgpd.c
lib/smux.c
lib/workqueue.c
ospfd/ospf_snmp.c
|
| |\ |
|
| | | |
|
| | |
| | |
| | |
| | |
| | | |
* 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.
|
| | |
| | |
| | |
| | |
| | | |
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.
|
| |/
| |
| |
| |
| |
| |
| | |
* 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
|
| |
| |
| |
| |
| |
| |
| | |
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/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.
|
| |
| |
| |
| |
| |
| |
| | |
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.
|
| |
| |
| |
| |
| |
| |
| |
| | |
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.
|
| | |
|
| |
| |
| |
| |
| | |
Check result of daemon() call to fix warning
Make local variables static
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| |
| |
| |
| |
| | |
This table should be read-only.
Also, comment out some unused code.
|
| | |
|
| | |
|
| |
| |
| |
| | |
The finite state machine table is immutable.
|
| |
| |
| |
| |
| | |
Message lists can be read-only, and hash tables are local to this
code.
|
| |
| |
| |
| | |
Fix printf format warning and make capability table 'const static'
|
| |
| |
| |
| | |
Save a little code, getaddrinfo hint can be static initialized.
|
| |
| |
| |
| |
| |
| | |
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.
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
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
|
| |
| |
| |
| | |
This reverts commit 732ebcdfad6e3a786386e38a126c84477d192105.
|
| |
| |
| |
| |
| |
| | |
Bugfix 3436
Wait for all items in the peer clear queue to finish before
deleting BGP instance.
|
| |
| |
| |
| | |
These variables are const.
|
| |
| |
| |
| |
| | |
bgp_terminate is used when process SIGHUP, clear workqueue references
after freeing them.
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
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>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
* 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>
|
| |
| |
| |
| |
| | |
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.
|
| |
| |
| |
| |
| |
| |
| |
| | |
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.
|
| |
| |
| |
| |
| | |
"%d" -> "%u" 4-byte ASN corrections. Prevent negative number when ASN is
above 2^31.
|
| | |
|
| |
| |
| |
| | |
Simple conversion of XMALLOC/memset to XCALLOC
|
| | |
|
|\ \ |
|
| |/
| |
| |
| |
| | |
Use Ansi-C prototypes rather than old K&R method of declaring
function without arguments
|
| |
| |
| |
| | |
A couple more trivial optimization.
|
|\|
| |
| |
| |
| |
| | |
Conflicts:
lib/checksum.c
|
| |
| |
| |
| |
| |
| |
| |
| | |
* 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 current upstream version of quagga.
|
| |\|
| | |
| | |
| | | |
Resolve all conflicts by using upstream version.
|
| | |\ |
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
* 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.
|