2
0
mirror of https://gitlab.com/apparmor/apparmor synced 2025-09-04 00:05:14 +00:00

Add debugging dump for Set Capabilities.

This commit is contained in:
Steve Beattie
2010-01-07 14:17:07 -08:00
parent fd07a7b17a
commit 2f9259a215

View File

@@ -831,6 +831,26 @@ const char *capability_to_name(unsigned int cap)
return capname; return capname;
} }
void __debug_capabilities(uint64_t capset, const char *name)
{
unsigned int i;
printf("%s:", name);
for (i = 0; i < (sizeof(capnames)/sizeof(char *)); i++) {
if (((1ull << i) & capset) != 0) {
printf (" %s", capability_to_name(i));
}
}
printf("\n");
}
void debug_capabilities(struct codomain *cod)
{
if (cod->capabilities != 0ull)
__debug_capabilities(cod->capabilities, "Capabilities");
if (cod->set_caps != 0ull)
__debug_capabilities(cod->set_caps, "Set Capabilities");
}
void debug_cod_list(struct codomain *cod) void debug_cod_list(struct codomain *cod)
{ {
unsigned int i; unsigned int i;
@@ -847,13 +867,7 @@ void debug_cod_list(struct codomain *cod)
debug_flags(cod); debug_flags(cod);
printf("Capabilities:\t"); debug_capabilities(cod);
for (i = 0; i < (sizeof(capnames)/sizeof(char *)); i++) {
if (((1ull << i) & cod->capabilities) != 0) {
printf ("%s ", capability_to_name(i));
}
}
printf("\n");
if (cod->entries) if (cod->entries)
debug_cod_entries(cod->entries); debug_cod_entries(cod->entries);