Author: sahan
Date: Fri Mar  3 20:59:40 2006
New Revision: 383037

URL: http://svn.apache.org/viewcvs?rev=383037&view=rev
Log:
Changed the socket close mechanism to allow slow clients

Modified:
    
webservices/axis2/trunk/c/modules/core/transport/http/receiver/simple_http_svr_conn.c
    webservices/axis2/trunk/c/modules/util/network_handler.c

Modified: 
webservices/axis2/trunk/c/modules/core/transport/http/receiver/simple_http_svr_conn.c
URL: 
http://svn.apache.org/viewcvs/webservices/axis2/trunk/c/modules/core/transport/http/receiver/simple_http_svr_conn.c?rev=383037&r1=383036&r2=383037&view=diff
==============================================================================
--- 
webservices/axis2/trunk/c/modules/core/transport/http/receiver/simple_http_svr_conn.c
 (original)
+++ 
webservices/axis2/trunk/c/modules/core/transport/http/receiver/simple_http_svr_conn.c
 Fri Mar  3 20:59:40 2006
@@ -194,11 +194,11 @@
     svr_conn_impl = AXIS2_INTF_TO_IMPL(svr_conn);
        
        AXIS2_STREAM_FREE(svr_conn_impl->stream, env);
-    /*if(-1 != svr_conn_impl->socket)
+    if(-1 != svr_conn_impl->socket)
     {
                axis2_network_handler_close_socket(env, svr_conn_impl->socket);
         svr_conn_impl->socket = -1;
-    }*/
+    }
     return AXIS2_SUCCESS;
 }
 

Modified: webservices/axis2/trunk/c/modules/util/network_handler.c
URL: 
http://svn.apache.org/viewcvs/webservices/axis2/trunk/c/modules/util/network_handler.c?rev=383037&r1=383036&r2=383037&view=diff
==============================================================================
--- webservices/axis2/trunk/c/modules/util/network_handler.c (original)
+++ webservices/axis2/trunk/c/modules/util/network_handler.c Fri Mar  3 
20:59:40 2006
@@ -144,6 +144,8 @@
 AXIS2_DECLARE(axis2_status_t )
 axis2_network_handler_close_socket (axis2_env_t **env,  axis2_socket_t socket)
 {
+    int i = 0;
+    char buf[32];
        AXIS2_ENV_CHECK(env, AXIS2_CRTICAL_FAILURE);
        if(socket < 0)
        {
@@ -151,10 +153,13 @@
                                                        AXIS2_FAILURE);
                return AXIS2_FAILURE;
        }
+    /*
        if(0 != AXIS2_CLOSE_SOCKET(socket))
        {
                return AXIS2_FAILURE;
-       }
+       }*/
+    shutdown(socket, SHUT_WR);
+    i = read(socket, buf, 32);
        return AXIS2_SUCCESS;
 }
 


Reply via email to