mirror of
https://gitlab.nic.cz/labs/bird.git
synced 2024-12-23 10:11:53 +00:00
Merge commit 'a9fc659b840e13323aa43e92eb8f39ceb19b5ed6' into integrated
Conflicts: proto/rip/rip.c
This commit is contained in:
commit
92fd1fc02f
@ -670,7 +670,8 @@ This argument can be omitted if there exists only a single instance.
|
|||||||
Show the list of symbols defined in the configuration (names of protocols, routing tables etc.).
|
Show the list of symbols defined in the configuration (names of protocols, routing tables etc.).
|
||||||
|
|
||||||
<tag>show route [[for] <m/prefix/|<m/IP/] [table <m/sym/] [filter <m/f/|where <m/c/] [(export|preexport) <m/p/] [protocol <m/p/] [<m/options/]</tag>
|
<tag>show route [[for] <m/prefix/|<m/IP/] [table <m/sym/] [filter <m/f/|where <m/c/] [(export|preexport) <m/p/] [protocol <m/p/] [<m/options/]</tag>
|
||||||
Show contents of a routing table (by default of the main one),
|
Show contents of a routing table (by default of the main one or
|
||||||
|
the table attached to a respective protocol),
|
||||||
that is routes, their metrics and (in case the <cf/all/ switch is given)
|
that is routes, their metrics and (in case the <cf/all/ switch is given)
|
||||||
all their attributes.
|
all their attributes.
|
||||||
|
|
||||||
|
@ -434,7 +434,6 @@ r_args:
|
|||||||
$$ = cfg_allocz(sizeof(struct rt_show_data));
|
$$ = cfg_allocz(sizeof(struct rt_show_data));
|
||||||
$$->pxlen = 256;
|
$$->pxlen = 256;
|
||||||
$$->filter = FILTER_ACCEPT;
|
$$->filter = FILTER_ACCEPT;
|
||||||
$$->table = config->master_rtc->table;
|
|
||||||
}
|
}
|
||||||
| r_args prefix {
|
| r_args prefix {
|
||||||
$$ = $1;
|
$$ = $1;
|
||||||
|
@ -2285,6 +2285,11 @@ rt_show(struct rt_show_data *d)
|
|||||||
{
|
{
|
||||||
net *n;
|
net *n;
|
||||||
|
|
||||||
|
/* Default is either a master table or a table related to a respective protocol */
|
||||||
|
if ((!d->table) && d->export_protocol) d->table = d->export_protocol->table;
|
||||||
|
if ((!d->table) && d->show_protocol) d->table = d->show_protocol->table;
|
||||||
|
if (!d->table) d->table = config->master_rtc->table;
|
||||||
|
|
||||||
if (d->pxlen == 256)
|
if (d->pxlen == 256)
|
||||||
{
|
{
|
||||||
FIB_ITERATE_INIT(&d->fit, &d->table->fib);
|
FIB_ITERATE_INIT(&d->fit, &d->table->fib);
|
||||||
|
@ -6,10 +6,10 @@
|
|||||||
*
|
*
|
||||||
* Can be freely distributed and used under the terms of the GNU GPL.
|
* Can be freely distributed and used under the terms of the GNU GPL.
|
||||||
*
|
*
|
||||||
FIXME: IpV6 support: packet size
|
FIXME: IPv6 support: packet size
|
||||||
FIXME: (nonurgent) IPv6 support: receive "route using" blocks
|
FIXME: (nonurgent) IPv6 support: receive "route using" blocks
|
||||||
FIXME: (nonurgent) IPv6 support: generate "nexthop" blocks
|
FIXME: (nonurgent) IPv6 support: generate "nexthop" blocks
|
||||||
next hops are only advisory, and they are pretty ugly in IpV6.
|
next hops are only advisory, and they are pretty ugly in IPv6.
|
||||||
I suggest just forgetting about them.
|
I suggest just forgetting about them.
|
||||||
|
|
||||||
FIXME: (nonurgent): fold rip_connection into rip_interface?
|
FIXME: (nonurgent): fold rip_connection into rip_interface?
|
||||||
@ -46,6 +46,7 @@
|
|||||||
*/
|
*/
|
||||||
|
|
||||||
#undef LOCAL_DEBUG
|
#undef LOCAL_DEBUG
|
||||||
|
#define LOCAL_DEBUG 1
|
||||||
|
|
||||||
#include "nest/bird.h"
|
#include "nest/bird.h"
|
||||||
#include "nest/iface.h"
|
#include "nest/iface.h"
|
||||||
@ -532,13 +533,10 @@ rip_timer(timer *t)
|
|||||||
WALK_LIST_DELSAFE( e, et, P->garbage ) {
|
WALK_LIST_DELSAFE( e, et, P->garbage ) {
|
||||||
rte *rte;
|
rte *rte;
|
||||||
rte = SKIP_BACK( struct rte, u.rip.garbage, e );
|
rte = SKIP_BACK( struct rte, u.rip.garbage, e );
|
||||||
#ifdef LOCAL_DEBUG
|
|
||||||
{
|
|
||||||
struct proto *p = rte->attrs->proto;
|
|
||||||
CHK_MAGIC;
|
CHK_MAGIC;
|
||||||
}
|
|
||||||
DBG( "Garbage: (%p)", rte ); rte_dump( rte );
|
DBG( "Garbage: (%p)", rte ); rte_dump( rte );
|
||||||
#endif
|
|
||||||
|
|
||||||
if (now - rte->lastmod > P_CF->timeout_time) {
|
if (now - rte->lastmod > P_CF->timeout_time) {
|
||||||
TRACE(D_EVENTS, "entry is too old: %I", rte->net->n.prefix );
|
TRACE(D_EVENTS, "entry is too old: %I", rte->net->n.prefix );
|
||||||
|
Loading…
Reference in New Issue
Block a user