Commit graph

769 commits

Author SHA1 Message Date
Pavel Machek 7f77e25002 Functions for matching paths added, tested lightly.
Functions for working with community lists added, they compile.

This should not be definitive place for this stuff.
2000-04-10 15:07:43 +00:00
Pavel Machek 73e03bce66 As usuall, most important info was missing. 2000-04-10 14:45:00 +00:00
Martin Mares ae8f558499 Implemented outgoing attribute cache. 2000-04-10 12:39:51 +00:00
Martin Mares 6f57dcc07c Export ea_same() and ea_hash(). 2000-04-10 12:39:29 +00:00
Martin Mares f2cb1d708d Dropped CPU_NEEDS_ALIGN_* as unaligned.h no longer uses them. 2000-04-10 12:38:15 +00:00
Martin Mares 48e842cc98 Use neighbor cache to track direct route to the peer or multihop destination.
Calculate next_hop properly based on the local address we get from the
neighbor entry.
2000-04-10 11:21:40 +00:00
Martin Mares 287111fed1 Fix stupid bug in neighbor cache. 2000-04-10 10:40:00 +00:00
Martin Mares ef2c708dfa More BGP progress...
For Pavel: You can use bgp_path_prepend() for prepending AS numbers to AS paths.
2000-04-09 22:05:02 +00:00
Martin Mares d3feceff10 BGP doesn't need any inline attributes. 2000-04-09 22:04:12 +00:00
Pavel Machek 3d0ea3a7c3 Fix of comment. 2000-04-07 09:02:17 +00:00
Ondrej Filip 2c971094eb LSA flooding done. 2000-04-05 00:51:25 +00:00
Ondrej Filip 10000b96a8 Small clean up. (Duplicate #defines.) 2000-04-04 22:27:19 +00:00
Ondrej Filip f1f7faceb4 "Bug in hashing" fixed. Ehm it was bug in lsrql node removing. 2000-04-04 22:22:08 +00:00
Ondrej Filip d8852b362c LSupdate processing improved. Now there is some bug in hashing. :-( 2000-04-04 15:55:55 +00:00
Ondrej Filip 921a93f217 Flooding work continues. 2000-04-04 00:32:17 +00:00
Ondrej Filip 8496b2e41a Minor change in area list. Now I use MJ's lists. 2000-04-03 22:31:07 +00:00
Ondrej Filip 394acced11 Work on lsupdates continues. Some checksum cleanup. 2000-04-02 20:41:33 +00:00
Ondrej Filip db9fb72769 lsa_cmp moved into lsalib.c 2000-04-02 19:04:23 +00:00
Martin Mares 10be74da20 Formatting of dynamic attributes (except for paths and communities which
will be added soon).
2000-04-01 10:21:11 +00:00
Martin Mares dad177d7e0 RIP: Set attribute class. 2000-04-01 10:20:12 +00:00
Martin Mares 3991d84e8f Changed initialization of protocol list -- now we call proto_build() instead
of calling the protocols manually.

Implemented printing of dynamic attributes in `show route all'.

Each protocol can now register its own attribute class (protocol->attr_class,
set to EAP_xxx) and also a callback for naming and formatting of attributes.
The callback can return one of the following results:

	GA_UNKNOWN	Attribute not recognized.
	GA_NAME		Attribute name recognized and put to the buffer,
			generic code should format the value.
	GA_FULL		Both attribute name and value put to the buffer.

Please update protocols generating dynamic attributes to provide
the attr_class and formatting hook.
2000-04-01 10:19:47 +00:00
Martin Mares f880924990 BGP now handles incoming routes (IPv4 only). 2000-04-01 09:17:33 +00:00
Martin Mares 8581061399 When tracing, always print incoming part of the trace before the outgoing one.
Avoid buffer overflows in `show routes' command.
2000-04-01 09:16:42 +00:00
Martin Mares 798df5b1ab When processing ACCEPT/REJECT carrying no message, don't print
trailing newline.

I hope the fix is correct, but please check.
2000-04-01 09:15:55 +00:00
Martin Mares b157361533 SOURCE should really refer to rta->source, not rta->gw.
Please check that all rta attributes are available, I guess that at
least rta->dest is missing.
2000-04-01 09:15:10 +00:00
Ondrej Filip 499cb346f6 LSA checksum works. But it's very uneficient on little endian systems. 2000-04-01 02:45:49 +00:00
Martin Mares ac4b4683ae Removal of useless includes continues... 2000-03-31 23:40:00 +00:00
Martin Mares 3cf4a2e2b0 Removed lots of superfluous includes.
Use debug() instead of printf().
2000-03-31 23:35:59 +00:00
Martin Mares a37410cbdd Use bsprintf() instead of sprintf(). 2000-03-31 23:33:03 +00:00
Martin Mares 221135d6bf Include "lib/string.h" instead of <string.h>. It should give us bzero()
and other non-portable functions on all systems.
2000-03-31 23:30:21 +00:00
Martin Mares c00d31befa Parsing of BGP attributes. 2000-03-31 23:21:37 +00:00
Martin Mares 08732b7178 Fixed bug in processing of dynamic attributes. 2000-03-31 23:21:19 +00:00
Ondrej Filip 65e55e9cca Checksum changes. Bug is still NOT fixed. :-( 2000-03-31 01:40:12 +00:00
Ondrej Filip 9f940976d1 Some bug fixes. LSA checksum is still bad. I'll fix it later. 2000-03-31 01:14:41 +00:00
Ondrej Filip f45fd3164b Sending of lspd as responce to lsreq done. 2000-03-31 00:21:41 +00:00
Ondrej Filip 14a7921c83 LSA structure changes. (Len added.) 2000-03-30 20:18:51 +00:00
Ondrej Filip de769e24c0 Skeleton structures and files added. 2000-03-30 20:00:42 +00:00
Ondrej Filip 95eb1dba3f Add hashing to link state request list. 2000-03-30 19:37:26 +00:00
Ondrej Filip 76915ec979 Minor changes. 2000-03-30 19:21:17 +00:00
Martin Mares 973399ae2c Basic analysis of UPDATE packets. 2000-03-30 18:44:23 +00:00
Martin Mares b552ecc4d7 Connection state machine works. 2000-03-30 17:39:48 +00:00
Ondrej Filip ce0603a6ed Better list manipulation. 2000-03-30 16:22:58 +00:00
Martin Mares 3fdbafb6f4 More BGP. This time it connects, but the state machine still isn't complete. 2000-03-30 10:44:20 +00:00
Martin Mares 320f417357 Defined sk_close() which closes the socket safely even if called from
socket hook. Replaces the SK_DELETED hack.

Squashed a couple of bugs in handling of TCP sockets.
2000-03-30 10:43:37 +00:00
Martin Mares 3a6337ecb2 Use FF_FORCE_TMPATTR where appropriate. 2000-03-30 08:50:46 +00:00
Martin Mares 3076b5aedc Renamed FF_OUTGOING to FF_FORCE_TMPATTR which much better fits the semantics.
Call rte_cow() instead of rte_do_cow(), so that COW works properly.

Stripped "\n" off several (de)bug messages.
2000-03-30 08:50:30 +00:00
Ondrej Filip 6d2b32114f LSreq initial work. 2000-03-30 00:18:59 +00:00
Martin Mares 3ee2310c5d Avoid conflicts with libraries defining their own xmalloc by defining
xmalloc to bird_xmalloc internally.
2000-03-29 22:57:46 +00:00
Ondrej Filip 2560c8860e Slave bug fix. 2000-03-29 17:51:40 +00:00
Ondrej Filip 910e557b47 Many changes in dbdes sending & receiving. EXDONE caused. 2000-03-29 17:18:06 +00:00