The nk-psl-gen-c compiler generates the source code of the Kaspersky Security Module based on the solution security policy description and the EDL, CDL and IDL descriptions included in the solution. This code is used by the makekss script.
The nk-psl-gen-c compiler also lets you generate and run code of tests written in the PAL language for the solution security policy.
Syntax for using the nk-psl-gen-c compiler:
nk-psl-gen-c [-I PATH][-o PATH][--audit PATH][--tests ARG][--help][--version] FILE
Parameters:
FILEPath to the PSL description of the solution security policy (security.psl)
-I,--include-dir PATHPath to the folder containing auxiliary files required for generating transport methods and types. By default, these files are located in the directory /opt/KasperskyOS-Community-Edition-<version>/sysroot-aarch64-kos/include.
The nk-psl-gen-c compiler will require access to all EDL, CDL and IDL descriptions. To enable the nk-psl-gen-c compiler to find these descriptions, you need to pass the paths to these descriptions using the -I switch.
To indicate more than one folder. you can use several -I switches.
-o,--output PATHPath to the created file containing the security module code.
-t, --tests ARGFlag for controlling code generation and starting tests for the solution security policy. Possible values:
skip means that the code of tests is not generated. This value is used by default if the --tests flag is not indicated.generate means that the code of tests is generated but it is not compiled and is not executed.run means that the code of tests is generated, compiled using the gcc compiler, and executed.-a, --audit PATHPath to the created file containing the code of the audit decoder.
-h, --helpDisplays the Help text.
--versionDisplays the nk-psl-gen-c version.