Switch to go mod

This commit is contained in:
Ettore Di Giacinto
2019-11-10 18:04:06 +01:00
parent f634493dc0
commit 420186b7db
1200 changed files with 139110 additions and 7763 deletions

42
vendor/github.com/vbatts/go-mtree/xattr/xattr.go generated vendored Normal file
View File

@@ -0,0 +1,42 @@
// +build linux
package xattr
import (
"strings"
"syscall"
)
// Get returns the extended attributes (xattr) on file `path`, for the given `name`.
func Get(path, name string) ([]byte, error) {
dest := make([]byte, 1024)
i, err := syscall.Getxattr(path, name, dest)
if err != nil {
return nil, err
}
return dest[:i], nil
}
// Set sets the extended attributes (xattr) on file `path`, for the given `name` and `value`
func Set(path, name string, value []byte) error {
return syscall.Setxattr(path, name, value, 0)
}
// List returns a list of all the extended attributes (xattr) for file `path`
func List(path string) ([]string, error) {
dest := make([]byte, 1024)
i, err := syscall.Listxattr(path, dest)
if err != nil {
return nil, err
}
// If the returned list is empty, return nil instead of []string{""}
str := string(dest[:i])
if str == "" {
return nil, nil
}
return strings.Split(strings.TrimRight(str, nilByte), nilByte), nil
}
const nilByte = "\x00"