From: Frank Lichtenheld <[email protected]>

Makes it easier to use t_client.sh in other contexts.

This is based on work by Gert Doering for the t_server
test infrastructure.

Change-Id: Ia4a9a6bafb6bcb3fe331a92cfbb64be78f6aa33a
Signed-off-by: Frank Lichtenheld <[email protected]>
Acked-by: Razvan Cojocaru <[email protected]>
Gerrit URL: https://gerrit.openvpn.net/c/openvpn/+/1756
---

This change was reviewed on Gerrit and approved by at least one
developer. I request to merge it to master.

Gerrit URL: https://gerrit.openvpn.net/c/openvpn/+/1756
This mail reflects revision 3 of this Change.

Acked-by according to Gerrit (reflected above):
Razvan Cojocaru <[email protected]>

        
diff --git a/tests/t_client.rc-sample b/tests/t_client.rc-sample
index 2a4bdb4..003dec4 100644
--- a/tests/t_client.rc-sample
+++ b/tests/t_client.rc-sample
@@ -14,8 +14,8 @@
 #FPING_EXTRA_ARGS="-t 1000"
 
 # Load EXPECT_IFCONFIG* parameters from cache
-if [ -r "${top_builddir}/t_client_ips.rc" ]; then
-    . "${top_builddir}/t_client_ips.rc"
+if [ -r "${t_client_ips_rc}" ]; then
+    . "${t_client_ips_rc}"
 else
     echo "NOTICE: missing t_client_ips.rc will be auto-generated"
 fi
@@ -63,6 +63,12 @@
 # PING6_HOSTS_x      = "these hosts musts ping when openvpn is up (IPv6 
fping6)"
 # EXPECT_FAIL_x      = "instead of waiting for connection wait for this error 
message"
 #
+# Note that the EXPECT_IFCONFIG{4,6} options are not generally required, the
+# tests will remember the ip address they got on the first run in 
t_client_ips.rc
+# and will expect to get the same address again. But it can be useful to 
hard-code
+# the IP when the server is expected to send a very specific address, e.g. when
+# using ccd on the server-side or in a P2P scenario.
+#
 # hook test options:
 #
 # CHECK_SKIP_x      = "commands to execute before openvpn, skip test on 
failure"
diff --git a/tests/t_client.sh.in b/tests/t_client.sh.in
index 0ef2ec5..9f32a5a 100755
--- a/tests/t_client.sh.in
+++ b/tests/t_client.sh.in
@@ -19,6 +19,9 @@
 srcdir="${srcdir:-.}"
 top_builddir="${top_builddir:-..}"
 openvpn="${openvpn:-${top_builddir}/src/openvpn/openvpn}"
+t_client_ips_rc="${t_client_ips_rc:-${top_builddir}/t_client_ips.rc}"
+update_t_client_ips="${update_t_client_ips:-${srcdir}/update_t_client_ips.sh}"
+
 if [ -r "${top_builddir}"/t_client.rc ] ; then
     . "${top_builddir}"/t_client.rc
 elif [ -r "${srcdir}"/t_client.rc ] ; then
@@ -326,7 +329,7 @@
     # If EXCEPT_IFCONFIG* variables for this test are missing, run an --up
     # script to generate them dynamically.
     if [ -z "$expect_ifconfig4" ] || [ -z "$expect_ifconfig6" ]; then
-        up="--setenv TESTNUM $SUF --setenv TOP_BUILDDIR ${top_builddir} 
--script-security 2 --up ${srcdir}/update_t_client_ips.sh"
+        up="--setenv TESTNUM $SUF --setenv RC ${t_client_ips_rc} 
--script-security 2 --up ${update_t_client_ips}"
     else
         up=""
     fi
diff --git a/tests/update_t_client_ips.sh b/tests/update_t_client_ips.sh
index 96e3826..013504f 100755
--- a/tests/update_t_client_ips.sh
+++ b/tests/update_t_client_ips.sh
@@ -2,9 +2,6 @@
 #
 # This --up script caches the IPs handed out by the test VPN server to a file
 # for later use.
-
-RC="$TOP_BUILDDIR/t_client_ips.rc"
-
 grep EXPECT_IFCONFIG4_$TESTNUM= $RC > /dev/null 2>&1
 if [ $? -ne 0 ]; then
     echo "EXPECT_IFCONFIG4_$TESTNUM=$ifconfig_local" >> $RC


_______________________________________________
Openvpn-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/openvpn-devel

Reply via email to