]> git.ipfire.org Git - thirdparty/kea.git/commitdiff
[1725] disable sockcreator udp6_reate test on solaris 2.10 as OS is broken.
authorJINMEI Tatuya <jinmei@isc.org>
Fri, 1 Feb 2013 22:43:54 +0000 (14:43 -0800)
committerJINMEI Tatuya <jinmei@isc.org>
Sat, 2 Feb 2013 03:22:52 +0000 (19:22 -0800)
configure.ac
src/bin/sockcreator/tests/sockcreator_tests.cc

index 6d1a388f1a2de9e4d2b61c55245ef75bf7317271..14e2145612467e694cea39296dc61ccd7d59b0b6 100644 (file)
@@ -232,6 +232,21 @@ AM_CONDITIONAL(SET_ENV_LIBRARY_PATH, test $SET_ENV_LIBRARY_PATH = yes)
 AC_SUBST(SET_ENV_LIBRARY_PATH)
 AC_SUBST(ENV_LIBRARY_PATH)
 
+# Our experiments have shown Solaris 10 has broken support for the
+# IPV6_USE_MIN_MTU socket option for getsockopt(); it doesn't return the value
+# previously set via setsockopt().  We know it doesn't happen on one instance
+# on Solaris 11, but we don't know whether it happens for any Solaris 10
+# implementations or for earlier versions of Solaris.  In any case, at the
+# moment this matters for only one unittest case, so we'll simply disable
+# the affected test using the following definition with the specific hardcoding
+# of that version of Solaris.
+case "$host" in
+*-solaris2.10)
+       AC_DEFINE([HAVE_BROKEN_GET_IPV6_USE_MIN_MTU], [1],
+       [Define to 1 if getsockopt(IPV6_USE_MIN_MTU) does not work])
+       ;;
+esac
+
 m4_define([_AM_PYTHON_INTERPRETER_LIST], [python python3.3 python3.2 python3.1 python3])
 AC_ARG_WITH([pythonpath],
 AC_HELP_STRING([--with-pythonpath=PATH],
index 9604567c4b98e281e25051b176bc7b6a1bfeb4ab..b834e1cbb8a6d5fa5e9f97315ef4e35ec618bfa4 100644 (file)
@@ -12,6 +12,8 @@
 // OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
 // PERFORMANCE OF THIS SOFTWARE.
 
+#include <config.h>
+
 #include "../sockcreator.h"
 
 #include <util/unittests/fork.h>
@@ -195,7 +197,12 @@ TEST(get_sock, tcp4_create) {
     testAnyCreate<sockaddr_in>(SOCK_STREAM, tcpCheck);
 }
 
-TEST(get_sock, udp6_create) {
+#ifdef HAVE_BROKEN_GET_IPV6_USE_MIN_MTU
+TEST(get_sock, DISABLED_udp6_create)
+#else
+TEST(get_sock, udp6_create)
+#endif
+{
     testAnyCreate<sockaddr_in6>(SOCK_DGRAM, udpCheck<sockaddr_in6>);
 }