Lines Matching defs:fe
170 get_export_dgram(priv_p priv, fib_export_p fe)
174 mtx_lock(&fe->export_mtx);
175 if (fe->exp.item != NULL) {
176 item = fe->exp.item;
177 fe->exp.item = NULL;
179 mtx_unlock(&fe->export_mtx);
204 return_export_dgram(priv_p priv, fib_export_p fe, item_p item, int flags)
212 mtx_lock(&fe->export_mtx);
213 if (fe->exp.item == NULL) {
214 fe->exp.item = item;
215 mtx_unlock(&fe->export_mtx);
217 mtx_unlock(&fe->export_mtx);
218 export_send(priv, fe, item, flags);
227 expire_flow(priv_p priv, fib_export_p fe, struct flow_entry *fle, int flags)
233 exp.item = get_export_dgram(priv, fe);
244 export_send(priv, fe, exp.item, flags);
246 return_export_dgram(priv, fe, exp.item, NG_QUEUE);
250 exp.item9 = get_export9_dgram(priv, fe, &exp.item9_opt);
266 export9_send(priv, fe, exp.item9, exp.item9_opt, flags);
268 return_export9_dgram(priv, fe, exp.item9,
535 fib_export_p fe = priv_to_fib(priv, fib);
539 if (fe != NULL)
542 if ((fe = malloc(sizeof(struct fib_export), M_NETGRAPH,
546 mtx_init(&fe->export_mtx, "export dgram lock", NULL, MTX_DEF);
547 mtx_init(&fe->export9_mtx, "export9 dgram lock", NULL, MTX_DEF);
548 fe->fib = fib;
549 fe->domain_id = fib;
552 (uintptr_t)NULL, (uintptr_t)fe) == 0) {
555 fib, fe, priv_to_fib(priv, fib));
556 mtx_destroy(&fe->export_mtx);
557 mtx_destroy(&fe->export9_mtx);
558 free(fe, M_NETGRAPH);
562 fib, fe, priv_to_fib(priv, fib));
576 fib_export_p fe;
589 fe = priv_to_fib(priv, fle->f.r.fib);
590 expire_flow(priv, fe, fle, NG_QUEUE);
596 fe = priv_to_fib(priv, fle->f.r.fib);
597 expire_flow(priv, fe, fle, NG_QUEUE);
621 if ((fe = priv_to_fib(priv, i)) == NULL)
624 if (fe->exp.item != NULL)
625 export_send(priv, fe, fe->exp.item, NG_QUEUE);
627 if (fe->exp.item9 != NULL)
628 export9_send(priv, fe, fe->exp.item9,
629 fe->exp.item9_opt, NG_QUEUE);
631 mtx_destroy(&fe->export_mtx);
632 mtx_destroy(&fe->export9_mtx);
633 free(fe, M_NETGRAPH);
653 ng_netflow_flow_add(priv_p priv, fib_export_p fe, struct ip *ip,
678 r.fib = fe->fib;
780 ng_netflow_flow6_add(priv_p priv, fib_export_p fe, struct ip6_hdr *ip6,
800 r.fib = fe->fib;
1012 export_send(priv_p priv, fib_export_p fe, item_p item, int flags)
1031 header->engine_id = fe->domain_id;
1033 header->flow_seq = htonl(atomic_fetchadd_32(&fe->flow_seq,