Voltar à lista
Linux x86_64Segurança#125

capget

Consulta as capabilities (permissões granulares de superusuário) de uma thread.

Descrição

Lê os conjuntos de capabilities permitidas, efetivas e herdáveis de uma thread, parte do modelo POSIX capabilities que decompõe os privilégios do root em unidades independentes (ex.: CAP_NET_ADMIN, CAP_SYS_TIME) em vez de um tudo-ou-nada.

Header: linux/capability.hman 2

Nota

Raramente usada diretamente — a biblioteca libcap oferece uma API de mais alto nível (`cap_get_proc(3)`, etc.).

Assinatura

int capget(cap_user_header_t hdrp, cap_user_data_t datap);

Parâmetros

ParâmetroTipoDescrição
hdrpcap_user_header_tVersão da API de capabilities e PID alvo (0 = chamador).
datapcap_user_data_tRecebe os conjuntos de capabilities (effective/permitted/inheritable).

Registradores (x86_64)

RegistradorPapelArgumento
raxnúmero da syscall (chamada) / valor de retorno (após SYSCALL)
rdiargumento 1hdrpcap_user_header_t
rsiargumento 2datapcap_user_data_t

Valor de retorno

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

Códigos de erro (errno)

EFAULT(14)
Endereço de memória inválido (ponteiro fora do espaço de endereçamento válido).
EINVAL(22)
Argumento inválido.
EPERM(1)
Operação não permitida (falta de privilégio).

Relacionadas