summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAndreas Schneider <asn@samba.org>2013-12-20 16:37:59 +0100
committerAndreas Schneider <asn@samba.org>2013-12-20 17:12:26 +0100
commit379af0763be3c25d8b4ec75220d0f98007f9328b (patch)
treee6dd9f86fcc1d7aaeaec10c849234835839d8668
parent33404b45bcbca1691d3d9fb8bb5b4f2c15caef0e (diff)
downloadsocket_wrapper-379af0763be3c25d8b4ec75220d0f98007f9328b.tar.gz
socket_wrapper-379af0763be3c25d8b4ec75220d0f98007f9328b.tar.xz
socket_wrapper-379af0763be3c25d8b4ec75220d0f98007f9328b.zip
torture: Add torture_server_address().
This should make it easier to run the test without socket_wrapper.
-rw-r--r--tests/torture.c28
-rw-r--r--tests/torture.h2
2 files changed, 30 insertions, 0 deletions
diff --git a/tests/torture.c b/tests/torture.c
index 428a846..2097ae5 100644
--- a/tests/torture.c
+++ b/tests/torture.c
@@ -52,6 +52,34 @@
#define TORTURE_SOCKET_DIR "/tmp/test_socket_wrapper_XXXXXX"
#define TORTURE_ECHO_SRV_PIDFILE "echo_srv.pid"
+const char *torture_server_address(int family)
+{
+ switch (family) {
+ case AF_INET: {
+ const char *ip4 = getenv("TORTURE_SERVER_ADDRESS_IPV4");
+
+ if (ip4 != NULL && ip4[0] != '\0') {
+ return ip4;
+ }
+
+ return TORTURE_ECHO_SRV_IPV4;
+ }
+ case AF_INET6: {
+ const char *ip6 = getenv("TORTURE_SERVER_ADDRESS_IPV6");
+
+ if (ip6 != NULL && ip6[0] != '\0') {
+ return ip6;
+ }
+
+ return TORTURE_ECHO_SRV_IPV6;
+ }
+ default:
+ return NULL;
+ }
+
+ return NULL;
+}
+
void torture_setup_socket_dir(void **state)
{
struct torture_state *s;
diff --git a/tests/torture.h b/tests/torture.h
index fd4ffe6..be100f7 100644
--- a/tests/torture.h
+++ b/tests/torture.h
@@ -58,6 +58,8 @@ struct torture_state {
#define ZERO_STRUCT(x) memset((char *)&(x), 0, sizeof(x))
#endif
+const char *torture_server_address(int domain);
+
void torture_setup_socket_dir(void **state);
void torture_setup_echo_srv_udp_ipv4(void **state);
void torture_setup_echo_srv_udp_ipv6(void **state);