hc-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Oleg Kalnichevski (JIRA)" <j...@apache.org>
Subject [jira] Resolved: (HTTPCLIENT-890) CLONE -Allow configuration of SO_LINGER (client socket close ReSet)
Date Thu, 12 Nov 2009 19:32:39 GMT

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

Oleg Kalnichevski resolved HTTPCLIENT-890.
------------------------------------------

    Resolution: Won't Fix
      Assignee:     (was: HttpComponents Dev)

This issue is probably not that simple as it may seem. HttpClient applies SO_LINGER value
when _opening_ a new connection. What you actually want is to cause the connection to send
a RST packet. But this is usually done when _closing_ the connection. So, most likely what
you want to do is to override the #shutdown method of DefaultClientConnection and make it
set the required SO_LINGER parameter on the socket prior to closing it.

class MyClientConnection extends DefaultClientConnection {

    @Override
    public void shutdown() throws IOException {
        Socket sock = getSocket();
        sock.setSoLinger(true, 0);
        super.shutdown();
    }
    
}

Hope this helps

Oleg


> CLONE -Allow configuration of SO_LINGER (client socket close ReSet)
> -------------------------------------------------------------------
>
>                 Key: HTTPCLIENT-890
>                 URL: https://issues.apache.org/jira/browse/HTTPCLIENT-890
>             Project: HttpComponents HttpClient
>          Issue Type: Improvement
>          Components: HttpClient
>         Environment: Operating System: All
> Platform: All
>            Reporter: thinker0
>            Priority: Minor
>
> There is currently no way to configure the SO_LINGER option on a socket.
> Please change the HttpClient class to allow the configuration of the SO_LINGER
> option on a socket, similar to the way the SO_TIMEOUT can be configured.
> Suggested extension to the interface of the HttpClient class:
> - Add method setSoLinger() to set the current setting for SO_LINGER. The method
> could accept one argument. A negative value could indicate that the SO_LINGER
> should be disabled.
> - Add method getSoLinger() that returns the current setting for SO_LINGER. A
> negative value would indicate that the SO_LINGER option is disabled.
> See:
> http://java.sun.com/j2se/1.4.2/docs/api/java/net/Socket.html#setSoLinger(boolean,%20int)

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@hc.apache.org
For additional commands, e-mail: dev-help@hc.apache.org


Mime
View raw message