mirror of
https://github.com/LadybirdBrowser/ladybird.git
synced 2025-05-09 20:52:54 +00:00
All threads were running with iomapbase=0 in their TSS, which the CPU interprets as "there's an I/O permission bitmap starting at offset 0 into my TSS". Because of that, any bits that were 1 inside the TSS would allow the thread to execute I/O instructions on the port with that bit index. Fix this by always setting the iomapbase to sizeof(TSS32), and also setting the TSS descriptor's limit to sizeof(TSS32), effectively making the I/O permissions bitmap zero-length. This should make it no longer possible to do I/O from userspace. :^) |
||
---|---|---|
.. | ||
avol.md | ||
cal.md | ||
crash.md | ||
echo.md | ||
keymap.md | ||
man.md | ||
md.md | ||
mkdir.md | ||
modload.md | ||
modunload.md | ||
syscall.md | ||
uname.md |