]> git.sur5r.net Git - openldap/commitdiff
Defined tcp_read and tcp_write. Use them in daemon.c
authorHoward Chu <hyc@openldap.org>
Sun, 29 Aug 1999 04:01:16 +0000 (04:01 +0000)
committerHoward Chu <hyc@openldap.org>
Sun, 29 Aug 1999 04:01:16 +0000 (04:01 +0000)
include/ac/socket.h
servers/slapd/daemon.c

index 48bb031a8c6ad32b0ba7224918df340510e81d81..24dd139f26bd1c8416e1473809804beb0464812d 100644 (file)
 #define MAXHOSTNAMELEN  64
 #endif
 
+#define sock_errno()   errno
+#define sock_errstr()  STRERROR(errno)
+
 #ifdef HAVE_WINSOCK
-#      define tcp_close( s )           closesocket( s );
+#      define tcp_close( s )           closesocket( s )
+#      define tcp_read( s, buf, len )  recv( s, buf, len, 0 )
+#      define tcp_write( s, buf, len ) send( s, buf, len, 0 )
 #      define ioctl( s, c, a )         ioctlsocket( (s), (c), (a) )
 #      define ioctl_t                          u_long
 #      define AC_SOCKET_INVALID        ((unsigned int) ~0)
 #define EINPROGRESS WSAEINPROGRESS
 #define ETIMEDOUT      WSAETIMEDOUT
 
+#undef sock_errno
+#undef sock_errstr
 #define        sock_errno()    WSAGetLastError()
 #define        sock_errstr()   WSAGetLastErrorString()
 
 #elif MACOS
 #      define tcp_close( s )           tcpclose( s )
+#      define tcp_read( s, buf, len )  tcpread( s, buf, len )
+#      define tcp_write( s, buf, len ) tcpwrite( s, buf, len )
 
 #elif DOS
 #      ifdef PCNFS
 #              define tcp_close( s )   close( s )
+#              define tcp_read( s, buf, len )  recv( s, buf, len, 0 )
+#              define tcp_write( s, buf, len ) send( s, buf, len, 0 )
 #      endif /* PCNFS */
 #      ifdef NCSA
 #              define tcp_close( s )   do { netclose( s ); netshut() } while(0)
+#              define tcp_read( s, buf, len )  nread( s, buf, len )
+#              define tcp_write( s, buf, len ) netwrite( s, buf, len )
 #      endif /* NCSA */
 
 #elif HAVE_CLOSESOCKET
 
 #else
 #      define tcp_close( s )           close( s )
-#      define sock_errno()     errno
-#      define sock_errstr()    STRERROR(errno)
+#      define tcp_read( s, buf, len)   read( s, buf, len )
+#      define tcp_write( s, buf, len)  write( s, buf, len )
 #endif /* MACOS */
 
 #ifndef ioctl_t
index 95a2689731cfd78adf6256a1f35599a01888ed07..1ce529f589a5e002597c8018cf3fc47fe93f010f 100644 (file)
@@ -659,7 +659,7 @@ slapd_daemon_task(
                if( FD_ISSET( sel_exit_fd, &readfds ) )
                {
                        char c;
-                       read( sel_exit_fd, &c, 1 );
+                       tcp_read( sel_exit_fd, &c, 1 );
                        continue;
                }
                for ( l = 0; slap_listeners[l] != NULL; l++ ) {
@@ -1102,7 +1102,7 @@ slap_set_shutdown( int sig )
                }
        }
 #endif
-       write( sel_exit_fd, "0", 1 );
+       tcp_write( sel_exit_fd, "0", 1 );
        /* reinstall self */
        (void) SIGNAL( sig, slap_set_shutdown );
 }