[newlib-cygwin/main] Cygwin: //tsclient: allow to enumerate shares
Corinna Vinschen
corinna@sourceware.org
Sat Mar 23 22:54:33 GMT 2024
https://sourceware.org/git/gitweb.cgi?p=newlib-cygwin.git;h=cc74a38d4a210c915233d04cfb8a62cde97c1b62
commit cc74a38d4a210c915233d04cfb8a62cde97c1b62
Author: Corinna Vinschen <corinna@vinschen.de>
AuthorDate: Sat Mar 23 23:54:26 2024 +0100
Commit: Corinna Vinschen <corinna@vinschen.de>
CommitDate: Sat Mar 23 23:54:26 2024 +0100
Cygwin: //tsclient: allow to enumerate shares
The //tsclient provider is WNNC_NET_TERMSRV.
Fixes: 7db1c6fc4e2a ("Cygwin: //server: revert to using WNet and support NFS shares")
Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
Diff:
---
winsup/cygwin/fhandler/netdrive.cc | 6 +++++-
1 file changed, 5 insertions(+), 1 deletion(-)
diff --git a/winsup/cygwin/fhandler/netdrive.cc b/winsup/cygwin/fhandler/netdrive.cc
index 5328429ac34f..fc71016de304 100644
--- a/winsup/cygwin/fhandler/netdrive.cc
+++ b/winsup/cygwin/fhandler/netdrive.cc
@@ -394,8 +394,12 @@ create_thread_and_wait (DIR *dir)
}
+
/* Eventually, try SMB via WNet for share enumeration. */
- ndi.provider = WNNC_NET_LANMAN;
+ if (!strcmp (dir->__d_dirname + 2, "tsclient"))
+ ndi.provider = WNNC_NET_TERMSRV;
+ else
+ ndi.provider = WNNC_NET_LANMAN;
ndi.sem = CreateSemaphore (&sec_none_nih, 0, 2, NULL);
thr = new cygthread (thread_netdrive_wnet, &ndi, "netdrive_smb");
if (thr->detach (ndi.sem))
More information about the Cygwin-cvs
mailing list