projects
/
yaz-moved-to-github.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Fix comment regarding diagnostics
[yaz-moved-to-github.git]
/
src
/
tcpip.c
diff --git
a/src/tcpip.c
b/src/tcpip.c
index
275c10c
..
b992319
100644
(file)
--- a/
src/tcpip.c
+++ b/
src/tcpip.c
@@
-1,8
+1,6
@@
-/*
- * Copyright (C) 1995-2007, Index Data ApS
+/* This file is part of the YAZ toolkit.
+ * Copyright (C) 1995-2008 Index Data
* See the file LICENSE for details.
* See the file LICENSE for details.
- *
- * $Id: tcpip.c,v 1.37 2007-11-09 21:52:38 adam Exp $
*/
/**
* \file tcpip.c
*/
/**
* \file tcpip.c
@@
-224,7
+222,7
@@
COMSTACK yaz_tcpip_create(int s, int flags, int protocol,
if (connect_host)
{
tcpip_state *sp = (tcpip_state *) p->cprivate;
if (connect_host)
{
tcpip_state *sp = (tcpip_state *) p->cprivate;
- sp->connect_request_buf = xmalloc(strlen(connect_host) + 30);
+ sp->connect_request_buf = (char *) xmalloc(strlen(connect_host) + 30);
sprintf(sp->connect_request_buf, "CONNECT %s HTTP/1.0\r\n\r\n",
connect_host);
sp->connect_request_len = strlen(sp->connect_request_buf);
sprintf(sp->connect_request_buf, "CONNECT %s HTTP/1.0\r\n\r\n",
connect_host);
sp->connect_request_len = strlen(sp->connect_request_buf);
@@
-720,7
+718,15
@@
int tcpip_listen(COMSTACK h, char *raddr, int *addrlen,
)
h->cerrno = CSNODATA;
else
)
h->cerrno = CSNODATA;
else
+ {
+#ifdef WIN32
+ shutdown(h->iofile, SD_RECEIVE);
+#else
+ shutdown(h->iofile, SHUT_RD);
+#endif
+ listen(h->iofile, SOMAXCONN);
h->cerrno = CSYSERR;
h->cerrno = CSYSERR;
+ }
return -1;
}
if (addrlen && (size_t) (*addrlen) >= sizeof(struct sockaddr_in))
return -1;
}
if (addrlen && (size_t) (*addrlen) >= sizeof(struct sockaddr_in))
@@
-820,9
+826,9
@@
COMSTACK tcpip_accept(COMSTACK h)
state->ssl = SSL_new (state->ctx);
SSL_set_fd (state->ssl, cnew->iofile);
}
state->ssl = SSL_new (state->ctx);
SSL_set_fd (state->ssl, cnew->iofile);
}
+#endif
state->connect_request_buf = 0;
state->connect_response_buf = 0;
state->connect_request_buf = 0;
state->connect_response_buf = 0;
-#endif
h = cnew;
}
if (h->state == CS_ST_ACCEPT)
h = cnew;
}
if (h->state == CS_ST_ACCEPT)