Commit graph

612 commits

Author SHA1 Message Date
Ondrej Filip 5970fcda8c Some exchange between init() and start(). 2000-05-30 10:53:48 +00:00
Ondrej Filip 73232f6b18 Better rt dumping. 2000-05-30 10:36:57 +00:00
Ondrej Filip 05dbc97b13 Bug in rt_notify. 2000-05-30 10:20:14 +00:00
Martin Mares 7294f68b3b path metric' and disable after error' are switches, not numeric clauses. 2000-05-29 22:08:04 +00:00
Ondrej Filip e9d6b1d19f Kosmetic change in debugging. 2000-05-28 20:11:56 +00:00
Ondrej Filip f7c0525edc get_route_info() added. 2000-05-28 19:16:04 +00:00
Ondrej Filip 4414d9a57a get_status() implemented. 2000-05-28 18:49:33 +00:00
Ondrej Filip d5f029df48 Just added some debug(). 2000-05-28 18:34:20 +00:00
Ondrej Filip 4bd28fb68e Better shutdown. (Flush my own router LSA and send 1WAY to every neighbor.)
Ext LSA originating and flushing added.
2000-05-27 15:36:02 +00:00
Ondrej Filip e8085abaa7 Originating of external LSA. 2000-05-27 14:17:35 +00:00
Ondrej Filip 2d5b999236 Import control implemented. 2000-05-26 19:04:18 +00:00
Martin Mares d2a7c0e9b2 Don't print trace messages about null updates. 2000-05-19 18:05:19 +00:00
Martin Mares dc6405d27e Latest changes by Pavel have removed the error messages printed after
unsuccessful socket open, but replaced them by segmentatio fault!

Grrrrrrrrr.
2000-05-19 17:21:42 +00:00
Pavel Machek 9511a483b1 Less error messages in case sk_open fails. 2000-05-19 16:44:25 +00:00
Pavel Machek eb4097e4e4 Added name of protocol to messages being logged. 2000-05-19 16:22:53 +00:00
Martin Mares 5e88d73025 BGP now reports originating AS and origin type in get_route_info(). 2000-05-19 11:01:41 +00:00
Martin Mares f7ad556f20 Commented out the `inserting entry which is already there' message since
it's pretty normal: during feeding of the protocol, a new route can appear
which will be announced normally and then repeated by the feeding process.
2000-05-19 11:00:47 +00:00
Ondrej Filip 0850ce22d7 Smal debug bugfix. 2000-05-17 21:20:47 +00:00
Pavel Machek 6d5e703dc9 Minor cleaning 2000-05-17 20:23:05 +00:00
Ondrej Filip 00c1f79a79 rte_same implemented. 2000-05-17 20:01:25 +00:00
Ondrej Filip bbd76b421a rte_better implemented. 2000-05-17 19:27:51 +00:00
Ondrej Filip 4ee2178935 Don't die, if you receive strange LSA. 2000-05-17 00:28:45 +00:00
Ondrej Filip 7f6b3cf247 Typo in comment. 2000-05-17 00:28:11 +00:00
Ondrej Filip 18a0c0bb76 Downing of interface should work. 2000-05-16 23:59:38 +00:00
Ondrej Filip 8fb0c2c298 Calculation of external routes finally works. 2000-05-16 23:24:50 +00:00
Ondrej Filip 31834faaf3 Ehmm, removed 'if(1 || ...' so I can test the second part . 2000-05-16 22:43:30 +00:00
Ondrej Filip 508c36ab79 Routing table calculation for ext LSAs having next-hop=!0.0.0.0 2000-05-16 22:34:49 +00:00
Martin Mares e5a47266d0 Turned off LOCAL_DEBUG. 2000-05-16 15:08:52 +00:00
Pavel Machek 5b846de6a6 Interface dummy is too strange for me... but psst, that's secret. 2000-05-16 15:05:05 +00:00
Pavel Machek 898fdd85dc Rip should now reconfigure itself only if needed. 2000-05-16 14:58:06 +00:00
Martin Mares f4ab231746 bgp_get_status: If protocol is down, don't print BGP state. 2000-05-15 12:19:28 +00:00
Martin Mares e3f2d5fce3 Cleanup of configuration.
o  Use `expr' instead of `NUM' and `ipa' instead of `IPA',
   so that defined symbols work everywhere.
o  `define' now accepts both numbers and IP addresses.
o  Renamed `ipa' in filters to `fipa'.

Pavel, please update filters to accept define'd symbols as well.
2000-05-15 11:48:23 +00:00
Martin Mares 758458be05 Unified parsing of prefixes.
Had to rename `prefix' in filters to `fprefix'.
2000-05-13 11:17:49 +00:00
Martin Mares 02bd064ab7 Adapted to new rt_notify semantics. 2000-05-13 11:02:02 +00:00
Martin Mares e4bfafa100 Manual enable/disable works right. 2000-05-13 11:01:41 +00:00
Ondrej Filip 7e681ef360 Calculation of external routes works. :-) 2000-05-12 00:22:43 +00:00
Ondrej Filip be2bb40341 Minor changes. 2000-05-11 22:02:53 +00:00
Ondrej Filip 5da1f93537 Bugfix in flooding. (bad size)
Better debugging.
More robust in receiving.
2000-05-11 22:00:55 +00:00
Ondrej Filip c8d1f3feb2 Better debugging.
More robust.
2000-05-11 22:00:16 +00:00
Ondrej Filip 7a42e6ce89 Bugfix in network LSA originating. 2000-05-11 17:14:57 +00:00
Martin Mares 28323d9ddb Several minor RIP changes (Pavel, please check as usually):
o  Use FIB_ITERATE_INIT instead of calling the function fit_init()
      which is explictly marked as private in route.h.
   o  When printing trace messages, don't spit out protocol name twice.
   o  Some messages are a bit more verbose.
   o  Added a bunch of FIXME's.
   o  When running in broadcast mode, don't forget to bind the local
      end of the socket to the same broadcast address, so that we don't
      get the broadcasts looped back via different interface. I'm just
      going to look up the same problem for multicasts.
2000-05-11 15:05:13 +00:00
Martin Mares 2138d3b4d8 Use correct flags for the LOCAL_PREF attribute.
When an invalid attribute is found, copy the entire attribute to the data
section of the NOTIFICATION message.
2000-05-11 12:20:07 +00:00
Pavel Machek ec21aecfdd Fixed nasty segfault in rip. 2000-05-11 10:33:18 +00:00
Pavel Machek 10f5c47d2e Some more paranoia into rip_insert and rip_delete 2000-05-11 09:41:16 +00:00
Pavel Machek 94d1a6c9dc Unused variable killed. 2000-05-11 09:36:55 +00:00
Ondrej Filip 394920a09c Test better lsa size. 2000-05-10 23:42:37 +00:00
Ondrej Filip 31dca43534 Be more verbose. 2000-05-10 23:42:13 +00:00
Ondrej Filip 74ac7cdb1a Bugfix in (B)DR election. 2000-05-10 23:41:52 +00:00
Ondrej Filip ff73f1d63d More robust tests in packet receiving. 2000-05-10 23:41:18 +00:00
Ondrej Filip 13741548a6 Some better lsa checking added. 2000-05-10 15:04:21 +00:00
Ondrej Filip a9c41c8548 Out dump deleted. 2000-05-10 14:29:00 +00:00
Pavel Machek 2a41c8d9fc use password_same utility function 2000-05-10 13:42:50 +00:00
Ondrej Filip a3f657ac76 Ever test possibility of forming of adjacency. 2000-05-10 13:35:49 +00:00
Pavel Machek 3e47419274 Inlined metric and mode into struct rip_interface to make reconfig
work.

reconfigure is conservative but should work.
2000-05-10 13:23:21 +00:00
Pavel Machek 30aa02d70d rip_reconfigure done right 2000-05-10 13:05:39 +00:00
Pavel Machek b8524e9be4 ipa_same does not exist. 2000-05-10 12:48:06 +00:00
Pavel Machek 0bff946c0a Nicer messages from rip. 2000-05-10 12:46:47 +00:00
Pavel Machek 6f3849774f Use ea_get_int instead of ea_find. 2000-05-10 12:38:05 +00:00
Ondrej Filip c7e46aae66 Destroying of neighbor moved from 'hello' to 'neighbor' and
improved.
2000-05-10 12:37:43 +00:00
Pavel Machek 7f5f44bb92 Reconfigure hook copied from bgp. 2000-05-10 12:32:45 +00:00
Pavel Machek 84a1305437 Send first udpate sooner. 2000-05-10 12:26:09 +00:00
Pavel Machek 14758d87c4 Only announce change to main routing table if it is better than current. 2000-05-10 12:23:06 +00:00
Ondrej Filip 353f326138 Better dumping. 2000-05-10 12:22:00 +00:00
Pavel Machek 5e50f0a028 Don't touch used memory. 2000-05-10 11:57:56 +00:00
Ondrej Filip e8bd039da8 Bugfix in ip_addr endianity. 2000-05-10 11:52:39 +00:00
Pavel Machek be3b6dc574 Killed unused variable. 2000-05-10 11:48:34 +00:00
Ondrej Filip 28950169e7 Bug in (B)DR election fixed. 2000-05-10 11:48:21 +00:00
Pavel Machek d9f89e0114 You can now say "mode multicast". 2000-05-10 11:40:30 +00:00
Ondrej Filip 65a9c57175 Change u32 to ip_addr in ext lsa. 2000-05-10 11:22:08 +00:00
Ondrej Filip aa1e082c67 Calculation of external routes. 2000-05-10 10:47:17 +00:00
Pavel Machek 4bfe4e8551 Fix segfaults by using new ea_get_int. 2000-05-10 06:56:42 +00:00
Ondrej Filip fe95ab6816 FIXME's removed by deleting them. :-) 2000-05-09 21:52:58 +00:00
Ondrej Filip 32fa4a5a46 Premature aging of self-originated LSA received in flooding. 2000-05-09 21:06:48 +00:00
Ondrej Filip 3b8b1bd037 Better dumping. 2000-05-09 19:38:34 +00:00
Ondrej Filip a3ae6246c2 Bugfix in lsrt slist adding. 2000-05-09 19:38:16 +00:00
Ondrej Filip b224ca32cf Flushing of old LSAs added. 2000-05-09 19:36:32 +00:00
Ondrej Filip 850fda2518 Backup seen is not called so often. 2000-05-09 18:35:57 +00:00
Ondrej Filip cd22a62b3c Don't send flushed LSAs. 2000-05-09 18:20:39 +00:00
Ondrej Filip 9669362f05 Many bugfixes. (I added one entry twice to slist.)
Debug cleanup.
Retransmiting of unacknolegded LSAs
2000-05-09 18:17:34 +00:00
Ondrej Filip 5f743d9697 Many bugfixes. Actually, how could this ever work? :-) 2000-05-09 13:56:47 +00:00
Ondrej Filip 5d608eba16 Bug fix in sending updates. 2000-05-09 12:31:38 +00:00
Ondrej Filip 0e1b949be7 Bugfix in testing of possibility of adjacency. 2000-05-09 12:18:41 +00:00
Ondrej Filip 432996f40f Better dumping. 2000-05-09 12:03:57 +00:00
Ondrej Filip 54ac9d2e03 Bugfix in hello. 2000-05-09 12:02:48 +00:00
Ondrej Filip 4057093fa4 Small cleanup. 2000-05-09 11:52:44 +00:00
Ondrej Filip 551d444382 Sorry, it didn't compile. :-( 2000-05-09 11:29:52 +00:00
Ondrej Filip b29c620f90 Another bugfix in neighbor state machine. 2000-05-09 11:27:31 +00:00
Ondrej Filip 279a3b76d1 Small bug in neighbor state machine. 2000-05-09 10:47:10 +00:00
Ondrej Filip fafe44b651 Just added declaration of AS Ext routes calculation. 2000-05-09 00:03:08 +00:00
Ondrej Filip 43e75f38e7 Do not stop lsrr_timer in FULL state. Use it for retransmition. 2000-05-08 23:46:31 +00:00
Ondrej Filip ed4a53c6a5 Some changes in debugging. 2000-05-08 22:50:37 +00:00
Ondrej Filip 9bacea4211 Fixed some FIXME's by deleting them. :-) 2000-05-08 22:49:58 +00:00
Ondrej Filip 8a3049f6f1 Useless '\n' in log() 2000-05-08 22:42:56 +00:00
Ondrej Filip eae4fcf253 Stopping RXMT timer when going to lower state than EXSTART. 2000-05-08 22:40:55 +00:00
Martin Mares c09d1e8df2 KEEPALIVE TIME ought to set keepalive time, not connect retry time :) 2000-05-08 22:32:17 +00:00
Ondrej Filip fc0ca2d8e1 Typo in debug. 2000-05-08 22:28:42 +00:00
Ondrej Filip a6fdf9c6ac Grrr, useless debug. 2000-05-08 22:27:25 +00:00
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
Martin Mares c2b28c9910 Real bucket lists. 2000-04-12 14:09:26 +00:00
Pavel Machek ac7a2145cc f_new_dynamic_attr gets third argument, type as filters know it. 2000-04-12 14:02:04 +00:00
Martin Mares 12d5677aa3 Define BGP_PATH. 2000-04-12 13:56:04 +00:00
Martin Mares 7750634946 Introduced `ARRAY_SIZE' macro to replace all the sizeof(a)/sizeof(*a) constructs. 2000-04-12 13:21:23 +00:00
Martin Mares ae8f558499 Implemented outgoing attribute cache. 2000-04-10 12:39:51 +00:00
Martin Mares 48e842cc98 Use neighbor cache to track direct route to the peer or multihop destination.
Calculate next_hop properly based on the local address we get from the
neighbor entry.
2000-04-10 11:21:40 +00:00
Martin Mares ef2c708dfa More BGP progress...
For Pavel: You can use bgp_path_prepend() for prepending AS numbers to AS paths.
2000-04-09 22:05:02 +00:00
Pavel Machek 3d0ea3a7c3 Fix of comment. 2000-04-07 09:02:17 +00:00
Ondrej Filip 2c971094eb LSA flooding done. 2000-04-05 00:51:25 +00:00
Ondrej Filip 10000b96a8 Small clean up. (Duplicate #defines.) 2000-04-04 22:27:19 +00:00
Ondrej Filip f1f7faceb4 "Bug in hashing" fixed. Ehm it was bug in lsrql node removing. 2000-04-04 22:22:08 +00:00
Ondrej Filip d8852b362c LSupdate processing improved. Now there is some bug in hashing. :-( 2000-04-04 15:55:55 +00:00
Ondrej Filip 921a93f217 Flooding work continues. 2000-04-04 00:32:17 +00:00
Ondrej Filip 8496b2e41a Minor change in area list. Now I use MJ's lists. 2000-04-03 22:31:07 +00:00
Ondrej Filip 394acced11 Work on lsupdates continues. Some checksum cleanup. 2000-04-02 20:41:33 +00:00
Ondrej Filip db9fb72769 lsa_cmp moved into lsalib.c 2000-04-02 19:04:23 +00:00
Martin Mares 10be74da20 Formatting of dynamic attributes (except for paths and communities which
will be added soon).
2000-04-01 10:21:11 +00:00
Martin Mares dad177d7e0 RIP: Set attribute class. 2000-04-01 10:20:12 +00:00
Martin Mares f880924990 BGP now handles incoming routes (IPv4 only). 2000-04-01 09:17:33 +00:00
Ondrej Filip 499cb346f6 LSA checksum works. But it's very uneficient on little endian systems. 2000-04-01 02:45:49 +00:00
Martin Mares ac4b4683ae Removal of useless includes continues... 2000-03-31 23:40:00 +00:00
Martin Mares a37410cbdd Use bsprintf() instead of sprintf(). 2000-03-31 23:33:03 +00:00
Martin Mares 221135d6bf Include "lib/string.h" instead of <string.h>. It should give us bzero()
and other non-portable functions on all systems.
2000-03-31 23:30:21 +00:00
Martin Mares c00d31befa Parsing of BGP attributes. 2000-03-31 23:21:37 +00:00
Ondrej Filip 65e55e9cca Checksum changes. Bug is still NOT fixed. :-( 2000-03-31 01:40:12 +00:00
Ondrej Filip 9f940976d1 Some bug fixes. LSA checksum is still bad. I'll fix it later. 2000-03-31 01:14:41 +00:00
Ondrej Filip f45fd3164b Sending of lspd as responce to lsreq done. 2000-03-31 00:21:41 +00:00
Ondrej Filip 14a7921c83 LSA structure changes. (Len added.) 2000-03-30 20:18:51 +00:00
Ondrej Filip de769e24c0 Skeleton structures and files added. 2000-03-30 20:00:42 +00:00
Ondrej Filip 95eb1dba3f Add hashing to link state request list. 2000-03-30 19:37:26 +00:00
Ondrej Filip 76915ec979 Minor changes. 2000-03-30 19:21:17 +00:00
Martin Mares 973399ae2c Basic analysis of UPDATE packets. 2000-03-30 18:44:23 +00:00
Martin Mares b552ecc4d7 Connection state machine works. 2000-03-30 17:39:48 +00:00
Ondrej Filip ce0603a6ed Better list manipulation. 2000-03-30 16:22:58 +00:00
Martin Mares 3fdbafb6f4 More BGP. This time it connects, but the state machine still isn't complete. 2000-03-30 10:44:20 +00:00
Ondrej Filip 6d2b32114f LSreq initial work. 2000-03-30 00:18:59 +00:00
Ondrej Filip 2560c8860e Slave bug fix. 2000-03-29 17:51:40 +00:00
Ondrej Filip 910e557b47 Many changes in dbdes sending & receiving. EXDONE caused. 2000-03-29 17:18:06 +00:00
Ondrej Filip 315648af8e RXMT timer handling bug fix. 2000-03-29 13:02:58 +00:00
Ondrej Filip 3fba209688 Some FIXME added. 2000-03-29 12:47:07 +00:00
Ondrej Filip 96501dfe5f Sending of DBdes bug fixed. 2000-03-29 12:45:37 +00:00
Ondrej Filip 04c6319a63 IMMS reverted to bits. Outgoing packets dumping added.
Cisco does not set inteface MTU. Hmm....
2000-03-29 12:32:25 +00:00
Pavel Machek 8d2e3eba92 Cross-protocol issues solved better 2000-03-29 08:58:06 +00:00
Ondrej Filip 963ea03d87 DBdes sending/receiving changes. 2000-03-29 00:34:28 +00:00
Pavel Machek d0031c5ee9 Use neigh_connected_to in rip, and behave more correctly
w.r.t. whotoldme and nexthop.
2000-03-27 12:21:11 +00:00
Pavel Machek 6480dd0880 I broke compilation. Sorry. 2000-03-26 21:31:57 +00:00
Pavel Machek 8c86f96fa6 Split horizont done right.
Locks done better.
2000-03-26 18:01:27 +00:00
Pavel Machek 9ee07ca53f FIXME was actually already resolved 2000-03-24 10:08:20 +00:00
Pavel Machek 772f489932 Minor change to make code more readable. 2000-03-23 12:08:40 +00:00
Pavel Machek ff8ed63285 Rip now tries to lock interface.
Fixed fatal errors which caused segfault at startup.

Fixed fatal errors in rip which caused it not to send more than first
update.
2000-03-22 14:26:03 +00:00
Martin Mares 72a6ef11fe Construction of BGP packets. 2000-03-21 15:53:50 +00:00
Martin Mares c01e37416d Started work on BGP. Wrote main part of the connection handling code. 2000-03-20 21:50:17 +00:00
Martin Mares 2638249d34 Bare skeleton of the BGP. 2000-03-19 22:09:07 +00:00