const char* capability_to_name(int id) {
if (id < 0)
return NULL;
- if (id >= capability_list_length())
+ if ((unsigned) id >= capability_list_length())
return NULL;
return capability_names[id];
return sc->id;
}
-/* This is the number of capability names we are *compiled* with. For the max capability number of the
+/* This is the number of capability names we are *compiled* with. For the max capability number of the
* currently-running kernel, use cap_last_cap(). Note that this one returns the size of the array, i.e. one
* value larger than the last known capability. This is different from cap_last_cap() which returns the
* highest supported capability. Hence with everyone agreeing on the same capabilities list, this function
* will return one higher than cap_last_cap(). */
-int capability_list_length(void) {
- return MIN((int) ELEMENTSOF(capability_names), CAP_LIMIT + 1);
+unsigned capability_list_length(void) {
+ return MIN((unsigned) ELEMENTSOF(capability_names), (unsigned) (CAP_LIMIT + 1));
}
int capability_set_to_string(uint64_t set, char **ret) {
#define CAPABILITY_TO_STRING(id) capability_to_string(id, (char[CAPABILITY_TO_STRING_MAX]) {})
int capability_from_name(const char *name);
-int capability_list_length(void);
+unsigned capability_list_length(void);
int capability_set_to_string(uint64_t set, char **ret);
int capability_set_to_string_negative(uint64_t set, char **ret);
break;
if (streq(t, "help")) {
- for (int i = 0; i < capability_list_length(); i++) {
+ for (unsigned i = 0; i < capability_list_length(); i++) {
const char *name;
name = capability_to_name(i);
ASSERT_STREQ(CAPABILITY_TO_STRING(62), "0x3e");
assert_se(!CAPABILITY_TO_STRING(64));
- for (int i = 0; i < capability_list_length(); i++) {
+ for (unsigned i = 0; i < capability_list_length(); i++) {
const char *n;
- assert_se(n = capability_to_name(i));
- assert_se(capability_from_name(n) == i);
- printf("%s = %i\n", n, i);
+ ASSERT_NOT_NULL(n = capability_to_name(i));
+ ASSERT_OK_EQ(capability_from_name(n), (int) i);
+ printf("%s = %u\n", n, i);
ASSERT_STREQ(CAPABILITY_TO_STRING(i), n);
}
assert_se(capability_from_name("64") == -EINVAL);
assert_se(capability_from_name("-1") == -EINVAL);
- for (int i = 0; i < capability_list_length(); i++) {
+ for (unsigned i = 0; i < capability_list_length(); i++) {
_cleanup_(cap_free_charpp) char *a = NULL;
const char *b;
unsigned u;