From eb7d7d14fbc100bcf856050cbaee67776d955926 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Zbigniew=20J=C4=99drzejewski-Szmek?= Date: Tue, 9 Jan 2024 10:33:49 +0100 Subject: [PATCH 1/2] =?UTF-8?q?src/basic:=20"UidRange"=20=E2=86=92=20"UIDR?= =?UTF-8?q?ange"?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit We don't "uncapitalize" parts of an already-capitalized name when concatenating words. In particular, we had UidRange in basic/uid-range.h and UGIDAllocationRange in basic/uid-alloc-range.h, which is annoying. --- src/basic/uid-range.c | 36 +++++++++++------------ src/basic/uid-range.h | 28 +++++++++--------- src/core/manager.c | 2 +- src/libsystemd/sd-device/device-monitor.c | 2 +- src/sysusers/sysusers.c | 2 +- src/test/test-uid-range.c | 6 ++-- src/userdb/userdbctl.c | 12 ++++---- 7 files changed, 44 insertions(+), 44 deletions(-) diff --git a/src/basic/uid-range.c b/src/basic/uid-range.c index d933d9fa5c..90eb0cd911 100644 --- a/src/basic/uid-range.c +++ b/src/basic/uid-range.c @@ -15,7 +15,7 @@ #include "uid-range.h" #include "user-util.h" -UidRange *uid_range_free(UidRange *range) { +UIDRange *uid_range_free(UIDRange *range) { if (!range) return NULL; @@ -23,14 +23,14 @@ UidRange *uid_range_free(UidRange *range) { return mfree(range); } -static bool uid_range_entry_intersect(const UidRangeEntry *a, const UidRangeEntry *b) { +static bool uid_range_entry_intersect(const UIDRangeEntry *a, const UIDRangeEntry *b) { assert(a); assert(b); return a->start <= b->start + b->nr && a->start + a->nr >= b->start; } -static int uid_range_entry_compare(const UidRangeEntry *a, const UidRangeEntry *b) { +static int uid_range_entry_compare(const UIDRangeEntry *a, const UIDRangeEntry *b) { int r; assert(a); @@ -43,7 +43,7 @@ static int uid_range_entry_compare(const UidRangeEntry *a, const UidRangeEntry * return CMP(a->nr, b->nr); } -static void uid_range_coalesce(UidRange *range) { +static void uid_range_coalesce(UIDRange *range) { assert(range); if (range->n_entries <= 0) @@ -52,10 +52,10 @@ static void uid_range_coalesce(UidRange *range) { typesafe_qsort(range->entries, range->n_entries, uid_range_entry_compare); for (size_t i = 0; i < range->n_entries; i++) { - UidRangeEntry *x = range->entries + i; + UIDRangeEntry *x = range->entries + i; for (size_t j = i + 1; j < range->n_entries; j++) { - UidRangeEntry *y = range->entries + j; + UIDRangeEntry *y = range->entries + j; uid_t begin, end; if (!uid_range_entry_intersect(x, y)) @@ -68,7 +68,7 @@ static void uid_range_coalesce(UidRange *range) { x->nr = end - begin; if (range->n_entries > j + 1) - memmove(y, y + 1, sizeof(UidRangeEntry) * (range->n_entries - j - 1)); + memmove(y, y + 1, sizeof(UIDRangeEntry) * (range->n_entries - j - 1)); range->n_entries--; j--; @@ -76,9 +76,9 @@ static void uid_range_coalesce(UidRange *range) { } } -int uid_range_add_internal(UidRange **range, uid_t start, uid_t nr, bool coalesce) { - _cleanup_(uid_range_freep) UidRange *range_new = NULL; - UidRange *p; +int uid_range_add_internal(UIDRange **range, uid_t start, uid_t nr, bool coalesce) { + _cleanup_(uid_range_freep) UIDRange *range_new = NULL; + UIDRange *p; assert(range); @@ -91,7 +91,7 @@ int uid_range_add_internal(UidRange **range, uid_t start, uid_t nr, bool coalesc if (*range) p = *range; else { - range_new = new0(UidRange, 1); + range_new = new0(UIDRange, 1); if (!range_new) return -ENOMEM; @@ -101,7 +101,7 @@ int uid_range_add_internal(UidRange **range, uid_t start, uid_t nr, bool coalesc if (!GREEDY_REALLOC(p->entries, p->n_entries + 1)) return -ENOMEM; - p->entries[p->n_entries++] = (UidRangeEntry) { + p->entries[p->n_entries++] = (UIDRangeEntry) { .start = start, .nr = nr, }; @@ -115,7 +115,7 @@ int uid_range_add_internal(UidRange **range, uid_t start, uid_t nr, bool coalesc return 0; } -int uid_range_add_str(UidRange **range, const char *s) { +int uid_range_add_str(UIDRange **range, const char *s) { uid_t start, end; int r; @@ -129,7 +129,7 @@ int uid_range_add_str(UidRange **range, const char *s) { return uid_range_add_internal(range, start, end - start + 1, /* coalesce = */ true); } -int uid_range_next_lower(const UidRange *range, uid_t *uid) { +int uid_range_next_lower(const UIDRange *range, uid_t *uid) { uid_t closest = UID_INVALID, candidate; assert(range); @@ -162,7 +162,7 @@ int uid_range_next_lower(const UidRange *range, uid_t *uid) { return 1; } -bool uid_range_covers(const UidRange *range, uid_t start, uid_t nr) { +bool uid_range_covers(const UIDRange *range, uid_t start, uid_t nr) { if (nr == 0) /* empty range? always covered... */ return true; @@ -204,8 +204,8 @@ int uid_map_read_one(FILE *f, uid_t *ret_base, uid_t *ret_shift, uid_t *ret_rang return 0; } -int uid_range_load_userns(UidRange **ret, const char *path) { - _cleanup_(uid_range_freep) UidRange *range = NULL; +int uid_range_load_userns(UIDRange **ret, const char *path) { + _cleanup_(uid_range_freep) UIDRange *range = NULL; _cleanup_fclose_ FILE *f = NULL; int r; @@ -230,7 +230,7 @@ int uid_range_load_userns(UidRange **ret, const char *path) { return r; } - range = new0(UidRange, 1); + range = new0(UIDRange, 1); if (!range) return -ENOMEM; diff --git a/src/basic/uid-range.h b/src/basic/uid-range.h index bfe7892669..5c4aac3726 100644 --- a/src/basic/uid-range.h +++ b/src/basic/uid-range.h @@ -6,31 +6,31 @@ #include "macro.h" -typedef struct UidRangeEntry { +typedef struct UIDRangeEntry { uid_t start, nr; -} UidRangeEntry; +} UIDRangeEntry; -typedef struct UidRange { - UidRangeEntry *entries; +typedef struct UIDRange { + UIDRangeEntry *entries; size_t n_entries; -} UidRange; +} UIDRange; -UidRange *uid_range_free(UidRange *range); -DEFINE_TRIVIAL_CLEANUP_FUNC(UidRange*, uid_range_free); +UIDRange *uid_range_free(UIDRange *range); +DEFINE_TRIVIAL_CLEANUP_FUNC(UIDRange*, uid_range_free); -int uid_range_add_internal(UidRange **range, uid_t start, uid_t nr, bool coalesce); -static inline int uid_range_add(UidRange **range, uid_t start, uid_t nr) { +int uid_range_add_internal(UIDRange **range, uid_t start, uid_t nr, bool coalesce); +static inline int uid_range_add(UIDRange **range, uid_t start, uid_t nr) { return uid_range_add_internal(range, start, nr, true); } -int uid_range_add_str(UidRange **range, const char *s); +int uid_range_add_str(UIDRange **range, const char *s); -int uid_range_next_lower(const UidRange *range, uid_t *uid); +int uid_range_next_lower(const UIDRange *range, uid_t *uid); -bool uid_range_covers(const UidRange *range, uid_t start, uid_t nr); -static inline bool uid_range_contains(const UidRange *range, uid_t uid) { +bool uid_range_covers(const UIDRange *range, uid_t start, uid_t nr); +static inline bool uid_range_contains(const UIDRange *range, uid_t uid) { return uid_range_covers(range, uid, 1); } int uid_map_read_one(FILE *f, uid_t *ret_base, uid_t *ret_shift, uid_t *ret_range); -int uid_range_load_userns(UidRange **ret, const char *path); +int uid_range_load_userns(UIDRange **ret, const char *path); diff --git a/src/core/manager.c b/src/core/manager.c index c07f537b9f..95c5f6381d 100644 --- a/src/core/manager.c +++ b/src/core/manager.c @@ -4767,7 +4767,7 @@ int manager_dispatch_user_lookup_fd(sd_event_source *source, int fd, uint32_t re } static int short_uid_range(const char *path) { - _cleanup_(uid_range_freep) UidRange *p = NULL; + _cleanup_(uid_range_freep) UIDRange *p = NULL; int r; assert(path); diff --git a/src/libsystemd/sd-device/device-monitor.c b/src/libsystemd/sd-device/device-monitor.c index 49ab56adcb..018a68d1db 100644 --- a/src/libsystemd/sd-device/device-monitor.c +++ b/src/libsystemd/sd-device/device-monitor.c @@ -47,7 +47,7 @@ struct sd_device_monitor { union sockaddr_union snl_trusted_sender; bool bound; - UidRange *mapped_userns_uid_range; + UIDRange *mapped_userns_uid_range; Hashmap *subsystem_filter; Set *tag_filter; diff --git a/src/sysusers/sysusers.c b/src/sysusers/sysusers.c index 8376868136..e33b0200fd 100644 --- a/src/sysusers/sysusers.c +++ b/src/sysusers/sysusers.c @@ -117,7 +117,7 @@ typedef struct Context { Set *names; uid_t search_uid; - UidRange *uid_range; + UIDRange *uid_range; UGIDAllocationRange login_defs; bool login_defs_need_warning; diff --git a/src/test/test-uid-range.c b/src/test/test-uid-range.c index aabbd2425c..10ed8cc784 100644 --- a/src/test/test-uid-range.c +++ b/src/test/test-uid-range.c @@ -14,7 +14,7 @@ #include "virt.h" TEST(uid_range) { - _cleanup_(uid_range_freep) UidRange *p = NULL; + _cleanup_(uid_range_freep) UIDRange *p = NULL; uid_t search; assert_se(uid_range_covers(p, 0, 0)); @@ -93,7 +93,7 @@ TEST(uid_range) { } TEST(load_userns) { - _cleanup_(uid_range_freep) UidRange *p = NULL; + _cleanup_(uid_range_freep) UIDRange *p = NULL; _cleanup_(unlink_and_freep) char *fn = NULL; _cleanup_fclose_ FILE *f = NULL; int r; @@ -134,7 +134,7 @@ TEST(load_userns) { } TEST(uid_range_coalesce) { - _cleanup_(uid_range_freep) UidRange *p = NULL; + _cleanup_(uid_range_freep) UIDRange *p = NULL; for (size_t i = 0; i < 10; i++) { assert_se(uid_range_add_internal(&p, i * 10, 10, /* coalesce = */ false) >= 0); diff --git a/src/userdb/userdbctl.c b/src/userdb/userdbctl.c index 9ab5d42c4b..ecbdcb0f41 100644 --- a/src/userdb/userdbctl.c +++ b/src/userdb/userdbctl.c @@ -169,7 +169,7 @@ static const struct { }, }; -static int table_add_uid_boundaries(Table *table, const UidRange *p) { +static int table_add_uid_boundaries(Table *table, const UIDRange *p) { int r; assert(table); @@ -301,7 +301,7 @@ static int add_unavailable_uid(Table *table, uid_t start, uid_t end) { static int table_add_uid_map( Table *table, - const UidRange *p, + const UIDRange *p, int (*add_unavailable)(Table *t, uid_t start, uid_t end)) { uid_t focus = 0; @@ -311,7 +311,7 @@ static int table_add_uid_map( assert(add_unavailable); for (size_t i = 0; p && i < p->n_entries; i++) { - UidRangeEntry *x = p->entries + i; + UIDRangeEntry *x = p->entries + i; if (focus < x->start) { r = add_unavailable(table, focus, x->start-1); @@ -425,7 +425,7 @@ static int display_user(int argc, char *argv[], void *userdata) { } if (table) { - _cleanup_(uid_range_freep) UidRange *uid_range = NULL; + _cleanup_(uid_range_freep) UIDRange *uid_range = NULL; int boundary_lines, uid_map_lines; r = uid_range_load_userns(&uid_range, "/proc/self/uid_map"); @@ -526,7 +526,7 @@ static int show_group(GroupRecord *gr, Table *table) { return 0; } -static int table_add_gid_boundaries(Table *table, const UidRange *p) { +static int table_add_gid_boundaries(Table *table, const UIDRange *p) { int r; assert(table); @@ -728,7 +728,7 @@ static int display_group(int argc, char *argv[], void *userdata) { } if (table) { - _cleanup_(uid_range_freep) UidRange *gid_range = NULL; + _cleanup_(uid_range_freep) UIDRange *gid_range = NULL; int boundary_lines, gid_map_lines; r = uid_range_load_userns(&gid_range, "/proc/self/gid_map"); From 8e1ac16bc6a18e47b3fa09a9bb1290fa7a99b85d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Zbigniew=20J=C4=99drzejewski-Szmek?= Date: Tue, 9 Jan 2024 10:37:27 +0100 Subject: [PATCH 2/2] src/basic: rename uid-alloc-range.[ch] to uid-classification.[ch] We had both uid-range.h and uid-alloc-range.h. The latter now contains helpers like {uid,gid}_is_{system,dynamic,container}(), uid_for_system_journal(), so the existing name is outdated. I think the uid-range.[ch] should stay separate because it has a bunch of helpers for parsing and printing of uid ranges. So let's rename as in $subject to better reflect the contents of the file and make the two sets of files harder to confuse. --- src/basic/meson.build | 2 +- src/basic/{uid-alloc-range.c => uid-classification.c} | 2 +- src/basic/{uid-alloc-range.h => uid-classification.h} | 0 src/core/dynamic-user.c | 2 +- src/coredump/coredump.c | 2 +- src/dissect/dissect.c | 2 +- src/home/homectl.c | 2 +- src/home/homed-home.c | 2 +- src/journal/journald-server.c | 2 +- src/libsystemd/sd-journal/sd-journal.c | 2 +- src/login/logind-session.c | 2 +- src/login/logind-user.c | 2 +- src/shared/condition.c | 2 +- src/shared/group-record.c | 2 +- src/shared/user-record.c | 2 +- src/sysusers/sysusers.c | 2 +- src/test/meson.build | 2 +- src/test/test-condition.c | 2 +- src/test/{test-uid-alloc-range.c => test-uid-classification.c} | 2 +- 19 files changed, 18 insertions(+), 18 deletions(-) rename src/basic/{uid-alloc-range.c => uid-classification.c} (99%) rename src/basic/{uid-alloc-range.h => uid-classification.h} (100%) rename src/test/{test-uid-alloc-range.c => test-uid-classification.c} (99%) diff --git a/src/basic/meson.build b/src/basic/meson.build index d7450d8b44..949ca4d81f 100644 --- a/src/basic/meson.build +++ b/src/basic/meson.build @@ -96,7 +96,7 @@ basic_sources = files( 'terminal-util.c', 'time-util.c', 'tmpfile-util.c', - 'uid-alloc-range.c', + 'uid-classification.c', 'uid-range.c', 'unit-def.c', 'unit-file.c', diff --git a/src/basic/uid-alloc-range.c b/src/basic/uid-classification.c similarity index 99% rename from src/basic/uid-alloc-range.c rename to src/basic/uid-classification.c index 669cb6d56f..e2d2cebc6d 100644 --- a/src/basic/uid-alloc-range.c +++ b/src/basic/uid-classification.c @@ -5,7 +5,7 @@ #include "fileio.h" #include "missing_threads.h" #include "string-util.h" -#include "uid-alloc-range.h" +#include "uid-classification.h" #include "user-util.h" static const UGIDAllocationRange default_ugid_allocation_range = { diff --git a/src/basic/uid-alloc-range.h b/src/basic/uid-classification.h similarity index 100% rename from src/basic/uid-alloc-range.h rename to src/basic/uid-classification.h diff --git a/src/core/dynamic-user.c b/src/core/dynamic-user.c index 12724c682c..484b0e29ab 100644 --- a/src/core/dynamic-user.c +++ b/src/core/dynamic-user.c @@ -20,7 +20,7 @@ #include "stdio-util.h" #include "string-util.h" #include "strv.h" -#include "uid-alloc-range.h" +#include "uid-classification.h" #include "user-util.h" /* Takes a value generated randomly or by hashing and turns it into a UID in the right range */ diff --git a/src/coredump/coredump.c b/src/coredump/coredump.c index 2b6222b308..cd5e5343f0 100644 --- a/src/coredump/coredump.c +++ b/src/coredump/coredump.c @@ -51,7 +51,7 @@ #include "strv.h" #include "sync-util.h" #include "tmpfile-util.h" -#include "uid-alloc-range.h" +#include "uid-classification.h" #include "user-util.h" /* The maximum size up to which we process coredumps. We use 1G on 32-bit systems, and 32G on 64-bit systems */ diff --git a/src/dissect/dissect.c b/src/dissect/dissect.c index 35a5d7a236..2b080257fe 100644 --- a/src/dissect/dissect.c +++ b/src/dissect/dissect.c @@ -46,7 +46,7 @@ #include "strv.h" #include "terminal-util.h" #include "tmpfile-util.h" -#include "uid-alloc-range.h" +#include "uid-classification.h" #include "user-util.h" #include "vpick.h" diff --git a/src/home/homectl.c b/src/home/homectl.c index 5a2eb8f31b..222bf36e58 100644 --- a/src/home/homectl.c +++ b/src/home/homectl.c @@ -42,7 +42,7 @@ #include "rlimit-util.h" #include "spawn-polkit-agent.h" #include "terminal-util.h" -#include "uid-alloc-range.h" +#include "uid-classification.h" #include "user-record.h" #include "user-record-password-quality.h" #include "user-record-show.h" diff --git a/src/home/homed-home.c b/src/home/homed-home.c index 787dc773ac..ea86dffb52 100644 --- a/src/home/homed-home.c +++ b/src/home/homed-home.c @@ -38,7 +38,7 @@ #include "stat-util.h" #include "string-table.h" #include "strv.h" -#include "uid-alloc-range.h" +#include "uid-classification.h" #include "user-record-password-quality.h" #include "user-record-sign.h" #include "user-record-util.h" diff --git a/src/journal/journald-server.c b/src/journal/journald-server.c index 476da317fe..2469451fca 100644 --- a/src/journal/journald-server.c +++ b/src/journal/journald-server.c @@ -56,7 +56,7 @@ #include "string-table.h" #include "string-util.h" #include "syslog-util.h" -#include "uid-alloc-range.h" +#include "uid-classification.h" #include "user-util.h" #include "varlink-io.systemd.Journal.h" diff --git a/src/libsystemd/sd-journal/sd-journal.c b/src/libsystemd/sd-journal/sd-journal.c index 4d7e53af08..5a8c8a8579 100644 --- a/src/libsystemd/sd-journal/sd-journal.c +++ b/src/libsystemd/sd-journal/sd-journal.c @@ -43,7 +43,7 @@ #include "string-util.h" #include "strv.h" #include "syslog-util.h" -#include "uid-alloc-range.h" +#include "uid-classification.h" #define JOURNAL_FILES_RECHECK_USEC (2 * USEC_PER_SEC) diff --git a/src/login/logind-session.c b/src/login/logind-session.c index 8dfbb45c3e..c60811f72e 100644 --- a/src/login/logind-session.c +++ b/src/login/logind-session.c @@ -38,7 +38,7 @@ #include "strv.h" #include "terminal-util.h" #include "tmpfile-util.h" -#include "uid-alloc-range.h" +#include "uid-classification.h" #include "user-util.h" #define RELEASE_USEC (20*USEC_PER_SEC) diff --git a/src/login/logind-user.c b/src/login/logind-user.c index 2675fa7e93..4868eb48fb 100644 --- a/src/login/logind-user.c +++ b/src/login/logind-user.c @@ -33,7 +33,7 @@ #include "string-table.h" #include "strv.h" #include "tmpfile-util.h" -#include "uid-alloc-range.h" +#include "uid-classification.h" #include "unit-name.h" #include "user-util.h" diff --git a/src/shared/condition.c b/src/shared/condition.c index d3446e8a9d..7563f29c94 100644 --- a/src/shared/condition.c +++ b/src/shared/condition.c @@ -59,7 +59,7 @@ #include "string-util.h" #include "tomoyo-util.h" #include "tpm2-util.h" -#include "uid-alloc-range.h" +#include "uid-classification.h" #include "user-util.h" #include "virt.h" diff --git a/src/shared/group-record.c b/src/shared/group-record.c index 4fed5c671c..7eebd2300e 100644 --- a/src/shared/group-record.c +++ b/src/shared/group-record.c @@ -2,7 +2,7 @@ #include "group-record.h" #include "strv.h" -#include "uid-alloc-range.h" +#include "uid-classification.h" #include "user-util.h" GroupRecord* group_record_new(void) { diff --git a/src/shared/user-record.c b/src/shared/user-record.c index 4bd547a6c6..654c4d3588 100644 --- a/src/shared/user-record.c +++ b/src/shared/user-record.c @@ -16,7 +16,7 @@ #include "rlimit-util.h" #include "string-table.h" #include "strv.h" -#include "uid-alloc-range.h" +#include "uid-classification.h" #include "user-record.h" #include "user-util.h" diff --git a/src/sysusers/sysusers.c b/src/sysusers/sysusers.c index e33b0200fd..e7dcb865c5 100644 --- a/src/sysusers/sysusers.c +++ b/src/sysusers/sysusers.c @@ -35,7 +35,7 @@ #include "strv.h" #include "sync-util.h" #include "tmpfile-util-label.h" -#include "uid-alloc-range.h" +#include "uid-classification.h" #include "uid-range.h" #include "user-util.h" #include "utf8.h" diff --git a/src/test/meson.build b/src/test/meson.build index 0c3cb5af88..49b021cb8a 100644 --- a/src/test/meson.build +++ b/src/test/meson.build @@ -171,7 +171,7 @@ simple_tests += files( 'test-terminal-util.c', 'test-tmpfile-util.c', 'test-udev-util.c', - 'test-uid-alloc-range.c', + 'test-uid-classification.c', 'test-uid-range.c', 'test-umask-util.c', 'test-unaligned.c', diff --git a/src/test/test-condition.c b/src/test/test-condition.c index 6620846360..be83690ee5 100644 --- a/src/test/test-condition.c +++ b/src/test/test-condition.c @@ -41,7 +41,7 @@ #include "tests.h" #include "tmpfile-util.h" #include "tomoyo-util.h" -#include "uid-alloc-range.h" +#include "uid-classification.h" #include "user-util.h" #include "virt.h" diff --git a/src/test/test-uid-alloc-range.c b/src/test/test-uid-classification.c similarity index 99% rename from src/test/test-uid-alloc-range.c rename to src/test/test-uid-classification.c index cd06463cef..9c7500a00e 100644 --- a/src/test/test-uid-alloc-range.c +++ b/src/test/test-uid-classification.c @@ -9,7 +9,7 @@ #include "fs-util.h" #include "tests.h" #include "tmpfile-util.h" -#include "uid-alloc-range.h" +#include "uid-classification.h" static void test_read_login_defs_one(const char *path) { log_info("/* %s(\"%s\") */", __func__, path ?: "");