Systemd/src
Lennart Poettering a9fb08670f fs-util: add new CHASE_NON_EXISTING flag to chase_symlinks()
This new flag controls whether to consider a problem if the referenced path
doesn't actually exist. If specified it's OK if the final file doesn't exist.

Note that this permits one or more final components of the path not to exist,
but these must not contain "../" for safety reasons (or, to be extra safe,
neither "./" and a couple of others, i.e. what path_is_safe() permits).

This new flag is useful when resolving paths before issuing an mkdir() or
open(O_CREAT) on a path, as it permits that the file or directory is created
later.

The return code of chase_symlinks() is changed to return 1 if the file exists,
and 0 if it doesn't. The latter is only returned in case CHASE_NON_EXISTING is
set.
2016-12-01 00:25:51 +01:00
..
ac-power
activate
analyze analyze: fix build without seccomp 2016-11-10 10:12:31 +01:00
ask-password
backlight tree-wide: drop NULL sentinel from strjoin 2016-10-23 11:43:27 -04:00
basic fs-util: add new CHASE_NON_EXISTING flag to chase_symlinks() 2016-12-01 00:25:51 +01:00
binfmt
boot bootctl: don't try to remove esp_path (#4407) 2016-10-19 21:15:20 +02:00
cgls tree-wide: drop NULL sentinel from strjoin 2016-10-23 11:43:27 -04:00
cgroups-agent tree-wide: introduce new SOCKADDR_UN_LEN() macro, and use it everywhere 2016-05-05 22:24:36 +02:00
cgtop tree-wide: drop NULL sentinel from strjoin 2016-10-23 11:43:27 -04:00
core fs-util: add flags parameter to chase_symlinks() 2016-12-01 00:25:51 +01:00
coredump coredump: bump type of arg_journal_size_max to uint64 too 2016-11-08 00:21:37 -05:00
cryptsetup Merge pull request #4510 from keszybz/tree-wide-cleanups 2016-11-03 13:59:20 -06:00
dbus1-generator Ensure kdbus isn't used (#3501) 2016-06-18 17:24:23 -04:00
debug-generator tree-wide: drop NULL sentinel from strjoin 2016-10-23 11:43:27 -04:00
delta fs-util: add flags parameter to chase_symlinks() 2016-12-01 00:25:51 +01:00
detect-virt detect-virt: add --private-users switch to check if a userns is active 2016-10-26 20:12:51 -04:00
escape tree-wide: drop NULL sentinel from strjoin 2016-10-23 11:43:27 -04:00
firstboot tree-wide: use sd_id128_is_null() instead of sd_id128_equal where appropriate 2016-07-22 12:38:08 +02:00
fsck tree-wide: make parse_proc_cmdline() strip "rd." prefix automatically 2016-10-22 16:08:55 -04:00
fstab-generator fstab-generator: add x-systemd.mount-timeout (#4603) 2016-11-11 09:08:57 -05:00
getty-generator
gpt-auto-generator tree-wide: stop using canonicalize_file_name(), use chase_symlinks() instead 2016-12-01 00:25:51 +01:00
hibernate-resume tree-wide: drop NULL sentinel from strjoin 2016-10-23 11:43:27 -04:00
hostname networkd: allow networkd to set the timezone in timedated 2016-11-23 16:32:06 +01:00
hwdb Merge pull request #4510 from keszybz/tree-wide-cleanups 2016-11-03 13:59:20 -06:00
import nspawn: add fallback top normal copy/reflink when we cannot btrfs snapshot 2016-11-22 13:35:09 +01:00
initctl Rename formats-util.h to format-util.h 2016-11-07 10:15:08 -05:00
journal fs-util: add flags parameter to chase_symlinks() 2016-12-01 00:25:51 +01:00
journal-remote Use python3 explicitly in all python scripts 2016-11-28 15:00:20 -03:00
kernel-install kernel-install: use exit instead of return (#4565) 2016-11-04 08:58:41 -04:00
libsystemd tree-wide: stop using canonicalize_file_name(), use chase_symlinks() instead 2016-12-01 00:25:51 +01:00
libsystemd-network sd-dhcp-client: use free_and_strdup 2016-11-21 23:01:02 +01:00
libudev Merge pull request #4612 from keszybz/format-strings 2016-11-08 08:09:40 -05:00
locale tree-wide: drop NULL sentinel from strjoin 2016-10-23 11:43:27 -04:00
login tree-wide: stop using canonicalize_file_name(), use chase_symlinks() instead 2016-12-01 00:25:51 +01:00
machine Rename formats-util.h to format-util.h 2016-11-07 10:15:08 -05:00
machine-id-setup machine-id-setup: add new --print switch 2016-07-22 12:59:36 +02:00
modules-load tree-wide: make parse_proc_cmdline() strip "rd." prefix automatically 2016-10-22 16:08:55 -04:00
mount tree-wide: drop NULL sentinel from strjoin 2016-10-23 11:43:27 -04:00
network As per use case we should allow ForwardDelaySec to be set as 0 (#4765) 2016-11-30 11:54:42 +01:00
notify Rename formats-util.h to format-util.h 2016-11-07 10:15:08 -05:00
nspawn fs-util: add flags parameter to chase_symlinks() 2016-12-01 00:25:51 +01:00
nss-myhostname treewide: fix typos and remove accidental repetition of words 2016-07-11 16:18:43 +02:00
nss-mymachines nss-mymachines: avoid connecting to dbus from inside dbus-daemon 2016-08-19 00:52:00 +02:00
nss-resolve nss-resolve: be a bit more careful with returning NSS_STATUS_NOTFOUND 2016-10-24 19:04:43 +02:00
nss-systemd nss-systemd: remove useless define 2016-10-22 18:39:08 -04:00
path
quotacheck tree-wide: make parse_proc_cmdline() strip "rd." prefix automatically 2016-10-22 16:08:55 -04:00
random-seed
rc-local-generator tree-wide: drop NULL sentinel from strjoin 2016-10-23 11:43:27 -04:00
remount-fs core: when determining whether a process exit status is clean, consider whether it is a command or a daemon 2016-10-10 22:57:01 +02:00
reply-password tree-wide: introduce new SOCKADDR_UN_LEN() macro, and use it everywhere 2016-05-05 22:24:36 +02:00
resolve tree-wide: make invocations of extract_first_word more uniform (#4627) 2016-11-11 18:58:41 +01:00
rfkill tree-wide: drop NULL sentinel from strjoin 2016-10-23 11:43:27 -04:00
run Rename formats-util.h to format-util.h 2016-11-07 10:15:08 -05:00
shared tree-wide: stop using canonicalize_file_name(), use chase_symlinks() instead 2016-12-01 00:25:51 +01:00
sleep
socket-proxy socket-proxyd: Introduced dynamic connection limit via an option. (#4749) 2016-11-28 18:25:11 +01:00
stdio-bridge
sysctl sysctl: minor simplification 2016-11-02 11:39:48 -06:00
system-update-generator
systemctl fs-util: add flags parameter to chase_symlinks() 2016-12-01 00:25:51 +01:00
systemd networkd: support setting dhcp client listen port (#4631) 2016-11-10 18:34:19 -05:00
sysusers Rename formats-util.h to format-util.h 2016-11-07 10:15:08 -05:00
sysv-generator tree-wide: drop NULL sentinel from strjoin 2016-10-23 11:43:27 -04:00
test fs-util: add new CHASE_NON_EXISTING flag to chase_symlinks() 2016-12-01 00:25:51 +01:00
timedate Add enable_disable() helper 2016-07-31 22:48:22 -04:00
timesync timesyncd: clear ADJ_MAXERROR to keep STA_UNSYNC cleared after jump adjust (#4626) 2016-11-11 18:50:46 +01:00
tmpfiles Rename formats-util.h to format-util.h 2016-11-07 10:15:08 -05:00
tty-ask-password-agent core: when determining whether a process exit status is clean, consider whether it is a command or a daemon 2016-10-10 22:57:01 +02:00
udev udevd: check correct return value of fcntl() (#4758) 2016-11-28 18:24:26 +01:00
update-done update-done: minor clean-ups 2016-10-24 17:29:51 +02:00
update-utmp Rename formats-util.h to format-util.h 2016-11-07 10:15:08 -05:00
user-sessions
vconsole Merge pull request #4448 from msoltyspl/vcfix 2016-10-26 20:55:18 -04:00
.gitignore
Makefile