diff --git a/security/caldera-ot/Makefile b/security/caldera-ot/Makefile index fe9ba6f42b7f..e5d5b084d582 100644 --- a/security/caldera-ot/Makefile +++ b/security/caldera-ot/Makefile @@ -1,106 +1,107 @@ PORTNAME= caldera-ot -DISTVERSION= 4.2.0 -PORTREVISION= 13 +DISTVERSION= 5.0.0 CATEGORIES= security python MAINTAINER= acm@FreeBSD.org COMMENT= caldera OT plugin and capabilities WWW= https://github.com/mitre/caldera-ot LICENSE= APACHE20 LICENSE_FILE= ${WRKSRC}/LICENSE BUILD_DEPENDS= bacnet-stack>0:devel/bacnet-stack \ cmake:devel/cmake-core \ - nuitka3:devel/nuitka \ + nuitka:devel/nuitka \ argtable3>0:devel/argtable3 \ libiec61850>0:devel/libiec61850 \ ${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} \ ${PYTHON_PKGNAMEPREFIX}pnio-dcp>0:devel/py-pnio-dcp@${PY_FLAVOR} 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} \ ${PYTHON_PKGNAMEPREFIX}pnio-dcp>0:devel/py-pnio-dcp@${PY_FLAVOR} \ - caldera4>=4.2.0:security/caldera4 + caldera>=4.2.0:security/caldera USE_GITHUB= yes GH_ACCOUNT= mitre GH_PROJECT= ${PORTNAME} -GH_TAGNAME= 6c6b971d96de121da33f27aa6f80806835346b23 -GH_TUPLE= mitre:bacnet:745432c:bacnet/bacnet \ - mitre:dnp3:01e3748:dnp3/dnp3 \ - mitre:modbus:e47e259:modbus/modbus \ - mitre:iec61850:a72e2c1:iec61850/iec61850 \ - mitre:profinet:7e62daa:profinet/profinet +GH_TAGNAME= 4e8079f9d1764becc9f80edd900fb761d446168f +GH_TUPLE= mitre:bacnet:f01044e:bacnet/bacnet \ + mitre:dnp3:50c5144:dnp3/dnp3 \ + mitre:modbus:51cab77:modbus/modbus \ + mitre:iec61850:0838d8a:iec61850/iec61850 \ + mitre:iec61850-payloads:e5446db:iec61850payloads/iec61850payloads \ + mitre:profinet:b85902a:profinet/profinet USES= compiler:c++11-lang dos2unix python DOS2UNIX_REGEX= .*\.([yml]) CALDERA_USER= caldera CALDERA_GROUP= caldera USERS= ${CALDERA_USER} GROUPS= ${CALDERA_GROUP} WWWDIR= ${PREFIX}/www/caldera SUB_FILES= pkg-message SUB_LIST= WWWDIR=${WWWDIR} post-extract: ${RM} -R ${WRKSRC}/.github cd ${WRKSRC} && ${RM} -f .coveragerc .dockerignore .eslintrc.js .flake8 \ .git* .pre* .stylelintrc.json Dockerfile post-patch: ${REINPLACE_CMD} -i "" -e 's|.sync|.tcp|g' ${WRKSRC}/modbus/src/src/modbus/client.py cd ${WRKSRC} && \ ${FIND} . -type f -name "*.orig" -exec ${RM} "{}" \; 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 ${WRKSRC}/iec61850payloads/ -DLOCALBASE=${LOCALBASE} -DBUILD_SYSTEM=ON && \ cmake --build . cd ${WRKSRC}/modbus/src/src && \ - ${LOCALBASE}/bin/nuitka3 --standalone --onefile \ + ${LOCALBASE}/bin/nuitka --standalone --onefile \ --output-filename=modbus_cli_freebsd --output-dir=${WRKDIR}/modbus_cli-build modbus_cli.py cd ${WRKDIR}/profinet-build && \ - ${LOCALBASE}/bin/nuitka3 --standalone --onefile \ + ${LOCALBASE}/bin/nuitka --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/iec61850/src @${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 @cd ${WRKSRC}/iec61850 && ${COPYTREE_SHARE} . ${STAGEDIR}/${WWWDIR}/plugins/iec61850 + @cd ${WRKSRC}/iec61850payloads && ${COPYTREE_SHARE} . ${STAGEDIR}/${WWWDIR}/plugins/iec61850/src @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 <bsd.port.mk> diff --git a/security/caldera-ot/distinfo b/security/caldera-ot/distinfo index 376173ddbb79..ed6fe2625436 100644 --- a/security/caldera-ot/distinfo +++ b/security/caldera-ot/distinfo @@ -1,13 +1,15 @@ -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 -SIZE (mitre-bacnet-745432c_GH0.tar.gz) = 2493167 -SHA256 (mitre-dnp3-01e3748_GH0.tar.gz) = 5324a9910b22dd101ef52b2b48334f67d4e9d1f05a1abaa02b7b097a96dbee64 -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 +TIMESTAMP = 1734769609 +SHA256 (mitre-caldera-ot-5.0.0-4e8079f9d1764becc9f80edd900fb761d446168f_GH0.tar.gz) = 35e82a1cb08c1f88724f9c80836ecf5498c065ecce35533f0e85f9ee56d6ddcb +SIZE (mitre-caldera-ot-5.0.0-4e8079f9d1764becc9f80edd900fb761d446168f_GH0.tar.gz) = 539795 +SHA256 (mitre-bacnet-f01044e_GH0.tar.gz) = 72cab1031cfe8788dc735945b18f295b27136e27622eefa0f7ae28e27643eaf9 +SIZE (mitre-bacnet-f01044e_GH0.tar.gz) = 3674254 +SHA256 (mitre-dnp3-50c5144_GH0.tar.gz) = 7d087ecd6ad1d84b35ad0cddf3ce7a92a5b6be27693f9e198571dd547494dd0e +SIZE (mitre-dnp3-50c5144_GH0.tar.gz) = 97590733 +SHA256 (mitre-modbus-51cab77_GH0.tar.gz) = 77f20876ae5a53c3fb33fef79b76e3851daa9a0bb6e8257a1bcaca54b7d8ae36 +SIZE (mitre-modbus-51cab77_GH0.tar.gz) = 38273335 +SHA256 (mitre-iec61850-0838d8a_GH0.tar.gz) = 3da67e8c1797432dc72b5ae10458a5322d84a02e71207f02e4b34ea32870c04b +SIZE (mitre-iec61850-0838d8a_GH0.tar.gz) = 269038 +SHA256 (mitre-iec61850-payloads-e5446db_GH0.tar.gz) = 2dec0029fba79a1fbffdba6da8cbb8b133a7245e8a8e3dcfeac170e066c18915 +SIZE (mitre-iec61850-payloads-e5446db_GH0.tar.gz) = 38886 +SHA256 (mitre-profinet-b85902a_GH0.tar.gz) = 698da698764c4b9a354d7c9a818c6ef566234189ffc3f64e38cdd8498c4e6052 +SIZE (mitre-profinet-b85902a_GH0.tar.gz) = 24279045 diff --git a/security/caldera-ot/files/patch-bacnet-data-abilities-collection_485e97e7-c352-432d-b8d3-fa8460e4fe49.yml b/security/caldera-ot/files/patch-bacnet-data-abilities-collection_485e97e7-c352-432d-b8d3-fa8460e4fe49.yml new file mode 100644 index 000000000000..9696199aed70 --- /dev/null +++ b/security/caldera-ot/files/patch-bacnet-data-abilities-collection_485e97e7-c352-432d-b8d3-fa8460e4fe49.yml @@ -0,0 +1,21 @@ +--- bacnet/data/abilities/collection/485e97e7-c352-432d-b8d3-fa8460e4fe49.yml 2024-12-21 00:57:08.538685000 -0800 ++++ bacnet/data/abilities/collection/485e97e7-c352-432d-b8d3-fa8460e4fe49.yml 2024-12-21 01:02:20.136256000 -0800 +@@ -20,6 +20,11 @@ + name: Point & Tag Identification + repeatable: True + platforms: ++ freebsd: ++ sh: ++ timeout: 360 ++ command: | ++ bacrpm #{bacnet.device.instance} device #{bacnet.device.instance} 77,121,70,28,76 + linux: + sh: + timeout: 360 +@@ -33,4 +38,4 @@ + command: | + .\bacrpm.exe #{bacnet.device.instance} device #{bacnet.device.instance} 77,121,70,28,76 + payloads: +- - bacrpm.exe +\ No newline at end of file ++ - bacrpm.exe diff --git a/security/caldera-ot/files/patch-bacnet-data-abilities-collection_51fcfe67-1987-4271-ab2c-70f107328673.yml b/security/caldera-ot/files/patch-bacnet-data-abilities-collection_51fcfe67-1987-4271-ab2c-70f107328673.yml new file mode 100644 index 000000000000..b28a2ab94199 --- /dev/null +++ b/security/caldera-ot/files/patch-bacnet-data-abilities-collection_51fcfe67-1987-4271-ab2c-70f107328673.yml @@ -0,0 +1,21 @@ +--- bacnet/data/abilities/collection/51fcfe67-1987-4271-ab2c-70f107328673.yml 2024-12-21 01:00:57.519482000 -0800 ++++ bacnet/data/abilities/collection/51fcfe67-1987-4271-ab2c-70f107328673.yml 2024-12-21 01:02:09.639502000 -0800 +@@ -14,6 +14,11 @@ + name: Automated Collection + repeatable: True + platforms: ++ freebsd: ++ sh: ++ timeout: 360 ++ command: | ++ bacscov #{bacnet.device.instance} #{bacnet.obj.type} #{bacnet.obj.instance} #{bacnet.scov.process_id} #{bacnet.scov.confirm_status} + linux: + sh: + timeout: 360 +@@ -27,4 +32,4 @@ + command: | + .\bacscov.exe #{bacnet.device.instance} #{bacnet.obj.type} #{bacnet.obj.instance} #{bacnet.scov.process_id} #{bacnet.scov.confirm_status} + payloads: +- - bacscov.exe +\ No newline at end of file ++ - bacscov.exe diff --git a/security/caldera-ot/files/patch-bacnet-data-abilities-collection_a5ff2998-1b03-4782-acca-5475af0f7954.yml b/security/caldera-ot/files/patch-bacnet-data-abilities-collection_a5ff2998-1b03-4782-acca-5475af0f7954.yml new file mode 100644 index 000000000000..877ed3c5d5a6 --- /dev/null +++ b/security/caldera-ot/files/patch-bacnet-data-abilities-collection_a5ff2998-1b03-4782-acca-5475af0f7954.yml @@ -0,0 +1,21 @@ +--- bacnet/data/abilities/collection/a5ff2998-1b03-4782-acca-5475af0f7954.yml 2024-12-21 01:03:05.717078000 -0800 ++++ bacnet/data/abilities/collection/a5ff2998-1b03-4782-acca-5475af0f7954.yml 2024-12-21 01:04:23.529844000 -0800 +@@ -17,6 +17,11 @@ + name: Point & Tag Identification + repeatable: True + platforms: ++ freebsd: ++ sh: ++ timeout: 360 ++ command: | ++ bacrpm #{bacnet.device.instance} #{bacnet.obj.type} #{bacnet.obj.instance} #{bacnet.obj.property} + linux: + sh: + timeout: 360 +@@ -30,4 +35,4 @@ + command: | + .\bacrpm.exe #{bacnet.device.instance} #{bacnet.obj.type} #{bacnet.obj.instance} #{bacnet.obj.property} + payloads: +- - bacrpm.exe +\ No newline at end of file ++ - bacrpm.exe diff --git a/security/caldera-ot/files/patch-bacnet-data-abilities-collection_bd13ac81-b932-463d-95aa-a22aeefbc9ac.yml b/security/caldera-ot/files/patch-bacnet-data-abilities-collection_bd13ac81-b932-463d-95aa-a22aeefbc9ac.yml new file mode 100644 index 000000000000..46ea4dd7e1a7 --- /dev/null +++ b/security/caldera-ot/files/patch-bacnet-data-abilities-collection_bd13ac81-b932-463d-95aa-a22aeefbc9ac.yml @@ -0,0 +1,22 @@ +--- bacnet/data/abilities/collection/bd13ac81-b932-463d-95aa-a22aeefbc9ac.yml 2024-12-21 01:05:30.887101000 -0800 ++++ bacnet/data/abilities/collection/bd13ac81-b932-463d-95aa-a22aeefbc9ac.yml 2024-12-21 01:05:57.933635000 -0800 +@@ -20,6 +20,12 @@ + name: Point & Tag Identification + repeatable: True + platforms: ++ freebsd: ++ sh: ++ timeout: 360 ++ command: | ++ bacrpm #{bacnet.device.instance} #{bacnet.object.type} #{bacnet.object.instance} 77,28,85,117 ++ + linux: + sh: + timeout: 360 +@@ -34,4 +40,4 @@ + command: | + .\bacrpm.exe #{bacnet.device.instance} #{bacnet.object.type} #{bacnet.object.instance} 77,28,85,117 + payloads: +- - bacrpm.exe +\ No newline at end of file ++ - bacrpm.exe diff --git a/security/caldera-ot/files/patch-bacnet-data-abilities-collection_d6aca3d5-3a10-4e28-9f88-43cc0c8f2b40.yml b/security/caldera-ot/files/patch-bacnet-data-abilities-collection_d6aca3d5-3a10-4e28-9f88-43cc0c8f2b40.yml new file mode 100644 index 000000000000..ff1110f50b7d --- /dev/null +++ b/security/caldera-ot/files/patch-bacnet-data-abilities-collection_d6aca3d5-3a10-4e28-9f88-43cc0c8f2b40.yml @@ -0,0 +1,21 @@ +--- bacnet/data/abilities/collection/d6aca3d5-3a10-4e28-9f88-43cc0c8f2b40.yml 2024-12-21 01:06:38.700686000 -0800 ++++ bacnet/data/abilities/collection/d6aca3d5-3a10-4e28-9f88-43cc0c8f2b40.yml 2024-12-21 01:07:00.573524000 -0800 +@@ -14,6 +14,11 @@ + name: Monitor Process State + repeatable: True + platforms: ++ freebsd: ++ sh: ++ timeout: 360 ++ command: | ++ bacge #{bacnet.device.instance} + linux: + sh: + timeout: 360 +@@ -27,4 +32,4 @@ + command: | + .\bacge.exe #{bacnet.device.instance} + payloads: +- - bacge.exe +\ No newline at end of file ++ - bacge.exe diff --git a/security/caldera-ot/files/patch-bacnet-data-abilities-discovery_b93bd80e-3a70-11eb-adc1-0242ac120002.yml b/security/caldera-ot/files/patch-bacnet-data-abilities-discovery_b93bd80e-3a70-11eb-adc1-0242ac120002.yml index 5cf9f6a5e6eb..97d66765659f 100644 --- a/security/caldera-ot/files/patch-bacnet-data-abilities-discovery_b93bd80e-3a70-11eb-adc1-0242ac120002.yml +++ b/security/caldera-ot/files/patch-bacnet-data-abilities-discovery_b93bd80e-3a70-11eb-adc1-0242ac120002.yml @@ -1,21 +1,14 @@ ---- bacnet/data/abilities/discovery/b93bd80e-3a70-11eb-adc1-0242ac120002.yml 2023-10-25 16:36:50.057204000 -0500 -+++ bacnet/data/abilities/discovery/b93bd80e-3a70-11eb-adc1-0242ac120002.yml 2023-10-25 16:38:29.989935000 -0500 -@@ -10,6 +10,11 @@ +--- bacnet/data/abilities/discovery/b93bd80e-3a70-11eb-adc1-0242ac120002.yml 2024-12-21 01:17:29.630383000 -0800 ++++ bacnet/data/abilities/discovery/b93bd80e-3a70-11eb-adc1-0242ac120002.yml 2024-12-21 01:17:51.308327000 -0800 +@@ -14,6 +14,11 @@ name: Remote System Discovery repeatable: True platforms: + freebsd: + sh: + timeout: 360 + command: | + bacwi linux: sh: timeout: 360 -@@ -23,4 +28,4 @@ - command: | - .\bacwi.exe - payloads: -- - bacwi.exe -\ No newline at end of file -+ - bacwi.exe diff --git a/security/caldera-ot/files/patch-bacnet-data-abilities-discovery_dc103456-4708-4760-acdb-a3882946fbbb.yml b/security/caldera-ot/files/patch-bacnet-data-abilities-discovery_dc103456-4708-4760-acdb-a3882946fbbb.yml new file mode 100644 index 000000000000..dc925a459452 --- /dev/null +++ b/security/caldera-ot/files/patch-bacnet-data-abilities-discovery_dc103456-4708-4760-acdb-a3882946fbbb.yml @@ -0,0 +1,21 @@ +--- bacnet/data/abilities/discovery/dc103456-4708-4760-acdb-a3882946fbbb.yml 2024-12-21 01:45:18.817141000 -0800 ++++ bacnet/data/abilities/discovery/dc103456-4708-4760-acdb-a3882946fbbb.yml 2024-12-21 01:45:41.938645000 -0800 +@@ -15,6 +15,11 @@ + name: Remote System Information Discovery + repeatable: True + platforms: ++ freebsd: ++ sh: ++ timeout: 360 ++ command: | ++ bacwh #{bacnet.device.min_instance} #{bacnet.device.max_instance} #{bacnet.obj.name} + linux: + sh: + timeout: 360 +@@ -28,4 +33,4 @@ + command: | + .\bacwh.exe #{bacnet.device.min_instance} #{bacnet.device.max_instance} #{bacnet.obj.name} + payloads: +- - bacwh.exe +\ No newline at end of file ++ - bacwh.exe diff --git a/security/caldera-ot/files/patch-bacnet-data-abilities-inhibit-response-function_1c11848e-205a-42d6-8ca0-203484756435.yml b/security/caldera-ot/files/patch-bacnet-data-abilities-inhibit-response-function_1c11848e-205a-42d6-8ca0-203484756435.yml new file mode 100644 index 000000000000..c6b8c877a9f9 --- /dev/null +++ b/security/caldera-ot/files/patch-bacnet-data-abilities-inhibit-response-function_1c11848e-205a-42d6-8ca0-203484756435.yml @@ -0,0 +1,21 @@ +--- bacnet/data/abilities/inhibit-response-function/1c11848e-205a-42d6-8ca0-203484756435.yml 2024-12-21 01:09:16.664941000 -0800 ++++ bacnet/data/abilities/inhibit-response-function/1c11848e-205a-42d6-8ca0-203484756435.yml 2024-12-21 01:10:09.777612000 -0800 +@@ -21,6 +21,11 @@ + name: Device Restart/Shutdown + repeatable: True + platforms: ++ freebsd: ++ sh: ++ timeout: 360 ++ command: | ++ bacrd #{bacnet.device.instance} 1 + linux: + sh: + timeout: 360 +@@ -34,4 +39,4 @@ + command: | + .\bacrd.exe #{bacnet.device.instance} 1 + payloads: +- - bacrd.exe +\ No newline at end of file ++ - bacrd.exe diff --git a/security/caldera-ot/files/patch-bacnet-data-abilities-inhibit-response-function_bdbeabd1-0f55-4974-a720-42c15fcb75d9.yml b/security/caldera-ot/files/patch-bacnet-data-abilities-inhibit-response-function_bdbeabd1-0f55-4974-a720-42c15fcb75d9.yml new file mode 100644 index 000000000000..7b5ab314e190 --- /dev/null +++ b/security/caldera-ot/files/patch-bacnet-data-abilities-inhibit-response-function_bdbeabd1-0f55-4974-a720-42c15fcb75d9.yml @@ -0,0 +1,21 @@ +--- bacnet/data/abilities/inhibit-response-function/bdbeabd1-0f55-4974-a720-42c15fcb75d9.yml 2024-12-21 01:09:21.529508000 -0800 ++++ bacnet/data/abilities/inhibit-response-function/bdbeabd1-0f55-4974-a720-42c15fcb75d9.yml 2024-12-21 01:10:28.780129000 -0800 +@@ -21,6 +21,11 @@ + name: Device Restart/Shutdown + repeatable: True + platforms: ++ freebsd: ++ sh: ++ timeout: 360 ++ command: | ++ bacrd #{bacnet.device.instance} 0 + linux: + sh: + timeout: 360 +@@ -34,4 +39,4 @@ + command: | + .\bacrd.exe #{bacnet.device.instance} 0 + payloads: +- - bacrd.exe +\ No newline at end of file ++ - bacrd.exe diff --git a/security/caldera-ot/files/patch-bacnet-payloads_17f06fa2-44e1-11eb-b378-0242ac130002.yml b/security/caldera-ot/files/patch-bacnet-payloads_17f06fa2-44e1-11eb-b378-0242ac130002.yml index 8856a69d707c..7b3bcb9767b0 100644 --- a/security/caldera-ot/files/patch-bacnet-payloads_17f06fa2-44e1-11eb-b378-0242ac130002.yml +++ b/security/caldera-ot/files/patch-bacnet-payloads_17f06fa2-44e1-11eb-b378-0242ac130002.yml @@ -1,29 +1,27 @@ ---- bacnet/payloads/17f06fa2-44e1-11eb-b378-0242ac130002.yml 2023-10-25 18:28:04.475705000 -0500 -+++ bacnet/payloads/17f06fa2-44e1-11eb-b378-0242ac130002.yml 2023-10-25 18:29:24.972817000 -0500 -@@ -21,6 +21,9 @@ - id: 6ecaedd8-656c-11eb-ae93-0242ac130002 +--- bacnet/payloads/17f06fa2-44e1-11eb-b378-0242ac130002.yml 2024-11-19 07:46:05.000000000 -0800 ++++ bacnet/payloads/17f06fa2-44e1-11eb-b378-0242ac130002.yml 2024-12-21 00:19:52.927470000 -0800 +@@ -37,6 +37,9 @@ + id: 2fb72b32-ca32-4397-a706-33ea8f0b5425 - # WriteProp -+ bacwp-freebsd: -+ description: BACnet WriteProperty Service - FreeBSD -+ id: 3781c3ee-738e-11ee-9734-8851fb56e3b2 - bacwp: - description: BACnet WriteProperty Service - Linux - id: 1a2faf5a-4601-11eb-b378-0242ac130002 -@@ -29,6 +32,9 @@ - id: 82b101d4-656c-11eb-ae93-0242ac130002 - - # ReadProp + # ReadProperty + bacrp-freebsd: + description: BACnet ReadProperty Service - FreeBSD + id: 4b6ce399-738e-11ee-9734-8851fb56e3b2 bacrp: description: BACnet ReadProperty Service - Linux id: 748d5c80-5679-11eb-ae93-0242ac130002 -@@ -50,4 +56,4 @@ - id: e2e4d612-656b-11eb-ae93-0242ac130002 - bacarf.exe: - description: BACnet AtomicReadFile - Windows -- id: 938f09a6-656c-11eb-ae93-0242ac130002 +@@ -85,9 +88,12 @@ + id: 6292179e-656c-11eb-ae93-0242ac130002 + + # WriteProperty ++ bacwp-freebsd: ++ description: BACnet WriteProperty Service - FreeBSD ++ id: 3781c3ee-738e-11ee-9734-8851fb56e3b2 + bacwp: + description: BACnet WriteProperty Service - Linux + id: 1a2faf5a-4601-11eb-b378-0242ac130002 + bacwp.exe: + description: BACnet WriteProperty Service - Windows +- id: 82b101d4-656c-11eb-ae93-0242ac130002 \ No newline at end of file -+ id: 938f09a6-656c-11eb-ae93-0242ac130002 ++ id: 82b101d4-656c-11eb-ae93-0242ac130002 diff --git a/security/caldera-ot/files/patch-iec61850_src_CMakeLists.txt b/security/caldera-ot/files/patch-iec61850payloads_CMakeLists.txt similarity index 66% rename from security/caldera-ot/files/patch-iec61850_src_CMakeLists.txt rename to security/caldera-ot/files/patch-iec61850payloads_CMakeLists.txt index ef5f1798367f..66de681158b8 100644 --- a/security/caldera-ot/files/patch-iec61850_src_CMakeLists.txt +++ b/security/caldera-ot/files/patch-iec61850payloads_CMakeLists.txt @@ -1,10 +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 +--- iec61850payloads/CMakeLists.txt 2024-02-18 01:00:33.415323000 -0500 ++++ iec61850payloads/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-iec61850payloads_app_CMakeLists.txt similarity index 88% rename from security/caldera-ot/files/patch-iec61850_src_app_CMakeLists.txt rename to security/caldera-ot/files/patch-iec61850payloads_app_CMakeLists.txt index 3ead9f0ebb76..5ce91eb3e517 100644 --- a/security/caldera-ot/files/patch-iec61850_src_app_CMakeLists.txt +++ b/security/caldera-ot/files/patch-iec61850payloads_app_CMakeLists.txt @@ -1,35 +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 +--- iec61850payloads/app/CMakeLists.txt 2024-02-18 01:01:15.171907000 -0500 ++++ iec61850payloads/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-iec61850payloads_lib_CMakeLists.txt similarity index 88% rename from security/caldera-ot/files/patch-iec61850_src_lib_CMakeLists.txt rename to security/caldera-ot/files/patch-iec61850payloads_lib_CMakeLists.txt index c3c1c26d20a7..96a8a2830c90 100644 --- a/security/caldera-ot/files/patch-iec61850_src_lib_CMakeLists.txt +++ b/security/caldera-ot/files/patch-iec61850payloads_lib_CMakeLists.txt @@ -1,34 +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 +--- iec61850payloads/lib/CMakeLists.txt 2024-02-18 01:24:59.343348000 -0500 ++++ iec61850payloads/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/pkg-message.in b/security/caldera-ot/files/pkg-message.in index 53f6519d89b3..c73a2fe3acc4 100644 --- a/security/caldera-ot/files/pkg-message.in +++ b/security/caldera-ot/files/pkg-message.in @@ -1,18 +1,18 @@ [ { type: install message: <<EOM Caldera OT plugins port was installed -1) Take on mind it is a modifying version of Caldera-OT for include FreeBSD as +1) Take on mind it is a modifying version of Caldera-OT. It includes FreeBSD as supported OS and you could found some issues. Problem reports are welcome. 2) Do not forget modify configuration file (default.yml or local.yml) before of run Caldera to enable bacnet, dnp3, modbus, iec61850 and profinet plugins. Caldera configuration files are located at: %%WWWDIR%%/conf 3) Enjoy it EOM } ] diff --git a/security/caldera-ot/pkg-plist b/security/caldera-ot/pkg-plist index fe6f762edb9d..ee719d4bb9d4 100644 --- a/security/caldera-ot/pkg-plist +++ b/security/caldera-ot/pkg-plist @@ -1,412 +1,419 @@ @mode 640 @owner caldera @group caldera %%WWWDIR%%/plugins/bacnet/.gitignore %%WWWDIR%%/plugins/bacnet/LICENSE %%WWWDIR%%/plugins/bacnet/NOTICE.md %%WWWDIR%%/plugins/bacnet/README.md -%%WWWDIR%%/plugins/bacnet/app/bacnet_api.py -%%WWWDIR%%/plugins/bacnet/app/bacnet_gui.py %%WWWDIR%%/plugins/bacnet/app/bacnet_svc.py %%WWWDIR%%/plugins/bacnet/data/abilities/collection/1811b7f2-3a73-11eb-adc1-0242ac120002.yml %%WWWDIR%%/plugins/bacnet/data/abilities/collection/47432648-5678-11eb-ae93-0242ac130002.yml +%%WWWDIR%%/plugins/bacnet/data/abilities/collection/485e97e7-c352-432d-b8d3-fa8460e4fe49.yml +%%WWWDIR%%/plugins/bacnet/data/abilities/collection/51fcfe67-1987-4271-ab2c-70f107328673.yml %%WWWDIR%%/plugins/bacnet/data/abilities/collection/73a8f024-656d-11eb-ae93-0242ac130002.yml +%%WWWDIR%%/plugins/bacnet/data/abilities/collection/a5ff2998-1b03-4782-acca-5475af0f7954.yml +%%WWWDIR%%/plugins/bacnet/data/abilities/collection/bd13ac81-b932-463d-95aa-a22aeefbc9ac.yml +%%WWWDIR%%/plugins/bacnet/data/abilities/collection/d6aca3d5-3a10-4e28-9f88-43cc0c8f2b40.yml %%WWWDIR%%/plugins/bacnet/data/abilities/discovery/b93bd80e-3a70-11eb-adc1-0242ac120002.yml +%%WWWDIR%%/plugins/bacnet/data/abilities/discovery/dc103456-4708-4760-acdb-a3882946fbbb.yml %%WWWDIR%%/plugins/bacnet/data/abilities/impact/1a2faf5a-4601-11eb-b378-0242ac130002.yml %%WWWDIR%%/plugins/bacnet/data/abilities/impact/7888f6a0-454e-11eb-b378-0242ac130002.yml +%%WWWDIR%%/plugins/bacnet/data/abilities/inhibit-response-function/1c11848e-205a-42d6-8ca0-203484756435.yml +%%WWWDIR%%/plugins/bacnet/data/abilities/inhibit-response-function/bdbeabd1-0f55-4974-a720-42c15fcb75d9.yml %%WWWDIR%%/plugins/bacnet/data/sources/ddc9cb50-74b7-4f32-9ed1-39bb0a58c954.yml -%%WWWDIR%%/plugins/bacnet/docs/assets/bacnet-bd-transparent.png -%%WWWDIR%%/plugins/bacnet/docs/assets/bacnet-bd.png -%%WWWDIR%%/plugins/bacnet/docs/assets/ics-coverage-map.png +%%WWWDIR%%/plugins/bacnet/docs/assets/bacnet-heatmap.png +%%WWWDIR%%/plugins/bacnet/docs/assets/bacnet_blockdiagram.png %%WWWDIR%%/plugins/bacnet/docs/bacnet.md +%%WWWDIR%%/plugins/bacnet/gui/views/bacnet.vue %%WWWDIR%%/plugins/bacnet/hook.py %%WWWDIR%%/plugins/bacnet/payloads/17f06fa2-44e1-11eb-b378-0242ac130002.yml %%WWWDIR%%/plugins/bacnet/payloads/bacarf %%WWWDIR%%/plugins/bacnet/payloads/bacarf.exe %%WWWDIR%%/plugins/bacnet/payloads/bacawf %%WWWDIR%%/plugins/bacnet/payloads/bacawf.exe %%WWWDIR%%/plugins/bacnet/payloads/bacepics %%WWWDIR%%/plugins/bacnet/payloads/bacepics.exe +%%WWWDIR%%/plugins/bacnet/payloads/bacge +%%WWWDIR%%/plugins/bacnet/payloads/bacge.exe +%%WWWDIR%%/plugins/bacnet/payloads/bacrd +%%WWWDIR%%/plugins/bacnet/payloads/bacrd.exe %%WWWDIR%%/plugins/bacnet/payloads/bacrp %%WWWDIR%%/plugins/bacnet/payloads/bacrp-freebsd %%WWWDIR%%/plugins/bacnet/payloads/bacrp.exe +%%WWWDIR%%/plugins/bacnet/payloads/bacrpm +%%WWWDIR%%/plugins/bacnet/payloads/bacrpm.exe +%%WWWDIR%%/plugins/bacnet/payloads/bacscov +%%WWWDIR%%/plugins/bacnet/payloads/bacscov.exe +%%WWWDIR%%/plugins/bacnet/payloads/bacwh +%%WWWDIR%%/plugins/bacnet/payloads/bacwh.exe %%WWWDIR%%/plugins/bacnet/payloads/bacwi %%WWWDIR%%/plugins/bacnet/payloads/bacwi.exe %%WWWDIR%%/plugins/bacnet/payloads/bacwp %%WWWDIR%%/plugins/bacnet/payloads/bacwp-freebsd %%WWWDIR%%/plugins/bacnet/payloads/bacwp.exe %%WWWDIR%%/plugins/bacnet/src/README.md %%WWWDIR%%/plugins/bacnet/src/bacnet-stack/apps/readprop/main.c %%WWWDIR%%/plugins/bacnet/src/bacnet-stack/apps/writeprop/main.c -%%WWWDIR%%/plugins/bacnet/static/.gitkeep %%WWWDIR%%/plugins/bacnet/templates/bacnet.html %%WWWDIR%%/plugins/dnp3/.gitignore %%WWWDIR%%/plugins/dnp3/LICENSE %%WWWDIR%%/plugins/dnp3/NOTICE.md %%WWWDIR%%/plugins/dnp3/README.md -%%WWWDIR%%/plugins/dnp3/app/dnp3_api.py -%%WWWDIR%%/plugins/dnp3/app/dnp3_gui.py %%WWWDIR%%/plugins/dnp3/app/dnp3_svc.py %%WWWDIR%%/plugins/dnp3/data/abilities/collection/316f2be2-3103-4065-a128-50ae3456e7f3.yml %%WWWDIR%%/plugins/dnp3/data/abilities/collection/7f68f5b0-1bc8-4fee-baa5-ab7e95ec2782.yml %%WWWDIR%%/plugins/dnp3/data/abilities/collection/a2c8f215-d4d8-4e2b-b73f-6d33ecc89028.yml %%WWWDIR%%/plugins/dnp3/data/abilities/impact/14b02f84-e3dd-4297-837b-8b5b7056dd52.yml %%WWWDIR%%/plugins/dnp3/data/abilities/impact/1a3600f7-f434-46f0-82f8-7a7a355f62cb.yml %%WWWDIR%%/plugins/dnp3/data/abilities/impact/2a4109a7-5a44-42a5-8944-83b0ba93ed47.yml %%WWWDIR%%/plugins/dnp3/data/abilities/impact/3c0839b3-3335-47cd-b3fe-f0ae127a4903.yml %%WWWDIR%%/plugins/dnp3/data/abilities/impact/4f8c7df8-5031-4d36-ae58-d3509976bd9d.yml %%WWWDIR%%/plugins/dnp3/data/abilities/impact/6e8fce00-860a-47bb-a694-1528102ad56a.yml %%WWWDIR%%/plugins/dnp3/data/abilities/impact/afa55ec5-4762-40ad-8d38-ac98da8f43bb.yml %%WWWDIR%%/plugins/dnp3/data/abilities/inhibit-response-function/69cddd4e-92e3-430f-af44-1da58f89e018.yml %%WWWDIR%%/plugins/dnp3/data/abilities/inhibit-response-function/7a9cadfe-8522-422f-9e19-3953371b5474.yml %%WWWDIR%%/plugins/dnp3/data/abilities/inhibit-response-function/9a65f3ea-67b9-4eff-99c4-b635f8267ea4.yml %%WWWDIR%%/plugins/dnp3/data/sources/acddbe28-e240-465f-b721-03b3d64c1d93.yml %%WWWDIR%%/plugins/dnp3/docs/assets/dnp3_bd.png %%WWWDIR%%/plugins/dnp3/docs/assets/dnp3_bd_transparent.png %%WWWDIR%%/plugins/dnp3/docs/assets/heatmap.PNG %%WWWDIR%%/plugins/dnp3/docs/dnp3.md +%%WWWDIR%%/plugins/dnp3/gui/views/dnp3.vue %%WWWDIR%%/plugins/dnp3/hook.py %%WWWDIR%%/plugins/dnp3/payloads/dnp3actions.exe %%WWWDIR%%/plugins/dnp3/payloads/dnp3poll.exe %%WWWDIR%%/plugins/dnp3/payloads/dnp3server.exe %%WWWDIR%%/plugins/dnp3/payloads/f1c40891-944d-4fe5-99bb-ea99a0ada34a.yml %%WWWDIR%%/plugins/dnp3/src/.gitignore %%WWWDIR%%/plugins/dnp3/src/CMakeLists.txt %%WWWDIR%%/plugins/dnp3/src/README.md %%WWWDIR%%/plugins/dnp3/src/bin/dnp3actions.exe %%WWWDIR%%/plugins/dnp3/src/bin/dnp3poll.exe %%WWWDIR%%/plugins/dnp3/src/bin/dnp3server.exe %%WWWDIR%%/plugins/dnp3/src/deps/cmake/asio.cmake %%WWWDIR%%/plugins/dnp3/src/deps/cmake/catch.cmake %%WWWDIR%%/plugins/dnp3/src/deps/cmake/exe4cpp.cmake %%WWWDIR%%/plugins/dnp3/src/deps/cmake/opendnp3-export-debug.cmake %%WWWDIR%%/plugins/dnp3/src/deps/cmake/opendnp3-export.cmake %%WWWDIR%%/plugins/dnp3/src/deps/cmake/ser4cpp.cmake %%WWWDIR%%/plugins/dnp3/src/deps/include/CLI11.hpp %%WWWDIR%%/plugins/dnp3/src/deps/include/opendnp3/ConsoleLogger.h %%WWWDIR%%/plugins/dnp3/src/deps/include/opendnp3/DNP3Manager.h %%WWWDIR%%/plugins/dnp3/src/deps/include/opendnp3/ErrorCodes.h %%WWWDIR%%/plugins/dnp3/src/deps/include/opendnp3/IResource.h %%WWWDIR%%/plugins/dnp3/src/deps/include/opendnp3/IStack.h %%WWWDIR%%/plugins/dnp3/src/deps/include/opendnp3/StackStatistics.h %%WWWDIR%%/plugins/dnp3/src/deps/include/opendnp3/app/AnalogCommandEvent.h %%WWWDIR%%/plugins/dnp3/src/deps/include/opendnp3/app/AnalogOutput.h %%WWWDIR%%/plugins/dnp3/src/deps/include/opendnp3/app/AppConstants.h %%WWWDIR%%/plugins/dnp3/src/deps/include/opendnp3/app/BaseMeasurementTypes.h %%WWWDIR%%/plugins/dnp3/src/deps/include/opendnp3/app/BinaryCommandEvent.h %%WWWDIR%%/plugins/dnp3/src/deps/include/opendnp3/app/ClassField.h %%WWWDIR%%/plugins/dnp3/src/deps/include/opendnp3/app/ControlRelayOutputBlock.h %%WWWDIR%%/plugins/dnp3/src/deps/include/opendnp3/app/DNPTime.h %%WWWDIR%%/plugins/dnp3/src/deps/include/opendnp3/app/EventCells.h %%WWWDIR%%/plugins/dnp3/src/deps/include/opendnp3/app/EventTriggers.h %%WWWDIR%%/plugins/dnp3/src/deps/include/opendnp3/app/EventType.h %%WWWDIR%%/plugins/dnp3/src/deps/include/opendnp3/app/Flags.h %%WWWDIR%%/plugins/dnp3/src/deps/include/opendnp3/app/GroupVariationID.h %%WWWDIR%%/plugins/dnp3/src/deps/include/opendnp3/app/IINField.h %%WWWDIR%%/plugins/dnp3/src/deps/include/opendnp3/app/Indexed.h %%WWWDIR%%/plugins/dnp3/src/deps/include/opendnp3/app/MeasurementInfo.h %%WWWDIR%%/plugins/dnp3/src/deps/include/opendnp3/app/MeasurementTypes.h %%WWWDIR%%/plugins/dnp3/src/deps/include/opendnp3/app/OctetData.h %%WWWDIR%%/plugins/dnp3/src/deps/include/opendnp3/app/OctetString.h %%WWWDIR%%/plugins/dnp3/src/deps/include/opendnp3/app/parsing/ICollection.h %%WWWDIR%%/plugins/dnp3/src/deps/include/opendnp3/channel/ChannelRetry.h %%WWWDIR%%/plugins/dnp3/src/deps/include/opendnp3/channel/IChannel.h %%WWWDIR%%/plugins/dnp3/src/deps/include/opendnp3/channel/IChannelListener.h %%WWWDIR%%/plugins/dnp3/src/deps/include/opendnp3/channel/IListener.h %%WWWDIR%%/plugins/dnp3/src/deps/include/opendnp3/channel/IOpenDelayStrategy.h %%WWWDIR%%/plugins/dnp3/src/deps/include/opendnp3/channel/IPEndpoint.h %%WWWDIR%%/plugins/dnp3/src/deps/include/opendnp3/channel/PrintingChannelListener.h %%WWWDIR%%/plugins/dnp3/src/deps/include/opendnp3/channel/SerialSettings.h %%WWWDIR%%/plugins/dnp3/src/deps/include/opendnp3/channel/TLSConfig.h %%WWWDIR%%/plugins/dnp3/src/deps/include/opendnp3/decoder/Decoder.h %%WWWDIR%%/plugins/dnp3/src/deps/include/opendnp3/decoder/IDecoderCallbacks.h %%WWWDIR%%/plugins/dnp3/src/deps/include/opendnp3/gen/AnalogOutputStatusQuality.h %%WWWDIR%%/plugins/dnp3/src/deps/include/opendnp3/gen/AnalogQuality.h %%WWWDIR%%/plugins/dnp3/src/deps/include/opendnp3/gen/AssignClassType.h %%WWWDIR%%/plugins/dnp3/src/deps/include/opendnp3/gen/Attributes.h %%WWWDIR%%/plugins/dnp3/src/deps/include/opendnp3/gen/BinaryOutputStatusQuality.h %%WWWDIR%%/plugins/dnp3/src/deps/include/opendnp3/gen/BinaryQuality.h %%WWWDIR%%/plugins/dnp3/src/deps/include/opendnp3/gen/ChannelState.h %%WWWDIR%%/plugins/dnp3/src/deps/include/opendnp3/gen/CommandPointState.h %%WWWDIR%%/plugins/dnp3/src/deps/include/opendnp3/gen/CommandStatus.h %%WWWDIR%%/plugins/dnp3/src/deps/include/opendnp3/gen/CounterQuality.h %%WWWDIR%%/plugins/dnp3/src/deps/include/opendnp3/gen/DoubleBit.h %%WWWDIR%%/plugins/dnp3/src/deps/include/opendnp3/gen/DoubleBitBinaryQuality.h %%WWWDIR%%/plugins/dnp3/src/deps/include/opendnp3/gen/EventAnalogOutputStatusVariation.h %%WWWDIR%%/plugins/dnp3/src/deps/include/opendnp3/gen/EventAnalogVariation.h %%WWWDIR%%/plugins/dnp3/src/deps/include/opendnp3/gen/EventBinaryOutputStatusVariation.h %%WWWDIR%%/plugins/dnp3/src/deps/include/opendnp3/gen/EventBinaryVariation.h %%WWWDIR%%/plugins/dnp3/src/deps/include/opendnp3/gen/EventCounterVariation.h %%WWWDIR%%/plugins/dnp3/src/deps/include/opendnp3/gen/EventDoubleBinaryVariation.h %%WWWDIR%%/plugins/dnp3/src/deps/include/opendnp3/gen/EventFrozenCounterVariation.h %%WWWDIR%%/plugins/dnp3/src/deps/include/opendnp3/gen/EventMode.h %%WWWDIR%%/plugins/dnp3/src/deps/include/opendnp3/gen/EventOctetStringVariation.h %%WWWDIR%%/plugins/dnp3/src/deps/include/opendnp3/gen/EventSecurityStatVariation.h %%WWWDIR%%/plugins/dnp3/src/deps/include/opendnp3/gen/FlagsType.h %%WWWDIR%%/plugins/dnp3/src/deps/include/opendnp3/gen/FlowControl.h %%WWWDIR%%/plugins/dnp3/src/deps/include/opendnp3/gen/FrozenCounterQuality.h %%WWWDIR%%/plugins/dnp3/src/deps/include/opendnp3/gen/FunctionCode.h %%WWWDIR%%/plugins/dnp3/src/deps/include/opendnp3/gen/GroupVariation.h %%WWWDIR%%/plugins/dnp3/src/deps/include/opendnp3/gen/IndexQualifierMode.h %%WWWDIR%%/plugins/dnp3/src/deps/include/opendnp3/gen/IntervalUnits.h %%WWWDIR%%/plugins/dnp3/src/deps/include/opendnp3/gen/LinkFunction.h %%WWWDIR%%/plugins/dnp3/src/deps/include/opendnp3/gen/LinkStatus.h %%WWWDIR%%/plugins/dnp3/src/deps/include/opendnp3/gen/MasterTaskType.h %%WWWDIR%%/plugins/dnp3/src/deps/include/opendnp3/gen/OperateType.h %%WWWDIR%%/plugins/dnp3/src/deps/include/opendnp3/gen/OperationType.h %%WWWDIR%%/plugins/dnp3/src/deps/include/opendnp3/gen/Parity.h %%WWWDIR%%/plugins/dnp3/src/deps/include/opendnp3/gen/PointClass.h %%WWWDIR%%/plugins/dnp3/src/deps/include/opendnp3/gen/QualifierCode.h %%WWWDIR%%/plugins/dnp3/src/deps/include/opendnp3/gen/RestartMode.h %%WWWDIR%%/plugins/dnp3/src/deps/include/opendnp3/gen/RestartType.h %%WWWDIR%%/plugins/dnp3/src/deps/include/opendnp3/gen/ServerAcceptMode.h %%WWWDIR%%/plugins/dnp3/src/deps/include/opendnp3/gen/StaticAnalogOutputStatusVariation.h %%WWWDIR%%/plugins/dnp3/src/deps/include/opendnp3/gen/StaticAnalogVariation.h %%WWWDIR%%/plugins/dnp3/src/deps/include/opendnp3/gen/StaticBinaryOutputStatusVariation.h %%WWWDIR%%/plugins/dnp3/src/deps/include/opendnp3/gen/StaticBinaryVariation.h %%WWWDIR%%/plugins/dnp3/src/deps/include/opendnp3/gen/StaticCounterVariation.h %%WWWDIR%%/plugins/dnp3/src/deps/include/opendnp3/gen/StaticDoubleBinaryVariation.h %%WWWDIR%%/plugins/dnp3/src/deps/include/opendnp3/gen/StaticFrozenCounterVariation.h %%WWWDIR%%/plugins/dnp3/src/deps/include/opendnp3/gen/StaticOctetStringVariation.h %%WWWDIR%%/plugins/dnp3/src/deps/include/opendnp3/gen/StaticSecurityStatVariation.h %%WWWDIR%%/plugins/dnp3/src/deps/include/opendnp3/gen/StaticTimeAndIntervalVariation.h %%WWWDIR%%/plugins/dnp3/src/deps/include/opendnp3/gen/StaticTypeBitmask.h %%WWWDIR%%/plugins/dnp3/src/deps/include/opendnp3/gen/StopBits.h %%WWWDIR%%/plugins/dnp3/src/deps/include/opendnp3/gen/TaskCompletion.h %%WWWDIR%%/plugins/dnp3/src/deps/include/opendnp3/gen/TimeSyncMode.h %%WWWDIR%%/plugins/dnp3/src/deps/include/opendnp3/gen/TimestampQuality.h %%WWWDIR%%/plugins/dnp3/src/deps/include/opendnp3/gen/TripCloseCode.h %%WWWDIR%%/plugins/dnp3/src/deps/include/opendnp3/link/Addresses.h %%WWWDIR%%/plugins/dnp3/src/deps/include/opendnp3/link/ILinkListener.h %%WWWDIR%%/plugins/dnp3/src/deps/include/opendnp3/link/LinkConfig.h %%WWWDIR%%/plugins/dnp3/src/deps/include/opendnp3/link/LinkHeaderFields.h %%WWWDIR%%/plugins/dnp3/src/deps/include/opendnp3/link/LinkStatistics.h %%WWWDIR%%/plugins/dnp3/src/deps/include/opendnp3/logging/ILogHandler.h %%WWWDIR%%/plugins/dnp3/src/deps/include/opendnp3/logging/LogLevels.h %%WWWDIR%%/plugins/dnp3/src/deps/include/opendnp3/logging/Logger.h %%WWWDIR%%/plugins/dnp3/src/deps/include/opendnp3/master/CommandPointResult.h %%WWWDIR%%/plugins/dnp3/src/deps/include/opendnp3/master/CommandResultCallbackT.h %%WWWDIR%%/plugins/dnp3/src/deps/include/opendnp3/master/CommandSet.h %%WWWDIR%%/plugins/dnp3/src/deps/include/opendnp3/master/DefaultListenCallbacks.h %%WWWDIR%%/plugins/dnp3/src/deps/include/opendnp3/master/DefaultMasterApplication.h %%WWWDIR%%/plugins/dnp3/src/deps/include/opendnp3/master/HeaderInfo.h %%WWWDIR%%/plugins/dnp3/src/deps/include/opendnp3/master/HeaderTypes.h %%WWWDIR%%/plugins/dnp3/src/deps/include/opendnp3/master/ICommandCollection.h %%WWWDIR%%/plugins/dnp3/src/deps/include/opendnp3/master/ICommandProcessor.h %%WWWDIR%%/plugins/dnp3/src/deps/include/opendnp3/master/ICommandTaskResult.h %%WWWDIR%%/plugins/dnp3/src/deps/include/opendnp3/master/IListenCallbacks.h %%WWWDIR%%/plugins/dnp3/src/deps/include/opendnp3/master/IMaster.h %%WWWDIR%%/plugins/dnp3/src/deps/include/opendnp3/master/IMasterApplication.h %%WWWDIR%%/plugins/dnp3/src/deps/include/opendnp3/master/IMasterOperations.h %%WWWDIR%%/plugins/dnp3/src/deps/include/opendnp3/master/IMasterScan.h %%WWWDIR%%/plugins/dnp3/src/deps/include/opendnp3/master/IMasterSession.h %%WWWDIR%%/plugins/dnp3/src/deps/include/opendnp3/master/ISOEHandler.h %%WWWDIR%%/plugins/dnp3/src/deps/include/opendnp3/master/ISessionAcceptor.h %%WWWDIR%%/plugins/dnp3/src/deps/include/opendnp3/master/ITaskCallback.h %%WWWDIR%%/plugins/dnp3/src/deps/include/opendnp3/master/IUTCTimeSource.h %%WWWDIR%%/plugins/dnp3/src/deps/include/opendnp3/master/MasterParams.h %%WWWDIR%%/plugins/dnp3/src/deps/include/opendnp3/master/MasterStackConfig.h %%WWWDIR%%/plugins/dnp3/src/deps/include/opendnp3/master/PrintingCommandResultCallback.h %%WWWDIR%%/plugins/dnp3/src/deps/include/opendnp3/master/PrintingSOEHandler.h %%WWWDIR%%/plugins/dnp3/src/deps/include/opendnp3/master/ResponseInfo.h %%WWWDIR%%/plugins/dnp3/src/deps/include/opendnp3/master/RestartOperationResult.h %%WWWDIR%%/plugins/dnp3/src/deps/include/opendnp3/master/TaskConfig.h %%WWWDIR%%/plugins/dnp3/src/deps/include/opendnp3/master/TaskId.h %%WWWDIR%%/plugins/dnp3/src/deps/include/opendnp3/master/TaskInfo.h %%WWWDIR%%/plugins/dnp3/src/deps/include/opendnp3/master/X509Info.h %%WWWDIR%%/plugins/dnp3/src/deps/include/opendnp3/outstation/ApplicationIIN.h %%WWWDIR%%/plugins/dnp3/src/deps/include/opendnp3/outstation/DatabaseConfig.h %%WWWDIR%%/plugins/dnp3/src/deps/include/opendnp3/outstation/DefaultOutstationApplication.h %%WWWDIR%%/plugins/dnp3/src/deps/include/opendnp3/outstation/EventBufferConfig.h %%WWWDIR%%/plugins/dnp3/src/deps/include/opendnp3/outstation/ICommandHandler.h %%WWWDIR%%/plugins/dnp3/src/deps/include/opendnp3/outstation/IDnpTimeSource.h %%WWWDIR%%/plugins/dnp3/src/deps/include/opendnp3/outstation/IOutstation.h %%WWWDIR%%/plugins/dnp3/src/deps/include/opendnp3/outstation/IOutstationApplication.h %%WWWDIR%%/plugins/dnp3/src/deps/include/opendnp3/outstation/IUpdateHandler.h %%WWWDIR%%/plugins/dnp3/src/deps/include/opendnp3/outstation/MeasurementConfig.h %%WWWDIR%%/plugins/dnp3/src/deps/include/opendnp3/outstation/NumRetries.h %%WWWDIR%%/plugins/dnp3/src/deps/include/opendnp3/outstation/OutstationConfig.h %%WWWDIR%%/plugins/dnp3/src/deps/include/opendnp3/outstation/OutstationParams.h %%WWWDIR%%/plugins/dnp3/src/deps/include/opendnp3/outstation/OutstationStackConfig.h %%WWWDIR%%/plugins/dnp3/src/deps/include/opendnp3/outstation/SimpleCommandHandler.h %%WWWDIR%%/plugins/dnp3/src/deps/include/opendnp3/outstation/StaticTypeBitfield.h %%WWWDIR%%/plugins/dnp3/src/deps/include/opendnp3/outstation/UpdateBuilder.h %%WWWDIR%%/plugins/dnp3/src/deps/include/opendnp3/outstation/Updates.h %%WWWDIR%%/plugins/dnp3/src/deps/include/opendnp3/util/Buffer.h %%WWWDIR%%/plugins/dnp3/src/deps/include/opendnp3/util/StaticOnly.h %%WWWDIR%%/plugins/dnp3/src/deps/include/opendnp3/util/TimeDuration.h %%WWWDIR%%/plugins/dnp3/src/deps/include/opendnp3/util/Timestamp.h %%WWWDIR%%/plugins/dnp3/src/deps/include/opendnp3/util/UTCTimestamp.h %%WWWDIR%%/plugins/dnp3/src/deps/include/opendnp3/util/Uncopyable.h %%WWWDIR%%/plugins/dnp3/src/deps/lib/libopendnp3.a %%WWWDIR%%/plugins/dnp3/src/deps/lib/old_libopendnp3.a %%WWWDIR%%/plugins/dnp3/src/docs/example_vscode_settings.json %%WWWDIR%%/plugins/dnp3/src/src/dnp3-actions/CMakeLists.txt %%WWWDIR%%/plugins/dnp3/src/src/dnp3-actions/config.h.in %%WWWDIR%%/plugins/dnp3/src/src/dnp3-actions/dnp3_actions.cpp %%WWWDIR%%/plugins/dnp3/src/src/dnp3-actions/dnp3_actions.h %%WWWDIR%%/plugins/dnp3/src/src/dnp3-actions/dnp3_cli.cpp %%WWWDIR%%/plugins/dnp3/src/src/dnp3-poll/CMakeLists.txt %%WWWDIR%%/plugins/dnp3/src/src/dnp3-poll/main.cpp %%WWWDIR%%/plugins/dnp3/src/src/dnp3-server/CMakeLists.txt %%WWWDIR%%/plugins/dnp3/src/src/dnp3-server/main.cpp %%WWWDIR%%/plugins/dnp3/src/utils/cmake/ClangFormat.cmake %%WWWDIR%%/plugins/dnp3/src/utils/cmake/ClangTidy.cmake %%WWWDIR%%/plugins/dnp3/src/utils/update_bins.sh -%%WWWDIR%%/plugins/dnp3/static/.gitkeep %%WWWDIR%%/plugins/dnp3/templates/dnp3.html %%WWWDIR%%/plugins/iec61850/.gitignore %%WWWDIR%%/plugins/iec61850/LICENSE %%WWWDIR%%/plugins/iec61850/NOTICE.md %%WWWDIR%%/plugins/iec61850/README.md -%%WWWDIR%%/plugins/iec61850/app/iec61850_api.py -%%WWWDIR%%/plugins/iec61850/app/iec61850_gui.py +%%WWWDIR%%/plugins/iec61850/app/iec61850_svc.py %%WWWDIR%%/plugins/iec61850/app/parsers/data_model.py %%WWWDIR%%/plugins/iec61850/app/parsers/data_set.py %%WWWDIR%%/plugins/iec61850/app/parsers/lcb.py %%WWWDIR%%/plugins/iec61850/app/parsers/value.py %%WWWDIR%%/plugins/iec61850/app/parsers/write.py %%WWWDIR%%/plugins/iec61850/data/abilities/collection/04ccfa36-f576-379f-a268-6283de403ad8.yml %%WWWDIR%%/plugins/iec61850/data/abilities/collection/15758d41-4237-34eb-adb2-d5698e3ea4ff.yml %%WWWDIR%%/plugins/iec61850/data/abilities/collection/1b7dcec1-0b12-3df4-b323-6c1b33356981.yml %%WWWDIR%%/plugins/iec61850/data/abilities/collection/30419718-6f7c-3eab-8b06-ed6cea7858c7.yml %%WWWDIR%%/plugins/iec61850/data/abilities/collection/4c1138da-50b9-3744-99ea-1310690f2743.yml %%WWWDIR%%/plugins/iec61850/data/abilities/collection/6ac44da4-f546-3e33-be1a-829b173b660f.yml %%WWWDIR%%/plugins/iec61850/data/abilities/collection/9f7757da-1da9-3b35-90f3-fdab578be198.yml %%WWWDIR%%/plugins/iec61850/data/abilities/collection/a0718ea1-9f55-3e24-b81a-c03f15eb89c2.yml %%WWWDIR%%/plugins/iec61850/data/abilities/collection/bbb3e7dc-3103-3ae9-9a77-6eb789cb3a07.yml %%WWWDIR%%/plugins/iec61850/data/abilities/collection/f9308f14-e0d3-389e-9d77-ff2be9c3f34f.yml %%WWWDIR%%/plugins/iec61850/data/abilities/collection/fb81314b-0308-3761-b764-e523645e8df6.yml %%WWWDIR%%/plugins/iec61850/data/abilities/impair-process-control/6c0f9e77-eedf-4c25-a009-d8905f155af4.yml %%WWWDIR%%/plugins/iec61850/data/abilities/impair-process-control/dc65f8d1-9478-381c-8f25-2ef5edaea332.yml %%WWWDIR%%/plugins/iec61850/data/abilities/impair-process-control/dd9c8deb-be48-3ad0-b5f5-bf4976cb1d1e.yml %%WWWDIR%%/plugins/iec61850/data/abilities/inhibit-response-function/2b2e5724-42bc-3efc-b0e5-613a6f5bc996.yml %%WWWDIR%%/plugins/iec61850/data/abilities/inhibit-response-function/41fd3989-b5bd-3892-9210-9bc053c355a5.yml %%WWWDIR%%/plugins/iec61850/data/sources/48db3ad5-c003-40af-aaee-54f2377da2e5.yml %%WWWDIR%%/plugins/iec61850/docs/assets/heatmap.png %%WWWDIR%%/plugins/iec61850/docs/assets/iec61850_blockdiagram.png %%WWWDIR%%/plugins/iec61850/docs/iec61850.md +%%WWWDIR%%/plugins/iec61850/gui/views/iec61850.vue %%WWWDIR%%/plugins/iec61850/hook.py %%WWWDIR%%/plugins/iec61850/payloads/08cfc3e9-e172-4754-ae32-d1f28c9c819e.yml -%%WWWDIR%%/plugins/iec61850/payloads/iec61850_actions -%%WWWDIR%%/plugins/iec61850/payloads/iec61850_actions.exe -%%WWWDIR%%/plugins/iec61850/payloads/iec61850_actions_darwin %%WWWDIR%%/plugins/iec61850/payloads/iec61850_actions_freebsd +%%WWWDIR%%/plugins/iec61850/src/.gitignore %%WWWDIR%%/plugins/iec61850/src/CMakeLists.txt +%%WWWDIR%%/plugins/iec61850/src/LICENSE %%WWWDIR%%/plugins/iec61850/src/README.md %%WWWDIR%%/plugins/iec61850/src/app/CMakeLists.txt %%WWWDIR%%/plugins/iec61850/src/app/app.c %%WWWDIR%%/plugins/iec61850/src/app/cli.c %%WWWDIR%%/plugins/iec61850/src/app/iec61850_actions/app.h %%WWWDIR%%/plugins/iec61850/src/app/version.h.in %%WWWDIR%%/plugins/iec61850/src/lib/CMakeLists.txt %%WWWDIR%%/plugins/iec61850/src/lib/client_connection.c %%WWWDIR%%/plugins/iec61850/src/lib/client_control_actions.c %%WWWDIR%%/plugins/iec61850/src/lib/client_delete_actions.c %%WWWDIR%%/plugins/iec61850/src/lib/client_get_actions.c %%WWWDIR%%/plugins/iec61850/src/lib/client_set_actions.c %%WWWDIR%%/plugins/iec61850/src/lib/iec61850_client/client.h %%WWWDIR%%/plugins/iec61850/src/lib/iec61850_client/utils.h %%WWWDIR%%/plugins/iec61850/src/lib/test/utils_test.cc %%WWWDIR%%/plugins/iec61850/src/lib/utils.c %%WWWDIR%%/plugins/iec61850/src/lib/version.h.in %%WWWDIR%%/plugins/iec61850/src/test/test_integration.py %%WWWDIR%%/plugins/iec61850/src/third_party/README.md -%%WWWDIR%%/plugins/iec61850/static/.gitkeep %%WWWDIR%%/plugins/iec61850/templates/iec61850.html %%WWWDIR%%/plugins/modbus/.gitignore %%WWWDIR%%/plugins/modbus/LICENSE %%WWWDIR%%/plugins/modbus/NOTICE.md %%WWWDIR%%/plugins/modbus/README.md -%%WWWDIR%%/plugins/modbus/app/modbus_api.py -%%WWWDIR%%/plugins/modbus/app/modbus_gui.py %%WWWDIR%%/plugins/modbus/app/modbus_svc.py %%WWWDIR%%/plugins/modbus/app/parsers/processid.py %%WWWDIR%%/plugins/modbus/data/abilities/collection/001e21ea-61b5-4b78-b79e-9d5687d819bd.yml %%WWWDIR%%/plugins/modbus/data/abilities/collection/3946b6da-c570-47cd-b63f-c13875297cb4.yml %%WWWDIR%%/plugins/modbus/data/abilities/collection/bc8961a2-7534-4b2a-bbc3-2456f58243be.yml %%WWWDIR%%/plugins/modbus/data/abilities/collection/d80b9cd5-b1d8-482a-a745-71d74f9d0885.yml %%WWWDIR%%/plugins/modbus/data/abilities/impact/056e6289-4cbf-417f-928a-d75125e4db4f.yml %%WWWDIR%%/plugins/modbus/data/abilities/impact/0f16b341-9730-4553-b6d6-8eb8def02c81.yml %%WWWDIR%%/plugins/modbus/data/abilities/impact/2a6e8c8e-f350-11ed-9156-23436b8f0e58.yml %%WWWDIR%%/plugins/modbus/data/abilities/impact/40f78a8f-2aaa-4b1b-872f-7c6b0f1ddf3e.yml %%WWWDIR%%/plugins/modbus/data/abilities/impact/d6991b6b-d3b2-4398-ad3f-d736ae09acf9.yml %%WWWDIR%%/plugins/modbus/data/abilities/impact/fe321da2-e183-44a3-b423-b8cba9a8bda0.yml %%WWWDIR%%/plugins/modbus/data/sources/0033b644-a615-4eff-bcf3-178e9b17adc3.yml %%WWWDIR%%/plugins/modbus/docs/assets/.gitkeep %%WWWDIR%%/plugins/modbus/docs/assets/heatmap.jpg %%WWWDIR%%/plugins/modbus/docs/assets/modbus_diagram.jpg %%WWWDIR%%/plugins/modbus/docs/modbus.md +%%WWWDIR%%/plugins/modbus/gui/views/modbus.vue %%WWWDIR%%/plugins/modbus/hook.py %%WWWDIR%%/plugins/modbus/payloads/58aaab96-7191-4978-acec-a3b1deb03332.yml %%WWWDIR%%/plugins/modbus/payloads/modbus_cli -%%WWWDIR%%/plugins/modbus/payloads/modbus_cli_freebsd %%WWWDIR%%/plugins/modbus/payloads/modbus_cli.exe +%%WWWDIR%%/plugins/modbus/payloads/modbus_cli_freebsd %%WWWDIR%%/plugins/modbus/src/README.md %%WWWDIR%%/plugins/modbus/src/bin/.gitkeep %%WWWDIR%%/plugins/modbus/src/bin/modbus_cli %%WWWDIR%%/plugins/modbus/src/bin/modbus_cli.exe %%WWWDIR%%/plugins/modbus/src/src/.gitkeep %%WWWDIR%%/plugins/modbus/src/src/Pipfile %%WWWDIR%%/plugins/modbus/src/src/modbus/__init__.py %%WWWDIR%%/plugins/modbus/src/src/modbus/actions/__init__.py %%WWWDIR%%/plugins/modbus/src/src/modbus/actions/proc_modbus.py %%WWWDIR%%/plugins/modbus/src/src/modbus/actions/spec.py %%WWWDIR%%/plugins/modbus/src/src/modbus/client.py %%WWWDIR%%/plugins/modbus/src/src/modbus/common.py %%WWWDIR%%/plugins/modbus/src/src/modbus/version.py %%WWWDIR%%/plugins/modbus/src/src/modbus_cli.py %%WWWDIR%%/plugins/modbus/src/src/requirements.txt %%WWWDIR%%/plugins/modbus/src/tests/.gitkeep %%WWWDIR%%/plugins/modbus/src/tests/sync_server_ex.py %%WWWDIR%%/plugins/modbus/src/utils/README.md %%WWWDIR%%/plugins/modbus/src/utils/linux/upx %%WWWDIR%%/plugins/modbus/src/utils/win64/upx.exe -%%WWWDIR%%/plugins/modbus/static/.gitkeep %%WWWDIR%%/plugins/modbus/templates/modbus.html %%WWWDIR%%/plugins/profinet/.gitignore %%WWWDIR%%/plugins/profinet/LICENSE %%WWWDIR%%/plugins/profinet/NOTICE.md %%WWWDIR%%/plugins/profinet/README.md -%%WWWDIR%%/plugins/profinet/app/profinet_api.py -%%WWWDIR%%/plugins/profinet/app/profinet_gui.py %%WWWDIR%%/plugins/profinet/app/profinet_svc.py %%WWWDIR%%/plugins/profinet/data/abilities/discovery/35e384c3-2c27-4cf6-8155-70b2cf4b6cef.yml %%WWWDIR%%/plugins/profinet/data/abilities/discovery/36284e7a-012f-4d9d-b803-0d435e06bbf6.yml %%WWWDIR%%/plugins/profinet/data/abilities/discovery/bb7e8e63-690f-4b29-9a2e-36fc3e0aa152.yml %%WWWDIR%%/plugins/profinet/data/abilities/discovery/df68ded9-4fa1-4d6c-a7d3-558c3ddd808a.yml %%WWWDIR%%/plugins/profinet/data/abilities/impair-process-control/132898e3-c2cc-4af4-954f-06ac99566a8f.yml %%WWWDIR%%/plugins/profinet/data/abilities/impair-process-control/23b5c9f5-3a52-4b01-81bd-6f3fa570d57e.yml %%WWWDIR%%/plugins/profinet/data/abilities/impair-process-control/b885e6f4-18c2-455b-9695-6eec76d545ca.yml %%WWWDIR%%/plugins/profinet/data/sources/76d3f1c5-61c1-4df6-9829-6390e7f661ee.yml %%WWWDIR%%/plugins/profinet/docs/assets/profinet_diagram.jpg %%WWWDIR%%/plugins/profinet/docs/profinet.md +%%WWWDIR%%/plugins/profinet/gui/views/profinet.vue %%WWWDIR%%/plugins/profinet/hook.py %%WWWDIR%%/plugins/profinet/payloads/6c2308e7-852b-49c5-a6a4-1ac8622b6669.yml %%WWWDIR%%/plugins/profinet/payloads/dcp_utility -%%WWWDIR%%/plugins/profinet/payloads/dcp_utility_freebsd %%WWWDIR%%/plugins/profinet/payloads/dcp_utility.exe +%%WWWDIR%%/plugins/profinet/payloads/dcp_utility_freebsd %%WWWDIR%%/plugins/profinet/src/LICENSE.md %%WWWDIR%%/plugins/profinet/src/README.md %%WWWDIR%%/plugins/profinet/src/dcp_utility.py %%WWWDIR%%/plugins/profinet/src/pnio_dcp.py -%%WWWDIR%%/plugins/profinet/static/.gitkeep %%WWWDIR%%/plugins/profinet/templates/profinet.html @mode 750 @owner caldera @group caldera @dir %%WWWDIR%% @dir %%WWWDIR%%/plugins @dir %%WWWDIR%%/plugins/bacnet/data @dir %%WWWDIR%%/plugins/bacnet/payloads @dir %%WWWDIR%%/plugins/dnp3/data @dir %%WWWDIR%%/plugins/dnp3/payloads @dir %%WWWDIR%%/plugins/modbus/data @dir %%WWWDIR%%/plugins/modbus/payloads @dir %%WWWDIR%%/plugins/iec61850/data @dir %%WWWDIR%%/plugins/iec61850/payloads @dir %%WWWDIR%%/plugins/profinet/data @dir %%WWWDIR%%/plugins/profinet/payloads @mode @owner @group