mirror of
https://gitlab.nic.cz/labs/bird.git
synced 2024-12-22 09:41:54 +00:00
Now sending IF_CHANGE_CREATE when a new interface appears and IF_CHANGE_UP
only if it's really up.
This commit is contained in:
parent
236d4eb8ce
commit
620a355a15
@ -193,7 +193,7 @@ if_dump_all(void)
|
|||||||
{
|
{
|
||||||
struct iface *i;
|
struct iface *i;
|
||||||
|
|
||||||
debug("Known network interfaces:\n\n");
|
debug("Known network interfaces:\n");
|
||||||
WALK_LIST(i, iface_list)
|
WALK_LIST(i, iface_list)
|
||||||
if_dump(i);
|
if_dump(i);
|
||||||
debug("\n");
|
debug("\n");
|
||||||
@ -292,7 +292,8 @@ newif:
|
|||||||
memcpy(i, new, sizeof(*i));
|
memcpy(i, new, sizeof(*i));
|
||||||
i->flags |= IF_UPDATED;
|
i->flags |= IF_UPDATED;
|
||||||
add_tail(&iface_list, &i->n);
|
add_tail(&iface_list, &i->n);
|
||||||
if_notify_change(IF_CHANGE_UP | IF_CHANGE_FLAGS | IF_CHANGE_MTU, NULL, i);
|
if_notify_change(IF_CHANGE_CREATE | ((i->flags & IF_UP) ? IF_CHANGE_UP : 0)
|
||||||
|
| IF_CHANGE_FLAGS | IF_CHANGE_MTU, NULL, i);
|
||||||
}
|
}
|
||||||
|
|
||||||
void
|
void
|
||||||
|
@ -44,6 +44,7 @@ struct iface {
|
|||||||
#define IF_CHANGE_DOWN 2
|
#define IF_CHANGE_DOWN 2
|
||||||
#define IF_CHANGE_FLAGS 4 /* Can be converted to down/up internally */
|
#define IF_CHANGE_FLAGS 4 /* Can be converted to down/up internally */
|
||||||
#define IF_CHANGE_MTU 8
|
#define IF_CHANGE_MTU 8
|
||||||
|
#define IF_CHANGE_CREATE 16 /* Seen this interface for the first time */
|
||||||
|
|
||||||
void if_init(void);
|
void if_init(void);
|
||||||
void if_dump(struct iface *);
|
void if_dump(struct iface *);
|
||||||
|
Loading…
Reference in New Issue
Block a user