Lines Matching refs:sa

147 fill_ipsec_param(struct ipsec_sa *sa)  in fill_ipsec_param()  argument
149 struct rte_ipsec_sa_prm *prm = &sa->sa_prm; in fill_ipsec_param()
153 prm->flags = sa->sa_flags; in fill_ipsec_param()
156 prm->ipsec_xform = sa->ipsec_xform; in fill_ipsec_param()
158 prm->ipsec_xform.replay_win_sz = sa->replay_win_sz; in fill_ipsec_param()
165 if (sa->type == RTE_CRYPTO_SYM_XFORM_AEAD) { in fill_ipsec_param()
166 sa->aead_xform.type = sa->type; in fill_ipsec_param()
167 sa->aead_xform.aead.algo = aead_algo->algo; in fill_ipsec_param()
168 sa->aead_xform.next = NULL; in fill_ipsec_param()
169 sa->aead_xform.aead.digest_length = aead_algo->digest_len; in fill_ipsec_param()
170 sa->aead_xform.aead.iv.offset = IV_OFFSET; in fill_ipsec_param()
171 sa->aead_xform.aead.iv.length = 12; in fill_ipsec_param()
173 if (sa->ipsec_xform.direction == in fill_ipsec_param()
175 sa->aead_xform.aead.op = RTE_CRYPTO_AEAD_OP_DECRYPT; in fill_ipsec_param()
177 sa->aead_xform.aead.op = RTE_CRYPTO_AEAD_OP_ENCRYPT; in fill_ipsec_param()
180 sa->crypto_xforms = &sa->aead_xform; in fill_ipsec_param()
182 sa->cipher_xform.type = RTE_CRYPTO_SYM_XFORM_CIPHER; in fill_ipsec_param()
183 sa->cipher_xform.cipher.algo = cipher_algo->algo; in fill_ipsec_param()
184 sa->cipher_xform.cipher.iv.offset = IV_OFFSET; in fill_ipsec_param()
185 sa->cipher_xform.cipher.iv.length = 12; in fill_ipsec_param()
186 sa->auth_xform.type = RTE_CRYPTO_SYM_XFORM_AUTH; in fill_ipsec_param()
187 sa->auth_xform.auth.algo = auth_algo->algo; in fill_ipsec_param()
188 sa->auth_xform.auth.digest_length = auth_algo->digest_len; in fill_ipsec_param()
191 if (sa->ipsec_xform.direction == in fill_ipsec_param()
193 sa->cipher_xform.cipher.op = in fill_ipsec_param()
195 sa->auth_xform.auth.op = RTE_CRYPTO_AUTH_OP_VERIFY; in fill_ipsec_param()
196 sa->cipher_xform.next = NULL; in fill_ipsec_param()
197 sa->auth_xform.next = &sa->cipher_xform; in fill_ipsec_param()
198 sa->crypto_xforms = &sa->auth_xform; in fill_ipsec_param()
200 sa->cipher_xform.cipher.op = in fill_ipsec_param()
202 sa->auth_xform.auth.op = RTE_CRYPTO_AUTH_OP_GENERATE; in fill_ipsec_param()
203 sa->auth_xform.next = NULL; in fill_ipsec_param()
204 sa->cipher_xform.next = &sa->auth_xform; in fill_ipsec_param()
205 sa->crypto_xforms = &sa->cipher_xform; in fill_ipsec_param()
209 prm->crypto_xform = sa->crypto_xforms; in fill_ipsec_param()
216 struct ipsec_sa *sa) in create_sa() argument
222 memset(&sa->ss[0], 0, sizeof(sa->ss[0])); in create_sa()
224 rc = fill_ipsec_param(sa); in create_sa()
230 sz = rte_ipsec_sa_size(&sa->sa_prm); in create_sa()
233 sa->ss[0].sa = rte_zmalloc(NULL, sz, RTE_CACHE_LINE_SIZE); in create_sa()
234 TEST_ASSERT_NOT_NULL(sa->ss[0].sa, in create_sa()
237 sa->ss[0].type = action_type; in create_sa()
238 sa->ss[0].crypto.ses = &dummy_ses; in create_sa()
240 rc = rte_ipsec_sa_init(sa->ss[0].sa, &sa->sa_prm, sz); in create_sa()
244 rc = rte_ipsec_session_prepare(&sa->ss[0]); in create_sa()
252 packet_prepare(struct rte_mbuf **buf, struct ipsec_sa *sa, in packet_prepare() argument
260 sa->cop[i] = rte_crypto_op_alloc(cop_pool, in packet_prepare()
263 if (sa->cop[i] == NULL) { in packet_prepare()
274 k = rte_ipsec_pkt_crypto_prepare(&sa->ss[0], buf, in packet_prepare()
275 sa->cop, num_pkts); in packet_prepare()
284 sa->cnt.prepare_ticks_elapsed += time_stamp; in packet_prepare()
285 sa->cnt.nb_prepare_call++; in packet_prepare()
286 sa->cnt.nb_prepare_pkt += k; in packet_prepare()
289 rte_crypto_op_free(sa->cop[i]); in packet_prepare()
295 packet_process(struct rte_mbuf **buf, struct ipsec_sa *sa, in packet_process() argument
303 k = rte_ipsec_pkt_process(&sa->ss[0], buf, num_pkts); in packet_process()
312 sa->cnt.process_ticks_elapsed += time_stamp; in packet_process()
313 sa->cnt.nb_process_call++; in packet_process()
314 sa->cnt.nb_process_pkt += k; in packet_process()
320 create_traffic(struct ipsec_sa *sa, struct rte_ring *deq_ring, in create_traffic() argument
334 n = packet_prepare(mbuf, sa, num_pkts); in create_traffic()
354 n = packet_process(mbuf, sa, num_pkts); in create_traffic()
369 struct ipsec_sa *sa) in fill_ipsec_sa_out() argument
371 sa->ipsec_xform.spi = DEFAULT_SPI; in fill_ipsec_sa_out()
372 sa->ipsec_xform.direction = RTE_SECURITY_IPSEC_SA_DIR_EGRESS; in fill_ipsec_sa_out()
373 sa->ipsec_xform.proto = RTE_SECURITY_IPSEC_SA_PROTO_ESP; in fill_ipsec_sa_out()
374 sa->ipsec_xform.mode = RTE_SECURITY_IPSEC_SA_MODE_TUNNEL; in fill_ipsec_sa_out()
375 sa->ipsec_xform.tunnel.type = RTE_SECURITY_IPSEC_TUNNEL_IPV4; in fill_ipsec_sa_out()
376 sa->ipsec_xform.options.esn = test_cfg->esn; in fill_ipsec_sa_out()
377 sa->type = test_cfg->type; in fill_ipsec_sa_out()
378 sa->replay_win_sz = test_cfg->replay_win_sz; in fill_ipsec_sa_out()
379 sa->sa_flags = test_cfg->flags; in fill_ipsec_sa_out()
380 sa->cnt.nb_prepare_call = 0; in fill_ipsec_sa_out()
381 sa->cnt.nb_prepare_pkt = 0; in fill_ipsec_sa_out()
382 sa->cnt.nb_process_call = 0; in fill_ipsec_sa_out()
383 sa->cnt.nb_process_pkt = 0; in fill_ipsec_sa_out()
384 sa->cnt.process_ticks_elapsed = 0; in fill_ipsec_sa_out()
385 sa->cnt.prepare_ticks_elapsed = 0; in fill_ipsec_sa_out()
391 struct ipsec_sa *sa) in fill_ipsec_sa_in() argument
393 sa->ipsec_xform.spi = DEFAULT_SPI; in fill_ipsec_sa_in()
394 sa->ipsec_xform.direction = RTE_SECURITY_IPSEC_SA_DIR_INGRESS; in fill_ipsec_sa_in()
395 sa->ipsec_xform.proto = RTE_SECURITY_IPSEC_SA_PROTO_ESP; in fill_ipsec_sa_in()
396 sa->ipsec_xform.mode = RTE_SECURITY_IPSEC_SA_MODE_TUNNEL; in fill_ipsec_sa_in()
397 sa->ipsec_xform.tunnel.type = RTE_SECURITY_IPSEC_TUNNEL_IPV4; in fill_ipsec_sa_in()
398 sa->ipsec_xform.options.esn = test_cfg->esn; in fill_ipsec_sa_in()
399 sa->type = test_cfg->type; in fill_ipsec_sa_in()
400 sa->replay_win_sz = test_cfg->replay_win_sz; in fill_ipsec_sa_in()
401 sa->sa_flags = test_cfg->flags; in fill_ipsec_sa_in()
402 sa->cnt.nb_prepare_call = 0; in fill_ipsec_sa_in()
403 sa->cnt.nb_prepare_pkt = 0; in fill_ipsec_sa_in()
404 sa->cnt.nb_process_call = 0; in fill_ipsec_sa_in()
405 sa->cnt.nb_process_pkt = 0; in fill_ipsec_sa_in()
406 sa->cnt.process_ticks_elapsed = 0; in fill_ipsec_sa_in()
407 sa->cnt.prepare_ticks_elapsed = 0; in fill_ipsec_sa_in()