[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-devel] Redundant lstats in libxl_pvusb.c
>>> On 4/7/2016 at 06:43 PM, in message <22278.14817.248393.423722@xxxxxxxxxxxxxxxxxxxxxxxx>, Ian Jackson <Ian.Jackson@xxxxxxxxxxxxx> wrote: > Chun Yan Liu writes ("Re: Redundant lstats in libxl_pvusb.c"): > > <22274.33583.712655.413448@xxxxxxxxxxxxxxxxxxxxxxxx>, Ian Jackson > > <Ian.Jackson@xxxxxxxxxxxxx> wrote: > > > In libxl_usb.c, usbintf_get_drvpath calls stat(2) on the driver sysfs > > > path, and then realpath on the same path. > > > > It's true. This could be done by calling realpath only. Will correct. > > Thanks. > > > > And bind_usbintf calls stat(2) on the driver directory path, and then > > > open(2) on a file in that directory. > > > > It's not true. It calls stat(2) on a file in driver path > (driver/interface), > > and open(2) on another file in that driver path (driver/bind). > > I have read the function again and you are right. > > Coverity said: > > > > > >>> CID 1358111: Security best practices violations (TOCTOU) > > > > >>> Calling function "open" that uses "path" after a check > > > > >>> function. This can cause a time-of-check, time-of-use > > > > >>> race condition. > > But it seems that it is confused by the reuse of the path variable. > I think this is arguably a bug in Coverity. > > But, evidently, the same reuse confused me too. Maybe we should turn > `path' into two variables, `intf_path' and `bind_path' ? What do you > think ? Yeah, maybe it's better to change into 'intf_path' and 'bind_path', I'll update. But it's unavoidable that some temp variable will be reused for many times. Chunyan > > Thanks, > Ian. > > _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxx http://lists.xen.org/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |