Remove dependency on signal() function

Replaces uses of signal() with sigaction() which should be far
more portable.
This commit is contained in:
matt335672
2023-10-02 16:29:06 +01:00
parent bce303c3a8
commit d11617adbe
6 changed files with 191 additions and 10 deletions
+1
View File
@@ -18,6 +18,7 @@ test_common_SOURCES = \
test_list_calls.c \
test_string_calls.c \
test_os_calls.c \
test_os_calls_signals.c \
test_ssl_calls.c \
test_base64.c \
test_guid.c
+5
View File
@@ -15,4 +15,9 @@ Suite *make_suite_test_ssl_calls(void);
Suite *make_suite_test_base64(void);
Suite *make_suite_test_guid(void);
TCase *make_tcase_test_os_calls_signals(void);
void os_calls_signals_init(void);
void os_calls_signals_deinit(void);
#endif /* TEST_COMMON_H */
+4 -1
View File
@@ -64,14 +64,17 @@ int main (void)
* reporting when running in libcheck fork mode */
setvbuf(stdout, NULL, _IONBF, 0);
/* Initialise the ssl module */
/* Initialise modules */
ssl_init();
os_calls_signals_init();
srunner_run_all (sr, CK_ENV);
number_failed = srunner_ntests_failed(sr);
srunner_free(sr);
ssl_finish();
os_calls_signals_deinit();
log_end();
return (number_failed == 0) ? EXIT_SUCCESS : EXIT_FAILURE;
}
+4
View File
@@ -512,5 +512,9 @@ make_suite_test_os_calls(void)
tcase_add_test(tc_os_calls, test_g_file_is_open);
tcase_add_test(tc_os_calls, test_g_sck_fd_passing);
tcase_add_test(tc_os_calls, test_g_sck_fd_overflow);
// Add other test cases in other files
suite_add_tcase(s, make_tcase_test_os_calls_signals());
return s;
}