Voltar à lista
Linux x86_64Segurança#445

landlock_add_rule

Adiciona uma regra (ex.: permissão de acesso a um caminho) a um ruleset Landlock.

Descrição

Popula o ruleset criado por `landlock_create_ruleset` com regras concretas antes de aplicá-lo com `landlock_restrict_self`.

Header: linux/landlock.hman 2Desde o kernel 5.13

Assinatura

int landlock_add_rule(
    int ruleset_fd,
    enum landlock_rule_type rule_type,
    const void * rule_attr,
    __u32 flags
);

Parâmetros

ParâmetroTipoDescrição
ruleset_fdintDescritor do ruleset retornado por landlock_create_ruleset.
rule_typeenum landlock_rule_typeTipo da regra, ex.: LANDLOCK_RULE_PATH_BENEATH.
rule_attrconst void *Atributos da regra, cujo formato depende de `rule_type`.
flags__u32Reservado; deve ser 0.

Registradores (x86_64)

RegistradorPapelArgumento
raxnúmero da syscall (chamada) / valor de retorno (após SYSCALL)
rdiargumento 1ruleset_fdint
rsiargumento 2rule_typeenum landlock_rule_type
rdxargumento 3rule_attrconst void *
r10argumento 4flags__u32

Valor de retorno

0 em sucesso; -1 em erro, com errno definido.

Códigos de erro (errno)

EINVAL(22)
Argumento inválido.
ENOMSG(42)
Nenhuma mensagem do tipo desejado.
EBADF(9)
Descritor de arquivo inválido.
EBADFD(77)
Descritor de arquivo em estado inválido para a operação.
EPERM(1)
Operação não permitida (falta de privilégio).

Relacionadas