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

Function main

dpdk/app/test-sad/main.c:616–672  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

614}
615
616int
617main(int argc, char **argv)
618{
619 int ret;
620 struct rte_ipsec_sad *sad;
621 struct rte_ipsec_sad_conf conf = {0};
622 unsigned int lcore_id;
623
624 ret = rte_eal_init(argc, argv);
625 if (ret < 0)
626 rte_panic("Cannot init EAL\n");
627
628 argc -= ret;
629 argv += ret;
630
631 config.prgname = argv[0];
632
633 parse_opts(argc, argv);
634 tbl_init(&rules_tbl, &config.nb_rules, config.rules_file, 1);
635 tbl_init(&tuples_tbl, &config.nb_tuples, config.tuples_file, 0);
636 if (config.rules_file != NULL) {
637 config.fract_32 = (100 * config.nb_rules_32) / config.nb_rules;
638 config.fract_64 = (100 * config.nb_rules_64) / config.nb_rules;
639 config.fract_96 = (100 * config.nb_rules_96) / config.nb_rules;
640 }
641 if (config.tuples_file != NULL) {
642 config.fract_rnd_tuples = 0;
643 config.nb_tuples_rnd = 0;
644 }
645 conf.socket_id = -1;
646 conf.max_sa[RTE_IPSEC_SAD_SPI_ONLY] = config.nb_rules_32 * 5 / 4;
647 conf.max_sa[RTE_IPSEC_SAD_SPI_DIP] = config.nb_rules_64 * 5 / 4;
648 conf.max_sa[RTE_IPSEC_SAD_SPI_DIP_SIP] = config.nb_rules_96 * 5 / 4;
649 if (config.ipv6)
650 conf.flags |= RTE_IPSEC_SAD_FLAG_IPV6;
651 if (config.concurrent_rw)
652 conf.flags |= RTE_IPSEC_SAD_FLAG_RW_CONCURRENCY;
653 sad = rte_ipsec_sad_create("test", &conf);
654 if (sad == NULL)
655 rte_exit(-rte_errno, "can not allocate SAD table\n");
656
657 print_config();
658
659 add_rules(sad, 10);
660 if (config.parallel_lookup)
661 rte_eal_mp_remote_launch(lookup, sad, SKIP_MAIN);
662
663 lookup(sad);
664 if (config.parallel_lookup)
665 RTE_LCORE_FOREACH_WORKER(lcore_id)
666 if (rte_eal_wait_lcore(lcore_id) < 0)
667 return -1;
668
669 del_rules(sad, 10);
670
671 return 0;
672}

Callers

nothing calls this directly

Calls 12

tbl_initFunction · 0.85
rte_ipsec_sad_createFunction · 0.85
rte_exitFunction · 0.85
rte_eal_mp_remote_launchFunction · 0.85
RTE_LCORE_FOREACH_WORKERFunction · 0.85
rte_eal_wait_lcoreFunction · 0.85
parse_optsFunction · 0.70
print_configFunction · 0.70
add_rulesFunction · 0.70
lookupFunction · 0.70
del_rulesFunction · 0.70
rte_eal_initFunction · 0.50

Tested by

no test coverage detected