From: Masud Hasan (mashasan) Date: Tue, 19 Apr 2022 12:49:26 +0000 (+0000) Subject: Pull request #3382: smtp: SMTPData initialization changed from memset to constructor X-Git-Tag: 3.1.28.0~11 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=d5500f368c337cf29ffbb9571d3a7cade4c0cfb0;p=thirdparty%2Fsnort3.git Pull request #3382: smtp: SMTPData initialization changed from memset to constructor Merge in SNORT/snort3 from ~OSTEPANO/snort3:smtp_structure_initializer to master Squashed commit of the following: commit 60fb39c75b9b86611d80d78ce96858d8e40a062a Author: ostepano Date: Mon Apr 18 17:10:40 2022 -0400 smtp: SMTPData initialization changed from memset to constructor --- diff --git a/src/service_inspectors/smtp/smtp.cc b/src/service_inspectors/smtp/smtp.cc index f54cc03b5..c27691e05 100644 --- a/src/service_inspectors/smtp/smtp.cc +++ b/src/service_inspectors/smtp/smtp.cc @@ -201,7 +201,6 @@ static void SMTP_ResetState(Flow*); SmtpFlowData::SmtpFlowData() : FlowData(inspector_id) { - memset(&session, 0, sizeof(session)); smtpstats.concurrent_sessions++; if (smtpstats.max_concurrent_sessions < smtpstats.concurrent_sessions) smtpstats.max_concurrent_sessions = smtpstats.concurrent_sessions; diff --git a/src/service_inspectors/smtp/smtp.h b/src/service_inspectors/smtp/smtp.h index e1a3490f2..0272a049b 100644 --- a/src/service_inspectors/smtp/smtp.h +++ b/src/service_inspectors/smtp/smtp.h @@ -158,15 +158,27 @@ private: struct SMTPData { + //Initialize structure with default values + SMTPData() : state{0}, + state_flags{0}, + session_flags{0}, + dat_chunk{0}, + mime_ssn{nullptr}, + auth_name{nullptr}, + client_requested_starttls{false}, + pipelined_command_counter{0}, + server_accepted_starttls{false} + { } + int state; int state_flags; int session_flags; uint32_t dat_chunk; SmtpMime* mime_ssn; SMTPAuthName* auth_name; - bool client_requested_starttls = false; - size_t pipelined_command_counter = 0; - bool server_accepted_starttls = false; + bool client_requested_starttls; + size_t pipelined_command_counter; + bool server_accepted_starttls; }; class SmtpFlowData : public snort::FlowData