mirror of
https://github.com/BobTheBlinker/android_kernel_motorola_sm6375.git
synced 2026-10-30 11:41:38 -04:00
sctp: fix overrun in sctp_diag_dump_one()
The function sctp_diag_dump_one() currently performs a memcpy()
of 64 bytes from a 16 byte field into another 16 byte field. Fix
by using correct size, use sizeof to obtain correct size instead
of using a hard-coded constant.
Fixes: 8f840e47f1 ("sctp: add the sctp_diag.c file")
Signed-off-by: Lance Richardson <[email protected]>
Reviewed-by: Xin Long <[email protected]>
Acked-by: Marcelo Ricardo Leitner <[email protected]>
Signed-off-by: David S. Miller <[email protected]>
This commit is contained in:
parent
a8184003c0
commit
232cb53a45
1 changed files with 4 additions and 2 deletions
|
|
@ -424,11 +424,13 @@ static int sctp_diag_dump_one(struct sk_buff *in_skb,
|
|||
paddr.v4.sin_family = AF_INET;
|
||||
} else {
|
||||
laddr.v6.sin6_port = req->id.idiag_sport;
|
||||
memcpy(&laddr.v6.sin6_addr, req->id.idiag_src, 64);
|
||||
memcpy(&laddr.v6.sin6_addr, req->id.idiag_src,
|
||||
sizeof(laddr.v6.sin6_addr));
|
||||
laddr.v6.sin6_family = AF_INET6;
|
||||
|
||||
paddr.v6.sin6_port = req->id.idiag_dport;
|
||||
memcpy(&paddr.v6.sin6_addr, req->id.idiag_dst, 64);
|
||||
memcpy(&paddr.v6.sin6_addr, req->id.idiag_dst,
|
||||
sizeof(paddr.v6.sin6_addr));
|
||||
paddr.v6.sin6_family = AF_INET6;
|
||||
}
|
||||
|
||||
|
|
|
|||
Loading…
Reference in a new issue