From 9a3f2b4cc3f9eb03613e5fe022b7afa9d2fe950a Mon Sep 17 00:00:00 2001 From: Darren Tucker Date: Thu, 17 Jul 2008 19:03:49 +1000 Subject: [PATCH] - (dtucker) [openbsd-compat/bsd-cygwin_util.c] Remove long-unneeded compat code, replace with equivalent cygwin library call. Patch from vinschen at redhat.comi, ok djm@. --- ChangeLog | 5 +++- openbsd-compat/bsd-cygwin_util.c | 40 +------------------------------- 2 files changed, 5 insertions(+), 40 deletions(-) diff --git a/ChangeLog b/ChangeLog index a745754a9..a0c319fe8 100644 --- a/ChangeLog +++ b/ChangeLog @@ -7,6 +7,9 @@ [auth2-hostbased.c] strip trailing '.' from hostname when HostbasedUsesNameFromPacketOnly=yes report and patch from res AT qoxp.net (bz#1200); ok markus@ + - (dtucker) [openbsd-compat/bsd-cygwin_util.c] Remove long-unneeded compat + code, replace with equivalent cygwin library call. Patch from vinschen + at redhat.comi, ok djm@. 20080716 - OpenBSD CVS Sync @@ -4694,4 +4697,4 @@ OpenServer 6 and add osr5bigcrypt support so when someone migrates passwords between UnixWare and OpenServer they will still work. OK dtucker@ -$Id: ChangeLog,v 1.5089 2008/07/17 08:57:19 djm Exp $ +$Id: ChangeLog,v 1.5090 2008/07/17 09:03:49 dtucker Exp $ diff --git a/openbsd-compat/bsd-cygwin_util.c b/openbsd-compat/bsd-cygwin_util.c index dbf8176b6..38be7e350 100644 --- a/openbsd-compat/bsd-cygwin_util.c +++ b/openbsd-compat/bsd-cygwin_util.c @@ -175,45 +175,7 @@ check_nt_auth(int pwd_authenticated, struct passwd *pw) int check_ntsec(const char *filename) { - char *cygwin; - int allow_ntea = 0, allow_ntsec = 0; - struct statfs fsstat; - - /* Windows 95/98/ME don't support file system security at all. */ - if (!is_winnt) - return (0); - - /* Evaluate current CYGWIN settings. */ - cygwin = getenv("CYGWIN"); - allow_ntea = ntea_on(cygwin); - allow_ntsec = ntsec_on(cygwin) || - (has_capability(HAS_NTSEC_BY_DEFAULT) && !ntsec_off(cygwin)); - - /* - * `ntea' is an emulation of POSIX attributes. It doesn't support - * real file level security as ntsec on NTFS file systems does - * but it supports FAT filesystems. `ntea' is minimum requirement - * for security checks. - */ - if (allow_ntea) - return (1); - - /* - * Retrieve file system flags. In Cygwin, file system flags are - * copied to f_type which has no meaning in Win32 itself. - */ - if (statfs(filename, &fsstat)) - return (1); - - /* - * Only file systems supporting ACLs are able to set permissions. - * `ntsec' is the setting in Cygwin which switches using of NTFS - * ACLs to support POSIX permissions on files. - */ - if (fsstat.f_type & FS_PERSISTENT_ACLS) - return (allow_ntsec); - - return (0); + return (pathconf(filename, _PC_POSIX_PERMISSIONS)); } void