From: Juliana Fajardini Date: Thu, 24 Feb 2022 19:31:44 +0000 (+0000) Subject: createst: add arg for setting midstream true X-Git-Tag: suricata-6.0.9~17 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=c06f32f471d6ad7f91f1cb5b6c6cf20602c83bcf;p=thirdparty%2Fsuricata-verify.git createst: add arg for setting midstream true With this, one can pass '--midstream' and this will add that as a test argument and write it to test.yaml. Default is still midstream false. --- diff --git a/README.md b/README.md index 25933051b..6732c8158 100644 --- a/README.md +++ b/README.md @@ -159,6 +159,7 @@ This needs to be run from a valid Suricata source directory. usage: createst.py [-h] [--output-path ] [--eventtype-only] [--allow-events [ALLOW_EVENTS]] [--rules ] [--strictcsums] [--min-version ] + [--midstream] Create tests with a given PCAP. Execute the script from a valid Suricata source @@ -186,6 +187,7 @@ optional arguments: --strictcsums Strictly validate checksum --min-version Adds a global minimum required version + --midstream Allow midstream session pickups ``` ### Examples diff --git a/createst.py b/createst.py index d7f84235e..bc484ac7f 100755 --- a/createst.py +++ b/createst.py @@ -141,14 +141,21 @@ def write_to_file(data): sys.exit(1) with open(test_yaml_path, "w+") as fp: fp.write("# *** Add configuration here ***\n\n") - if not args["strictcsums"]: - fp.write("args:\n- -k none\n\n") if check_requires(): fp.write("requires:\n") if args["min_version"]: fp.write(" min-version: %s\n\n" % args["min_version"]) if args["add_version"]: fp.write(" version: %s\n\n" % args["add_version"]) + suricata_args = [] + if not args["strictcsums"]: + suricata_args.append("-k none") + if args["midstream"]: + suricata_args.append("--set stream.midstream=true") + if suricata_args: + fp.write("args:\n") + fp.write("\n".join(["- {}".format(a) for a in suricata_args])) + fp.write("\n\n") fp.write(data) def check_requires(): @@ -357,6 +364,8 @@ def parse_args(): help="Create filter blocks for the specified events") parser.add_argument("--strictcsums", default=None, action="store_true", help="Strictly validate checksum") + parser.add_argument("--midstream", default=False, action="store_true", + help="Allow midstream session pickups") parser.add_argument("--min-version", default=None, metavar="", help="Adds a global minimum required version") parser.add_argument("--add-version", default=None, metavar="", @@ -404,6 +413,8 @@ def generate_eve(): if not args["strictcsums"]: largs += ["-k", "none"] + if args["midstream"]: + largs += ["--set", "stream.midstream=true"] p = subprocess.Popen( largs, cwd=cwd, env=env, stdout=subprocess.PIPE, stderr=subprocess.PIPE)