Lines Matching full:lower
36 * The node has two hooks, upper and lower. Traffic flowing from upper to
37 * lower hook is referenced as downstream, and vice versa. Parameters for
101 struct hookinfo lower; member
278 bzero(&priv->lower, sizeof(priv->lower)); in ngp_newhook()
279 priv->lower.hook = hook; in ngp_newhook()
280 NG_HOOK_SET_PRIVATE(hook, &priv->lower); in ngp_newhook()
324 bcopy(&priv->lower.stats, &stats->upstream, in ngp_rcvmsg()
330 bzero(&priv->lower.stats, in ngp_rcvmsg()
331 sizeof(priv->lower.stats)); in ngp_rcvmsg()
343 bcopy(&priv->lower.run, &run->upstream, in ngp_rcvmsg()
355 bcopy(&priv->lower.cfg, &cfg->upstream, in ngp_rcvmsg()
382 priv->lower.cfg.bandwidth = 0; in ngp_rcvmsg()
387 priv->lower.cfg.bandwidth = cfg->bandwidth; in ngp_rcvmsg()
407 priv->lower.cfg.ber == 1; in ngp_rcvmsg()
410 parse_cfg(&priv->lower.cfg, &cfg->upstream, in ngp_rcvmsg()
411 &priv->lower, priv); in ngp_rcvmsg()
413 priv->lower.cfg.ber == 1; in ngp_rcvmsg()
421 if (priv->lower.hook != NULL) { in ngp_rcvmsg()
426 flow_msg, priv->lower.hook, in ngp_rcvmsg()
608 if (hinfo == &priv->lower) in ngp_rcvdata()
611 dest = &priv->lower; in ngp_rcvdata()
748 if (hinfo == &priv->lower) in pipe_dequeue()
751 dest = &priv->lower; in pipe_dequeue()
916 if (priv->lower.hook != NULL) in ngp_callout()
917 pipe_dequeue(&priv->lower, &now); in ngp_callout()
923 * This is tricky. If we have both a lower and upper hook, then we
935 if (priv->lower.hook && priv->upper.hook) in ngp_shutdown()
936 ng_bypass(priv->lower.hook, priv->upper.hook); in ngp_shutdown()
940 if (priv->lower.hook != NULL) in ngp_shutdown()
941 ng_rmhook_self(priv->lower.hook); in ngp_shutdown()
987 if (priv->upper.hook == NULL && priv->lower.hook == NULL) in ngp_disconnect()