]> git.ipfire.org Git - thirdparty/systemd.git/commitdiff
uid-range: use size_t for array size
authorLennart Poettering <lennart@poettering.net>
Thu, 31 Mar 2022 10:56:24 +0000 (12:56 +0200)
committerLennart Poettering <lennart@poettering.net>
Fri, 1 Apr 2022 09:20:12 +0000 (11:20 +0200)
src/shared/uid-range.c
src/shared/uid-range.h
src/sysusers/sysusers.c
src/test/test-uid-range.c

index 2c07a1b7a8cc5df2fd95fd1399d60c87724dc12a..1adf4f62c231f6942012344af4dbf1a8b2b033f3 100644 (file)
@@ -17,12 +17,12 @@ static bool uid_range_intersect(UidRange *range, uid_t start, uid_t nr) {
                 range->start + range->nr >= start;
 }
 
-static void uid_range_coalesce(UidRange **p, unsigned *n) {
+static void uid_range_coalesce(UidRange **p, size_t *n) {
         assert(p);
         assert(n);
 
-        for (unsigned i = 0; i < *n; i++) {
-                for (unsigned j = i + 1; j < *n; j++) {
+        for (size_t i = 0; i < *n; i++) {
+                for (size_t j = i + 1; j < *n; j++) {
                         UidRange *x = (*p)+i, *y = (*p)+j;
 
                         if (uid_range_intersect(x, y->start, y->nr)) {
@@ -54,7 +54,7 @@ static int uid_range_compare(const UidRange *a, const UidRange *b) {
         return CMP(a->nr, b->nr);
 }
 
-int uid_range_add(UidRange **p, unsigned *n, uid_t start, uid_t nr) {
+int uid_range_add(UidRange **p, size_t *n, uid_t start, uid_t nr) {
         bool found = false;
         UidRange *x;
 
@@ -64,7 +64,7 @@ int uid_range_add(UidRange **p, unsigned *n, uid_t start, uid_t nr) {
         if (nr <= 0)
                 return 0;
 
-        for (unsigned i = 0; i < *n; i++) {
+        for (size_t i = 0; i < *n; i++) {
                 x = (*p) + i;
                 if (uid_range_intersect(x, start, nr)) {
                         found = true;
@@ -100,7 +100,7 @@ int uid_range_add(UidRange **p, unsigned *n, uid_t start, uid_t nr) {
         return *n;
 }
 
-int uid_range_add_str(UidRange **p, unsigned *n, const char *s) {
+int uid_range_add_str(UidRange **p, size_t *n, const char *s) {
         uid_t start, nr;
         const char *t;
         int r;
@@ -138,7 +138,7 @@ int uid_range_add_str(UidRange **p, unsigned *n, const char *s) {
         return uid_range_add(p, n, start, nr);
 }
 
-int uid_range_next_lower(const UidRange *p, unsigned n, uid_t *uid) {
+int uid_range_next_lower(const UidRange *p, size_t n, uid_t *uid) {
         uid_t closest = UID_INVALID, candidate;
 
         assert(p);
@@ -146,7 +146,7 @@ int uid_range_next_lower(const UidRange *p, unsigned n, uid_t *uid) {
 
         candidate = *uid - 1;
 
-        for (unsigned i = 0; i < n; i++) {
+        for (size_t i = 0; i < n; i++) {
                 uid_t begin, end;
 
                 begin = p[i].start;
@@ -168,11 +168,11 @@ int uid_range_next_lower(const UidRange *p, unsigned n, uid_t *uid) {
         return 1;
 }
 
-bool uid_range_contains(const UidRange *p, unsigned n, uid_t uid) {
+bool uid_range_contains(const UidRange *p, size_t n, uid_t uid) {
         assert(p);
         assert(uid);
 
-        for (unsigned i = 0; i < n; i++)
+        for (size_t i = 0; i < n; i++)
                 if (uid >= p[i].start && uid < p[i].start + p[i].nr)
                         return true;
 
index ef168cdb33a34e1d7ec10f3f05b707072dff0f9a..1e118ec42c8f8bf72070211f5f122424856cb154 100644 (file)
@@ -8,8 +8,8 @@ typedef struct UidRange {
         uid_t start, nr;
 } UidRange;
 
-int uid_range_add(UidRange **p, unsigned *n, uid_t start, uid_t nr);
-int uid_range_add_str(UidRange **p, unsigned *n, const char *s);
+int uid_range_add(UidRange **p, size_t *n, uid_t start, uid_t nr);
+int uid_range_add_str(UidRange **p, size_t *n, const char *s);
 
-int uid_range_next_lower(const UidRange *p, unsigned n, uid_t *uid);
-bool uid_range_contains(const UidRange *p, unsigned n, uid_t uid);
+int uid_range_next_lower(const UidRange *p, size_t n, uid_t *uid);
+bool uid_range_contains(const UidRange *p, size_t n, uid_t uid);
index 59b76c8620aa8e693d2284fc2be57f75bd89db6d..1061b4e603ceed4c82c77f184f4e5da0059ddb29 100644 (file)
@@ -104,7 +104,7 @@ static Set *database_users = NULL, *database_groups = NULL;
 
 static uid_t search_uid = UID_INVALID;
 static UidRange *uid_range = NULL;
-static unsigned n_uid_range = 0;
+static size_t n_uid_range = 0;
 
 static UGIDAllocationRange login_defs = {};
 static bool login_defs_need_warning = false;
index 16cbab07d605f7b6896fbe171f6798f08a9fc5b9..0c47e8ea53ca46b076778d9dedb92c3a2057af12 100644 (file)
@@ -9,7 +9,7 @@
 
 int main(int argc, char *argv[]) {
         _cleanup_free_ UidRange *p = NULL;
-        unsigned n = 0;
+        size_t n = 0;
         uid_t search;
 
         assert_se(uid_range_add_str(&p, &n, "500-999") >= 0);