Skip to content

Commit 986204f

Browse files
author
Kimmo Vaisanen
committed
Fix TLSSocket tests
- set certs and keys after socket open() as required by offloaded TLSSocket - Added more checks for invalid handshake test and removed google.com test as as some modems (e.g. BG96) might contains root CA for google.com
1 parent 6ba0efc commit 986204f

File tree

3 files changed

+16
-7
lines changed

3 files changed

+16
-7
lines changed

TESTS/netsocket/tls/main.cpp

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -84,15 +84,15 @@ nsapi_error_t tlssocket_connect_to_srv(TLSSocket &sock, uint16_t port)
8484

8585
printf("MBED: Server '%s', port %d\n", tls_addr.get_ip_address(), tls_addr.get_port());
8686

87-
nsapi_error_t err = sock.set_root_ca_cert(tls_global::cert);
87+
nsapi_error_t err = sock.open(NetworkInterface::get_default_instance());
8888
if (err != NSAPI_ERROR_OK) {
89-
printf("Error from sock.set_root_ca_cert: %d\n", err);
89+
printf("Error from sock.open: %d\n", err);
9090
return err;
9191
}
9292

93-
err = sock.open(NetworkInterface::get_default_instance());
93+
err = sock.set_root_ca_cert(tls_global::cert);
9494
if (err != NSAPI_ERROR_OK) {
95-
printf("Error from sock.open: %d\n", err);
95+
printf("Error from sock.set_root_ca_cert: %d\n", err);
9696
return err;
9797
}
9898

TESTS/netsocket/tls/tlssocket_endpoint_close.cpp

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -48,6 +48,10 @@ static nsapi_error_t _tlssocket_connect_to_daytime_srv(TLSSocket &sock)
4848
return err;
4949
}
5050

51+
TEST_ASSERT_EQUAL(NSAPI_ERROR_OK, sock.set_root_ca_cert(tls_global::cert));
52+
53+
sock.set_timeout(10000); // Set timeout for case TLSSocket does not support peer closed indication
54+
5155
return sock.connect(tls_addr);
5256
}
5357

@@ -62,7 +66,6 @@ void TLSSOCKET_ENDPOINT_CLOSE()
6266
tc_exec_time.start();
6367

6468
TLSSocket sock;
65-
TEST_ASSERT_EQUAL(NSAPI_ERROR_OK, sock.set_root_ca_cert(tls_global::cert));
6669
if (_tlssocket_connect_to_daytime_srv(sock) != NSAPI_ERROR_OK) {
6770
TEST_FAIL();
6871
return;

TESTS/netsocket/tls/tlssocket_handshake_invalid.cpp

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -28,12 +28,18 @@ using namespace utest::v1;
2828

2929
void TLSSOCKET_HANDSHAKE_INVALID()
3030
{
31+
const int https_port = 443;
3132
SKIP_IF_TCP_UNSUPPORTED();
3233
TLSSocket sock;
3334
TEST_ASSERT_EQUAL(NSAPI_ERROR_OK, sock.open(NetworkInterface::get_default_instance()));
3435
TEST_ASSERT_EQUAL(NSAPI_ERROR_OK, sock.set_root_ca_cert(tls_global::cert));
35-
TEST_ASSERT_EQUAL(NSAPI_ERROR_AUTH_FAILURE,
36-
sock.connect("google.com", 443)); // 443 is https port.
36+
TEST_ASSERT_EQUAL(NSAPI_ERROR_AUTH_FAILURE, sock.connect("expired.badssl.com", https_port));
37+
TEST_ASSERT_EQUAL(NSAPI_ERROR_AUTH_FAILURE, sock.connect("wrong.host.badssl.com", https_port));
38+
TEST_ASSERT_EQUAL(NSAPI_ERROR_AUTH_FAILURE, sock.connect("self-signed.badssl.com", https_port));
39+
TEST_ASSERT_EQUAL(NSAPI_ERROR_AUTH_FAILURE, sock.connect("untrusted-root.badssl.com", https_port));
40+
TEST_ASSERT_EQUAL(NSAPI_ERROR_AUTH_FAILURE, sock.connect("revoked.badssl.com", https_port));
41+
TEST_ASSERT_EQUAL(NSAPI_ERROR_AUTH_FAILURE, sock.connect("pinning-test.badssl.com", https_port));
42+
TEST_ASSERT_EQUAL(NSAPI_ERROR_AUTH_FAILURE, sock.connect("sha1-intermediate.badssl.com", https_port));
3743
TEST_ASSERT_EQUAL(NSAPI_ERROR_OK, sock.close());
3844
}
3945

0 commit comments

Comments
 (0)