Commit graph

60 commits

Author SHA1 Message Date
Jonas 'Sortie' Termansen
eb831479fb Implement AT_SYMLINK_FOLLOW and AT_SYMLINK_NOFOLLOW. 2013-12-19 17:42:08 +01:00
Jonas 'Sortie' Termansen
2302350d78 Remove <sortix/kernel/platform.h>. 2013-12-17 14:30:45 +01:00
Jonas 'Sortie' Termansen
defa74d7ec Add F_DUPFD, F_DUPFD_CLOEXEC, F_DUPFD_CLOFORK. 2013-12-17 14:30:43 +01:00
Jonas 'Sortie' Termansen
8c0e0235d6 Refactor fcntl(2) ABI.
This is an incompatible ABI change.
2013-12-17 14:30:43 +01:00
Jonas 'Sortie' Termansen
b399ece14b Add dup3(2). 2013-12-17 14:30:42 +01:00
Jonas 'Sortie' Termansen
938f722dcb Add tcsetpgrp(2) and tcgetpgrp(2). 2013-12-17 14:30:36 +01:00
Jonas 'Sortie' Termansen
5d1fe2620b Add mkpartition(2). 2013-12-17 14:30:36 +01:00
Jonas 'Sortie' Termansen
d2aab888d1 Add chroot(2), fchroot(2) and fchrootat(2). 2013-12-17 14:30:35 +01:00
Jonas 'Sortie' Termansen
ddf3dd329f Add fchdirat(2). 2013-12-17 14:30:35 +01:00
Jonas 'Sortie' Termansen
27bdbf1c9d Add utimens support to inodes. 2013-12-17 14:30:35 +01:00
Jonas 'Sortie' Termansen
1bc470624f Refactor kernel process.h and thread.h headers. 2013-12-17 14:30:34 +01:00
Jonas 'Sortie' Termansen
ef32b3fcbe Add {,p}{read,write}v(2). 2013-12-17 14:30:33 +01:00
Jonas 'Sortie' Termansen
c514dda0b2 Add O_NONBLOCK support to sockets. 2013-12-17 14:30:31 +01:00
Jonas 'Sortie' Termansen
79a49b2015 Add socket interface. 2013-12-17 14:30:30 +01:00
Jonas 'Sortie' Termansen
ee106231c4 Add utimensat(2) and futimens(2). 2013-12-17 14:30:30 +01:00
Jonas 'Sortie' Termansen
dbc6c8c663 Add ioctl(2). 2013-12-17 14:30:29 +01:00
Jonas 'Sortie' Termansen
38b146472e Implement F_SETFL and F_GETFL support in fcntl. 2013-12-17 14:30:29 +01:00
Jonas 'Sortie' Termansen
ac1d64fd7e Refactor descriptor flags and security. 2013-12-17 14:30:29 +01:00
Jonas 'Sortie' Termansen
f29abd73ec Add fsync(2). 2013-12-17 14:30:29 +01:00
Jonas 'Sortie' Termansen
729bfa3c32 Add readlink{,at}(2). 2013-12-17 14:30:28 +01:00
Jonas 'Sortie' Termansen
8e0aefda20 Add rename(2) and renameat(2). 2013-12-17 14:30:26 +01:00
Jonas 'Sortie' Termansen
2ce76e3876 Refactor system call API. 2013-12-17 14:30:26 +01:00
Jonas 'Sortie' Termansen
3b35dad9f7 Add AT_REMOVEFILE flag to unlinkat(2).
This allows unlinkat(2) to delete files and directories in the same call,
which is useful for the implementation of remove(3).
2013-12-17 14:30:25 +01:00
Jonas 'Sortie' Termansen
1fa2df3e6a Replace system calls that accept a path with *at versions. 2013-12-17 14:30:25 +01:00
Jonas 'Sortie' Termansen
921deb6eeb Add linkat(2). 2013-12-17 14:30:25 +01:00
Jonas 'Sortie' Termansen
2ef2269168 Add fchmodat(2). 2013-12-17 14:30:25 +01:00
Jonas 'Sortie' Termansen
f21462bf18 Add fchmod(2). 2013-12-17 14:30:25 +01:00
Jonas 'Sortie' Termansen
c1280bedb0 Add fchown(2). 2013-12-17 14:30:25 +01:00
Jonas 'Sortie' Termansen
cb4569c615 Add fchownat(2). 2013-12-17 14:30:25 +01:00
Jonas 'Sortie' Termansen
f843e15666 Add truncateat(2).
Linux doesn't have this, but since I do truncate(2) in the kernel, it would
be more consistent to do it 'at'-style. (I will remove truncate(2) from the
kernel and let libc call truncateat(2) soon anyway).
2013-12-17 14:30:25 +01:00
Jonas 'Sortie' Termansen
37a4c8f05e Add fchdir(2). 2013-12-17 14:30:25 +01:00
Jonas 'Sortie' Termansen
7dd59dd2e0 Add mkdirat(2). 2013-12-17 14:30:25 +01:00
Jonas 'Sortie' Termansen
caf4a1f2c5 Add faccessat(2). 2013-12-17 14:30:25 +01:00
Jonas 'Sortie' Termansen
835f0d5fbc Add unlinkat(2). 2013-12-17 14:30:25 +01:00
Jonas 'Sortie' Termansen
8e50f3d76b Add dup2(2). 2013-12-17 14:30:25 +01:00
Jonas 'Sortie' Termansen
49fe4aa51f Add link(2). 2013-12-17 14:30:25 +01:00
Jonas 'Sortie' Termansen
2389a834b5 Add chown(3). 2013-12-17 14:30:25 +01:00
Jonas 'Sortie' Termansen
a11439bc87 Add chmod(2). 2013-12-17 14:30:24 +01:00
Jonas 'Sortie' Termansen
1444683ea8 Refactor kernel VFS.
Note: This is an incompatible ABI change.
2013-12-17 14:30:24 +01:00
Jonas 'Sortie' Termansen
90036ca6a8 Update copyright headers of old files to the current format. 2013-12-17 14:30:23 +01:00
Jonas 'Sortie' Termansen
d890488304 Void system calls must now have a return value. 2013-07-07 17:03:01 +02:00
Jonas 'Sortie' Termansen
32f87f461d Remember path when opening files. 2012-12-14 14:13:37 +01:00
Jonas 'Sortie' Termansen
2c286d6830 Replace <libmaxsi/format.h> with <stdio.h>. 2012-12-14 14:13:34 +01:00
Jonas 'Sortie' Termansen
5d082b3bbb Replace Maxsi::Error:: with <errno.h>. 2012-12-14 14:13:34 +01:00
Jonas 'Sortie' Termansen
3095503b9b Correct usage of deprecated nat and byte data types. 2012-12-14 14:13:33 +01:00
Jonas 'Sortie' Termansen
af015491db sortix/io.cpp is now ready for new system call semantics. 2012-08-04 18:35:23 +02:00
Jonas 'Sortie' Termansen
36ff6c7f96 seek(2) now correctly rejects a bad whence value. 2012-04-10 13:20:33 +02:00
Jonas 'Sortie' Termansen
c62eb09cdc Added stubs for pread(2) and pwrite(2).
These are not implemented yet because the current kernel design is bad.

However, I need the stubs for other code.
2012-03-24 15:23:07 +01:00
Jonas 'Sortie' Termansen
db79994e64 Refactored all the sortix headers into a include directory.
Also got rid of trailing white space. That corrupted .git/.

Big ass-commit because of recovered .git directory.
2012-03-22 00:52:29 +01:00
Jonas 'Sortie' Termansen
7ebed6dd6a sortix/io.cpp now uses <sortix/seek.h>. 2012-02-24 22:02:01 +01:00