diff options
author | Nikos Mavrogiannopoulos <nmav@redhat.com> | 2016-08-05 15:55:47 +0200 |
---|---|---|
committer | Nikos Mavrogiannopoulos <nmav@redhat.com> | 2016-08-05 15:55:49 +0200 |
commit | a1de92b2078303625a1114c9105ea0219f14c027 (patch) | |
tree | 3e0b479d66e1010f771bd9f3f123f408e66100c9 | |
parent | 7dff7611ec94f2573de2aa3605a29e119914f99d (diff) | |
download | gnutls-a1de92b2078303625a1114c9105ea0219f14c027.tar.gz |
tests: use gnutls_record_set_timeout instead of kill child processes
That way we avoid issues like #118 which are caused by killing the child
process, and we also avoid deadlocks by making sure that recv will terminate
after a long delay.
-rw-r--r-- | tests/mini-record-2.c | 4 | ||||
-rw-r--r-- | tests/mini-record-failure.c | 4 | ||||
-rw-r--r-- | tests/mini-record-retvals.c | 3 |
3 files changed, 8 insertions, 3 deletions
diff --git a/tests/mini-record-2.c b/tests/mini-record-2.c index 4f930d1ae7..e36b2121a6 100644 --- a/tests/mini-record-2.c +++ b/tests/mini-record-2.c @@ -207,6 +207,9 @@ static void client(int fd, const char *prio, int ign) exit(1); } + /* make sure we are not blocked forever */ + gnutls_record_set_timeout(session, 10000); + /* Test receiving */ do { do { @@ -402,7 +405,6 @@ static void start(const char *prio, int ign) /* parent */ close(fd[1]); server(fd[0], prio, ign); - kill(child, SIGTERM); } else { close(fd[0]); client(fd[1], prio, ign); diff --git a/tests/mini-record-failure.c b/tests/mini-record-failure.c index a13e9a1063..02ce346295 100644 --- a/tests/mini-record-failure.c +++ b/tests/mini-record-failure.c @@ -290,6 +290,9 @@ static void server(int fd, const char *prio, int ign) * detects an error on the peer, the main process will never know. */ + /* make sure we are not blocked forever */ + gnutls_record_set_timeout(session, 10000); + /* Test receiving */ do { ret = gnutls_record_recv(session, buffer, MAX_BUF); @@ -335,7 +338,6 @@ static void start(const char *prio, int ign) /* parent */ close(fd[1]); server(fd[0], prio, ign); - kill(child, SIGTERM); } else { close(fd[0]); client(fd[1], prio, ign); diff --git a/tests/mini-record-retvals.c b/tests/mini-record-retvals.c index 6fb31f2dd0..9ae8c3f3ea 100644 --- a/tests/mini-record-retvals.c +++ b/tests/mini-record-retvals.c @@ -212,6 +212,8 @@ static void client(int fd, const char *prio, int ign) exit(1); } + gnutls_record_set_timeout(session, 10000); + /* Test receiving */ do { do { @@ -412,7 +414,6 @@ static void start(const char *prio, int ign) /* parent */ close(fd[1]); server(fd[0], prio, ign); - kill(child, SIGTERM); } else { close(fd[0]); client(fd[1], prio, ign); |