| Branch: | Revision:

iof-bird-daemon / proto / ospf / lsalib.c @ 74c838a8

History | View | Annotate | Download (13.2 KB)

# Date Author Comment
d7661fbe 12/19/2015 02:57 PM Jan Moskyto Matejka


Explicit setting of AF_INET(6|) in IP socket creation. BFD set to listen
on v6, without setting the V6ONLY flag to catch both v4 and v6 traffic.

Squashing and minor changes by Ondrej Santiago Zajicek

fe9f1a6d 11/05/2015 11:48 AM Ondrej Zajicek (work)

Initial commit on integrated BIRD

New data types net_addr and variants (in lib/net.h) describing
network addresses (prefix/pxlen). Modifications of FIB structures
to handle these data types and changing everything to use these
data types instead of prefix/pxlen pairs where possible....

77edab64 05/01/2015 12:40 PM Ondrej Zajicek

OSPF: Redesign LSA checksumming

New LSA checksumming code separates generic Fletcher-16 and OSPF-specific
code and avoids back and forth endianity conversions, making it much more
readable and also several times faster.

30d09eb9 04/28/2015 11:45 AM Ondrej Zajicek

OSPF: Fixes validation of LSA checksums

Prior to this patch, BIRD validates the OSPF LSA checksum by calculating
a new checksum and comparing it with the checksum in the header. Due to
the specifics of the Fletcher checksum used in OSPF, this is not
necessarily correct as the checkbytes in the header may be calculated via...

742029eb 07/19/2014 03:28 PM Ondrej Zajicek

Whitespace cleanup in OSPF.

70945cb6 06/26/2014 09:58 AM Ondrej Zajicek

Temporary integrated OSPF commit.

89647357 03/22/2012 11:29 AM Ondrej Zajicek

NEWS and version update.

41b612c3 07/20/2011 09:48 PM Ondrej Zajicek

OSPF NSSA support, part one.

f796945f 07/03/2011 09:24 PM Ondrej Zajicek

Fixes LSA checksum computation for larger LSAs.

8e48831a 03/17/2011 02:53 PM Ondrej Zajicek

Vastly improved OSPF reconfiguration.

Now it can handle a change in iface pattern structure.
It can add, remove and reconfigure interfaces, vlinks and areas.

506fa1a7 05/02/2010 08:41 PM Ondrej Zajicek

Merge several fixes suggested by Joakim Tjernlund.

6384c7d7 05/02/2010 05:58 PM Ondrej Zajicek

OSPF: most of summary LSA orig./flush logic rewritten.

Fixes many bugs in the old code and makes it much cleaner.

4e5fb4b6 04/25/2010 06:12 PM Ondrej Zajicek

Skip LSA host<->network endianity conversions on big endians.

0ea8fb4a 04/24/2010 01:18 PM Ondrej Zajicek

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...

e81b440f 02/21/2010 01:34 PM Ondrej Zajicek

Fix configure to enable warnings and fix most of them.

34a877cc 12/14/2009 04:29 PM Ondrej Zajicek

Minor updates.

8a70a13e 12/11/2009 10:06 AM Ondrej Zajicek

Implements protocol-specific Router ID for OSPF.

And fixes one minor bug.

a6bc04d5 10/29/2009 10:57 PM Ondrej Zajicek

Implements better checks on incoming packets and LSAs in OSPF.

c15e5690 09/08/2009 03:06 PM Ondrej Zajicek

Make endianity swapping simpler.

be862406 09/08/2009 11:45 AM Ondrej Zajicek

Temporary OSPFv3 development commit.

Finally, it is working.

f9c799a0 09/04/2009 09:06 AM Ondrej Zajicek

Temporary OSPFv3 development commit (changing multicast support).

061ab802 08/27/2009 04:25 PM Ondrej Zajicek

Temporary OSPFv3 development commit

b49e6f5a 08/25/2009 02:42 PM Ondrej Zajicek

Temporary OSPFv3 development commit

c3226991 08/21/2009 07:27 AM Ondrej Zajicek

Temporary OSPFv3 development commit

3aab39f5 07/23/2009 02:51 PM Ondrej Zajicek

Use %R in OSPF when appropriate.

2389c46f 07/05/2009 07:18 PM Ondrej Zajicek

Another pile of ipa_from_u32() calls.

39fc85b4 02/20/2005 07:03 PM Ondrej Filip

Unused code deleted.

86c84d76 07/15/2004 04:37 PM Ondrej Filip

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.

3b16080c 07/14/2004 09:46 PM Ondrej Filip

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!!!!

35fdf4b6 07/13/2004 09:22 PM Ondrej Filip

Don't inform us about every ospf_age()

98ac6176 06/25/2004 04:39 PM Ondrej Filip

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)...

e02652a7 06/07/2004 04:42 PM Ondrej Filip

Bugfix in RT calculation.

d5d9693c 06/06/2004 06:45 PM Ondrej Filip

Deleted unused parameters.

cd092260 06/06/2004 05:03 PM Ondrej Filip

Be sure, that ospf_area is aged before routing table calculation.

b8f17cf1 06/06/2004 04:00 PM Ondrej Filip

Small cleanup, indentation and preparation for multiple areas routing table calculation.

2e10a170 06/06/2004 09:37 AM Ondrej Filip


1512813e 06/05/2004 09:28 AM Martin Mares

... and a whole bunch of unused parameters and variables in ospf.

6f3203fa 06/04/2004 09:05 PM Ondrej Filip

cleanup in lsupd.c, indenting, "struct proto" removed...

39e517d4 06/04/2004 12:53 PM Ondrej Filip

hello.c and hello.h cleaned up. No design changes.

035f6acb 06/01/2004 01:12 PM Ondrej Filip

Patch from Andreas Steinmetz <>

c11007bc 08/26/2003 10:41 AM Ondrej Filip

Endian-related bug fixes sent by Krzysztof Szuster <>

baa5dd6c 08/23/2003 10:42 AM Ondrej Filip

Many spelling mistakes fixed.

Thanks you Harry Moyes.

47f18ac3 11/13/2002 08:47 AM Martin Mares

ABS should be a macro.

4ca0d084 04/03/2002 03:41 PM Ondrej Filip

Small typo fixed.

025b0e85 03/04/2002 03:52 PM Ondrej Filip

New trace added.

fdb19982 09/03/2000 10:18 PM Ondrej Filip

Serious bug in ext lsa origination found. Going for 1.0.4.

a012cbb1 06/08/2000 07:16 PM Ondrej Filip

Nasty bug in LSA refreshing. I didn't refesh my own copy! :-(

6567e6cf 06/08/2000 12:42 PM Martin Mares

Missing parameters...

17e29574 06/07/2000 11:48 PM Ondrej Filip

Better algoritmus of LSA aging.

25a3f3da 06/07/2000 11:34 PM Ondrej Filip

I mark all LSA as in distance INFINITY in process of aging.
I don't have to WALK twice through it.

e9ab0b42 06/07/2000 10:31 PM Ondrej Filip

Doc in lsalib.c + related minor changes.

064b1d89 06/06/2000 02:50 AM Ondrej Filip


fef1badf 06/06/2000 01:00 AM Ondrej Filip

All die() renamed to bug().

44fc1888 06/05/2000 06:09 PM Ondrej Filip

First calculate checksum and then send refreshed LSA!

273fd2c1 06/05/2000 02:23 AM Ondrej Filip

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.

df49d4e1 06/04/2000 07:56 PM Martin Mares

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.

dab66519 06/04/2000 07:21 PM Ondrej Filip

Install newer lsa even if nothing in its body change.

2eac33f7 06/02/2000 12:34 PM Ondrej Filip

Better LSA Aging.

c52c7e76 06/01/2000 12:08 PM Ondrej Filip

Calculate checksum when reflooding (after min ls_refresh).

d27d0efe 06/01/2000 12:22 AM Ondrej Filip

Very stuping bug. (I took me 4 hours to find it!)
I just wrote "=!" instead of "!=". :-(((((((

37282678 05/31/2000 06:21 PM Ondrej Filip

And finally, Premature aging works. :-)

d1660fd3 05/31/2000 02:21 PM Ondrej Filip

Sort cleanup in aging.

70a38319 05/31/2000 02:06 PM Ondrej Filip

LSArt origination and routing table calculation is now not doing so
often. Instead of calculation I just schedule it latter.

3d410fdf 05/30/2000 05:49 PM Ondrej Filip

Reflood your old lsa.

13b02be2 05/30/2000 05:00 PM Ondrej Filip

Don't run rt calculation twice.

ef6f26b4 05/30/2000 03:01 PM Ondrej Filip

Bug in lsa comparision.

2aa476a5 05/30/2000 01:39 PM Ondrej Filip

Yeah, the endianity bug found.

7f6b3cf2 05/17/2000 12:28 AM Ondrej Filip

Typo in comment.

e8bd039d 05/10/2000 11:52 AM Ondrej Filip

Bugfix in ip_addr endianity.

b224ca32 05/09/2000 07:36 PM Ondrej Filip

Flushing of old LSAs added.

d345cda5 05/04/2000 01:23 AM Ondrej Filip

Bugfix in Network lsa originating
Bugfix in ntohlsab() and htonlsab()
For calculating of rt I use my own fib. I delete routes! ;-)

a02c6c18 05/03/2000 10:23 PM Ondrej Filip

Cleanup of code. Some arguments of functions were useless.

c45f48fb 05/02/2000 10:19 PM Ondrej Filip

Aging of lsa database added.

85195f1a 04/30/2000 10:14 PM Ondrej Filip

Many small changes and bug fixes. Routing table calculation works.
I'm waiting for rt lookup to add stub networks.

c6c56264 04/30/2000 11:31 AM Ondrej Filip

Sync with nest's rt table and some minor improvements.

d8852b36 04/04/2000 03:55 PM Ondrej Filip

LSupdate processing improved. Now there is some bug in hashing. :-(

394acced 04/02/2000 08:41 PM Ondrej Filip

Work on lsupdates continues. Some checksum cleanup.

db9fb727 04/02/2000 07:04 PM Ondrej Filip

lsa_cmp moved into lsalib.c

499cb346 04/01/2000 02:45 AM Ondrej Filip

LSA checksum works. But it's very uneficient on little endian systems.

f45fd316 03/31/2000 12:21 AM Ondrej Filip

Sending of lspd as responce to lsreq done.