summaryrefslogtreecommitdiff
path: root/src/shared/util.h
diff options
context:
space:
mode:
authorAlban Crequy <alban@endocode.com>2015-03-10 18:15:52 +0100
committerLennart Poettering <lennart@poettering.net>2015-03-10 18:23:46 +0100
commitf85ef957e647c5182acf5e64298f68e4b7fbfe8f (patch)
tree505151f058adc41e72d262d044cc2b0092a148aa /src/shared/util.h
parent27cc6f166bdebc0e698fb692993b801db2618866 (diff)
util: add rename_noreplace
renameat2() exists since Linux 3.15 but btrfs support for the flag RENAME_NOREPLACE was added later. This patch implements a fallback when renameat2() returns EINVAL. EINVAL is the error returned when the filesystem does not support one of the flags.
Diffstat (limited to 'src/shared/util.h')
-rw-r--r--src/shared/util.h2
1 files changed, 2 insertions, 0 deletions
diff --git a/src/shared/util.h b/src/shared/util.h
index d2da3e289..d229e1e68 100644
--- a/src/shared/util.h
+++ b/src/shared/util.h
@@ -1081,3 +1081,5 @@ void sigkill_wait(pid_t *pid);
int syslog_parse_priority(const char **p, int *priority, bool with_facility);
void cmsg_close_all(struct msghdr *mh);
+
+int rename_noreplace(int olddirfd, const char *oldpath, int newdirfd, const char *newpath);