diff --git a/debian/patches/build-fixes/0001-NFSProcedure-use-zero-initializers-not-memset.patch b/debian/patches/build-fixes/0001-NFSProcedure-use-zero-initializers-not-memset.patch new file mode 100644 index 0000000..481d3b6 --- /dev/null +++ b/debian/patches/build-fixes/0001-NFSProcedure-use-zero-initializers-not-memset.patch @@ -0,0 +1,30 @@ +From 35524f05e2651083c1f6d2e11cbac46027369d11 Mon Sep 17 00:00:00 2001 +From: nick black +Date: Sun, 1 Sep 2019 06:13:58 -0400 +Subject: [PATCH 1/2] NFSProcedure: use zero-initializers not memset + +--- + src/protocols/nfs/nfs_procedure.h | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +diff --git a/src/protocols/nfs/nfs_procedure.h b/src/protocols/nfs/nfs_procedure.h +index f7a2028..e3da4f2 100644 +--- a/src/protocols/nfs/nfs_procedure.h ++++ b/src/protocols/nfs/nfs_procedure.h +@@ -48,11 +48,11 @@ public: + inline NFSProcedure(xdr::XDRDecoder& c, xdr::XDRDecoder& r, const Session* s) + : parg{&arg} // set pointer to argument + , pres{&res} // set pointer to result ++ , arg{} // zero-initializer ++ , res{} + { + memset(&call, 0, sizeof(call)); + memset(&reply, 0, sizeof(reply)); +- memset(&arg, 0, sizeof(arg)); +- memset(&res, 0, sizeof(res)); + + // fill call + if(!xdr_callmsg(c.xdr(), &call)) +-- +2.20.1 + diff --git a/debian/patches/build-fixes/0002-remove-meaningless-consts-Werror-ignored-qualifiers.patch b/debian/patches/build-fixes/0002-remove-meaningless-consts-Werror-ignored-qualifiers.patch new file mode 100644 index 0000000..40dfb9e --- /dev/null +++ b/debian/patches/build-fixes/0002-remove-meaningless-consts-Werror-ignored-qualifiers.patch @@ -0,0 +1,91 @@ +From 366c0b74f0e83312dd635f46ea2f9fc38fd15ac2 Mon Sep 17 00:00:00 2001 +From: nick black +Date: Sun, 1 Sep 2019 06:14:09 -0400 +Subject: [PATCH 2/2] remove meaningless consts (-Werror=ignored-qualifiers) + +--- + src/filtration/filtration_processor.h | 6 +++--- + src/filtration/rpc_filtrator.h | 8 ++++---- + src/protocols/cifs/cifs.cpp | 2 +- + 3 files changed, 8 insertions(+), 8 deletions(-) + +diff --git a/src/filtration/filtration_processor.h b/src/filtration/filtration_processor.h +index 8f71b53..f08c360 100644 +--- a/src/filtration/filtration_processor.h ++++ b/src/filtration/filtration_processor.h +@@ -76,12 +76,12 @@ public: + { + // TODO: this code must be generalized with RPCFiltrator class + uint32_t hdr_len{0}; +- auto msg = reinterpret_cast(info.data); ++ auto msg = reinterpret_cast(info.data); + switch(msg->type()) + { + case MsgType::CALL: + { +- auto call = static_cast(msg); ++ auto call = static_cast(msg); + if(RPCValidator::check(call)) + { + if(NFS3Validator::check(call)) +@@ -115,7 +115,7 @@ public: + break; + case MsgType::REPLY: + { +- auto reply = static_cast(msg); ++ auto reply = static_cast(msg); + if(RPCValidator::check(reply)) + { + // Truncate NFSv3 READ reply message to NFSv3-RW-limit +diff --git a/src/filtration/rpc_filtrator.h b/src/filtration/rpc_filtrator.h +index 24b494b..602ff07 100644 +--- a/src/filtration/rpc_filtrator.h ++++ b/src/filtration/rpc_filtrator.h +@@ -80,11 +80,11 @@ public: + const MessageHeader* const msg = rm->fragment(); + if(msg->type() == MsgType::REPLY) + { +- return RPCValidator::check(static_cast(msg)); ++ return RPCValidator::check(static_cast(msg)); + } + if(msg->type() == MsgType::CALL) + { +- return RPCValidator::check(static_cast(msg)); ++ return RPCValidator::check(static_cast(msg)); + } + return false; + } +@@ -123,7 +123,7 @@ public: + { + case MsgType::CALL: + { +- auto call = static_cast(msg); ++ auto call = static_cast(msg); + if(RPCValidator::check(call)) + { + BaseImpl::setMsgLen(len); // length of current RPC message +@@ -164,7 +164,7 @@ public: + break; + case MsgType::REPLY: + { +- auto reply = static_cast(msg); ++ auto reply = static_cast(msg); + if(RPCValidator::check(reply)) + { + BaseImpl::setMsgLen(len); // length of current RPC message +diff --git a/src/protocols/cifs/cifs.cpp b/src/protocols/cifs/cifs.cpp +index 78e02a9..52a7ebf 100644 +--- a/src/protocols/cifs/cifs.cpp ++++ b/src/protocols/cifs/cifs.cpp +@@ -57,7 +57,7 @@ const NST::protocols::CIFSv1::MessageHeader* NST::protocols::CIFSv1::get_header( + + bool MessageHeader::isFlag(const Flags flag) const + { +- return static_cast(flag) & static_cast(flags); ++ return static_cast(flag) & static_cast(flags); + } + + extern "C" NST_PUBLIC const char* print_cifs1_procedures(SMBv1Commands cmd_code) +-- +2.20.1 + diff --git a/debian/patches/series b/debian/patches/series index 3478380..122163a 100644 --- a/debian/patches/series +++ b/debian/patches/series @@ -1,3 +1,5 @@ reproducible_build.patch reproducible_build2.patch docs-utf8.patch +build-fixes/0001-NFSProcedure-use-zero-initializers-not-memset.patch +build-fixes/0002-remove-meaningless-consts-Werror-ignored-qualifiers.patch