vendor/golang.org/x/sys/unix/xattr_bsd.go
changeset 251 1c52a0eeb952
parent 242 2a9ec03fe5a1
child 256 6d9efbef00a9
equal deleted inserted replaced
250:c040f992052f 251:1c52a0eeb952
    79 }
    79 }
    80 
    80 
    81 // flags are unused on FreeBSD
    81 // flags are unused on FreeBSD
    82 
    82 
    83 func Fsetxattr(fd int, attr string, data []byte, flags int) (err error) {
    83 func Fsetxattr(fd int, attr string, data []byte, flags int) (err error) {
    84 	d := unsafe.Pointer(&data[0])
    84 	var d unsafe.Pointer
       
    85 	if len(data) > 0 {
       
    86 		d = unsafe.Pointer(&data[0])
       
    87 	}
    85 	datasiz := len(data)
    88 	datasiz := len(data)
    86 
    89 
    87 	nsid, a, err := xattrnamespace(attr)
    90 	nsid, a, err := xattrnamespace(attr)
    88 	if err != nil {
    91 	if err != nil {
    89 		return
    92 		return
    92 	_, err = ExtattrSetFd(fd, nsid, a, uintptr(d), datasiz)
    95 	_, err = ExtattrSetFd(fd, nsid, a, uintptr(d), datasiz)
    93 	return
    96 	return
    94 }
    97 }
    95 
    98 
    96 func Setxattr(file string, attr string, data []byte, flags int) (err error) {
    99 func Setxattr(file string, attr string, data []byte, flags int) (err error) {
    97 	d := unsafe.Pointer(&data[0])
   100 	var d unsafe.Pointer
       
   101 	if len(data) > 0 {
       
   102 		d = unsafe.Pointer(&data[0])
       
   103 	}
    98 	datasiz := len(data)
   104 	datasiz := len(data)
    99 
   105 
   100 	nsid, a, err := xattrnamespace(attr)
   106 	nsid, a, err := xattrnamespace(attr)
   101 	if err != nil {
   107 	if err != nil {
   102 		return
   108 		return
   105 	_, err = ExtattrSetFile(file, nsid, a, uintptr(d), datasiz)
   111 	_, err = ExtattrSetFile(file, nsid, a, uintptr(d), datasiz)
   106 	return
   112 	return
   107 }
   113 }
   108 
   114 
   109 func Lsetxattr(link string, attr string, data []byte, flags int) (err error) {
   115 func Lsetxattr(link string, attr string, data []byte, flags int) (err error) {
   110 	d := unsafe.Pointer(&data[0])
   116 	var d unsafe.Pointer
       
   117 	if len(data) > 0 {
       
   118 		d = unsafe.Pointer(&data[0])
       
   119 	}
   111 	datasiz := len(data)
   120 	datasiz := len(data)
   112 
   121 
   113 	nsid, a, err := xattrnamespace(attr)
   122 	nsid, a, err := xattrnamespace(attr)
   114 	if err != nil {
   123 	if err != nil {
   115 		return
   124 		return