From f7382efe279a5cb5fa6dcb0021ba89e8ba98fb31 Mon Sep 17 00:00:00 2001 From: Corinna Vinschen Date: Sun, 12 Sep 2010 19:43:55 +0000 Subject: [PATCH] * sec_acl.cc (acl_worker): Remove. (acl32): Implement acl_worker functionality here. (lacl32): Just return -1 with errno set to ENOSYS. (lacl): Ditto. * include/cygwin/acl.h (lacl): Remove this call. --- winsup/cygwin/ChangeLog | 8 ++++++++ winsup/cygwin/include/cygwin/acl.h | 3 +-- winsup/cygwin/sec_acl.cc | 22 ++++++++++------------ 3 files changed, 19 insertions(+), 14 deletions(-) diff --git a/winsup/cygwin/ChangeLog b/winsup/cygwin/ChangeLog index 9a6cdd9f2..00cfd3209 100644 --- a/winsup/cygwin/ChangeLog +++ b/winsup/cygwin/ChangeLog @@ -1,3 +1,11 @@ +2010-09-12 Corinna Vinschen + + * sec_acl.cc (acl_worker): Remove. + (acl32): Implement acl_worker functionality here. + (lacl32): Just return -1 with errno set to ENOSYS. + (lacl): Ditto. + * include/cygwin/acl.h (lacl): Remove this call. + 2010-09-12 Christopher Faylor * sigproc.cc (sig_dispatch_pending): Remove debugging statement. diff --git a/winsup/cygwin/include/cygwin/acl.h b/winsup/cygwin/include/cygwin/acl.h index 3ea5f91e5..6083b5332 100644 --- a/winsup/cygwin/include/cygwin/acl.h +++ b/winsup/cygwin/include/cygwin/acl.h @@ -1,6 +1,6 @@ /* cygwin/acl.h header file for Cygwin. - Copyright 1999, 2000, 2001, 2002 Red Hat, Inc. + Copyright 1999, 2000, 2001, 2002, 2010 Red Hat, Inc. Written by C. Vinschen. This file is part of Cygwin. @@ -80,7 +80,6 @@ typedef struct acl { #ifndef __INSIDE_CYGWIN__ int _EXFUN(acl,(const char *path, int cmd, int nentries, aclent_t *aclbufp)); -int _EXFUN(lacl,(const char *path, int cmd, int nentries, aclent_t *aclbufp)); int _EXFUN(facl,(int fd, int cmd, int nentries, aclent_t *aclbufp)); int _EXFUN(aclcheck,(aclent_t *aclbufp, int nentries, int *which)); int _EXFUN(aclsort,(int nentries, int calclass, aclent_t *aclbufp)); diff --git a/winsup/cygwin/sec_acl.cc b/winsup/cygwin/sec_acl.cc index 2650b45c8..0c6586bff 100644 --- a/winsup/cygwin/sec_acl.cc +++ b/winsup/cygwin/sec_acl.cc @@ -416,12 +416,12 @@ getacl (HANDLE handle, path_conv &pc, int nentries, __aclent32_t *aclbufp) return pos; } -static int -acl_worker (const char *path, int cmd, int nentries, __aclent32_t *aclbufp, - unsigned fmode) +extern "C" int +acl32 (const char *path, int cmd, int nentries, __aclent32_t *aclbufp) { int res = -1; - fhandler_base *fh = build_fh_name (path, fmode | PC_KEEP_HANDLE, + + fhandler_base *fh = build_fh_name (path, PC_SYM_FOLLOW | PC_KEEP_HANDLE, stat_suffixes); if (fh->error ()) { @@ -438,16 +438,12 @@ acl_worker (const char *path, int cmd, int nentries, __aclent32_t *aclbufp, return res; } -extern "C" int -acl32 (const char *path, int cmd, int nentries, __aclent32_t *aclbufp) -{ - return acl_worker (path, cmd, nentries, aclbufp, PC_SYM_FOLLOW); -} - extern "C" int lacl32 (const char *path, int cmd, int nentries, __aclent32_t *aclbufp) { - return acl_worker (path, cmd, nentries, aclbufp, PC_SYM_NOFOLLOW); + /* This call was an accident. Make it absolutely clear. */ + set_errno (ENOSYS); + return -1; } extern "C" int @@ -935,7 +931,9 @@ facl (int fd, int cmd, int nentries, __aclent16_t *aclbufp) extern "C" int lacl (const char *path, int cmd, int nentries, __aclent16_t *aclbufp) { - return lacl32 (path, cmd, nentries, acl16to32 (aclbufp, nentries)); + /* This call was an accident. Make it absolutely clear. */ + set_errno (ENOSYS); + return -1; } extern "C" int -- 2.43.5