Lines Matching refs:pol

1938 parse_ipsecrequests(struct xfrm_policy *xp, struct sadb_x_policy *pol)  in parse_ipsecrequests()  argument
1941 int len = pol->sadb_x_policy_len*8 - sizeof(struct sadb_x_policy); in parse_ipsecrequests()
1942 struct sadb_x_ipsecrequest *rq = (void*)(pol+1); in parse_ipsecrequests()
1944 if (pol->sadb_x_policy_len * 8 < sizeof(struct sadb_x_policy)) in parse_ipsecrequests()
2009 struct sadb_x_policy *pol; in pfkey_xfrm_policy2msg() local
2085 pol = (struct sadb_x_policy *) skb_put(skb, sizeof(struct sadb_x_policy)); in pfkey_xfrm_policy2msg()
2086 pol->sadb_x_policy_len = sizeof(struct sadb_x_policy)/sizeof(uint64_t); in pfkey_xfrm_policy2msg()
2087 pol->sadb_x_policy_exttype = SADB_X_EXT_POLICY; in pfkey_xfrm_policy2msg()
2088 pol->sadb_x_policy_type = IPSEC_POLICY_DISCARD; in pfkey_xfrm_policy2msg()
2091 pol->sadb_x_policy_type = IPSEC_POLICY_IPSEC; in pfkey_xfrm_policy2msg()
2093 pol->sadb_x_policy_type = IPSEC_POLICY_NONE; in pfkey_xfrm_policy2msg()
2095 pol->sadb_x_policy_dir = dir+1; in pfkey_xfrm_policy2msg()
2096 pol->sadb_x_policy_reserved = 0; in pfkey_xfrm_policy2msg()
2097 pol->sadb_x_policy_id = xp->index; in pfkey_xfrm_policy2msg()
2098 pol->sadb_x_policy_priority = xp->priority; in pfkey_xfrm_policy2msg()
2114 pol->sadb_x_policy_len += req_size/8; in pfkey_xfrm_policy2msg()
2194 struct sadb_x_policy *pol; in pfkey_spdadd() local
2204 pol = ext_hdrs[SADB_X_EXT_POLICY-1]; in pfkey_spdadd()
2205 if (pol->sadb_x_policy_type > IPSEC_POLICY_IPSEC) in pfkey_spdadd()
2207 if (!pol->sadb_x_policy_dir || pol->sadb_x_policy_dir >= IPSEC_DIR_MAX) in pfkey_spdadd()
2214 xp->action = (pol->sadb_x_policy_type == IPSEC_POLICY_DISCARD ? in pfkey_spdadd()
2216 xp->priority = pol->sadb_x_policy_priority; in pfkey_spdadd()
2273 if (pol->sadb_x_policy_type == IPSEC_POLICY_IPSEC && in pfkey_spdadd()
2274 (err = parse_ipsecrequests(xp, pol)) < 0) in pfkey_spdadd()
2277 err = xfrm_policy_insert(pol->sadb_x_policy_dir-1, xp, in pfkey_spdadd()
2293 km_policy_notify(xp, pol->sadb_x_policy_dir-1, &c); in pfkey_spdadd()
2308 struct sadb_x_policy *pol; in pfkey_spddelete() local
2320 pol = ext_hdrs[SADB_X_EXT_POLICY-1]; in pfkey_spddelete()
2321 if (!pol->sadb_x_policy_dir || pol->sadb_x_policy_dir >= IPSEC_DIR_MAX) in pfkey_spddelete()
2356 pol->sadb_x_policy_dir - 1, &sel, pol_ctx, in pfkey_spddelete()
2371 km_policy_notify(xp, pol->sadb_x_policy_dir-1, &c); in pfkey_spddelete()
2494 struct sadb_x_policy *pol; in pfkey_migrate() local
2509 pol = ext_hdrs[SADB_X_EXT_POLICY - 1]; in pfkey_migrate()
2511 if (pol->sadb_x_policy_dir >= IPSEC_DIR_MAX) { in pfkey_migrate()
2528 dir = pol->sadb_x_policy_dir - 1; in pfkey_migrate()
2549 rq = (struct sadb_x_ipsecrequest *)(pol + 1); in pfkey_migrate()
2553 len = pol->sadb_x_policy_len * 8 - sizeof(struct sadb_x_policy); in pfkey_migrate()
2592 struct sadb_x_policy *pol; in pfkey_spdget() local
2596 if ((pol = ext_hdrs[SADB_X_EXT_POLICY-1]) == NULL) in pfkey_spdget()
2599 dir = xfrm_policy_id2dir(pol->sadb_x_policy_id); in pfkey_spdget()
2605 dir, pol->sadb_x_policy_id, delete, &err); in pfkey_spdget()
3083 struct sadb_x_policy *pol; in pfkey_send_acquire() local
3155 pol = (struct sadb_x_policy *) skb_put(skb, sizeof(struct sadb_x_policy)); in pfkey_send_acquire()
3156 pol->sadb_x_policy_len = sizeof(struct sadb_x_policy)/sizeof(uint64_t); in pfkey_send_acquire()
3157 pol->sadb_x_policy_exttype = SADB_X_EXT_POLICY; in pfkey_send_acquire()
3158 pol->sadb_x_policy_type = IPSEC_POLICY_IPSEC; in pfkey_send_acquire()
3159 pol->sadb_x_policy_dir = XFRM_POLICY_OUT + 1; in pfkey_send_acquire()
3160 pol->sadb_x_policy_reserved = 0; in pfkey_send_acquire()
3161 pol->sadb_x_policy_id = xp->index; in pfkey_send_acquire()
3162 pol->sadb_x_policy_priority = xp->priority; in pfkey_send_acquire()
3192 struct sadb_x_policy *pol = (struct sadb_x_policy*)data; in pfkey_compile_policy() local
3218 pol->sadb_x_policy_len*8 > len || in pfkey_compile_policy()
3219 pol->sadb_x_policy_type > IPSEC_POLICY_BYPASS || in pfkey_compile_policy()
3220 (!pol->sadb_x_policy_dir || pol->sadb_x_policy_dir > IPSEC_DIR_OUTBOUND)) in pfkey_compile_policy()
3229 xp->action = (pol->sadb_x_policy_type == IPSEC_POLICY_DISCARD ? in pfkey_compile_policy()
3239 if (pol->sadb_x_policy_type == IPSEC_POLICY_IPSEC && in pfkey_compile_policy()
3240 (*dir = parse_ipsecrequests(xp, pol)) < 0) in pfkey_compile_policy()
3244 if (len >= (pol->sadb_x_policy_len*8 + in pfkey_compile_policy()
3246 char *p = (char *)pol; in pfkey_compile_policy()
3249 p += pol->sadb_x_policy_len*8; in pfkey_compile_policy()
3251 if (len < pol->sadb_x_policy_len*8 + in pfkey_compile_policy()
3266 *dir = pol->sadb_x_policy_dir-1; in pfkey_compile_policy()
3483 struct sadb_x_policy *pol; in pfkey_send_migrate() local
3545 pol = (struct sadb_x_policy *)skb_put(skb, sizeof(struct sadb_x_policy)); in pfkey_send_migrate()
3546 pol->sadb_x_policy_len = size_pol / 8; in pfkey_send_migrate()
3547 pol->sadb_x_policy_exttype = SADB_X_EXT_POLICY; in pfkey_send_migrate()
3548 pol->sadb_x_policy_type = IPSEC_POLICY_IPSEC; in pfkey_send_migrate()
3549 pol->sadb_x_policy_dir = dir + 1; in pfkey_send_migrate()
3550 pol->sadb_x_policy_reserved = 0; in pfkey_send_migrate()
3551 pol->sadb_x_policy_id = 0; in pfkey_send_migrate()
3552 pol->sadb_x_policy_priority = 0; in pfkey_send_migrate()