[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[gnunet] 12/19: Fixed Generic and specific test setup and code.
From: |
gnunet |
Subject: |
[gnunet] 12/19: Fixed Generic and specific test setup and code. |
Date: |
Wed, 28 Aug 2024 11:19:42 +0200 |
This is an automated email from the git hooks/post-receive script.
t3sserakt pushed a commit to branch master
in repository gnunet.
commit ecbec010c90fbcd1ea3542eee5c91b50ad2845b9
Author: t3sserakt <t3ss@posteo.de>
AuthorDate: Fri Aug 23 10:23:55 2024 +0200
Fixed Generic and specific test setup and code.
---
scripts/netjail/netjail_start_new.sh | 47 +++++++++++++++----
scripts/netjail/netjail_test_master.sh | 22 ++++-----
src/service/arm/test_arm_plugin_probnat.c | 15 ++++++-
src/service/arm/test_arm_probnat.conf | 55 -----------------------
src/service/arm/test_arm_probnat_host.conf | 18 +++-----
src/service/arm/testing_arm_cmd_start_peer.c | 9 +++-
src/service/transport/template_tng_cfg_peer1.conf | 8 ----
src/service/transport/test_tng_defaults.conf | 3 --
8 files changed, 77 insertions(+), 100 deletions(-)
diff --git a/scripts/netjail/netjail_start_new.sh
b/scripts/netjail/netjail_start_new.sh
index ed9ba71e4..1a57ae8f7 100755
--- a/scripts/netjail/netjail_start_new.sh
+++ b/scripts/netjail/netjail_start_new.sh
@@ -60,6 +60,9 @@ configure_carrier_subnet()
{
X=$1
+ netjail_bridge
+ CARRIER_BRIDGE=$RESULT
+
for Y in $(seq ${CARRIER_SUBNETS[$X]}); do
echo gaga 4
@@ -102,18 +105,30 @@ configure_carrier_subnet()
netjail_node
SUBNET_ROUTERS[$X,$Y]=$RESULT
netjail_node_link_bridge ${SUBNET_ROUTERS[$X,$Y]}
${CARRIER_ROUTER_NETS[$X]} $ADDRESS 16
- SUBNET_ROUTER_EXT_IF[$X]=$RESULT
+ SUBNET_ROUTER_EXT_IF[$X,$Y]=$RESULT
netjail_bridge
SUBNET_ROUTER_NETS[$X,$Y]=$RESULT
configure_subnet_peer $X $Y
echo gaga 5.5 ${SUBNET_ROUTERS[$X,$Y]}
-
+
+ ROUTER_ADDRESS=${CARRIER_NET/X/$X}
+ ROUTER_ADDRESS=${ROUTER_ADDRESS/Y/$((${CARRIER_SUBNETS[$X]}+1))}
+ ROUTER_ADDRESS=${ROUTER_ADDRESS/Z/0}
+
+ ip netns exec ${SUBNET_ROUTERS[$X,$Y]} ip route add $ROUTER_ADDRESS
dev ${SUBNET_ROUTER_EXT_IF[$X,$Y]}
+ ip netns exec ${SUBNET_ROUTERS[$X,$Y]} ip route add default via
$ROUTER_ADDRESS
+ ip netns exec ${SUBNET_ROUTERS[$X,$Y]} sleep 2000 &
+
ADDRESS=${CARRIER_NET/X/$X}
ADDRESS=${ADDRESS/Y/${SUBNET_NODE_NUMBER[$X]}}
- ADDRESS=${ADDRESS/Z/$((${CARRIER_SUBNET_PEERS[$X,$Y]+}1))}
+ ADDRESS=${ADDRESS/Z/$((${CARRIER_SUBNET_PEERS[$X,$Y]}+1))}
+
netjail_node_link_bridge ${SUBNET_ROUTERS[$X,$Y]}
${SUBNET_ROUTER_NETS[$X,$Y]} $ADDRESS 24
+
+ netjail_node_add_nat ${SUBNET_ROUTERS[$X,$Y]} $ADDRESS 24
+
for Z in $(seq ${CARRIER_SUBNET_PEERS[$X,$Y]}); do
netjail_node_add_default ${SUBNET_PEER[$X,$Y,$Z]} $ADDRESS
done
@@ -141,7 +156,7 @@ configure_carrier_peer()
ADDRESS=${ADDRESS/Z/0}
netjail_node
CARRIER_PEER[$X,$Y]=$RESULT
- netjail_node_link_bridge ${CARRIER_PEER[$X,$Y]}
${CARRIER_ROUTER_NETS[$X]} $ADDRESS 24
+ netjail_node_link_bridge ${CARRIER_PEER[$X,$Y]}
${CARRIER_ROUTER_NETS[$X]} $ADDRESS 16
done
}
@@ -187,10 +202,11 @@ configure_carriers ()
# FIXME configure backbone peers
echo gaga 2
- ADDRESS=${INET/X/$TOTAL_NODES}
+ ADDRESS=${INET/X/$(($BACKBONE_PEERS+$X))}
netjail_node
CARRIER_ROUTERS[$X]=$RESULT
netjail_node_link_bridge ${CARRIER_ROUTERS[$X]} $NETWORK_NET $ADDRESS 16
+ CARRIER_ROUTER_EXT_IF[$X]=$RESULT
netjail_bridge
CARRIER_ROUTER_NETS[$X]=$RESULT
@@ -199,10 +215,19 @@ configure_carriers ()
echo gaga 7 ${CARRIER_PEERS[$X]}
+ ADDRESS=${INET/X/$XX}
+ ip netns exec ${CARRIER_ROUTERS[$X]} ip route add $ADDRESS dev
${CARRIER_ROUTER_EXT_IF[$X]}
+ ip netns exec ${CARRIER_ROUTERS[$X]} ip route add default via $ADDRESS
+ ip netns exec ${CARRIER_ROUTERS[$X]} sleep 2001 &
+
ROUTER_ADDRESS=${CARRIER_NET/X/$X}
- ROUTER_ADDRESS=${ROUTER_ADDRESS/Y/$((${SUBNET_NODE_NUMBER[$X]}+1))}
+ ROUTER_ADDRESS=${ROUTER_ADDRESS/Y/$((${CARRIER_SUBNETS[$X]}+1))}
ROUTER_ADDRESS=${ROUTER_ADDRESS/Z/0}
- netjail_node_link_bridge ${CARRIER_ROUTERS[$X]} ${CARRIER_ROUTER_NETS[$X]}
$ROUTER_ADDRESS 24
+
+ netjail_node_link_bridge ${CARRIER_ROUTERS[$X]} ${CARRIER_ROUTER_NETS[$X]}
$ROUTER_ADDRESS 16
+
+ netjail_node_add_nat ${CARRIER_ROUTERS[$X]} $ROUTER_ADDRESS 16
+
for Y in $(seq ${CARRIER_PEERS[$X]}); do
netjail_node_add_default ${CARRIER_PEER[$X,$Y]} $ROUTER_ADDRESS
done
@@ -252,15 +277,21 @@ for X in $(seq $BACKBONE_PEERS); do
echo gaga 0 $BACKBONE_PEER_TESTBED_PLUGIN
netjail_node
BB_PEERS[$X]=$RESULT
- ADDRESS=${INET/X/$TOTAL_NODES}
+ ADDRESS=${INET/X/$X}
netjail_node_link_bridge ${BB_PEERS[$X]} $NETWORK_NET $ADDRESS 16
done
IPT=iptables-nft
+let XX=$BACKBONE_PEERS+$CARRIERS+1
+
for X in $(seq $CARRIERS); do
TOTAL_NODES=$(($TOTAL_NODES+1))
configure_carriers $X
done
+netjail_node
+GATEWAY=$RESULT
+ADDRESS=${INET/X/$XX}
+netjail_node_link_bridge $GATEWAY $NETWORK_NET $ADDRESS 16
diff --git a/scripts/netjail/netjail_test_master.sh
b/scripts/netjail/netjail_test_master.sh
index 9487f3106..ecde89797 100755
--- a/scripts/netjail/netjail_test_master.sh
+++ b/scripts/netjail/netjail_test_master.sh
@@ -4,15 +4,15 @@ then
echo "You have to create the directory '/run/netns'."
exit 77
fi
-if [ -f /proc/sys/kernel/unprivileged_userns_clone ];
-then
- if [ "$(cat /proc/sys/kernel/unprivileged_userns_clone)" != 1 ];
- then
- echo -e "Error during test setup: The kernel parameter
'kernel.unprivileged_userns_clone' has to be set to 1! One has to execute\n\n
sysctl kernel.unprivileged_userns_clone=1\n"
- exit 77
- fi
-else
- echo -e "Error during test setup: The kernel lacks the parameter
'kernel.unprivileged_userns_clone'\n"
- exit 77
-fi
+#if [ -f /proc/sys/kernel/unprivileged_userns_clone ];
+#then
+# if [ "$(cat /proc/sys/kernel/unprivileged_userns_clone)" != 1 ];
+# then
+# echo -e "Error during test setup: The kernel parameter
'kernel.unprivileged_us#erns_clone' has to be set to 1! One has to execute\n\n
sysctl kernel.unprivileged_user#ns_clone=1\n"
+# exit 77
+# fi
+#else
+# echo -e "Error during test setup: The kernel lacks the parameter
'kernel.unprivile#ged_userns_clone'\n"
+# exit 77
+#fi
exec unshare -r -nmU bash -c "mount -t tmpfs --make-rshared tmpfs /run/netns;
$*"
diff --git a/src/service/arm/test_arm_plugin_probnat.c
b/src/service/arm/test_arm_plugin_probnat.c
index 4dfb0f2ba..63830928f 100644
--- a/src/service/arm/test_arm_plugin_probnat.c
+++ b/src/service/arm/test_arm_plugin_probnat.c
@@ -41,9 +41,20 @@ get_conf_name (const char *my_node_id)
if (0 == strcmp ("000000", dash))
conf_name = "test_arm_probnat_host.conf";
+ else if (0 == strcmp ("000003", dash))
+ conf_name = "test_arm_probnat_peer1.conf";
+ else if (0 == strcmp ("000006", dash))
+ conf_name = "test_arm_probnat_peer1.conf";
else
- conf_name = "test_arm_probnat.conf";
+ {
+ GNUNET_log (GNUNET_ERROR_TYPE_ERROR,
+ "Getting conf for id %s failed \n",
+ my_node_id);
+ }
+ GNUNET_log (GNUNET_ERROR_TYPE_DEBUG,
+ "Using conf %s",
+ conf_name);
return conf_name;
}
@@ -59,7 +70,7 @@ GNUNET_TESTING_MAKE_PLUGIN (
GNUNET_OS_PROCESS_EXITED,
0,
"sleep",
- "300",
+ "3000",
NULL),
GNUNET_TESTING_cmd_stop_peer ("stop",
"start")
diff --git a/src/service/arm/test_arm_probnat.conf
b/src/service/arm/test_arm_probnat.conf
deleted file mode 100644
index 7b67fab66..000000000
--- a/src/service/arm/test_arm_probnat.conf
+++ /dev/null
@@ -1,55 +0,0 @@
-@INLINE@ ../transport/template_tng_cfg_peer1.conf
-[PATHS]
-GNUNET_TEST_HOME = $GNUNET_TMP/test-transport/api-tcp-p1/
-
-[transport]
-BINARY = gnunet-service-transport
-#PREFIX = valgrind --leak-check=full --track-origins=yes --trace-children=yes
--log-file=$GNUNET_TEST_HOME/vg_peer1-%p
-UNIXPATH = $GNUNET_RUNTIME_DIR/tng-p1.sock
-
-[PEER]
-PRIVATE_KEY = $GNUNET_RUNTIME_DIR/private.key
-
-[communicator-tcp]
-BINARY = gnunet-communicator-tcp
-BINDTO = 192.168.15.1:60002
-DISABLE_V6 = YES
-IMMEDIATE_START = YES
-UNIXPATH = $GNUNET_RUNTIME_DIR/tcp-comm-p1.sock
-#PREFIX = valgrind --leak-check=full --track-origins=yes --trace-children=yes
--log-file=$GNUNET_TEST_HOME/vg_ctpeer1-%p
-#PREFIX = xterm -geometry 100x85 -T peer1 -e gdb --args
-
-[communicator-udp]
-#PREFIX = valgrind --leak-check=full --track-origins=yes --trace-children=yes
--log-file=$GNUNET_TEST_HOME/vg_cupeer1-%p
-BINARY = gnunet-communicator-udp
-BINDTO = 192.168.15.1:60002
-DISABLE_V6 = YES
-IMMEDIATE_START = YES
-UNIXPATH = $GNUNET_RUNTIME_DIR/udp-comm-p1.sock
-
-[peerstore]
-IMMEDIATE_START = YES
-USE_INCLUDED_HELLOS = YES
-PREFIX = valgrind --leak-check=full --track-origins=yes --trace-children=yes
--log-file=$GNUNET_TEST_HOME/vg_peer1-%p
-
-[topology]
-IMMEDIATE_START = YES
-PREFIX = valgrind --leak-check=full --track-origins=yes --trace-children=yes
--log-file=$GNUNET_TEST_HOME/vg_peer1-transport-%p
-
-[dht]
-IMMEDIATE_START = YES
-PREFIX = valgrind --leak-check=full --track-origins=yes --trace-children=yes
--log-file=$GNUNET_TEST_HOME/vg_peer1-%p
-
-[fs]
-IMMEDIATE_START = YES
-
-[hostlist]
-IMMEDIATE_START = YES
-SERVERS = http://192.168.1.1:8080/
-PREFIX = valgrind --leak-check=full --track-origins=yes --trace-children=yes
--log-file=$GNUNET_TEST_HOME/vg_peer1-%p
-
-[core]
-PREFIX = valgrind --leak-check=full --track-origins=yes --trace-children=yes
--log-file=$GNUNET_TEST_HOME/vg_peer1-transport-%p
-
-[cadet]
-PREFIX = valgrind --leak-check=full --track-origins=yes --trace-children=yes
--log-file=$GNUNET_TEST_HOME/vg_peer1-transport-%p
diff --git a/src/service/arm/test_arm_probnat_host.conf
b/src/service/arm/test_arm_probnat_host.conf
index 406b8dcc9..a4c1995d7 100644
--- a/src/service/arm/test_arm_probnat_host.conf
+++ b/src/service/arm/test_arm_probnat_host.conf
@@ -1,31 +1,26 @@
@INLINE@ ../transport/template_tng_cfg_peer1.conf
-[PATHS]
-GNUNET_TEST_HOME = $GNUNET_TMP/test-transport/api-tcp-p1/
+
+[PEER]
+#PRIVATE_KEY = $GNUNET_RUNTIME_DIR/private_host.key
[transport]
BINARY = gnunet-service-transport
#PREFIX = valgrind --leak-check=full --track-origins=yes --trace-children=yes
--log-file=$GNUNET_TEST_HOME/vg_peer1-%p
-UNIXPATH = $GNUNET_RUNTIME_DIR/tng-p1.sock
-
-[PEER]
-PRIVATE_KEY = $GNUNET_RUNTIME_DIR/private.key
[communicator-tcp]
BINARY = gnunet-communicator-tcp
-BINDTO = 192.168.15.1:60002
+BINDTO = 60002
DISABLE_V6 = YES
IMMEDIATE_START = YES
-UNIXPATH = $GNUNET_RUNTIME_DIR/tcp-comm-p1.sock
#PREFIX = valgrind --leak-check=full --track-origins=yes --trace-children=yes
--log-file=$GNUNET_TEST_HOME/vg_ctpeer1-%p
#PREFIX = xterm -geometry 100x85 -T peer1 -e gdb --args
[communicator-udp]
#PREFIX = valgrind --leak-check=full --track-origins=yes --trace-children=yes
--log-file=$GNUNET_TEST_HOME/vg_cupeer1-%p
BINARY = gnunet-communicator-udp
-BINDTO = 192.168.15.1:60002
+BINDTO = 60002
DISABLE_V6 = YES
IMMEDIATE_START = YES
-UNIXPATH = $GNUNET_RUNTIME_DIR/udp-comm-p1.sock
[peerstore]
IMMEDIATE_START = YES
@@ -42,4 +37,5 @@ IMMEDIATE_START = YES
[hostlist]
IMMEDIATE_START = YES
-OPTIONS = -p
\ No newline at end of file
+OPTIONS = -p
+EXTERNAL_DNS_NAME = 192.168.1.1
\ No newline at end of file
diff --git a/src/service/arm/testing_arm_cmd_start_peer.c
b/src/service/arm/testing_arm_cmd_start_peer.c
index 73d7ca4e7..28f68fbd9 100644
--- a/src/service/arm/testing_arm_cmd_start_peer.c
+++ b/src/service/arm/testing_arm_cmd_start_peer.c
@@ -87,14 +87,19 @@ conn_status (
enum GNUNET_GenericReturnValue connected)
{
struct GNUNET_TESTING_StartPeerState *sps = cls;
+ struct GNUNET_TESTING_AsyncContext ac = sps->ac;
- if (GNUNET_OK != connected)
+ GNUNET_log (GNUNET_ERROR_TYPE_DEBUG,
+ "We %s arm\n",
+ GNUNET_OK != connected ? "disconnected from" : "connected to");
+ if (GNUNET_NO == ac.finished && GNUNET_OK != connected)
{
GNUNET_break (0);
GNUNET_TESTING_async_fail (&sps->ac);
return;
}
- GNUNET_TESTING_async_finish (&sps->ac);
+ else if (GNUNET_NO == ac.finished)
+ GNUNET_TESTING_async_finish (&sps->ac);
}
diff --git a/src/service/transport/template_tng_cfg_peer1.conf
b/src/service/transport/template_tng_cfg_peer1.conf
index 84b3174c4..53b2ed43d 100644
--- a/src/service/transport/template_tng_cfg_peer1.conf
+++ b/src/service/transport/template_tng_cfg_peer1.conf
@@ -1,8 +1,4 @@
@INLINE@ test_tng_defaults.conf
-[PATHS]
-GNUNET_TEST_HOME = $GNUNET_TMP/test-transport/api-tcp-p1/
-GNUNET_RUNTIME_DIR = $GNUNET_TEST_HOME/runtime/
-GNUNET_USER_RUNTIME_DIR = $GNUNET_TEST_HOME/runtime/
[nat]
RETURN_LOCAL_ADDRESSES = YES
@@ -10,20 +6,16 @@ DISABLEV6 = NO
[arm]
PORT = 12005
-UNIXPATH = $GNUNET_RUNTIME_DIR/gnunet-p1-service-arm.sock
[statistics]
PORT = 12004
-UNIXPATH = $GNUNET_RUNTIME_DIR/gnunet-p1-service-statistics.sock
[resolver]
PORT = 12003
-UNIXPATH = $GNUNET_RUNTIME_DIR/gnunet-p1-service-resolver.sock
[transport]
#PREFIX = valgrind --leak-check=full
PORT = 12001
-UNIXPATH = $GNUNET_RUNTIME_DIR/gnunet-p1-service-transport.sock
[hostlist]
SERVERS = dummy
diff --git a/src/service/transport/test_tng_defaults.conf
b/src/service/transport/test_tng_defaults.conf
index 81dbb5bd7..ab501183d 100644
--- a/src/service/transport/test_tng_defaults.conf
+++ b/src/service/transport/test_tng_defaults.conf
@@ -1,8 +1,5 @@
@INLINE@ ../../../contrib/conf/gnunet/no_forcestart.conf
-[PATHS]
-GNUNET_TEST_HOME = $GNUNET_TMP/test-tng/
-
[transport]
# PREFIX = valgrind
--
To stop receiving notification emails like this one, please contact
gnunet@gnunet.org.
- [gnunet] branch master updated (7322b322b -> 9a97ab1a8), gnunet, 2024/08/28
- [gnunet] 02/19: Added test case to start Android SDK emulator., gnunet, 2024/08/28
- [gnunet] 01/19: Transport: Added test case to simulate router NAT mapping behavior., gnunet, 2024/08/28
- [gnunet] 04/19: Added sync protocol., gnunet, 2024/08/28
- [gnunet] 03/19: Added functionality to check if all services and communicators are started., gnunet, 2024/08/28
- [gnunet] 08/19: Implemented burst mode., gnunet, 2024/08/28
- [gnunet] 13/19: Refactoring the burst logic., gnunet, 2024/08/28
- [gnunet] 06/19: Moved sync protocol to util., gnunet, 2024/08/28
- [gnunet] 12/19: Fixed Generic and specific test setup and code.,
gnunet <=
- [gnunet] 07/19: NAT: Added missing missing files, gnunet, 2024/08/28
- [gnunet] 05/19: Fixed bug with new queues inheriting the validated_until value of existing queues., gnunet, 2024/08/28
- [gnunet] 15/19: Make hole punch socket available, and some bug fixes., gnunet, 2024/08/28
- [gnunet] 09/19: Merge branch 'master' into dev/t3ss/probnatt, gnunet, 2024/08/28
- [gnunet] 17/19: Merge master into branch., gnunet, 2024/08/28
- [gnunet] 10/19: Make the test framework work to run full peers., gnunet, 2024/08/28
- [gnunet] 11/19: Added msssing config., gnunet, 2024/08/28
- [gnunet] 14/19: Fixed bug adding global addresses to nat service., gnunet, 2024/08/28
- [gnunet] 16/19: Fixed back in peerstore when iteration already has finished., gnunet, 2024/08/28
- [gnunet] 18/19: Added meson build files for arm and arm monolith, and fixed macro to start daemons., gnunet, 2024/08/28