Сопоставьте запрошенное SELinux разрешение со строкой, представляющей системный вызов

Я пытаюсь сопоставить вектор управления доступом requested с соответствующим текстовым представлением системного вызова в следующей функции:

int avc_has_perm(security_id_t ssid, security_id_t tsid,
         security_class_t tclass, access_vector_t requested,
         struct avc_entry_ref *aeref, void *auditdata)

Из документации я вижу, что:

requested = requested permissions, interpreted based on @tclass

Есть ли функция, которая сопоставляет такое поле requested с текстовым представлением связанного с ним системного вызова (т. е. чтения, записи, открытия и т. д.)?

Спасибо


person Giuseppe    schedule 22.02.2017    source источник


Ответы (1)


Я обнаружил, что сопоставление выполняется в пространстве ядра с использованием структуры secclass_map[], объявленной внутри файла ./security/selinux/include/classmap.h.

Функция, показывающая, как сделать сопоставление, называется avc_dump_av внутри ./security/selinux/avc.c.

person Giuseppe    schedule 23.02.2017