[Snort-devel] [PATCH][RESEND]: Use uint8_t for protocol in some Stream5functions

Joshua.Kinard at ...3108... Joshua.Kinard at ...3108...
Wed Sep 14 00:36:43 EDT 2011


Hi snort-devel,

Resending.  I forgot to change the argument list in two functions in
typedef StreamApi.h in src/preprocessors/stream_api.h.

--J

> I noticed that for several function calls in the Stream5 code, a
signed char
> was being used for the protocol.  Right now, supported Snort
protocols, ICMP,
> TCP, and UDP, are all under 128 (1, 6, and 17).  For for protocols
>128, this
> would roll over into a negative number, making a conditional on the
IPPROTO_*
> macro useless because those macros are only returning a positive
number
> between 1 and 255.
>
> Per include/linux/in.h (as of 3.0), this would affect IPPROTO_SCTP and
> IPPROTO_UDPLITE.
>
> Patch is attached.  There might be more cases in the code, but I only
did a
> quick grep for "char proto" and fixed the obvious cases.  Other
'protocol'
> variables are already uint8_t.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: snort-291-protocol-should-be-unsigned.patch
Type: application/octet-stream
Size: 5849 bytes
Desc: snort-291-protocol-should-be-unsigned.patch
URL: <https://lists.snort.org/pipermail/snort-devel/attachments/20110913/3ff1e40b/attachment.obj>


More information about the Snort-devel mailing list