Lines Matching defs:nw

115 	struct snl_writer nw;
124 snl_init_writer(&h->ss, &nw);
125 hdr = snl_create_genl_msg_request(&nw, family_id, cmd);
127 hdr = snl_finalize_msg(&nw);
405 struct snl_writer nw;
413 snl_init_writer(&h->ss, &nw);
414 hdr = snl_create_genl_msg_request(&nw, family_id, PFNL_CMD_GET_STATUS);
417 hdr = snl_finalize_msg(&nw);
1089 snl_add_msg_attr_addr_wrap(struct snl_writer *nw, uint32_t type, const struct pf_addr_wrap *addr)
1093 off = snl_add_msg_attr_nested(nw, type);
1095 snl_add_msg_attr_ip6(nw, PF_AT_ADDR, &addr->v.a.addr.v6);
1096 snl_add_msg_attr_ip6(nw, PF_AT_MASK, &addr->v.a.mask.v6);
1099 snl_add_msg_attr_string(nw, PF_AT_IFNAME, addr->v.ifname);
1101 snl_add_msg_attr_string(nw, PF_AT_TABLENAME, addr->v.tblname);
1102 snl_add_msg_attr_u8(nw, PF_AT_TYPE, addr->type);
1103 snl_add_msg_attr_u8(nw, PF_AT_IFLAGS, addr->iflags);
1105 snl_end_attr_nested(nw, off);
1109 snl_add_msg_attr_rule_addr(struct snl_writer *nw, uint32_t type, const struct pf_rule_addr *addr)
1113 off = snl_add_msg_attr_nested(nw, type);
1115 snl_add_msg_attr_addr_wrap(nw, PF_RAT_ADDR, &addr->addr);
1116 snl_add_msg_attr_u16(nw, PF_RAT_SRC_PORT, addr->port[0]);
1117 snl_add_msg_attr_u16(nw, PF_RAT_DST_PORT, addr->port[1]);
1118 snl_add_msg_attr_u8(nw, PF_RAT_NEG, addr->neg);
1119 snl_add_msg_attr_u8(nw, PF_RAT_OP, addr->port_op);
1121 snl_end_attr_nested(nw, off);
1125 snl_add_msg_attr_rule_labels(struct snl_writer *nw, uint32_t type, const char labels[PF_RULE_MAX_LABEL_COUNT][PF_RULE_LABEL_SIZE])
1129 off = snl_add_msg_attr_nested(nw, type);
1133 snl_add_msg_attr_string(nw, PF_LT_LABEL, labels[i]);
1137 snl_end_attr_nested(nw, off);
1141 snl_add_msg_attr_mape(struct snl_writer *nw, uint32_t type, const struct pf_mape_portset *me)
1145 off = snl_add_msg_attr_nested(nw, type);
1147 snl_add_msg_attr_u8(nw, PF_MET_OFFSET, me->offset);
1148 snl_add_msg_attr_u8(nw, PF_MET_PSID_LEN, me->psidlen);
1149 snl_add_msg_attr_u16(nw, PF_MET_PSID, me->psid);
1151 snl_end_attr_nested(nw, off);
1155 snl_add_msg_attr_rpool(struct snl_writer *nw, uint32_t type, const struct pfctl_pool *pool)
1159 off = snl_add_msg_attr_nested(nw, type);
1161 snl_add_msg_attr(nw, PF_PT_KEY, sizeof(pool->key), &pool->key);
1162 snl_add_msg_attr_ip6(nw, PF_PT_COUNTER, &pool->counter.v6);
1163 snl_add_msg_attr_u32(nw, PF_PT_TBLIDX, pool->tblidx);
1164 snl_add_msg_attr_u16(nw, PF_PT_PROXY_SRC_PORT, pool->proxy_port[0]);
1165 snl_add_msg_attr_u16(nw, PF_PT_PROXY_DST_PORT, pool->proxy_port[1]);
1166 snl_add_msg_attr_u8(nw, PF_PT_OPTS, pool->opts);
1167 snl_add_msg_attr_mape(nw, PF_PT_MAPE, &pool->mape);
1169 snl_end_attr_nested(nw, off);
1173 snl_add_msg_attr_timeouts(struct snl_writer *nw, uint32_t type, const uint32_t *timeouts)
1177 off = snl_add_msg_attr_nested(nw, type);
1180 snl_add_msg_attr_u32(nw, PF_TT_TIMEOUT, timeouts[i]);
1182 snl_end_attr_nested(nw, off);
1186 snl_add_msg_attr_uid(struct snl_writer *nw, uint32_t type, const struct pf_rule_uid *uid)
1190 off = snl_add_msg_attr_nested(nw, type);
1192 snl_add_msg_attr_u32(nw, PF_RUT_UID_LOW, uid->uid[0]);
1193 snl_add_msg_attr_u32(nw, PF_RUT_UID_HIGH, uid->uid[1]);
1194 snl_add_msg_attr_u8(nw, PF_RUT_OP, uid->op);
1196 snl_end_attr_nested(nw, off);
1200 snl_add_msg_attr_pf_rule(struct snl_writer *nw, uint32_t type, const struct pfctl_rule *r)
1204 off = snl_add_msg_attr_nested(nw, type);
1206 snl_add_msg_attr_rule_addr(nw, PF_RT_SRC, &r->src);
1207 snl_add_msg_attr_rule_addr(nw, PF_RT_DST, &r->dst);
1208 snl_add_msg_attr_rule_labels(nw, PF_RT_LABELS, r->label);
1209 snl_add_msg_attr_u32(nw, PF_RT_RIDENTIFIER, r->ridentifier);
1210 snl_add_msg_attr_string(nw, PF_RT_IFNAME, r->ifname);
1211 snl_add_msg_attr_string(nw, PF_RT_QNAME, r->qname);
1212 snl_add_msg_attr_string(nw, PF_RT_PQNAME, r->pqname);
1213 snl_add_msg_attr_string(nw, PF_RT_TAGNAME, r->tagname);
1214 snl_add_msg_attr_string(nw, PF_RT_MATCH_TAGNAME, r->match_tagname);
1215 snl_add_msg_attr_string(nw, PF_RT_OVERLOAD_TBLNAME, r->overload_tblname);
1216 snl_add_msg_attr_rpool(nw, PF_RT_RPOOL, &r->rpool);
1217 snl_add_msg_attr_u32(nw, PF_RT_OS_FINGERPRINT, r->os_fingerprint);
1218 snl_add_msg_attr_u32(nw, PF_RT_RTABLEID, r->rtableid);
1219 snl_add_msg_attr_timeouts(nw, PF_RT_TIMEOUT, r->timeout);
1220 snl_add_msg_attr_u32(nw, PF_RT_MAX_STATES, r->max_states);
1221 snl_add_msg_attr_u32(nw, PF_RT_MAX_SRC_NODES, r->max_src_nodes);
1222 snl_add_msg_attr_u32(nw, PF_RT_MAX_SRC_STATES, r->max_src_states);
1223 snl_add_msg_attr_u32(nw, PF_RT_MAX_SRC_CONN_RATE_LIMIT, r->max_src_conn_rate.limit);
1224 snl_add_msg_attr_u32(nw, PF_RT_MAX_SRC_CONN_RATE_SECS, r->max_src_conn_rate.seconds);
1226 snl_add_msg_attr_u16(nw, PF_RT_DNPIPE, r->dnpipe);
1227 snl_add_msg_attr_u16(nw, PF_RT_DNRPIPE, r->dnrpipe);
1228 snl_add_msg_attr_u32(nw, PF_RT_DNFLAGS, r->free_flags);
1230 snl_add_msg_attr_u32(nw, PF_RT_NR, r->nr);
1231 snl_add_msg_attr_u32(nw, PF_RT_PROB, r->prob);
1232 snl_add_msg_attr_u32(nw, PF_RT_CUID, r->cuid);
1233 snl_add_msg_attr_u32(nw, PF_RT_CPID, r->cpid);
1235 snl_add_msg_attr_u16(nw, PF_RT_RETURN_ICMP, r->return_icmp);
1236 snl_add_msg_attr_u16(nw, PF_RT_RETURN_ICMP6, r->return_icmp6);
1237 snl_add_msg_attr_u16(nw, PF_RT_MAX_MSS, r->max_mss);
1238 snl_add_msg_attr_u16(nw, PF_RT_SCRUB_FLAGS, r->scrub_flags);
1240 snl_add_msg_attr_uid(nw, PF_RT_UID, &r->uid);
1241 snl_add_msg_attr_uid(nw, PF_RT_GID, (const struct pf_rule_uid *)&r->gid);
1243 snl_add_msg_attr_u32(nw, PF_RT_RULE_FLAG, r->rule_flag);
1244 snl_add_msg_attr_u8(nw, PF_RT_ACTION, r->action);
1245 snl_add_msg_attr_u8(nw, PF_RT_DIRECTION, r->direction);
1246 snl_add_msg_attr_u8(nw, PF_RT_LOG, r->log);
1247 snl_add_msg_attr_u8(nw, PF_RT_LOGIF, r->logif);
1248 snl_add_msg_attr_u8(nw, PF_RT_QUICK, r->quick);
1249 snl_add_msg_attr_u8(nw, PF_RT_IF_NOT, r->ifnot);
1250 snl_add_msg_attr_u8(nw, PF_RT_MATCH_TAG_NOT, r->match_tag_not);
1251 snl_add_msg_attr_u8(nw, PF_RT_NATPASS, r->natpass);
1252 snl_add_msg_attr_u8(nw, PF_RT_KEEP_STATE, r->keep_state);
1253 snl_add_msg_attr_u8(nw, PF_RT_AF, r->af);
1254 snl_add_msg_attr_u8(nw, PF_RT_PROTO, r->proto);
1255 snl_add_msg_attr_u8(nw, PF_RT_TYPE, r->type);
1256 snl_add_msg_attr_u8(nw, PF_RT_CODE, r->code);
1257 snl_add_msg_attr_u8(nw, PF_RT_FLAGS, r->flags);
1258 snl_add_msg_attr_u8(nw, PF_RT_FLAGSET, r->flagset);
1259 snl_add_msg_attr_u8(nw, PF_RT_MIN_TTL, r->min_ttl);
1260 snl_add_msg_attr_u8(nw, PF_RT_ALLOW_OPTS, r->allow_opts);
1261 snl_add_msg_attr_u8(nw, PF_RT_RT, r->rt);
1262 snl_add_msg_attr_u8(nw, PF_RT_RETURN_TTL, r->return_ttl);
1263 snl_add_msg_attr_u8(nw, PF_RT_TOS, r->tos);
1264 snl_add_msg_attr_u8(nw, PF_RT_SET_TOS, r->set_tos);
1266 snl_add_msg_attr_u8(nw, PF_RT_ANCHOR_RELATIVE, r->anchor_relative);
1267 snl_add_msg_attr_u8(nw, PF_RT_ANCHOR_WILDCARD, r->anchor_wildcard);
1268 snl_add_msg_attr_u8(nw, PF_RT_FLUSH, r->flush);
1269 snl_add_msg_attr_u8(nw, PF_RT_PRIO, r->prio);
1270 snl_add_msg_attr_u8(nw, PF_RT_SET_PRIO, r->set_prio[0]);
1271 snl_add_msg_attr_u8(nw, PF_RT_SET_PRIO_REPLY, r->set_prio[1]);
1273 snl_add_msg_attr_ip6(nw, PF_RT_DIVERT_ADDRESS, &r->divert.addr.v6);
1274 snl_add_msg_attr_u16(nw, PF_RT_DIVERT_PORT, r->divert.port);
1276 snl_end_attr_nested(nw, off);
1302 struct snl_writer nw;
1312 snl_init_writer(&h->ss, &nw);
1313 hdr = snl_create_genl_msg_request(&nw, family_id, PFNL_CMD_ADDRULE);
1315 snl_add_msg_attr_u32(&nw, PF_ART_TICKET, ticket);
1316 snl_add_msg_attr_u32(&nw, PF_ART_POOL_TICKET, pool_ticket);
1317 snl_add_msg_attr_string(&nw, PF_ART_ANCHOR, anchor);
1318 snl_add_msg_attr_string(&nw, PF_ART_ANCHOR_CALL, anchor_call);
1320 snl_add_msg_attr_pf_rule(&nw, PF_ART_RULE, r);
1322 if ((hdr = snl_finalize_msg(&nw)) == NULL)
1354 struct snl_writer nw;
1362 snl_init_writer(&h->ss, &nw);
1363 hdr = snl_create_genl_msg_request(&nw, family_id, PFNL_CMD_GETRULES);
1366 snl_add_msg_attr_string(&nw, PF_GR_ANCHOR, path);
1367 snl_add_msg_attr_u8(&nw, PF_GR_ACTION, ruleset);
1369 hdr = snl_finalize_msg(&nw);
1659 struct snl_writer nw;
1667 snl_init_writer(&h->ss, &nw);
1668 hdr = snl_create_genl_msg_request(&nw, family_id, PFNL_CMD_GETRULE);
1671 snl_add_msg_attr_string(&nw, PF_GR_ANCHOR, anchor);
1672 snl_add_msg_attr_u8(&nw, PF_GR_ACTION, ruleset);
1673 snl_add_msg_attr_u32(&nw, PF_GR_NR, nr);
1674 snl_add_msg_attr_u32(&nw, PF_GR_TICKET, ticket);
1675 snl_add_msg_attr_u8(&nw, PF_GR_CLEAR, clear);
1677 hdr = snl_finalize_msg(&nw);
1774 struct snl_writer nw;
1779 snl_init_writer(ss, &nw);
1780 hdr = snl_create_genl_msg_request(&nw, family_id, PFNL_CMD_GETCREATORS);
1782 hdr = snl_finalize_msg(&nw);
1914 struct snl_writer nw;
1919 snl_init_writer(ss, &nw);
1920 hdr = snl_create_genl_msg_request(&nw, family_id, PFNL_CMD_GETSTATES);
1922 snl_add_msg_attr_string(&nw, PF_ST_IFNAME, filter->ifname);
1923 snl_add_msg_attr_u16(&nw, PF_ST_PROTO, filter->proto);
1924 snl_add_msg_attr_u8(&nw, PF_ST_AF, filter->af);
1925 snl_add_msg_attr_ip6(&nw, PF_ST_FILTER_ADDR, &filter->addr.v6);
1926 snl_add_msg_attr_ip6(&nw, PF_ST_FILTER_MASK, &filter->mask.v6);
1928 hdr = snl_finalize_msg(&nw);
2035 struct snl_writer nw;
2046 snl_init_writer(&h->ss, &nw);
2047 hdr = snl_create_genl_msg_request(&nw, family_id, cmd);
2050 snl_add_msg_attr_u64(&nw, PF_CS_CMP_ID, kill->cmp.id);
2051 snl_add_msg_attr_u32(&nw, PF_CS_CMP_CREATORID, htonl(kill->cmp.creatorid));
2052 snl_add_msg_attr_u8(&nw, PF_CS_CMP_DIR, kill->cmp.direction);
2053 snl_add_msg_attr_u8(&nw, PF_CS_AF, kill->af);
2054 snl_add_msg_attr_u8(&nw, PF_CS_PROTO, kill->proto);
2055 snl_add_msg_attr_rule_addr(&nw, PF_CS_SRC, &kill->src);
2056 snl_add_msg_attr_rule_addr(&nw, PF_CS_DST, &kill->dst);
2057 snl_add_msg_attr_rule_addr(&nw, PF_CS_RT_ADDR, &kill->rt_addr);
2058 snl_add_msg_attr_string(&nw, PF_CS_IFNAME, kill->ifname);
2059 snl_add_msg_attr_string(&nw, PF_CS_LABEL, kill->label);
2060 snl_add_msg_attr_bool(&nw, PF_CS_KILL_MATCH, kill->kill_match);
2061 snl_add_msg_attr_bool(&nw, PF_CS_NAT, kill->nat);
2063 if ((hdr = snl_finalize_msg(&nw)) == NULL)
2410 struct snl_writer nw;
2420 snl_init_writer(&h->ss, &nw);
2421 hdr = snl_create_genl_msg_request(&nw, family_id, PFNL_CMD_SET_STATUSIF);
2423 snl_add_msg_attr_string(&nw, PF_SS_IFNAME, ifname);
2425 if ((hdr = snl_finalize_msg(&nw)) == NULL)
2456 struct snl_writer nw;
2466 snl_init_writer(&h->ss, &nw);
2467 hdr = snl_create_genl_msg_request(&nw, family_id, PFNL_CMD_NATLOOK);
2470 snl_add_msg_attr_u8(&nw, PF_NL_AF, k->af);
2471 snl_add_msg_attr_u8(&nw, PF_NL_DIRECTION, k->direction);
2472 snl_add_msg_attr_u8(&nw, PF_NL_PROTO, k->proto);
2473 snl_add_msg_attr_ip6(&nw, PF_NL_SRC_ADDR, &k->saddr.v6);
2474 snl_add_msg_attr_ip6(&nw, PF_NL_DST_ADDR, &k->daddr.v6);
2475 snl_add_msg_attr_u16(&nw, PF_NL_SRC_PORT, k->sport);
2476 snl_add_msg_attr_u16(&nw, PF_NL_DST_PORT, k->dport);
2478 if ((hdr = snl_finalize_msg(&nw)) == NULL)
2497 struct snl_writer nw;
2507 snl_init_writer(&h->ss, &nw);
2508 hdr = snl_create_genl_msg_request(&nw, family_id, PFNL_CMD_SET_DEBUG);
2510 snl_add_msg_attr_u32(&nw, PF_SD_LEVEL, level);
2512 if ((hdr = snl_finalize_msg(&nw)) == NULL)
2529 struct snl_writer nw;
2539 snl_init_writer(&h->ss, &nw);
2540 hdr = snl_create_genl_msg_request(&nw, family_id, PFNL_CMD_SET_TIMEOUT);
2542 snl_add_msg_attr_u32(&nw, PF_TO_TIMEOUT, timeout);
2543 snl_add_msg_attr_u32(&nw, PF_TO_SECONDS, seconds);
2545 if ((hdr = snl_finalize_msg(&nw)) == NULL)
2573 struct snl_writer nw;
2584 snl_init_writer(&h->ss, &nw);
2585 hdr = snl_create_genl_msg_request(&nw, family_id, PFNL_CMD_GET_TIMEOUT);
2588 snl_add_msg_attr_u32(&nw, PF_TO_TIMEOUT, timeout);
2590 if ((hdr = snl_finalize_msg(&nw)) == NULL)
2612 struct snl_writer nw;
2622 snl_init_writer(&h->ss, &nw);
2623 hdr = snl_create_genl_msg_request(&nw, family_id, PFNL_CMD_SET_LIMIT);
2625 snl_add_msg_attr_u32(&nw, PF_LI_INDEX, index);
2626 snl_add_msg_attr_u32(&nw, PF_LI_LIMIT, limit);
2628 if ((hdr = snl_finalize_msg(&nw)) == NULL)
2656 struct snl_writer nw;
2667 snl_init_writer(&h->ss, &nw);
2668 hdr = snl_create_genl_msg_request(&nw, family_id, PFNL_CMD_GET_LIMIT);
2671 snl_add_msg_attr_u32(&nw, PF_LI_INDEX, index);
2673 if ((hdr = snl_finalize_msg(&nw)) == NULL)
2706 struct snl_writer nw;
2717 snl_init_writer(&h->ss, &nw);
2718 hdr = snl_create_genl_msg_request(&nw, family_id, PFNL_CMD_BEGIN_ADDRS);
2721 if ((hdr = snl_finalize_msg(&nw)) == NULL)