summaryrefslogtreecommitdiff
path: root/Userland
AgeCommit message (Collapse)Author
2020-08-12Meta: Replace remaining LibM/math.h includes with math.hLinus Groh
2020-08-12Userland: Make 'tt t' spawn a thread and stand stillBen Wiederhake
This is useful to test SystemMonitor and /proc, because all other multi-threaded processes tend to be moving targets.
2020-08-11LibCrypto+LibTLS+Kernel: Switch the Cipher::Mode interface to use SpanAnotherTest
This shaves 2.5 more runtime seconds off 'disasm /bin/id', and makes the Mode<T> interface a lot more allocation-friendly.
2020-08-11mv: Accept (but ignore) -fAndreas Kling
Many scripts seem to use "mv -f", so let's support that.
2020-08-11rm: Implement a basic -f modeAndreas Kling
2020-08-10Userland: Add a simple dirname(1) utilityAndreas Kling
2020-08-10Kernel: Demonstrate kill's pid/tid confusion bugBen Wiederhake
2020-08-10Kernel: Demonstrate setpgid confusion bugBen Wiederhake
Technically, this can be 'exploited' to set the pgid of an exploiting process to a near-arbitrary new pgid. This can cause conflicts when assigning future pgids, destroys the session-boundary, and might confuse future pgid-to-session lookups. In practice, I can't come up with a way that this causes actual harm.
2020-08-10disasm: Insert symbol names in disassembly streamNico Weber
The symbol name insertion scheme is different from objdump -d's. Compare the output on Build/Userland/id: * disasm: ... _start (08048305-0804836b): 08048305 push ebp ... 08048366 call 0x0000df56 0804836b o16 nop 0804836d o16 nop 0804836f nop (deregister_tm_clones (08048370-08048370)) 08048370 mov eax, 0x080643e0 ... _ZN2AK8Utf8ViewC1ERKNS_6StringE (0805d9b2-0805d9b7): _ZN2AK8Utf8ViewC2ERKNS_6StringE (0805d9b2-0805d9b7): 0805d9b2 jmp 0x00014ff2 0805d9b7 nop * objdump -d: 08048305 <_start>: 8048305: 55 push %ebp ... 8048366: e8 9b dc 00 00 call 8056006 <exit> 804836b: 66 90 xchg %ax,%ax 804836d: 66 90 xchg %ax,%ax 804836f: 90 nop 08048370 <deregister_tm_clones>: 8048370: b8 e0 43 06 08 mov $0x80643e0,%eax ... 0805d9b2 <_ZN2AK8Utf8ViewC1ERKNS_6StringE>: 805d9b2: e9 eb f6 ff ff jmp 805d0a2 <_ZN2AK10StringViewC1ERKNS_6StringE> 805d9b7: 90 nop Differences: 1. disasm can show multiple symbols that cover the same instructions. I've only seen this happen for C1/C2 (and D1/D2) ctor/dtor pairs, but it could conceivably happen with ICF as well. 2. disasm separates instructions that do not belong to a symbol with a newline, so that nop padding isn't shown as part of a function when it technically isn't. 3. disasm shows symbols that are skipped (due to having size 0) in parenthesis, separated from preceding and following instructions.
2020-08-09disasm: For ELF files, disassemble .text sectionNico Weber
Since disasm is built in lagom, this requires adding LibELF to lagom.
2020-08-08open: Resolve the realpath before passing it to URL()AnotherTest
...which runs it through LexicalPath. Fixes #3016.
2020-08-06Userland: Use Core::ArgsParser for 'aplay'Linus Groh
2020-08-06Userland: Use Core::ArgsParser for 'avol'Linus Groh
2020-08-06Userland: Use Core::ArgsParser for 'basename'Linus Groh
2020-08-06Userland: Use Core::ArgsParser for 'chgrp'Linus Groh
2020-08-06Userland: Use Core::ArgsParser for 'disasm'Linus Groh
2020-08-06Userland: Use Core::ArgsParser for 'hostname'Linus Groh
2020-08-06Userland: Handle invalid JSON in 'jp'Linus Groh
2020-08-06Userland: Use Core::ArgsParser for 'jp'Linus Groh
2020-08-06Userland: Use Core::ArgsParser for 'md'Linus Groh
2020-08-06Userland: Use Core::ArgsParser for 'modload'Linus Groh
2020-08-06Userland: Use Core::ArgsParser for 'modunload'Linus Groh
2020-08-06Userland: Use Core::ArgsParser for 'ping'Linus Groh
2020-08-06Userland: Use Core::ArgsParser for 'pro'Linus Groh
2020-08-06Userland: Use Core::ArgsParser for 'purge'Linus Groh
2020-08-06Userland: Use Core::ArgsParser for 'realpath'Linus Groh
2020-08-06Userland: Use Core::ArgsParser for 'rmdir'Linus Groh
2020-08-06Userland: Use Core::ArgsParser for 'su'Linus Groh
2020-08-06Userland: Use Core::ArgsParser for 'tr'Linus Groh
2020-08-06Userland: Use Core::ArgsParser for 'tt'Linus Groh
2020-08-06Userland: Use Core::ArgsParser for 'uname'Linus Groh
2020-08-06Userland: Use Core::ArgsParser for 'which'Linus Groh
2020-08-06Userland: Use Core::ArgsParser for 'yes'Linus Groh
2020-08-06Refactor: Expose const_cast by removing ByteBuffer::warp(const void*, size_t)asynts
This function did a const_cast internally which made the call side look "safe". This method is removed completely and call sites are replaced with ByteBuffer::wrap(const_cast<void*>(data), size) which makes the behaviour obvious.
2020-08-05Unicode: Try s/codepoint/code_point/g againNico Weber
This time, without trailing 's'. Ran: git grep -l 'codepoint' | xargs sed -ie 's/codepoint/code_point/g
2020-08-05Revert "Unicode: s/codepoint/code_point/g"Nico Weber
This reverts commit ea9ac3155d1774f13ac4e9a96605c0e85a8f299e. It replaced "codepoint" with "code_points", not "code_point".
2020-08-05LibTLS + LibCrypto: Suppress unobserved Optoinal<T> return values.Brian Gianforcaro
2020-08-04Revert "LibM: Always include <math.h> instead of <LibM/math.h>"Andreas Kling
This reverts commit dc12cbca41b8b667ae7ced1066647d47186d1557. Sadly this broke the build due to some confusion about <new>. Reverting until this can be solved fully.
2020-08-04LibM: Always include <math.h> instead of <LibM/math.h>Andreas Kling
This makes Lagom pick up the host math.h, which is what we want.
2020-08-04Kernel: Tidy up the syscalls list by reorganizing the enumerator macroAndreas Kling
2020-08-04LibCompress: Add LibCompressstelar7
For now this only contains DEFLATE, and a very simple Zlib Eventually GZip, etc. can go here as well.
2020-08-03Unicode: s/codepoint/code_point/gAndreas Kling
Unicode calls them "code points" so let's follow their style.
2020-08-02Tests: License headers, clang-format, clearer outputBen Wiederhake
2020-08-02Tests: Build automatically, fix compilation errorsBen Wiederhake
2020-08-01LibC: Add tests for getenv, setenv, putenvBen Wiederhake
2020-08-01lsof: Fix some minor issuesAndreas Kling
Correct copyright year, fix a comment and add missing veil lock.
2020-07-31Userland: Add basic `lsof' commandMaciej Zygmanowski
2020-07-31LibCrypto: Do not trim leading zeros in export_data by defaultAnotherTest
This fixes the issue with the exported data having a leading zero, causing RSA::encrypt to trim the block down, and ruining the encryption. Fixes #2691 :^)
2020-07-31Userland: Add missing checks for MappedFile.is_valid()Ben Wiederhake
2020-07-30Userland: Add support for the '-n' flag to 'echo'AnotherTest