mirror of
https://github.com/ceph/ceph-csi.git
synced 2024-11-23 06:40:23 +00:00
4e9047dcbd
Bumps [github.com/pkg/xattr](https://github.com/pkg/xattr) from 0.4.7 to 0.4.9. - [Release notes](https://github.com/pkg/xattr/releases) - [Commits](https://github.com/pkg/xattr/compare/v0.4.7...v0.4.9) --- updated-dependencies: - dependency-name: github.com/pkg/xattr dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] <support@github.com> |
||
---|---|---|
.. | ||
.gitignore | ||
LICENSE | ||
README.md | ||
xattr_bsd.go | ||
xattr_darwin.go | ||
xattr_linux.go | ||
xattr_solaris.go | ||
xattr_unsupported.go | ||
xattr.go |
xattr
Extended attribute support for Go (linux + darwin + freebsd + netbsd + solaris).
"Extended attributes are name:value pairs associated permanently with files and directories, similar to the environment strings associated with a process. An attribute may be defined or undefined. If it is defined, its value may be empty or non-empty." See more...
SetWithFlags
allows to additionally pass system flags to be forwarded to the underlying calls. FreeBSD and NetBSD do not support this and the parameter will be ignored.
The L
variants of all functions (LGet/LSet/...
) are identical to Get/Set/...
except that they
do not reference a symlink that appears at the end of a path. See
GoDoc for details.
Example
const path = "/tmp/myfile"
const prefix = "user."
if err := xattr.Set(path, prefix+"test", []byte("test-attr-value")); err != nil {
log.Fatal(err)
}
var list []string
if list, err = xattr.List(path); err != nil {
log.Fatal(err)
}
var data []byte
if data, err = xattr.Get(path, prefix+"test"); err != nil {
log.Fatal(err)
}
if err = xattr.Remove(path, prefix+"test"); err != nil {
log.Fatal(err)
}
// One can also specify the flags parameter to be passed to the OS.
if err := xattr.SetWithFlags(path, prefix+"test", []byte("test-attr-value"), xattr.XATTR_CREATE); err != nil {
log.Fatal(err)
}