Commit graph

2225 commits

Author SHA1 Message Date
Jonas 'Sortie' Termansen
0100b61855 Fix fflush(NULL) flushing input streams. 2015-12-12 16:53:42 +01:00
Jonas 'Sortie' Termansen
14a47ea15e Decide tix build triplets on Sortix without running cc. 2015-10-28 20:13:37 +01:00
Jonas 'Sortie' Termansen
1080ffa5fb Refactor and improve shell greatly. 2015-10-28 20:13:37 +01:00
Jonas 'Sortie' Termansen
54b80263a2 Add -d option to chroot(1). 2015-10-28 20:13:37 +01:00
Jonas 'Sortie' Termansen
f4995c24f4 Add kernel --init option. 2015-10-28 19:36:33 +01:00
Jonas 'Sortie' Termansen
62b5d45a78 Add kernel command line support. 2015-10-28 19:36:33 +01:00
Jonas 'Sortie' Termansen
fc637c8880 Prevent orphan processes from becoming zombies. 2015-10-28 19:36:33 +01:00
Jonas 'Sortie' Termansen
44d4807fc4 Add ENOMOUNT. 2015-10-28 19:36:33 +01:00
Jonas 'Sortie' Termansen
b2aae6094f Add mkinitrd support for multiple roots. 2015-10-28 16:28:17 +01:00
Jonas 'Sortie' Termansen
3191e18966 Cache only mkinitrd nodes with multiple hardlinks. 2015-10-28 16:28:17 +01:00
Jonas 'Sortie' Termansen
9554bab714 Add editor highlight support for diff. 2015-10-28 16:28:17 +01:00
Jonas 'Sortie' Termansen
09084cf12d Fix format nonliteral in psignal(3). 2015-10-28 16:07:36 +01:00
Jonas 'Sortie' Termansen
91087d9199 Fix iswgraph unicode support. 2015-10-28 16:07:36 +01:00
Jonas 'Sortie' Termansen
bae08f13ef Fix fsmarshall not handling users and groups.
This is an incompatible ABI change.
2015-10-28 16:07:36 +01:00
Jonas 'Sortie' Termansen
8a653584c4 Fix strtol multiplication overflow check. 2015-10-11 23:25:21 +02:00
Jonas 'Sortie' Termansen
f0f82fcb23 Fix tmpfile(3) insecure file creation. 2015-10-11 23:25:21 +02:00
Jonas 'Sortie' Termansen
7c6e6ef317 Fix kernel string copy from user-space. 2015-10-09 16:17:52 +02:00
Jonas 'Sortie' Termansen
2727d9fb50 Fix pipe destruction race condition. 2015-10-09 16:17:52 +02:00
Jonas 'Sortie' Termansen
12b5044bc7 Fix signal delivery during context switch. 2015-10-09 16:17:52 +02:00
Jonas 'Sortie' Termansen
82775c4803 Fix extfs invalid block free on truncation. 2015-10-09 16:17:52 +02:00
Jonas 'Sortie' Termansen
4ad93ec618 Fix mkinitrd(8) default rule boolean parsing. 2015-10-08 00:06:58 +02:00
Jonas 'Sortie' Termansen
6138e94124 Fix colormake not resetting color. 2015-10-06 00:36:17 +02:00
Jonas 'Sortie' Termansen
5cee2e9bc7 Fix shell line rendering use of after free. 2015-10-04 02:16:53 +02:00
Jonas 'Sortie' Termansen
6a177d4d79 Split shell into multiple files. 2015-10-04 02:16:53 +02:00
Jonas 'Sortie' Termansen
a5d050fc49 Add realpath(1). 2015-10-01 22:50:51 +02:00
Jonas 'Sortie' Termansen
875ce1adf7 Fix faccessat(2) not reporting correct permissions. 2015-10-01 22:50:51 +02:00
Jonas 'Sortie' Termansen
4c2a93ea02 Fix munmap(2) shrink from right logic.
This fixes a rather nasty issue where gcc's garbage collection triggered a
munmap call with the effect that it began unmapping huge amounts of kernel
data until the system triple faulted.
2015-10-01 22:50:51 +02:00
Jonas 'Sortie' Termansen
40c2fd12dc Fix logterminal TERMMODE_UNICODE checking. 2015-10-01 22:49:02 +02:00
Jonas 'Sortie' Termansen
6725972e11 Fix LinkInodeInDir return value.
The callers expected it to return an int different than 0 on failure. The
link method returns different than 0 on failure. This actually worked by
lucky coincidence. Change the return type to int and 0 on success, and -1
on failure per popular demand.

Thanks to Meisaka Yukara for spotting this.
2015-09-25 15:01:20 +02:00
Jonas 'Sortie' Termansen
275541383c Fix dtable return value type errors and missing input validation.
Update to current coding conventions while here.

Thanks to Meisaka Yukara for spotting the return value type errors.
2015-09-25 15:01:20 +02:00
Jonas 'Sortie' Termansen
3501b1e701 Fix console margin not having color of nearest neighbour. 2015-09-25 15:01:19 +02:00
Jonas 'Sortie' Termansen
ac6f016748 Fix partition reads and writes at end. 2015-09-25 14:59:04 +02:00
Jonas 'Sortie' Termansen
6813a26196 Fix box drawing character ninth column rendering. 2015-09-25 14:59:04 +02:00
Jonas 'Sortie' Termansen
73a182f80c Add interface to get 32-bit pages. 2015-08-28 15:24:54 +02:00
Jonas 'Sortie' Termansen
eb11613da6 Add interface to wait for IO port changes. 2015-08-28 15:24:54 +02:00
Jonas 'Sortie' Termansen
39d8894fc0 Write newline when closing the kernel debugger. 2015-08-27 22:12:45 +02:00
Jonas 'Sortie' Termansen
41d4dbdce7 Fix extfs read-only support. 2015-08-27 22:12:11 +02:00
Jonas 'Sortie' Termansen
e2202b2ddb Fix extfs unhandled allocation failures.
This is not sufficient. The operator new calls are dangerous right now
because they throw exceptions (not handled) on error instead of returning
NULL. This needs to be changed to operator new nothrow instead.
2015-08-27 22:12:11 +02:00
Jonas 'Sortie' Termansen
bc928e99a4 Fix extfs coding style and general issues.
This cleans up constructors so fields are initialized in the same order they
are declared in. This makes it trivial to spot accidentally uninitialized
fields.

This fixes a minor argument parsing bug when the mount path isn't set, but
fortunately argv[argc] is NULL and we wanted to set it to NULL anyway.

This prevents excessively large block sizes from being used.

This improves inode value range checks in the fsmarshall code. Inode 0 is
not a valid inode. The new code for this is also simpler.

This prevents creating links with names larger than 255 bytes.

This adds a check to ensure inodes don't overflow the hardlink count.

This ensures the dirent filetype is only set if supported.
2015-08-27 22:12:11 +02:00
Jonas 'Sortie' Termansen
c88dadae8b Fix extfs fuse readlink buffer overrun. 2015-08-27 22:12:11 +02:00
Jonas 'Sortie' Termansen
7953023517 Fix extfs fsmarshall symlink error case. 2015-08-27 22:12:11 +02:00
Jonas 'Sortie' Termansen
0da44df5ce Fix extfs fsmarshall read/write/readlink error reporting. 2015-08-27 22:12:11 +02:00
Jonas 'Sortie' Termansen
dd8b4198ec Fix extfs unmaintained invariant on bitmap free. 2015-08-27 22:12:11 +02:00
Jonas 'Sortie' Termansen
5deb51eeae Fix extfs reference counts. 2015-08-27 22:12:11 +02:00
Jonas 'Sortie' Termansen
21c82e4467 Fix missing static keyword in extfs. 2015-08-27 22:12:11 +02:00
Jonas 'Sortie' Termansen
b5b2d159c6 Fix extfs mkdir setting bad mode. 2015-08-27 22:12:11 +02:00
Jonas 'Sortie' Termansen
ac785d861e Add extfs optimized symlink write support. 2015-08-27 22:12:11 +02:00
Jonas 'Sortie' Termansen
147aae31b1 Sync extfs device file descriptor. 2015-08-26 23:12:55 +02:00
Jonas 'Sortie' Termansen
78d3a673aa Add statvfs support to extfs. 2015-08-26 23:12:55 +02:00
Jonas 'Sortie' Termansen
d85f446da9 Add tcgetblob support to extfs. 2015-08-26 23:12:55 +02:00