**Testing the upcoming IPv6 support for Tcl** This page collects test results from the CVS branch that adds IPv6 support to Tcl. To help with the testing, pull the '''rmax-ipv6-branch''' from Tcl's CVS (details http://wiki.tcl.tk/25947#pagetoc9eafe239%|%here%|%) and run the usual `configure/make/make test` sequence on it. Please update the table to reflect the current state of testing. ***Test Results*** %|Date|OS/Version|$tcl_platform(machine)|Tester|Comment|% &|2010-03-26|NetBSD 5.1 snapshot|x86_64|[rmax]|OK|& &|2010-03-26|NetBSD 5.02|i386|[bch]|OK|& &|2010-03-27|NetBSD 5.99.24 (-current)|i386|[EG]|OK|& &|2010-03-26|openSUSE 11.2|x86_64|[rmax]|OK|& &|2010-03-29|SuSE Linux 9.0|i686|[ak]|OK|& &|2010-03-29|RedHat Linux FC4|x86_64|[ak]|OK|& &|2010-03-26|OpenSolaris 2009.6|x86_64|[rmax]|OK|& &|2010-03-29|Solaris 2.8 (gcc)|sun4u|[ak]|OK|& &|2010-03-29|Solaris 2.8 (sun cc)|sun4u|[ak]|OK|& &|2010-03-29|Solaris 2.10 (gcc)|i86pc|[ak]|OK|& &|2010-03-29|Solaris 2.10 (sun cc)|i86pc|[ak]|OK|& &|2010-03-27|MacOS X 10.5 (gcc)|i386|[dkf]|OK|& &|2010-03-29|MacOS X 10.5 (Leopard, gcc)|i386|[ak]|OK|& &|2010-03-29|MacOS X 10.4 (Tiger, gcc)|i386|[ak]|http://wiki.tcl.tk/25947#pagetoc96a528a8%|%FAIL (4)%|%|& &|2010-03-29|HPUX 11.00 (hp cc)|9000/800|[ak]|http://wiki.tcl.tk/25947#pagetocf8372752%|%FAIL (2)%|%|& &|2010-03-29|HPUX 11.00 (gcc)|9000/800|[ak]|http://wiki.tcl.tk/25947#pagetocf8372752%|%FAIL (2)%|%|& &|2010-03-29|HPUX 11.22 (hp cc)|ia64|[ak]|http://wiki.tcl.tk/25947#pagetoc7df8280a%|%FAIL (5)%|%|& &|2010-03-29|HPUX 11.22 (gcc)|ia64|[ak]|http://wiki.tcl.tk/25947#pagetoc7df8280a%|%FAIL (5)%|%|& &|2010-03-29|AIX 5.1 (cc)|000C763E4C00|[ak]|http://wiki.tcl.tk/25947#pagetocd2d3e826%|%FAIL (3)%|%|& &|2010-03-30|Windows XP (mingw/msys)|intel|[kbk]|http://wiki.tcl.tk/25947#pagetoce3edf2e0%|%FAIL (6)%|%|& &|yyyy-mm-dd|Example Failure|T9000|[rmax]|FAIL (1)|& ***Instructions for editing the Table*** * If `make test` on rmax-ipv6-branch shows failures that are not present in the rmax-ipv6-merge tag, report FAIL, otherwise report OK. * If the branch used to be working, but breaks at some point, leave the OK entry there and add a FAIL entry below it. * If it used to fail before, but works now, update the existing line. * For FAIL entries, please add a section below the table and paste a representative sample of the output of failing tests. ***Failing Tests*** ****(1) Example failure**** `paste your test failures here` ****(2) HPUX 11.0**** ====== cc: "unix/tclUnixChan.c", line 1686: error 1588: "AF_INET6" undefined. gcc: unix/tclUnixChan.c:1686: error: `AF_INET6' undeclared (first use in this function) ====== ****(3) AIX 5.1 (strict C89 compiler)**** ====== "unix/tclUnixSock.c", line 706.17: 1506-275 (S) Unexpected text 'int' encountered. "unix/tclUnixSock.c", line 706.21: 1506-045 (S) Undeclared identifier flags. "unix/tclUnixSock.c", line 918.13: 1506-275 (S) Unexpected text 'int' encountered. "unix/tclUnixSock.c", line 918.17: 1506-045 (S) Undeclared identifier reuseaddr. "unix/tclUnixSock.c", line 1244.5: 1506-275 (S) Unexpected text 'struct' encountered. "unix/tclUnixSock.c", line 1244.12: 1506-045 (S) Undeclared identifier addrinfo. "unix/tclUnixSock.c", line 1244.22: 1506-045 (S) Undeclared identifier p. "unix/tclUnixSock.c", line 1245.10: 1506-045 (S) Undeclared identifier v4head. "unix/tclUnixSock.c", line 1245.26: 1506-045 (S) Undeclared identifier v4ptr. "unix/tclUnixSock.c", line 1246.10: 1506-045 (S) Undeclared identifier v6head. "unix/tclUnixSock.c", line 1246.26: 1506-045 (S) Undeclared identifier v6ptr. ====== ****(4) MacOS X 10.4**** ====== ==== chan-16.9 chan command: pending input subcommand FAILED ==== Contents of test case: after idle chan-16.9-client vwait ::chan-16.9-done set ::chan-16.9-data ---- Test setup failed: couldn't open socket: connection refused ---- errorInfo(setup): couldn't open socket: connection refused while executing "socket 127.0.0.1 [lindex [fconfigure $::server -sockname] 2]" ("uplevel" body line 33) invoked from within "uplevel 1 $setup" ---- errorCode(setup): POSIX ECONNREFUSED {connection refused} ====== ****(5) HPUX 11.22**** ====== ==== socket-2.9 socket conflict FAILED ==== Contents of test case: set s [socket -server accept 0] file delete $path(script) set f [open $path(script) w] puts -nonewline $f "socket -server accept [lindex [fconfigure $s -sockname] 2]" close $f set f [open "|[list [interpreter] $path(script)]" r] gets $f after 100 close $f ---- Result was: couldn't open socket: address family not supported by protocol family while executing "socket -server accept 56789" (file "/home/andreask/workbench/IPv6/build/tcl-8.6-rmax-ipv6-branch/script" line 1) ---- Result should have been (glob matching): couldn't open socket: address already in use* ====== **** (6) Windows XP (mingw/msys) **** ====== ==== socket-8.1 testing -async flag on sockets FAILED ==== Contents of test case: # NOTE: This test may fail on some Solaris 2.4 systems. If it does, check # that you have these patches installed (using showrev -p): # # 101907-05, 101925-02, 101945-14, 101959-03, 101969-05, 101973-03, # 101977-03, 101981-02, 101985-01, 102001-03, 102003-01, 102007-01, # 102011-02, 102024-01, 102039-01, 102044-01, 102048-01, 102062-03, # 102066-04, 102070-01, 102105-01, 102153-03, 102216-01, 102232-01, # 101878-03, 101879-01, 101880-03, 101933-01, 101950-01, 102030-01, # 102057-08, 102140-01, 101920-02, 101921-09, 101922-07, 101923-03 # # If after installing these patches you are still experiencing a problem, # please email jyl@eng.sun.com. We have not observed this failure on # Solaris 2.5, so another option (instead of installing these patches) is # to upgrade to Solaris 2.5. set s [socket -server accept -myaddr 127.0.0.1 0] proc accept {s a p} { global x puts $s bye close $s set x done } set s1 [socket -async 127.0.0.1 [lindex [fconfigure $s -sockname] 2]] vwait x gets $s1 ---- Test generated error; Return code was: 1 ---- Return code should have been one of: 0 2 ---- errorInfo: couldn't open socket: resource temporarily unavailable while executing "socket -async 127.0.0.1 [lindex [fconfigure $s -sockname] 2]" ("uplevel" body line 23) invoked from within "uplevel 1 $script" ---- errorCode: POSIX EAGAIN {resource temporarily unavailable} ---- Test cleanup failed: can not find channel named "sock1496" ---- errorInfo(cleanup): can not find channel named "sock1496" while executing "close $s1" ("uplevel" body line 3) invoked from within "uplevel 1 $cleanup" ---- errorCode(cleanup): TCL LOOKUP CHANNEL sock1496 ==== socket-8.1 FAILED ==== socket-12.1 testing inheritance of server sockets FAILED ==== Contents of test case: # Launch script2 and wait 5 seconds ### exec [interpreter] script2 & set p [open "|[list [interpreter] $path(script2)]" r] gets $p listen after 5000 { set ok_to_proceed 1 } vwait ok_to_proceed # If we can still connect to the server, the socket got inherited. if {[catch {close [socket 127.0.0.1 $listen]}]} { return {server socket was not inherited} } else { return {server socket was inherited} } ---- Result was: server socket was inherited ---- Result should have been (exact matching): server socket was not inherited ==== socket-12.1 FAILED ====== ---- ***Pulling the branch from CVS*** Run the following two commands while in the directory into which you want to put the checkout. ====== cvs -d:pserver:anonymous@tcl.cvs.sourceforge.net:/cvsroot/tcl login cvs -z3 -d:pserver:anonymous@tcl.cvs.sourceforge.net:/cvsroot/tcl co -P -r rmax-ipv6-branch tcl ====== Once you have checked it out, you can use `cvs up` from within the tcl directory to pull the latest version.<
> Use `cvs up -r rmax-ipv6-merge` and `cvs up -r rmax-ipv6-branch` to switch between the two tags for comparing test results.<
>Alternatively you can rename the tcl directory and do a second checkout with the other tag to have the two versions side by side. <> Development