ladybird/Userland
Itamar 72ca45e300 UserspaceEmulator: Support dynamically loaded programs
When loading dynamic objects, the emulator loads the interpreter,
generates an auxiliary vector and starts executing the loader.

Additionally, this commits also makes the MallocTracer and backtrace
symbolication work for dynamically loaded programs.
2020-12-14 23:05:53 +01:00
..
DynamicLoader UserspaceEmulator: Support dynamically loaded programs 2020-12-14 23:05:53 +01:00
Tests Loader: Stabilize loader & Use shared libraries everywhere :^) 2020-12-14 23:05:53 +01:00
adjtime.cpp Userland: Add an "adjtime" utility 2020-11-10 19:03:08 +01:00
allocate.cpp Userland/allocate: Switch to KiB/MiB 2020-08-16 16:33:28 +02:00
aplay.cpp Applications+Userland: Switch to new Audio::Loader API 2020-12-02 16:31:30 +01:00
arp.cpp Everywhere: Add missing <AK/ByteBuffer.h> includes 2020-11-15 13:11:21 +01:00
avol.cpp Userland: Use Core::ArgsParser for 'avol' 2020-08-06 20:41:13 +02:00
base64.cpp base64: Fix not outputting all decoded data 2020-11-22 16:07:00 +01:00
basename.cpp Userland: Use Core::ArgsParser for 'basename' 2020-08-06 20:41:13 +02:00
cal.cpp Userland: Write some '--help' descriptions where appropriate 2020-12-06 00:06:53 +01:00
cat.cpp Userland: Write some '--help' descriptions where appropriate 2020-12-06 00:06:53 +01:00
checksum.cpp LibCore: Rename File::ShouldCloseFile{Description => Descriptor} 2020-10-25 13:59:41 +01:00
chgrp.cpp Userland: Write some '--help' descriptions where appropriate 2020-12-06 00:06:53 +01:00
chmod.cpp Everywhere: Fix more typos 2020-10-03 12:36:49 +02:00
chown.cpp chown: Don't allow "invalid" uid/gid specs (#2596) 2020-06-21 09:54:07 +02:00
chroot.cpp Userland: Write some '--help' descriptions where appropriate 2020-12-06 00:06:53 +01:00
clear.cpp clear: Use pledge() 2020-02-18 11:35:47 +01:00
CMakeLists.txt Loader: Stabilize loader & Use shared libraries everywhere :^) 2020-12-14 23:05:53 +01:00
copy.cpp Userland: Write some '--help' descriptions where appropriate 2020-12-06 00:06:53 +01:00
cp.cpp Userland: Fix overly-eager loop detection in cp (#4368) 2020-12-09 20:56:50 +01:00
crash.cpp Userland: Write some '--help' descriptions where appropriate 2020-12-06 00:06:53 +01:00
cut.cpp cut: Accept input from stdin if no files are given 2020-07-03 19:30:13 +02:00
date.cpp AK: Make string-to-number conversion helpers return Optional 2020-06-12 21:28:55 +02:00
df.cpp Userland: Write some '--help' descriptions where appropriate 2020-12-06 00:06:53 +01:00
dirname.cpp AK: Eradicate the uses of out(). 2020-10-24 12:56:25 +02:00
disasm.cpp Userland: Write some '--help' descriptions where appropriate 2020-12-06 00:06:53 +01:00
disk_benchmark.cpp Userland: Mark compilation-unit-only functions as static 2020-08-12 20:40:59 +02:00
dmesg.cpp AK: Use size_t for ByteBuffer sizes 2020-02-20 13:20:34 +01:00
du.cpp Userland: Write some '--help' descriptions where appropriate 2020-12-06 00:06:53 +01:00
echo.cpp Userland: Add support for the '-n' flag to 'echo' 2020-07-30 18:47:41 +02:00
env.cpp Userland: env: Add -i / --ignore-environment arg to clear env 2020-11-12 18:01:45 +01:00
expr.cpp Userland: Add support for 'match' in 'expr' 2020-11-27 21:32:41 +01:00
false.cpp Meta: Add license header to source files 2020-01-18 09:45:54 +01:00
fgrep.cpp Meta: Add license header to source files 2020-01-18 09:45:54 +01:00
find.cpp Userland: Implement find -name clause 2020-11-28 14:28:58 +01:00
flock.cpp Everywhere: Replace some uses of fork/exec with posix_spawn 2020-06-29 12:04:27 +02:00
functrace.cpp AK: Rename new_out to out and new_warn to warn. 2020-11-09 16:21:29 +01:00
grep.cpp LibCore: Make IODevice::read_line() return a String 2020-12-13 11:54:11 +01:00
gron.cpp Userland: Write some '--help' descriptions where appropriate 2020-12-06 00:06:53 +01:00
gunzip.cpp AK: Lower the requirements for InputStream::eof and rename it. 2020-09-14 20:58:12 +02:00
head.cpp Userland: Write some '--help' descriptions where appropriate 2020-12-06 00:06:53 +01:00
hexdump.cpp Everywhere: Add missing <AK/ByteBuffer.h> includes 2020-11-15 13:11:21 +01:00
host.cpp Userland: Write some '--help' descriptions where appropriate 2020-12-06 00:06:53 +01:00
hostname.cpp Userland: Use Core::ArgsParser for 'hostname' 2020-08-06 20:41:13 +02:00
html.cpp LibCore: Rename File::ShouldCloseFile{Description => Descriptor} 2020-10-25 13:59:41 +01:00
id.cpp Userland: Mark compilation-unit-only functions as static 2020-08-12 20:40:59 +02:00
ifconfig.cpp Userland: Write some '--help' descriptions where appropriate 2020-12-06 00:06:53 +01:00
ini.cpp Userland: Add "ini" command to read and write .ini config files 2020-07-11 23:56:33 +02:00
jp.cpp jp: Remove trailing comma at end of object/array to make output valid JSON 2020-12-14 20:25:01 +01:00
js.cpp Userland: Write some '--help' descriptions where appropriate 2020-12-06 00:06:53 +01:00
keymap.cpp keymap: Add copyright header 2020-06-18 23:00:19 +02:00
kill.cpp AK: Rename new_out to out and new_warn to warn. 2020-11-09 16:21:29 +01:00
killall.cpp Userland: Make killall accept signal names as well 2020-10-29 11:49:47 +01:00
ln.cpp ln: Use pledge() 2020-02-18 13:29:54 +01:00
ls.cpp Userland: Write some '--help' descriptions where appropriate 2020-12-06 00:06:53 +01:00
lsirq.cpp Everywhere: Add missing <AK/ByteBuffer.h> includes 2020-11-15 13:11:21 +01:00
lsof.cpp Userland: Write some '--help' descriptions where appropriate 2020-12-06 00:06:53 +01:00
lspci.cpp Everywhere: Add missing <AK/ByteBuffer.h> includes 2020-11-15 13:11:21 +01:00
man.cpp Userland: Write some '--help' descriptions where appropriate 2020-12-06 00:06:53 +01:00
md.cpp Userland: Write some '--help' descriptions where appropriate 2020-12-06 00:06:53 +01:00
misbehaving-application.cpp Userland: Provide a misbehaving application 2020-08-17 00:01:13 +02:00
mkdir.cpp AK: Rename FileSystemPath -> LexicalPath 2020-05-26 14:35:10 +02:00
mkfifo.cpp Userland: add mkfifo(1) 2020-07-19 11:46:37 +02:00
mknod.cpp Everywhere: Redundant inline specifier on constexpr functions (#3807) 2020-10-20 18:08:13 +02:00
modload.cpp Userland: Use Core::ArgsParser for 'modload' 2020-08-06 20:41:13 +02:00
modunload.cpp Userland: Use Core::ArgsParser for 'modunload' 2020-08-06 20:41:13 +02:00
more.cpp Userland: Explicitly ignore number of types read, found by Coverity 2020-08-17 09:17:57 +02:00
mount.cpp LibCore: Make IODevice::read_line() return a String 2020-12-13 11:54:11 +01:00
mv.cpp Userland: Make mv capable of moving multiple files 2020-11-29 10:14:43 +01:00
nc.cpp Userland: Write some '--help' descriptions where appropriate 2020-12-06 00:06:53 +01:00
nl.cpp LibCore: Remove leading C from filenames 2020-02-06 15:04:03 +01:00
notify.cpp LibGUI: Make GUI::Application a Core::Object 2020-07-04 14:05:57 +02:00
ntpquery.cpp Lagom: Add ntpquery to lagom build 2020-11-12 21:21:33 +01:00
open.cpp Userland: Write some '--help' descriptions where appropriate 2020-12-06 00:06:53 +01:00
pape.cpp LibGUI: Make GUI::Application a Core::Object 2020-07-04 14:05:57 +02:00
passwd.cpp Userland: Write some '--help' descriptions where appropriate 2020-12-06 00:06:53 +01:00
paste.cpp Userland: Write some '--help' descriptions where appropriate 2020-12-06 00:06:53 +01:00
pidof.cpp Userland: Do not put a trailing space after the resulting pids in pidof 2020-10-29 22:27:24 +01:00
ping.cpp Userland: Basic statistics for ping 2020-11-10 12:06:04 +01:00
printf.cpp Userland: Add an implementation of printf 2020-09-11 21:41:23 +02:00
pro.cpp Userland: Fix typo in 'pro' help 2020-12-06 15:50:02 +01:00
profile.cpp profile: Allow launching a command with profiling enabled 2020-02-22 11:01:37 +01:00
ps.cpp ps: Widen the username column slightly 2020-05-15 00:01:01 +02:00
purge.cpp Userland: Use Core::ArgsParser for 'purge' 2020-08-06 20:41:13 +02:00
readlink.cpp Userland: Add readlink(1) 2020-06-17 15:02:03 +02:00
realpath.cpp Userland: Write some '--help' descriptions where appropriate 2020-12-06 00:06:53 +01:00
reboot.cpp Meta+Userland: Make clang-format-10 clean 2020-09-25 21:18:17 +02:00
rm.cpp Userland: Add -v verbose flag to 'rm' 2020-11-17 09:40:03 +01:00
rmdir.cpp Userland: Use Core::ArgsParser for 'rmdir' 2020-08-06 20:41:13 +02:00
seq.cpp seq: Check start, step, end for NaN 2020-11-08 21:40:18 +01:00
shutdown.cpp LibCore: Remove leading C from filenames 2020-02-06 15:04:03 +01:00
sleep.cpp Userland: Fix a signal race condition 2020-09-10 16:00:11 +02:00
sort.cpp Userland: Fix segfault in sort 2020-12-09 20:55:06 +01:00
stat.cpp Kernel+LibC: Fix various build issues introduced by ssize_t 2020-05-23 15:27:33 +02:00
strace.cpp Userland: Write some '--help' descriptions where appropriate 2020-12-06 00:06:53 +01:00
su.cpp su: Refuse to run if stdin is not a TTY 2020-11-08 16:16:03 +01:00
sync.cpp Meta: Add license header to source files 2020-01-18 09:45:54 +01:00
syscall.cpp Kernel: Tidy up the syscalls list by reorganizing the enumerator macro 2020-08-04 18:17:16 +02:00
sysctl.cpp Userland: Write some '--help' descriptions where appropriate 2020-12-06 00:06:53 +01:00
tail.cpp Userland: Write some '--help' descriptions where appropriate 2020-12-06 00:06:53 +01:00
tar.cpp AK: Eradicate calls to warn(). 2020-10-25 18:52:51 +01:00
tee.cpp AK: Make Vector use size_t for its size and capacity 2020-02-25 14:52:35 +01:00
test_efault.cpp Meta+Userland: Make clang-format-10 clean 2020-09-25 21:18:17 +02:00
test_env.cpp LibC: Add tests for getenv, setenv, putenv 2020-08-01 16:46:04 +02:00
test_io.cpp AK: Eradicate calls to warn(). 2020-10-25 18:52:51 +01:00
test-bindtodevice.cpp Test: Mark compilation-unit-only functions as static 2020-08-12 20:40:59 +02:00
test-compress.cpp LibCompress: Add unit tests for CanonicalCode. 2020-09-11 16:07:45 +02:00
test-crypto.cpp test-crypto: Remove foo.response file created by testing (#4110) 2020-11-20 21:18:43 +01:00
test-gfx-font.cpp Userland: Tests: Use mkstemp temporary files in tests 2020-11-15 00:50:57 +01:00
test-js.cpp test-js: Use new format functions 2020-12-03 21:55:02 +01:00
test-pthread.cpp Userland: Add a test for pthread_once() 2020-11-24 21:36:28 +01:00
test-web.cpp LibWeb: Make HTMLDocumentParser take an existing document 2020-12-13 16:59:22 +01:00
test.cpp Test: Mark compilation-unit-only functions as static 2020-08-12 20:40:59 +02:00
top.cpp LibCore+top: Use pid_t for pgid/pgrp/sid numbers 2020-09-06 19:04:47 +02:00
touch.cpp Userland: Write some '--help' descriptions where appropriate 2020-12-06 00:06:53 +01:00
tr.cpp Meta+Userland: Make clang-format-10 clean 2020-09-25 21:18:17 +02:00
tree.cpp AK: Rename new_out to out and new_warn to warn. 2020-11-09 16:21:29 +01:00
true.cpp Meta: Add license header to source files 2020-01-18 09:45:54 +01:00
truncate.cpp AK: Make string-to-number conversion helpers return Optional 2020-06-12 21:28:55 +02:00
tt.cpp LibPthread: Return errors as positive return values 2020-12-12 21:28:12 +01:00
tty.cpp Meta: Add license header to source files 2020-01-18 09:45:54 +01:00
umount.cpp LibCore: Remove leading C from filenames 2020-02-06 15:04:03 +01:00
uname.cpp Userland: Use Core::ArgsParser for 'uname' 2020-08-06 20:41:13 +02:00
uniq.cpp Userland/uniq: Add uniq utility 2020-10-25 14:37:39 +01:00
unzip.cpp Userland: Fix buffer overflow in unzip 2020-10-01 21:15:35 +02:00
uptime.cpp uptime: Use pledge() 2020-02-18 13:29:54 +01:00
useradd.cpp LibC: Remove an unneeded string.h include in ctype.h/cpp 2020-09-27 21:15:25 +02:00
userdel.cpp Everywhere: Replace some uses of fork/exec with posix_spawn 2020-06-29 12:04:27 +02:00
utmpupdate.cpp Everywhere: Add missing <AK/ByteBuffer.h> includes 2020-11-15 13:11:21 +01:00
w.cpp Everywhere: Add missing <AK/ByteBuffer.h> includes 2020-11-15 13:11:21 +01:00
watch.cpp Userland: Write some '--help' descriptions where appropriate 2020-12-06 00:06:53 +01:00
wc.cpp Style: Remove uses of NULL, substituting nullptr 2020-10-13 13:52:52 +02:00
which.cpp Userland: Use find_executable_in_path in which. 2020-09-16 19:39:17 +02:00
whoami.cpp whoami: Use pledge() and unveil() 2020-02-18 11:35:47 +01:00
xargs.cpp Userland: Write some '--help' descriptions where appropriate 2020-12-06 00:06:53 +01:00
yes.cpp Userland: Use Core::ArgsParser for 'yes' 2020-08-06 20:41:13 +02:00