diff options
author | Nathan Scott <nathans@sgi.com> | 2003-02-10 05:24:16 +0000 |
---|---|---|
committer | Nathan Scott <nathans@sgi.com> | 2003-02-10 05:24:16 +0000 |
commit | 0b3f9da37c5bce2963a970fef31cd659c90f9884 (patch) | |
tree | 7e96a82b663feebe122a771e86e5b6a9f4448459 /libacl/acl_copy_int.c | |
parent | 11047574083dd3b068bf4350965e38cc3eda7637 (diff) | |
download | acl-0b3f9da37c5bce2963a970fef31cd659c90f9884.tar.gz |
Merge several ACL userspace patches from Andreas.
Fix an error handling case.
Diffstat (limited to 'libacl/acl_copy_int.c')
-rw-r--r-- | libacl/acl_copy_int.c | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/libacl/acl_copy_int.c b/libacl/acl_copy_int.c index 353424b..d898dbd 100644 --- a/libacl/acl_copy_int.c +++ b/libacl/acl_copy_int.c @@ -43,7 +43,7 @@ acl_copy_int(const void *buf_p) return NULL; } entries = size / sizeof(struct __acl_entry); - acl_obj_p = __acl_init_obj(); + acl_obj_p = __acl_init_obj(entries); if (acl_obj_p == NULL) goto fail; end_p = ext_acl->x_entries + entries; @@ -53,8 +53,9 @@ acl_copy_int(const void *buf_p) goto fail; /* XXX Convert to machine endianness */ entry_obj_p->eentry = *ent_p; - __acl_reorder_obj_p(entry_obj_p); } + if (__acl_reorder_obj_p(acl_obj_p)) + goto fail; return int2ext(acl_obj_p); fail: |