Merged revision 3.11 to NSPRPUB_RELEASE_3_1_BRANCH. NSPRPUB_RELEASE_3_1_BRANCH
authorwtc%netscape.com
Tue, 30 Mar 1999 23:41:23 +0000
branchNSPRPUB_RELEASE_3_1_BRANCH
changeset 516 a84883730daec3d9b19e7eac4203f9e9b7f8c919
parent 498 da59caf6746ccb56ec50aa47f6a331133e638b48
child 517 490e6efe7e3c5ff9cdd198dc5bc6bf13788f5569
push idunknown
push userunknown
push dateunknown
Merged revision 3.11 to NSPRPUB_RELEASE_3_1_BRANCH.
pr/include/md/_macos.h
--- a/pr/include/md/_macos.h
+++ b/pr/include/md/_macos.h
@@ -46,22 +46,21 @@
 #include <setjmp.h>
 #include <Errors.h>
 
 struct _MDProcess {
     PRInt8 notused;
 };
 
 struct _MDThread {
-    jmp_buf jb;
-    int osErrCode;
-	PRLock		*asyncIOLock;
-	PRCondVar	*asyncIOCVar;
-    void *cookie;
-    PRBool notifyPending;
+    jmp_buf      jb;
+    int          osErrCode;
+	PRLock *     asyncIOLock;
+	PRCondVar *  asyncIOCVar;
+    PRBool       notifyPending;
 };
 
 struct _MDThreadStack {
     PRInt8 notused;
 };
 
 struct _MDLock {
     PRInt8 notused;
@@ -78,18 +77,31 @@ struct _MDSemaphore {
 struct _MDSegment {
     PRInt8 notused;
 };
 
 struct _MDCPU {
     PRInt8 notused;
 };
 
+typedef struct _MDSocketCallerInfo {
+	PRThread *	thread;
+	void *		cookie;
+} _MDSocketCallerInfo;
+
 struct _MDFileDesc {
-    PRInt32 osfd;
+    PRInt32     osfd;
+	PRBool      connectionOpen;
+	PRBool      readReady;
+	PRBool      writeReady;
+	PRBool      exceptReady;
+	PRLock *    miscLock;
+	_MDSocketCallerInfo  misc;
+	_MDSocketCallerInfo  read;
+	_MDSocketCallerInfo  write;
 };
 
 /*
 ** Iinitialization Related definitions
 */
 
 #define _MD_EARLY_INIT		_MD_EarlyInit
 #define _MD_FINAL_INIT		_MD_FinalInit
@@ -372,17 +384,18 @@ extern PRStatus _MD_setsockopt(PRFileDes
 #define _MD_ACCEPT			_MD_accept
 #define _MD_CONNECT			_MD_connect
 #define _MD_SEND			_MD_send
 #define _MD_RECV			_MD_recv
 #define _MD_CLOSE_SOCKET	_MD_closesocket
 #define _MD_SENDTO			_MD_sendto
 #define _MD_RECVFROM		_MD_recvfrom
 #define _MD_PR_POLL			_MD_poll
-#define _MD_INIT_FILEDESC(fd)
+#define _MD_INIT_FILEDESC	_MD_initfiledesc
+#define _MD_FREE_FILEDESC	_MD_freefiledesc
 #define _MD_MAKE_NONBLOCK	_MD_makenonblock
 
 #define _MD_GET_SOCKET_ERROR() 		_PR_MD_CURRENT_THREAD()->md.osErrCode
 
 #define _PR_MD_MAP_SELECT_ERROR(x) 	(x)
 /*
 ** Netdb Related definitions
 */