From 596273516c67cfded71acee848de6db4daa41a1a Mon Sep 17 00:00:00 2001 From: Ben Lindstrom Date: Thu, 27 Jun 2002 18:02:21 +0000 Subject: [PATCH] - (bal) Cygwin uid0 fix by vinschen@redhat.com --- ChangeLog | 3 ++- sshd.c | 7 +++++++ 2 files changed, 9 insertions(+), 1 deletion(-) diff --git a/ChangeLog b/ChangeLog index 273b2abf7..eeaf7c7b7 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,6 +1,7 @@ 20020628 - (stevesk) [sshd_config] PAMAuthenticationViaKbdInt no; commented options should contain default value. from solar. + - (bal) Cygwin uid0 fix by vinschen@redhat.com 200206027 - OpenBSD CVS Sync @@ -1191,4 +1192,4 @@ - (stevesk) entropy.c: typo in debug message - (djm) ssh-keygen -i needs seeded RNG; report from markus@ -$Id: ChangeLog,v 1.2308 2002/06/27 16:59:50 stevesk Exp $ +$Id: ChangeLog,v 1.2309 2002/06/27 18:02:21 mouring Exp $ diff --git a/sshd.c b/sshd.c index 851fad4be..d2524c4bc 100644 --- a/sshd.c +++ b/sshd.c @@ -1035,7 +1035,14 @@ main(int ac, char **av) (S_ISDIR(st.st_mode) == 0)) fatal("Missing privilege separation directory: %s", _PATH_PRIVSEP_CHROOT_DIR); + +#ifdef HAVE_CYGWIN + if (check_ntsec(_PATH_PRIVSEP_CHROOT_DIR) && + (st.st_uid != getuid () || + (st.st_mode & (S_IWGRP|S_IWOTH)) != 0)) +#else if (st.st_uid != 0 || (st.st_mode & (S_IWGRP|S_IWOTH)) != 0) +#endif fatal("Bad owner or mode for %s", _PATH_PRIVSEP_CHROOT_DIR); } -- 2.47.3