Configurar os Programas de Validação a Usar para Criar/Verificar Códigos de Validação

O Kleopatra permite ao administrador (e aos utilizadores especializados) configurar a lista de programas de geração de códigos de validação de integridade que o utilizador poderá escolher, a partir da janela de configuração, desde que o Kleopatra consiga detectar automaticamente, quando for pedido para verificar o código de integridade de um dado ficheiro.

Nota

Para poder ser usado pelo Kleopatra, o resultado dos programas de validação (tanto o ficheiro de códigos gravado, como o resultado para o stdout, na verificação dos códigos de validação) terá de ser compatível com os comandos da GNU md5sum e sha1sum.

De uma forma específica, o ficheiro de códigos de validação será composto por várias linhas, tendo cada uma delas o seguinte formato:

CÓDIGO-VALIDAÇÃO ' ' ( ' ' | '*' ) NOME-FICHEIRO

em que o CÓDIGO-VALIDAÇÃO consiste apenas em caracteres hexadecimais. Se o NOME-FICHEIRO tiver um carácter de mudança de linha, a linha deverá ser lida então como:

\CÓDIGO-VALIDAÇÃO ' ' ( ' ' | '*' ) NOME-FICHEIRO-ESCAPADO

em que o NOME-FICHEIRO-ESCAPADO é o nome do ficheiro com as mudanças de linha substituídas por \n's e as barras invertidas duplicadas (\\\).

Do mesmo modo, o resultado do verify-command deverá estar no formato

FICHEIRO ( ': OK' | ': FAILED' )

, separado por mudanças de linha. Estas e os outros caracteres não são escapados no resultado.[2]

Cada programa de validação está definido no libkleopatrarc como um grupo Checksum Definition #n separado, com as seguintes chaves obrigatórias:

file-patterns

Uma lista de expressões regulares que descrevem quais os ficheiros que poderão ser considerados ficheiros de validação de integridade para este programa em particular. A sintaxe é a mesma que é usada para as listas de textos nos ficheiros de configuração do KDE.

Nota

Dado que as expressões regulares normalmente contêm barras invertidas (\), deve-se ter algum cuidado em escapá-las também no ficheiro. Recomenda-se a utilização de uma ferramenta de edição de ficheiros de configuração.

A plataforma define se os padrões são tratados com ou sem distinção entre maiúsculas e minúsculas.

output-file

O nome do ficheiro de saída típico para este programa de validação (deverá corresponder a um dos file-patterns, obviamente). Isto é o que o Kleopatra irá usar como ficheiro de saída, cada vez que criar ficheiros de códigos de validação deste tipo.

id

Um ID único que é usado para identificar este programa internamente. Em caso de dúvida, use o nome do comando.

Name (traduzido)

O nome visível para o utilizador deste programa de validação de integridade, tal como irá aparecer na lista respectiva da janela de configuração do Kleopatra.

create-command

O comando real com que são criados os ficheiros de validação de integridade. A sintaxe, as restrições e as opções de passagem de argumentos são as mesmas que foram descritas para o pack-command nas “Configurar os Arquivadores a Usar ao Assinar/Encriptar os Ficheiros”.

verify-command

É igual ao create-command, mas usado na verificação dos códigos de validação de integridade.

Aqui está um exemplo completo:

[Checksum Definition #1]
          file-patterns=sha1sum.txt
          output-file=sha1sum.txt
          id=sha1sum-gnu
          Name=sha1sum (GNU)
          Name[de]=sha1sum (GNU)
          ...
          create-command=sha1sum -- %f
          verify-command=sha1sum -c -- %f
        



[2] Sim, estes programas não foram feitos com as interfaces gráficas em mente, pelo que o Kleopatra não conseguirá processar os ficheiros patológicos que contenham ": OK" e uma mudança de linha no seu nome.