Messages in this thread | | | Subject | Re: [PATCH] 9p: fix NULL pointer dereferences | From | Tomas Bortoli <> | Date | Thu, 26 Jul 2018 16:32:15 +0200 |
| |
On 07/26/2018 04:21 PM, Dominique Martinet wrote: > Tomas Bortoli wrote on Thu, Jul 26, 2018: >>> But I think trans=fd allows NULL addr today, no? >> >> How ? > > Just using the mount syscall with a NULL dev_name? I haven't checked > this syzcaller reproducer but it's probably what it does. > > p9_fd_create doesn't use 'addr' at all so it's safe to create a 9p mount > for trans=fd with no device name, as Dmitry pointed out >
mmh, ok.
> >>> On the other hand, virtio, rdma and xen all have the same problem, so >>> Thomas, please fix them instead :) >> >> So just by patching v9fs_mount ? > > If we want to preserve the current behaviour for trans=fd (and I don't > see why not) we just have to patch all the transports that use the > device, that is all .create functions but p9_fd_create() > > Basically exactly what you did, just for a few more functions - I > apparently was a little bit too optimistic thinking we could share > this check. >
Does v9fs_mount() knows the transport ahead? Because in that case it'd be possible to check if addr!=NULL && trans!=fd then return error
Otherwise, patching all the .create, ok.
| |