gvisor/runsc/fsgofer
Dean Deng 07f2584979 Plumb getting/setting xattrs through InodeOperations and 9p gofer interfaces.
There was a very bare get/setxattr in the InodeOperations interface. Add
context.Context to both, size to getxattr, and flags to setxattr.
Note that extended attributes are passed around as strings in this
implementation, so size is automatically encoded into the value. Size is
added in getxattr so that implementations can return ERANGE if a value is larger
than can fit in the user-allocated buffer. This prevents us from unnecessarily
passing around an arbitrarily large xattr when the user buffer is actually too
small.

Don't use the existing xattrwalk and xattrcreate messages and define our
own, mainly for the sake of simplicity.

Extended attributes will be implemented in future commits.

PiperOrigin-RevId: 290121300
2020-01-16 12:56:33 -08:00
..
filter Enable runsc/fsgofer support on arm64. 2019-10-30 05:21:36 +00:00
BUILD New sync package. 2020-01-09 22:02:24 -08:00
fsgofer.go Plumb getting/setting xattrs through InodeOperations and 9p gofer interfaces. 2020-01-16 12:56:33 -08:00
fsgofer_amd64_unsafe.go Enable runsc/fsgofer support on arm64. 2019-10-30 05:21:36 +00:00
fsgofer_arm64_unsafe.go Enable runsc/fsgofer support on arm64. 2019-10-30 05:21:36 +00:00
fsgofer_test.go Disallow opening of sockets if --fsgofer-host-uds=false 2019-09-26 18:16:02 -07:00
fsgofer_unsafe.go Enable runsc/fsgofer support on arm64. 2019-10-30 05:21:36 +00:00