xattr_unsupported.go 1.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051
  1. // +build !linux,!darwin
  2. package sysx
  3. import (
  4. "errors"
  5. "runtime"
  6. )
  7. var unsupported = errors.New("extended attributes unsupported on " + runtime.GOOS)
  8. // Listxattr calls syscall listxattr and reads all content
  9. // and returns a string array
  10. func Listxattr(path string) ([]string, error) {
  11. return []string{}, nil
  12. }
  13. // Removexattr calls syscall removexattr
  14. func Removexattr(path string, attr string) (err error) {
  15. return unsupported
  16. }
  17. // Setxattr calls syscall setxattr
  18. func Setxattr(path string, attr string, data []byte, flags int) (err error) {
  19. return unsupported
  20. }
  21. // Getxattr calls syscall getxattr
  22. func Getxattr(path, attr string) ([]byte, error) {
  23. return []byte{}, unsupported
  24. }
  25. // LListxattr lists xattrs, not following symlinks
  26. func LListxattr(path string) ([]string, error) {
  27. return []string{}, nil
  28. }
  29. // LRemovexattr removes an xattr, not following symlinks
  30. func LRemovexattr(path string, attr string) (err error) {
  31. return unsupported
  32. }
  33. // LSetxattr sets an xattr, not following symlinks
  34. func LSetxattr(path string, attr string, data []byte, flags int) (err error) {
  35. return unsupported
  36. }
  37. // LGetxattr gets an xattr, not following symlinks
  38. func LGetxattr(path, attr string) ([]byte, error) {
  39. return []byte{}, nil
  40. }