X-Git-Url: http://git.indexdata.com/?a=blobdiff_plain;f=src%2Ftcpip.c;h=ae1c66e0dde2e4ee57ed0fefb3efa32f41ce0796;hb=bf4af27e54345e280223257161448ace0f0b1d67;hp=3fa26defb4e4971ce5e8f4c5ad313b90f5a6725b;hpb=5ba0bc49a8588ea1df229f4f1d60a8629acf71cf;p=yaz-moved-to-github.git diff --git a/src/tcpip.c b/src/tcpip.c index 3fa26de..ae1c66e 100644 --- a/src/tcpip.c +++ b/src/tcpip.c @@ -70,7 +70,7 @@ #include #include -static int tcpip_close(COMSTACK h); +static void tcpip_close(COMSTACK h); static int tcpip_put(COMSTACK h, char *buf, int size); static int tcpip_get(COMSTACK h, char **buf, int *bufsize); static int tcpip_put_connect(COMSTACK h, char *buf, int size); @@ -90,7 +90,7 @@ static int ssl_put(COMSTACK h, char *buf, int size); #endif static COMSTACK tcpip_accept(COMSTACK h); -static char *tcpip_addrstr(COMSTACK h); +static const char *tcpip_addrstr(COMSTACK h); static void *tcpip_straddr(COMSTACK h, const char *str); #if 0 @@ -206,7 +206,6 @@ COMSTACK tcpip_type(int s, int flags, int protocol, void *vp) p->state = s < 0 ? CS_ST_UNBND : CS_ST_IDLE; /* state of line */ p->event = CS_NONE; p->cerrno = 0; - p->stackerr = 0; p->user = 0; #if HAVE_GNUTLS_H @@ -423,7 +422,7 @@ void *tcpip_straddr(COMSTACK h, const char *str) { tcpip_state *sp = (tcpip_state *)h->cprivate; const char *port = "210"; - struct addrinfo *ai; + struct addrinfo *ai = 0; if (h->protocol == PROTO_HTTP) port = "80"; if (!tcpip_init()) @@ -513,10 +512,6 @@ int tcpip_connect(COMSTACK h, void *address) struct sockaddr_in *add = (struct sockaddr_in *) address; #endif int r; -#ifdef __sun__ - int recbuflen; - YAZ_SOCKLEN_T rbufsize = sizeof(recbuflen); -#endif TRC(fprintf(stderr, "tcpip_connect\n")); h->io_pending = 0; if (h->state != CS_ST_UNBND) @@ -524,33 +519,6 @@ int tcpip_connect(COMSTACK h, void *address) h->cerrno = CSOUTSTATE; return -1; } -#ifdef __sun__ - /* On Suns, you must set a bigger Receive Buffer BEFORE a call to connect - * This gives the connect a chance to negotiate with the other side - * (see 'man tcp') - */ - if (getsockopt(h->iofile, SOL_SOCKET, SO_RCVBUF, (void *)&recbuflen, &rbufsize ) < 0 ) - { - h->cerrno = CSYSERR; - return -1; - } - TRC(fprintf( stderr, "Current Size of TCP Receive Buffer= %d\n", - recbuflen )); - recbuflen *= 10; /* lets be optimistic */ - if (setsockopt(h->iofile, SOL_SOCKET, SO_RCVBUF, (void *)&recbuflen, rbufsize ) < 0 ) - { - h->cerrno = CSYSERR; - return -1; - } - if (getsockopt(h->iofile, SOL_SOCKET, SO_RCVBUF, (void *)&recbuflen, &rbufsize ) ) - { - h->cerrno = CSYSERR; - return -1; - } - TRC(fprintf(stderr, "New Size of TCP Receive Buffer = %d\n", - recbuflen )); -#endif - #if HAVE_GETADDRINFO r = connect(h->iofile, ai->ai_addr, ai->ai_addrlen); freeaddrinfo(sp->ai); @@ -1377,7 +1345,7 @@ int ssl_put(COMSTACK h, char *buf, int size) } #endif -int tcpip_close(COMSTACK h) +void tcpip_close(COMSTACK h) { tcpip_state *sp = (struct tcpip_state *)h->cprivate; @@ -1437,10 +1405,9 @@ int tcpip_close(COMSTACK h) xfree(sp->connect_response_buf); xfree(sp); xfree(h); - return 0; } -char *tcpip_addrstr(COMSTACK h) +const char *tcpip_addrstr(COMSTACK h) { tcpip_state *sp = (struct tcpip_state *)h->cprivate; char *r = 0, *buf = sp->buf;