MCPcopy Create free account
hub / github.com/F-Stack/f-stack / __test_lookup_basic

Function __test_lookup_basic

dpdk/app/test/test_ipsec_sad.c:345–396  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

343}
344
345static int32_t
346__test_lookup_basic(int ipv6, union rte_ipsec_sad_key *tuple,
347 union rte_ipsec_sad_key *tuple_1)
348{
349 int status;
350 struct rte_ipsec_sad *sad = NULL;
351 struct rte_ipsec_sad_conf config;
352 const union rte_ipsec_sad_key *key_arr[] = {tuple};
353
354 uint64_t tmp;
355 void *sa[1];
356
357 config.max_sa[RTE_IPSEC_SAD_SPI_ONLY] = MAX_SA;
358 config.max_sa[RTE_IPSEC_SAD_SPI_DIP] = MAX_SA;
359 config.max_sa[RTE_IPSEC_SAD_SPI_DIP_SIP] = MAX_SA;
360 config.socket_id = SOCKET_ID_ANY;
361 config.flags = 0;
362 if (ipv6)
363 config.flags = RTE_IPSEC_SAD_FLAG_IPV6;
364
365 sad = rte_ipsec_sad_create(__func__, &config);
366 RTE_TEST_ASSERT_NOT_NULL(sad, "Failed to create SAD\n");
367
368 status = rte_ipsec_sad_lookup(sad, key_arr, sa, 1);
369 RTE_TEST_ASSERT((status == 0) && (sa[0] == NULL),
370 "Lookup returns an unexpected result\n");
371
372 sa[0] = &tmp;
373 status = rte_ipsec_sad_add(sad, tuple, RTE_IPSEC_SAD_SPI_ONLY, sa[0]);
374 RTE_TEST_ASSERT(status == 0, "Failed to add a rule\n");
375
376 status = rte_ipsec_sad_lookup(sad, key_arr, sa, 1);
377 RTE_TEST_ASSERT((status == 1) && (sa[0] == &tmp),
378 "Lookup returns an unexpected result\n");
379
380 key_arr[0] = tuple_1;
381 status = rte_ipsec_sad_lookup(sad, key_arr, sa, 1);
382 RTE_TEST_ASSERT((status == 1) && (sa[0] == &tmp),
383 "Lookup returns an unexpected result\n");
384 key_arr[0] = tuple;
385
386 status = rte_ipsec_sad_del(sad, tuple, RTE_IPSEC_SAD_SPI_ONLY);
387 RTE_TEST_ASSERT(status == 0, "Failed to delete a rule\n");
388
389 status = rte_ipsec_sad_lookup(sad, key_arr, sa, 1);
390 RTE_TEST_ASSERT((status == 0) && (sa[0] == NULL),
391 "Lookup returns an unexpected result\n");
392
393 rte_ipsec_sad_destroy(sad);
394
395 return TEST_SUCCESS;
396}
397
398/*
399 * Lookup missing key, then add it as RTE_IPSEC_SAD_SPI_ONLY, lookup it again,

Callers 1

test_lookup_basicFunction · 0.85

Calls 5

rte_ipsec_sad_createFunction · 0.85
rte_ipsec_sad_lookupFunction · 0.85
rte_ipsec_sad_addFunction · 0.85
rte_ipsec_sad_delFunction · 0.85
rte_ipsec_sad_destroyFunction · 0.85

Tested by

no test coverage detected