X-Git-Url: https://mattmccutchen.net/rsync/rsync.git/blobdiff_plain/c78cb8f349d74dbb19abbc4edeef12655bdcdf23..d3d07a5e860f1cde0e234ec7a1aff7111a2c514f:/acls.c diff --git a/acls.c b/acls.c index 6aad47a8..d9023e2f 100644 --- a/acls.c +++ b/acls.c @@ -3,7 +3,7 @@ * * Copyright (C) 1996 Andrew Tridgell * Copyright (C) 1996 Paul Mackerras - * Copyright (C) 2006 Wayne Davison + * Copyright (C) 2006-2008 Wayne Davison * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by @@ -92,9 +92,19 @@ static item_list default_acl_list = EMPTY_ITEM_LIST; static const char *str_acl_type(SMB_ACL_TYPE_T type) { - return type == SMB_ACL_TYPE_ACCESS ? "SMB_ACL_TYPE_ACCESS" - : type == SMB_ACL_TYPE_DEFAULT ? "SMB_ACL_TYPE_DEFAULT" - : "unknown SMB_ACL_TYPE_T"; + switch (type) { + case SMB_ACL_TYPE_ACCESS: +#ifdef HAVE_OSX_ACLS + return "ACL_TYPE_EXTENDED"; +#else + return "ACL_TYPE_ACCESS"; +#endif + case SMB_ACL_TYPE_DEFAULT: + return "ACL_TYPE_DEFAULT"; + default: + break; + } + return "unknown ACL type!"; } static int calc_sacl_entries(const rsync_acl *racl) @@ -933,7 +943,7 @@ static int set_rsync_acl(const char *fname, acl_duo *duo_item, #endif if (sys_acl_set_file(fname, type, duo_item->sacl) < 0) { rsyserr(FERROR_XFER, errno, "set_acl: sys_acl_set_file(%s, %s)", - fname, str_acl_type(type)); + fname, str_acl_type(type)); return -1; } if (type == SMB_ACL_TYPE_ACCESS)