summaryrefslogtreecommitdiff
path: root/tests/dtls-rehandshake-cert-3.c
diff options
context:
space:
mode:
Diffstat (limited to 'tests/dtls-rehandshake-cert-3.c')
-rw-r--r--tests/dtls-rehandshake-cert-3.c24
1 files changed, 16 insertions, 8 deletions
diff --git a/tests/dtls-rehandshake-cert-3.c b/tests/dtls-rehandshake-cert-3.c
index f1d298c339..38d1cf7631 100644
--- a/tests/dtls-rehandshake-cert-3.c
+++ b/tests/dtls-rehandshake-cert-3.c
@@ -102,7 +102,7 @@ static ssize_t push(gnutls_transport_ptr_t tr, const void *data, size_t len)
return send(fd, data, len, 0);
}
-static void client(int fd)
+static void client(int fd, const char *prio)
{
int ret;
char buffer[MAX_BUF + 1];
@@ -125,8 +125,9 @@ static void client(int fd)
gnutls_init(&session, GNUTLS_CLIENT | GNUTLS_DATAGRAM);
gnutls_dtls_set_mtu(session, MTU);
+ snprintf(buffer, sizeof(buffer), "%s:+ANON-ECDH", prio);
assert(gnutls_priority_set_direct(session,
- "NONE:+VERS-DTLS-ALL:+CIPHER-ALL:+MAC-ALL:+SIGN-ALL:+COMP-ALL:+ANON-ECDH:+CURVE-ALL",
+ buffer,
NULL) >= 0);
gnutls_credentials_set(session, GNUTLS_CRD_ANON, anoncred);
@@ -158,8 +159,9 @@ static void client(int fd)
(gnutls_protocol_get_version(session)));
/* update priorities to allow cert auth */
+ snprintf(buffer, sizeof(buffer), "%s:+ECDHE-RSA", prio);
assert(gnutls_priority_set_direct(session,
- "NONE:+VERS-DTLS-ALL:+CIPHER-ALL:+MAC-ALL:+SIGN-ALL:+COMP-ALL:+ECDHE-RSA:+CURVE-ALL",
+ buffer,
NULL) >= 0);
do {
@@ -216,7 +218,7 @@ static void terminate(void)
exit(1);
}
-static void server(int fd)
+static void server(int fd, const char *prio)
{
int ret;
char buffer[MAX_BUF + 1];
@@ -244,8 +246,9 @@ static void server(int fd)
/* avoid calling all the priority functions, since the defaults
* are adequate.
*/
+ snprintf(buffer, sizeof(buffer), "%s:+ECDHE-RSA:+ANON-ECDH", prio);
assert(gnutls_priority_set_direct(session,
- "NONE:+VERS-DTLS-ALL:+CIPHER-ALL:+MAC-ALL:+SIGN-ALL:+COMP-ALL:+ECDHE-RSA:+ANON-ECDH:+CURVE-ALL",
+ buffer,
NULL) >= 0);
gnutls_credentials_set(session, GNUTLS_CRD_ANON, anoncred);
@@ -348,7 +351,7 @@ static void server(int fd)
success("server: finished\n");
}
-void doit(void)
+static void start(const char *prio)
{
int fd[2];
int ret;
@@ -371,14 +374,19 @@ void doit(void)
/* parent */
server_fd = fd[0];
- server(fd[0]);
+ server(fd[0], prio);
wait(&status);
check_wait_status(status);
} else {
close(fd[0]);
- client(fd[1]);
+ client(fd[1], prio);
exit(0);
}
}
+void doit(void)
+{
+ start("NONE:+VERS-DTLS1.2:+CIPHER-ALL:+MAC-ALL:+SIGN-ALL:+COMP-ALL:+CURVE-ALL");
+}
+
#endif /* _WIN32 */