Avaliação de funções de indicação

Você usa as instruções de avaliação para executar funções em valores de dados variáveis ou constantes. Você pode salvar o valor de retorno de uma função de avaliação como uma variável ou descartar o valor de retorno. As instruções de avaliação devem terminar com um ponto-e-vírgula.
Para garantir que seus scripts sejam executados no servidor e no endpoint, os valores do script devem ser especificados em notação hexadecimal (hex). Por exemplo,
$int4 = getBinaryValueAt($data,0x19,2)
é apropriado. Contudo, se os seguintes valores não hexadecimais forem especificados em um ambiente de endpoint, o script fará com que o DLP Agent trave:
$int4 = getBinaryValueAt($data,25,2)
.
Avaliação de funções de indicação
Função
Descrição
Exemplo
Adição
add
A função de Adição toma dois valores como argumentos e os agrupa. Os valores podem ser variáveis ou constantes. Você pode salvar o resultado retornado como uma variável ou descartar o resultado.
A função de Adição agrupa dois ou mais valores e retorna o resultado. Os valores podem ser variáveis ou constantes. Você pode salvar o resultado retornado como uma variável ou descartar o resultado.
Agrupa dois valores e retorna o valor na variável $result.
$result = add($var1, $var4);
Agrupa duas constantes mas descarta o valor.
add(1, 2);
Agrupa três valores.
$result = add($var1, 2, $var4);
AsciiValue
ascii
A AsciiValue toma uma única string ASCII como parâmetro e a atribui à variável especificada.
O parâmetro ASCII deve ter de um a quatro caracteres.
Você pode usar esta instrução para fins de legibilidade.
$result = ascii('CFV');
A variável $result é atribuída ao valor especificado de ASCII.
DataLength
datalength
A função calcula o comprimento da variável da matriz. Essa função toma o nome da variável de um conjunto de bytes como parâmetro e retorna o número de bytes nesse conjunto.
$result = datalength($data);
O mecanismo cria a variável $data do conjunto de bytes quando extrai informações para um arquivo. A variável $data armazena até os primeiro 4 KB do arquivo.
Executar (função avançada)
executar
A função Executar permite que um usuário chame métodos em qualquer objeto Java disponível conforme as variáveis no estado de computação do script. Por exemplo, se você tiver uma string salva com o nome da variável $data, você pode chamar o método equivalente da string usando a função Executar.
$result = execute($string1, equals, $string2);
Supondo que uma string seja salva na variável $string.
GetAsciiStringAt
getAsciiStringAt
A função GetAsciiStringAt trata os dados como caracteres ASCII e converte os dados em uma string. Os dados são convertidos através do deslocamento especificado para o número especificado de dígitos.
A variável $data é um conjunto de bytes com os valores: 'abcdef'.getBytes();
O resultado deve ser abc.
$result = getAsciiStringAt($data, 0x0, 3);
GetBinaryIntValue
getBinaryIntValue
A função GetBinaryIntValue extrai os dados de bytes como um número inteiro do índice especificado de uma variável da matriz de bytes. Permite também que um usuário especifique quantos dígitos serão extraídos dos dados. Como o valor de retorno é um número inteiro, o número de dígitos deve ter de 1 a 4 bytes.
Você pode usar essa função para analisar dados em offsets específicos de um conjunto de bytes. O número de dígitos é combinado para formar um valor inteiro.
$result = getBinaryIntValue($data, 0x0, 1);
A variável $data é o conjunto de bytes com os valores {(byte)0x59,(byte) 0xAD,(byte) 0x1C,(byte) 0xDF,(byte) 0x2B,(byte)0x37}. Neste exemplo, o $result deve ser igual a 89.
$result = getBinaryIntValue($data, 1);
A variável $data é um conjunto de bytes com os valores {1, 2, 3}. O $result deve ser igual a 2.
GetBinaryValuteAt
getBinaryValueAt
A função GetBinaryValuteAt extrai os dados do byte para um novo conjunto de bytes com base no deslocamento e no comprimento especificados. O novo conjunto de bytes pode ser comparado a outros conjuntos de bytes para obter igualdade.
Esta função permite especificar quantos dígitos devem ser recuperados dos dados (de 1 a 4 bytes). Você usa esta função para analisar dados em offsets específicos de um conjunto de bytes.
GetBinaryValueAt() retorna uma matriz com os bytes, enquanto GetBinaryIntValue() retorna um número inteiro composto dos bytes.
A variável $data é o conjunto de bytes com os valores {(byte)0x59,(byte) 0xAD,(byte) 0x1C,(byte) 0xDF,(byte) 0x2B,(byte)0x37}. O $result deve ser um conjunto de bytes com o byte 0x59.
$result = getBinaryValueAt($data, 0x0, 1);
A variável $data é um conjunto de bytes com os valores {1, 2, 3}. O $result deve ser igual a um novo conjunto de bytes com o número 2.
$result = getBinaryValueAt($data, 1);
GetHexStringValue
getHexStringValue
A função GetHexStringValue toma uma string hexadecimal como parâmetro e converte-a na representação do byte (binário).
$result = getHexStringValue('D0CF');
GetIntegerAt
getIntegerAt
A função GetIntegerAt é semelhante à função GetAsciiStringAt, com exceção da análise GetIntegerAt dos caracteres ASCII, e converte-os em um valor inteiro. Os dados são convertidos através do deslocamento especificado para o número especificado de dígitos. Se um caractere não é um valor numérico, o script exibe uma exceção.
A variável $data é um conjunto de bytes com os valores: '12345'.getBytes();
O resultado deve ser 34.
$result = getIntegerAt($data, 0x2, 2);
GetStringValueAt
getStringValueAt
A função GetStringValueAt extrai os dados para um novo caractere baseado em conjunto no deslocamento e no comprimento especificados. O novo conjunto de bytes pode ser comparado a outros conjuntos de bytes para obter igualdade.
A variável $data é o conjunto de bytes com os valores {(byte)0x59,(byte) 0xAD,(byte) 0x1C,(byte) 0xDF,(byte) 0x2B,(byte)0x37}.
$result = getStringValueAt($data, 0x0, 1);
O resultado deve ser o byte 0x59.
A variável $data é um conjunto de bytes com os valores {1, 2, 3}.
$result = getStringValueAt($data, 1);
O resultado deve ser igual a um novo conjunto de bytes com o número 2. (O deslocamento inicia em 0.)
Modulus
mod
A função Modulus (mod) retorna o mod de dois parâmetros. O mod é o restante do primeiro parâmetro dividido pelo segundo.
O resultado deve ser 2.
$result = mod(5, 3);
Multiply
multiply
A função Multiply toma dois argumentos e multiplica seus valores.
A função Multiply toma dois ou mais argumentos e multiplica seus valores.
$result = multiply(2, 4);
O resultado deve ser 8.
$result = multiply(2, 4, 6);
O resultado deve ser 48.
Imprimir (função avançada)
imprimir
A função Imprimir toma seus argumentos, concatena-os e os imprime na saída padrão.
Nenhum resultado para salvar, mas o padrão de saída deve ter a string.
imprimir('hello');
ReadFile (função avançada)
readfile
A função ReadFile coleta um arquivo que é salvo como uma variável no estado da computação. Ela lê o número especificado de bytes do arquivo como uma matriz de bytes e retorna a matriz de bytes. Essa função requer dois argumentos.
A variável $result deve conter uma matriz de bytes dos 10 primeiros bytes do arquivo salvo na variável $file.
$result = readFile($file, 10);
Subtract
sub
A função Subtrair subtrai o segundo parâmetro do primeiro.
A função Subtrair subtrai elementos 2 através do N do primeiro elemento.
$result = sub(10, 4);
O resultado deve ser 6.
$result = sub(10, 4, 6, 3);
O resultado deve ser -3.