Age | Commit message (Collapse) | Author |
|
On some of my systems rde_shutdown() takes more than 3min doing nothing more
than calling free(3) over and over again.
|
|
OK henning@
|
|
|
|
apparently from Jeff Rizzo <riz@NetBSD.org> via "Thomas E. Spanjaard"
<tgen@netphreax.net>, ok claudio
|
|
marker after a bulk transfer, claudio ok
|
|
and adj-rib-out. Additionally it is now possible to limit the output to a
specified peer. OK henning@
|
|
doesn't handle it correctly. found out the hard way by me :(
Note: This is a clear protocol violation by juniper. Nontheless we need
to be interoperate correctly...
|
|
send an "empty" UPDATE message, used as End-of-RIB marker for implementions
understanding this, ignored by anything else.
see draft-ietf-idr-restart-13.txt, ok claudio
|
|
request use one struct ctl_show_rib_request where all the info is encoded.
OK henning@
|
|
can than select which nexthop should be printed. OK henning@
|
|
This will fix problems with set nexthop on outgoing filters. Found by
gluk@ OK henning@
|
|
cleanup diff from deraadt@.
|
|
attribute cache. Instead remove attribute and readd it after beeing changed.
This should fix the "att_diff: equal attributes encountered" error seen by
Tony Sarendal. OK henning@
|
|
the value on the wire. This solves the backward originator-ids seend by
Tony Sarendal. OK henning@
|
|
to show communites in bgpctl output. Only send these messages if it they are
requested to reduce the overhead for simple listings. Looks good henning@
|
|
Make sure that at least the address family and the prefix length are sane.
Reported and fix tested by Pete Vickers.
|
|
both directions. Manpage update follows. OK henning@
|
|
the fly to the remote AS of the current neighbor. This can be used to
simplify rulesets in a dramatic way -- going from a script based nightmare
down to a handfull rules. jajajaja henning@
|
|
the RIB after a reload so you no longer need to clear sessions because you
modified filters. Looks good henning@.
|
|
table run done later as many filter evaluations can be skipped.
From the softreconfig in tree. Looks good henning@
|
|
of path_update(). There are about 10 different ways how to update a path and
some of them are tricky. Looks good henning@
|
|
as soon as F_ORIGINAL come the counters would no longer be correct and in the
end max-prefix would no longer work. Add additinal counters for F_ORIGINAL
prefixes and bump the correct conter depending on the prefix flags.
OK henning@
|
|
the passed aspath needs to be freed in network_add(). OK henning@
|
|
First step is to define two flags F_LOCAL and F_ORIGINAL. These flags
are used to distinguish prefix in the Local-RIB and those in the Adj-
RIB-In. Adapt prefix API and add additional checks so that no Adj-RIB-
In prefixes get mistakenly selected. Currently no F_ORIGINAL prefixes
are created but this may change soon. Looks good Henning.
|
|
at many different places do it once. This simplifies the logic and makes it
easier to extend it for upcomming Adj-RIB-In addition. OK Henning.
|
|
rde_filter(). Adapt path_update() to this change too. path_update() does
a path_copy before linking the rde_aspath into the RIB. Looks good Henning.
|
|
pointer plus a ref counter to link the attributes to the path object.
Saves +/- 10M on 11 full feeds. Looks good Henning
|
|
that don't need to run if the RDE is quitting e.g. the decision process.
|
|
|
|
Makes the code more obvious.
|
|
|
|
have a separate error function. It is no porblem to call rde_update_err()
directly.
|
|
is better. Discussed on icb.
|
|
attribute" error. While this check is already present in the error handling
function it is not done while parsing. Found via regress, OK henning@
|
|
|
|
RIB -- if it got filtered before so be it.
|
|
pointer so that the size does not grow. Adding 4 bytes to struct prefix would
result in 64MB more memory usage on one of my systems.
|
|
|
|
reconfigure out run is needed or not. If the output filters did not change
no table walk is needed.
|
|
will propagte directly to the neighbors. There is no need to restart bgpd
in that case. Currently not optimal but a good start. "get it in" henning@
|
|
into own functions. Move up_dump_upcall() into rde.c and rename it
rde_up_dump_upcall(). This is needed for the next step.
up_test_update() tests if an update or withdraw is needed and up_generate()
creates the updates. "get it in" henning@ (he is eager on softreconfig out)
|
|
The default filter_sets are converted into match filter rules that get
evaluated first. Simplifies code massively -- mainly the config reload
part -- and makes softreconfig out a piece of cake. "get it in" henning@
|
|
some comments that are totaly wrong. OK henning@
|
|
processing after the MP withdraw block. OK henning@
|
|
|
|
|
|
|
|
the peer where the prefix came from so that prepend-neighbor works.
Extend rde_filter() and make sure that the correct peer is passed.
Until now most cases resulted in a NULL peer causing a nasty crash that
was found by David Ulevitch. OK henning@
|
|
and some more obscure ones. With this is it possible to run IPv6 sessions
between two bgpd.
OK if it does not break IPv4 hummpa barman Henning
|
|
Does not affect IPv4 minimaly tested for IPv6 because we still don't have an
IPv6 capable neighbor. henning@ ya
|