btrfs-progs: convert: drop dependency on sys/acl.h

The file sys/acl.h is part of libacl and if the development package is
not installed, build of btrfs-convert fails.

We do not link against libacl nor use the functions provided by libacl.  The
ACL_* values are directly read from the extN data, so it's more part of the
on-disk format rather than an interface to libacl.

The dependency on libacl is completely dropped.

Reported-by: Hugo Mills <hugo@carfax.org.uk>
Signed-off-by: David Sterba <dsterba@suse.cz>
master
David Sterba 2015-05-04 18:36:21 +02:00
parent bea9ba0acb
commit ab5984ff6c
2 changed files with 15 additions and 3 deletions

View File

@ -17,10 +17,9 @@ Generating documentation:
- asciidoc - text document format tool
- xmlto - text document format tool
XATTR and ACL libraries should be provided by the standard C library or by
XATTR library should be provided by the standard C library or by
- libattr - extended attribute library
- libacl - access control list library
Please note that the package names may differ according to the distribution.
See https://btrfs.wiki.kernel.org/index.php/Btrfs_source_repositories#Dependencies .

View File

@ -24,7 +24,6 @@
#include <stdlib.h>
#include <sys/types.h>
#include <sys/stat.h>
#include <sys/acl.h>
#include <fcntl.h>
#include <unistd.h>
#include <uuid/uuid.h>
@ -692,6 +691,20 @@ static int ext2_xattr_check_entry(struct ext2_ext_attr_entry *entry,
#define EXT2_ACL_VERSION 0x0001
/* 23.2.5 acl_tag_t values */
#define ACL_UNDEFINED_TAG (0x00)
#define ACL_USER_OBJ (0x01)
#define ACL_USER (0x02)
#define ACL_GROUP_OBJ (0x04)
#define ACL_GROUP (0x08)
#define ACL_MASK (0x10)
#define ACL_OTHER (0x20)
/* 23.2.7 ACL qualifier constants */
#define ACL_UNDEFINED_ID ((id_t)-1)
typedef struct {
__le16 e_tag;
__le16 e_perm;