delorie.com/archives/browse.cgi   search  
Mail Archives: cygwin/2005/12/20/16:32:38

X-Spam-Check-By: sourceware.org
Date: Tue, 20 Dec 2005 14:38:21 -0700 (MST)
From: Craig Davison <craig AT darkcalgary DOT com>
To: cygwin AT cygwin DOT com
Subject: Listening sockets not always closing?
Message-ID: <Pine.BSO.4.58.0512201358150.21488@www.darkcalgary.com>
MIME-Version: 1.0
X-IsSubscribed: yes
Mailing-List: contact cygwin-help AT cygwin DOT com; run by ezmlm
List-Subscribe: <mailto:cygwin-subscribe AT cygwin DOT com>
List-Archive: <http://sourceware.org/ml/cygwin/>
List-Post: <mailto:cygwin AT cygwin DOT com>
List-Help: <mailto:cygwin-help AT cygwin DOT com>, <http://sourceware.org/ml/#faqs>
Sender: cygwin-owner AT cygwin DOT com
Mail-Followup-To: cygwin AT cygwin DOT com
Delivered-To: mailing list cygwin AT cygwin DOT com

--0-193179858-1135114701=:21488
Content-Type: TEXT/PLAIN; charset=US-ASCII

Hello,
I'm running cygwin 1.5.18 on a number of versions of Windows, and I may
have found a problem closing sockets. I'm seeing this problem on Windows
2000 (no SP) and Windows 2000 SP1, but not on Windows 2000 SP2, SP3 or
SP4, and Windows XP and XP SP2 are also unaffected.

I created a small test program to illustrate this. Basically, in a loop, I
create a SOCK_STREAM socket, call bind() and then listen(), check the
output of netstat, and then close the socket. It works on several
versions of Linux, and Windows >= 2000 SP 2, but bind fails with
EADDRINUSE the second time through the loop on Windows <= 2000 SP1.

I think this is a cygwin-specific problem because if I try the same thing
with a native windows application using winsock, it works. (I can mail out
this code if anyone wants)

The code for my test program is attached. If I'm doing something stupid
here, I apologize for wasting everyone's time.
--0-193179858-1135114701=:21488
Content-Type: TEXT/PLAIN; charset=US-ASCII; name="tst-close.c"
Content-Transfer-Encoding: BASE64
Content-ID: <Pine DOT BSO DOT 4 DOT 58 DOT 0512201438210 DOT 21488 AT www DOT darkcalgary DOT com>
Content-Description: 
Content-Disposition: attachment; filename="tst-close.c"

I2luY2x1ZGUgPHN5cy9zb2NrZXQuaD4NCiNpbmNsdWRlIDxhcnBhL2luZXQu
aD4NCiNpbmNsdWRlIDx1bmlzdGQuaD4NCiNpbmNsdWRlIDxzdGRpby5oPg0K
I2luY2x1ZGUgPHN0ZGxpYi5oPg0KDQojZGVmaW5lIFBPUlQgMTIzNDUNCg0K
dm9pZCBuZXRzdGF0KCkNCnsNCiAgY2hhciBuZXRzdGF0X2NtZFsxMDBdOw0K
ICBzcHJpbnRmIChuZXRzdGF0X2NtZCwgIm5ldHN0YXQgLWFuIC1wIHRjcCB8
IC9iaW4vZ3JlcCAlZCIsIFBPUlQpOw0KICBzeXN0ZW0gKG5ldHN0YXRfY21k
KTsNCn0NCg0KaW50IG1haW4oKQ0Kew0KICBpbnQgaTsNCiAgZm9yIChpID0g
MDsgaSA8IDEwOyBpKyspIHsNCiAgICBzdHJ1Y3Qgc29ja2FkZHJfaW4gc2Fk
ZHI7DQogICAgaW50IHM7DQogICAgc2FkZHIuc2luX2ZhbWlseSA9IEFGX0lO
RVQ7DQogICAgc2FkZHIuc2luX2FkZHIuc19hZGRyID0gMDsNCiAgICBzYWRk
ci5zaW5fcG9ydCA9IGh0b25zKFBPUlQpOw0KDQogICAgcyA9IHNvY2tldCAo
UEZfSU5FVCwgU09DS19TVFJFQU0sIDApOw0KICAgIGlmIChzID09IC0xKSB7
DQogICAgICBwZXJyb3IgKCJzb2NrZXQiKTsNCiAgICAgIGV4aXQgKDEpOw0K
ICAgIH0NCiAgICBpZiAoYmluZCAocywgKHN0cnVjdCBzb2NrYWRkciAqKSZz
YWRkciwgc2l6ZW9mKHNhZGRyKSkgPT0gLTEpIHsNCiAgICAgIHBlcnJvciAo
ImJpbmQiKTsNCiAgICAgIGV4aXQgKDEpOw0KICAgIH0NCiAgICBpZiAobGlz
dGVuIChzLCAxMDApID09IC0xKSB7DQogICAgICBwZXJyb3IgKCJsaXN0ZW4i
KTsNCiAgICAgIGV4aXQgKDEpOw0KICAgIH0NCiAgICBwcmludGYgKCJDYWxs
ZWQgbGlzdGVuXG4iKTsNCiAgICBzbGVlcCAoMSk7DQogICAgbmV0c3RhdCgp
Ow0KICAgIGlmIChjbG9zZSAocykgPT0gLTEpIHsNCiAgICAgIHBlcnJvciAo
ImNsb3NlIik7DQogICAgICBleGl0ICgxKTsNCiAgICB9DQogICAgcHJpbnRm
ICgiQ2FsbGVkIGNsb3NlXG4iKTsNCiAgfQ0KDQogIHJldHVybiAwOw0KfQ0K
DQo=


--0-193179858-1135114701=:21488
Content-Type: text/plain; charset=us-ascii

--
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple
Problem reports:       http://cygwin.com/problems.html
Documentation:         http://cygwin.com/docs.html
FAQ:                   http://cygwin.com/faq/
--0-193179858-1135114701=:21488--

- Raw text -


  webmaster     delorie software   privacy  
  Copyright © 2019   by DJ Delorie     Updated Jul 2019