| 614 | } |
| 615 | |
| 616 | int |
| 617 | main(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 | } |
nothing calls this directly
no test coverage detected