summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorjorton <jorton@13f79535-47bb-0310-9956-ffa450edef68>2004-06-02 08:27:43 +0000
committerjorton <jorton@13f79535-47bb-0310-9956-ffa450edef68>2004-06-02 08:27:43 +0000
commit69a6fbd6b50b295c9dbe64bd4ba79b6e7645eb7a (patch)
treec70027a555184ea66d3217340756136936a5dcdf
parent15982928def5d855b6ee26c86de72092338af19b (diff)
downloadlibapr-69a6fbd6b50b295c9dbe64bd4ba79b6e7645eb7a.tar.gz
* test/testsock.c (setup_socket): Return NULL if bind fails, fixing
test suite hang if port 8021 is in use; all callers updated. (come back longjmp, all is forgiven). git-svn-id: http://svn.apache.org/repos/asf/apr/apr/trunk@65147 13f79535-47bb-0310-9956-ffa450edef68
-rw-r--r--test/testsock.c10
1 files changed, 8 insertions, 2 deletions
diff --git a/test/testsock.c b/test/testsock.c
index 1489e6f18..9853a8cc6 100644
--- a/test/testsock.c
+++ b/test/testsock.c
@@ -85,7 +85,8 @@ static apr_socket_t *setup_socket(abts_case *tc)
rv = apr_socket_bind(sock, sa);
apr_assert_success(tc, "Problem binding to port", rv);
-
+ if (rv) return NULL;
+
rv = apr_socket_listen(sock, 5);
apr_assert_success(tc, "Problem listening on socket", rv);
@@ -97,7 +98,9 @@ static void test_create_bind_listen(abts_case *tc, void *data)
apr_status_t rv;
apr_socket_t *sock = setup_socket(tc);
- rv = apr_socket_close(sock) ;
+ if (!sock) return;
+
+ rv = apr_socket_close(sock);
apr_assert_success(tc, "Problem closing socket", rv);
}
@@ -111,6 +114,7 @@ static void test_send(abts_case *tc, void *data)
apr_size_t length;
sock = setup_socket(tc);
+ if (!sock) return;
launch_child(tc, &proc, "read", p);
@@ -143,6 +147,7 @@ static void test_recv(abts_case *tc, void *data)
char datastr[STRLEN];
sock = setup_socket(tc);
+ if (!sock) return;
launch_child(tc, &proc, "write", p);
@@ -175,6 +180,7 @@ static void test_timeout(abts_case *tc, void *data)
int exit;
sock = setup_socket(tc);
+ if (!sock) return;
launch_child(tc, &proc, "read", p);