Welcome to mirror list, hosted at ThFree Co, Russian Federation.

cygwin.com/git/newlib-cygwin.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCorinna Vinschen <corinna@vinschen.de>2019-02-18 23:00:59 +0300
committerCorinna Vinschen <corinna@vinschen.de>2019-02-18 23:00:59 +0300
commite53373bbdb3b8b6d497e7c388138e3ba22fda902 (patch)
tree0652d365e530cdc72e631e1811645f605921ef7b /winsup/doc
parenta96d68c5bd88080406d4523236449cf43ecebf39 (diff)
Cygwin: re-enable create_token for older systems
Under WOW64 on 64 bit Windows 7, MsV1_0S4ULogon appears to be unimplemented, probably under Vista as well. Re-enable create_token method, to allow basic seteuid on W7 WOW64 and Vista as well. Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
Diffstat (limited to 'winsup/doc')
-rw-r--r--winsup/doc/ntsec.xml10
1 files changed, 10 insertions, 0 deletions
diff --git a/winsup/doc/ntsec.xml b/winsup/doc/ntsec.xml
index e8419c5bc..528784568 100644
--- a/winsup/doc/ntsec.xml
+++ b/winsup/doc/ntsec.xml
@@ -2575,6 +2575,16 @@ to create a token.</para>
</listitem>
<listitem>
+<para>Older systems, like WOW64 under Windows 7 64 bit, don't support
+<literal>S4U</literal> authentication for local machine accounts. On
+these systems Cygwin falls back to an old and otherwise deprecated
+method to create a user token from scratch. The underlying system call
+is undocumented and has an unfortunate requirement: We have to create a
+special account with dangerous permissions to perform this action.
+Therefore this is only enabled on affected systems.</para>
+</listitem>
+
+<listitem>
<para>If all of the above fails, our process has insufficient privileges
to switch the user context at all, so <command>set(e)uid</command>
fails and returns -1, setting errno to EPERM.</para>