[SCTP]: Switch ->cmp_addr() and sctp_cmp_addr_exact() to net-endian.
instances of ->cmp_addr() are fine with switching both arguments to net-endian; callers other than in sctp_cmp_addr_exact() (both as ->cmp_addr(...) and direct calls of instances) adjusted; sctp_cmp_addr_exact() switched to net-endian itself and adjustment is done in its callers Signed-off-by: Al Viro <viro@zeniv.linux.org.uk> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
@@ -478,12 +478,14 @@ static struct dst_entry *sctp_v4_get_dst(struct sctp_association *asoc,
|
||||
*/
|
||||
sctp_read_lock(addr_lock);
|
||||
list_for_each(pos, &bp->address_list) {
|
||||
union sctp_addr tmp;
|
||||
laddr = list_entry(pos, struct sctp_sockaddr_entry,
|
||||
list);
|
||||
if (!laddr->use_as_src)
|
||||
continue;
|
||||
sctp_v4_dst_saddr(&dst_saddr, dst, bp->port);
|
||||
if (sctp_v4_cmp_addr(&dst_saddr, &laddr->a_h))
|
||||
flip_to_n(&tmp, &dst_saddr);
|
||||
if (sctp_v4_cmp_addr(&tmp, &laddr->a))
|
||||
goto out_unlock;
|
||||
}
|
||||
sctp_read_unlock(addr_lock);
|
||||
|
Reference in New Issue
Block a user