Split out of #37344.
/* SPDX-License-Identifier: LGPL-2.1-or-later */
#include <getopt.h>
+#include <stdlib.h>
+#include <unistd.h>
#include "alloc-util.h"
#include "bitfield.h"
#include "creds-util.h"
#include "dirent-util.h"
#include "errno-list.h"
+#include "errno-util.h"
#include "escape.h"
#include "fd-util.h"
#include "fileio.h"
#include "format-table.h"
#include "format-util.h"
+#include "fs-util.h"
#include "log.h"
#include "main-func.h"
-#include "mkdir-label.h"
+#include "mkdir.h"
#include "pager.h"
#include "parse-argument.h"
-#include "parse-util.h"
#include "pretty-print.h"
#include "recurse-dir.h"
#include "socket-util.h"
+#include "string-util.h"
#include "strv.h"
-#include "terminal-util.h"
#include "uid-classification.h"
#include "uid-range.h"
#include "umask-util.h"
/* SPDX-License-Identifier: LGPL-2.1-or-later */
+#include <stdlib.h>
#include <sys/wait.h>
#include "sd-daemon.h"
+#include "alloc-util.h"
#include "build-path.h"
#include "common-signal.h"
#include "env-util.h"
#include "event-util.h"
#include "fd-util.h"
+#include "format-util.h"
#include "fs-util.h"
#include "log.h"
#include "mkdir.h"
#include "set.h"
#include "signal-util.h"
#include "socket-util.h"
-#include "stdio-util.h"
+#include "string-util.h"
#include "strv.h"
+#include "time-util.h"
#include "umask-util.h"
#include "userdbd-manager.h"
/* SPDX-License-Identifier: LGPL-2.1-or-later */
#pragma once
-#include "sd-bus.h"
-#include "sd-event.h"
-
-typedef struct Manager Manager;
-
-#include "hashmap.h"
+#include "forward.h"
#include "ratelimit.h"
#define USERDB_WORKERS_MIN 3
#define USERDB_WORKERS_MAX 4096
-struct Manager {
+typedef struct Manager {
sd_event *event;
Set *workers_fixed; /* Workers 0…USERDB_WORKERS_MIN */
RateLimit worker_ratelimit;
sd_event_source *deferred_start_worker_event_source;
-};
+} Manager;
int manager_new(Manager **ret);
Manager* manager_free(Manager *m);
/* SPDX-License-Identifier: LGPL-2.1-or-later */
+#include <stdlib.h>
#include <sys/stat.h>
-#include <sys/types.h>
+
+#include "sd-event.h"
#include "daemon-util.h"
#include "log.h"
#include "sd-daemon.h"
#include "sd-varlink.h"
+#include "alloc-util.h"
#include "argv-util.h"
#include "env-util.h"
#include "errno-util.h"
#include "io-util.h"
#include "json-util.h"
#include "main-func.h"
-#include "process-util.h"
-#include "strv.h"
+#include "pidref.h"
+#include "string-util.h"
#include "time-util.h"
#include "user-record.h"
-#include "user-record-nss.h"
#include "user-util.h"
#include "userdb.h"
#include "varlink-io.systemd.UserDatabase.h"