diff options
author | Vadim B. Mikheev <vadim4o@yahoo.com> | 1997-04-16 06:25:13 +0000 |
---|---|---|
committer | Vadim B. Mikheev <vadim4o@yahoo.com> | 1997-04-16 06:25:13 +0000 |
commit | 4d985ea96b418ff782a1a2a2237ca399a36a9616 (patch) | |
tree | 387ab1ca14b35ea1f322d6e1c746cf26f6b34bac /src | |
parent | 329fb11262b79a45749a8005e7a31ff178eb6d10 (diff) | |
download | postgresql-4d985ea96b418ff782a1a2a2237ca399a36a9616.tar.gz postgresql-4d985ea96b418ff782a1a2a2237ca399a36a9616.zip |
StreamConnection(): setsockopt (..., TCP_NODELAY, ...) added.
Diffstat (limited to 'src')
-rw-r--r-- | src/backend/libpq/pqcomm.c | 20 |
1 files changed, 19 insertions, 1 deletions
diff --git a/src/backend/libpq/pqcomm.c b/src/backend/libpq/pqcomm.c index 52309d4ddc0..dcd99cbe1b4 100644 --- a/src/backend/libpq/pqcomm.c +++ b/src/backend/libpq/pqcomm.c @@ -7,7 +7,7 @@ * * * IDENTIFICATION - * $Header: /cvsroot/pgsql/src/backend/libpq/pqcomm.c,v 1.14 1997/03/20 18:21:35 scrappy Exp $ + * $Header: /cvsroot/pgsql/src/backend/libpq/pqcomm.c,v 1.15 1997/04/16 06:25:13 vadim Exp $ * *------------------------------------------------------------------------- */ @@ -44,6 +44,7 @@ #include <sys/socket.h> #include <netdb.h> #include <netinet/in.h> +#include <netinet/tcp.h> #include <arpa/inet.h> #if defined(linux) @@ -631,6 +632,23 @@ StreamConnection(int server_fd, Port *port) elog(WARN, "postmaster: StreamConnection: getsockname: %m"); return(STATUS_ERROR); } + { + struct protoent *pe; + int on=1; + + pe = getprotobyname ("TCP"); + if ( pe == NULL ) + { + elog(WARN, "postmaster: getprotobyname failed"); + return(STATUS_ERROR); + } + if ( setsockopt (port->sock, pe->p_proto, TCP_NODELAY, + &on, sizeof (on)) < 0 ) + { + elog(WARN, "postmaster: setsockopt failed"); + return(STATUS_ERROR); + } + } port->mask = 1 << port->sock; |