From nobody Mon Feb 19 00:38:08 2024 X-Original-To: dev-commits-ports-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4TdNtS4wn6z5CBGX; Mon, 19 Feb 2024 00:38:08 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4TdNtS4L3yz4Y4Y; Mon, 19 Feb 2024 00:38:08 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1708303088; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=uEToWSZkKd1fSqF6Zqdme/sN07GHScTK4zx28UF92TA=; b=I+/61AH28qoprOZM9ovnnJYzCuTmb97UbIE/jz+kRZHA69+aLjCoz0SvCBAIBQz1fYJRSH gf5uMHVXBxmVokxu6Ee/GGr8ttgpUy5eQXUOhbrbDYLtIiB7Jqd4lcBIxTqCSqh+T3frjj Bm5lAPTkLdY2kZ3mhC42/nlblznnmEzli1fWJFa1zWXO+D4eLyLOmE08nrGcFfp2KaYPwg rx/bi8YzVWh0yGit5amNrrUmEqVAzucAC/BHcfu5kJx3YdaCG1hbVrfdOHXCfeOJrxhTd1 vFHPS7J6LaXaEDCuL4x08MNogtC0CuQXn9KV/GvsnzmrDrGohFnyRILzIYPNKQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1708303088; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=uEToWSZkKd1fSqF6Zqdme/sN07GHScTK4zx28UF92TA=; b=SQhhcBU+5jGTvceMHy5bT3c1MRGXFLZnVfgFPLDjJv0sfQBQfoc3ZB/rCehPyRvaEDbz2n r6eJT04ajmCsepeyXMrvPbZeNiTzc1++fcaWG0tj3h2lsrrnCrbIGVECS/dS+RDKHBuSog FiIFvcuoOdMnKxmCxle+smqpxB8Mbq982fq3YHjN41HD2iVFs4PyICrZo8atuwUweVoYvS tHwFATVDQ58IvT1W9Axsu6dp3lLVIsr63a1icWHdm+NNNeZ4bvgNE7lfvHzLHhWpnOxy1h bpnl59KEvECzUIFKueg1liW5ni80hGHEvyYqfw6Wjyp4AiWgbgWL9tPSfG+AnA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1708303088; a=rsa-sha256; cv=none; b=kdbiwFa3neAIK9n4wseshH8PFaE5Se8718GJfWayBUY7j2ZcJAKaDA9jGS2wqp6u/FA+v4 Ma0VwIFMjI/g//P5lRRf+oIPiD5pFcqIYYP9Y08vNKNt/5x5hmMlldL7n2zEwPtv849cw1 3uAjQvCO2mGjtSCW+M5Ty6FJrp9TgIzE5/eiJ91ru+1eO0UstdvZJx1qly8upo67qOtRbV iMUz4TktW2Y4firajq66AXOk+JKABMT6E6Ig0JeAhVKxdzm577VTSMJR+X4Q7pOIa+sxNX 9I43Jf01XMoAaUP/4VjrcIK59yaVKRsvkMRf4ntm9sQ61IRaUi4OdYyZt98yew== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4TdNtS3FXcz1CMM; Mon, 19 Feb 2024 00:38:08 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 41J0c846054617; Mon, 19 Feb 2024 00:38:08 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 41J0c8cw054614; Mon, 19 Feb 2024 00:38:08 GMT (envelope-from git) Date: Mon, 19 Feb 2024 00:38:08 GMT Message-Id: <202402190038.41J0c8cw054614@gitrepo.freebsd.org> To: ports-committers@FreeBSD.org, dev-commits-ports-all@FreeBSD.org, dev-commits-ports-main@FreeBSD.org From: Jose Alonso Cardenas Marquez Subject: git: bcbfdaebbc76 - main - security/caldera-ot: Add new plugins List-Id: Commit messages for all branches of the ports repository List-Archive: https://lists.freebsd.org/archives/dev-commits-ports-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-ports-all@freebsd.org X-BeenThere: dev-commits-ports-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: acm X-Git-Repository: ports X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: bcbfdaebbc765637790c66dfe52c94506599417c Auto-Submitted: auto-generated The branch main has been updated by acm: URL: https://cgit.FreeBSD.org/ports/commit/?id=bcbfdaebbc765637790c66dfe52c94506599417c commit bcbfdaebbc765637790c66dfe52c94506599417c Author: Jose Alonso Cardenas Marquez AuthorDate: 2024-02-19 00:35:31 +0000 Commit: Jose Alonso Cardenas Marquez CommitDate: 2024-02-19 00:35:31 +0000 security/caldera-ot: Add new plugins - Add iec61850 plugin - Add profinet plugin - STRIP bacnet binaries - Change modbus payload name - Set MITRE Caldera dependency to 4.x - Bump PORTREVISION --- security/caldera-ot/Makefile | 41 ++++++++-- security/caldera-ot/distinfo | 6 +- ...ection_04ccfa36-f576-379f-a268-6283de403ad8.yml | 23 ++++++ ...ection_15758d41-4237-34eb-adb2-d5698e3ea4ff.yml | 21 +++++ ...ection_1b7dcec1-0b12-3df4-b323-6c1b33356981.yml | 27 +++++++ ...ection_30419718-6f7c-3eab-8b06-ed6cea7858c7.yml | 39 +++++++++ ...ection_4c1138da-50b9-3744-99ea-1310690f2743.yml | 15 ++++ ...ection_6ac44da4-f546-3e33-be1a-829b173b660f.yml | 30 +++++++ ...ection_9f7757da-1da9-3b35-90f3-fdab578be198.yml | 32 ++++++++ ...ection_a0718ea1-9f55-3e24-b81a-c03f15eb89c2.yml | 15 ++++ ...ection_bbb3e7dc-3103-3ae9-9a77-6eb789cb3a07.yml | 29 +++++++ ...ection_f9308f14-e0d3-389e-9d77-ff2be9c3f34f.yml | 20 +++++ ...ection_fb81314b-0308-3761-b764-e523645e8df6.yml | 18 +++++ ...ontrol_6c0f9e77-eedf-4c25-a009-d8905f155af4.yml | 40 ++++++++++ ...ontrol_dc65f8d1-9478-381c-8f25-2ef5edaea332.yml | 40 ++++++++++ ...ontrol_dd9c8deb-be48-3ad0-b5f5-bf4976cb1d1e.yml | 33 ++++++++ ...nction_2b2e5724-42bc-3efc-b0e5-613a6f5bc996.yml | 22 +++++ ...nction_41fd3989-b5bd-3892-9210-9bc053c355a5.yml | 22 +++++ ...yloads_08cfc3e9-e172-4754-ae32-d1f28c9c819e.yml | 14 ++++ .../files/patch-iec61850_src_CMakeLists.txt | 10 +++ .../files/patch-iec61850_src_app_CMakeLists.txt | 35 ++++++++ .../files/patch-iec61850_src_lib_CMakeLists.txt | 34 ++++++++ ...ection_001e21ea-61b5-4b78-b79e-9d5687d819bd.yml | 4 +- ...ection_3946b6da-c570-47cd-b63f-c13875297cb4.yml | 4 +- ...ection_bc8961a2-7534-4b2a-bbc3-2456f58243be.yml | 4 +- ...ection_d80b9cd5-b1d8-482a-a745-71d74f9d0885.yml | 4 +- ...impact_056e6289-4cbf-417f-928a-d75125e4db4f.yml | 4 +- ...impact_0f16b341-9730-4553-b6d6-8eb8def02c81.yml | 4 +- ...impact_2a6e8c8e-f350-11ed-9156-23436b8f0e58.yml | 4 +- ...impact_40f78a8f-2aaa-4b1b-872f-7c6b0f1ddf3e.yml | 4 +- ...impact_d6991b6b-d3b2-4398-ad3f-d736ae09acf9.yml | 4 +- ...impact_fe321da2-e183-44a3-b423-b8cba9a8bda0.yml | 4 +- ...yloads_58aaab96-7191-4978-acec-a3b1deb03332.yml | 2 +- ...covery_35e384c3-2c27-4cf6-8155-70b2cf4b6cef.yml | 22 +++++ ...covery_36284e7a-012f-4d9d-b803-0d435e06bbf6.yml | 16 ++++ ...covery_bb7e8e63-690f-4b29-9a2e-36fc3e0aa152.yml | 16 ++++ ...covery_df68ded9-4fa1-4d6c-a7d3-558c3ddd808a.yml | 22 +++++ ...ontrol_132898e3-c2cc-4af4-954f-06ac99566a8f.yml | 22 +++++ ...ontrol_23b5c9f5-3a52-4b01-81bd-6f3fa570d57e.yml | 22 +++++ ...ontrol_b885e6f4-18c2-455b-9695-6eec76d545ca.yml | 22 +++++ ...yloads_6c2308e7-852b-49c5-a6a4-1ac8622b6669.yml | 14 ++++ security/caldera-ot/files/pkg-message.in | 6 +- security/caldera-ot/pkg-plist | 93 +++++++++++++++++++++- 43 files changed, 830 insertions(+), 33 deletions(-) diff --git a/security/caldera-ot/Makefile b/security/caldera-ot/Makefile index 4596236f08ca..52b562709bc9 100644 --- a/security/caldera-ot/Makefile +++ b/security/caldera-ot/Makefile @@ -1,6 +1,6 @@ PORTNAME= caldera-ot DISTVERSION= 4.2.0 -PORTREVISION= 3 +PORTREVISION= 4 CATEGORIES= security python MAINTAINER= acm@FreeBSD.org @@ -11,12 +11,16 @@ LICENSE= APACHE20 LICENSE_FILE= ${WRKSRC}/LICENSE BUILD_DEPENDS= bacnet-stack>0:devel/bacnet-stack \ - nuitka3:devel/nuitka + cmake:devel/cmake-core \ + nuitka3:devel/nuitka \ + argtable3>0:devel/argtable3 \ + libiec61850>0:devel/libiec61850 RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}aiohttp>0:www/py-aiohttp@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}pymodbus>0:comms/py-pymodbus@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}pyserial>0:comms/py-pyserial@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}six>0:devel/py-six@${PY_FLAVOR} \ - ${LOCALBASE}/www/caldera/app/__init__.py:security/caldera + ${PYTHON_PKGNAMEPREFIX}pnio-dcp>0:devel/py-pnio-dcp@${PY_FLAVOR} \ + caldera4>0:security/caldera4 USE_GITHUB= yes GH_ACCOUNT= mitre @@ -24,7 +28,9 @@ GH_PROJECT= ${PORTNAME} GH_TAGNAME= 6c6b971d96de121da33f27aa6f80806835346b23 GH_TUPLE= mitre:bacnet:745432c:bacnet/bacnet \ mitre:dnp3:01e3748:dnp3/dnp3 \ - mitre:modbus:e47e259:modbus/modbus + mitre:modbus:e47e259:modbus/modbus \ + mitre:iec61850:a72e2c1:iec61850/iec61850 \ + mitre:profinet:7e62daa:profinet/profinet USES= compiler:c++11-lang dos2unix python @@ -51,24 +57,45 @@ post-patch: do-build: @${MKDIR} ${WRKDIR}/modbus_cli-build + @${MKDIR} ${WRKDIR}/profinet-build + @${MKDIR} ${WRKDIR}/iec61850-build + @${CP} ${WRKSRC}/profinet/src/dcp_utility.py ${WRKDIR}/profinet-build/dcp_utility.py cd ${WRKSRC}/bacnet/src/bacnet-stack/apps && \ ${CC} readprop/main.c -I${LOCALBASE}/include -L${LOCALBASE}/lib \ -lbacnet-stack -o ${WRKSRC}/bacnet/payloads/bacrp-freebsd cd ${WRKSRC}/bacnet/src/bacnet-stack/apps && \ ${CC} readprop/main.c -I${LOCALBASE}/include -L${LOCALBASE}/lib \ -lbacnet-stack -o ${WRKSRC}/bacnet/payloads/bacwp-freebsd + cd ${WRKDIR}/iec61850-build && \ + cmake ${WRKSRC}/iec61850/src/ -DLOCALBASE=${LOCALBASE} -DBUILD_SYSTEM=ON && \ + cmake --build . cd ${WRKSRC}/modbus/src/src && \ ${LOCALBASE}/bin/nuitka3 --standalone --onefile \ - --output-filename=modbus_cli-freebsd --output-dir=${WRKDIR}/modbus_cli-build modbus_cli.py + --output-filename=modbus_cli_freebsd --output-dir=${WRKDIR}/modbus_cli-build modbus_cli.py + cd ${WRKDIR}/profinet-build && \ + ${LOCALBASE}/bin/nuitka3 --standalone --onefile \ + --output-filename=dcp_utility_freebsd --output-dir=${WRKDIR}/profinet-build dcp_utility.py do-install: @${MKDIR} ${STAGEDIR}${WWWDIR}/plugins/bacnet @${MKDIR} ${STAGEDIR}${WWWDIR}/plugins/dnp3 @${MKDIR} ${STAGEDIR}${WWWDIR}/plugins/modbus + @${MKDIR} ${STAGEDIR}${WWWDIR}/plugins/iec61850 + @${MKDIR} ${STAGEDIR}${WWWDIR}/plugins/profinet @cd ${WRKSRC}/bacnet && ${COPYTREE_SHARE} . ${STAGEDIR}/${WWWDIR}/plugins/bacnet @cd ${WRKSRC}/dnp3 && ${COPYTREE_SHARE} . ${STAGEDIR}/${WWWDIR}/plugins/dnp3 @cd ${WRKSRC}/modbus && ${COPYTREE_SHARE} . ${STAGEDIR}/${WWWDIR}/plugins/modbus - ${INSTALL_PROGRAM} ${WRKDIR}/modbus_cli-build/modbus_cli-freebsd \ - ${STAGEDIR}/${WWWDIR}/plugins/modbus/payloads/ + @cd ${WRKSRC}/iec61850 && ${COPYTREE_SHARE} . ${STAGEDIR}/${WWWDIR}/plugins/iec61850 + @cd ${WRKSRC}/profinet && ${COPYTREE_SHARE} . ${STAGEDIR}/${WWWDIR}/plugins/profinet + ${INSTALL_PROGRAM} ${WRKDIR}/modbus_cli-build/modbus_cli_freebsd \ + ${STAGEDIR}/${WWWDIR}/plugins/modbus/payloads/modbus_cli_freebsd + ${INSTALL_PROGRAM} ${WRKDIR}/iec61850-build/bin/iec61850_actions \ + ${STAGEDIR}/${WWWDIR}/plugins/iec61850/payloads/iec61850_actions_freebsd + ${INSTALL_PROGRAM} ${WRKDIR}/profinet-build/dcp_utility_freebsd \ + ${STAGEDIR}/${WWWDIR}/plugins/profinet/payloads/dcp_utility_freebsd + +post-install: + ${STRIP_CMD} ${STAGEDIR}/${WWWDIR}/plugins/bacnet/payloads/bacwp-freebsd + ${STRIP_CMD} ${STAGEDIR}/${WWWDIR}/plugins/bacnet/payloads/bacrp-freebsd .include diff --git a/security/caldera-ot/distinfo b/security/caldera-ot/distinfo index 15e419584f6c..376173ddbb79 100644 --- a/security/caldera-ot/distinfo +++ b/security/caldera-ot/distinfo @@ -1,4 +1,4 @@ -TIMESTAMP = 1698267655 +TIMESTAMP = 1708238060 SHA256 (mitre-caldera-ot-4.2.0-6c6b971d96de121da33f27aa6f80806835346b23_GH0.tar.gz) = a4568765b1a373870ae00b781aa251ac94af089b46a3239bf743b0430405844e SIZE (mitre-caldera-ot-4.2.0-6c6b971d96de121da33f27aa6f80806835346b23_GH0.tar.gz) = 5887 SHA256 (mitre-bacnet-745432c_GH0.tar.gz) = 60763dc1f3670124f3ec0caf11dd2a3c71def7689c6e90af66864e9924853ad7 @@ -7,3 +7,7 @@ SHA256 (mitre-dnp3-01e3748_GH0.tar.gz) = 5324a9910b22dd101ef52b2b48334f67d4e9d1f SIZE (mitre-dnp3-01e3748_GH0.tar.gz) = 97589582 SHA256 (mitre-modbus-e47e259_GH0.tar.gz) = 2094210dbf96c0f60d7d5146e4ec7855e19b4bc23b47d51b906aa5961222c14d SIZE (mitre-modbus-e47e259_GH0.tar.gz) = 38272647 +SHA256 (mitre-iec61850-a72e2c1_GH0.tar.gz) = a75623efb6bdb686ba63615a5861b1e5de8704fe4ba5339bacb54b1e162918be +SIZE (mitre-iec61850-a72e2c1_GH0.tar.gz) = 1140484 +SHA256 (mitre-profinet-7e62daa_GH0.tar.gz) = a7e747ac604dae44d2c5a64e35b9220af0ff42d8b043c818e25e5f3f0f9a34f9 +SIZE (mitre-profinet-7e62daa_GH0.tar.gz) = 24278633 diff --git a/security/caldera-ot/files/patch-iec61850_data_abilities_collection_04ccfa36-f576-379f-a268-6283de403ad8.yml b/security/caldera-ot/files/patch-iec61850_data_abilities_collection_04ccfa36-f576-379f-a268-6283de403ad8.yml new file mode 100644 index 000000000000..4574a3b006f7 --- /dev/null +++ b/security/caldera-ot/files/patch-iec61850_data_abilities_collection_04ccfa36-f576-379f-a268-6283de403ad8.yml @@ -0,0 +1,23 @@ +--- iec61850/data/abilities/collection/04ccfa36-f576-379f-a268-6283de403ad8.yml.orig 2024-02-18 18:34:52 UTC ++++ iec61850/data/abilities/collection/04ccfa36-f576-379f-a268-6283de403ad8.yml +@@ -52,6 +52,20 @@ + - source: iec61850.device.name + edge: has_node + target: iec61850.node.name ++ freebsd: ++ sh: ++ command: './iec61850_actions_freebsd get data_sets #{iec61850.server.ip}' ++ payloads: ++ - iec61850_actions_freebsd ++ timeout: 360 ++ parsers: ++ plugins.iec61850.app.parsers.data_set: ++ - source: iec61850.device.name ++ edge: has_dataset ++ target: iec61850.dataset.name ++ - source: iec61850.device.name ++ edge: has_node ++ target: iec61850.node.name + repeatable: true + plugin: iec61850 + additional_info: diff --git a/security/caldera-ot/files/patch-iec61850_data_abilities_collection_15758d41-4237-34eb-adb2-d5698e3ea4ff.yml b/security/caldera-ot/files/patch-iec61850_data_abilities_collection_15758d41-4237-34eb-adb2-d5698e3ea4ff.yml new file mode 100644 index 000000000000..db8d2f34ec4e --- /dev/null +++ b/security/caldera-ot/files/patch-iec61850_data_abilities_collection_15758d41-4237-34eb-adb2-d5698e3ea4ff.yml @@ -0,0 +1,21 @@ +--- iec61850/data/abilities/collection/15758d41-4237-34eb-adb2-d5698e3ea4ff.yml.orig 2024-02-18 18:34:52 UTC ++++ iec61850/data/abilities/collection/15758d41-4237-34eb-adb2-d5698e3ea4ff.yml +@@ -27,10 +27,16 @@ + payloads: + - iec61850_actions + timeout: 360 ++ freebsd: ++ sh: ++ command: './iec61850_actions_freebsd get reports #{iec61850.server.ip}' ++ payloads: ++ - iec61850_actions_freebsd ++ timeout: 360 + repeatable: true + plugin: iec61850 + additional_info: + facts: + iec61850.server.ip: + default: null +- description: IP address of the server +\ No newline at end of file ++ description: IP address of the server diff --git a/security/caldera-ot/files/patch-iec61850_data_abilities_collection_1b7dcec1-0b12-3df4-b323-6c1b33356981.yml b/security/caldera-ot/files/patch-iec61850_data_abilities_collection_1b7dcec1-0b12-3df4-b323-6c1b33356981.yml new file mode 100644 index 000000000000..f2afe3214289 --- /dev/null +++ b/security/caldera-ot/files/patch-iec61850_data_abilities_collection_1b7dcec1-0b12-3df4-b323-6c1b33356981.yml @@ -0,0 +1,27 @@ +--- iec61850/data/abilities/collection/1b7dcec1-0b12-3df4-b323-6c1b33356981.yml.orig 2024-02-18 18:34:52 UTC ++++ iec61850/data/abilities/collection/1b7dcec1-0b12-3df4-b323-6c1b33356981.yml +@@ -67,6 +67,24 @@ + - source: iec61850.attribute.name + edge: has_value + target: iec61850.attribute.value ++ freebsd: ++ sh: ++ command: './iec61850_actions_freebsd get value #{iec61850.attribute.name} --fc #{iec61850.attribute.fc} ++ #{iec61850.server.ip}' ++ payloads: ++ - iec61850_actions_freebsd ++ timeout: 360 ++ parsers: ++ plugins.iec61850.app.parsers.value: ++ - source: iec61850.attribute.name ++ edge: has_fc ++ target: iec61850.attribute.fc ++ - source: iec61850.attribute.name ++ edge: has_datatype ++ target: iec61850.attribute.datatype ++ - source: iec61850.attribute.name ++ edge: has_value ++ target: iec61850.attribute.value + repeatable: true + plugin: iec61850 + additional_info: diff --git a/security/caldera-ot/files/patch-iec61850_data_abilities_collection_30419718-6f7c-3eab-8b06-ed6cea7858c7.yml b/security/caldera-ot/files/patch-iec61850_data_abilities_collection_30419718-6f7c-3eab-8b06-ed6cea7858c7.yml new file mode 100644 index 000000000000..e1983d712968 --- /dev/null +++ b/security/caldera-ot/files/patch-iec61850_data_abilities_collection_30419718-6f7c-3eab-8b06-ed6cea7858c7.yml @@ -0,0 +1,39 @@ +--- iec61850/data/abilities/collection/30419718-6f7c-3eab-8b06-ed6cea7858c7.yml.orig 2024-02-18 18:34:52 UTC ++++ iec61850/data/abilities/collection/30419718-6f7c-3eab-8b06-ed6cea7858c7.yml +@@ -102,6 +102,36 @@ + - source: iec61850.attribute.name + edge: has_datatype + target: iec61850.attribute.value ++ freebsd: ++ sh: ++ command: './iec61850_actions_freebsd get data_set_members #{iec61850.dataset.name} ++ #{iec61850.server.ip}' ++ payloads: ++ - iec61850_actions_freebsd ++ timeout: 360 ++ parsers: ++ plugins.iec61850.app.parsers.data_set: ++ - source: iec61850.device.name ++ edge: has_node ++ target: iec61850.node.name ++ - source: iec61850.device.name ++ edge: has_dataset ++ target: iec61850.dataset.name ++ - source: iec61850.node.name ++ edge: has_object ++ target: iec61850.object.name ++ - source: iec61850.object.name ++ edge: has_attribute ++ target: iec61850.attribute.name ++ - source: iec61850.attribute.name ++ edge: has_fc ++ target: iec61850.attribute.fc ++ - source: iec61850.attribute.name ++ edge: has_datatype ++ target: iec61850.attribute.datatype ++ - source: iec61850.attribute.name ++ edge: has_datatype ++ target: iec61850.attribute.value + repeatable: true + plugin: iec61850 + additional_info: diff --git a/security/caldera-ot/files/patch-iec61850_data_abilities_collection_4c1138da-50b9-3744-99ea-1310690f2743.yml b/security/caldera-ot/files/patch-iec61850_data_abilities_collection_4c1138da-50b9-3744-99ea-1310690f2743.yml new file mode 100644 index 000000000000..5ed31a7372a7 --- /dev/null +++ b/security/caldera-ot/files/patch-iec61850_data_abilities_collection_4c1138da-50b9-3744-99ea-1310690f2743.yml @@ -0,0 +1,15 @@ +--- iec61850/data/abilities/collection/4c1138da-50b9-3744-99ea-1310690f2743.yml.orig 2024-02-18 18:34:52 UTC ++++ iec61850/data/abilities/collection/4c1138da-50b9-3744-99ea-1310690f2743.yml +@@ -30,6 +30,12 @@ + payloads: + - iec61850_actions + timeout: 360 ++ freebsd: ++ sh: ++ command: './iec61850_actions_freebsd get log #{iec61850.lcb.name} #{iec61850.server.ip}' ++ payloads: ++ - iec61850_actions_freebsd ++ timeout: 360 + repeatable: true + plugin: iec61850 + additional_info: diff --git a/security/caldera-ot/files/patch-iec61850_data_abilities_collection_6ac44da4-f546-3e33-be1a-829b173b660f.yml b/security/caldera-ot/files/patch-iec61850_data_abilities_collection_6ac44da4-f546-3e33-be1a-829b173b660f.yml new file mode 100644 index 000000000000..dcb4fc19f26a --- /dev/null +++ b/security/caldera-ot/files/patch-iec61850_data_abilities_collection_6ac44da4-f546-3e33-be1a-829b173b660f.yml @@ -0,0 +1,30 @@ +--- iec61850/data/abilities/collection/6ac44da4-f546-3e33-be1a-829b173b660f.yml.orig 2024-02-18 18:34:52 UTC ++++ iec61850/data/abilities/collection/6ac44da4-f546-3e33-be1a-829b173b660f.yml +@@ -55,6 +55,20 @@ + - source: iec61850.node.name + edge: has_object + target: iec61850.object.name ++ freebsd: ++ sh: ++ command: './iec61850_actions_freebsd get data_objects #{iec61850.node.name} #{iec61850.server.ip}' ++ payloads: ++ - iec61850_actions_freebsd ++ timeout: 360 ++ parsers: ++ plugins.iec61850.app.parsers.data_model: ++ - source: iec61850.device.name ++ edge: has_node ++ target: iec61850.node.name ++ - source: iec61850.node.name ++ edge: has_object ++ target: iec61850.object.name + repeatable: true + plugin: iec61850 + additional_info: +@@ -64,4 +78,4 @@ + description: Name of a logical node + iec61850.server.ip: + default: null +- description: IP address of the server +\ No newline at end of file ++ description: IP address of the server diff --git a/security/caldera-ot/files/patch-iec61850_data_abilities_collection_9f7757da-1da9-3b35-90f3-fdab578be198.yml b/security/caldera-ot/files/patch-iec61850_data_abilities_collection_9f7757da-1da9-3b35-90f3-fdab578be198.yml new file mode 100644 index 000000000000..975b73a34681 --- /dev/null +++ b/security/caldera-ot/files/patch-iec61850_data_abilities_collection_9f7757da-1da9-3b35-90f3-fdab578be198.yml @@ -0,0 +1,32 @@ +--- iec61850/data/abilities/collection/9f7757da-1da9-3b35-90f3-fdab578be198.yml.orig 2024-02-18 18:34:52 UTC ++++ iec61850/data/abilities/collection/9f7757da-1da9-3b35-90f3-fdab578be198.yml +@@ -80,6 +80,29 @@ + - source: iec61850.device.name + edge: has_lcb + target: iec61850.lcb.name ++ freebsd: ++ sh: ++ command: './iec61850_actions_freebsd get log_blocks #{iec61850.server.ip}' ++ payloads: ++ - iec61850_actions_freebsd ++ timeout: 360 ++ parsers: ++ plugins.iec61850.app.parsers.lcb: ++ - source: iec61850.attribute.name ++ edge: has_fc ++ target: iec61850.attribute.fc ++ - source: iec61850.attribute.name ++ edge: has_datatype ++ target: iec61850.attribute.datatype ++ - source: iec61850.attribute.name ++ edge: has_value ++ target: iec61850.attribute.value ++ - source: iec61850.device.name ++ edge: has_node ++ target: iec61850.node.name ++ - source: iec61850.device.name ++ edge: has_lcb ++ target: iec61850.lcb.name + repeatable: true + plugin: iec61850 + additional_info: diff --git a/security/caldera-ot/files/patch-iec61850_data_abilities_collection_a0718ea1-9f55-3e24-b81a-c03f15eb89c2.yml b/security/caldera-ot/files/patch-iec61850_data_abilities_collection_a0718ea1-9f55-3e24-b81a-c03f15eb89c2.yml new file mode 100644 index 000000000000..65ea20dcbc9e --- /dev/null +++ b/security/caldera-ot/files/patch-iec61850_data_abilities_collection_a0718ea1-9f55-3e24-b81a-c03f15eb89c2.yml @@ -0,0 +1,15 @@ +--- iec61850/data/abilities/collection/a0718ea1-9f55-3e24-b81a-c03f15eb89c2.yml.orig 2024-02-18 18:34:52 UTC ++++ iec61850/data/abilities/collection/a0718ea1-9f55-3e24-b81a-c03f15eb89c2.yml +@@ -29,6 +29,12 @@ + payloads: + - iec61850_actions + timeout: 360 ++ freebsd: ++ sh: ++ command: './iec61850_actions_freebsd get files #{iec61850.server.ip}' ++ payloads: ++ - iec61850_actions_freebsd ++ timeout: 360 + repeatable: true + plugin: iec61850 + additional_info: diff --git a/security/caldera-ot/files/patch-iec61850_data_abilities_collection_bbb3e7dc-3103-3ae9-9a77-6eb789cb3a07.yml b/security/caldera-ot/files/patch-iec61850_data_abilities_collection_bbb3e7dc-3103-3ae9-9a77-6eb789cb3a07.yml new file mode 100644 index 000000000000..541c3fd3dc09 --- /dev/null +++ b/security/caldera-ot/files/patch-iec61850_data_abilities_collection_bbb3e7dc-3103-3ae9-9a77-6eb789cb3a07.yml @@ -0,0 +1,29 @@ +--- iec61850/data/abilities/collection/bbb3e7dc-3103-3ae9-9a77-6eb789cb3a07.yml.orig 2024-02-18 18:34:52 UTC ++++ iec61850/data/abilities/collection/bbb3e7dc-3103-3ae9-9a77-6eb789cb3a07.yml +@@ -75,6 +75,26 @@ + - source: iec61850.attribute.name + edge: has_fc + target: iec61850.attribute.fc ++ freebsd: ++ sh: ++ command: './iec61850_actions_freebsd get data_attributes #{iec61850.object.name} #{iec61850.server.ip}' ++ payloads: ++ - iec61850_actions_freebsd ++ timeout: 360 ++ parsers: ++ plugins.iec61850.app.parsers.data_model: ++ - source: iec61850.device.name ++ edge: has_node ++ target: iec61850.node.name ++ - source: iec61850.node.name ++ edge: has_object ++ target: iec61850.object.name ++ - source: iec61850.object.name ++ edge: has_attribute ++ target: iec61850.attribute.name ++ - source: iec61850.attribute.name ++ edge: has_fc ++ target: iec61850.attribute.fc + repeatable: true + plugin: iec61850 + additional_info: diff --git a/security/caldera-ot/files/patch-iec61850_data_abilities_collection_f9308f14-e0d3-389e-9d77-ff2be9c3f34f.yml b/security/caldera-ot/files/patch-iec61850_data_abilities_collection_f9308f14-e0d3-389e-9d77-ff2be9c3f34f.yml new file mode 100644 index 000000000000..86718035abc7 --- /dev/null +++ b/security/caldera-ot/files/patch-iec61850_data_abilities_collection_f9308f14-e0d3-389e-9d77-ff2be9c3f34f.yml @@ -0,0 +1,20 @@ +--- iec61850/data/abilities/collection/f9308f14-e0d3-389e-9d77-ff2be9c3f34f.yml.orig 2024-02-18 18:34:52 UTC ++++ iec61850/data/abilities/collection/f9308f14-e0d3-389e-9d77-ff2be9c3f34f.yml +@@ -46,6 +46,17 @@ + - source: iec61850.device.name + edge: has_node + target: iec61850.node.name ++ freebsd: ++ sh: ++ command: './iec61850_actions_freebsd get logical_nodes #{iec61850.device.name} #{iec61850.server.ip}' ++ payloads: ++ - iec61850_actions_freebsd ++ timeout: 360 ++ parsers: ++ plugins.iec61850.app.parsers.data_model: ++ - source: iec61850.device.name ++ edge: has_node ++ target: iec61850.node.name + repeatable: true + plugin: iec61850 + additional_info: diff --git a/security/caldera-ot/files/patch-iec61850_data_abilities_collection_fb81314b-0308-3761-b764-e523645e8df6.yml b/security/caldera-ot/files/patch-iec61850_data_abilities_collection_fb81314b-0308-3761-b764-e523645e8df6.yml new file mode 100644 index 000000000000..c52033d5ef68 --- /dev/null +++ b/security/caldera-ot/files/patch-iec61850_data_abilities_collection_fb81314b-0308-3761-b764-e523645e8df6.yml @@ -0,0 +1,18 @@ +--- iec61850/data/abilities/collection/fb81314b-0308-3761-b764-e523645e8df6.yml.orig 2024-02-18 18:34:52 UTC ++++ iec61850/data/abilities/collection/fb81314b-0308-3761-b764-e523645e8df6.yml +@@ -38,6 +38,15 @@ + parsers: + plugins.iec61850.app.parsers.data_model: + - source: iec61850.device.name ++ freebsd: ++ sh: ++ command: './iec61850_actions_freebsd get logical_devices #{iec61850.server.ip}' ++ payloads: ++ - iec61850_actions_freebsd ++ timeout: 360 ++ parsers: ++ plugins.iec61850.app.parsers.data_model: ++ - source: iec61850.device.name + repeatable: true + plugin: iec61850 + additional_info: diff --git a/security/caldera-ot/files/patch-iec61850_data_abilities_impair-process-control_6c0f9e77-eedf-4c25-a009-d8905f155af4.yml b/security/caldera-ot/files/patch-iec61850_data_abilities_impair-process-control_6c0f9e77-eedf-4c25-a009-d8905f155af4.yml new file mode 100644 index 000000000000..a6b637f25695 --- /dev/null +++ b/security/caldera-ot/files/patch-iec61850_data_abilities_impair-process-control_6c0f9e77-eedf-4c25-a009-d8905f155af4.yml @@ -0,0 +1,40 @@ +--- iec61850/data/abilities/impair-process-control/6c0f9e77-eedf-4c25-a009-d8905f155af4.yml.orig 2024-02-18 18:41:37 UTC ++++ iec61850/data/abilities/impair-process-control/6c0f9e77-eedf-4c25-a009-d8905f155af4.yml +@@ -87,6 +87,30 @@ + - source: iec61850.attribute.name + edge: has_value + target: iec61850.attribute.value ++ freebsd: ++ sh: ++ command: './iec61850_actions_freebsd control #{iec61850.object.name} --bool ++ #{iec61850.object.newvalue} --toggle #{iec61850.server.ip}' ++ payloads: ++ - iec61850_actions_freebsd ++ timeout: 360 ++ parsers: ++ plugins.iec61850.app.parsers.write: ++ - source: iec61850.device.name ++ edge: has_node ++ target: iec61850.node.name ++ - source: iec61850.node.name ++ edge: has_object ++ target: iec61850.object.name ++ - source: iec61850.object.name ++ edge: has_attribute ++ target: iec61850.attribute.name ++ - source: iec61850.attribute.name ++ edge: has_fc ++ target: iec61850.attribute.fc ++ - source: iec61850.attribute.name ++ edge: has_value ++ target: iec61850.attribute.value + repeatable: true + plugin: iec61850 + additional_info: +@@ -99,4 +123,4 @@ + description: New control value of an object + iec61850.server.ip: + default: null +- description: IP address of the server +\ No newline at end of file ++ description: IP address of the server diff --git a/security/caldera-ot/files/patch-iec61850_data_abilities_impair-process-control_dc65f8d1-9478-381c-8f25-2ef5edaea332.yml b/security/caldera-ot/files/patch-iec61850_data_abilities_impair-process-control_dc65f8d1-9478-381c-8f25-2ef5edaea332.yml new file mode 100644 index 000000000000..ed8d056b0602 --- /dev/null +++ b/security/caldera-ot/files/patch-iec61850_data_abilities_impair-process-control_dc65f8d1-9478-381c-8f25-2ef5edaea332.yml @@ -0,0 +1,40 @@ +--- iec61850/data/abilities/impair-process-control/dc65f8d1-9478-381c-8f25-2ef5edaea332.yml.orig 2024-02-18 18:41:37 UTC ++++ iec61850/data/abilities/impair-process-control/dc65f8d1-9478-381c-8f25-2ef5edaea332.yml +@@ -86,6 +86,30 @@ + - source: iec61850.attribute.name + edge: has_value + target: iec61850.attribute.value ++ freebsd: ++ sh: ++ command: './iec61850_actions_freebsd control #{iec61850.object.name} --#{iec61850.object.datatype} ++ #{iec61850.object.newvalue} #{iec61850.server.ip}' ++ payloads: ++ - iec61850_actions_freebsd ++ timeout: 360 ++ parsers: ++ plugins.iec61850.app.parsers.write: ++ - source: iec61850.device.name ++ edge: has_node ++ target: iec61850.node.name ++ - source: iec61850.node.name ++ edge: has_object ++ target: iec61850.object.name ++ - source: iec61850.object.name ++ edge: has_attribute ++ target: iec61850.attribute.name ++ - source: iec61850.attribute.name ++ edge: has_fc ++ target: iec61850.attribute.fc ++ - source: iec61850.attribute.name ++ edge: has_value ++ target: iec61850.attribute.value + repeatable: true + plugin: iec61850 + additional_info: +@@ -101,4 +125,4 @@ + description: New control value of an object + iec61850.server.ip: + default: null +- description: IP address of the server +\ No newline at end of file ++ description: IP address of the server diff --git a/security/caldera-ot/files/patch-iec61850_data_abilities_impair-process-control_dd9c8deb-be48-3ad0-b5f5-bf4976cb1d1e.yml b/security/caldera-ot/files/patch-iec61850_data_abilities_impair-process-control_dd9c8deb-be48-3ad0-b5f5-bf4976cb1d1e.yml new file mode 100644 index 000000000000..dae51b031f49 --- /dev/null +++ b/security/caldera-ot/files/patch-iec61850_data_abilities_impair-process-control_dd9c8deb-be48-3ad0-b5f5-bf4976cb1d1e.yml @@ -0,0 +1,33 @@ +--- iec61850/data/abilities/impair-process-control/dd9c8deb-be48-3ad0-b5f5-bf4976cb1d1e.yml.orig 2024-02-18 18:41:37 UTC ++++ iec61850/data/abilities/impair-process-control/dd9c8deb-be48-3ad0-b5f5-bf4976cb1d1e.yml +@@ -85,6 +85,30 @@ + - source: iec61850.attribute.name + edge: has_value + target: iec61850.attribute.value ++ freebsd: ++ sh: ++ command: './iec61850_actions_freebsd set #{iec61850.attribute.name} --#{iec61850.attribute.datatype} ++ #{iec61850.attribute.newvalue} --fc #{iec61850.attribute.fc} #{iec61850.server.ip}' ++ payloads: ++ - iec61850_actions_freebsd ++ timeout: 360 ++ parsers: ++ plugins.iec61850.app.parsers.write: ++ - source: iec61850.device.name ++ edge: has_node ++ target: iec61850.node.name ++ - source: iec61850.node.name ++ edge: has_object ++ target: iec61850.object.name ++ - source: iec61850.object.name ++ edge: has_attribute ++ target: iec61850.attribute.name ++ - source: iec61850.attribute.name ++ edge: has_fc ++ target: iec61850.attribute.fc ++ - source: iec61850.attribute.name ++ edge: has_value ++ target: iec61850.attribute.value + repeatable: true + plugin: iec61850 + additional_info: diff --git a/security/caldera-ot/files/patch-iec61850_data_abilities_inhibit-response-function_2b2e5724-42bc-3efc-b0e5-613a6f5bc996.yml b/security/caldera-ot/files/patch-iec61850_data_abilities_inhibit-response-function_2b2e5724-42bc-3efc-b0e5-613a6f5bc996.yml new file mode 100644 index 000000000000..71f519f08234 --- /dev/null +++ b/security/caldera-ot/files/patch-iec61850_data_abilities_inhibit-response-function_2b2e5724-42bc-3efc-b0e5-613a6f5bc996.yml @@ -0,0 +1,22 @@ +--- iec61850/data/abilities/inhibit-response-function/2b2e5724-42bc-3efc-b0e5-613a6f5bc996.yml.orig 2024-02-18 18:43:18 UTC ++++ iec61850/data/abilities/inhibit-response-function/2b2e5724-42bc-3efc-b0e5-613a6f5bc996.yml +@@ -29,6 +29,12 @@ + payloads: + - iec61850_actions + timeout: 360 ++ freebsd: ++ sh: ++ command: './iec61850_actions_freebsd delete file #{iec61850.file.name} #{iec61850.server.ip}' ++ payloads: ++ - iec61850_actions_freebsd ++ timeout: 360 + repeatable: true + plugin: iec61850 + additional_info: +@@ -38,4 +44,4 @@ + description: Name of a file + iec61850.server.ip: + default: null +- description: IP address of the server +\ No newline at end of file ++ description: IP address of the server diff --git a/security/caldera-ot/files/patch-iec61850_data_abilities_inhibit-response-function_41fd3989-b5bd-3892-9210-9bc053c355a5.yml b/security/caldera-ot/files/patch-iec61850_data_abilities_inhibit-response-function_41fd3989-b5bd-3892-9210-9bc053c355a5.yml new file mode 100644 index 000000000000..f8707151626b --- /dev/null +++ b/security/caldera-ot/files/patch-iec61850_data_abilities_inhibit-response-function_41fd3989-b5bd-3892-9210-9bc053c355a5.yml @@ -0,0 +1,22 @@ +--- iec61850/data/abilities/inhibit-response-function/41fd3989-b5bd-3892-9210-9bc053c355a5.yml.orig 2024-02-18 18:43:18 UTC ++++ iec61850/data/abilities/inhibit-response-function/41fd3989-b5bd-3892-9210-9bc053c355a5.yml +@@ -33,6 +33,12 @@ + payloads: + - iec61850_actions + timeout: 360 ++ freebsd: ++ sh: ++ command: './iec61850_actions_freebsd delete data_set #{iec61850.dataset.name} #{iec61850.server.ip}' ++ payloads: ++ - iec61850_actions_freebsd ++ timeout: 360 + repeatable: true + plugin: iec61850 + additional_info: +@@ -42,4 +48,4 @@ + description: Name of a dataset + iiec61850.server.ip: + default: null +- description: IP address of the server +\ No newline at end of file ++ description: IP address of the server diff --git a/security/caldera-ot/files/patch-iec61850_payloads_08cfc3e9-e172-4754-ae32-d1f28c9c819e.yml b/security/caldera-ot/files/patch-iec61850_payloads_08cfc3e9-e172-4754-ae32-d1f28c9c819e.yml new file mode 100644 index 000000000000..ac0fdcd6e8cf --- /dev/null +++ b/security/caldera-ot/files/patch-iec61850_payloads_08cfc3e9-e172-4754-ae32-d1f28c9c819e.yml @@ -0,0 +1,14 @@ +--- iec61850/payloads/08cfc3e9-e172-4754-ae32-d1f28c9c819e.yml.orig 2024-02-18 18:31:59 UTC ++++ iec61850/payloads/08cfc3e9-e172-4754-ae32-d1f28c9c819e.yml +@@ -9,6 +9,9 @@ standard_payloads: + iec61850_actions: + description: IEC 61850 Plugin Actions (Linux) - command line interface for a set of IEC 61850 services + id: 04a2cdd7-39df-4b11-8bea-2838e0744993 ++ iec61850_actions_freebsd: ++ description: IEC 61850 Plugin Actions (FreeBSD) - command line interface for a set of IEC 61850 services ++ id: 1a3306b8-ce8c-11ee-a38f-8851fb56e3b2 + iec61850_actions_darwin: + description: IEC 61850 Plugin Actions (Darwin) - command line interface for a set of IEC 61850 services +- id: c81479f7-7a77-4925-9dc7-1a791f999cf8 +\ No newline at end of file ++ id: c81479f7-7a77-4925-9dc7-1a791f999cf8 diff --git a/security/caldera-ot/files/patch-iec61850_src_CMakeLists.txt b/security/caldera-ot/files/patch-iec61850_src_CMakeLists.txt new file mode 100644 index 000000000000..ef5f1798367f --- /dev/null +++ b/security/caldera-ot/files/patch-iec61850_src_CMakeLists.txt @@ -0,0 +1,10 @@ +--- iec61850/src/CMakeLists.txt 2024-02-18 01:00:33.415323000 -0500 ++++ iec61850/src/CMakeLists.txt 2024-02-18 01:01:07.721231000 -0500 +@@ -40,6 +40,7 @@ + # add build options + option(BUILD_TESTS "Build tests" OFF) + option(BUILD_LOCAL "Build using local copies of dependencies" OFF) ++option(BUILD_SYSTEM "Build using system dependencies" OFF) + + # add subdirectories with respective CMakeLists.txt files + if(BUILD_LOCAL) diff --git a/security/caldera-ot/files/patch-iec61850_src_app_CMakeLists.txt b/security/caldera-ot/files/patch-iec61850_src_app_CMakeLists.txt new file mode 100644 index 000000000000..3ead9f0ebb76 --- /dev/null +++ b/security/caldera-ot/files/patch-iec61850_src_app_CMakeLists.txt @@ -0,0 +1,35 @@ +--- iec61850/src/app/CMakeLists.txt 2024-02-18 01:01:15.171907000 -0500 ++++ iec61850/src/app/CMakeLists.txt 2024-02-18 01:24:45.179116000 -0500 +@@ -5,15 +5,16 @@ + "${CMAKE_CURRENT_BINARY_DIR}/version.h") + + # fetch argtable3 +-if(NOT BUILD_LOCAL) ++if(NOT BUILD_LOCAL AND NOT BUILD_SYSTEM) + include(FetchContent) + FetchContent_Declare( + argtable3 + GIT_REPOSITORY https://github.com/argtable/argtable3.git + GIT_TAG "v3.2.2.f25c624") + FetchContent_MakeAvailable(argtable3) +-endif(NOT BUILD_LOCAL) ++endif(NOT BUILD_LOCAL AND NOT BUILD_SYSTEM) + ++if(NOT BUILD_SYSTEM) + add_dependencies(iec61850_actions argtable3) + get_target_property(argtable3_INCLUDE_DIR argtable3 INCLUDE_DIRECTORIES) + +@@ -21,6 +22,13 @@ + target_include_directories( + iec61850_actions PRIVATE ${argtable3_INCLUDE_DIR} ${CMAKE_CURRENT_SOURCE_DIR} + ${CMAKE_CURRENT_BINARY_DIR}) ++else() ++target_link_libraries(iec61850_actions PRIVATE iec61850_client ${LOCALBASE}/lib/libargtable3_static.a) ++target_include_directories( ++ iec61850_actions PRIVATE ${LOCALBASE}/include ${CMAKE_CURRENT_SOURCE_DIR} ++ ${CMAKE_CURRENT_BINARY_DIR}) ++endif(NOT BUILD_SYSTEM) ++ + target_compile_features(iec61850_actions PRIVATE c_std_11) + + if(APPLE) diff --git a/security/caldera-ot/files/patch-iec61850_src_lib_CMakeLists.txt b/security/caldera-ot/files/patch-iec61850_src_lib_CMakeLists.txt new file mode 100644 index 000000000000..c3c1c26d20a7 --- /dev/null +++ b/security/caldera-ot/files/patch-iec61850_src_lib_CMakeLists.txt @@ -0,0 +1,34 @@ +--- iec61850/src/lib/CMakeLists.txt 2024-02-18 01:24:59.343348000 -0500 ++++ iec61850/src/lib/CMakeLists.txt 2024-02-18 01:28:38.333758000 -0500 +@@ -14,15 +14,16 @@ + "${CMAKE_CURRENT_BINARY_DIR}/version.h") + + # fetch libiec61850 +-if(NOT BUILD_LOCAL) ++if(NOT BUILD_LOCAL AND NOT BUILD_SYSTEM) + include(FetchContent) + FetchContent_Declare( + libiec61850 + GIT_REPOSITORY https://github.com/mz-automation/libiec61850.git + GIT_TAG "v1.5.1") + FetchContent_MakeAvailable(libiec61850) +-endif(NOT BUILD_LOCAL) ++endif(NOT BUILD_LOCAL AND NOT BUILD_SYSTEM) + ++if(NOT BUILD_SYSTEM) + add_dependencies(iec61850_client iec61850) + get_target_property(libiec61850_INCLUDE_DIR iec61850 INCLUDE_DIRECTORIES) + +@@ -30,6 +31,12 @@ + target_include_directories( + iec61850_client PUBLIC ${libiec61850_INCLUDE_DIR} ${CMAKE_CURRENT_SOURCE_DIR} + ${CMAKE_CURRENT_BINARY_DIR}) ++else() ++target_link_libraries(iec61850_client PUBLIC ${LOCALBASE}/lib/libiec61850.a ${LOCALBASE}/lib/libhal.a pthread) ++target_include_directories( ++ iec61850_client PUBLIC ${LOCALBASE}/include/libiec61850 ${CMAKE_CURRENT_SOURCE_DIR} ++ ${CMAKE_CURRENT_BINARY_DIR}) ++endif(NOT BUILD_SYSTEM) + + if(MINGW) + target_link_libraries(iec61850_client PUBLIC ws2_32 iphlpapi) diff --git a/security/caldera-ot/files/patch-modbus-data-abilities-collection_001e21ea-61b5-4b78-b79e-9d5687d819bd.yml b/security/caldera-ot/files/patch-modbus-data-abilities-collection_001e21ea-61b5-4b78-b79e-9d5687d819bd.yml index 8a1355cd7026..6855bcb33179 100644 --- a/security/caldera-ot/files/patch-modbus-data-abilities-collection_001e21ea-61b5-4b78-b79e-9d5687d819bd.yml +++ b/security/caldera-ot/files/patch-modbus-data-abilities-collection_001e21ea-61b5-4b78-b79e-9d5687d819bd.yml @@ -7,9 +7,9 @@ + freebsd: + sh: + command: -+ './modbus_cli-freebsd #{modbus.all.deviceip} --port #{modbus.all.deviceport} read_di #{modbus.read_di.start} #{modbus.read_di.count}' ++ './modbus_cli_freebsd #{modbus.all.deviceip} --port #{modbus.all.deviceport} read_di #{modbus.read_di.start} #{modbus.read_di.count}' + payloads: -+ - modbus_cli-freebsd ++ - modbus_cli_freebsd linux: sh: command: diff --git a/security/caldera-ot/files/patch-modbus-data-abilities-collection_3946b6da-c570-47cd-b63f-c13875297cb4.yml b/security/caldera-ot/files/patch-modbus-data-abilities-collection_3946b6da-c570-47cd-b63f-c13875297cb4.yml index 82d5e4f480a5..4d975a80aaad 100644 --- a/security/caldera-ot/files/patch-modbus-data-abilities-collection_3946b6da-c570-47cd-b63f-c13875297cb4.yml +++ b/security/caldera-ot/files/patch-modbus-data-abilities-collection_3946b6da-c570-47cd-b63f-c13875297cb4.yml @@ -7,9 +7,9 @@ + freebsd: + sh: + command: -+ './modbus_cli-freebsd #{modbus.all.deviceip} --port #{modbus.all.deviceport} read_ir #{modbus.read_ir.start} #{modbus.read_ir.count}' ++ './modbus_cli_freebsd #{modbus.all.deviceip} --port #{modbus.all.deviceport} read_ir #{modbus.read_ir.start} #{modbus.read_ir.count}' + payloads: -+ - modbus_cli-freebsd ++ - modbus_cli_freebsd linux: sh: command: diff --git a/security/caldera-ot/files/patch-modbus-data-abilities-collection_bc8961a2-7534-4b2a-bbc3-2456f58243be.yml b/security/caldera-ot/files/patch-modbus-data-abilities-collection_bc8961a2-7534-4b2a-bbc3-2456f58243be.yml index 3c188059c9ea..9547cacbc213 100644 --- a/security/caldera-ot/files/patch-modbus-data-abilities-collection_bc8961a2-7534-4b2a-bbc3-2456f58243be.yml +++ b/security/caldera-ot/files/patch-modbus-data-abilities-collection_bc8961a2-7534-4b2a-bbc3-2456f58243be.yml @@ -7,9 +7,9 @@ + freebsd: + sh: + command: -+ './modbus_cli-freebsd #{modbus.all.deviceip} --port #{modbus.all.deviceport} read_hr #{modbus.read_hr.start} #{modbus.read_hr.count}' ++ './modbus_cli_freebsd #{modbus.all.deviceip} --port #{modbus.all.deviceport} read_hr #{modbus.read_hr.start} #{modbus.read_hr.count}' + payloads: -+ - modbus_cli-freebsd ++ - modbus_cli_freebsd linux: sh: command: diff --git a/security/caldera-ot/files/patch-modbus-data-abilities-collection_d80b9cd5-b1d8-482a-a745-71d74f9d0885.yml b/security/caldera-ot/files/patch-modbus-data-abilities-collection_d80b9cd5-b1d8-482a-a745-71d74f9d0885.yml index 53774dac07e7..f67c72f62f9e 100644 --- a/security/caldera-ot/files/patch-modbus-data-abilities-collection_d80b9cd5-b1d8-482a-a745-71d74f9d0885.yml +++ b/security/caldera-ot/files/patch-modbus-data-abilities-collection_d80b9cd5-b1d8-482a-a745-71d74f9d0885.yml @@ -7,9 +7,9 @@ + freebsd: + sh: + command: -+ './modbus_cli-freebsd #{modbus.all.deviceip} --port #{modbus.all.deviceport} read_c #{modbus.read_c.start} #{modbus.read_c.count}' ++ './modbus_cli_freebsd #{modbus.all.deviceip} --port #{modbus.all.deviceport} read_c #{modbus.read_c.start} #{modbus.read_c.count}' + payloads: -+ - modbus_cli-freebsd ++ - modbus_cli_freebsd linux: sh: command: diff --git a/security/caldera-ot/files/patch-modbus-data-abilities-impact_056e6289-4cbf-417f-928a-d75125e4db4f.yml b/security/caldera-ot/files/patch-modbus-data-abilities-impact_056e6289-4cbf-417f-928a-d75125e4db4f.yml index 513df5f3c7b6..26d3871201be 100644 --- a/security/caldera-ot/files/patch-modbus-data-abilities-impact_056e6289-4cbf-417f-928a-d75125e4db4f.yml +++ b/security/caldera-ot/files/patch-modbus-data-abilities-impact_056e6289-4cbf-417f-928a-d75125e4db4f.yml @@ -7,9 +7,9 @@ + freebsd: + sh: + command: -+ './modbus_cli-freebsd #{modbus.all.deviceip} --port #{modbus.all.deviceport} write_c #{modbus.write_c.start} #{modbus.write_c.value}' ++ './modbus_cli_freebsd #{modbus.all.deviceip} --port #{modbus.all.deviceport} write_c #{modbus.write_c.start} #{modbus.write_c.value}' + payloads: -+ - modbus_cli-freebsd ++ - modbus_cli_freebsd linux: sh: command: diff --git a/security/caldera-ot/files/patch-modbus-data-abilities-impact_0f16b341-9730-4553-b6d6-8eb8def02c81.yml b/security/caldera-ot/files/patch-modbus-data-abilities-impact_0f16b341-9730-4553-b6d6-8eb8def02c81.yml index fda2f8fb2761..81af733763d2 100644 --- a/security/caldera-ot/files/patch-modbus-data-abilities-impact_0f16b341-9730-4553-b6d6-8eb8def02c81.yml +++ b/security/caldera-ot/files/patch-modbus-data-abilities-impact_0f16b341-9730-4553-b6d6-8eb8def02c81.yml @@ -7,9 +7,9 @@ + freebsd: + sh: + command: -+ './modbus_cli-freebsd #{modbus.all.deviceip} --port #{modbus.all.deviceport} write_multi_r #{modbus.write_multi_r.start} #{modbus.write_multi_r.value} #{modbus.write_multi_r.count}' ++ './modbus_cli_freebsd #{modbus.all.deviceip} --port #{modbus.all.deviceport} write_multi_r #{modbus.write_multi_r.start} #{modbus.write_multi_r.value} #{modbus.write_multi_r.count}' + payloads: -+ - modbus_cli-freebsd ++ - modbus_cli_freebsd linux: sh: command: diff --git a/security/caldera-ot/files/patch-modbus-data-abilities-impact_2a6e8c8e-f350-11ed-9156-23436b8f0e58.yml b/security/caldera-ot/files/patch-modbus-data-abilities-impact_2a6e8c8e-f350-11ed-9156-23436b8f0e58.yml index e3782766543b..44cff4b49b60 100644 --- a/security/caldera-ot/files/patch-modbus-data-abilities-impact_2a6e8c8e-f350-11ed-9156-23436b8f0e58.yml +++ b/security/caldera-ot/files/patch-modbus-data-abilities-impact_2a6e8c8e-f350-11ed-9156-23436b8f0e58.yml @@ -7,9 +7,9 @@ + freebsd: + sh: + command: -+ './modbus_cli-freebsd #{modbus.all.deviceip} --port #{modbus.all.deviceport} fuzz_r #{modbus.fuzzreg.start} #{modbus.fuzzreg.end} #{modbus.fuzzreg.count} --min #{modbus.fuzzreg.min} --max #{modbus.fuzzreg.max} --wait #{modbus.fuzzreg.wait}' ++ './modbus_cli_freebsd #{modbus.all.deviceip} --port #{modbus.all.deviceport} fuzz_r #{modbus.fuzzreg.start} #{modbus.fuzzreg.end} #{modbus.fuzzreg.count} --min #{modbus.fuzzreg.min} --max #{modbus.fuzzreg.max} --wait #{modbus.fuzzreg.wait}' + payloads: -+ - modbus_cli-freebsd ++ - modbus_cli_freebsd linux: sh: command: diff --git a/security/caldera-ot/files/patch-modbus-data-abilities-impact_40f78a8f-2aaa-4b1b-872f-7c6b0f1ddf3e.yml b/security/caldera-ot/files/patch-modbus-data-abilities-impact_40f78a8f-2aaa-4b1b-872f-7c6b0f1ddf3e.yml index cf02689d28c4..535329c6ea44 100644 --- a/security/caldera-ot/files/patch-modbus-data-abilities-impact_40f78a8f-2aaa-4b1b-872f-7c6b0f1ddf3e.yml +++ b/security/caldera-ot/files/patch-modbus-data-abilities-impact_40f78a8f-2aaa-4b1b-872f-7c6b0f1ddf3e.yml @@ -7,9 +7,9 @@ + freebsd: + sh: + command: -+ './modbus_cli-freebsd #{modbus.all.deviceip} --port #{modbus.all.deviceport} fuzz_c #{modbus.fuzzcoil.start} #{modbus.fuzzcoil.end} #{modbus.fuzzcoil.count} --wait #{modbus.fuzzcoil.wait}' ++ './modbus_cli_freebsd #{modbus.all.deviceip} --port #{modbus.all.deviceport} fuzz_c #{modbus.fuzzcoil.start} #{modbus.fuzzcoil.end} #{modbus.fuzzcoil.count} --wait #{modbus.fuzzcoil.wait}' + payloads: -+ - modbus_cli-freebsd ++ - modbus_cli_freebsd linux: sh: command: diff --git a/security/caldera-ot/files/patch-modbus-data-abilities-impact_d6991b6b-d3b2-4398-ad3f-d736ae09acf9.yml b/security/caldera-ot/files/patch-modbus-data-abilities-impact_d6991b6b-d3b2-4398-ad3f-d736ae09acf9.yml index 591bf61d499b..14d9a884f400 100644 --- a/security/caldera-ot/files/patch-modbus-data-abilities-impact_d6991b6b-d3b2-4398-ad3f-d736ae09acf9.yml +++ b/security/caldera-ot/files/patch-modbus-data-abilities-impact_d6991b6b-d3b2-4398-ad3f-d736ae09acf9.yml @@ -7,9 +7,9 @@ + freebsd: + sh: + command: -+ './modbus_cli-freebsd #{modbus.all.deviceip} --port #{modbus.all.deviceport} write_r #{modbus.write_r.start} #{modbus.write_r.value}' ++ './modbus_cli_freebsd #{modbus.all.deviceip} --port #{modbus.all.deviceport} write_r #{modbus.write_r.start} #{modbus.write_r.value}' + payloads: -+ - modbus_cli-freebsd ++ - modbus_cli_freebsd linux: sh: command: diff --git a/security/caldera-ot/files/patch-modbus-data-abilities-impact_fe321da2-e183-44a3-b423-b8cba9a8bda0.yml b/security/caldera-ot/files/patch-modbus-data-abilities-impact_fe321da2-e183-44a3-b423-b8cba9a8bda0.yml index c0a9f140d4fc..bc4a6ce3191e 100644 --- a/security/caldera-ot/files/patch-modbus-data-abilities-impact_fe321da2-e183-44a3-b423-b8cba9a8bda0.yml +++ b/security/caldera-ot/files/patch-modbus-data-abilities-impact_fe321da2-e183-44a3-b423-b8cba9a8bda0.yml @@ -7,9 +7,9 @@ + freebsd: + sh: + command: -+ './modbus_cli-freebsd #{modbus.all.deviceip} --port #{modbus.all.deviceport} write_multi_c #{modbus.write_multi_c.start} #{modbus.write_multi_c.value} #{modbus.write_multi_c.count}' ++ './modbus_cli_freebsd #{modbus.all.deviceip} --port #{modbus.all.deviceport} write_multi_c #{modbus.write_multi_c.start} #{modbus.write_multi_c.value} #{modbus.write_multi_c.count}' + payloads: -+ - modbus_cli-freebsd ++ - modbus_cli_freebsd linux: sh: command: diff --git a/security/caldera-ot/files/patch-modbus-payloads_58aaab96-7191-4978-acec-a3b1deb03332.yml b/security/caldera-ot/files/patch-modbus-payloads_58aaab96-7191-4978-acec-a3b1deb03332.yml index 0cb9891b1cb0..2e684dcc4e10 100644 --- a/security/caldera-ot/files/patch-modbus-payloads_58aaab96-7191-4978-acec-a3b1deb03332.yml +++ b/security/caldera-ot/files/patch-modbus-payloads_58aaab96-7191-4978-acec-a3b1deb03332.yml @@ -4,7 +4,7 @@ id: 58aaab96-7191-4978-acec-a3b1deb03332 name: Modbus Payloads standard_payloads: -+ modbus_cli-freebsd: ++ modbus_cli_freebsd: + description: Modbus Client program (FreeBSD) + id: 6f914083-738b-11ee-9734-8851fb56e3b2 modbus_cli: diff --git a/security/caldera-ot/files/patch-profinet_data_abilities_discovery_35e384c3-2c27-4cf6-8155-70b2cf4b6cef.yml b/security/caldera-ot/files/patch-profinet_data_abilities_discovery_35e384c3-2c27-4cf6-8155-70b2cf4b6cef.yml *** 349 LINES SKIPPED ***