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

Function __test_lookup_order

dpdk/app/test/test_ipsec_sad.c:688–841  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

686
687
688static int32_t
689__test_lookup_order(int ipv6, union rte_ipsec_sad_key *tuple,
690 union rte_ipsec_sad_key *tuple_1, union rte_ipsec_sad_key *tuple_2)
691{
692 int status;
693 struct rte_ipsec_sad *sad = NULL;
694 struct rte_ipsec_sad_conf config;
695 const union rte_ipsec_sad_key *key_arr[] = {tuple, tuple_1, tuple_2,};
696 uint64_t tmp1, tmp2, tmp3;
697 void *install_sa;
698 void *sa[3];
699
700 config.max_sa[RTE_IPSEC_SAD_SPI_ONLY] = MAX_SA;
701 config.max_sa[RTE_IPSEC_SAD_SPI_DIP] = MAX_SA;
702 config.max_sa[RTE_IPSEC_SAD_SPI_DIP_SIP] = MAX_SA;
703 config.socket_id = SOCKET_ID_ANY;
704 config.flags = 0;
705 if (ipv6)
706 config.flags = RTE_IPSEC_SAD_FLAG_IPV6;
707 sad = rte_ipsec_sad_create(__func__, &config);
708 RTE_TEST_ASSERT_NOT_NULL(sad, "Failed to create SAD\n");
709
710 /* install RTE_IPSEC_SAD_SPI_ONLY */
711 install_sa = &tmp1;
712 status = rte_ipsec_sad_add(sad, tuple,
713 RTE_IPSEC_SAD_SPI_ONLY, install_sa);
714 RTE_TEST_ASSERT(status == 0, "Failed to add a rule\n");
715
716 status = rte_ipsec_sad_lookup(sad, key_arr, sa, 3);
717 RTE_TEST_ASSERT(status == 3, "Lookup returns an unexpected result\n");
718 RTE_TEST_ASSERT(sa[0] == &tmp1,
719 "Lookup returns an unexpected result\n");
720 RTE_TEST_ASSERT(sa[1] == &tmp1,
721 "Lookup returns an unexpected result\n");
722 RTE_TEST_ASSERT(sa[2] == &tmp1,
723 "Lookup returns an unexpected result\n");
724
725 /* add RTE_IPSEC_SAD_SPI_DIP */
726 install_sa = &tmp2;
727 status = rte_ipsec_sad_add(sad, tuple,
728 RTE_IPSEC_SAD_SPI_DIP, install_sa);
729 RTE_TEST_ASSERT(status == 0, "Failed to add a rule\n");
730
731 status = rte_ipsec_sad_lookup(sad, key_arr, sa, 3);
732 RTE_TEST_ASSERT(status == 3, "Lookup returns an unexpected result\n");
733 RTE_TEST_ASSERT(sa[0] == &tmp2,
734 "Lookup returns an unexpected result\n");
735 RTE_TEST_ASSERT(sa[1] == &tmp2,
736 "Lookup returns an unexpected result\n");
737 RTE_TEST_ASSERT(sa[2] == &tmp1,
738 "Lookup returns an unexpected result\n");
739
740 /* add RTE_IPSEC_SAD_SPI_DIP_SIP */
741 install_sa = &tmp3;
742 status = rte_ipsec_sad_add(sad, tuple,
743 RTE_IPSEC_SAD_SPI_DIP_SIP, install_sa);
744 RTE_TEST_ASSERT(status == 0, "Failed to add a rule\n");
745

Callers 1

test_lookup_orderFunction · 0.85

Calls 5

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

Tested by

no test coverage detected