Age | Commit message (Collapse) | Author |
|
OpenBGPD and GoBGP dump so that it works with all the MRT implementations
out there supporting this.
While there do some additional minor cleanup.
OK deraadt@
|
|
To work properly also a neighbor needs to be selected. The assumption
here is that the peer will use the same path-id for the same peer
accross all its routes. The RFC does not require this and it is valid
to assign path-ids randomly. The path-id only matters for one specific
path but most BGP implementations seem to assign the same path-id to
multiple routes when originated from the same source.
OK benno@
|
|
This may help to spot encoding errors a bit more easily.
|
|
|
|
add-path information will be dumped properly.
There is one bit where this implementation is not in line with the RFC.
The encoding of DUMP_V2_RIB_GENERIC_ADDPATH for non IPv4 or IPv6 prefixes
is implemented the way gobgp did it (which seems to be the only other BGP
implementation that supports generic encoding). The RFC puts the path_id
in the NLRI for generic encoding instead of adding it to RIB entry struct
like in the IPv4 and IPv6 encoding. This is an open discussion point with
the RFC author.
OK benno@
|
|
|
|
OK claudio@
|
|
route refresh capabilities in the neighbor output.
|
|
spot. Noticed and diff provided by Paul de Weerd.
|
|
|
|
the various JSON object that have time values.
OK benno@
|
|
capabilities" for a session. Especially the multiprotocol capability
can confuse because both sides need to allow a protocol to enable it.
The JSON code dumps all the capabilities for local, remote and negotiated.
OK denis@, sthen@
|
|
incorrect. Adjust output->attr() to take a reqflag argument instead of
a struct parse_result pointer since that is the only bit needed.
Found by and OK procter@, OK deraadt@
|
|
ok claudio@
|
|
OK job@
|
|
reject AS_SET segments. In bgpctl this is always off.
OK benno@
|
|
OK denis@
|
|
and prefix-sets loaded into bgpd.
OK benno@
|
|
|
|
|
|
NULL so there is no need to change action in those cases. This was used some
time ago by the show rib code.
OK kn@, sthen@, benno@, deraadt@
|
|
OK benno@ phessler@
|
|
to be more generic, then change 'reload' to take take a '[reason]' also,
which will be logged by bgpd.
ok kn claudio
|
|
cast in the printf to unsigned long long or just use unsigned long long
from the start. In this case it is better to switch the type. Similar
changes had been done before.
OK deraadt@
|
|
Also include the group name in the general neighbor description.
Both issues reported by Patrick Velder
OK deraadt@
|
|
|
|
the output structures may still change but it should be a good starting
point for poeple to start playing with it.
OK benno@, job@, deraadt@
|
|
about the flags of the attribute. Part of the JSON output diff.
OK job@, benno@, deraadt@
|
|
can be changed easily. This will be used later on to add JSON output.
OK benno@, job@, deraadt@
|
|
values only if the session is established or show it unconditonally (for
shutdown message and last notficiation error codes. Adjust show_attr()
a bit, print ORIGIN as string and add support for AID_VPN_IPv6.
General add some warning if length checks fail.
OK job@, benno@, deraadt@ as part of a bigger diff
|
|
Rewrite some functions to return a string instead of calling printf directly.
OK benno@
|
|
count. Also show the max-prefix out limit if one is set.
OK job@
|
|
ok tedu
|
|
With this the last notfication causing a session teardown will be shown
in bgpctl show neighbor output.
OK denis@ deraadt@
|
|
With this suberrors of cease will be reported which is very helpful.
OK denis@ deraadt@
|
|
for error reporting.
ok benno
|
|
now relative only last_updown, last_read and lastwrite are still based
on CLOCK_MONOTONIC.
OK denis@
|
|
Currently this needs a bit of a hack because fmt_timeframe()
does not really print a timeframe but instead needs a timestamp
relative to now. This needs to be adjusted but will be done later.
|
|
OK benno@
|
|
printing negative time frames (caused by jumping the system clock back
in time).
OK benno@
|
|
show_rib_detail() and show_rib_brief() functions.
OK benno@
|
|
was passed to each function and output happened based on the imsg type.
Now show() will look at the imsg and based on the type call the right
function to output this type. Because of this every show function is now
only displaying one specific object.
OK benno@
|
|
|
|
Reminded by denis@
|
|
header printing into show_head() and printing of the data into
show(), these are now the only entrypoints where data is printed.
OK denis@
|
|
OK benno@
|
|
instead of mentioning the limit, remove it. bgpctl will properly error
out if the reason is too long.
OK job@ sthen@
|
|
8.8.8.8. Additionally add 'or-longer' as an alias for 'all'.
OK job@ sthen@
|
|
ok deraadt@ claudio@
|
|
"bgpctl sh nei group XX terse". feedback benno@ ok claudio@
|