On Tue, Jul 3, 2018 at 7:26 PM Paul Oranje <p...@oranjevos.nl> wrote: > > Curious: what purposes or use-cases are intended to be served with this event > ? Please don't top post
The interface event IFEV_CREATE can be used by external applications or netifd internal subsystems to trigger specific logic when an interface is created; patch http://patchwork.ozlabs.org/patch/937167/ makes use of this event Hans > > > > Op 29 jun. 2018, om 16:14 heeft Hans Dedecker <dedec...@gmail.com> het > > volgende geschreven: > > > > On Fri, Jun 29, 2018 at 5:23 AM Alexander Couzens <lyn...@fe80.eu> wrote: > >> > >> "create" will be called before the proto handlers initialised. > > Acked-by: Hans Dedecker <dedec...@gmail.com> > >> --- > >> interface-event.c | 1 + > >> interface.c | 1 + > >> interface.h | 2 ++ > >> 3 files changed, 4 insertions(+) > >> diff --git a/interface-event.c b/interface-event.c > >> index 86e8f5488da8..a40f6dc883d3 100644 > >> --- a/interface-event.c > >> +++ b/interface-event.c > >> @@ -38,6 +38,7 @@ static const char * const eventnames[] = { > >> [IFEV_FREE] = "free", > >> [IFEV_RELOAD] = "reload", > >> [IFEV_LINK_UP] = "iflink", > >> + [IFEV_CREATE] = "create", > >> }; > >> > >> static void > >> diff --git a/interface.c b/interface.c > >> index 2a23984922a1..400c605efc0c 100644 > >> --- a/interface.c > >> +++ b/interface.c > >> @@ -1275,6 +1275,7 @@ interface_update(struct vlist_tree *tree, struct > >> vlist_node *node_new, > >> set_config_state(if_old, IFC_REMOVE); > >> } else if (node_new) { > >> D(INTERFACE, "Create interface '%s'\n", if_new->name); > >> + interface_event(if_new, IFEV_CREATE); > >> proto_init_interface(if_new, if_new->config); > >> interface_claim_device(if_new); > >> netifd_ubus_add_interface(if_new); > >> diff --git a/interface.h b/interface.h > >> index 0e58f69c26e0..e5639eb326cd 100644 > >> --- a/interface.h > >> +++ b/interface.h > >> @@ -28,6 +28,8 @@ enum interface_event { > >> IFEV_FREE, > >> IFEV_RELOAD, > >> IFEV_LINK_UP, > >> + /* send when a new interface created. This is before proto > >> handlers has been attached. */ > >> + IFEV_CREATE, > >> }; > >> > >> enum interface_state { > >> -- > >> 2.18.0 > >> > > > > _______________________________________________ > > openwrt-devel mailing list > > openwrt-devel@lists.openwrt.org > > https://lists.openwrt.org/mailman/listinfo/openwrt-devel > _______________________________________________ openwrt-devel mailing list openwrt-devel@lists.openwrt.org https://lists.openwrt.org/mailman/listinfo/openwrt-devel