summaryrefslogtreecommitdiff
path: root/Userland/Utilities/syscall.cpp
AgeCommit message (Collapse)Author
2022-12-06Everywhere: Rename to_{string => deprecated_string}() where applicableLinus Groh
This will make it easier to support both string types at the same time while we convert code, and tracking down remaining uses. One big exception is Value::to_string() in LibJS, where the name is dictated by the ToString AO.
2022-07-12Everywhere: Add sv suffix to strings relying on StringView(char const*)sin-ack
Each of these strings would previously rely on StringView's char const* constructor overload, which would call __builtin_strlen on the string. Since we now have operator ""sv, we can replace these with much simpler versions. This opens the door to being able to remove StringView(char const*). No functional changes.
2022-05-02Kernel: Stop requiring working malloc for syscall.h includesPatrick Meyer
Fixes #13869
2022-04-01Everywhere: Run clang-formatIdan Horowitz
2022-02-01syscall: Port to LibMainalexmajor
2021-12-16Kernel+LibC: Move errno definitions to Kernel/API/POSIXsin-ack
This fixes at least half of our LibC includes in the kernel. The source of truth for errno codes and their description strings now lives in Kernel/API/POSIX/errno.h as an enumeration, which LibC includes.
2021-11-17AK: Convert AK::Format formatting helpers to returning ErrorOr<void>Andreas Kling
This isn't a complete conversion to ErrorOr<void>, but a good chunk. The end goal here is to propagate buffer allocation failures to the caller, and allow the use of TRY() with formatting functions.
2021-11-08syscall: Translate errno to something human-readableBen Wiederhake
2021-08-06Kernel: Make a bunch of "char const* to_string()" return StringViewAndreas Kling
2021-05-17Utilities: Correct non-standard assert macros includesJean-Baptiste Boric
2021-05-14LibC: Move mman.h to sys/mman.hJean-Baptiste Boric
POSIX mandates that it is placed there.
2021-04-23Utilities: Fix the --list-syscalls option to syscall(1)Brian Gianforcaro
The 'syscall-arguments' positional arg being required was breaking the scenario where the user just passes the '--list-syscalls' argument. Instead, make the argument not required, and manually handle the error path our selves. Closes: #6574
2021-04-22Everything: Move to SPDX license identifiers in all files.Brian Gianforcaro
SPDX License Identifiers are a more compact / standardized way of representing file license information. See: https://spdx.dev/resources/use/#identifiers This was done with the `ambr` search and replace tool. ambr --no-parent-ignore --key-from-file --rep-from-file key.txt rep.txt *
2021-03-12Everywhere: Remove klog(), dbg() and purge all LogStream usage :^)Andreas Kling
Good-bye LogStream. Long live AK::Format!
2021-02-23Everywhere: Rename ASSERT => VERIFYAndreas Kling
(...and ASSERT_NOT_REACHED => VERIFY_NOT_REACHED) Since all of these checks are done in release builds as well, let's rename them to VERIFY to prevent confusion, as everyone is used to assertions being compiled out in release. We can introduce a new ASSERT macro that is specifically for debug checks, but I'm doing this wholesale conversion first since we've accumulated thousands of these already, and it's not immediately obvious which ones are suitable for ASSERT.
2021-02-14Utilities: Fix embarassing typo in syscall(1)Ben Wiederhake
2021-02-13Tests: Merge and extend syscall tests into a syscall fuzzerBen Wiederhake
This found the previous bugs :^)
2021-02-13Utilities: Make syscall(1) explain what it's doingBen Wiederhake
2021-02-13Utilities: Enable syscall(1) to use SC_*_params buffersBen Wiederhake
2021-02-13Utilities: Make syscall(1) use Core::ArgsParserBen Wiederhake
Note that this should not change the behavior at all.
2021-02-05Userland: Add LibSystem and funnel all syscalls through itAndreas Kling
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.
2021-01-12Userland: Move command-line utilities to Userland/Utilities/Andreas Kling