Commit graph

572 commits

Author SHA1 Message Date
Ondrej Filip 60e04f0413 Minor bugfix: Summary LSA for aggregated area was always propagated with
metric = 1. Now it's metric of most distant component.
2005-02-18 18:51:42 +00:00
Ondrej Filip 27a1e3ac35 Minor bugfixes in routing table calsulation. 2005-02-15 16:17:42 +00:00
Ondrej Filip 2eef9e887a Be more verbose in log. 2005-02-14 21:34:46 +00:00
Ondrej Filip b181f444a6 Small changes to reduce number of warnings. 2005-02-14 11:54:16 +00:00
Ondrej Filip 5d3f555234 Many bugfixes in routing table calculation and summary LSA origination. 2005-02-13 23:36:31 +00:00
Ondrej Filip 89ba9a1806 Bugfix in inter-area route calculation and summary LSA origination.
Bugfix of some debugging commands.
2005-02-12 22:22:18 +00:00
Ondrej Filip bae7c43ff3 Bugfix in password acceptance 2005-02-12 22:19:46 +00:00
Ondrej Filip 9912fa51c8 Bugfix - cost of interface can be larger than 0xffff 2005-02-12 22:18:48 +00:00
Ondrej Filip 4991756863 Dont check netmask field on PTP links. 2004-09-15 19:33:01 +00:00
Ondrej Filip 7715f9d9ed Bugfix in config.y 2004-08-10 17:47:32 +00:00
Ondrej Filip 56e2a4b776 Bugfix in OSPF - BIRD sometimes failed during rt calculation with VLINKs. 2004-08-05 18:06:30 +00:00
Ondrej Filip 8d94a524b6 Added handling of STUB bool. 2004-07-16 08:27:11 +00:00
Ondrej Filip 002ecc0638 Bugfix - bird needed double ';' after rfc1583compat. 2004-07-16 07:22:43 +00:00
Ondrej Filip b37bb5ce03 Minor bugfix - add interface routes. 2004-07-15 16:48:12 +00:00
Ondrej Filip 28e8d862b7 Minor bugfix in calculation of external routes. 2004-07-15 16:42:06 +00:00
Ondrej Filip 86c84d76b7 Huge OSPF database redesign. Since now, all LSAs of all areas
are in single database. This avoids duplication of external LSAs and
fixes bug in external LSA distribution.
2004-07-15 16:37:52 +00:00
Ondrej Filip 3b16080c97 Multiple OSPF areas can be attached.
Origination of summary LSA works.
Routing table calculation works.
Virtual links works.

Well, I hope, OSPF is fully compatible with RFC2328!!!!
2004-07-14 21:46:20 +00:00
Ondrej Filip a417ad13a1 Send hello just after interface is up.
This makes the adjacency forming faster.
Minor code clean up.
2004-07-13 23:42:14 +00:00
Ondrej Filip 897999c22a Send hello as soon as possible after the interface is up.
This helps to faster establish the adjacency.
2004-07-13 23:31:37 +00:00
Ondrej Filip 490767adfc Add more reasonable options to LSAs. (But it seems, that it's ignored.) 2004-07-13 22:10:14 +00:00
Ondrej Filip fe1489e6c1 Bugfix: Router was unable to advertise AS external routes. 2004-07-13 22:04:57 +00:00
Ondrej Filip 62eee82321 Default tick = 1. The today's CPU is fast enough. 2004-07-13 21:27:33 +00:00
Ondrej Filip 35fdf4b6a2 Don't inform us about every ospf_age() 2004-07-13 21:22:32 +00:00
Ondrej Filip bc956fcab6 MD5 authentication in OSPF works. :-) 2004-07-13 14:46:14 +00:00
Ondrej Filip 32d3228d86 Bugfix in simple authentification. 2004-07-13 13:52:54 +00:00
Ondrej Filip 12dd8dc877 Bugfix - nasty bug in router LSA origination - Router did not describe all interfaces. 2004-07-13 12:21:24 +00:00
Ondrej Filip 621ccdfe5a Bugfix - options bits were not included in LSAs
Bugfix - E bit was not unset on stub areas.
2004-07-13 11:58:50 +00:00
Ondrej Filip 9baece57d3 Syntax bugfix. 2004-07-08 16:56:49 +00:00
Ondrej Filip 69b27ed6fd Length calculation bugfix. 2004-07-01 15:01:44 +00:00
Ondrej Filip bc4ea680ce Hello reading bugfix. 2004-07-01 15:01:04 +00:00
Ondrej Filip ea357b8b6d Update of the documentation. (passwords and md5).
Option for md5 auth in config.
2004-06-26 22:52:39 +00:00
Ondrej Filip 3e2bd0f17a Md5 authentification added (unsested).
Packet receiving clean up.
2004-06-26 20:15:34 +00:00
Ondrej Filip 98ac61766d A lot of changes:
- metric is 3 byte long now
	- summary lsa originating
	- more OSPF areas possible
	- virtual links
	- better E1/E2 routes handling
	- some bug fixes..

I have to do:
	- md5 auth (last mandatory item from rfc2328)
	- !!!!DEBUG!!!!! (mainly virtual link system has probably a lot of bugs)
	- 2328 appendig E
2004-06-25 16:39:53 +00:00
Ondrej Filip b4d8a0c280 Some cisco routers send shorter ospf messages in larger packets.
Well it's strange, but, actually it's correct.
2004-06-16 23:01:49 +00:00
Ondrej Filip 1a61882d37 Better routing table calculation. We are ready to work with
multiple OSPF areas.
2004-06-11 09:36:50 +00:00
Ondrej Filip b1f7229ad7 Better adjacency building, some minor bugfixes. 2004-06-11 09:34:48 +00:00
Ondrej Filip 7df86c25fc Better checking of configuration. 2004-06-09 12:39:49 +00:00
Ondrej Filip e02652a7d2 Bugfix in RT calculation. 2004-06-07 16:42:48 +00:00
Ondrej Filip 541cbe9763 It was too verbose. 2004-06-07 12:52:32 +00:00
Ondrej Filip 5e3436d20f Cleanup in packet.c. Deleted unused parameters. 2004-06-06 19:53:52 +00:00
Ondrej Filip d5d9693ce9 Deleted unused parameters. 2004-06-06 18:45:08 +00:00
Ondrej Filip cd09226078 Be sure, that ospf_area is aged before routing table calculation. 2004-06-06 17:03:56 +00:00
Ondrej Filip 933bfdde2a Keep al lSAs invalidated. 2004-06-06 16:14:57 +00:00
Ondrej Filip b8f17cf192 Small cleanup, indentation and preparation for multiple areas routing table calculation. 2004-06-06 16:00:09 +00:00
Ondrej Filip d631698ec8 Indentation. 2004-06-06 14:27:11 +00:00
Ondrej Filip d8d553cadf This warning is stupid. 2004-06-06 14:25:55 +00:00
Ondrej Filip 2e10a170fe Indentation. 2004-06-06 09:37:54 +00:00
Ondrej Filip 66261211a9 Struct area_net changed. 2004-06-06 09:13:37 +00:00
Ondrej Filip b9ed99f738 Cleanup in iface.c 2004-06-06 08:55:33 +00:00
Ondrej Filip a5918961f3 Be more verbose in troubles. 2004-06-06 08:12:42 +00:00
Ondrej Filip 66004c91a8 Set size of the buffers. (Thanx MJ.) 2004-06-05 15:02:52 +00:00
Martin Mares 9831e5916f Staticized lots of local functions. 2004-06-05 09:58:23 +00:00
Martin Mares 598b984d1f One less unused variable. 2004-06-05 09:58:06 +00:00
Martin Mares 189dab54a2 defaut' should be default'. 2004-06-05 09:29:38 +00:00
Martin Mares 1512813e95 ... and a whole bunch of unused parameters and variables in ospf. 2004-06-05 09:28:17 +00:00
Martin Mares c33d4cad9f Moved the tests for socket existence here.
BTW, where do you exactly set the new buffer sizes?
2004-06-05 08:59:17 +00:00
Ondrej Filip c6bdc78bef Be more verbose. 2004-06-04 21:19:47 +00:00
Ondrej Filip 6f3203fabf cleanup in lsupd.c, indenting, "struct proto" removed... 2004-06-04 21:05:43 +00:00
Ondrej Filip 9b7de4c4d1 'struct proto' removed
Finally, I found the bug reported by Andreas Steinmetz. FIXED.
2004-06-04 20:41:02 +00:00
Ondrej Filip 54467ed46b Useless logs removed. 2004-06-04 19:53:36 +00:00
Ondrej Filip 551e30886d Bugfix in last patch. 2004-06-04 19:21:19 +00:00
Ondrej Filip e7ef86a58c OSPF is ready for changing MTU. 2004-06-04 18:51:29 +00:00
Ondrej Filip f158bb710b no comment 2004-06-04 18:24:15 +00:00
Ondrej Filip 12bed559ff dbdes indent an minor changes. 2004-06-04 17:49:25 +00:00
Ondrej Filip 874654076a better log() usage. 2004-06-04 17:31:03 +00:00
Ondrej Filip 27f49a2c3c lsreq.c indented and small 'struct proto' changes. 2004-06-04 17:28:41 +00:00
Ondrej Filip 77539c4471 hello.* reindented, code cleanup. 2004-06-04 17:12:27 +00:00
Ondrej Filip 8e15e048f2 Deleted useles "struct proto" sending. 2004-06-04 17:05:24 +00:00
Ondrej Filip 7a03e29d5c Better log() usage. 2004-06-04 16:56:54 +00:00
Ondrej Filip fb9bf6888c Indented. No other change. 2004-06-04 16:55:53 +00:00
Ondrej Filip c76ba51a5f lsack.c cleaned. Better names for functions and
DIRECT acks can be sent in one packet now.
2004-06-04 16:30:04 +00:00
Ondrej Filip 28de5133ec ackd_timer_hook moded to neighbor.c 2004-06-04 15:45:35 +00:00
Ondrej Filip d03e8ce00b Fatal bug found. Sometimes BIRD did not originate router LSA. FIXED. :-) 2004-06-04 15:26:46 +00:00
Ondrej Filip b90f9c526e Initialize iterator on the right place. 2004-06-04 14:23:58 +00:00
Ondrej Filip 18b40a4072 This can happen now. 2004-06-04 14:23:21 +00:00
Ondrej Filip f9fdabe4f6 Small reversing of previous patch. 2004-06-04 14:22:30 +00:00
Ondrej Filip 3df1e80464 Don't repeat "Sheduling rt calc....." 2004-06-04 14:21:08 +00:00
Ondrej Filip d6c28f3ada Code and comments cleanup. 2004-06-04 14:03:30 +00:00
Ondrej Filip 39e517d47c hello.c and hello.h cleaned up. No design changes. 2004-06-04 12:53:10 +00:00
Ondrej Filip 591656cdd5 Added source addr for multicast socket. 2004-06-03 08:18:49 +00:00
Ondrej Filip 9b13345889 Hotfix for router's parent without nexthop.
It will probably work perfect, but I need to eliminate such situation.
2004-06-02 09:14:03 +00:00
Ondrej Filip f9625e9aca Bugfix in external routes calculation. 2004-06-01 14:06:25 +00:00
Ondrej Filip e8bf6c0766 Easier cleanup of an interface. 2004-06-01 13:44:53 +00:00
Ondrej Filip c9f6cf8a05 Don't free socket's resources. 2004-06-01 13:29:08 +00:00
Ondrej Filip 035f6acbfe Patch from Andreas Steinmetz <ast@domdv.de> 2004-06-01 13:12:10 +00:00
Martin Mares bb68ad2fd3 Documented the pxlen parameter. 2004-05-31 22:22:21 +00:00
Martin Mares d83faf8dc4 static declarations don't belong to includes. (And most of them were
redundant anyway.)
2004-05-31 20:53:22 +00:00
Martin Mares 0077aab4f9 The code was broken for external /29 to /32 routes. Assuming that you
have one machine publishing a route to 10.1.1.3/32 and another one
publishing a route to 10.1.1.4/32. If the first machine went down the
route to 10.1.1.4/32 was wrongly killed by the old code, leading either
to missing routes or worse to bug()s like "Router parent does not have
next hop" or just segfaults. The patch fixes this but in the long term a
redesign is required here. Note that the patch doesn't worse the
situation, instead it prevents the problems stated. The redesign is
required to handle multiple routes to small subnets properly.

(by Andreas)

Feela, I think that this is at least a good temporary fix, but it's
of course up to you to decide.
2004-05-31 18:16:42 +00:00
Martin Mares 4ef3dccfa1 The OSPF authentication type was sent in host byte order instead of of
network byte order thus breaking interoperability with other routing
daemons on litte endian machines. The patch fixes this but note that
this breaks compatability with older bird installations using OSPF and
password authentication

(Andreas)
2004-05-31 18:13:14 +00:00
Ondrej Filip 6f18235aad Useless include deleted. 2004-05-31 16:42:12 +00:00
Ondrej Filip 781aa475aa Minor bug fix in neighbor state machine. 2004-05-31 13:22:49 +00:00
Ondrej Filip de259a41e3 Minor bug in configuration. 2004-05-31 10:38:44 +00:00
Ondrej Filip caeb02ea19 Bug in DBDES receiving fixed. 2004-05-19 12:30:58 +00:00
Ondrej Filip 37299f1e44 OSPF was not able to be built stand-alone. 2003-09-30 17:05:55 +00:00
Ondrej Filip 00bd27a1cc Endianity problem fixed. Thanx to Srs Jzsef 2003-09-14 13:41:24 +00:00
Ondrej Filip 35a86ceb40 This prevents infinite loop when bird has more that 60 neighbors. Thanks to Rani Assaf 2003-09-03 17:31:23 +00:00
Ondrej Filip c11007bc42 Endian-related bug fixes sent by Krzysztof Szuster <kszuster@polbox.com> 2003-08-26 10:41:02 +00:00
Ondrej Filip 1d1a3c1c2a Minor OSPF changes for faster startup. 2003-08-23 10:47:46 +00:00
Ondrej Filip baa5dd6ccc Many spelling mistakes fixed.
Thanks you Harry Moyes.
2003-08-23 10:42:41 +00:00
Martin Mares 47f18ac39a ABS should be a macro. 2002-11-13 08:47:19 +00:00
Ondrej Filip 4ca0d0847e Small typo fixed. 2002-04-03 15:41:05 +00:00
Ondrej Filip e59e310e64 Age LSA DB after LSA origination and before routing table calculation. 2002-03-04 15:54:39 +00:00
Ondrej Filip 025b0e856a New trace added. 2002-03-04 15:52:40 +00:00
Ondrej Filip b78696282d Bugfix in router importation. 2001-12-07 17:34:09 +00:00
Ondrej Filip 8e32493c56 Removed some useless (hope!) code in next hop calculation. 2001-08-21 17:00:15 +00:00
Ondrej Filip 68db89a2ce Finally, next hop problem fixed. 2001-08-21 16:44:57 +00:00
Ondrej Filip 37da55168c Useless trace. 2001-08-21 15:03:42 +00:00
Ondrej Filip e8ab168030 Hope, bug in next hop calculation for stub routes fixed. 2001-08-21 15:00:29 +00:00
Martin Mares e43ae6330e Fix %<something>I format strings. 2001-08-19 11:15:24 +00:00
Ondrej Filip c926eee724 Area networks added into configuration. 2001-08-12 00:04:42 +00:00
Ondrej Filip b2bdb40656 Changed definition of stub area. 2001-08-11 16:22:29 +00:00
Ondrej Filip 85062e8a60 Bugfix in B-bit setting in router LSA. 2001-08-11 14:40:51 +00:00
Ondrej Filip 78e2c6ccf1 I will not originate the same lsa before MINLSINTERVAL. 2001-08-11 14:01:54 +00:00
Ondrej Filip 24c00cb119 Install route into main routing table just if it's necessary. 2001-06-12 21:10:30 +00:00
Ondrej Filip 87c450dffc Added comments. 2001-06-09 14:56:01 +00:00
Ondrej Filip e9d3c3aaea Bug in next-hop calculation fixed. (For dual connected neighbors.) 2001-06-09 14:55:10 +00:00
Ondrej Filip ea31425a61 Patch from David Rohleder <davro@ics.muni.cz> thanx. 2001-04-09 19:15:03 +00:00
Ondrej Filip 32749f493f Hmm, nasty bug, LSUPD was not well flooded via PTP interfaces. :-( 2000-12-14 01:04:51 +00:00
Ondrej Filip 501c5bb03f Small bugfix in ext routes calculation. 2000-11-21 23:47:51 +00:00
Ondrej Filip 52fa3e3869 Fixed many bugs in rt calculation and interface adding. Now it seems to be
OK, I'm going to advertise 1.0.4.
2000-09-04 21:21:34 +00:00
Ondrej Filip b02e40111e I allocate struct ifa before unlocking. So route exported to OSPF are correct.
I work also with interfaces that have some problems with socket opening.
I declare them as stub.
2000-09-04 19:42:17 +00:00
Ondrej Filip fdb1998202 Serious bug in ext lsa origination found. Going for 1.0.4. 2000-09-03 22:18:40 +00:00
Ondrej Filip 1e972b5524 Log some unusual situation. 2000-09-03 16:16:33 +00:00
Ondrej Filip e3bc10fdc4 Added stub interface. (Interface which is propagated to OSPF but
it does not sends nor listens packets.)

I added some new options, please look at it and look into doc if it's OK.
2000-09-02 08:54:40 +00:00
Ondrej Filip 5ddec4e6cf Reconfigure poll interval. 2000-09-02 07:58:05 +00:00
Ondrej Filip 7cedbf217e Reconfiguration for new options. 2000-09-02 00:15:07 +00:00
Ondrej Filip a190e7200b Added hellos on NBMA networks. (I don't violate RFC now.) 2000-09-02 00:03:36 +00:00
Ondrej Filip 5a063efeea Bugfix in ext lsa importing. 2000-08-28 13:51:13 +00:00
Ondrej Filip 9e2920824e Typo. 2000-08-18 16:47:27 +00:00
Ondrej Filip f321a61f77 Fixed bug in nex hop calculation of external routes. 2000-08-18 16:44:37 +00:00
Ondrej Filip 88aa2af7ef Just formatting. 2000-08-18 16:36:54 +00:00
Ondrej Filip 28a6e1aa0e Stupid bug in next hop calculation of external routes. 2000-08-17 19:42:52 +00:00
Ondrej Filip 1eec760778 Typo in rte_better. 2000-08-16 20:18:19 +00:00
Ondrej Filip 059fc1e94a My calculation of external routes violated rfc. :-( 2000-08-16 19:37:04 +00:00
Ondrej Filip d6a7e2fb85 Bug in rte_better. 2000-08-16 19:03:06 +00:00
Ondrej Filip 972fdb4532 Routing table calculation clean up. 2000-06-19 15:12:50 +00:00
Ondrej Filip 365211d588 Bugfix in logging. 2000-06-13 19:03:41 +00:00
Martin Mares 0e376168c5 Shut up an uninitialized variable warning. 2000-06-09 06:54:01 +00:00
Ondrej Filip a012cbb16f Nasty bug in LSA refreshing. I didn't refesh my own copy! :-( 2000-06-08 19:16:21 +00:00
Ondrej Filip 135857e577 Acknoledge your own premature aged LSA. 2000-06-08 19:14:08 +00:00
Ondrej Filip 054a352475 Don't send dbdes before rtlsa origination. 2000-06-08 19:02:31 +00:00
Martin Mares 6567e6cf50 Missing parameters... 2000-06-08 12:42:34 +00:00
Martin Mares 725270cb1d Fixes for the programmer's manual. 2000-06-08 12:37:21 +00:00
Ondrej Filip 8d56febe64 HASH_DEF_ORDER back to 6. 2000-06-08 12:04:57 +00:00
Martin Mares ec423cc725 Updated CLI helps. 2000-06-08 10:25:02 +00:00
Ondrej Filip 099c017fca Still some endianity bugs. 2000-06-08 02:28:04 +00:00
Ondrej Filip 59ba334296 I forgot some endianity operations. 2000-06-08 02:04:45 +00:00
Ondrej Filip 423230f2f1 Ehm, my (B)DR election was based on router id, but RFC says ip! 2000-06-08 01:49:19 +00:00
Ondrej Filip 17e29574bc Better algoritmus of LSA aging. 2000-06-07 23:48:33 +00:00
Ondrej Filip 25a3f3da7a I mark all LSA as in distance INFINITY in process of aging.
I don't have to WALK twice through it.
2000-06-07 23:34:43 +00:00