From 9c4dbf5f552ad7d0ad5b243fc9dba5fc7082cb1a Mon Sep 17 00:00:00 2001 From: "Hui Cao (huica)" Date: Tue, 27 Sep 2016 16:45:56 -0400 Subject: [PATCH] Merge pull request #641 in SNORT/snort3 from file_smb2 to master Remove extra byte for file name Avoiding checking policy for each packet. Squashed commit of the following: commit 791af2b871275d159f4421239628b45406a6e9e7 Author: huica Date: Tue Sep 27 15:21:10 2016 -0400 correct file name size --- src/file_api/file_flows.cc | 7 +++++-- src/service_inspectors/dce_rpc/dce_smb2.cc | 2 +- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/src/file_api/file_flows.cc b/src/file_api/file_flows.cc index e58e10965..bef71b717 100644 --- a/src/file_api/file_flows.cc +++ b/src/file_api/file_flows.cc @@ -177,8 +177,11 @@ bool FileFlows::file_process(uint64_t file_id, const uint8_t* file_data, if (!context) return 0; - context->check_policy(flow, dir); - context->set_file_id(file_id); + if (!context->get_processed_bytes()) + { + context->check_policy(flow, dir); + context->set_file_id(file_id); + } if (context->verdict != FILE_VERDICT_UNKNOWN) { diff --git a/src/service_inspectors/dce_rpc/dce_smb2.cc b/src/service_inspectors/dce_rpc/dce_smb2.cc index 098f76612..51e1a344a 100644 --- a/src/service_inspectors/dce_rpc/dce_smb2.cc +++ b/src/service_inspectors/dce_rpc/dce_smb2.cc @@ -357,7 +357,7 @@ static void DCE2_Smb2CreateRequest(DCE2_SmbSsnData* ssd, const Smb2Hdr*, } ssd->ftracker.file_name = DCE2_Smb2GetFileName(file_data, size, true, false); if (ssd->ftracker.file_name) - ssd->ftracker.file_name_size = strlen(ssd->ftracker.file_name) + 1; + ssd->ftracker.file_name_size = strlen(ssd->ftracker.file_name); } } -- 2.47.2