Lines Matching defs:nat
572 if (natset && !dnvlist_get_bool(rule_nvl, "nat-rule", false)) {
577 nvlist_add_bool(rule_nvl, "nat-ruleset", natset);
597 nvlist_add_bool(rule_nvl, "nat-ruleset", natset);
614 nvlist_add_bool(rule_nvl, "nat-ruleset", natset);
631 nvlist_add_bool(rule_nvl, "nat-ruleset", natset);
893 nvlist_add_bool(req, "nat-ruleset", natset);
1000 * NAT INTERFACE.
1013 /* Create a rule for NAT policy. Next, will add NAT data. */
1023 nvlist_add_bool(rule_dict, "nat-rule", true);
1030 nvlist_append_nvlist_array(ncf->ncf_dict, "nat", nt->rule_dict);
1040 return _npf_rule_iterate1(ncf, "nat", iter, &level);
1047 if (!_npf_add_addr(nt->rule_dict, "nat-addr", af, addr)) {
1050 nvlist_add_number(nt->rule_dict, "nat-mask", (uint32_t)mask);
1058 nvlist_add_number(nt->rule_dict, "nat-port", port);
1068 nvlist_add_number(nt->rule_dict, "nat-table-id", tid);
1075 nvlist_add_number(nt->rule_dict, "nat-algo", algo);
1106 return dnvlist_get_number(nt->rule_dict, "nat-algo", 0);
1114 if (nvlist_exists(nt->rule_dict, "nat-addr")) {
1115 data = nvlist_get_binary(nt->rule_dict, "nat-addr", alen);
1116 *mask = nvlist_get_number(nt->rule_dict, "nat-mask");
1128 return (uint16_t)dnvlist_get_number(nt->rule_dict, "nat-port", 0);
1134 return dnvlist_get_number(nt->rule_dict, "nat-table-id", 0);
1373 * CONNECTION / NAT ENTRY INTERFACE.
1388 const nvlist_t *nat;
1431 * Get the NAT entry and extract the translated pair.
1433 if ((nat = dnvlist_get_nvlist(resp, "nat", NULL)) == NULL) {
1437 if (_npf_get_addr(nat, "oaddr", addr[0]) == 0 ||
1438 _npf_get_addr(nat, "taddr", addr[1]) == 0) {
1442 port[0] = ntohs(nvlist_get_number(nat, "oport"));
1443 port[1] = ntohs(nvlist_get_number(nat, "tport"));
1497 if ((nat_nv = dnvlist_get_nvlist(conn, "nat", NULL)) != NULL) {