The Math security model performs integer arithmetic operations.
A PSL file containing a description of the Math security model is located in the KasperskyOS SDK at the following path:
toolchain/include/nk/basic.psl
Math security model object
The basic.psl
file contains a declaration that creates a Math security model object named math
. Consequently, inclusion of the basic.psl
file into the solution security policy description will create a Math security model object by default.
A Math security model object does not have any parameters and cannot be covered by a security audit.
It is not necessary to create additional Math security model objects.
Math security model methods
The Math security model contains expressions that perform integer arithmetic operations. To call a part of these expressions, use the following arithmetic operators:
Number
> +
<Number
> – "addition". Returns values of the Number
type.Number
> -
<Number
> – "subtraction". Returns values of the Number
type.Number
> *
<Number
> – "multiplication". Returns values of the Number
type.The other expressions are as follows:
neg (
<Signed
>)
– "change number sign". Returns values of the Signed
type.abs (
<Signed
> )
– "get module of number". Returns values of the Signed
type.sum (
<List<Number>
>)
– "add numbers from list". Returns values of the Number
type. It returns 0
if an empty list of values ([]
) is passed via the parameter.product (
<List<Number>
>)
– "multiple numbers from list". Returns values of the Number
type. It returns 1
if an empty list of values ([]
) is passed via the parameter.To call these expressions, use the following construct:
math.<expression name> (<parameter>)
Page top