} while (ret == GNUTLS_E_AGAIN || ret == GNUTLS_E_INTERRUPTED);
if (ret != 0)
- fail("client: gnutls_reauth did not succeed as expected: %s\n", gnutls_strerror(ret));
+ fail("client: gnutls_reauth %d did not succeed as expected: %s\n", i, gnutls_strerror(ret));
}
return 0;
}
-static void server(int fd, int err, int type, unsigned max_auths)
+static void server(int fd, int err, int type, unsigned max_auths, int child)
{
int ret;
char buffer[MAX_BUF + 1];
fail("server: gnutls_reauth did not succeed as expected: %s\n", gnutls_strerror(ret));
}
+ waitpid(child, NULL, 0);
+
close(fd);
gnutls_deinit(session);
if (child) {
/* parent */
close(fd[1]);
- server(fd[0], err, type, max_auths);
- kill(child, SIGTERM);
+ server(fd[0], err, type, max_auths, child);
} else {
close(fd[0]);
client(fd[1], send_cert, max_auths);