diff options
author | Luke Shumaker <lukeshu@sbcglobal.net> | 2016-10-22 17:33:34 -0400 |
---|---|---|
committer | Luke Shumaker <lukeshu@sbcglobal.net> | 2016-10-22 17:33:34 -0400 |
commit | 4bd618f4666fb6629f5426b915ce856114667b88 (patch) | |
tree | 8721fc6a02f15f4b42c6281dec7586ede1b25522 /src/libsystemd-basic/include/systemd-basic/mount-util.h | |
parent | acbe2e3a644cb0fea2e9ead61cae2128f97413bb (diff) |
./tools/notsd-move
Diffstat (limited to 'src/libsystemd-basic/include/systemd-basic/mount-util.h')
-rw-r--r-- | src/libsystemd-basic/include/systemd-basic/mount-util.h | 54 |
1 files changed, 54 insertions, 0 deletions
diff --git a/src/libsystemd-basic/include/systemd-basic/mount-util.h b/src/libsystemd-basic/include/systemd-basic/mount-util.h new file mode 100644 index 0000000000..f46989ebb3 --- /dev/null +++ b/src/libsystemd-basic/include/systemd-basic/mount-util.h @@ -0,0 +1,54 @@ +#pragma once + +/*** + This file is part of systemd. + + Copyright 2010 Lennart Poettering + + systemd is free software; you can redistribute it and/or modify it + under the terms of the GNU Lesser General Public License as published by + the Free Software Foundation; either version 2.1 of the License, or + (at your option) any later version. + + systemd is distributed in the hope that it will be useful, but + WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public License + along with systemd; If not, see <http://www.gnu.org/licenses/>. +***/ + +#include <fcntl.h> +#include <mntent.h> +#include <stdbool.h> +#include <stdio.h> +#include <sys/stat.h> +#include <sys/types.h> + +#include "macro.h" +#include "missing.h" + +int fd_is_mount_point(int fd, const char *filename, int flags); +int path_is_mount_point(const char *path, int flags); + +int repeat_unmount(const char *path, int flags); + +int umount_recursive(const char *target, int flags); +int bind_remount_recursive(const char *prefix, bool ro); + +int mount_move_root(const char *path); + +DEFINE_TRIVIAL_CLEANUP_FUNC(FILE*, endmntent); +#define _cleanup_endmntent_ _cleanup_(endmntentp) + +bool fstype_is_network(const char *fstype); + +union file_handle_union { + struct file_handle handle; + char padding[sizeof(struct file_handle) + MAX_HANDLE_SZ]; +}; + +const char* mode_to_inaccessible_node(mode_t mode); + +#define FILE_HANDLE_INIT { .handle.handle_bytes = MAX_HANDLE_SZ } |