connectDB(): setsockopt (..., TCP_NODELAY, ...) added.
authorVadim B. Mikheev
Wed, 16 Apr 1997 06:29:19 +0000 (06:29 +0000)
committerVadim B. Mikheev
Wed, 16 Apr 1997 06:29:19 +0000 (06:29 +0000)
src/interfaces/libpq/fe-connect.c

index 9d02de5b5260202084050b0f8fe169b700a1d148..d1ebdb62c1e8b3307085359e5c3ade209e604f13 100644 (file)
@@ -7,7 +7,7 @@
  *
  *
  * IDENTIFICATION
- *    $Header: /cvsroot/pgsql/src/interfaces/libpq/fe-connect.c,v 1.29 1997/04/15 19:08:13 scrappy Exp $
+ *    $Header: /cvsroot/pgsql/src/interfaces/libpq/fe-connect.c,v 1.30 1997/04/16 06:29:19 vadim Exp $
  *
  *-------------------------------------------------------------------------
  */
@@ -21,6 +21,7 @@
 #include 
 #include 
 #include 
+#include 
 #include 
 #include 
 #include       /* for isspace() */
@@ -476,7 +477,25 @@ connectDB(PGconn *conn)
               conn->pghost,conn->pgport);
    goto connect_errReturn; 
     }
-    
+    {
+       struct protoent *pe;
+       int on=1;
+       
+       pe = getprotobyname ("TCP");
+       if ( pe == NULL )
+       {
+       (void) sprintf(conn->errorMessage,
+               "connectDB(): getprotobyname failed\n");
+       goto connect_errReturn;
+   }
+       if ( setsockopt (port->sock, pe->p_proto, TCP_NODELAY, 
+                           &on, sizeof (on)) < 0 )
+       {
+       (void) sprintf(conn->errorMessage,
+               "connectDB(): setsockopt failed\n");
+       goto connect_errReturn;
+   }
+    }
 
     /* fill in the client address */
     if (getsockname(port->sock, (struct sockaddr *) &port->laddr,