diff options
author | Ursula Braun <ubraun@linux.ibm.com> | 2018-05-02 17:53:56 +0300 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2018-05-02 20:27:19 +0300 |
commit | 784813aed6ba24a1f24e7e11d9d0f208cee37a7d (patch) | |
tree | dbcd307055b4f0361d8b426306746b0aa09181ea /net/sched/sch_fq.c | |
parent | af3e0fcf78879f718c5f73df0814951bd7057d34 (diff) | |
download | linux-784813aed6ba24a1f24e7e11d9d0f208cee37a7d.tar.xz |
net/smc: restrict non-blocking connect finish
The smc_poll code tries to finish connect() if the socket is in
state SMC_INIT and polling of the internal CLC-socket returns with
EPOLLOUT. This makes sense for a select/poll call following a connect
call, but not without preceding connect().
With this patch smc_poll starts connect logic only, if the CLC-socket
is no longer in its initial state TCP_CLOSE.
In addition, a poll error on the internal CLC-socket is always
propagated to the SMC socket.
With this patch the code path mentioned by syzbot
https://syzkaller.appspot.com/bug?extid=03faa2dc16b8b64be396
is no longer possible.
Signed-off-by: Ursula Braun <ubraun@linux.ibm.com>
Reported-by: syzbot+03faa2dc16b8b64be396@syzkaller.appspotmail.com
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net/sched/sch_fq.c')
0 files changed, 0 insertions, 0 deletions