aboutsummaryrefslogtreecommitdiff
path: root/net/lapb/lapb_timer.c
diff options
context:
space:
mode:
authorTycho Andersen <[email protected]>2019-01-12 11:24:20 -0700
committerJames Morris <[email protected]>2019-01-15 09:43:12 -0800
commita811dc61559e0c8003f1086c2a4dc8e4d5ae4cb8 (patch)
tree56144b909f723d0bf4365c2ccbd8ec2e24d9907d /net/lapb/lapb_timer.c
parent7939f8beecf1cfb10d255be65bfbd3793fae82a1 (diff)
seccomp: fix UAF in user-trap code
On the failure path, we do an fput() of the listener fd if the filter fails to install (e.g. because of a TSYNC race that's lost, or if the thread is killed, etc.). fput() doesn't actually release the fd, it just ads it to a work queue. Then the thread proceeds to free the filter, even though the listener struct file has a reference to it. To fix this, on the failure path let's set the private data to null, so we know in ->release() to ignore the filter. Reported-by: [email protected] Fixes: 6a21cc50f0c7 ("seccomp: add a return code to trap to userspace") Signed-off-by: Tycho Andersen <[email protected]> Acked-by: Kees Cook <[email protected]> Signed-off-by: James Morris <[email protected]>
Diffstat (limited to 'net/lapb/lapb_timer.c')
0 files changed, 0 insertions, 0 deletions