summaryrefslogtreecommitdiffstats
path: root/sys/netgraph
diff options
context:
space:
mode:
authorfjoe <fjoe@FreeBSD.org>2010-01-09 19:03:48 +0000
committerfjoe <fjoe@FreeBSD.org>2010-01-09 19:03:48 +0000
commit698b0138320a007f2cfeef510ccd43bffbd9411a (patch)
treeaf54b4234bdbe505b86e256438e7e7911b2f66cd /sys/netgraph
parent5a2e2b97d2ace2fcf382252a646ea7d495a53063 (diff)
downloadFreeBSD-src-698b0138320a007f2cfeef510ccd43bffbd9411a.zip
FreeBSD-src-698b0138320a007f2cfeef510ccd43bffbd9411a.tar.gz
Send link state change control messages to "orphans" hook as well.
MFC after: 1 week
Diffstat (limited to 'sys/netgraph')
-rw-r--r--sys/netgraph/ng_ether.c16
1 files changed, 10 insertions, 6 deletions
diff --git a/sys/netgraph/ng_ether.c b/sys/netgraph/ng_ether.c
index fab0622..dc38d41 100644
--- a/sys/netgraph/ng_ether.c
+++ b/sys/netgraph/ng_ether.c
@@ -359,9 +359,6 @@ ng_ether_link_state(struct ifnet *ifp, int state)
struct ng_mesg *msg;
int cmd, dummy_error = 0;
- if (priv->lower == NULL)
- return;
-
if (state == LINK_STATE_UP)
cmd = NGM_LINK_IS_UP;
else if (state == LINK_STATE_DOWN)
@@ -369,9 +366,16 @@ ng_ether_link_state(struct ifnet *ifp, int state)
else
return;
- NG_MKMESSAGE(msg, NGM_FLOW_COOKIE, cmd, 0, M_NOWAIT);
- if (msg != NULL)
- NG_SEND_MSG_HOOK(dummy_error, node, msg, priv->lower, 0);
+ if (priv->lower != NULL) {
+ NG_MKMESSAGE(msg, NGM_FLOW_COOKIE, cmd, 0, M_NOWAIT);
+ if (msg != NULL)
+ NG_SEND_MSG_HOOK(dummy_error, node, msg, priv->lower, 0);
+ }
+ if (priv->orphan != NULL) {
+ NG_MKMESSAGE(msg, NGM_FLOW_COOKIE, cmd, 0, M_NOWAIT);
+ if (msg != NULL)
+ NG_SEND_MSG_HOOK(dummy_error, node, msg, priv->orphan, 0);
+ }
}
/******************************************************************
OpenPOWER on IntegriCloud