From ddf9c4a7444970b5ad4c0ed4a82bdc7bd4964c15 Mon Sep 17 00:00:00 2001 From: Corinna Vinschen Date: Wed, 14 Apr 2004 13:40:07 +0000 Subject: * fhandler.cc (fhandler_base::open): Accomodate query_write_control query_state. (fhandler_base::fchown): New method. * fhandler.h: Declare fchown method in fhandler_base, fhandler_disk_file and fhandler_virtual. (enum query_state): Add query_write_control. * fhandler_disk_file.cc (fhandler_disk_file::fchmod): Set query_state to query_write_control. Only remove FILE_ATTRIBUTE_READONLY if not setting security descriptor. (fhandler_disk_file::fchown): New method. * fhandler_virtual.cc (fhandler_virtual::fchown): New method. * sec_acl.cc (setacl): Call write_sd with additional handle attribute. * security.cc (write_sd): Take handle argument. Only request owner if getting SE_RESTORE_NAME privilege failed. Only open file if NtSetSecurityObject failed or handle is NULL. (set_nt_attribute): Call write_sd with additional handle attribute. * security.h (write_sd): Declare with additional handle argument. --- winsup/cygwin/fhandler_virtual.cc | 8 ++++++++ 1 file changed, 8 insertions(+) (limited to 'winsup/cygwin/fhandler_virtual.cc') diff --git a/winsup/cygwin/fhandler_virtual.cc b/winsup/cygwin/fhandler_virtual.cc index 65be71b23..16b83923e 100644 --- a/winsup/cygwin/fhandler_virtual.cc +++ b/winsup/cygwin/fhandler_virtual.cc @@ -234,3 +234,11 @@ fhandler_virtual::fchmod (mode_t mode) set_errno (EPERM); return -1; } + +int +fhandler_virtual::fchown (__uid32_t uid, __gid32_t gid) +{ + /* Same as on Linux. */ + set_errno (EPERM); + return -1; +} -- cgit v1.2.3