mirror of
https://github.com/SerenityOS/serenity
synced 2024-09-06 17:06:31 +00:00
![]() Found due to smelly code in InodeFile::absolute_path. In particular, this replaces the following misleading methods: File::absolute_path This method *never* returns an actual path, and if called on an InodeFile (which is impossible), it would VERIFY_NOT_REACHED(). OpenFileDescription::try_serialize_absolute_path OpenFileDescription::absolute_path These methods do not guarantee to return an actual path (just like the other method), and just like Custody::absolute_path they do not guarantee accuracy. In particular, just renaming the method made a TOCTOU bug obvious. The new method signatures use KResultOr, just like try_serialize_absolute_path() already did. |
||
---|---|---|
.. | ||
HID | ||
AsyncDeviceRequest.cpp | ||
AsyncDeviceRequest.h | ||
BlockDevice.cpp | ||
BlockDevice.h | ||
CharacterDevice.cpp | ||
CharacterDevice.h | ||
ConsoleDevice.cpp | ||
ConsoleDevice.h | ||
Device.cpp | ||
Device.h | ||
DeviceManagement.cpp | ||
DeviceManagement.h | ||
FullDevice.cpp | ||
FullDevice.h | ||
KCOVDevice.cpp | ||
KCOVDevice.h | ||
KCOVInstance.cpp | ||
KCOVInstance.h | ||
MemoryDevice.cpp | ||
MemoryDevice.h | ||
NullDevice.cpp | ||
NullDevice.h | ||
PCISerialDevice.cpp | ||
PCISerialDevice.h | ||
PCSpeaker.cpp | ||
PCSpeaker.h | ||
RandomDevice.cpp | ||
RandomDevice.h | ||
SB16.cpp | ||
SB16.h | ||
SerialDevice.cpp | ||
SerialDevice.h | ||
VMWareBackdoor.cpp | ||
VMWareBackdoor.h | ||
ZeroDevice.cpp | ||
ZeroDevice.h |