sctp: remove redundant check when walking through a list of TLV parameters
When pos.v <= (void *)chunk + end - ntohs(pos.p->length) and ntohs(pos.p->length) >= sizeof(sctp_paramhdr_t) these two expressions are all true, pos.v <= (void *)chunk + end - sizeof(sctp_paramhdr_t) *must* be true. This patch removes this kind of redundant check. It's same to _sctp_walk_errors macro. Signed-off-by: Shan Wei <shanwei@cn.fujitsu.com> Signed-off-by: Vlad Yasevich <vladislav.yasevich@hp.com> Signed-off-by: Wei Yongjun <yjwei@cn.fujitsu.com> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
parent
96ca468b86
commit
48669698c2
|
@ -531,7 +531,6 @@ _sctp_walk_params((pos), (chunk), ntohs((chunk)->chunk_hdr.length), member)
|
||||||
|
|
||||||
#define _sctp_walk_params(pos, chunk, end, member)\
|
#define _sctp_walk_params(pos, chunk, end, member)\
|
||||||
for (pos.v = chunk->member;\
|
for (pos.v = chunk->member;\
|
||||||
pos.v <= (void *)chunk + end - sizeof(sctp_paramhdr_t) &&\
|
|
||||||
pos.v <= (void *)chunk + end - ntohs(pos.p->length) &&\
|
pos.v <= (void *)chunk + end - ntohs(pos.p->length) &&\
|
||||||
ntohs(pos.p->length) >= sizeof(sctp_paramhdr_t);\
|
ntohs(pos.p->length) >= sizeof(sctp_paramhdr_t);\
|
||||||
pos.v += WORD_ROUND(ntohs(pos.p->length)))
|
pos.v += WORD_ROUND(ntohs(pos.p->length)))
|
||||||
|
@ -542,7 +541,6 @@ _sctp_walk_errors((err), (chunk_hdr), ntohs((chunk_hdr)->length))
|
||||||
#define _sctp_walk_errors(err, chunk_hdr, end)\
|
#define _sctp_walk_errors(err, chunk_hdr, end)\
|
||||||
for (err = (sctp_errhdr_t *)((void *)chunk_hdr + \
|
for (err = (sctp_errhdr_t *)((void *)chunk_hdr + \
|
||||||
sizeof(sctp_chunkhdr_t));\
|
sizeof(sctp_chunkhdr_t));\
|
||||||
(void *)err <= (void *)chunk_hdr + end - sizeof(sctp_errhdr_t) &&\
|
|
||||||
(void *)err <= (void *)chunk_hdr + end - ntohs(err->length) &&\
|
(void *)err <= (void *)chunk_hdr + end - ntohs(err->length) &&\
|
||||||
ntohs(err->length) >= sizeof(sctp_errhdr_t); \
|
ntohs(err->length) >= sizeof(sctp_errhdr_t); \
|
||||||
err = (sctp_errhdr_t *)((void *)err + WORD_ROUND(ntohs(err->length))))
|
err = (sctp_errhdr_t *)((void *)err + WORD_ROUND(ntohs(err->length))))
|
||||||
|
|
Loading…
Reference in New Issue