Lines Matching refs:mtag
2403 struct m_tag *mtag;
2416 mtag = m_tag_get(PACKET_TAG_PF,
2418 if (mtag == NULL) {
2425 m_tag_prepend(m, mtag);
2426 at = (struct pf_mtag *)(mtag + 1);
2552 struct m_tag *mtag;
2556 mtag = m_tag_locate(m, MTAG_IPFW, tag, NULL);
2559 * present. And we must remove this mtag from
2562 * Otherwise we should allocate new mtag and
2566 if (mtag != NULL)
2567 m_tag_delete(m, mtag);
2570 if (mtag == NULL) {
2571 mtag = m_tag_alloc( MTAG_IPFW,
2573 if (mtag != NULL)
2574 m_tag_prepend(m, mtag);
2643 struct m_tag *mtag;
2653 for (mtag = m_tag_first(m);
2654 mtag != NULL && !match;
2655 mtag = m_tag_next(m, mtag)) {
2659 if (mtag->m_tag_cookie != MTAG_IPFW)
2666 mtag->m_tag_id >= p[0] &&
2667 mtag->m_tag_id <= p[1];
2853 struct m_tag *mtag;
2863 mtag = m_tag_first(m);
2864 while (mtag != NULL) {
2865 if (mtag->m_tag_cookie ==
2868 mtag = m_tag_next(m, mtag);
2870 if (mtag == NULL && IS_CALL) {
2871 mtag = m_tag_alloc(MTAG_IPFW_CALL, 0,
2874 if (mtag != NULL)
2875 m_tag_prepend(m, mtag);
2882 if (IS_RETURN && (mtag == NULL ||
2883 mtag->m_tag_id == 0)) {
2887 if (IS_CALL && (mtag == NULL ||
2888 mtag->m_tag_id >= IPFW_CALLSTACK_SIZE)) {
2896 stack = (uint16_t *)(mtag + 1);
2907 stack[mtag->m_tag_id] = f->rulenum;
2908 mtag->m_tag_id++;
2912 mtag->m_tag_id--;
2913 jmpto = stack[mtag->m_tag_id] + 1;