From 7b56db181141e29b7029694a185286dfdd662d22 Mon Sep 17 00:00:00 2001 From: gberkes Date: Mon, 26 Feb 2024 08:49:05 +0000 Subject: [PATCH 1/3] Clean up 'return' never will be executed. --- .../reading_logs_via_rule_message.h | 2 -- examples/reading_logs_via_rule_message/simple_request.cc | 3 --- 2 files changed, 5 deletions(-) diff --git a/examples/reading_logs_via_rule_message/reading_logs_via_rule_message.h b/examples/reading_logs_via_rule_message/reading_logs_via_rule_message.h index 58cbba8b2f..6b6e87217e 100644 --- a/examples/reading_logs_via_rule_message/reading_logs_via_rule_message.h +++ b/examples/reading_logs_via_rule_message/reading_logs_via_rule_message.h @@ -103,7 +103,6 @@ static void *process_request(void *data) { } pthread_exit(NULL); - return NULL; } @@ -165,7 +164,6 @@ class ReadingLogsViaRuleMessage { delete rules; delete modsec; - pthread_exit(NULL); return 0; } diff --git a/examples/reading_logs_via_rule_message/simple_request.cc b/examples/reading_logs_via_rule_message/simple_request.cc index 1d3b1deb23..571b574ec1 100644 --- a/examples/reading_logs_via_rule_message/simple_request.cc +++ b/examples/reading_logs_via_rule_message/simple_request.cc @@ -35,8 +35,5 @@ int main(int argc, char **argv) { response_headers, response_body, ip, rules); rlvrm.process(); - - - pthread_exit(NULL); return 0; } From bf6042dd163e619712602006979b2109a71dfea7 Mon Sep 17 00:00:00 2001 From: gberkes Date: Mon, 26 Feb 2024 15:38:39 +0000 Subject: [PATCH 2/3] Marked the process_request() function with the [[noreturn]] attribute, as pthread_exit() does not return. --- .../reading_logs_via_rule_message.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/examples/reading_logs_via_rule_message/reading_logs_via_rule_message.h b/examples/reading_logs_via_rule_message/reading_logs_via_rule_message.h index 6b6e87217e..3aae535683 100644 --- a/examples/reading_logs_via_rule_message/reading_logs_via_rule_message.h +++ b/examples/reading_logs_via_rule_message/reading_logs_via_rule_message.h @@ -73,7 +73,7 @@ struct data_ms { }; -static void *process_request(void *data) { +[[noreturn]] static void *process_request(void *data) { struct data_ms *a = (struct data_ms *)data; modsecurity::ModSecurity *modsec = a->modsec; modsecurity::RulesSet *rules = a->rules; From 64dfe41cece962fe775a74ef51c1c116b3051ca1 Mon Sep 17 00:00:00 2001 From: gberkes Date: Tue, 27 Feb 2024 19:21:58 +0000 Subject: [PATCH 3/3] Refactor: Use pthread_exit(nullptr) instead of pthread_exit(NULL) for type safety. --- .../reading_logs_via_rule_message.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/examples/reading_logs_via_rule_message/reading_logs_via_rule_message.h b/examples/reading_logs_via_rule_message/reading_logs_via_rule_message.h index 3aae535683..29e4d66224 100644 --- a/examples/reading_logs_via_rule_message/reading_logs_via_rule_message.h +++ b/examples/reading_logs_via_rule_message/reading_logs_via_rule_message.h @@ -102,7 +102,7 @@ struct data_ms { delete modsecTransaction; } - pthread_exit(NULL); + pthread_exit(nullptr); }