diff options
author | Xin Long <lucien.xin@gmail.com> | 2018-09-03 15:47:10 +0800 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2018-09-03 21:57:54 -0700 |
commit | af8a2b8ba7678b4695f9e854ba9abae1076beabe (patch) | |
tree | b742478f7f6e75cfa5c4368a098474c4818c26e0 /net/sctp/sm_statefuns.c | |
parent | bf68066fccb10fce6bbffdda24ee2ae314c9c5b2 (diff) | |
download | linux-af8a2b8ba7678b4695f9e854ba9abae1076beabe.tar.bz2 |
sctp: fix invalid reference to the index variable of the iterator
Now in sctp_apply_peer_addr_params(), if SPP_IPV6_FLOWLABEL flag is set
and trans is NULL, it would use trans as the index variable to traverse
transport_addr_list, then trans is set as the last transport of it.
Later, if SPP_DSCP flag is set, it would enter into the wrong branch as
trans is actually an invalid reference.
So fix it by using a new index variable to traverse transport_addr_list
for both SPP_DSCP and SPP_IPV6_FLOWLABEL flags process.
Fixes: 0b0dce7a36fb ("sctp: add spp_ipv6_flowlabel and spp_dscp for sctp_paddrparams")
Reported-by: Julia Lawall <julia.lawall@lip6.fr>
Signed-off-by: Xin Long <lucien.xin@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net/sctp/sm_statefuns.c')
0 files changed, 0 insertions, 0 deletions