Commit graph

53 commits

Author SHA1 Message Date
Ondrej Zajicek 48e5f32db6 Many changes in I/O and OSPF sockets and packet handling.
I/O:
 - BSD: specify src addr on IP sockets by IP_HDRINCL
 - BSD: specify src addr on UDP sockets by IP_SENDSRCADDR
 - Linux: specify src addr on IP/UDP sockets by IP_PKTINFO
 - IPv6: specify src addr on IP/UDP sockets by IPV6_PKTINFO
 - Alternative SKF_BIND flag for binding to IP address
 - Allows IP/UDP sockets without tx_hook, on these
   sockets a packet is discarded when TX queue is full
 - Use consistently SOL_ for socket layer values.

OSPF:
 - Packet src addr is always explicitly set
 - Support for secondary addresses in BSD
 - Dynamic RX/TX buffers
 - Fixes some minor buffer overruns
 - Interface option 'tx length'
 - Names for vlink pseudoifaces (vlinkX)
 - Vlinks use separate socket for TX
 - Vlinks do not use fixed associated iface
 - Fixes TTL for direct unicast packets
 - Fixes DONTROUTE for OSPF sockets
 - Use ifa->ifname instead of ifa->iface->name
2014-02-06 17:46:01 +01:00
Ondrej Zajicek 95127cbbb7 Real broadcast mode for OSPFv2. 2012-05-14 11:47:41 +02:00
Ondrej Zajicek ee7408c2be Fixes a bug in LSA flooding.
LSAs are sometimes prematurely removed from LS retransmission lists.
2010-05-07 15:54:27 +02:00
Ondrej Zajicek e7b76b9760 Temoporary OSPF commit - socket changes. 2010-03-11 18:07:24 +01:00
Ondrej Zajicek 353729f513 Temporary OSPF commit - socket changes. 2010-02-11 10:23:35 +01:00
Ondrej Zajicek 34a877ccac Minor updates. 2009-12-14 17:29:33 +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 a6bc04d591 Implements better checks on incoming packets and LSAs in OSPF. 2009-10-29 23:57:42 +01:00
Ondrej Zajicek f9c799a00e Temporary OSPFv3 development commit (changing multicast support). 2009-09-04 11:06:51 +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 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 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 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 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 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 5e3436d20f Cleanup in packet.c. Deleted unused parameters. 2004-06-06 19:53:52 +00:00
Ondrej Filip 2e10a170fe Indentation. 2004-06-06 09:37:54 +00:00
Martin Mares 1512813e95 ... and a whole bunch of unused parameters and variables in ospf. 2004-06-05 09:28:17 +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 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 035f6acbfe Patch from Andreas Steinmetz <ast@domdv.de> 2004-06-01 13:12:10 +00:00
Ondrej Filip d5e4b51865 Doc 2000-06-07 22:10:46 +00:00
Ondrej Filip 531a48d8c5 Tracing in LS ack. 2000-06-06 02:32:14 +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 4bb9ce56bb Reset inactim timer if you receive any packet from neighbor. 2000-06-05 19:45:06 +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
Ondrej Filip 83e50ffc47 Bug in debugging. 2000-06-04 17:33:15 +00:00
Ondrej Filip 89d6782dd1 interface {} added. 2000-06-03 01:29:00 +00:00
Ondrej Filip 7a5582ac00 Better dumping, if I get strange lsack. 2000-06-02 11:00:14 +00:00
Ondrej Filip 3728267827 And finally, Premature aging works. :-) 2000-05-31 18:21:42 +00:00
Ondrej Filip c8d1f3feb2 Better debugging.
More robust.
2000-05-11 22:00:16 +00:00
Ondrej Filip a3ae6246c2 Bugfix in lsrt slist adding. 2000-05-09 19:38:16 +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 8a3049f6f1 Useless '\n' in log() 2000-05-08 22:42:56 +00:00
Ondrej Filip 158b99c912 Better logging. (%d->%I) 2000-05-08 22:02:45 +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 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 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 ebff007f08 LSack receiving bugfix. 2000-04-12 15:37:52 +00:00