aboutsummaryrefslogtreecommitdiff
path: root/winsup
diff options
context:
space:
mode:
authorEgor Duda <deo@logos-m.ru>2001-08-16 14:34:27 +0000
committerEgor Duda <deo@logos-m.ru>2001-08-16 14:34:27 +0000
commit933cbf6213971f4a6d3699e698a73cf1b26ce6c9 (patch)
tree221e2117c4afead1b44d93fdf2990bea0c3469ed /winsup
parent1457739a6335f150e6ca015fae725838150f0bf9 (diff)
downloadnewlib-933cbf6213971f4a6d3699e698a73cf1b26ce6c9.zip
newlib-933cbf6213971f4a6d3699e698a73cf1b26ce6c9.tar.gz
newlib-933cbf6213971f4a6d3699e698a73cf1b26ce6c9.tar.bz2
* fhandler_socket.cc (fhandler_socket::create_secret_event): Relax
security of secret_event so AF_UNIX socket clients can connect to servers even if running under a different user account. (fhandler_socket::check_peer_secret_event): Ditto.
Diffstat (limited to 'winsup')
-rw-r--r--winsup/cygwin/ChangeLog7
-rw-r--r--winsup/cygwin/fhandler_socket.cc4
2 files changed, 9 insertions, 2 deletions
diff --git a/winsup/cygwin/ChangeLog b/winsup/cygwin/ChangeLog
index aa9c154..d47a7a7 100644
--- a/winsup/cygwin/ChangeLog
+++ b/winsup/cygwin/ChangeLog
@@ -1,3 +1,10 @@
+Thu Aug 16 09:38:59 2001 Jason Tishler <jason@tishler.net>
+
+ * fhandler_socket.cc (fhandler_socket::create_secret_event): Relax
+ security of secret_event so AF_UNIX socket clients can connect to
+ servers even if running under a different user account.
+ (fhandler_socket::check_peer_secret_event): Ditto.
+
Thu Aug 16 16:26:00 2001 Corinna Vinschen <corinna@vinschen.de>
* resource.cc (getrlimit): Return getdtablesize () as current limit
diff --git a/winsup/cygwin/fhandler_socket.cc b/winsup/cygwin/fhandler_socket.cc
index 9e63489..80d1c92 100644
--- a/winsup/cygwin/fhandler_socket.cc
+++ b/winsup/cygwin/fhandler_socket.cc
@@ -101,7 +101,7 @@ fhandler_socket::create_secret_event (int* secret)
__small_sprintf (buf, SECRET_EVENT_NAME, sin.sin_port,
secret_ptr [0], secret_ptr [1],
secret_ptr [2], secret_ptr [3]);
- secret_event = CreateEvent (get_inheritance (), FALSE, FALSE, buf);
+ secret_event = CreateEvent (get_inheritance(true), FALSE, FALSE, buf);
if (!secret_event && GetLastError () == ERROR_ALREADY_EXISTS)
secret_event = OpenEvent (EVENT_ALL_ACCESS, FALSE, buf);
@@ -136,7 +136,7 @@ fhandler_socket::check_peer_secret_event (struct sockaddr_in* peer, int* secret)
__small_sprintf (buf, SECRET_EVENT_NAME, peer->sin_port,
secret_ptr [0], secret_ptr [1],
secret_ptr [2], secret_ptr [3]);
- ev = CreateEvent (&sec_none_nih, FALSE, FALSE, buf);
+ ev = CreateEvent (&sec_all_nih, FALSE, FALSE, buf);
if (!ev && GetLastError () == ERROR_ALREADY_EXISTS)
{
debug_printf ("%s event already exist");