50 Commits

Author SHA1 Message Date
Theodore Dubois
fd88906165 Implement /dev/null 2017-12-15 15:55:53 -08:00
Theodore Dubois
77afbe3aa3 Replace err_map(errno) with errno_map, and fix EPIPE handling 2017-12-15 15:55:53 -08:00
Theodore Dubois
5def3fe279 Add strace to a few calls 2017-12-15 14:19:45 -08:00
Theodore Dubois
a285b6ac90 Implement sys_socketpair 2017-12-14 18:56:10 -08:00
Theodore Dubois
5e886c5dbd Return ESPIPE for lseek on non-seekable files 2017-12-14 18:20:31 -08:00
Theodore Dubois
bc6d3c6e64 Implement socket shutdown 2017-12-14 18:19:26 -08:00
Theodore Dubois
6f407c286f Return _EINVAL if ioctl is not implemented for a file 2017-12-14 18:03:59 -08:00
Theodore Dubois
bd6ab0f1e2 Add a refcounted layer between pagetables and actual data 2017-12-14 14:35:00 -08:00
Theodore Dubois
f59d419c0e Duplicate fds on fork and close them on exit 2017-12-06 16:47:56 -08:00
Theodore Dubois
e25302ed98 Redesign VFS mmap 2017-12-06 15:14:17 -08:00
Theodore Dubois
b15f923d1f Fix sockaddr family detection 2017-12-05 17:22:13 -08:00
Theodore Dubois
a7b7ba865f Fix sockaddr conversion on Mac 2017-12-04 18:13:09 -08:00
Theodore Dubois
275dec070b Save the filesystem database on exit, translate open flags 2017-12-01 15:19:51 -08:00
Theodore Dubois
d8081d15ea Fix various errors and warnings in Xcode 2017-12-01 11:20:33 -08:00
Theodore Dubois
761a157f3b Add support for shebang lines 2017-11-29 19:07:10 -08:00
Theodore Dubois
9d8e14ddc3 Implement chroot 2017-11-29 17:33:23 -08:00
Theodore Dubois
8fea4297f7 Fix NULL check in sys_fchdir 2017-11-29 16:58:46 -08:00
Theodore Dubois
a39d1fbd3d Add a TODO message for when I'll need to implement threads 2017-11-29 16:58:26 -08:00
Theodore Dubois
52e7bd66a9 Improve strace messages 2017-11-29 16:58:12 -08:00
Theodore Dubois
ce80cd402b Only apply umask & 0777 2017-11-29 16:57:44 -08:00
Theodore Dubois
bbd6a69833 Add umount2 stub 2017-11-29 16:26:43 -08:00
Theodore Dubois
aeda183a3d Fix fallocate to actually work 2017-11-29 16:20:47 -08:00
Theodore Dubois
d6dbc8487b Implement fchdir 2017-11-28 18:45:00 -08:00
Theodore Dubois
592fd48a59 Implement fchmodat 2017-11-28 18:32:17 -08:00
Theodore Dubois
bcfc41aa82 Implement mkdir 2017-11-28 18:25:25 -08:00
Theodore Dubois
f34a8ebaf1 Implement fallocate 2017-11-28 17:26:27 -08:00
Theodore Dubois
433472b4d1 Implement ftruncate and truncate 2017-11-28 17:12:24 -08:00
Theodore Dubois
9a5202ebec Replace fchown, chown, fchmod, chmod with setattr 2017-11-27 17:15:58 -08:00
Theodore Dubois
b16f41bd4f Implement fchownat 2017-11-20 15:43:49 -08:00
Theodore Dubois
bd70020673 Implement symlink system call 2017-11-19 20:41:05 -08:00
Theodore Dubois
44967f21b7 Implement rename 2017-11-18 20:43:09 -08:00
Theodore Dubois
1fd70ada09 Use const char * for all the path pointers in the VFS 2017-11-17 23:02:41 -08:00
Theodore Dubois
37aef44173 Stop mutating the path in real fs functions 2017-11-15 17:44:11 -08:00
Theodore Dubois
6e85bf4ffb Set the current directory correctly when there's no root 2017-11-14 16:46:27 -08:00
Theodore Dubois
ad7713ab95 Make crosspage memory access work 2017-11-14 16:45:32 -08:00
Theodore Dubois
cd370cd0cb Get alpine filesystem into iOS app 2017-10-30 17:16:56 -07:00
Theodore Dubois
63a9ff018e Replace extended attributes with an NDBM-API-compatible database 2017-10-28 18:52:26 -07:00
Theodore Dubois
512aae7590 Fix missing include for pthread_kill 2017-10-25 17:18:45 -07:00
Theodore Dubois
afb6b5d5c6 Exit handling on iOS 2017-10-25 15:52:09 -07:00
Theodore Dubois
a8f8684ce3 Include signal.h in kernel/init.c 2017-10-18 16:21:18 -07:00
Theodore Dubois
924b4761b3 Use realpath in mount_root 2017-10-18 15:58:46 -07:00
Theodore Dubois
3fa4a8da03 Declare mounts as extern in header file 2017-10-18 15:58:46 -07:00
Theodore Dubois
93c254dae4 Split out some things from the xX_main_Xx function 2017-10-18 15:58:46 -07:00
Theodore Dubois
60bf7e5a32 Silence some "not a prototype" warnings 2017-10-18 14:37:38 -07:00
Theodore Dubois
50f78ce922 Remove useless stdatomic.h include 2017-10-16 15:01:30 -07:00
Theodore Dubois
b5150b8390 Improve compatibility with macos 2017-10-15 17:04:09 -07:00
Theodore Dubois
a08a34a62f Implement thread-based timer architecture 2017-10-14 15:57:12 -07:00
Theodore Dubois
c4f793f314 Use one big lock for all the pids 2017-10-14 14:36:33 -07:00
Theodore Dubois
fb94468d50 Use lock macros everywhere 2017-10-14 14:22:49 -07:00
Theodore Dubois
f1e63c43e0 Rename sys directory to kernel
A number of the headers in it were conflicting with macOS system
headers.
2017-10-13 16:54:11 -07:00