On Mon, Sep 09, 2019 at 03:33:29PM +0800, Xin Long wrote: > This issue causes SCTP_PEER_ADDR_THLDS sockopt not to be able to dump > a transport thresholds info. > > Fix it by adding 'goto' put_user in sctp_getsockopt_paddr_thresholds. > > Fixes: 8add543e369d ("sctp: add SCTP_FUTURE_ASSOC for SCTP_PEER_ADDR_THLDS sockopt") > Signed-off-by: Xin Long <lucien.xin@xxxxxxxxx> > --- > net/sctp/socket.c | 3 ++- > 1 file changed, 2 insertions(+), 1 deletion(-) > > diff --git a/net/sctp/socket.c b/net/sctp/socket.c > index 9d1f83b..ad87518 100644 > --- a/net/sctp/socket.c > +++ b/net/sctp/socket.c > @@ -7173,7 +7173,7 @@ static int sctp_getsockopt_paddr_thresholds(struct sock *sk, > val.spt_pathmaxrxt = trans->pathmaxrxt; > val.spt_pathpfthld = trans->pf_retrans; > > - return 0; > + goto out; > } > > asoc = sctp_id2assoc(sk, val.spt_assoc_id); > @@ -7191,6 +7191,7 @@ static int sctp_getsockopt_paddr_thresholds(struct sock *sk, > val.spt_pathmaxrxt = sp->pathmaxrxt; > } > > +out: > if (put_user(len, optlen) || copy_to_user(optval, &val, len)) > return -EFAULT; > > -- > 2.1.0 > > Acked-by: Neil Horman <nhorman@xxxxxxxxxxxxx>