Statistics
| Branch: | Revision:

iof-bird-daemon / nest / rt-attr.c @ 62e64905

History | View | Annotate | Download (28.6 KB)

# Date Author Comment
62e64905 02/20/2017 01:26 AM Ondrej Zajicek (work)

Several minor fixes

d14f8c3c 12/22/2016 08:38 PM Jan Moskyto Matejka

Netlink: MPLS routes in kernel

Anyway, Bird is now capable to insert both MPLS routes and MPLS encap
routes into kernel.

It was (among others) needed to define platform-specific AF_MPLS to 28
as this constant has been assigned in the linux kernel.

No support for BSD now, it may be added in the future.

f2010f9c 12/22/2016 08:38 PM Jan Moskyto Matejka

Static: Protocol rework wrt. struct nexthop changes; MPLS label support

ec5e5d23 12/22/2016 12:23 PM Jan Moskyto Matejka

Nexthop: Support for label stack in nest

5b208e29 12/22/2016 12:09 PM Jan Moskyto Matejka

Removing (struct rta)->cast. Never used.

4e276a89 12/22/2016 12:01 PM Jan Moskyto Matejka

Merged multipath and single-path data structures.

Dropped struct mpnh and mpnh_*()
Now struct nexthop exists, nexthop_*(), and also included struct nexthop
into struct rta.

Also converted RTD_DEVICE and RTD_ROUTER to RTD_UNICAST. If it is needed
to distinguish between these two cases, RTD_DEVICE is equivalent to...

d15b0b0a 12/07/2016 01:20 PM Ondrej Zajicek (work)

BGP redesign

Integrated and extensible BGP with generalized AFI handling,
support for IPv4+IPv6 AFI and unicast+multicast SAFI.

8860e991 11/08/2016 06:27 PM Ondrej Zajicek (work)

Merge branch 'master' into int-new

cc5b93f7 11/08/2016 04:04 PM Ondrej Zajicek (work)

Merge tag 'v1.6.2' into int-new

3e236955 11/01/2016 01:52 PM Jan Moskyto Matejka

Build: switch on -Wextra, get rid of most of the warnings

There are several unresolved -Wmissing-field-initializers on older
versions of GCC than 5.1, all of them false positive.

66dbdbd9 10/03/2016 10:48 AM Ondrej Zajicek (work)

BGP: Support for large communities

Add support for large communities (draft-ietf-idr-large-community),
96bit alternative to RFC 1997 communities.

Thanks to Matt Griswold for the original patch.

84cac51a 09/14/2016 09:53 AM Ondrej Zajicek (work)

Nest: Keep multipath next hops sorted

12640c14 07/19/2016 10:16 AM Ondrej Zajicek (work)

Babel: Documentation updates

This updates the documentation to correctly mention Babel when protocols
are listed, and adds examples and route attribute documentation to the
Babel section of the docs.

Signed-off-by: Toke Høiland-Jørgensen <>

5af7b596 05/13/2016 11:48 AM Jan Moskyto Matejka

Merge branch 'int-new' of gitlab.labs.nic.cz:labs/bird into int-new

d39d41fb 05/13/2016 11:46 AM Jan Moskyto Matejka

Hash: Fix of previous commit

659f80f2 05/12/2016 07:47 PM Ondrej Zajicek (work)

Make int-new compilable again

776d6b2c 05/12/2016 04:11 PM Ondrej Zajicek (work)

Merge remote-tracking branch 'origin/int-new' into int-new

af678af0 05/12/2016 04:03 PM Ondrej Zajicek (work)

Merge remote-tracking branch 'origin/master' into int-new

54ac0bec 05/12/2016 02:16 PM Jan Moskyto Matejka

Hash: fixed rta hashing wrt. structure padding

8e433d6a 05/12/2016 01:49 PM Pavel Tvrdik

Prog Doc: Complete several missing parameters

a815d62d 02/19/2016 03:33 PM Jan Moskyto Matejka

Hash: typecast error fix

9a74622c 02/10/2016 12:26 PM Jan Moskyto Matejka

Updated RTA hashes to 32-bit values.

... and reworked the hashes a bit. Also added mem_hash function
which just computes a hash of given memory block.

74c838a8 12/29/2015 02:42 PM Ondrej Zajicek (work)

Move ID allocator to a separate file and use it also in OSPF

04632fd7 12/24/2015 02:56 PM Ondrej Zajicek (work)

Follow-up work on integration

8d9eef17 06/08/2015 12:24 AM Ondrej Zajicek

BGP multipath support

Kernel option 'merge paths' allows to merge routes exported to kernel
protocol (currently BGP and static routes) to multipath routes.

d217ba51 06/08/2015 12:24 AM Ondrej Zajicek

Moving of mulipath merging code from OSPF to nest

ae80a2de 06/08/2015 12:24 AM Pavel Tvrdík

unsigned [int] -> uint

9fdf9d29 05/12/2015 02:42 PM Ondrej Zajicek

KRT: Add support for plenty of kernel route metrics

Linux kernel route metrics (RTA_METRICS netlink route attribute) are
represented and accessible as new route attributes:

krt_mtu, krt_window, krt_rtt, krt_rttvar, krt_sstresh, krt_cwnd, krt_advmss,
krt_reordering, krt_hoplimit, krt_initcwnd, krt_rto_min, krt_initrwnd,...

315f23a0 05/10/2015 05:44 PM Ondrej Zajicek

Add bitfield route attribute type

0479b443 10/02/2014 10:52 AM Ondrej Zajicek

Fixes some warnings.

e7d2ac44 12/01/2013 12:49 PM Ondrej Zajicek

Finishes add-path.

Fixes some bugs and uses generic hash implementation.

736e143f 11/23/2013 10:50 AM Ondrej Zajicek

Merge branch 'master' into add-path

Conflicts:

filter/filter.c
nest/proto.c
nest/rt-table.c
proto/bgp/bgp.h
proto/bgp/config.Y
28a10f84 10/02/2013 12:41 PM Ondrej Zajicek

Some fixes in filter code.

Thanks to Sergey Popovich for original patches.

094d2bdb 08/14/2012 02:46 PM Ondrej Zajicek

Implements ADD-PATH extension for BGP.

Allows to send and receive multiple routes for one network by one BGP
session. Also contains necessary core changes to support this (routing
tables accepting several routes for one network from one protocol).
It needs some more cleanup before merging to the master branch.

a52d52fa 08/15/2011 06:54 PM Ondrej Zajicek

Fixes some missing tabs.

They unintentionally disappeared in 1.3.2.

42a0c054 08/14/2011 11:55 AM Ondrej Zajicek

BGP Extended communities.

fdf16eb6 07/03/2011 05:43 PM Ondrej Zajicek

Prints full community lists during 'show route all'.

6370d6f6 06/26/2011 08:32 PM Ondrej Zajicek

Fix route types in rta_show().

7e95c05d 12/07/2010 10:33 PM Ondrej Zajicek

Core multipath support.

ba5e5940 08/02/2010 11:11 AM Ondrej Zajicek

Adds igp_metric attribute.

d1e146f2 07/30/2010 11:04 PM Ondrej Zajicek

Implements IGP metric comparison for BGP routes.

cfe34a31 07/05/2010 03:50 PM Ondrej Zajicek

Implements hostcache and recursive next hops.

Hostcache is a structure for monitoring changes in a routing table that
is used for routes with dynamic/recursive next hops. This is needed for
proper iBGP next hop handling.

acb60628 06/02/2010 08:20 PM Ondrej Zajicek

Implements command that shows memory usage.

1528d30a 03/17/2010 10:17 PM Ondrej Zajicek

Fixes unterminated string for atomic_aggr attribute formatting.

212ff335 02/26/2010 12:55 PM Ondrej Zajicek

Fixes signedness in format route attributes.

fee78355 08/21/2009 07:31 AM Ondrej Zajicek

Fixes bug in eattr binary search.

2f6483cd 07/23/2009 02:06 PM Ondrej Zajicek

Adds %R printf directive for Router ID.

d72a0ac2 05/22/2009 01:16 PM Ondrej Zajicek

Fixes serious bug in route attribute handing.

ea_same() sometimes returns true for different route attributes,
which caused that hash table in BGP does not work correctly and
some routes were sent with different attributes.

aebe06b4 11/08/2008 10:33 PM Ondrej Zajicek

Proper format functions for ORIGINATOR_ID, CLUSTER_LIST

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

8bf684ec 06/11/2004 09:05 AM Ondrej Filip

RTS_OSPF_BONDARY is nonsense, RTS_OSPF_IA must have smaller id than RTS_OSPF_EXT

10af3676 05/31/2004 05:16 PM Ondrej Filip

Grrr, committing too fast.
#include "alloca.h" -> #include "lib/alloca.h"

0e6eef62 05/31/2004 05:07 PM Ondrej Filip

Use #include "alloca.h"

0c745adc 05/31/2004 01:34 PM Ondrej Filip

#ifdef ALLOCA_H

2e9b2421 06/07/2000 12:29 PM Martin Mares

Spelling fixes to progdoc.

3ce8c610 06/02/2000 12:29 PM Martin Mares

Documentation on routing tables and route attributes.

3ced9b34 05/19/2000 06:05 PM Martin Mares

Fixed freeing of non-embedded extended attributes.

c0100454 05/10/2000 06:54 AM Pavel Machek

Added more convient interface for ea_find.

What is special about int default;? Compiler chokes on that!

5d86aefb 05/08/2000 01:12 PM Martin Mares

Really free attributes.

d0126f0b 05/08/2000 11:40 AM Martin Mares

bugs_in_attr_cache_hashing--;

891cec85 05/07/2000 11:27 AM Martin Mares

Killed one more reference to RTS_RIP_EXT.

ce1da96e 05/06/2000 10:57 PM Martin Mares

Added commands `show route protocol <p>' and `show route import <p>' which
show the routing table as exported to the protocol given resp. as returned
from its import control hook.

To get handling of filtered extended attributes right (even in the old
`show route where <filter>' command), the get_route_info hook gets an...

beaf86e1 05/04/2000 09:23 PM Martin Mares

Removed RTS_RIP_EXT.

dbf3939a 04/26/2000 12:32 PM Martin Mares

Better formatting of router ID's.

51a183af 04/17/2000 11:23 AM Martin Mares

Define EAF_ORIGINATED and propagate it properly when merging attribute lists.

c6add07f 04/17/2000 10:18 AM Martin Mares

Printing of AS paths and community sets.

6f57dcc0 04/10/2000 12:39 PM Martin Mares

Export ea_same() and ea_hash().

3991d84e 04/01/2000 10:19 AM Martin Mares

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

221135d6 03/31/2000 11:30 PM Martin Mares

Include "lib/string.h" instead of <string.h>. It should give us bzero()
and other non-portable functions on all systems.

08732b71 03/31/2000 11:21 PM Martin Mares

Fixed bug in processing of dynamic attributes.

9f4929e7 03/04/2000 10:30 PM Martin Mares

Renamed EAF_INLINE to EAF_TEMP to make the name reflect the real meaning.

ee76a92a 03/04/2000 09:09 PM Martin Mares

Implemented real attribute cache.

c8518ae1 03/01/2000 03:05 PM Martin Mares

Removed RTF_EXTERIOR and RTF_TAGGED (unused).

730f2e2c 12/01/1999 03:10 PM Martin Mares

Added dumping of routing tables (`show route'). This includes filtering.

8d24b689 11/18/1999 02:41 PM Martin Mares

Allow EA type to be set to 'undefined' which overrides all further definitons
of that EA in the same list and causes ea_find() to fail unless you add
EA_ALLOW_UNDEF to the second argument.

ea_sort (resp. ea_do_prune()) removes all undef'd attributes from the list....

2727bb7c 11/04/1999 01:29 PM Martin Mares

Renamed attr->attrs to attr->eattrs.

08e2d625 04/12/1999 06:01 PM Martin Mares

Removed TOS support. This simplifies many things a lot.

b77ae37d 03/17/1999 01:09 PM Martin Mares

Implemented extended route attributes and all related functions.

64011f89 02/11/1999 10:45 PM Martin Mares

struct proto again contains instance name (a copy of proto->cf->name).

31b3e1bb 02/05/1999 09:37 PM Martin Mares

Implemented new configuration/reconfiguration interface and defined protocol
state machines. Full explanation will follow soon.

618533af 12/08/1998 06:30 PM Martin Mares

Added source RTS_DUMMY for temporary routes. They should never appear
in the main table.

04925e90 12/07/1998 09:59 PM Martin Mares

Minor rte/rta interface changes:

o  rte can now contain a pointer to both cached and uncached rta. Protocols
which don't need their own attribute caching can now just fill-in a rta,
link it to rte without any calls to attribute cache and call rte_update()...
48b41d58 07/28/1998 09:42 PM Pavel Machek

Do not segfault on iface == NULL.

962ba482 06/17/1998 02:36 PM Martin Mares

Use '%I' instead of dirty address printing hacks.

66e53309 06/04/1998 08:29 PM Martin Mares

Dumping of static attributes implemented.

d9f330c5 06/03/1998 08:40 AM Martin Mares

Protocol hooks. All of them may be NULL.

ed68a5c6 05/26/1998 09:37 PM Martin Mares

Resource pools are now named.

2326b001 05/20/1998 11:54 AM Martin Mares

Added routing table and routing attribute code.