From: Sam Hartman Date: Tue, 4 Mar 2003 20:55:19 +0000 (+0000) Subject: Don't call shutdown after finishing writing X-Git-Tag: krb5-1.3-alpha1~57 X-Git-Url: http://git.tremily.us/?a=commitdiff_plain;h=8d1eb5512b1e4c8f2d57629d4d0819462380c522;p=krb5.git Don't call shutdown after finishing writing to TCP socket as doing so causes interop problems. git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@15220 dc483132-0cff-0310-8789-dd5450dbe970 --- diff --git a/src/lib/krb5/os/ChangeLog b/src/lib/krb5/os/ChangeLog index 68026ccb9..9149d05b2 100644 --- a/src/lib/krb5/os/ChangeLog +++ b/src/lib/krb5/os/ChangeLog @@ -1,3 +1,7 @@ +2003-03-04 Sam Hartman + + * sendto_kdc.c (service_tcp_fd): Don't call shutdown on end of write because some implementations cannot deal with half-closed TCP sockets. + 2003-02-08 Tom Yu * prompter.c (krb5_prompter_posix): Kill echo before printing diff --git a/src/lib/krb5/os/sendto_kdc.c b/src/lib/krb5/os/sendto_kdc.c index eac4b3a2b..0f5b9f275 100644 --- a/src/lib/krb5/os/sendto_kdc.c +++ b/src/lib/krb5/os/sendto_kdc.c @@ -777,7 +777,8 @@ service_tcp_fd (struct conn_state *conn, struct select_state *selstate, } if (conn->x.out.sg_count == 0) { /* Done writing, switch to reading. */ - shutdown(conn->fd, SHUTDOWN_WRITE); + /* Don't call shutdown at this point because + * some implementations cannot deal with half-closed connections.*/ FD_CLR(conn->fd, &selstate->wfds); /* Q: How do we detect failures to send the remaining data to the remote side, since we're in non-blocking mode?