All checks were successful
Fuse test / go-test (push) Successful in 32s
Signed-off-by: Matheus Sampaio Queiroga <srherobrine20@gmail.com>
191 lines
4.9 KiB
Go
191 lines
4.9 KiB
Go
//go:build linux
|
|
|
|
package calls
|
|
|
|
import unix "golang.org/x/sys/unix"
|
|
|
|
// Error codes reported by FUSE file systems.
|
|
const (
|
|
E2BIG = unix.E2BIG
|
|
EACCES = unix.EACCES
|
|
EADDRINUSE = unix.EADDRINUSE
|
|
EADDRNOTAVAIL = unix.EADDRNOTAVAIL
|
|
EAFNOSUPPORT = unix.EAFNOSUPPORT
|
|
EAGAIN = unix.EAGAIN
|
|
EALREADY = unix.EALREADY
|
|
EBADF = unix.EBADF
|
|
EBADMSG = unix.EBADMSG
|
|
EBUSY = unix.EBUSY
|
|
ECANCELED = unix.ECANCELED
|
|
ECHILD = unix.ECHILD
|
|
ECONNABORTED = unix.ECONNABORTED
|
|
ECONNREFUSED = unix.ECONNREFUSED
|
|
ECONNRESET = unix.ECONNRESET
|
|
EDEADLK = unix.EDEADLK
|
|
EDESTADDRREQ = unix.EDESTADDRREQ
|
|
EDOM = unix.EDOM
|
|
EEXIST = unix.EEXIST
|
|
EFAULT = unix.EFAULT
|
|
EFBIG = unix.EFBIG
|
|
EHOSTUNREACH = unix.EHOSTUNREACH
|
|
EIDRM = unix.EIDRM
|
|
EILSEQ = unix.EILSEQ
|
|
EINPROGRESS = unix.EINPROGRESS
|
|
EINTR = unix.EINTR
|
|
EINVAL = unix.EINVAL
|
|
EIO = unix.EIO
|
|
EISCONN = unix.EISCONN
|
|
EISDIR = unix.EISDIR
|
|
ELOOP = unix.ELOOP
|
|
EMFILE = unix.EMFILE
|
|
EMLINK = unix.EMLINK
|
|
EMSGSIZE = unix.EMSGSIZE
|
|
ENAMETOOLONG = unix.ENAMETOOLONG
|
|
ENETDOWN = unix.ENETDOWN
|
|
ENETRESET = unix.ENETRESET
|
|
ENETUNREACH = unix.ENETUNREACH
|
|
ENFILE = unix.ENFILE
|
|
ENOATTR = ENODATA
|
|
ENOBUFS = unix.ENOBUFS
|
|
ENODATA = unix.ENODATA
|
|
ENODEV = unix.ENODEV
|
|
ENOENT = unix.ENOENT
|
|
ENOEXEC = unix.ENOEXEC
|
|
ENOLCK = unix.ENOLCK
|
|
ENOLINK = unix.ENOLINK
|
|
ENOMEM = unix.ENOMEM
|
|
ENOMSG = unix.ENOMSG
|
|
ENOPROTOOPT = unix.ENOPROTOOPT
|
|
ENOSPC = unix.ENOSPC
|
|
ENOSR = unix.ENOSR
|
|
ENOSTR = unix.ENOSTR
|
|
ENOSYS = unix.ENOSYS
|
|
ENOTCONN = unix.ENOTCONN
|
|
ENOTDIR = unix.ENOTDIR
|
|
ENOTEMPTY = unix.ENOTEMPTY
|
|
ENOTRECOVERABLE = unix.ENOTRECOVERABLE
|
|
ENOTSOCK = unix.ENOTSOCK
|
|
ENOTSUP = unix.ENOTSUP
|
|
ENOTTY = unix.ENOTTY
|
|
ENXIO = unix.ENXIO
|
|
EOPNOTSUPP = unix.EOPNOTSUPP
|
|
EOVERFLOW = unix.EOVERFLOW
|
|
EOWNERDEAD = unix.EOWNERDEAD
|
|
EPERM = unix.EPERM
|
|
EPIPE = unix.EPIPE
|
|
EPROTO = unix.EPROTO
|
|
EPROTONOSUPPORT = unix.EPROTONOSUPPORT
|
|
EPROTOTYPE = unix.EPROTOTYPE
|
|
ERANGE = unix.ERANGE
|
|
EROFS = unix.EROFS
|
|
ESPIPE = unix.ESPIPE
|
|
ESRCH = unix.ESRCH
|
|
ETIME = unix.ETIME
|
|
ETIMEDOUT = unix.ETIMEDOUT
|
|
ETXTBSY = unix.ETXTBSY
|
|
EWOULDBLOCK = unix.EWOULDBLOCK
|
|
EXDEV = unix.EXDEV
|
|
)
|
|
|
|
// Flags used in FileSystemInterface.Create and FileSystemInterface.Open.
|
|
const (
|
|
O_RDONLY = unix.O_RDONLY
|
|
O_WRONLY = unix.O_WRONLY
|
|
O_RDWR = unix.O_RDWR
|
|
O_APPEND = unix.O_APPEND
|
|
O_CREAT = unix.O_CREAT
|
|
O_TRUNC = unix.O_TRUNC
|
|
O_EXCL = unix.O_EXCL
|
|
O_ACCMODE = unix.O_ACCMODE
|
|
O_ASYNC = unix.O_ASYNC
|
|
O_CLOEXEC = unix.O_CLOEXEC
|
|
O_DIRECT = unix.O_DIRECT
|
|
O_DIRECTORY = unix.O_DIRECTORY
|
|
O_DSYNC = unix.O_DSYNC
|
|
O_FSYNC = unix.O_FSYNC
|
|
O_LARGEFILE = unix.O_LARGEFILE
|
|
O_NDELAY = unix.O_NDELAY
|
|
O_NOATIME = unix.O_NOATIME
|
|
O_NOCTTY = unix.O_NOCTTY
|
|
O_NOFOLLOW = unix.O_NOFOLLOW
|
|
O_NONBLOCK = unix.O_NONBLOCK
|
|
O_RSYNC = unix.O_RSYNC
|
|
O_SYNC = unix.O_SYNC
|
|
)
|
|
|
|
// File type and permission bits.
|
|
const (
|
|
S_IFMT = unix.S_IFMT
|
|
S_IFBLK = unix.S_IFBLK
|
|
S_IFCHR = unix.S_IFCHR
|
|
S_IFIFO = unix.S_IFIFO
|
|
S_IFREG = unix.S_IFREG
|
|
S_IFDIR = unix.S_IFDIR
|
|
S_IFLNK = unix.S_IFLNK
|
|
S_IFSOCK = unix.S_IFSOCK
|
|
S_IRWXU = unix.S_IRWXU
|
|
S_IRUSR = unix.S_IRUSR
|
|
S_IWUSR = unix.S_IWUSR
|
|
S_IXUSR = unix.S_IXUSR
|
|
S_IRWXG = unix.S_IRWXG
|
|
S_IRGRP = unix.S_IRGRP
|
|
S_IWGRP = unix.S_IWGRP
|
|
S_IXGRP = unix.S_IXGRP
|
|
S_IRWXO = unix.S_IRWXO
|
|
S_IROTH = unix.S_IROTH
|
|
S_IWOTH = unix.S_IWOTH
|
|
S_IXOTH = unix.S_IXOTH
|
|
S_ISUID = unix.S_ISUID
|
|
S_ISGID = unix.S_ISGID
|
|
S_ISVTX = unix.S_ISVTX
|
|
)
|
|
|
|
// BSD file flags (Windows file attributes).
|
|
const (
|
|
UF_HIDDEN = 0x00008000
|
|
UF_READONLY = 0x00001000
|
|
UF_SYSTEM = 0x00000080
|
|
UF_ARCHIVE = 0x00000800
|
|
)
|
|
|
|
// Access flags
|
|
const (
|
|
F_OK = 0
|
|
R_OK = 4
|
|
W_OK = 2
|
|
X_OK = 1
|
|
DELETE_OK = 0x40000000 // Delete access check [Windows only]
|
|
)
|
|
|
|
// Options that control Setxattr operation.
|
|
const (
|
|
XATTR_CREATE = unix.XATTR_CREATE
|
|
XATTR_REPLACE = unix.XATTR_REPLACE
|
|
)
|
|
|
|
// Flags used in Utimens and Utimens3.
|
|
const (
|
|
UTIME_NOW = (1 << 30) - 1
|
|
UTIME_OMIT = (1 << 30) - 2
|
|
)
|
|
|
|
// Flags used in FileSystemRename3.Rename3.
|
|
const (
|
|
RENAME_NOREPLACE = 1 << 0
|
|
RENAME_EXCHANGE = 1 << 1
|
|
RENAME_WHITEOUT = 1 << 2
|
|
)
|
|
|
|
// Notify actions.
|
|
const (
|
|
NOTIFY_MKDIR = 0x0001
|
|
NOTIFY_RMDIR = 0x0002
|
|
NOTIFY_CREATE = 0x0004
|
|
NOTIFY_UNLINK = 0x0008
|
|
NOTIFY_CHMOD = 0x0010
|
|
NOTIFY_CHOWN = 0x0020
|
|
NOTIFY_UTIME = 0x0040
|
|
NOTIFY_CHFLAGS = 0x0080
|
|
NOTIFY_TRUNCATE = 0x0100
|
|
)
|