Package list golang-github-pkg-xattr / lintian-fixes/main

Tree @lintian-fixes/main (Download .tar.gz)

[![Go Report Card](](
[![Build Status](](

Extended attribute support for Go (linux + darwin + freebsd + netbsd).

"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 {

  var list []string
  if list, err = xattr.List(path); err != nil {

  var data []byte
  if data, err = xattr.Get(path, prefix+"test"); err != nil {

  if err = xattr.Remove(path, prefix+"test"); err != nil {

  // 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 {