diff options
author | Christopher Faylor <me@cgf.cx> | 2001-10-13 17:23:35 +0000 |
---|---|---|
committer | Christopher Faylor <me@cgf.cx> | 2001-10-13 17:23:35 +0000 |
commit | 0476bae576d4a21ed57cc55074509c07138d1fba (patch) | |
tree | dc30019ce3ba2d8eb84d34f3b650827bbf4fc999 /winsup/cygwin/net.cc | |
parent | 5dec13e1793901735554fd4dd60cad64c9394bb5 (diff) | |
download | cygnal-0476bae576d4a21ed57cc55074509c07138d1fba.tar.gz cygnal-0476bae576d4a21ed57cc55074509c07138d1fba.tar.bz2 cygnal-0476bae576d4a21ed57cc55074509c07138d1fba.zip |
* fhandler_dsp.cc (fhandler_dsp::ioctl): Return 0 for successful
SNDCTL_DSP_GETBLKSIZE operation. Remove obsolete 'name' arg from fhandler_*
constructors throughout.
* winsup.h (winsock_active): New macro.
(winsock2_active): Ditto.
* autoload.cc (wsock_init): Use new macros to decide if winsock or winsock2 is
loaded.
(nonexist_wsock32): Dummy function to force winsock load.
(nonexist_ws2_32): Dummy function to force winsock2 load.
* fhandler.h (fhandler_socket::fstat): Declare new method. Currently unused.
* fhandler_socket.cc (fhandler_socket::fixup_before_fork_exec): Check that
winsock2 is active before trying WSADuplicateSocketA.
(fhandler_socket::fixup_after_fork): Add extra check for winsock2_active.
Otherwise use iffy procedures for Windows 95.
(fhandler_socket::fixup_after_exec): Add debugging.
(fhandler_socket::dup): Add debugging.
(fhandler_socket::fstat): New method.
(fhandler_socket::set_close_on_exec): Attempt to perform iffy stuff on Windows
95.
* errno.cc (_sys_nerr): Work around compiler strangeness.
* pinfo.cc (winpids::add): Add extra element at end of allocated array for
setting to NULL.
(winpids::enumNT): Ditto.
(winpids::init): Don't modify pidlist if it hasn't been allocated
(possibly due to malloc problem).
Diffstat (limited to 'winsup/cygwin/net.cc')
-rw-r--r-- | winsup/cygwin/net.cc | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/winsup/cygwin/net.cc b/winsup/cygwin/net.cc index 94b37c3d8..e14814c69 100644 --- a/winsup/cygwin/net.cc +++ b/winsup/cygwin/net.cc @@ -506,12 +506,15 @@ cygwin_getprotobynumber (int number) fhandler_socket * fdsock (int fd, const char *name, SOCKET soc) { + SetResourceLock (LOCK_FD_LIST, WRITE_LOCK | READ_LOCK, "fdsock"); if (wsadata.wVersion < 512) /* < Winsock 2.0 */ soc = set_socket_inheritance (soc); fhandler_socket *fh = (fhandler_socket *) cygheap->fdtab.build_fhandler (fd, FH_SOCKET, name); fh->set_io_handle ((HANDLE) soc); fh->set_flags (O_RDWR); cygheap->fdtab.inc_need_fixup_before (); + fh->set_name (name, name); + ReleaseResourceLock (LOCK_FD_LIST, WRITE_LOCK | READ_LOCK, "fdsock"); return fh; } |