Ondrej Zajicek
6384c7d7aa
OSPF: most of summary LSA orig./flush logic rewritten.
...
Fixes many bugs in the old code and makes it much cleaner.
2010-05-02 19:58:34 +02:00
Ondrej Zajicek
ba32170657
Better support for /31 networks.
2010-04-28 00:39:57 +02:00
Ondrej Zajicek
48b0814ace
A fix in OSPFv3 next_hop calculation.
2010-04-27 18:29:01 +02:00
Ondrej Zajicek
9d1ee13887
Neighbors on OSPF broadcast networks should be identified by IP address, not RID.
...
Allows simple support for multiple interfaces to the same network.
2010-04-26 19:08:57 +02:00
Ondrej Zajicek
4e5fb4b60c
Skip LSA host<->network endianity conversions on big endians.
2010-04-25 20:12:34 +02:00
Ondrej Zajicek
0ea8fb4abe
Fixes and enhancements in 'show ospf state' command.
...
Now it shows a distance, option to change showing reachable/all network
nodes and better handling of AS-external LSAs in multiple areas. The
command 'show ospf topology' was changed to not show stubnets in both
OSPFv2 and OSPFv3 (previously it displayed stubnets in OSPFv2).
2010-04-24 15:18:21 +02:00
Ondrej Zajicek
3b89a2327b
Fixes several problems in OSPF vlink implementation.
2010-04-21 21:50:38 +02:00
Ondrej Zajicek
6e80676096
Fixes next hop calculation on NBMA and parallel PTP links.
2010-04-11 12:22:47 +02:00
Ondrej Zajicek
7969ea3b41
Fixes a bug in OSPF on NBMA interfaces.
...
A very tricky bug. OSPF on NBMA interfaces probably never really worked.
When a packet was sent to multiple destinations, the checksum was
calculated multiple times from a packet with already filled checksum
field (from previous calculation). Therefore, many packets were sent
with an invalid checksum.
2010-04-11 10:19:54 +02:00
Ondrej Zajicek
b8113a5e92
Implements BGP 'show protocols' info details.
2010-04-07 00:19:23 +02:00
Ondrej Zajicek
e60d55becd
Fixes OSPFv3 route generation for local stub networks.
2010-04-02 19:03:18 +02:00
Ondrej Zajicek
e7b09e4ab9
Use SO_BINDTODEVICE also in Linux/IPv6.
2010-04-02 16:11:46 +02:00
Ondrej Zajicek
bed417288e
Minor fixes to previous patches.
2010-04-02 11:31:20 +02:00
Ondrej Zajicek
126683feed
Filter language updates; new route attributes and datatype.
...
- Adds bgp_originator_id and bgp_cluster_list route attributes.
- Adds dotted quad filter datatype (for router IDs, used by
bgp_originator_id and ospf_router_id route attributes).
- Fixes pair ~ pair set matching.
- Documentation updates.
2010-03-29 19:29:03 +02:00
Ondrej Zajicek
48cff379a7
Added some comments.
2010-03-26 16:21:29 +01:00
Ondrej Zajicek
af157fa3db
Disable multiple OSPF pseudointerfaces on BSD.
2010-03-26 14:48:01 +01:00
Ondrej Zajicek
885b3d6127
Fixes LLS compatibility.
2010-03-22 14:00:47 +01:00
Ondrej Zajicek
0aad2b9292
Temporary OSPF commit - sockets.
2010-03-14 16:36:59 +01:00
Ondrej Zajicek
54305181f6
Merge branch 'new' into socket2
2010-03-11 18:55:59 +01:00
Ondrej Zajicek
e7b76b9760
Temoporary OSPF commit - socket changes.
2010-03-11 18:07:24 +01:00
Ondrej Zajicek
ff2857b03d
Many changes in (mainly) kernel syncers.
...
- BSD kernel syncer is now self-conscious and can learn alien routes
- important bugfix in BSD kernel syncer (crash after protocol restart)
- many minor changes and bugfixes in kernel syncers and neighbor cache
- direct protocol does not generate host and link local routes
- min_scope check is removed, all routes have SCOPE_UNIVERSE by default
- also fixes some remaining compiler warnings
2010-02-26 10:55:58 +01:00
Ondrej Zajicek
e81b440f68
Fix configure to enable warnings and fix most of them.
2010-02-21 14:34:53 +01:00
Ondrej Zajicek
dca75fd7c2
Removes phantom protocol from the pipe design.
...
It seems that by adding one pipe-specific exception to route
announcement code and by adding one argument to rt_notify() callback i
could completely eliminate the need for the phantom protocol instance
and therefore make the code more straightforward. It will also fix some
minor bugs (like ignoring debug flag changes from the command line).
2010-02-13 12:26:26 +01:00
Ondrej Zajicek
353729f513
Temporary OSPF commit - socket changes.
2010-02-11 10:23:35 +01:00
Ondrej Zajicek
c27b2449d1
Shows source (Router ID) for OSPF routes and adds such attribute.
...
A sad thing is that we does not have a 'router_id' filter type,
so it must be given as decimal number in filters.
2010-02-08 16:01:03 +01:00
Ondrej Zajicek
aa80826e4a
Unnumbered OSPF interfaces should be always in the point-to-point mode.
2010-02-07 09:49:34 +01:00
Ondrej Zajicek
a306208582
Comment update.
2010-01-13 14:53:33 +01:00
Ondrej Zajicek
99f5fc14cd
A partial vlink fix.
2010-01-08 22:19:41 +01:00
Ondrej Zajicek
fc33143f02
A fix for broken multi-area OSPF
2010-01-08 17:22:51 +01:00
Ondrej Filip
6901fd0685
More information about vlinks.
2010-01-07 23:42:11 +01:00
Ondrej Filip
18722dc98c
Bugfix in DBG call.
2010-01-07 23:03:19 +01:00
Ondrej Filip
3127b81755
Be a little bit more verbose on virtual links.
2010-01-07 22:54:39 +01:00
Ondrej Zajicek
cf0858c217
A fix of a previous fix.
2010-01-07 22:43:06 +01:00
Ondrej Zajicek
ba39197c11
Fixes vlinks for OSPFv2.
2010-01-07 22:22:10 +01:00
Ondrej Zajicek
29bfbae793
Debugging change leaked to repository.
2010-01-07 16:24:36 +01:00
Ondrej Zajicek
3034b384dd
A minor fix in OSPF.
2010-01-07 11:46:11 +01:00
Ondrej Zajicek
cf31112f0d
Implements MRTdump feature.
2010-01-03 12:17:52 +01:00
Ondrej Zajicek
610bb3cff0
Show command cleanups.
2009-12-22 10:49:39 +01:00
Ondrej Zajicek
f2d7da742b
Fixes export of routes with link-local gw.
2009-12-15 00:30:07 +01:00
Ondrej Zajicek
f75747073e
Implements route reload for OSPF.
2009-12-14 21:17:15 +01:00
Ondrej Zajicek
63542845df
Merge branch 'dev' into ospf3
...
Conflicts:
proto/ospf/lsreq.c
proto/ospf/lsupd.c
proto/ospf/rt.c
2009-12-14 20:37:32 +01:00
Ondrej Zajicek
34a877ccac
Minor updates.
2009-12-14 17:29:33 +01:00
Ondrej Zajicek
28008482a9
Minor fixes in OSPF.
2009-12-12 01:35:51 +01:00
Ondrej Zajicek
8a70a13e7e
Implements protocol-specific Router ID for OSPF.
...
And fixes one minor bug.
2009-12-11 11:06:51 +01:00
Ondrej Zajicek
be2d38b7e9
Temporary OSPFv3 commit.
2009-12-11 00:31:56 +01:00
Ondrej Zajicek
9807690b41
Fixes link-back check.
2009-12-06 22:05:50 +01:00
Ondrej Zajicek
b76aeb8234
Fixes next hop handling.
2009-12-04 22:20:13 +01:00
Ondrej Zajicek
9895502392
Fixes OSPFv2 build.
2009-12-03 23:20:02 +01:00
Ondrej Zajicek
bb3c7c6d22
Fixes some log messages.
2009-12-03 18:56:39 +01:00
Ondrej Zajicek
69fbf9a251
Minor fix in LSA update.
2009-12-03 18:25:14 +01:00
Ondrej Zajicek
4b84bd4554
Fixes some crashes in OSPFv2.
2009-11-29 10:29:33 +01:00
Ondrej Zajicek
e4a810b0ce
Temporary commit.
2009-11-29 10:09:25 +01:00
Ondrej Zajicek
cbf8b08d62
Temporary OSPFv3 devel commit
2009-11-17 10:31:33 +01:00
Ondrej Zajicek
4ac7c8341c
Use IPv6 checksums in OSPFv3.
2009-11-09 23:22:53 +01:00
Ondrej Zajicek
3f22fa9e74
Merge branch 'dev' into ospf3
2009-11-09 22:54:39 +01:00
Ondrej Zajicek
a6bc04d591
Implements better checks on incoming packets and LSAs in OSPF.
2009-10-29 23:57:42 +01:00
Ondrej Zajicek
9d4d38d1a5
Fixes some problems related to link-local routes in KRT interface.
2009-10-28 22:39:24 +01:00
Ondrej Zajicek
9727681a38
Implements proper handling of summary/external LSA IDs.
2009-10-25 20:02:28 +01:00
Ondrej Zajicek
988992446d
Implement command to show LSA db.
2009-10-15 11:57:25 +02:00
Ondrej Zajicek
b66abe8ef9
Reimplements 'show ospf state' for OSPFv3 and fixes some bugs.
2009-10-15 00:28:04 +02:00
Ondrej Zajicek
d82fc18d75
Implement proper LSA ID generation.
2009-10-07 21:10:29 +01:00
Ondrej Zajicek
9f0ba7b1c7
Implements proper RID handling in OSPFv3.
2009-09-17 12:18:03 +02:00
Ondrej Zajicek
c15e569065
Make endianity swapping simpler.
2009-09-08 17:06:47 +02:00
Ondrej Zajicek
be86240662
Temporary OSPFv3 development commit.
...
Finally, it is working.
2009-09-08 13:45:02 +02:00
Ondrej Zajicek
f9c799a00e
Temporary OSPFv3 development commit (changing multicast support).
2009-09-04 11:06:51 +02:00
Ondrej Zajicek
d2ceaf4ec8
Temporary OSPFv3 development commit
2009-08-28 13:45:43 +02:00
Ondrej Zajicek
05198c12f4
Some cleanups.
2009-08-27 19:01:04 +02:00
Ondrej Zajicek
061ab802a6
Temporary OSPFv3 development commit
2009-08-27 18:25:46 +02:00
Ondrej Zajicek
b49e6f5a65
Temporary OSPFv3 development commit
2009-08-25 16:42:14 +02:00
Ondrej Zajicek
c3226991a0
Temporary OSPFv3 development commit
2009-08-21 09:27:52 +02:00
Ondrej Filip
87d7fd9725
Bugfix - each protocol can be compiled separately.
2009-08-16 22:36:41 +02:00
Ondrej Zajicek
b92c8e3019
Merge branch 'master' into dev
2009-08-10 10:16:00 +02:00
Ondrej Filip
0d328932be
Symbols PASSWORDS and BROADCAST not declared for OSPF
2009-07-30 18:39:41 +02:00
Ondrej Zajicek
3aab39f589
Use %R in OSPF when appropriate.
2009-07-23 16:51:28 +02:00
Ondrej Zajicek
2389c46fe3
Another pile of ipa_from_u32() calls.
2009-07-05 21:18:55 +02:00
Ondrej Zajicek
b082c1bfcc
Fixes OSPF on big-endians.
...
Hmm, #ifdef is not very typo-safe.
2009-07-05 20:26:51 +02:00
Ondrej Zajicek
f9bdcad469
Fixes type mismatch in OSPF printf statements.
...
Mixing ip_addr and u32 does bad things on Ultrasparc.
Although both have the same size. Fascinating.
It was not catched by compiler because of varargs.
2009-07-05 19:01:54 +02:00
Ondrej Zajicek
1b3b3e34ec
Minor bugfixes.
2009-06-18 14:32:44 +02:00
Ondrej Zajicek
3867520281
Implements an option that allows to change a set of stub networks.
2009-06-11 17:25:38 +02:00
Ondrej Zajicek
3d15dcdb1c
Changes OSPF to generate stub networks for non-primary addresses.
...
Also does some reorganization in RT LSA announcement.
2009-06-10 23:45:08 +02:00
Ondrej Zajicek
f98e291579
The pipe cleanup.
2009-06-01 14:07:13 +02:00
Ondrej Zajicek
23ac9e9a9e
Changes pipes to transfer all routes between routing table, not just optimal routes.
2009-05-31 15:24:27 +02:00
Ondrej Zajicek
f571473ef3
Hello packets on PTP networks should have zero netmask.
...
This also ensures that misconfigured routers (one side
ptp and one side broadcast) do not make adjacency.
2009-05-24 17:55:33 +02:00
Ondrej Zajicek
8cc598a520
Ignore Hello packets from different IP network (than primary).
2009-05-24 17:51:27 +02:00
Ondrej Zajicek
20e94fb85b
A change in OSPF and RIP interface patterns.
...
Allows to add more interface patterns to one common 'options'
section like:
interface "eth3", "eth4" { options common to eth3 and eth4 };
Also removes undocumented and unnecessary ability to specify
more interface patterns with different 'options' sections:
interface "eth3" { options ... }, "eth4" { options ... };
2009-05-06 22:02:45 +02:00
Ondrej Zajicek
024c310b53
Fixes broken cryptographic authentication in OSPF
...
Cryptographic authentication in OSPF is defective by
design - there might be several packets independently
sent to the network (for example HELLO, LSUPD and LSACK)
where they might be reordered and that causes crypt.
sequence number error.
That can be workarounded by not incresing sequence number
too often. Now we update it only when last packet was sent
before at least one second. This can constitute a risk of
replay attacks, but RFC supposes something similar (like time
in seconds used as CSN).
2009-04-08 20:15:01 +02:00
Ondrej Zajicek
b722fe7ebd
Fixes bug in OSPF packet retransmission.
...
If a DBDES packet from a master to a slave is lost, then the old code
does not retransmit it and instead send a next one with the same
sequence number. That leads to silent desynchronization of LSA
databases.
2009-04-06 16:53:06 +02:00
Ondrej Zajicek
8298d780be
Better OSPF packet tracing log messages.
...
Replaces old OSPF packet tracing messages with
uniform messages with packet dumps.
2009-04-06 16:17:47 +02:00
Ondrej Zajicek
a9dc5e1ef2
Fixes another bug in packet retransmissions.
...
When slave was in full state, it didn't retransmit
lost packets. That leads to OSPF connection locked
in states loading-full.
2009-02-25 16:28:21 +01:00
Ondrej Zajicek
d901db3fb7
Fixes bug in packet retransmissions.
...
When packet was lost during dbdes exchange, slave did not retransmit
it. That leads to OSPF connection locked in states exchange-exstart.
2009-02-12 19:46:51 +01:00
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
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