Linux x86_64Segurança#444
landlock_create_ruleset
Cria um novo ruleset Landlock — um conjunto de regras de sandboxing não privilegiado baseado em caminhos.
Descrição
Landlock permite que um processo restrinja suas próprias permissões de acesso a arquivos (e, em versões recentes, rede) sem precisar de privilégios especiais, complementando seccomp/namespaces como camada de defesa em profundidade utilizável por aplicações comuns (ex.: navegadores, gerenciadores de pacotes).
Header:
linux/landlock.hman 2Desde o kernel 5.13Assinatura
int landlock_create_ruleset(
const struct landlock_ruleset_attr * attr,
size_t size,
__u32 flags
);Parâmetros
| Parâmetro | Tipo | Descrição |
|---|---|---|
| attr | const struct landlock_ruleset_attr * | Define quais categorias de acesso o ruleset é capaz de restringir. |
| size | size_t | Tamanho de `attr`. |
| flags | __u32 | Reservado para uso futuro; deve ser 0. |
Registradores (x86_64)
| Registrador | Papel | Argumento |
|---|---|---|
| rax | número da syscall (chamada) / valor de retorno (após SYSCALL) | — |
| rdi | argumento 1 | attrconst struct landlock_ruleset_attr * |
| rsi | argumento 2 | sizesize_t |
| rdx | argumento 3 | flags__u32 |
Valor de retorno
Um descritor de arquivo representando o ruleset em sucesso; -1 em erro, com errno definido.
Códigos de erro (errno)
- EINVAL(22)
- Argumento inválido.
- E2BIG(7)
- Lista de argumentos grande demais.
- EFAULT(14)
- Endereço de memória inválido (ponteiro fora do espaço de endereçamento válido).
- ENOMSG(42)
- Nenhuma mensagem do tipo desejado.
- EOPNOTSUPP(95)
- Operação não suportada nesse socket/arquivo (também ENOTSUP).