From: Victor Julien Date: Fri, 6 May 2016 13:00:10 +0000 (+0200) Subject: smb: improve integer handling X-Git-Tag: suricata-3.1RC1~184 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=055f8bea105bf0472dd448f93e67db9c80a25c11;p=thirdparty%2Fsuricata.git smb: improve integer handling --- diff --git a/src/app-layer-smb.c b/src/app-layer-smb.c index 11c8539e8e..22a9439e09 100644 --- a/src/app-layer-smb.c +++ b/src/app-layer-smb.c @@ -946,10 +946,10 @@ static int SMBParseHeader(Flow *f, void *smb_state, SCReturnInt(-1); } sstate->smb.command = *(p + 4); - sstate->smb.status = *(p + 5) << 24; - sstate->smb.status |= *(p + 6) << 16; - sstate->smb.status |= *(p + 7) << 8; - sstate->smb.status |= *(p + 8); + sstate->smb.status = (uint32_t) *(p + 5) << 24; + sstate->smb.status |= (uint32_t) *(p + 6) << 16; + sstate->smb.status |= (uint32_t) *(p + 7) << 8; + sstate->smb.status |= (uint32_t) *(p + 8); sstate->smb.flags = *(p + 9); sstate->smb.flags2 = *(p + 10) << 8; sstate->smb.flags2 |= *(p + 11);