Commit graph

365 commits

Author SHA1 Message Date
Ondrej Filip
5ee479aac9 Small typo. 2000-05-08 22:26:11 +00:00
Ondrej Filip
0ebb8b64f3 Bugfix in new neighbor allocation. 2000-05-08 22:24:22 +00:00
Ondrej Filip
77fbd315df Better debug output. 2000-05-08 22:10:10 +00:00
Ondrej Filip
b57a45b81a Next hop calculation improved. (I ignored stub networks advertised by my
neighbors.
2000-05-08 22:03:29 +00:00
Ondrej Filip
158b99c912 Better logging. (%d->%I) 2000-05-08 22:02:45 +00:00
Martin Mares
0c3588bf5e Don't crash when the socket gets closed between updates.
Also, this time not only update `remains', but update it right :)
2000-05-08 14:53:22 +00:00
Martin Mares
9ff8f334ed Update `remains' counter correctly. 2000-05-08 14:32:19 +00:00
Martin Mares
93d6bf38a6 The bgp_list is gone. Incomming connections are now handled in a much
more straightforward manner by scanning the active configuration for
matching protocols.
2000-05-08 13:26:30 +00:00
Martin Mares
507eea4c8b Don't generate corrupted packets when sending only route deletes. 2000-05-08 12:37:24 +00:00
Martin Mares
79681f4a19 Link the instance to the global BGP list as soon as possible. 2000-05-08 11:04:22 +00:00
Martin Mares
916c8c0aba Use preferences properly. 2000-05-08 10:40:00 +00:00
Martin Mares
92ef4fa719 Preference is a configurable parameter. 2000-05-08 10:38:25 +00:00
Martin Mares
acfce55c86 Setup of incoming connection is now a separate function. 2000-05-07 10:41:45 +00:00
Martin Mares
ce1da96ee7 Added commands show route protocol <p>' and show route import <p>' which
show the routing table as exported to the protocol given resp. as returned
from its import control hook.

To get handling of filtered extended attributes right (even in the old
`show route where <filter>' command), the get_route_info hook gets an
attribute list and all protocol specific rte attributes are contained
there as temporary ones. Updated RIP to do that.

Added ea_append() which joins two ea_list's.
2000-05-06 22:57:39 +00:00
Martin Mares
ab1129c1bd Added skeleton Doc files for the whole developer's documentation. 2000-05-05 17:17:42 +00:00
Martin Mares
beaf86e13c Removed RTS_RIP_EXT. 2000-05-04 21:23:10 +00:00
Martin Mares
9a220cabbc #ifdef out lots of debugging information.
The long resource/routing table dump printed upon startup is gone now
and if you wish to see it, just send bird SIGUSR1 or use the `debug'
commands.
2000-05-04 20:52:28 +00:00
Martin Mares
2a149b18cc Unused variables in IPv6 code. 2000-05-04 20:38:44 +00:00
Martin Mares
93a786cb03 Removed a lot of unused variables.
Please try compiling your code with --enable-warnings to see them. (The
unused parameter warnings are usually bogus, the unused variable ones
are very useful, but gcc is unable to control them separately.)
2000-05-04 20:30:36 +00:00
Pavel Machek
9b63e3a58a Spelling fixes. 2000-05-04 20:08:34 +00:00
Martin Mares
cf3d6470d7 IPv6 BGP support finished. Also simplified the BGP stuff a bit. 2000-05-04 20:02:56 +00:00
Martin Mares
1c1da87b27 Receive-only IPv6 BGP. 2000-05-04 09:03:31 +00:00
Ondrej Filip
d345cda5a1 Bugfix in Network lsa originating
Bugfix in ntohlsab() and htonlsab()
For calculating of rt I use my own fib. I delete routes! ;-)
2000-05-04 01:23:03 +00:00
Ondrej Filip
9e48d717cf Test for "flushing" added. 2000-05-03 22:36:12 +00:00
Ondrej Filip
a02c6c184b Cleanup of code. Some arguments of functions were useless. 2000-05-03 22:23:41 +00:00
Ondrej Filip
ad5453b540 Testing if I can flush LSA from database. 2000-05-03 22:12:33 +00:00
Ondrej Filip
9bc1808a27 Better rt and net originating. 2000-05-03 00:08:48 +00:00
Ondrej Filip
0bf2f2039e Originating of network LSA. 2000-05-02 23:09:44 +00:00
Ondrej Filip
249fdef7a1 Adding InfTransDelay for outgoing lsa. 2000-05-02 22:31:48 +00:00
Ondrej Filip
c45f48fba5 Aging of lsa database added. 2000-05-02 22:19:41 +00:00
Ondrej Filip
a92847e78f Route calculation for stub networks. 2000-05-02 19:27:57 +00:00
Martin Mares
53943a0022 Defined format specifier %M' which behaves as %m', but takes the
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-02 16:10:04 +00:00
Martin Mares
85368cd4b7 Full protocol tracing. 2000-05-02 16:07:41 +00:00
Martin Mares
d1a74339d4 Handle redistribution of unknown attributes correctly. 2000-05-02 12:51:39 +00:00
Ondrej Filip
85195f1a53 Many small changes and bug fixes. Routing table calculation works.
I'm waiting for rt lookup to add stub networks.
2000-04-30 22:14:31 +00:00
Pavel Machek
2337ade754 Moved documentation to top of file, where it belongs. 2000-04-30 18:47:48 +00:00
Ondrej Filip
c6c5626436 Sync with nest's rt table and some minor improvements. 2000-04-30 11:31:05 +00:00
Ondrej Filip
e80e9d0da5 RT calculation strongly simplified. Now, I don't need any
memory allocation. :-)
2000-04-30 09:32:41 +00:00
Ondrej Filip
468f2347fc Calculating of nexts hop(s) added. 2000-04-29 15:57:14 +00:00
Pavel Machek
9c1a55deee IpV6 now actually compiles.
Mj, could you provide example of static config for ipv6 that is _not_
rejected by checks? I tried this and got rejected.

	route 62:168::/32 via 62:169::;
	route 1:2::/32 via 1:3::;
2000-04-29 15:45:30 +00:00
Martin Mares
cea6366400 The `bgp_origin' attribute is now an enum. 2000-04-28 15:13:29 +00:00
Martin Mares
2edb31b097 Split CF_HDR section to CF_HDR (only includes) and CF_DEFINES (defines,
C declarations etc.).
2000-04-28 15:11:10 +00:00
Pavel Machek
decc99fbbd Killed fixme: I already fixed it. 2000-04-28 10:15:57 +00:00
Pavel Machek
a769a180d7 Provide rip_get_attr, how do I test it? 2000-04-28 10:14:59 +00:00
Pavel Machek
6c0a7174af Add sample documentation to rip. 2000-04-28 09:55:52 +00:00
Martin Mares
f94557dec5 Some more fixes for attributeless UPDATEs. 2000-04-27 22:40:19 +00:00
Martin Mares
54896cbdba Path attribute can be missing if we process a packet with empty NLRI section. 2000-04-27 22:31:11 +00:00
Martin Mares
9165888ad2 Handle connect errors correctly. 2000-04-27 19:41:10 +00:00
Ondrej Filip
2add26dfa9 Stub networks done. 2000-04-26 20:16:36 +00:00
Ondrej Filip
5904a51266 Nets are used before routers. 2000-04-26 14:03:56 +00:00
Martin Mares
5db9bae286 IBGP fixes. 2000-04-26 13:26:31 +00:00
Ondrej Filip
dfa9a53a66 Routing table calculation. Dijkstra done. 2000-04-26 12:54:23 +00:00
Pavel Machek
c010f4cb37 Use right address for ripv6. 2000-04-26 11:33:03 +00:00
Pavel Machek
7f704c06d8 Cleanup in preparation for ipv6. 2000-04-26 11:07:57 +00:00
Martin Mares
6fd766c17e Implemented automatic restart after error with all the timers needed. 2000-04-25 23:08:31 +00:00
Martin Mares
8573314326 Avoid printing of error messages on Cease notifications. 2000-04-25 23:08:03 +00:00
Martin Mares
b3155b3399 Randomize timers properly. 2000-04-25 22:01:19 +00:00
Martin Mares
42532f0846 Support dynamic reconfiguration. 2000-04-25 21:58:17 +00:00
Martin Mares
99f70c78e1 Use the same attribute names as in filters. 2000-04-25 21:31:15 +00:00
Martin Mares
684c25d98f When sending BGP attributes, re-create the flags, so that attributes
added by filters which get the flags wrong are fixed automagically.
2000-04-25 21:21:52 +00:00
Martin Mares
efcece2da3 Better reporting of both local and remote errors. 2000-04-25 21:13:25 +00:00
Martin Mares
a47a01083b Real parsing of BGP OPEN options including capability
negotiation.
2000-04-25 13:32:17 +00:00
Martin Mares
8b258e4e65 LOCAL_PREF is now always present and exported over all ibgp connections [draft]
Allow setting of address of the local end of the TCP connection.

Several bug fixes.
2000-04-21 13:01:28 +00:00
Martin Mares
2a9e064d7b If no NLRI's are present in an UPDATE message, parse the attributes, but
don't check presence of mandatory attributes. [draft-09]
2000-04-21 12:25:35 +00:00
Martin Mares
7787ace61a Synced to draft-ietf-idr-bgp4-09. 2000-04-20 22:54:22 +00:00
Martin Mares
9bc6ab4041 Fixed reporting of unknown options. 2000-04-20 22:34:50 +00:00
Martin Mares
5f532adde2 Temporarily ignore unknown options. 2000-04-19 13:54:35 +00:00
Martin Mares
f381cdce52 The ATOMIC_AGGREGATE parameter is optional transitive. 2000-04-19 13:54:17 +00:00
Martin Mares
e0d6a7bda4 Delay fetching of router ID. 2000-04-19 13:28:56 +00:00
Martin Mares
035044b1d9 Select the right source address and don't check port numbers. 2000-04-19 12:51:14 +00:00
Ondrej Filip
85c92555ef Grr, another patch to make it compile. 2000-04-18 22:11:05 +00:00
Ondrej Filip
740d16d972 Another ack bugfix. (Bad test for MIN_LS_ARRIVAL.) 2000-04-18 22:07:58 +00:00
Ondrej Filip
84228eee27 LS ack bugfix. (I didn't remove LSA from LSret hash.) 2000-04-18 21:40:11 +00:00
Ondrej Filip
19fc4c763e LS ack. 2000-04-18 21:13:56 +00:00
Ondrej Filip
26116eac93 Better LS Ack dumping. 2000-04-18 20:34:19 +00:00
Ondrej Filip
48f5a61f69 Bugfix in neighbor dumping. 2000-04-18 19:56:43 +00:00
Ondrej Filip
9eada7ca03 Fixed the serious bug in LSack.
Oh, I'm an idiot. I sent LSACK, but in header was LSUPD. :-(
2000-04-18 19:44:16 +00:00
Ondrej Filip
9eea604769 Multicast open socket for (B)DR bugfix. 2000-04-18 19:31:42 +00:00
Ondrej Filip
79f036ef6e Dump changes. 2000-04-18 19:22:49 +00:00
Ondrej Filip
4472402551 Many %u changer into %I. 2000-04-18 18:29:50 +00:00
Ondrej Filip
89929e9daa Many %u changed into %I and dump cleanup. 2000-04-18 18:21:10 +00:00
Ondrej Filip
1508ee8b53 Iface chstate run only if something really change. 2000-04-18 18:01:26 +00:00
Ondrej Filip
dd100e40c6 Better dumping in neighbor chstate. 2000-04-18 17:58:16 +00:00
Ondrej Filip
8914e37dc0 Better chstate dumping. 2000-04-18 17:54:06 +00:00
Ondrej Filip
284c43ff66 Sending of ACK disabled, since I'll find bug. 2000-04-18 17:36:46 +00:00
Ondrej Filip
023f5e86eb Another LSack update. It's still NOT correct and it surely
kills gated or Cyclades OSPF implementation. :-)
2000-04-18 17:00:56 +00:00
Ondrej Filip
67315ef64e Some lsack work. There is something very worng. :-( It locked my network. 2000-04-18 01:06:16 +00:00
Ondrej Filip
2a0925948d Listening on AllDRouters for DR and BACKUP added. 2000-04-17 21:10:40 +00:00
Ondrej Filip
38130b863f Small change in LSA originating. 2000-04-17 20:42:42 +00:00
Martin Mares
bd2d8190dd Honor standard communities (no_export, no_advertise, no_export_subconfed)
when exporting routes.
2000-04-17 13:13:08 +00:00
Martin Mares
56a2bed46b Don't import/export MED and LOCAL_PREF on external links.
Added real comparison of BGP routes (inspired by the Cisco one).
Default local preference and default MED are now settable.
Defined filter keywords for all BGP attributes we know.
2000-04-17 12:46:07 +00:00
Martin Mares
e3558ab14e Normalize community sets when exporting.
Set PARTIAL bits correctly.
2000-04-17 11:25:15 +00:00
Martin Mares
1ed2fe9609 Send and receive communities. 2000-04-17 10:19:15 +00:00
Martin Mares
f421cfdd80 Sending of update messages works! 2000-04-17 09:37:31 +00:00
Martin Mares
c0668f3696 Created nest/a-path.c and a-set.c which should contain general operations
on AS paths and community sets.

Moved as_path_prepend() there.

Pavel, please move the other functions as well.
2000-04-17 07:53:29 +00:00
Ondrej Filip
ebff007f08 LSack receiving bugfix. 2000-04-12 15:37:52 +00:00
Ondrej Filip
4bf41ac8b1 LS Ack receiving done. 2000-04-12 15:20:13 +00:00
Ondrej Filip
58313b24c8 Stupid "+1"-bug fixed. 2000-04-12 14:49:20 +00:00
Martin Mares
c8f685cb9d Made last Pavel's changes compile. 2000-04-12 14:14:47 +00:00
Pavel Machek
0a40e97328 as_path_prepend is usable outside bgp. 2000-04-12 14:12:37 +00:00