mirror of
https://github.com/RGBCube/serenity
synced 2025-07-27 11:27:35 +00:00
Userland: Add LibSystem and funnel all syscalls through it
This achieves two things: - Programs can now intentionally perform arbitrary syscalls by calling syscall(). This allows us to work on things like syscall fuzzing. - It restricts the ability of userspace to make syscalls to a single 4KB page of code. In order to call the kernel directly, an attacker must now locate this page and call through it.
This commit is contained in:
parent
4df3a34bc2
commit
e87eac9273
47 changed files with 164 additions and 47 deletions
7
Userland/Libraries/LibSystem/CMakeLists.txt
Normal file
7
Userland/Libraries/LibSystem/CMakeLists.txt
Normal file
|
@ -0,0 +1,7 @@
|
|||
set(SOURCES
|
||||
syscall.cpp
|
||||
)
|
||||
|
||||
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -nostdlib")
|
||||
serenity_libc(LibSystem system)
|
||||
target_include_directories(LibSystem PUBLIC ${CMAKE_CURRENT_SOURCE_DIR})
|
Loading…
Add table
Add a link
Reference in a new issue