Commit graph

943 commits

Author SHA1 Message Date
Ondrej Zajicek 2af25a971a Fixes a crash caused by missing error hook on BGP listening socket.
Error happened when too many BGP connections arrived in one moment
(ECONNABORTED).
2010-02-11 11:12:58 +01:00
Ondrej Zajicek 353729f513 Temporary OSPF commit - socket changes. 2010-02-11 10:23:35 +01:00
Ondrej Zajicek c27b2449d1 Shows source (Router ID) for OSPF routes and adds such attribute.
A sad thing is that we does not have a 'router_id' filter type,
so it must be given as decimal number in filters.
2010-02-08 16:01:03 +01:00
Ondrej Zajicek aa80826e4a Unnumbered OSPF interfaces should be always in the point-to-point mode. 2010-02-07 09:49:34 +01:00
Ondrej Zajicek 44f26560ec Workaround for some broken BGP implementations that skip initial KEEPALIVE. 2010-02-02 10:14:21 +01:00
Ondrej Zajicek 41677025ee Changes 'ignore communities' to 'interpret communities'. 2010-01-28 15:59:18 +01:00
Ondrej Zajicek 6cb8f742f1 Better handling of well-known communities.
Process well-known communities before the export filter (old behavior is
to process these attributes after, which does not allow to send route
with such community) and just for routes received from other BGP
protocols. Also fixes a bug in next_hop check.
2010-01-27 17:22:57 +01:00
Ondrej Zajicek a306208582 Comment update. 2010-01-13 14:53:33 +01:00
Ondrej Zajicek 99f5fc14cd A partial vlink fix. 2010-01-08 22:19:41 +01:00
Ondrej Zajicek fc33143f02 A fix for broken multi-area OSPF 2010-01-08 17:22:51 +01:00
Ondrej Filip 6901fd0685 More information about vlinks. 2010-01-07 23:42:11 +01:00
Ondrej Filip 18722dc98c Bugfix in DBG call. 2010-01-07 23:03:19 +01:00
Ondrej Filip 3127b81755 Be a little bit more verbose on virtual links. 2010-01-07 22:54:39 +01:00
Ondrej Zajicek cf0858c217 A fix of a previous fix. 2010-01-07 22:43:06 +01:00
Ondrej Zajicek ba39197c11 Fixes vlinks for OSPFv2. 2010-01-07 22:22:10 +01:00
Ondrej Zajicek 29bfbae793 Debugging change leaked to repository. 2010-01-07 16:24:36 +01:00
Ondrej Zajicek 3034b384dd A minor fix in OSPF. 2010-01-07 11:46:11 +01:00
Ondrej Zajicek cf31112f0d Implements MRTdump feature. 2010-01-03 12:17:52 +01:00
Ondrej Zajicek 610bb3cff0 Show command cleanups. 2009-12-22 10:49:39 +01:00
Ondrej Zajicek c4ae53858b Change default mode of pipes to transparent.
Opaque pipes are obsolete and should disappear in the future.
2009-12-21 11:53:58 +01:00
Ondrej Zajicek fbcb7d5faf Change default LOCAL_PREF attribute to 100 (suggested value by RFC 4277). 2009-12-21 11:50:42 +01:00
Ondrej Zajicek ba9a122142 Merge branch 'ospf3' into new 2009-12-20 22:57:44 +01:00
Ondrej Zajicek c4199e3031 Merge branch 'dev' into ospf3 2009-12-20 22:56:09 +01:00
Ondrej Zajicek ea7ada3809 Fixes a new bug in the pipe protocol soft reconfiguration.
Also updates route reload for pipes.
2009-12-20 14:59:12 +01:00
Ondrej Zajicek 1a5178587f Fixes unnecessary pipe restart during configure. 2009-12-20 12:13:15 +01:00
Ondrej Zajicek 0225ea4edd Merge branch 'ospf3' into new 2009-12-15 00:32:13 +01:00
Ondrej Zajicek f2d7da742b Fixes export of routes with link-local gw. 2009-12-15 00:30:07 +01:00
Ondrej Zajicek 43c1ceccb9 Remove bgp_as4_support variable. 2009-12-14 23:31:25 +01:00
Ondrej Zajicek f75747073e Implements route reload for OSPF. 2009-12-14 21:17:15 +01:00
Ondrej Zajicek 63542845df Merge branch 'dev' into ospf3
Conflicts:

	proto/ospf/lsreq.c
	proto/ospf/lsupd.c
	proto/ospf/rt.c
2009-12-14 20:37:32 +01:00
Ondrej Zajicek 34a877ccac Minor updates. 2009-12-14 17:29:33 +01:00
Ondrej Zajicek 28008482a9 Minor fixes in OSPF. 2009-12-12 01:35:51 +01:00
Ondrej Zajicek 8a70a13e7e Implements protocol-specific Router ID for OSPF.
And fixes one minor bug.
2009-12-11 11:06:51 +01:00
Ondrej Zajicek be2d38b7e9 Temporary OSPFv3 commit. 2009-12-11 00:31:56 +01:00
Ondrej Zajicek 9807690b41 Fixes link-back check. 2009-12-06 22:05:50 +01:00
Ondrej Zajicek b76aeb8234 Fixes next hop handling. 2009-12-04 22:20:13 +01:00
Ondrej Zajicek 9895502392 Fixes OSPFv2 build. 2009-12-03 23:20:02 +01:00
Ondrej Zajicek bb3c7c6d22 Fixes some log messages. 2009-12-03 18:56:39 +01:00
Ondrej Zajicek 69fbf9a251 Minor fix in LSA update. 2009-12-03 18:25:14 +01:00
Ondrej Zajicek 11787b8473 Fixes some problems in pipes.
For transparent pipes, loop detection works correctly now.
Pipes are now more symmetric - in both directions filtering
is done in do_rte_announce().
2009-12-02 17:26:16 +01:00
Ondrej Zajicek 4b84bd4554 Fixes some crashes in OSPFv2. 2009-11-29 10:29:33 +01:00
Ondrej Zajicek e4a810b0ce Temporary commit. 2009-11-29 10:09:25 +01:00
Ondrej Zajicek bf47fe4b2e Implements BGP route refresh. 2009-11-26 20:47:59 +01:00
Ondrej Zajicek 3f9b7bfe9f Implements option that controls IPv6 BGP next hops when lladdr is missing. 2009-11-18 20:32:36 +01:00
Ondrej Zajicek d0e2d6d1e0 Show both IPv6 next hop addresses in BGP. 2009-11-17 14:17:23 +01:00
Ondrej Zajicek 3228c72cc0 Implements RFC 5004 - prefer older external routes. 2009-11-17 11:41:29 +01:00
Ondrej Zajicek cbf8b08d62 Temporary OSPFv3 devel commit 2009-11-17 10:31:33 +01:00
Ondrej Zajicek 4ac7c8341c Use IPv6 checksums in OSPFv3. 2009-11-09 23:22:53 +01:00
Ondrej Zajicek 3f22fa9e74 Merge branch 'dev' into ospf3 2009-11-09 22:54:39 +01:00
Ondrej Zajicek a6bc04d591 Implements better checks on incoming packets and LSAs in OSPF. 2009-10-29 23:57:42 +01:00
Ondrej Zajicek 9d4d38d1a5 Fixes some problems related to link-local routes in KRT interface. 2009-10-28 22:39:24 +01:00
Ondrej Zajicek 9727681a38 Implements proper handling of summary/external LSA IDs. 2009-10-25 20:02:28 +01:00
Ondrej Zajicek 988992446d Implement command to show LSA db. 2009-10-15 11:57:25 +02:00
Ondrej Zajicek b66abe8ef9 Reimplements 'show ospf state' for OSPFv3 and fixes some bugs. 2009-10-15 00:28:04 +02:00
Ondrej Zajicek 4cdd078453 Implements protocol-specific router id and updates documentation. 2009-10-12 23:31:42 +02:00
Ondrej Zajicek 52b9b2a178 Rename as_path_get_last/as_path_get_first to be consistent. 2009-10-12 20:44:58 +02:00
Ondrej Zajicek ea89da381f Workaround for stupid callback scheduler.
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-10-11 18:56:16 +02:00
Ondrej Zajicek d82fc18d75 Implement proper LSA ID generation. 2009-10-07 21:10:29 +01:00
Ondrej Zajicek a5bf5f781c Show bad peer AS number in log in decimal. 2009-09-24 23:14:44 +02:00
Ondrej Zajicek be6e39ebbf Passive option. 2009-09-24 22:12:11 +02:00
Ondrej Zajicek 54fe0d9230 Fixes setting of IP addresses to route attributes (NEXT_HOP). 2009-09-18 13:59:04 +02:00
Ondrej Zajicek 46eb80d5d5 Fixes headers for uintptr_t (and build on NetBSD). 2009-09-17 17:52:36 +02:00
Ondrej Zajicek 0781e9c62c Fixes preference in transparent pipes. 2009-09-17 12:40:02 +02:00
Ondrej Zajicek 9f0ba7b1c7 Implements proper RID handling in OSPFv3. 2009-09-17 12:18:03 +02:00
Ondrej Zajicek c15e569065 Make endianity swapping simpler. 2009-09-08 17:06:47 +02:00
Ondrej Zajicek be86240662 Temporary OSPFv3 development commit.
Finally, it is working.
2009-09-08 13:45:02 +02:00
Ondrej Zajicek f9c799a00e Temporary OSPFv3 development commit (changing multicast support). 2009-09-04 11:06:51 +02:00
Ondrej Zajicek d2ceaf4ec8 Temporary OSPFv3 development commit 2009-08-28 13:45:43 +02:00
Ondrej Zajicek 05198c12f4 Some cleanups. 2009-08-27 19:01:04 +02:00
Ondrej Zajicek 061ab802a6 Temporary OSPFv3 development commit 2009-08-27 18:25:46 +02:00
Ondrej Zajicek 949bd34e81 Fixes bug related to AS2->AS4 conversion. 2009-08-25 19:01:37 +02:00
Ondrej Zajicek b49e6f5a65 Temporary OSPFv3 development commit 2009-08-25 16:42:14 +02:00
Ondrej Zajicek c3226991a0 Temporary OSPFv3 development commit 2009-08-21 09:27:52 +02:00
Ondrej Filip 87d7fd9725 Bugfix - each protocol can be compiled separately. 2009-08-16 22:36:41 +02:00
Ondrej Zajicek b92c8e3019 Merge branch 'master' into dev 2009-08-10 10:16:00 +02:00
Ondrej Filip 0d328932be Symbols PASSWORDS and BROADCAST not declared for OSPF 2009-07-30 18:39:41 +02:00
Ondrej Zajicek 3aab39f589 Use %R in OSPF when appropriate. 2009-07-23 16:51:28 +02:00
Ondrej Zajicek 70670bf317 Fixed bug related to reconfiguration of BGP with MD5 passwords. 2009-07-09 15:42:39 +02:00
Ondrej Zajicek 2389c46fe3 Another pile of ipa_from_u32() calls. 2009-07-05 21:18:55 +02:00
Ondrej Zajicek b082c1bfcc Fixes OSPF on big-endians.
Hmm, #ifdef is not very typo-safe.
2009-07-05 20:26:51 +02:00
Ondrej Zajicek f9bdcad469 Fixes type mismatch in OSPF printf statements.
Mixing ip_addr and u32 does bad things on Ultrasparc.
Although both have the same size. Fascinating.
It was not catched by compiler because of varargs.
2009-07-05 19:01:54 +02:00
Ondrej Zajicek d72cdff411 Replace 'bind' option with 'listen' option.
To be consistent with other daemons.
2009-06-23 11:08:30 +02:00
Ondrej Zajicek da95a7a7da Fixes bug in ORIGIN check. 2009-06-23 11:00:38 +02:00
Ondrej Zajicek 29c430f856 Changes handling of AS_PATH_CONFED_* segments in AS_PATH.
Although standard says that if we receive AS_PATH_CONFED_*
(and we are not a part of a confederation) segment, we should
drop session, nobody does that and it is unwise to do that.

Now we drop session just in case that peer ASN is in
AS_PATH_CONFED_* segment (to detect peer that considers BIRD
as a part of its confederation).
2009-06-23 10:50:57 +02:00
Ondrej Zajicek 789772ed45 Implements option that changes BGP listening socket parametres. 2009-06-18 19:20:07 +02:00
Ondrej Zajicek 1b3b3e34ec Minor bugfixes. 2009-06-18 14:32:44 +02:00
Ondrej Zajicek 3867520281 Implements an option that allows to change a set of stub networks. 2009-06-11 17:25:38 +02:00
Ondrej Zajicek 3d15dcdb1c Changes OSPF to generate stub networks for non-primary addresses.
Also does some reorganization in RT LSA announcement.
2009-06-10 23:45:08 +02:00
Ondrej Zajicek b99d378698 Minor BGP changes related to error wait time. 2009-06-07 00:38:38 +02:00
Ondrej Zajicek 7238262671 Fixes bug related to startup delay change. 2009-06-06 18:56:33 +02:00
Ondrej Zajicek dd91e46765 Differentiate between error delay and connect/reconnect delay.
The difference is here to reject incoming connections in the
first case.
2009-06-06 18:16:22 +02:00
Ondrej Zajicek 72b28a041d Implements import route limits. 2009-06-04 13:31:09 +02:00
Ondrej Zajicek f98e291579 The pipe cleanup. 2009-06-01 14:07:13 +02:00
Ondrej Zajicek 2d45e09f58 Adds opaque/transparent pipe mode selection. 2009-06-01 12:10:10 +02:00
Ondrej Zajicek 23ac9e9a9e Changes pipes to transfer all routes between routing table, not just optimal routes. 2009-05-31 15:24:27 +02:00
Ondrej Zajicek f571473ef3 Hello packets on PTP networks should have zero netmask.
This also ensures that misconfigured routers (one side
ptp and one side broadcast) do not make adjacency.
2009-05-24 17:55:33 +02:00
Ondrej Zajicek 8cc598a520 Ignore Hello packets from different IP network (than primary). 2009-05-24 17:51:27 +02:00
Ondrej Zajicek 20e94fb85b A change in OSPF and RIP interface patterns.
Allows to add more interface patterns to one common 'options'
section like:

interface "eth3", "eth4" { options common to eth3 and eth4 };

Also removes undocumented and unnecessary ability to specify
more interface patterns with different 'options' sections:

interface "eth3" { options ... }, "eth4" { options ... };
2009-05-06 22:02:45 +02:00
Ondrej Zajicek 10ab65a8c9 Fixes one recently introduced IPv6 BGP compatibility problem. 2009-05-06 15:18:52 +02:00
Ondrej Zajicek b7a735ea9d Allow 'third party' BGP updates for originated routes. 2009-04-29 22:17:40 +02:00