Skip to content

Commit

Permalink
fix: address PR comments
Browse files Browse the repository at this point in the history
* fix all problems and move s2n_connection_test_utilc.c and
  s2n_testlib.h changes to another PR
  • Loading branch information
Boquan Fang committed Oct 11, 2024
1 parent d3bed35 commit c5b3475
Show file tree
Hide file tree
Showing 9 changed files with 21 additions and 28 deletions.
8 changes: 2 additions & 6 deletions tests/unit/s2n_alerts_protocol_test.c
Original file line number Diff line number Diff line change
Expand Up @@ -551,7 +551,7 @@ int main(int argc, char **argv)
EXPECT_SUCCESS(s2n_connection_set_blinding(client, S2N_SELF_SERVICE_BLINDING));
EXPECT_SUCCESS(s2n_connection_set_config(client, config));

struct s2n_test_io_pair io_pair = { 0 };
DEFER_CLEANUP(struct s2n_test_io_pair io_pair = { 0 }, s2n_io_pair_close);
EXPECT_SUCCESS(s2n_io_pair_init_non_blocking(&io_pair));
EXPECT_SUCCESS(s2n_connections_set_io_pair(client, server, &io_pair));

Expand All @@ -573,8 +573,6 @@ int main(int argc, char **argv)
S2N_ERR_CLOSED);
EXPECT_FALSE(s2n_connection_check_io_status(receiver, S2N_IO_READABLE));
}
/* Close the other end of pipe */
EXPECT_SUCCESS(s2n_io_pair_close_one_end(&io_pair, 1 - mode));
};

/* Test: With partial read */
Expand All @@ -596,7 +594,7 @@ int main(int argc, char **argv)
EXPECT_SUCCESS(s2n_connection_set_blinding(client, S2N_SELF_SERVICE_BLINDING));
EXPECT_SUCCESS(s2n_connection_set_config(client, &partial_write_config_copy));

struct s2n_test_io_pair io_pair = { 0 };
DEFER_CLEANUP(struct s2n_test_io_pair io_pair = { 0 }, s2n_io_pair_close);
EXPECT_SUCCESS(s2n_io_pair_init_non_blocking(&io_pair));
EXPECT_SUCCESS(s2n_connections_set_io_pair(client, server, &io_pair));

Expand Down Expand Up @@ -631,8 +629,6 @@ int main(int argc, char **argv)
EXPECT_FAILURE_WITH_ERRNO(s2n_recv(receiver, data, sizeof(data), &blocked),
S2N_ERR_CLOSED);
}
/* Close the other end of pipe */
EXPECT_SUCCESS(s2n_io_pair_close_one_end(&io_pair, 1 - mode));
};
};

Expand Down
12 changes: 6 additions & 6 deletions tests/unit/s2n_handshake_partial_test.c
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@
#include "tls/s2n_tls.h"

static S2N_RESULT s2n_get_test_client_and_server(struct s2n_connection **client_conn, struct s2n_connection **server_conn,
struct s2n_config *config, struct s2n_test_io_pair *io_pair)
struct s2n_test_io_pair *io_pair, struct s2n_config *config)
{
*client_conn = s2n_connection_new(S2N_CLIENT);
RESULT_ENSURE_REF(*client_conn);
Expand Down Expand Up @@ -75,7 +75,7 @@ int main()
{
struct s2n_connection *client_conn = NULL, *server_conn = NULL;
DEFER_CLEANUP(struct s2n_test_io_pair io_pair = { 0 }, s2n_io_pair_close);
EXPECT_OK(s2n_get_test_client_and_server(&client_conn, &server_conn, config, &io_pair));
EXPECT_OK(s2n_get_test_client_and_server(&client_conn, &server_conn, &io_pair, config));

EXPECT_OK(s2n_negotiate_test_server_and_client_until_message(server_conn, client_conn,
SERVER_KEY));
Expand All @@ -90,7 +90,7 @@ int main()
{
struct s2n_connection *client_conn = NULL, *server_conn = NULL;
DEFER_CLEANUP(struct s2n_test_io_pair io_pair = { 0 }, s2n_io_pair_close);
EXPECT_OK(s2n_get_test_client_and_server(&client_conn, &server_conn, config, &io_pair));
EXPECT_OK(s2n_get_test_client_and_server(&client_conn, &server_conn, &io_pair, config));

EXPECT_OK(s2n_negotiate_test_server_and_client_until_message(server_conn, client_conn,
SERVER_CERT_VERIFY));
Expand All @@ -105,7 +105,7 @@ int main()
{
struct s2n_connection *client_conn = NULL, *server_conn = NULL;
DEFER_CLEANUP(struct s2n_test_io_pair io_pair = { 0 }, s2n_io_pair_close);
EXPECT_OK(s2n_get_test_client_and_server(&client_conn, &server_conn, config, &io_pair));
EXPECT_OK(s2n_get_test_client_and_server(&client_conn, &server_conn, &io_pair, config));

EXPECT_OK(s2n_negotiate_test_server_and_client_until_message(server_conn, client_conn,
CLIENT_HELLO));
Expand Down Expand Up @@ -145,7 +145,7 @@ int main()
{
struct s2n_connection *client_conn = NULL, *server_conn = NULL;
DEFER_CLEANUP(struct s2n_test_io_pair io_pair = { 0 }, s2n_io_pair_close);
EXPECT_OK(s2n_get_test_client_and_server(&client_conn, &server_conn, config, &io_pair));
EXPECT_OK(s2n_get_test_client_and_server(&client_conn, &server_conn, &io_pair, config));

EXPECT_OK(s2n_negotiate_test_server_and_client_until_message(server_conn, client_conn,
CLIENT_FINISHED));
Expand All @@ -165,7 +165,7 @@ int main()
{
struct s2n_connection *client_conn = NULL, *server_conn = NULL;
DEFER_CLEANUP(struct s2n_test_io_pair io_pair = { 0 }, s2n_io_pair_close);
EXPECT_OK(s2n_get_test_client_and_server(&client_conn, &server_conn, config, &io_pair));
EXPECT_OK(s2n_get_test_client_and_server(&client_conn, &server_conn, &io_pair, config));

EXPECT_SUCCESS(s2n_connection_append_psk(client_conn, test_psk));
EXPECT_SUCCESS(s2n_connection_append_psk(server_conn, test_psk));
Expand Down
2 changes: 1 addition & 1 deletion tests/unit/s2n_io_test.c
Original file line number Diff line number Diff line change
Expand Up @@ -102,7 +102,7 @@ int main(int argc, char **argv)
s2n_test_real_interrupt(io_pair.client, n_times, &counter));
EXPECT_EQUAL(result, S2N_TEST_SUCCESS);
EXPECT_EQUAL(counter, n_times);
/* Child process exit don't close io_pair properly, so manually close it*/
/* Child process exit doesn't close io_pair properly, so manually close it*/
EXPECT_SUCCESS(s2n_io_pair_close(&io_pair));
exit(0);
}
Expand Down
6 changes: 2 additions & 4 deletions tests/unit/s2n_ktls_io_sendfile_test.c
Original file line number Diff line number Diff line change
Expand Up @@ -133,14 +133,13 @@ int main(int argc, char **argv)
EXPECT_NOT_NULL(conn);
conn->ktls_send_enabled = true;

struct s2n_test_io_pair io_pair = { 0 };
DEFER_CLEANUP(struct s2n_test_io_pair io_pair = { 0 }, s2n_io_pair_close);
EXPECT_SUCCESS(s2n_io_pair_init_non_blocking(&io_pair));
int write_fd = io_pair.server;
int read_fd = io_pair.client;
EXPECT_SUCCESS(s2n_connection_set_write_fd(conn, write_fd));

/* Close one side of the stream to make the fds invalid */
close(read_fd);
s2n_io_pair_close_one_end(&io_pair, S2N_CLIENT);

s2n_blocked_status blocked = S2N_NOT_BLOCKED;
size_t bytes_written = 0;
Expand All @@ -149,7 +148,6 @@ int main(int argc, char **argv)
EXPECT_FAILURE_WITH_ERRNO(ret, S2N_ERR_IO);
EXPECT_EQUAL(bytes_written, 0);
EXPECT_EQUAL(blocked, S2N_BLOCKED_ON_WRITE);
close(write_fd);
};

/* Test: send blocks */
Expand Down
7 changes: 3 additions & 4 deletions tests/unit/s2n_mem_usage_test.c
Original file line number Diff line number Diff line change
Expand Up @@ -17,15 +17,15 @@
/* FreeBSD requires POSIX compatibility off for its syscalls (enables __BSD_VISIBLE)
* Without the below line, <sys/user.h> cannot be imported (it requires __BSD_VISIBLE) */
#undef _POSIX_C_SOURCE
/* clang-format off */
/* clang-format off */
#include <sys/types.h>
#include <sys/sysctl.h>
/* clang-format on */
#include <sys/user.h>
#elif defined(__OpenBSD__)
#undef _POSIX_C_SOURCE
#include <kvm.h>
/* clang-format off */
/* clang-format off */
#include <sys/types.h>
#include <sys/sysctl.h>
/* clang-format on */
Expand Down Expand Up @@ -155,7 +155,7 @@ int main(int argc, char **argv)
BEGIN_TEST();
EXPECT_SUCCESS(s2n_disable_tls13_in_test());

DEFER_CLEANUP(struct s2n_test_io_pair io_pair, s2n_io_pair_close);
DEFER_CLEANUP(struct s2n_test_io_pair io_pair = { 0 }, s2n_io_pair_close);
EXPECT_SUCCESS(s2n_io_pair_init_non_blocking(&io_pair));

/* Skip the test when running under valgrind or address sanitizer, as those tools
Expand Down Expand Up @@ -244,7 +244,6 @@ int main(int argc, char **argv)
EXPECT_SUCCESS(s2n_connection_free(servers[i]));
}

EXPECT_SUCCESS(s2n_io_pair_close(&io_pair));
EXPECT_SUCCESS(s2n_cert_chain_and_key_free(chain_and_key));
EXPECT_SUCCESS(s2n_config_free(server_config));
EXPECT_SUCCESS(s2n_config_free(client_config));
Expand Down
2 changes: 1 addition & 1 deletion tests/unit/s2n_release_non_empty_buffers_test.c
Original file line number Diff line number Diff line change
Expand Up @@ -82,7 +82,7 @@ int main(int argc, char **argv)
EXPECT_SUCCESS(s2n_disable_tls13_in_test());

/* Create a pipe */
DEFER_CLEANUP(struct s2n_test_io_pair io_pair, s2n_io_pair_close);
DEFER_CLEANUP(struct s2n_test_io_pair io_pair = { 0 }, s2n_io_pair_close);
EXPECT_SUCCESS(s2n_io_pair_init(&io_pair));

/* Create a child process */
Expand Down
2 changes: 1 addition & 1 deletion tests/unit/s2n_self_talk_broken_pipe_test.c
Original file line number Diff line number Diff line change
Expand Up @@ -102,7 +102,7 @@ int main(int argc, char **argv)
struct s2n_cert_chain_and_key *chain_and_keys[SUPPORTED_CERTIFICATE_FORMATS];

/* Create a pipe */
DEFER_CLEANUP(struct s2n_test_io_pair io_pair, s2n_io_pair_close);
DEFER_CLEANUP(struct s2n_test_io_pair io_pair = { 0 }, s2n_io_pair_close);
EXPECT_SUCCESS(s2n_io_pair_init(&io_pair));

/* Create a child process */
Expand Down
8 changes: 4 additions & 4 deletions tests/unit/s2n_self_talk_io_mem_test.c
Original file line number Diff line number Diff line change
Expand Up @@ -54,7 +54,7 @@ int main(int argc, char **argv)
EXPECT_SUCCESS(s2n_connection_set_config(server_conn, config));

/* Create nonblocking pipes */
DEFER_CLEANUP(struct s2n_test_io_pair io_pair, s2n_io_pair_close);
DEFER_CLEANUP(struct s2n_test_io_pair io_pair = { 0 }, s2n_io_pair_close);
EXPECT_SUCCESS(s2n_io_pair_init_non_blocking(&io_pair));
EXPECT_SUCCESS(s2n_connection_set_io_pair(client_conn, &io_pair));
EXPECT_SUCCESS(s2n_connection_set_io_pair(server_conn, &io_pair));
Expand Down Expand Up @@ -89,7 +89,7 @@ int main(int argc, char **argv)
EXPECT_SUCCESS(s2n_connection_set_config(server_conn, config));

/* Create nonblocking pipes */
DEFER_CLEANUP(struct s2n_test_io_pair io_pair, s2n_io_pair_close);
DEFER_CLEANUP(struct s2n_test_io_pair io_pair = { 0 }, s2n_io_pair_close);
EXPECT_SUCCESS(s2n_io_pair_init_non_blocking(&io_pair));
EXPECT_SUCCESS(s2n_connection_set_io_pair(client_conn, &io_pair));
EXPECT_SUCCESS(s2n_connection_set_io_pair(server_conn, &io_pair));
Expand Down Expand Up @@ -143,7 +143,7 @@ int main(int argc, char **argv)
EXPECT_SUCCESS(s2n_connection_set_config(server_conn, config_for_mfl));

/* Create nonblocking pipes */
DEFER_CLEANUP(struct s2n_test_io_pair io_pair, s2n_io_pair_close);
DEFER_CLEANUP(struct s2n_test_io_pair io_pair = { 0 }, s2n_io_pair_close);
EXPECT_SUCCESS(s2n_io_pair_init_non_blocking(&io_pair));
EXPECT_SUCCESS(s2n_connection_set_io_pair(client_conn, &io_pair));
EXPECT_SUCCESS(s2n_connection_set_io_pair(server_conn, &io_pair));
Expand Down Expand Up @@ -190,7 +190,7 @@ int main(int argc, char **argv)
EXPECT_EQUAL(server_conn->out.blob.size, 0);

/* Create nonblocking pipes */
DEFER_CLEANUP(struct s2n_test_io_pair io_pair, s2n_io_pair_close);
DEFER_CLEANUP(struct s2n_test_io_pair io_pair = { 0 }, s2n_io_pair_close);
EXPECT_SUCCESS(s2n_io_pair_init_non_blocking(&io_pair));
EXPECT_SUCCESS(s2n_connection_set_io_pair(client_conn, &io_pair));
EXPECT_SUCCESS(s2n_connection_set_io_pair(server_conn, &io_pair));
Expand Down
2 changes: 1 addition & 1 deletion tests/unit/s2n_testlib_test.c
Original file line number Diff line number Diff line change
Expand Up @@ -33,7 +33,7 @@ int main(int argc, char **argv)
EXPECT_NOT_NULL(server_conn = s2n_connection_new(S2N_SERVER));

/* Create nonblocking pipes */
DEFER_CLEANUP(struct s2n_test_io_pair io_pair, s2n_io_pair_close);
DEFER_CLEANUP(struct s2n_test_io_pair io_pair = { 0 }, s2n_io_pair_close);
POSIX_GUARD(s2n_io_pair_init_non_blocking(&io_pair));
POSIX_GUARD(s2n_connection_set_io_pair(server_conn, &io_pair));

Expand Down

0 comments on commit c5b3475

Please sign in to comment.