diff options
| author | 2025-03-09 17:47:56 +0100 | |
|---|---|---|
| committer | 2025-12-01 22:08:04 +0100 | |
| commit | b1af8fd87760b34e3ff2fd3bda38f211815a0473 (patch) | |
| tree | 9317fad1a7ec298d7a8d2678e4e422953bbc6f33 /vendor/github.com/ncruces/go-sqlite3/vfs/os_linux.go | |
| parent | [chore] update URLs to forked source (diff) | |
| download | gotosocial-b1af8fd87760b34e3ff2fd3bda38f211815a0473.tar.xz | |
[chore] remove vendor
Diffstat (limited to 'vendor/github.com/ncruces/go-sqlite3/vfs/os_linux.go')
| -rw-r--r-- | vendor/github.com/ncruces/go-sqlite3/vfs/os_linux.go | 86 |
1 files changed, 0 insertions, 86 deletions
diff --git a/vendor/github.com/ncruces/go-sqlite3/vfs/os_linux.go b/vendor/github.com/ncruces/go-sqlite3/vfs/os_linux.go deleted file mode 100644 index 1f7705ca0..000000000 --- a/vendor/github.com/ncruces/go-sqlite3/vfs/os_linux.go +++ /dev/null @@ -1,86 +0,0 @@ -//go:build !sqlite3_flock - -package vfs - -import ( - "io" - "os" - "time" - - "golang.org/x/sys/unix" -) - -func osSync(file *os.File, _ OpenFlag, _ SyncFlag) error { - // SQLite trusts Linux's fdatasync for all fsync's. - for { - err := unix.Fdatasync(int(file.Fd())) - if err != unix.EINTR { - return err - } - } -} - -func osAllocate(file *os.File, size int64) error { - if size == 0 { - return nil - } - for { - err := unix.Fallocate(int(file.Fd()), 0, 0, size) - if err == unix.EOPNOTSUPP { - break - } - if err != unix.EINTR { - return err - } - } - off, err := file.Seek(0, io.SeekEnd) - if err != nil { - return err - } - if size <= off { - return nil - } - return file.Truncate(size) - -} - -func osReadLock(file *os.File, start, len int64, timeout time.Duration) error { - return osLock(file, unix.F_RDLCK, start, len, timeout, _IOERR_RDLOCK) -} - -func osWriteLock(file *os.File, start, len int64, timeout time.Duration) error { - return osLock(file, unix.F_WRLCK, start, len, timeout, _IOERR_LOCK) -} - -func osLock(file *os.File, typ int16, start, len int64, timeout time.Duration, def _ErrorCode) error { - lock := unix.Flock_t{ - Type: typ, - Start: start, - Len: len, - } - var err error - switch { - default: - err = unix.FcntlFlock(file.Fd(), unix.F_OFD_SETLK, &lock) - case timeout < 0: - err = unix.FcntlFlock(file.Fd(), unix.F_OFD_SETLKW, &lock) - } - return osLockErrorCode(err, def) -} - -func osUnlock(file *os.File, start, len int64) error { - lock := unix.Flock_t{ - Type: unix.F_UNLCK, - Start: start, - Len: len, - } - for { - err := unix.FcntlFlock(file.Fd(), unix.F_OFD_SETLK, &lock) - if err == nil { - return nil - } - if err != unix.EINTR { - return sysError{err, _IOERR_UNLOCK} - } - } -} |
