]>
Commit | Line | Data |
---|---|---|
53e1b683 | 1 | /* SPDX-License-Identifier: LGPL-2.1+ */ |
5b12334d LP |
2 | #pragma once |
3 | ||
5b12334d LP |
4 | #include <stdbool.h> |
5 | ||
6 | #include "sd-bus.h" | |
5b12334d LP |
7 | |
8 | struct sd_bus_creds { | |
9 | bool allocated; | |
10 | unsigned n_ref; | |
0f514420 | 11 | |
5b12334d | 12 | uint64_t mask; |
0f514420 | 13 | uint64_t augmented; |
5b12334d LP |
14 | |
15 | uid_t uid; | |
705a415f LP |
16 | uid_t euid; |
17 | uid_t suid; | |
18 | uid_t fsuid; | |
5b12334d | 19 | gid_t gid; |
705a415f LP |
20 | gid_t egid; |
21 | gid_t sgid; | |
22 | gid_t fsgid; | |
23 | ||
02581590 LP |
24 | gid_t *supplementary_gids; |
25 | unsigned n_supplementary_gids; | |
26 | ||
1386e47d | 27 | pid_t ppid; |
5b12334d | 28 | pid_t pid; |
5b12334d LP |
29 | pid_t tid; |
30 | ||
31 | char *comm; | |
32 | char *tid_comm; | |
33 | char *exe; | |
34 | ||
35 | char *cmdline; | |
49b832c5 | 36 | size_t cmdline_size; |
5b12334d LP |
37 | char **cmdline_array; |
38 | ||
39 | char *cgroup; | |
40 | char *session; | |
41 | char *unit; | |
42 | char *user_unit; | |
43 | char *slice; | |
329ac4bc | 44 | char *user_slice; |
5b12334d | 45 | |
4761e880 LP |
46 | char *tty; |
47 | ||
7d9fcc2b | 48 | uint32_t *capability; |
5b12334d LP |
49 | |
50 | uint32_t audit_session_id; | |
51 | uid_t audit_login_uid; | |
52 | ||
53 | char *label; | |
49b832c5 LP |
54 | |
55 | char *unique_name; | |
56 | ||
65dae17a | 57 | char **well_known_names; |
fb6d9b77 LP |
58 | bool well_known_names_driver:1; |
59 | bool well_known_names_local:1; | |
751bc6ac LP |
60 | |
61 | char *cgroup_root; | |
cccb0b2c | 62 | |
455971c1 | 63 | char *description, *unescaped_description; |
5b12334d LP |
64 | }; |
65 | ||
66 | sd_bus_creds* bus_creds_new(void); | |
67 | ||
68 | void bus_creds_done(sd_bus_creds *c); | |
69 | ||
70 | int bus_creds_add_more(sd_bus_creds *c, uint64_t mask, pid_t pid, pid_t tid); | |
49b832c5 LP |
71 | |
72 | int bus_creds_extend_by_pid(sd_bus_creds *c, uint64_t mask, sd_bus_creds **ret); |