// lgetxattr returns a []byte slice containing the value of // an extended attribute attr set for path. func lgetxattr(path, attr string) ([]byte, error) { … } // doLgetxattr is a wrapper that retries on EINTR func doLgetxattr(path, attr string, dest []byte) (int, error) { … } // getxattr returns a []byte slice containing the value of // an extended attribute attr set for path. func getxattr(path, attr string) ([]byte, error) { … } // dogetxattr is a wrapper that retries on EINTR func dogetxattr(path, attr string, dest []byte) (int, error) { … }