From b45a8c66a6482db7cf8cd2d0f1d48a39211a503d Mon Sep 17 00:00:00 2001 From: Thomas Graf Date: Tue, 3 Apr 2012 22:17:53 +0000 Subject: [PATCH] --- yaml --- r: 298759 b: refs/heads/master c: acdd5985364f8dc511a0762fab2e683f29d9d692 h: refs/heads/master i: 298757: a46fe041b52ee3877f9c4f146d930c5901e5fe53 298755: 5e2175d4696b8a0b5e6b58015b215fce67da027f 298751: fab771cf0ab18e0e2ea39c451dfc49b93c2898e5 v: v3 --- [refs] | 2 +- trunk/net/sctp/socket.c | 5 +++-- 2 files changed, 4 insertions(+), 3 deletions(-) diff --git a/[refs] b/[refs] index 4e87ed6036b7..fe571bc3941e 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: d96fc659aeb27686cef42d305cfd0c9702f8841c +refs/heads/master: acdd5985364f8dc511a0762fab2e683f29d9d692 diff --git a/trunk/net/sctp/socket.c b/trunk/net/sctp/socket.c index 06b42b7f5a02..92ba71dfe080 100644 --- a/trunk/net/sctp/socket.c +++ b/trunk/net/sctp/socket.c @@ -4133,9 +4133,10 @@ static int sctp_getsockopt_disable_fragments(struct sock *sk, int len, static int sctp_getsockopt_events(struct sock *sk, int len, char __user *optval, int __user *optlen) { - if (len < sizeof(struct sctp_event_subscribe)) + if (len <= 0) return -EINVAL; - len = sizeof(struct sctp_event_subscribe); + if (len > sizeof(struct sctp_event_subscribe)) + len = sizeof(struct sctp_event_subscribe); if (put_user(len, optlen)) return -EFAULT; if (copy_to_user(optval, &sctp_sk(sk)->subscribe, len))