Voltar à lista
Linux x86_64Segurança#459

lsm_get_self_attr

Consulta atributos de segurança do processo chamador expostos pelos Linux Security Modules (LSM) ativos.

Descrição

Interface genérica que substitui a leitura ad-hoc de arquivos em /proc/self/attr/ para obter atributos como o contexto SELinux, o perfil AppArmor ou rótulos Smack do processo atual, de forma uniforme entre os LSMs habilitados.

man 2Desde o kernel 6.8

Assinatura

int lsm_get_self_attr(
    unsigned int attr,
    struct lsm_ctx * ctx,
    size_t * size,
    __u32 flags
);

Parâmetros

ParâmetroTipoDescrição
attrunsigned intAtributo desejado (ex.: LSM_ATTR_CURRENT).
ctxstruct lsm_ctx *Buffer de saída para o(s) atributo(s) encontrado(s).
sizesize_t *Tamanho do buffer `ctx`; atualizado com o tamanho necessário/usado.
flags__u32Reservado; deve ser 0.

Registradores (x86_64)

RegistradorPapelArgumento
raxnúmero da syscall (chamada) / valor de retorno (após SYSCALL)
rdiargumento 1attrunsigned int
rsiargumento 2ctxstruct lsm_ctx *
rdxargumento 3sizesize_t *
r10argumento 4flags__u32

Valor de retorno

Número de atributos retornados em sucesso; -1 em erro, com errno definido.

Códigos de erro (errno)

E2BIG(7)
Lista de argumentos grande demais.
EINVAL(22)
Argumento inválido.
EOPNOTSUPP(95)
Operação não suportada nesse socket/arquivo (também ENOTSUP).
EFAULT(14)
Endereço de memória inválido (ponteiro fora do espaço de endereçamento válido).

Relacionadas