]>
Commit | Line | Data |
---|---|---|
db9ecf05 | 1 | /* SPDX-License-Identifier: LGPL-2.1-or-later */ |
70a5db58 LP |
2 | #pragma once |
3 | ||
4 | #include <stdbool.h> | |
5 | ||
6 | #include "sd-bus.h" | |
7 | ||
8 | #include "time-util.h" | |
9 | #include "user-record.h" | |
10 | ||
71bf7ba1 LP |
11 | /* Put some limits on disk sizes: not less than 5M, not more than 5T */ |
12 | #define USER_DISK_SIZE_MIN (UINT64_C(5)*1024*1024) | |
13 | #define USER_DISK_SIZE_MAX (UINT64_C(5)*1024*1024*1024*1024) | |
14 | ||
d357b80d LP |
15 | /* The default disk size to use when nothing else is specified, relative to free disk space. We calculate |
16 | * this from the default rebalancing weights, so that what we create initially doesn't immediately require | |
17 | * rebalancing. */ | |
18 | #define USER_DISK_SIZE_DEFAULT_PERCENT ((unsigned) ((100 * REBALANCE_WEIGHT_DEFAULT) / (REBALANCE_WEIGHT_DEFAULT + REBALANCE_WEIGHT_BACKING))) | |
19 | ||
20 | /* This should be 83% right now, i.e. 100 of (100 + 20). Let's protect us against accidental changes. */ | |
21 | assert_cc(USER_DISK_SIZE_DEFAULT_PERCENT == 83U); | |
71bf7ba1 | 22 | |
70a5db58 LP |
23 | bool suitable_user_name(const char *name); |
24 | int suitable_realm(const char *realm); | |
25 | int suitable_image_path(const char *path); | |
26 | ||
c07bf7a4 LP |
27 | bool supported_fstype(const char *fstype); |
28 | ||
70a5db58 LP |
29 | int split_user_name_realm(const char *t, char **ret_user_name, char **ret_realm); |
30 | ||
31 | int bus_message_append_secret(sd_bus_message *m, UserRecord *secret); | |
32 | ||
33 | /* Many of our operations might be slow due to crypto, fsck, recursive chown() and so on. For these | |
201632e3 | 34 | * operations permit a *very* long timeout */ |
70a5db58 | 35 | #define HOME_SLOW_BUS_CALL_TIMEOUT_USEC (2*USEC_PER_MINUTE) |
005daeed LP |
36 | |
37 | const char *home_record_dir(void); |