Looks like a bug, and I think I might even have a fix for it.. I'll submit
a PR shortly, would you mind reporting the issue?

~Ryan

On Thu, 2 Jul 2015 at 06:31 Phani Kumar <[email protected]> wrote:

> I am using 0.10.31 node version. I am facing an issue which looks like a
> bug in node. Just wanted to confirm, before filing a bug and work on patch.
>
> Here is the issue:
>
> When the same socket object is used for multiple .connect(), the
> socket.localPort is not refreshing with new localPort used by the OS.
>
>
> Test code:
> ---------------
>
> In the below code both local port -1 and local port -2 prints the same
> local port, but in fact it is using different localPort (when checked by
> netstat or lsof).
>
> var net = require('net');
>
> var HOST = '200.xx.xx.204';
> var PORT = 7777;
>
> var client = new net.Socket();
>
> client.on('close', function() {
>     console.log('Connection closed');
>
>     //on close just connect again on the same socket object
>     setTimeout (function() {
>               connectAgain();
>      },
>     5000);
> });
>
> client.on('error', function(error) {
>     console.log(error);
> });
>
>
> client.connect(PORT, HOST, function() {
>     console.log('local port - 1:' + client.localPort);
>
>     // on connect, close the socket. Close socket event will connect again
> using the same socket object
>     client.destroy();     //same with end also
> });
>
> function connectAgain() {
>
>   client.connect(PORT, HOST, function() {
>        console.log('local port - 2:' + client.localPort);
>        console.log('connected to ' + HOST + ':' + PORT);
>   });
> }
>
> Please let me know if this is a bug or expected.
>
>
>  --
> Job board: http://jobs.nodejs.org/
> New group rules:
> https://gist.github.com/othiym23/9886289#file-moderation-policy-md
> Old group rules:
> https://github.com/joyent/node/wiki/Mailing-List-Posting-Guidelines
> ---
> You received this message because you are subscribed to the Google Groups
> "nodejs" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to [email protected].
> To post to this group, send email to [email protected].
> To view this discussion on the web visit
> https://groups.google.com/d/msgid/nodejs/cff4c089-b632-4344-a5e8-7af45b41ef38%40googlegroups.com
> <https://groups.google.com/d/msgid/nodejs/cff4c089-b632-4344-a5e8-7af45b41ef38%40googlegroups.com?utm_medium=email&utm_source=footer>
> .
> For more options, visit https://groups.google.com/d/optout.
>

-- 
Job board: http://jobs.nodejs.org/
New group rules: 
https://gist.github.com/othiym23/9886289#file-moderation-policy-md
Old group rules: 
https://github.com/joyent/node/wiki/Mailing-List-Posting-Guidelines
--- 
You received this message because you are subscribed to the Google Groups 
"nodejs" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To post to this group, send email to [email protected].
To view this discussion on the web visit 
https://groups.google.com/d/msgid/nodejs/CAGjmZGxgWsRQJqnrxuGJZ5kAMENvU6KeqJSfj-5gqfv_2EwhKQ%40mail.gmail.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to