basic: Remove circular dependency between process-util.h and pidref.h
This commit is contained in:
@@ -20,6 +20,7 @@
|
||||
#include "macro.h"
|
||||
#include "parse-util.h"
|
||||
#include "pidref.h"
|
||||
#include "process-util.h"
|
||||
#include "stat-util.h"
|
||||
#include "user-util.h"
|
||||
|
||||
|
||||
+6
-8
@@ -1,10 +1,8 @@
|
||||
/* SPDX-License-Identifier: LGPL-2.1-or-later */
|
||||
#pragma once
|
||||
|
||||
typedef struct PidRef PidRef;
|
||||
|
||||
#include "macro.h"
|
||||
#include "process-util.h"
|
||||
#include "memory-util.h"
|
||||
|
||||
/* An embeddable structure carrying a reference to a process. Supposed to be used when tracking processes
|
||||
* continuously. This combines a PID, a modern Linux pidfd and the 64bit inode number of the pidfd into one
|
||||
@@ -29,22 +27,22 @@ typedef struct PidRef PidRef;
|
||||
* process. Moreover, most operations will fail with -EREMOTE. Only PidRef structures that are not marked
|
||||
* *unset* can be marked *remote*.
|
||||
*/
|
||||
struct PidRef {
|
||||
pid_t pid; /* > 0 if the PidRef is set, otherwise set to PID_AUTOMATIC if automatic mode is
|
||||
* desired, or 0 otherwise. */
|
||||
typedef struct PidRef {
|
||||
pid_t pid; /* > 0 if the PidRef is set, otherwise set to INT_MIN (PID_AUTOMATIC) if automatic
|
||||
* mode is desired, or 0 otherwise. */
|
||||
int fd; /* only valid if pidfd are available in the kernel, and we manage to get an fd. If we
|
||||
* know that the PID is not from the local machine we set this to -EREMOTE, otherwise
|
||||
* we use -EBADF as indicator the fd is invalid. */
|
||||
uint64_t fd_id; /* the inode number of pidfd. only useful in kernel 6.9+ where pidfds live in
|
||||
their own pidfs and each process comes with a unique inode number */
|
||||
};
|
||||
} PidRef;
|
||||
|
||||
#define PIDREF_NULL (PidRef) { .fd = -EBADF }
|
||||
|
||||
/* A special pidref value that we are using when a PID shall be automatically acquired from some surrounding
|
||||
* context, for example connection peer. Much like PIDREF_NULL it will be considered unset by
|
||||
* pidref_is_set(). */
|
||||
#define PIDREF_AUTOMATIC (const PidRef) { .pid = PID_AUTOMATIC, .fd = -EBADF }
|
||||
#define PIDREF_AUTOMATIC (const PidRef) { .pid = (pid_t) INT_MIN, .fd = -EBADF }
|
||||
|
||||
/* Turns a pid_t into a PidRef structure on-the-fly *without* acquiring a pidfd for it. (As opposed to
|
||||
* pidref_set_pid() which does so *with* acquiring one, see below) */
|
||||
|
||||
@@ -11,6 +11,7 @@
|
||||
#include "bus-slot.h"
|
||||
#include "bus-type.h"
|
||||
#include "log.h"
|
||||
#include "set.h"
|
||||
#include "string-util.h"
|
||||
#include "strv.h"
|
||||
|
||||
|
||||
@@ -7,6 +7,7 @@
|
||||
#include "bus-objects.h"
|
||||
#include "bus-slot.h"
|
||||
#include "log.h"
|
||||
#include "set.h"
|
||||
#include "string-util.h"
|
||||
|
||||
sd_bus_slot *bus_slot_allocate(
|
||||
|
||||
@@ -10,6 +10,7 @@
|
||||
#include "bus-util.h"
|
||||
#include "devnum-util.h"
|
||||
#include "fd-util.h"
|
||||
#include "format-util.h"
|
||||
#include "logind-brightness.h"
|
||||
#include "logind-dbus.h"
|
||||
#include "logind-polkit.h"
|
||||
|
||||
@@ -2,6 +2,7 @@
|
||||
|
||||
#include "logind-utmp.h"
|
||||
#include "path-util.h"
|
||||
#include "process-util.h"
|
||||
#include "utmp-wtmp.h"
|
||||
|
||||
int manager_read_utmp(Manager *m) {
|
||||
|
||||
@@ -2,6 +2,7 @@
|
||||
|
||||
#include "cgroup-util.h"
|
||||
#include "fd-util.h"
|
||||
#include "format-util.h"
|
||||
#include "json-util.h"
|
||||
#include "logind.h"
|
||||
#include "logind-dbus.h"
|
||||
|
||||
@@ -13,6 +13,7 @@
|
||||
#include "json-util.h"
|
||||
#include "machine.h"
|
||||
#include "machine-pool.h"
|
||||
#include "process-util.h"
|
||||
#include "string-util.h"
|
||||
|
||||
typedef struct ImageUpdateParameters {
|
||||
|
||||
@@ -10,6 +10,7 @@
|
||||
#include "log.h"
|
||||
#include "main-func.h"
|
||||
#include "pretty-print.h"
|
||||
#include "process-util.h"
|
||||
#include "ptyfwd.h"
|
||||
#include "strv.h"
|
||||
|
||||
|
||||
@@ -4,6 +4,7 @@
|
||||
#include "fd-util.h"
|
||||
#include "log.h"
|
||||
#include "notify-recv.h"
|
||||
#include "process-util.h"
|
||||
#include "socket-util.h"
|
||||
#include "strv.h"
|
||||
#include "user-util.h"
|
||||
|
||||
@@ -1,6 +1,8 @@
|
||||
/* SPDX-License-Identifier: LGPL-2.1-or-later */
|
||||
#pragma once
|
||||
|
||||
#include <string.h>
|
||||
|
||||
#include "ansi-color.h"
|
||||
#include "assert-util.h"
|
||||
#include "glyph-util.h"
|
||||
|
||||
@@ -2,6 +2,7 @@
|
||||
|
||||
#include "bitfield.h"
|
||||
#include "fd-util.h"
|
||||
#include "format-util.h"
|
||||
#include "log.h"
|
||||
#include "main-func.h"
|
||||
#include "missing_syscall.h"
|
||||
|
||||
@@ -15,7 +15,9 @@
|
||||
#include "inotify-util.h"
|
||||
#include "mkdir.h"
|
||||
#include "parse-util.h"
|
||||
#include "process-util.h"
|
||||
#include "rm-rf.h"
|
||||
#include "set.h"
|
||||
#include "stdio-util.h"
|
||||
#include "string-util.h"
|
||||
#include "udev-manager.h"
|
||||
|
||||
@@ -17,6 +17,7 @@
|
||||
#include "parse-argument.h"
|
||||
#include "path-util.h"
|
||||
#include "pretty-print.h"
|
||||
#include "process-util.h"
|
||||
#include "terminal-util.h"
|
||||
#include "varlink-idl-util.h"
|
||||
#include "varlink-util.h"
|
||||
|
||||
Reference in New Issue
Block a user