Applied patch 1848365 to accept any boolean value for the -mcastloop option (plus...
authorpatthoyts <patthoyts>
Sat, 5 Jul 2008 20:41:44 +0000 (20:41 +0000)
committerpatthoyts <patthoyts>
Sat, 5 Jul 2008 20:41:44 +0000 (20:41 +0000)
ChangeLog
generic/udp_tcl.c
tests/udp-srv.test
tests/udp.test

index e333386da5283263e61abb23a04c480695bbb53a..1fd4ab6de8b0a6cfd5b92aec2c16b43a2d8d1142 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+2008-07-05  Pat Thoyts  <patthoyts@users.sourceforge.net>
+
+       * generic/udp_tcl.c: Applied patch 1848365 to accept any boolean
+       value for the -mcastloop option (plus tests).
+
 2007-04-10  Pat Thoyts  <patthoyts@users.sourceforge.net>
 
        * generic/udp_tcl.c: Applied patch 1693037 from Uwe Klein to
index 3f1978715b0ce06879a27d6978271068ef7276ae..4719097adfc93054deef1517bff07f83ff5d250d 100644 (file)
@@ -1430,7 +1430,7 @@ udpSetOption(ClientData instanceData, Tcl_Interp *interp,
     } else if (!strcmp("-mcastloop", optionName)) {
 
         int tmp = 1;
-        r = Tcl_GetInt(interp, newValue, &tmp);
+        r = Tcl_GetBoolean(interp, newValue, &tmp);
         if (r == TCL_OK) {
            unsigned char ctmp = (unsigned char)tmp;
             if (setsockopt(statePtr->sock, IPPROTO_IP, IP_MULTICAST_LOOP,
@@ -1475,6 +1475,7 @@ ErrorToObj(const char * prefix)
 #ifdef WIN32
     LPVOID sMsg;
     DWORD len = 0;
+
     len = FormatMessageW(FORMAT_MESSAGE_ALLOCATE_BUFFER
                          | FORMAT_MESSAGE_FROM_SYSTEM
                          | FORMAT_MESSAGE_IGNORE_INSERTS,
index 6079cb24e7af215eb815f10d972b742107737a52..1a3615a8bb08f2b4c02f9b0086d5c18e86b4f416 100644 (file)
@@ -8,10 +8,10 @@ if {[catch {
 
 package require udp
 
-# Some tests are marked as slow as they can take 30s to test a volume of packets.
-# We generally just test for correctness and these do not significantly contribute
-# in testing correctness.
-::tcltest::testConstraint slow 1
+# Some tests are marked as slow as they can take 30s to test a volume
+# of packets.  We generally just test for correctness and these do not
+# significantly contribute in testing correctness.
+::tcltest::testConstraint slow 0
 
 # Enable printing timing information during some tests.
 ::tcltest::testConstraint timestamp 1
index 14318b42acecfc40ad4e96a2e835d552e8368233..6b81945b589cb3412674b63297d29b258c0f4fd4 100644 (file)
@@ -94,6 +94,24 @@ test udp-2.2 {udp_open on named port} {pcOnly} {
     } msg] $msg
 } {0 0x007b}
 
+test udp-3.8 {multicastloop can be set to true} \
+    -body {
+       set s [udp_open]
+       fconfigure $s -mcastloop "true"
+       fconfigure $s -mcastloop
+    } -result {1} -cleanup {
+       close $s
+    }
+
+test udp-3.9 {multicastloop can be set to false} \
+    -body {
+       set s [udp_open]
+       fconfigure $s -mcastloop "true"
+       fconfigure $s -mcastloop "no"
+       fconfigure $s -mcastloop
+    } -result {0} -cleanup {
+       close $s
+    }
 
 # -------------------------------------------------------------------------
 # cleanup