Theodore Dubois
1b22ddb9bd
Resolve -Wmissing-field-initializers
2019-01-05 17:29:11 -08:00
Theodore Dubois
a0ca767db6
Rewrite syslog buffer to use a generic fifo
...
Trivia: I wrote this ring buffer implementation in half an hour during a Google interview and it somehow works better than the old one which took me half a day.
2019-01-05 17:24:32 -08:00
Theodore Dubois
032a218a63
Mark unused function arguments
2019-01-05 17:18:54 -08:00
Theodore Dubois
b04f6f1b3b
Remove some unnecessary function arguments
2019-01-05 17:18:54 -08:00
Theodore Dubois
a0d2a12f3b
Implement /proc/pid/cmdline and /proc/pid/exe
2019-01-04 18:53:17 -08:00
Theodore Dubois
5cfec48854
Separate out some components of struct mem into struct mm
2019-01-04 15:17:37 -08:00
Theodore Dubois
13fb417337
Correctly handle NULL sigset in sigprocmask
2019-01-03 21:15:52 -08:00
Theodore Dubois
923571fe16
Start signal stack at bottom of alternate stack, not top
...
😀 🔫
2019-01-03 18:04:15 -08:00
Theodore Dubois
8eb4b800a5
Implement /proc/pid/fd, /proc/self
2019-01-03 13:50:08 -08:00
Theodore Dubois
137e1a2814
Overhaul fdtable implementation to add locking
2019-01-02 21:50:25 -08:00
Theodore Dubois
a4c09fb0ce
Add strace for sigpending
2019-01-02 20:02:19 -08:00
Theodore Dubois
5530f3f577
Implement sigpending
2019-01-02 19:45:06 -08:00
Theodore Dubois
571e28eaa9
Fix a typo in getres[ug]id
2019-01-02 19:21:43 -08:00
Theodore Dubois
97756cb34c
Save the euid/egid when executing a setuid/setgid program
2019-01-02 19:21:25 -08:00
Theodore Dubois
1da3faacd4
Handle setuid and setgid programs
2019-01-02 18:58:16 -08:00
Theodore Dubois
bbf1eb46f5
Clear task->vfork before sys_clone returns
2019-01-01 15:08:04 -08:00
Theodore Dubois
6406cf3719
Fix condition static initializer
2019-01-01 13:14:40 -08:00
Theodore Dubois
8478bf5b53
Implement stopping processes with signals
2019-01-01 12:54:26 -08:00
Theodore Dubois
6a0f7253db
Fix locking on children_rusage in reap_if_zombie
2019-01-01 12:31:42 -08:00
Theodore Dubois
1e3319c242
Don't return ECHILD from waitpid(-1) if there are children
2018-12-31 19:38:00 -08:00
Theodore Dubois
09d3885c70
Remove useless has_timer field
2018-12-31 18:03:29 -08:00
Theodore Dubois
610e9a8295
Refactor exit management code
2018-12-31 18:03:20 -08:00
Theodore Dubois
6dca791a13
Fix memory leak of timers
2018-12-31 17:30:10 -08:00
Theodore Dubois
14d30a35df
Fix potential UAF when handling CLONE_VFORK
2018-12-31 17:29:36 -08:00
Theodore Dubois
3b7c92d141
Implement sigsuspend
...
Fixes zsh (#103 )
2018-12-30 21:19:46 -08:00
Theodore Dubois
ac422754ce
Improve dump_stack output
2018-12-30 21:19:22 -08:00
Theodore Dubois
eb87fe2a64
Make sure the strace output from exit actually appears
2018-12-30 21:19:03 -08:00
Theodore Dubois
87adcbc176
Handle errors in opening a shell script interpreter
2018-12-30 20:28:11 -08:00
Theodore Dubois
5c135f4a88
Unbreak ssh ( fixes #224 )
2018-12-27 20:57:06 -08:00
Theodore Dubois
7f48c0e806
Stub copy_file_range
2018-12-27 20:21:07 -08:00
Theodore Dubois
da72010be3
Implement getres[ug]id
2018-12-27 20:21:01 -08:00
Theodore Dubois
ca3dd4a4ad
Make statfs less broken
2018-12-27 16:25:33 -08:00
Theodore Dubois
102279ef69
Print timeout in epoll strace in base 10
2018-12-26 17:30:28 -08:00
Theodore Dubois
4af803d3db
Reparent children before destroying the task
2018-12-26 17:30:11 -08:00
Theodore Dubois
3c8a38e7cd
Fix fd leak from chroot
2018-12-26 17:29:52 -08:00
Theodore Dubois
e6ffd60dd6
Add strace for statfs
2018-12-26 17:29:44 -08:00
Theodore Dubois
5315fbbc0a
Fix crash when epoll returns an error
2018-12-26 12:29:47 -08:00
Theodore Dubois
5deb511281
Implement epoll_pwait
2018-12-26 12:29:40 -08:00
Theodore Dubois
2e83bbe9fb
Fix some lock ordering issues
2018-12-26 12:11:07 -08:00
Theodore Dubois
3fd114733a
Half broken epoll implementation
2018-12-25 19:05:25 -08:00
Theodore Dubois
377aa9056e
Save the name of the program in the task struct
2018-12-24 23:12:19 -08:00
Theodore Dubois
9019f9c5aa
Start pids at 1 again
2018-12-24 23:11:38 -08:00
Theodore Dubois
e7c6f84afb
Fix grammar
2018-12-24 18:38:58 -08:00
Theodore Dubois
725ec6daf6
Autoincrementing pids
2018-12-24 18:38:47 -08:00
Theodore Dubois
f6f54adb19
Fix string.h being auto included pretty much everywhere
2018-12-24 13:20:29 -08:00
Theodore Dubois
da27277989
Don't crash the app on RNG failure
2018-12-24 12:02:31 -08:00
Theodore Dubois
e6361c2ea2
Improve uname output
2018-12-23 20:51:32 -08:00
Theodore Dubois
f94d222300
Implement procfs with just /proc/version
2018-12-23 20:40:14 -08:00
Theodore Dubois
ede204366c
Add stubs for capget and capset
2018-12-23 15:45:00 -08:00
Theodore Dubois
ff4f9d9704
Don't abort on unimplemented setitimer
2018-12-23 14:54:57 -08:00