From: corinna Date: Thu, 2 Aug 2001 16:01:47 +0000 (+0000) Subject: * security.cc (set_file_attribute): Clean up. Don't call X-Git-Url: http://git.osdn.net/view?a=commitdiff_plain;h=f6197fd19e3c75822ff8e7089b94f8e7580e9825;p=pf3gnuchains%2Fpf3gnuchains3x.git * security.cc (set_file_attribute): Clean up. Don't call `set_nt_attribute' when ntsec isn't set. --- diff --git a/winsup/cygwin/ChangeLog b/winsup/cygwin/ChangeLog index 36af78a0ff..587c3679bc 100644 --- a/winsup/cygwin/ChangeLog +++ b/winsup/cygwin/ChangeLog @@ -1,3 +1,8 @@ +Thu Aug 2 17:59:00 2001 Corinna Vinschen + + * security.cc (set_file_attribute): Clean up. Don't call + `set_nt_attribute' when ntsec isn't set. + Sat Jul 28 22:30:55 2001 Christopher Faylor * dcrt0.cc (alloc_stack_hard_way): Make half-hearted attempt to deal diff --git a/winsup/cygwin/security.cc b/winsup/cygwin/security.cc index fbc6c88693..489c75bbfb 100644 --- a/winsup/cygwin/security.cc +++ b/winsup/cygwin/security.cc @@ -1587,18 +1587,16 @@ set_file_attribute (int use_ntsec, const char *file, if ((attribute & S_IFLNK) == S_IFLNK) attribute |= S_IRWXU | S_IRWXG | S_IRWXO; - if (allow_ntea && (!use_ntsec || !allow_ntsec)) + int ret = 0; + + if (use_ntsec && allow_ntsec) + ret = set_nt_attribute (file, uid, gid, logsrv, attribute); + else if (allow_ntea && !NTWriteEA (file, ".UNIXATTR", (char *) &attribute, + sizeof (attribute))) { - if (!NTWriteEA (file, ".UNIXATTR", (char *) &attribute, - sizeof (attribute))) - { - __seterrno (); - return -1; - } - return 0; + __seterrno (); + ret = -1; } - - int ret = set_nt_attribute (file, uid, gid, logsrv, attribute); syscall_printf ("%d = set_file_attribute (%s, %d, %d, %p)", ret, file, uid, gid, attribute); return ret;