sctp: add sock_reuseport for the sock in __sctp_hash_endpoint
This is a part of sk_reuseport support for sctp. It defines a helper sctp_bind_addrs_check() to check if the bind_addrs in two socks are matched. It will add sock_reuseport if they are completely matched, and return err if they are partly matched, and alloc sock_reuseport if all socks are not matched at all. It will work until sk_reuseport support is added in sctp_get_port_local() in the next patch. v1->v2: - use 'laddr->valid && laddr2->valid' check instead as Marcelo pointed in sctp_bind_addrs_check(). Acked-by: Neil Horman <nhorman@tuxdriver.com> Signed-off-by: Xin Long <lucien.xin@gmail.com> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:

committed by
David S. Miller

parent
532ae2f10e
commit
76c6d988ae
@@ -1190,6 +1190,8 @@ int sctp_bind_addr_conflict(struct sctp_bind_addr *, const union sctp_addr *,
|
||||
struct sctp_sock *, struct sctp_sock *);
|
||||
int sctp_bind_addr_state(const struct sctp_bind_addr *bp,
|
||||
const union sctp_addr *addr);
|
||||
int sctp_bind_addrs_check(struct sctp_sock *sp,
|
||||
struct sctp_sock *sp2, int cnt2);
|
||||
union sctp_addr *sctp_find_unmatch_addr(struct sctp_bind_addr *bp,
|
||||
const union sctp_addr *addrs,
|
||||
int addrcnt,
|
||||
|
Reference in New Issue
Block a user