This patchset enhances functionality of ip_pipeline application. New config file syntax is introduced, so parser is changed. Changed structure of the application. Now every global variable is stored in app_struct in app.h. Syntax of pipeline cli commands was changed. Implementation of cli commands for every pipeline is moved to the separate file.
Changes in v2: - renamed some files - added more config files - reworked flow classification pipeline implementation - fixed some bugs Daniel Mrzyglod (1): ip_pipeline: added new implementation of firewall pipeline Jasvinder Singh (3): ip_pipeline: added config checks ip_pipeline: added master pipeline ip_pipeline: added new implementation of passthrough pipeline Maciej Gajdzica (5): ip_pipeline: modified init to match new params struct ip_pipeline: moved pipelines to separate folder ip_pipeline: added application thread ip_pipeline: moved config files to separate folder ip_pipeline: added new implementation of flow classification pipeline Pawel Wodkowski (2): ip_pipeline: add parsing for config files with new syntax ip_pipeline: added new implementation of routing pipeline examples/ip_pipeline/Makefile | 36 +- examples/ip_pipeline/app.h | 850 ++++++++ examples/ip_pipeline/cmdline.c | 1976 ----------------- examples/ip_pipeline/config.c | 419 ---- examples/ip_pipeline/config/fc_ipv4_5tuple.cfg | 23 + examples/ip_pipeline/config/fc_ipv4_5tuple.sh | 9 + examples/ip_pipeline/config/fc_ipv6_5tuple.cfg | 23 + examples/ip_pipeline/config/fc_ipv6_5tuple.sh | 8 + examples/ip_pipeline/config/fc_qinq.cfg | 23 + examples/ip_pipeline/config/fc_qinq.sh | 8 + examples/ip_pipeline/config/fw.cfg | 11 + examples/ip_pipeline/config/fw.sh | 13 + examples/ip_pipeline/config/ip_pipeline.cfg | 9 + examples/ip_pipeline/config/ip_pipeline.sh | 5 + examples/ip_pipeline/config/pt1.cfg | 9 + examples/ip_pipeline/config/pt2.cfg | 15 + examples/ip_pipeline/config/pt3.cfg | 21 + examples/ip_pipeline/config/rt.cfg | 13 + examples/ip_pipeline/config/rt.sh | 18 + examples/ip_pipeline/config/test.cfg | 164 ++ examples/ip_pipeline/config/test.sh | 6 + examples/ip_pipeline/config/tm_profile.cfg | 105 + examples/ip_pipeline/config_check.c | 387 ++++ examples/ip_pipeline/config_parse.c | 2272 ++++++++++++++++++++ examples/ip_pipeline/config_parse_tm.c | 373 ++++ examples/ip_pipeline/cpu_core_map.c | 465 ++++ examples/ip_pipeline/cpu_core_map.h | 69 + examples/ip_pipeline/init.c | 1563 ++++++++++---- examples/ip_pipeline/ip_pipeline.cfg | 56 - examples/ip_pipeline/ip_pipeline.sh | 18 - examples/ip_pipeline/main.c | 137 +- examples/ip_pipeline/main.h | 298 --- examples/ip_pipeline/pipeline.h | 87 + examples/ip_pipeline/pipeline/hash_func.h | 351 +++ .../ip_pipeline/pipeline/pipeline_actions_common.h | 119 + examples/ip_pipeline/pipeline/pipeline_common_be.c | 204 ++ examples/ip_pipeline/pipeline/pipeline_common_be.h | 161 ++ examples/ip_pipeline/pipeline/pipeline_common_fe.c | 1283 +++++++++++ examples/ip_pipeline/pipeline/pipeline_common_fe.h | 248 +++ examples/ip_pipeline/pipeline/pipeline_firewall.c | 960 +++++++++ examples/ip_pipeline/pipeline/pipeline_firewall.h | 63 + .../ip_pipeline/pipeline/pipeline_firewall_be.c | 701 ++++++ .../ip_pipeline/pipeline/pipeline_firewall_be.h | 138 ++ .../pipeline/pipeline_flow_classification.c | 1927 +++++++++++++++++ .../pipeline/pipeline_flow_classification.h | 106 + .../pipeline/pipeline_flow_classification_be.c | 569 +++++ .../pipeline/pipeline_flow_classification_be.h | 140 ++ examples/ip_pipeline/pipeline/pipeline_master.c | 47 + examples/ip_pipeline/pipeline/pipeline_master.h | 41 + examples/ip_pipeline/pipeline/pipeline_master_be.c | 146 ++ examples/ip_pipeline/pipeline/pipeline_master_be.h | 41 + .../ip_pipeline/pipeline/pipeline_passthrough.c | 47 + .../ip_pipeline/pipeline/pipeline_passthrough.h | 41 + .../ip_pipeline/pipeline/pipeline_passthrough_be.c | 741 +++++++ .../ip_pipeline/pipeline/pipeline_passthrough_be.h | 41 + examples/ip_pipeline/pipeline/pipeline_routing.c | 1537 +++++++++++++ examples/ip_pipeline/pipeline/pipeline_routing.h | 99 + .../ip_pipeline/pipeline/pipeline_routing_be.c | 836 +++++++ .../ip_pipeline/pipeline/pipeline_routing_be.h | 230 ++ examples/ip_pipeline/pipeline_be.h | 253 +++ examples/ip_pipeline/pipeline_firewall.c | 313 --- .../ip_pipeline/pipeline_flow_classification.c | 306 --- examples/ip_pipeline/pipeline_ipv4_frag.c | 184 -- examples/ip_pipeline/pipeline_ipv4_ras.c | 181 -- examples/ip_pipeline/pipeline_passthrough.c | 213 -- examples/ip_pipeline/pipeline_routing.c | 474 ---- examples/ip_pipeline/pipeline_rx.c | 385 ---- examples/ip_pipeline/pipeline_tx.c | 283 --- examples/ip_pipeline/thread.c | 105 + 69 files changed, 17332 insertions(+), 5671 deletions(-) create mode 100644 examples/ip_pipeline/app.h delete mode 100644 examples/ip_pipeline/cmdline.c delete mode 100644 examples/ip_pipeline/config.c create mode 100644 examples/ip_pipeline/config/fc_ipv4_5tuple.cfg create mode 100644 examples/ip_pipeline/config/fc_ipv4_5tuple.sh create mode 100644 examples/ip_pipeline/config/fc_ipv6_5tuple.cfg create mode 100644 examples/ip_pipeline/config/fc_ipv6_5tuple.sh create mode 100644 examples/ip_pipeline/config/fc_qinq.cfg create mode 100644 examples/ip_pipeline/config/fc_qinq.sh create mode 100644 examples/ip_pipeline/config/fw.cfg create mode 100644 examples/ip_pipeline/config/fw.sh create mode 100644 examples/ip_pipeline/config/ip_pipeline.cfg create mode 100644 examples/ip_pipeline/config/ip_pipeline.sh create mode 100644 examples/ip_pipeline/config/pt1.cfg create mode 100644 examples/ip_pipeline/config/pt2.cfg create mode 100644 examples/ip_pipeline/config/pt3.cfg create mode 100644 examples/ip_pipeline/config/rt.cfg create mode 100644 examples/ip_pipeline/config/rt.sh create mode 100644 examples/ip_pipeline/config/test.cfg create mode 100644 examples/ip_pipeline/config/test.sh create mode 100644 examples/ip_pipeline/config/tm_profile.cfg create mode 100644 examples/ip_pipeline/config_check.c create mode 100644 examples/ip_pipeline/config_parse.c create mode 100644 examples/ip_pipeline/config_parse_tm.c create mode 100644 examples/ip_pipeline/cpu_core_map.c create mode 100644 examples/ip_pipeline/cpu_core_map.h delete mode 100644 examples/ip_pipeline/ip_pipeline.cfg delete mode 100644 examples/ip_pipeline/ip_pipeline.sh delete mode 100644 examples/ip_pipeline/main.h create mode 100644 examples/ip_pipeline/pipeline.h create mode 100644 examples/ip_pipeline/pipeline/hash_func.h create mode 100644 examples/ip_pipeline/pipeline/pipeline_actions_common.h create mode 100644 examples/ip_pipeline/pipeline/pipeline_common_be.c create mode 100644 examples/ip_pipeline/pipeline/pipeline_common_be.h create mode 100644 examples/ip_pipeline/pipeline/pipeline_common_fe.c create mode 100644 examples/ip_pipeline/pipeline/pipeline_common_fe.h create mode 100644 examples/ip_pipeline/pipeline/pipeline_firewall.c create mode 100644 examples/ip_pipeline/pipeline/pipeline_firewall.h create mode 100644 examples/ip_pipeline/pipeline/pipeline_firewall_be.c create mode 100644 examples/ip_pipeline/pipeline/pipeline_firewall_be.h create mode 100644 examples/ip_pipeline/pipeline/pipeline_flow_classification.c create mode 100644 examples/ip_pipeline/pipeline/pipeline_flow_classification.h create mode 100644 examples/ip_pipeline/pipeline/pipeline_flow_classification_be.c create mode 100644 examples/ip_pipeline/pipeline/pipeline_flow_classification_be.h create mode 100644 examples/ip_pipeline/pipeline/pipeline_master.c create mode 100644 examples/ip_pipeline/pipeline/pipeline_master.h create mode 100644 examples/ip_pipeline/pipeline/pipeline_master_be.c create mode 100644 examples/ip_pipeline/pipeline/pipeline_master_be.h create mode 100644 examples/ip_pipeline/pipeline/pipeline_passthrough.c create mode 100644 examples/ip_pipeline/pipeline/pipeline_passthrough.h create mode 100644 examples/ip_pipeline/pipeline/pipeline_passthrough_be.c create mode 100644 examples/ip_pipeline/pipeline/pipeline_passthrough_be.h create mode 100644 examples/ip_pipeline/pipeline/pipeline_routing.c create mode 100644 examples/ip_pipeline/pipeline/pipeline_routing.h create mode 100644 examples/ip_pipeline/pipeline/pipeline_routing_be.c create mode 100644 examples/ip_pipeline/pipeline/pipeline_routing_be.h create mode 100644 examples/ip_pipeline/pipeline_be.h delete mode 100644 examples/ip_pipeline/pipeline_firewall.c delete mode 100644 examples/ip_pipeline/pipeline_flow_classification.c delete mode 100644 examples/ip_pipeline/pipeline_ipv4_frag.c delete mode 100644 examples/ip_pipeline/pipeline_ipv4_ras.c delete mode 100644 examples/ip_pipeline/pipeline_passthrough.c delete mode 100644 examples/ip_pipeline/pipeline_routing.c delete mode 100644 examples/ip_pipeline/pipeline_rx.c delete mode 100644 examples/ip_pipeline/pipeline_tx.c create mode 100644 examples/ip_pipeline/thread.c -- 1.7.9.5