auth-nonascii test fails or segfaults depending on system environment
Mike Miller
mtmiller at debian.org
Mon Jul 10 16:29:44 PDT 2017
Hi,
I noticed that the recently added test "auth-nonascii" fails as
currently written under a handful of different system configurations.
In short, I think using LC_CTYPE in the script is not a strong enough
constraint, because the caller's LC_ALL may override it if set. Using
LC_ALL as in the following patch fixes this for me.
diff --git a/tests/auth-nonascii b/tests/auth-nonascii
index d930b117d29c..1da8de25464a 100755
--- a/tests/auth-nonascii
+++ b/tests/auth-nonascii
@@ -34,7 +34,7 @@ set -x
for CHARSET in UTF-8 ISO8859-2; do
echo -n "Connecting to obtain cookie (with password charset ${CHARSET})... "
CERTARGS="-c ${KEY} --key-password $(cat ${srcdir}/pass-${CHARSET})"
- ( echo "test" | LC_CTYPE=cs_CZ.${CHARSET} LD_PRELOAD=libsocket_wrapper.so $OPENCONNECT -q $ADDRESS:443 -u test $CERTARGS --servercert=d66b507ae074d03b02eafca40d35f87dd81049d3 --cookieonly --passwd-on-stdin ) ||
+ ( echo "test" | LC_ALL=cs_CZ.${CHARSET} LD_PRELOAD=libsocket_wrapper.so $OPENCONNECT -q $ADDRESS:443 -u test $CERTARGS --servercert=d66b507ae074d03b02eafca40d35f87dd81049d3 --cookieonly --passwd-on-stdin ) ||
fail $PID "Could not connect with charset ${CHARSET}!"
done
I think it's also worth reporting that OpenConnect segfaults if the
cs_CZ locales are not available on the system when this test runs,
either with or without this change:
iconv: Invalid or incomplete multibyte or wide character
*** Error in `/.../.libs/openconnect': free(): invalid pointer: 0x00007ffe53d2d7e4 ***
free called from load_pkcs12_certificate at gnutls.c:526
--
mike
More information about the openconnect-devel
mailing list