On Mon, Jun 26, 2017 at 07:30:19AM -0700, Dave Watson wrote: >On 06/25/17 02:42 AM, Levin, Alexander (Sasha Levin) wrote: >> On Wed, Jun 14, 2017 at 11:37:14AM -0700, Dave Watson wrote: >> >Add the infrustructure for attaching Upper Layer Protocols (ULPs) over TCP >> >sockets. Based on a similar infrastructure in tcp_cong. The idea is that any >> >ULP can add its own logic by changing the TCP proto_ops structure to its own >> >methods. >> > >> >Example usage: >> > >> >setsockopt(sock, SOL_TCP, TCP_ULP, "tls", sizeof("tls")); >> > >> >modules will call: >> >tcp_register_ulp(&tcp_tls_ulp_ops); >> > >> >to register/unregister their ulp, with an init function and name. >> > >> >A list of registered ulps will be returned by tcp_get_available_ulp, which is >> >hooked up to /proc. Example: >> > >> >$ cat /proc/sys/net/ipv4/tcp_available_ulp >> >tls >> > >> >There is currently no functionality to remove or chain ULPs, but >> >it should be possible to add these in the future if needed. >> > >> >Signed-off-by: Boris Pismenny <borisp@xxxxxxxxxxxx> >> >Signed-off-by: Dave Watson <davejwatson@xxxxxx> >> >> Hey Dave, >> >> I'm seeing the following while fuzzing, which was bisected to this commit: >> >> ================================================================== >> BUG: KASAN: null-ptr-deref in copy_to_user include/linux/uaccess.h:168 [inline] >> BUG: KASAN: null-ptr-deref in do_tcp_getsockopt.isra.33+0x24f/0x1e30 net/ipv4/tcp.c:3057 >> Read of size 4 at addr 0000000000000020 by task syz-executor1/15452 > >At a glance, this looks like it was fixed already by > >https://www.mail-archive.com/netdev@xxxxxxxxxxxxxxx/msg175226.html > >Can you recheck with that patch, or verify that you already have it? >Thanks. I've already tried this patch, it doesn't fix the issue I've reported. -- Thanks, Sasha