Apache Mesos
Classes | Namespaces | Macros | Functions
fs.hpp File Reference
#include <mntent.h>
#include <sys/mount.h>
#include <sys/types.h>
#include <sys/vfs.h>
#include <string>
#include <vector>
#include <stout/nothing.hpp>
#include <stout/option.hpp>
#include <stout/try.hpp>

Go to the source code of this file.

Classes

struct  mesos::internal::fs::MountInfoTable
 
struct  mesos::internal::fs::MountInfoTable::Entry
 
struct  mesos::internal::fs::MountTable
 
struct  mesos::internal::fs::MountTable::Entry
 

Namespaces

 mesos
 
 mesos::internal
 
 mesos::internal::fs
 
 mesos::internal::fs::chroot
 

Macros

#define MS_RDONLY   1
 
#define MS_NOSUID   2
 
#define MS_NODEV   4
 
#define MS_NOEXEC   8
 
#define MS_SYNCHRONOUS   16
 
#define MS_REMOUNT   32
 
#define MS_MANDLOCK   64
 
#define MS_DIRSYNC   128
 
#define MS_NOATIME   1024
 
#define MS_NODIRATIME   2048
 
#define MS_BIND   4096
 
#define MS_MOVE   8192
 
#define MS_REC   16384
 
#define MS_SILENT   32768
 
#define MS_POSIXACL   (1 << 16)
 
#define MS_UNBINDABLE   (1 << 17)
 
#define MS_PRIVATE   (1 << 18)
 
#define MS_SLAVE   (1 << 19)
 
#define MS_SHARED   (1 << 20)
 
#define MS_RELATIME   (1 << 21)
 
#define MS_KERNMOUNT   (1 << 22)
 
#define MS_I_VERSION   (1 << 23)
 
#define MS_STRICTATIME   (1 << 24)
 
#define MS_ACTIVE   (1 << 30)
 
#define MS_NOUSER   (1 << 31)
 
#define MNT_FORCE   1
 
#define MNT_DETACH   2
 
#define MNT_EXPIRE   4
 
#define UMOUNT_NOFOLLOW   8
 
#define FS_TYPE_AUFS   0x61756673
 
#define FS_TYPE_BTRFS   0x9123683E
 
#define FS_TYPE_CRAMFS   0x28cd3d45
 
#define FS_TYPE_ECRYPTFS   0xf15f
 
#define FS_TYPE_EXTFS   0x0000EF53
 
#define FS_TYPE_F2FS   0xF2F52010
 
#define FS_TYPE_GPFS   0x47504653
 
#define FS_TYPE_JFFS2FS   0x000072b6
 
#define FS_TYPE_JFS   0x3153464a
 
#define FS_TYPE_NFSFS   0x00006969
 
#define FS_TYPE_RAMFS   0x858458f6
 
#define FS_TYPE_REISERFS   0x52654973
 
#define FS_TYPE_SMBFS   0x0000517B
 
#define FS_TYPE_SQUASHFS   0x73717368
 
#define FS_TYPE_TMPFS   0x01021994
 
#define FS_TYPE_VXFS   0xa501fcf5
 
#define FS_TYPE_XFS   0x58465342
 
#define FS_TYPE_ZFS   0x2fc12fc1
 
#define FS_TYPE_OVERLAY   0x794C7630
 

Functions

Try< bool > mesos::internal::fs::supported (const std::string &fsname)
 
Try< bool > mesos::internal::fs::dtypeSupported (const std::string &directory)
 
Try< uint32_t > mesos::internal::fs::type (const std::string &path)
 
Try< std::string > mesos::internal::fs::typeName (uint32_t fsType)
 
Try< Nothingmesos::internal::fs::mount (const Option< std::string > &source, const std::string &target, const Option< std::string > &type, unsigned long flags, const void *data)
 
Try< Nothingmesos::internal::fs::mount (const Option< std::string > &source, const std::string &target, const Option< std::string > &type, unsigned long flags, const Option< std::string > &options)
 
Try< Nothingmesos::internal::fs::unmount (const std::string &target, int flags=0)
 
Try< Nothingmesos::internal::fs::unmountAll (const std::string &target, int flags=0)
 
Try< Nothingmesos::internal::fs::pivot_root (const std::string &newRoot, const std::string &putOld)
 
Try< Nothingmesos::internal::fs::chroot::copyDeviceNode (const std::string &device, const std::string &target)
 
Try< Nothingmesos::internal::fs::chroot::enter (const std::string &root)
 

Macro Definition Documentation

#define FS_TYPE_AUFS   0x61756673
#define FS_TYPE_BTRFS   0x9123683E
#define FS_TYPE_CRAMFS   0x28cd3d45
#define FS_TYPE_ECRYPTFS   0xf15f
#define FS_TYPE_EXTFS   0x0000EF53
#define FS_TYPE_F2FS   0xF2F52010
#define FS_TYPE_GPFS   0x47504653
#define FS_TYPE_JFFS2FS   0x000072b6
#define FS_TYPE_JFS   0x3153464a
#define FS_TYPE_NFSFS   0x00006969
#define FS_TYPE_OVERLAY   0x794C7630
#define FS_TYPE_RAMFS   0x858458f6
#define FS_TYPE_REISERFS   0x52654973
#define FS_TYPE_SMBFS   0x0000517B
#define FS_TYPE_SQUASHFS   0x73717368
#define FS_TYPE_TMPFS   0x01021994
#define FS_TYPE_VXFS   0xa501fcf5
#define FS_TYPE_XFS   0x58465342
#define FS_TYPE_ZFS   0x2fc12fc1
#define MNT_DETACH   2
#define MNT_EXPIRE   4
#define MNT_FORCE   1
#define MS_ACTIVE   (1 << 30)
#define MS_BIND   4096
#define MS_DIRSYNC   128
#define MS_I_VERSION   (1 << 23)
#define MS_KERNMOUNT   (1 << 22)
#define MS_MANDLOCK   64
#define MS_MOVE   8192
#define MS_NOATIME   1024
#define MS_NODEV   4
#define MS_NODIRATIME   2048
#define MS_NOEXEC   8
#define MS_NOSUID   2
#define MS_NOUSER   (1 << 31)
#define MS_POSIXACL   (1 << 16)
#define MS_PRIVATE   (1 << 18)
#define MS_RDONLY   1
#define MS_REC   16384
#define MS_RELATIME   (1 << 21)
#define MS_REMOUNT   32
#define MS_SHARED   (1 << 20)
#define MS_SILENT   32768
#define MS_SLAVE   (1 << 19)
#define MS_STRICTATIME   (1 << 24)
#define MS_SYNCHRONOUS   16
#define MS_UNBINDABLE   (1 << 17)
#define UMOUNT_NOFOLLOW   8