Lines Matching defs:node

46  * ng_ether(4) netgraph node type
79 /* Per-node private data */
109 static int ng_ether_rcv_lower(hook_p node, item_p item);
110 static int ng_ether_rcv_upper(hook_p node, item_p item);
112 /* Netgraph node methods */
248 const node_p node = IFP2NG(ifp);
249 const priv_p priv = NG_NODE_PRIVATE(node);
265 const node_p node = IFP2NG(ifp);
266 const priv_p priv = NG_NODE_PRIVATE(node);
284 const node_p node = IFP2NG(ifp);
285 const priv_p priv = NG_NODE_PRIVATE(node);
301 * Create a new node for it, etc.
308 node_p node;
311 * Do not create / attach an ether node to this ifnet if
312 * a netgraph node with the same name already exists.
317 if ((node = ng_name2noderef(NULL, ifp->if_xname)) != NULL) {
318 NG_NODE_UNREF(node);
322 /* Create node */
323 KASSERT(!IFP2NG(ifp), ("%s: node already exists?", __func__));
324 if (ng_make_node_common(&ng_ether_typestruct, &node) != 0) {
326 __func__, "create node", ifp->if_xname);
335 NG_NODE_UNREF(node);
338 NG_NODE_SET_PRIVATE(node, priv);
340 IFP2NG(ifp) = node;
343 /* Try to give the node the same name as the interface */
345 if (ng_name_node(node, name) != 0)
346 log(LOG_WARNING, "%s: can't name node %s\n", __func__, name);
351 * REALLY Destroy its node.
356 const node_p node = IFP2NG(ifp);
357 const priv_p priv = NG_NODE_PRIVATE(node);
360 NG_NODE_REALLY_DIE(node); /* Force real removal of node */
368 ng_rmnode_self(node); /* remove all netgraph parts */
378 const node_p node = IFP2NG(ifp);
379 const priv_p priv = NG_NODE_PRIVATE(node);
393 NG_SEND_MSG_HOOK(dummy_error, node, msg, priv->lower, 0);
398 NG_SEND_MSG_HOOK(dummy_error, node, msg, priv->orphan, 0);
414 node_p node;
424 node = IFP2NG(ifp);
425 if (node == NULL)
428 /* Try to give the node the same name as the new interface name */
430 if (ng_name_node(node, name) != 0)
431 log(LOG_WARNING, "%s: can't re-name node %s\n", __func__, name);
439 * It is not possible or allowable to create a node of this type.
441 * this node type's KLD is loaded).
444 ng_ether_constructor(node_p node)
453 ng_ether_newhook(node_p node, hook_p hook, const char *name)
455 const priv_p priv = NG_NODE_PRIVATE(node);
493 ng_ether_rcvmsg(node_p node, item_p item, hook_p lasthook)
495 const priv_p priv = NG_NODE_PRIVATE(node);
642 NG_RESPOND_MSG(error, node, item, resp);
666 const node_p node = NG_HOOK_NODE(hook);
667 const priv_p priv = NG_NODE_PRIVATE(node);
715 const node_p node = NG_HOOK_NODE(hook);
716 const priv_p priv = NG_NODE_PRIVATE(node);
746 * Shutdown node. This resets the node but does not remove it
750 ng_ether_shutdown(node_p node)
752 const priv_p priv = NG_NODE_PRIVATE(node);
754 if (node->nd_flags & NGF_REALLY_DIE) {
761 NG_NODE_SET_PRIVATE(node, NULL);
763 NG_NODE_UNREF(node); /* free node itself */
770 NG_NODE_REVIVE(node); /* Signal ng_rmnode we are persisant */
795 ng_rmnode_self(NG_HOOK_NODE(hook)); /* reset node */
804 * Handle loading and unloading for this node type.