mirror of
https://github.com/RGBCube/serenity
synced 2026-01-14 14:30:59 +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. |
||
|---|---|---|
| .. | ||
| ConsoleManagement.cpp | ||
| ConsoleManagement.h | ||
| MasterPTY.cpp | ||
| MasterPTY.h | ||
| PTYMultiplexer.cpp | ||
| PTYMultiplexer.h | ||
| SlavePTY.cpp | ||
| SlavePTY.h | ||
| TTY.cpp | ||
| TTY.h | ||
| VirtualConsole.cpp | ||
| VirtualConsole.h | ||