diff options
author | Martin Pitt <martin.pitt@ubuntu.com> | 2016-12-18 13:20:12 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2016-12-18 13:20:12 +0100 |
commit | 8b35656c33cca5e8d0a71d651954f2ae9f0dce24 (patch) | |
tree | b915261dea4a8e2891768a1e7a6aaf947739d1d6 /src/basic/mount-util.c | |
parent | 117d5a27a3480fd9729cfadd98d135d21732a88d (diff) | |
parent | 5b5688afbe8125af23231ca221c822be0edc3f6e (diff) |
Merge pull request #4911 from keszybz/fixlets
A few simple fixes / improvements
Diffstat (limited to 'src/basic/mount-util.c')
-rw-r--r-- | src/basic/mount-util.c | 26 |
1 files changed, 13 insertions, 13 deletions
diff --git a/src/basic/mount-util.c b/src/basic/mount-util.c index 8970050408..840e94a553 100644 --- a/src/basic/mount-util.c +++ b/src/basic/mount-util.c @@ -693,13 +693,12 @@ int umount_verbose(const char *what) { const char *mount_propagation_flags_to_string(unsigned long flags) { switch (flags & (MS_SHARED|MS_SLAVE|MS_PRIVATE)) { - + case 0: + return ""; case MS_SHARED: return "shared"; - case MS_SLAVE: return "slave"; - case MS_PRIVATE: return "private"; } @@ -707,17 +706,18 @@ const char *mount_propagation_flags_to_string(unsigned long flags) { return NULL; } -unsigned long mount_propagation_flags_from_string(const char *name) { - if (isempty(name)) - return 0; - - if (streq(name, "shared")) - return MS_SHARED; - if (streq(name, "slave")) - return MS_SLAVE; - if (streq(name, "private")) - return MS_PRIVATE; +int mount_propagation_flags_from_string(const char *name, unsigned long *ret) { + if (isempty(name)) + *ret = 0; + else if (streq(name, "shared")) + *ret = MS_SHARED; + else if (streq(name, "slave")) + *ret = MS_SLAVE; + else if (streq(name, "private")) + *ret = MS_PRIVATE; + else + return -EINVAL; return 0; } |