summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSteve Huston <shuston@riverace.com>2007-02-22 16:48:44 +0000
committerSteve Huston <shuston@riverace.com>2007-02-22 16:48:44 +0000
commitbe3bd76766a72d0445d9d7cb561ca60e7df831be (patch)
treecf98c7352f6940839b6ee11a7fb21f576faabdeb
parent9c3579fa02a0b9ea98df6a01ba74a9072847a8cc (diff)
downloadATCD-be3bd76766a72d0445d9d7cb561ca60e7df831be.tar.gz
ChangeLogTag:Thu Feb 22 16:45:30 UTC 2007 Steve Huston <shuston@riverace.com>
-rw-r--r--ACE/ChangeLog9
-rw-r--r--ACE/tests/MT_SOCK_Test.cpp10
2 files changed, 15 insertions, 4 deletions
diff --git a/ACE/ChangeLog b/ACE/ChangeLog
index ce697e59013..ee18d7a7472 100644
--- a/ACE/ChangeLog
+++ b/ACE/ChangeLog
@@ -1,3 +1,12 @@
+Thu Feb 22 16:45:30 UTC 2007 Steve Huston <shuston@riverace.com>
+
+ * tests/MT_SOCK_Test.cpp: Document the actual cause of what's been
+ observed for some time with some Windows systems exhibiting a
+ "delayed rejection" of connections in excess of the listener's
+ backlog. Thank you to Aleksandar Vukajlovic <vukajlo at finsoft
+ dot co dot yu> for citing the full cause with its supporting
+ documentation and explanation.
+
Thu Feb 22 15:59:12 UTC 2007 Steve Huston <shuston@riverace.com>
* ace/config-win32-common.h: Change the comments around ACE_HAS_PENTIUM
diff --git a/ACE/tests/MT_SOCK_Test.cpp b/ACE/tests/MT_SOCK_Test.cpp
index 11220d36e29..adfd3dc58ee 100644
--- a/ACE/tests/MT_SOCK_Test.cpp
+++ b/ACE/tests/MT_SOCK_Test.cpp
@@ -101,10 +101,12 @@ client (void *arg)
{
// This is, I believe, more of an issue with WinXP-64 _server_
// side, but we can trap it here since we know we're connecting
- // to localhost. It appears, though I haven't found documentation
- // stating, that WinXP-64 will appear to accept connections at the
- // TCP level past the listen backlog but if data arrives before the
- // actual application-level accept() occurs, the connection is reset.
+ // to localhost. Some Windows versions will appear to accept
+ // connections at the TCP level past the listen backlog but if
+ // data arrives before the actual application-level accept() occurs,
+ // the connection is reset. This is caused when we trip the Windows
+ // SYN attack prevention (http://technet2.microsoft.com/WindowsServer/
+ // en/library/910c8482-e5e5-4e2c-9ea4-11301ddfc4661033.mspx?mfr=true)
// So, if we get a reset on the first send, don't flag the error -
// just note it and act like the connection was refused.
if (c == ACE_ALPHABET && errno == ECONNRESET) // First byte sent