Commit graph

1076 commits

Author SHA1 Message Date
Ondrej Zajicek e3c460bc90 Fixes some past config grammar update that caused password related regression. 2009-01-16 12:08:07 +01:00
Ondrej Zajicek 3b108f18e8 One null-pointer dereference bugfix hidden in whitespace changes 2009-01-16 10:58:52 +01:00
Ondrej Zajicek 0dd7ccc766 Fix typo. 2009-01-13 19:25:27 +01:00
Ondrej Zajicek 0844b65d13 Fix OSPF protocol error recovery behavior.
When OSPF neighbor state drops down to EXSTART,
clear LSA request and retransmit lists, as specified
by RFC. I hope that this will prevent oscillations
between EXSTART and LOADING states, which sometimes
happened.

It also contains related fix from Yury Shevchuk that
properly resets DB summary list iterator.
2009-01-13 19:15:49 +01:00
Ondrej Zajicek f15cb99c79 Add check detecting packet overwrite in TX buffer. 2009-01-12 23:42:51 +01:00
Ondrej Zajicek 23d6702952 Some fixes and update of OSPF debug messages 2009-01-11 12:14:27 +01:00
Ondrej Zajicek 0e9617e400 Move check for NULL before usage of variable. 2009-01-11 10:51:54 +01:00
Ondrej Zajicek f20907adf6 Fixes bug in OSPF
Checksum was not recalculated when LSA was changed and
packets with bad checksum were sent.
2009-01-11 10:47:41 +01:00
Ondrej Zajicek 165a622727 Adds support for fallback to capabilityless BGP connect
When capability related error is received, next connect will be
without capabilities. Also cease error subcodes descriptions
(according to [RFC4486]) are added.
2008-12-24 17:24:41 +01:00
Ondrej Zajicek 591211557f Fixes bug related to reconfiguration of BGP.
BGP keeps its copy of configuration ptr and didn't update it during
reconfiguration. But old configuration is freed during reconfiguration.
That leads to unnecessary reset of BGP connection during reconfiguration
(old conf is corrupted and therefore different) and possibly other strange
behavior.
2008-12-24 12:18:10 +01:00
Ondrej Zajicek 11b32d9117 Major changes to BGP
Fixes two race conditions causing crash of Bird, several unhandled
cases during BGP initialization, and some other bugs. Also changes
handling of startup delay to be more useful and implement
reporting of last error in 'show protocols' command.
2008-12-19 01:34:39 +01:00
Ondrej Zajicek 3f670371cf OSPF routes appeared with random value of ospf_tag attribute.
This patch fixes it.
2008-11-14 21:13:56 +01:00
Ondrej Zajicek aebe06b40c Proper format functions for ORIGINATOR_ID, CLUSTER_LIST 2008-11-08 23:33:22 +01:00
Ondrej Zajicek b21f68b4cd Fix bugs in OSPF MD5 authentication. First bug is that default
values for MD5 password ID changed during reconfigure, Second
bug is that BIRD chooses password in first-fit manner, but RFC
says that it should use the one with the latest generate-from.

It also modifies the syntax for multiple passwords.
Now it is possible to just add more 'password' statements
to the interface section and it is not needed to use
'passwords' section. Old syntax can be used too.
2008-11-08 17:24:23 +01:00
Ondrej Zajicek fd91ae3325 Fix problem with local time changes. 2008-11-05 22:36:49 +01:00
Ondrej Zajicek 1389f3699f Fixes bugs in IPv6 code caused by recent commits. 2008-11-05 21:39:04 +01:00
Ondrej Zajicek a39b165e45 Multihop BGP was completely broken, because listening socket has always
ttl 1.
2008-11-01 16:58:40 +01:00
Ondrej Zajicek a92fe60717 Implementation of route server. 2008-11-01 12:55:43 +01:00
Ondrej Zajicek e16466b379 Fix race condition that breaks BGP connections after reconfigure.
RFC says that only connections in OpenConfirm and Established state
should participate in connection collision detection.

The current implementation leads to race condition when both sides
are trying to connect at the almost same time, then both sides
receive OPEN message by different connections at the almost same
time and close the other connection. Both connections are
closed and the both sides end in  start/idle or start/active
state.
2008-10-29 14:16:34 +01:00
Ondrej Zajicek f0ad56f441 Fixes some sloppiness of commit a3b70dc499. 2008-10-28 16:10:42 +01:00
Ondrej Zajicek a98fbf0f12 Merge branch 'dev' into out 2008-10-27 00:20:22 +01:00
Ondrej Zajicek a3b70dc499 Two new informative CLI commands for OSPF.
Two new CLI commands for OSPF giving nice informative (and still machine
parsable) representation of OSPF network graph (based on datas from the
LSA database).

The first command (show ospf topology) shows routers, networks and stub
networks, The second command (show ospf state) shows also external
routes and area-external networks and routers propagated by given area
boundary router.
2008-10-27 00:03:30 +01:00
Ondrej Zajicek 52586ccdf1 Missing newline. 2008-10-26 23:53:05 +01:00
Ondrej Zajicek a97122a3ca Bugfix in LSA origination for PTP OSPF links.
The code generating LSAs for PTP OSPF links is buggy. The old behavior
is that it generates PTP link if there is a full/ptp neighbor and stub
link if there isn't. According to RFC 2328, the correct behavior is to
generate stub link in both cases (in the first case together with PTP
link).

And because of buggy detection of unnumbered networks, for numbered
networks the code creates stub links with 0.0.0.0/32.
2008-10-26 23:43:13 +01:00
Ondrej Zajicek b6bf284a90 Bugfixes in MULIT_EXIT_DISC attribute handling.
- Old MED handling was completely different from behavior
   specified in RFCs - for example they havn't been propagated
   to neighboring areas.

 - Update tie-breaking according to RFC 4271.

 - Change default value for 'default bgp_med' configuration
   option according to RFC 4271.
2008-10-26 22:59:21 +01:00
Ondrej Zajicek 4819c3e17a Bugfix in LOCAL_PREF attribute handling. 2008-10-26 22:54:23 +01:00
Ondrej Zajicek ba5ed6f3e4 Implementation of an option for disabling AS4 support per BGP instance. 2008-10-26 22:48:02 +01:00
Ondrej Zajicek 4847a894bf Implementation of route reflection for BGP 2008-10-26 22:45:09 +01:00
Ondrej Zajicek d51aa28190 Implementation of MD5 authentication of BGP sessions. 2008-10-26 22:42:39 +01:00
Ondrej Zajicek 11cb620266 Implementation of 4B ASN support for BGP 2008-10-26 22:36:08 +01:00
Ondrej Filip 226cb2bc3f Expand ospf dump information. 2008-08-25 12:51:06 +00:00
Ondrej Filip 73e53eb555 Endianity problem in debug message fix. 2008-08-25 12:00:55 +00:00
Ondrej Filip 85ae398a61 The source address configuration in BGP added. 2008-08-24 23:20:46 +00:00
Ondrej Filip f39e3bfdbf Small bugfix in tracing. 2005-03-15 23:42:41 +00:00
Ondrej Filip 94c42054ea Added new parametr 'rx buffer <num>'. BIRD is able to receive
very large packets (if configured).
2005-03-15 22:06:36 +00:00
Ondrej Filip e6ea2e375e Maximal packet size in virtual links is 576. 2005-03-15 20:51:33 +00:00
Ondrej Filip e300066d5f OSPF can accept larger packets than MTU. 2005-03-14 11:24:56 +00:00
Ondrej Filip 427e59939b Look for large packets. 2005-03-14 11:07:10 +00:00
Ondrej Filip a2d5b405d4 Bugfix in external routes calculation. 2005-03-14 10:59:52 +00:00
Ondrej Filip 39fc85b4c6 Unused code deleted. 2005-02-20 19:03:34 +00:00
Ondrej Filip 63ca37f313 Cleanup - all unused variables deleted. 2005-02-20 18:56:06 +00:00
Ondrej Filip 52d61a8498 Intelligent reconfiguration should work again. 2005-02-20 16:54:09 +00:00
Ondrej Filip dafaef9ba9 Originate default route into stub areas. 2005-02-20 16:53:06 +00:00
Ondrej Filip d8c7d9e884 Since now I can also use 'dead interval', not just 'dead counter'. 2005-02-20 04:27:56 +00:00
Ondrej Filip 7de7470a2a Bugfix - count courrectly next hop on single hop virtual link. 2005-02-20 03:37:47 +00:00
Ondrej Filip 6eb4b73fe8 Time of neighbor's dead was not shown correctly. 2005-02-20 03:30:44 +00:00
Ondrej Filip 5506c82ce6 Bugfix in previous bugfix. 2005-02-18 19:36:32 +00:00
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 8ffc753441 Minor changes to keep gcc happy. 2005-02-15 06:32:31 +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 c6dce04bed Bugfix. 2004-09-08 16:04:02 +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 004cf4fc0c Minor bugfix to compile bird in IPv6. 2004-07-15 17:28:13 +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 16c2d48d8f Bugfix - RIP now updates routes with worse metric. 2004-07-13 20:53:56 +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 5236fb03af Password management redesigned (untested). 2004-06-26 20:11:14 +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 5ed68e46d7 Small typo changes. 2004-06-23 23:59:48 +00:00
Ondrej Filip 973cf09c3b Hotfix to problem with metric change reported by Luca. 2004-06-23 21:36:55 +00:00
Ondrej Filip 3fe5f89907 P->magic used just in LOCAL_DEBUG mode 2004-06-23 21:34:26 +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 c91fc9b606 ... and in rip (there are even unused functions!). 2004-06-05 09:27:49 +00:00
Martin Mares 662faa4afc ... in pipe. 2004-06-05 09:27:35 +00:00
Martin Mares e21423bab8 ... in BGP. 2004-06-05 09:27: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
Ondrej Filip 7fdd338c36 ALIGN -> BIRD_ALIGN 2004-06-01 10:28:25 +00:00
Martin Mares bb68ad2fd3 Documented the pxlen parameter. 2004-05-31 22:22:21 +00:00
Martin Mares 38a608c55a Rewritten the I/O loop. All socket operations are now safe, meaning that
you can delete the socket from anywhere in the hooks and nothing should break.
Also, the receive/transmit buffers are now regular xmalloc()'ed buffers,
not separate resources which would need shuffling around between pools.

sk_close() is gone, use rfree() instead.
2004-05-31 21:48:19 +00:00
Martin Mares 6a57bb3110 Killed a couple of unused variables.
We really should compile with warnings enabled.
2004-05-31 20:57:38 +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 0757bcb728 One space more. 2004-05-31 20:35:19 +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
Martin Mares 3cb96cd343 The initial sequence number for RIP md5 authentication was always zero.
Bad as when bird e.g. was running for two weeks and then restarted it
would take another two weeks until the peers of this router would accept
data again from this router, as the sequence number would be too low.
Changed to use the the current system time as the starting sequence
number which is a more sane start value.

(by Andreas, cleaned up by me)
2004-05-31 18:11:16 +00:00
Martin Mares 4a02013767 Make RIP nolisten mode actually work. The socket is required for
sending, the received data has to be discarded instead.

(patch by Andreas Steinmetz modified by me)
2004-05-31 17:42:38 +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
Martin Mares 502ded5215 Fix reporting of RIP socket errors. Thanks to Eric Leblond for the patch. 2003-12-06 16:41:11 +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 8cf76fa853 Bug fixes to authentication code by Eric Leblond <eleblond@init-sys.com>. 2003-04-06 18:38:01 +00:00
Martin Mares 6ea8ca1469 Updated a comment. 2003-02-23 10:22:04 +00:00
Martin Mares 11d4474c17 Better selection of link-local NLRI addresses, at least for our own
address. Need to do it better for the other neighbors -- the current
solution works only if they use the standard 64+64 global addresses
and the interface identifier in lower 64 bits is the same as for the
link-scope addresses.
2003-02-22 22:47:45 +00:00
Martin Mares 8c92bf6a0d Temporary fix for BGP protocol capability announcement for IPv6 mode. 2003-02-22 10:40:35 +00:00
Martin Mares 60a72ed49b Fixed length check miscalculation in IPv6 receive path. 2003-02-22 10:25:22 +00:00
Martin Mares 47f18ac39a ABS should be a macro. 2002-11-13 08:47:19 +00:00
Martin Mares 7d875e094b Added missing includes. 2002-11-13 08:47:06 +00:00
Martin Mares de10a974f2 Added missing semicolons. 2002-11-13 08:46:12 +00:00
Pavel Machek 19bd5c8e2c Password does not need to be null-terminated, do not print garbage in
such case. Thanks to silvio@big.net.
2002-09-21 13:57:48 +00:00
Ondrej Filip 4ca0d0847e Small typo fixed. 2002-04-03 15:41:05 +00:00
Martin Mares 53a50af504 Applied Pavel's fix for broadcast/multicast mode. 2002-03-10 12:32:12 +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
Pavel Machek ad3907559c RIP bugfix 2000-06-21 19:40:46 +00:00
Martin Mares bcbdcbb6ae Don't accept incoming connections when the neighbor is not up. 2000-06-20 07:49:08 +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
Ondrej Filip 1186369bbd Doc. 2000-06-07 23:23:37 +00:00
Ondrej Filip 37c3e558ab Simple explanation, how LSA are kept in database. 2000-06-07 23:05:32 +00:00
Ondrej Filip 87f0d22ef8 Minor change. 2000-06-07 22:57:59 +00:00
Ondrej Filip c2553b1b3e Minor changes. 2000-06-07 22:56:52 +00:00
Ondrej Filip eee9cefd8c Doc 2000-06-07 22:53:51 +00:00
Ondrej Filip e9ab0b4212 Doc in lsalib.c + related minor changes. 2000-06-07 22:31:47 +00:00
Ondrej Filip d5e4b51865 Doc 2000-06-07 22:10:46 +00:00
Ondrej Filip 351feeb514 Doc. 2000-06-07 21:56:32 +00:00
Ondrej Filip b4af36e0d8 Removed some FIXMEs simply deleting them. 2000-06-07 21:50:16 +00:00
Ondrej Filip 7ab3ff6a28 Doc in neighbor.c and some tiny changes related to. 2000-06-07 21:46:22 +00:00
Ondrej Filip cadbb827f9 A copyright change. 2000-06-07 21:12:00 +00:00
Ondrej Filip 6f58dc64c9 Doc 2000-06-07 20:50:08 +00:00
Ondrej Filip 89755a8623 Introdution into OSPF. 2000-06-07 20:30:27 +00:00
Pavel Machek 07f29765a5 RIPv6 now works. 2000-06-07 14:06:37 +00:00
Pavel Machek 18b4d6bf27 rip ipv6 bugfix 2000-06-07 13:58:49 +00:00
Ondrej Filip fa6c2405e2 Now I can change cost of interface without OSPF restart. 2000-06-07 13:46:13 +00:00
Martin Mares 58f7d004fd Fixes to the progdoc. 2000-06-07 13:25:53 +00:00
Ondrej Filip 38203d789a Originate rt lsa before sending first dbdes. 2000-06-07 13:19:48 +00:00
Martin Mares 2e9b24211a Spelling fixes to progdoc. 2000-06-07 12:29:08 +00:00
Martin Mares 1ae494a7e1 Avoid SEGV's in tracing. 2000-06-07 11:55:36 +00:00
Ondrej Filip 8cd5c52fcb Removed useless trace. 2000-06-07 01:19:16 +00:00
Ondrej Filip 3df89cefc1 #define SIZE_OF_IP_HEADER 2000-06-07 01:18:36 +00:00
Ondrej Filip bd457b8d21 Some minor changes:
Typo: transit delay!=transmit delay
Zero checks etc.
2000-06-07 01:03:53 +00:00
Ondrej Filip edc34dc912 Reconfiguration hook.
It will survive many timer and constat changes.
2000-06-07 00:56:11 +00:00
Ondrej Filip a63a9ce609 Better dumping neighbors' states on PTP interface. 2000-06-06 12:50:02 +00:00
Ondrej Filip 41ad16e2d5 Added IP protocols. 2000-06-06 11:50:48 +00:00
Ondrej Filip ee4880c82f Some '\n' deleted. 2000-06-06 02:54:41 +00:00
Ondrej Filip 064b1d8932 Tracing. 2000-06-06 02:50:49 +00:00
Ondrej Filip bd37f45c10 Deleted some debug() 2000-06-06 02:43:32 +00:00
Ondrej Filip abcbfd0400 Tracing. 2000-06-06 02:34:57 +00:00
Ondrej Filip 531a48d8c5 Tracing in LS ack. 2000-06-06 02:32:14 +00:00
Ondrej Filip 992705f65a Tracing in topology 2000-06-06 02:27:08 +00:00
Ondrej Filip d3995c498d Tracing in LSUPD. 2000-06-06 02:16:39 +00:00
Ondrej Filip f14032efdd First part of tracing. 2000-06-06 02:09:58 +00:00
Ondrej Filip 51cff78b25 Allocate OSPF areas before interfaces. 2000-06-06 01:46:32 +00:00
Ondrej Filip c1824c4d4c Simple autentication added. 2000-06-06 01:23:03 +00:00
Ondrej Filip fef1badfcf All die() renamed to bug(). 2000-06-06 01:00:34 +00:00
Ondrej Filip 80787d418b Dummy reconfigure added. 2000-06-06 00:52:35 +00:00
Ondrej Filip f8f1e1f110 Interface locks added. 2000-06-06 00:46:00 +00:00
Ondrej Filip b131e163c2 Some useles variable deleted. 2000-06-06 00:16:31 +00:00
Ondrej Filip eb436e16fd NBMA networks seems to work, but this should be better. :-) 2000-06-06 00:08:27 +00:00
Ondrej Filip e5b5d18c1c NBMA networks should work now. 2000-06-05 23:44:26 +00:00
Ondrej Filip 3b580a23ad Bugfix in NET LSA flushing.
Configuration now works! :-)
Better "show ospf"
Some minor bugfixes.
2000-06-05 20:57:53 +00:00
Ondrej Filip 4bb9ce56bb Reset inactim timer if you receive any packet from neighbor. 2000-06-05 19:45:06 +00:00
Ondrej Filip 496c819f26 Removed some FIXMEs by deleting them. 2000-06-05 19:35:48 +00:00
Ondrej Filip 3585d400e0 Don't info about DR and BDR on non-MA networks. 2000-06-05 19:31:55 +00:00
Ondrej Filip fdb0c540a8 PTP link in RTLSA was not announced correctly. 2000-06-05 19:12:22 +00:00
Martin Mares 8441f17925 Unless a filter specifies otherwise, all external routes have type 2
metric 10000.
2000-06-05 18:40:25 +00:00
Martin Mares f8032bbdb1 Simplified the grammar and fixed several minor bugs (e.g., `INTERFACE "eth0" };'
was a valid entry).
2000-06-05 18:32:51 +00:00
Ondrej Filip 44fc1888cf First calculate checksum and then send refreshed LSA! 2000-06-05 18:09:49 +00:00
Ondrej Filip aba5e89f93 Better checksum checking. 2000-06-05 18:09:15 +00:00
Pavel Machek 4c5f93d76b Better documentation. There are functions whose description is good when
reading source but whose documentation does not belong to progdocs.
2000-06-05 17:13:36 +00:00
Pavel Machek 8798c81176 Docs updates:
make prog.dvi

do not overflow in .dvi

include filter documentation in the system
2000-06-05 16:36:16 +00:00
Ondrej Filip eb2c99a132 Yet another change, now flushing of net lsa seems to be perfect. :-) 2000-06-05 16:32:29 +00:00
Ondrej Filip 2a5d7caa95 I calculated next hop of parent instead of actual LSA. :-( 2000-06-05 16:13:50 +00:00
Ondrej Filip 07b7100292 Don;t send packet over downed interface. 2000-06-05 15:44:11 +00:00
Pavel Machek 8b79c4ccd5 Add safety check. 2000-06-05 15:41:44 +00:00
Pavel Machek b093c328f5 Updates to both programmers and users doc 2000-06-05 12:52:57 +00:00
Ondrej Filip ac272c0067 Bug in LSA origination. 2000-06-05 05:06:53 +00:00
Ondrej Filip dc2548d2cc Premature age LSA if you're NOT dr. 2000-06-05 05:06:22 +00:00
Ondrej Filip 88048fb3c9 Small patch to better hash type=2 LSAs. 2000-06-05 03:46:19 +00:00
Ondrej Filip 273fd2c164 Many bugfixes (I don't remember all of them):
Added link ID calculation for external routes with same prefix but
	different mask.
Bugfix in NET lsa origination.
Bugfix in NET hashing.
Bugfix in LSA installing.
2000-06-05 02:23:20 +00:00
Martin Mares e24ddd9bef Don't set precedence and TTL for the dummy socket. 2000-06-04 20:00:35 +00:00
Martin Mares 13e9bac33f One more newline less... :) 2000-06-04 19:57:04 +00:00
Martin Mares df49d4e14b Removed lots of trailing newlines in log messages.
Please note that the only calls which don't add newlines automatically
(i.e., don't print a full line of output) are debug() and DBG().
2000-06-04 19:56:06 +00:00
Martin Mares 201187c558 debug -> DBG 2000-06-04 19:55:11 +00:00
Ondrej Filip dab6651916 Install newer lsa even if nothing in its body change. 2000-06-04 19:21:23 +00:00
Ondrej Filip 67cc9135bf Many bugs in ext lsa origination. 2000-06-04 19:20:28 +00:00
Ondrej Filip ce8f0c083a Schedule RT calcualtion if you delete LSA by premature aging. 2000-06-04 19:19:36 +00:00
Ondrej Filip 102e3e0e02 Just to be sure, that rt calculation cannot start beforeorigination of rt LSA. 2000-06-04 17:51:52 +00:00
Ondrej Filip 83e50ffc47 Bug in debugging. 2000-06-04 17:33:15 +00:00
Ondrej Filip 71f7d043a6 :-) No bison does not have any comment to my code. :-) 2000-06-04 17:10:52 +00:00
Martin Mares 54e55169da BGP documented. 2000-06-04 17:06:18 +00:00
Ondrej Filip 3560cf8e0b Clean up. 2000-06-04 16:36:57 +00:00
Ondrej Filip e781124868 Another clean up. 2000-06-04 16:17:39 +00:00
Martin Mares 3b31c53833 Documented all the trivial protocols. 2000-06-04 16:15:37 +00:00
Ondrej Filip 2a863dd6e1 Small change to make bison happy. 2000-06-04 16:12:01 +00:00
Ondrej Filip aaaff77605 More conf. items defined. 2000-06-03 09:50:31 +00:00
Ondrej Filip a789d814dd Multiple items in area {} :-) 2000-06-03 08:42:04 +00:00
Ondrej Filip 89d6782dd1 interface {} added. 2000-06-03 01:29:00 +00:00
Ondrej Filip b36a0a799c area {} added to config. 2000-06-02 19:55:55 +00:00
Ondrej Filip 3fa5722def First option into config added. :-) 2000-06-02 15:05:41 +00:00
Ondrej Filip 62924172ae Flush LSA when receive aged one. 2000-06-02 13:52:50 +00:00
Ondrej Filip e4ba0ec197 Bugfix in receiving of aged LSA. 2000-06-02 13:27:34 +00:00
Ondrej Filip 2eac33f774 Better LSA Aging. 2000-06-02 12:34:28 +00:00
Ondrej Filip ece612e128 sh interface "iface" dumpped all. 2000-06-02 11:24:38 +00:00
Ondrej Filip 7a5582ac00 Better dumping, if I get strange lsack. 2000-06-02 11:00:14 +00:00
Ondrej Filip 3488634cba Handle "show ospf *" even if protocol is down. 2000-06-02 10:21:02 +00:00
Ondrej Filip a489f0ce8b Silly bug in sh interface. Now I test ALL interfaces. :-) 2000-06-02 09:57:22 +00:00
Ondrej Filip 489f800b45 Speedup loading process. 2000-06-02 09:53:26 +00:00
Ondrej Filip 92e8be8c89 Bugfix in lsreq receiving. 2000-06-02 09:42:24 +00:00
Ondrej Filip c4f0f01408 Added show ospf interface.
show ospf neighbors now knows "<interface>".
2000-06-01 17:52:21 +00:00
Ondrej Filip 4ab4e9778f show ospf implemented. 2000-06-01 16:26:59 +00:00
Ondrej Filip a783e259d8 Cisco-like "show ospf neighbors" implemented. 2000-06-01 15:53:06 +00:00
Martin Mares 23df5e4cf3 Print route tag in hexadecimal and omit it if it's zero. 2000-06-01 13:00:39 +00:00
Martin Mares bc00185e5a Updated to new neighbor cache. 2000-06-01 13:00:19 +00:00
Martin Mares 491cd43b77 Updated RIP to new neighbor cache semantics. When presented with next hop
equal to a local address, just ignore the route (as it is usually just an
external route exported by us echoed by some RIP peer), when given an
invalid next hop, moan to the log.
2000-06-01 12:59:50 +00:00
Ondrej Filip df968040f6 Print tag unsigned rather then signed. 2000-06-01 12:17:08 +00:00
Ondrej Filip c52c7e7645 Calculate checksum when reflooding (after min ls_refresh). 2000-06-01 12:08:14 +00:00
Ondrej Filip 42542c56c2 Cleanup. 2000-06-01 00:32:08 +00:00
Ondrej Filip d27d0efe17 Very stuping bug. (I took me 4 hours to find it!)
I just wrote "=!" instead of "!=". :-(((((((
2000-06-01 00:22:48 +00:00
Ondrej Filip b5958826cc Ehm, some other "down" steps. 2000-05-31 18:55:57 +00:00
Ondrej Filip 3f6953a103 Some bugs in cleanup after iface down. 2000-05-31 18:45:16 +00:00
Ondrej Filip 489b21555e Why does not work "sk_close(sk);rfree(sk);"? 2000-05-31 18:36:51 +00:00
Ondrej Filip 46962be628 Better debugging.
Safe neigh_list deleting.
2000-05-31 18:31:53 +00:00
Ondrej Filip 3728267827 And finally, Premature aging works. :-) 2000-05-31 18:21:42 +00:00
Ondrej Filip 31ee3d5f21 Another step to make premature aging better. 2000-05-31 15:51:39 +00:00
Ondrej Filip a9eeefd63a Warning destroyed. :-) 2000-05-31 15:28:13 +00:00
Ondrej Filip 82364f4db8 Flood my LSA (if exists) after old one is flushed. 2000-05-31 15:24:29 +00:00
Ondrej Filip 0822995cb3 Set E2 metric for internal routes to LSINFINITY. 2000-05-31 15:04:45 +00:00
Ondrej Filip 9a04d0307e Delete _all_ ext routes from unreachable neighbor. 2000-05-31 14:52:22 +00:00
Ondrej Filip 528932368a Stuping bug in net LSA origination. Now, I should survive
loss of my only neighbor.
2000-05-31 14:43:42 +00:00
Ondrej Filip d1660fd3f3 Sort cleanup in aging. 2000-05-31 14:21:56 +00:00
Ondrej Filip 70a383198a LSArt origination and routing table calculation is now not doing so
often. Instead of calculation I just schedule it latter.
2000-05-31 14:06:33 +00:00
Ondrej Filip fc741dab27 Handle better next hop in external LSA. 2000-05-31 13:20:25 +00:00
Ondrej Filip e0bbb7b7ef Very ancient bug in (B)DR election, I didn't fill correctly my own IP. 2000-05-31 12:52:12 +00:00
Ondrej Filip a7a3a0a383 Added tagging of external LSA. 2000-05-31 12:07:09 +00:00
Martin Mares fcb5f4a725 Updated all the Doc files to new format. 2000-05-31 11:30:18 +00:00
Ondrej Filip 0884f49223 Ehm, in had this in code: "break; i--;" :-( 2000-05-30 23:29:23 +00:00
Martin Mares 3b0b2cb61f IPv6: Absolutize link-scope addresses of incoming packets.
IPv6 socket interface is hopefully right now.
2000-05-30 22:48:14 +00:00
Martin Mares 5919c66e8f Route attributes for OSPF. 2000-05-30 21:25:32 +00:00
Martin Mares 2cec475b8f Removed several unused local variables. 2000-05-30 21:24:53 +00:00
Ondrej Filip 3e86455606 Added \n in debug. 2000-05-30 18:21:51 +00:00
Ondrej Filip 7e1c7efae2 Stupig bug in debugging. 2000-05-30 17:57:06 +00:00