[ 
https://issues.apache.org/jira/browse/AXIS2C-1605?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Robert Lazarski resolved AXIS2C-1605.
-------------------------------------
    Fix Version/s: 2.0.0
                       (was: 1.7.0)
       Resolution: Fixed

Before

  SSL_shutdown(ssl);  /* Only sends close_notify */
  SSL_free(ssl);

  After

  shutdown_ret = SSL_shutdown(ssl);

  if (shutdown_ret == 0)
  {
      /* Shutdown not yet complete - call again for peer's close_notify */
      SSL_shutdown(ssl);
  }

  SSL_free(ssl);

  How This Fixes CLOSE_WAIT
  ┌──────┬────────────────────────────┬──────────────────────────────┐
  │ Step │      Before (Broken)       │        After (Fixed)         │
  ├──────┼────────────────────────────┼──────────────────────────────┤
  │ 1    │ Send close_notify          │ Send close_notify            │
  ├──────┼────────────────────────────┼──────────────────────────────┤
  │ 2    │ Free SSL immediately       │ Wait for peer's close_notify │
  ├──────┼────────────────────────────┼──────────────────────────────┤
  │ 3    │ Socket stuck in CLOSE_WAIT │ Clean connection close       │
  ├──────┼────────────────────────────┼──────────────────────────────┤
  │ 4    │ -                          │ Free SSL                     │
  └──────┴────────────────────────────┴──────────────────────────────┘


> sockets are being left in CLOSE_WAIT state by  client when using SSL in 
> built-in http transport
> -----------------------------------------------------------------------------------------------
>
>                 Key: AXIS2C-1605
>                 URL: https://issues.apache.org/jira/browse/AXIS2C-1605
>             Project: Axis2-C
>          Issue Type: Bug
>          Components: transport/http
>    Affects Versions: 1.7.0
>         Environment: slackware linux, 2.6.39 kernel
>            Reporter: Piotr Isajew
>            Priority: Minor
>              Labels: patch
>             Fix For: 2.0.0
>
>         Attachments: axis.patch
>
>
> When using Axis2/C client with internal http transport via SSL and HTTP/1.0 
> protocol, sockets are not being closed, and are left in CLOSE_WAIT state.
> After some time that leads to reaching open files limit by client process and 
> failure to invoke web service anymore.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to