41c90aa436
kernel: Add POSIX timer support
2024-01-05 22:12:58 +01:00
b619f717c8
kernel+libc: Implement pause() and sigsuspend()
continuous-integration/drone/push Build is passing
2023-12-04 20:26:01 +01:00
5bb4321134
libc: Add login_tty() and forkpty()
2023-11-25 12:18:25 +01:00
8a90db837b
kernel+libc: Add support for supplementary groups (2/2)
...
Adds system calls for setting and getting groups, along with libc wrappers.
2023-11-22 21:31:07 +01:00
678121c3ed
kernel+libc: Add setitimer()
continuous-integration/drone/push Build is passing
2023-11-16 21:48:18 +01:00
2134dcc5ec
libc: Add madvise stub
2023-10-15 13:09:56 +02:00
7db6e0163a
libc: Add unused WUNTRACED define for gcc
2023-10-15 13:09:46 +02:00
bd0fb8fe5b
libc: Add pclose definition
...
The function was already implemented, but no definition in the header...
2023-10-15 13:09:22 +02:00
15d5f00cd3
libc: Add ctermid
continuous-integration/drone/push Build is passing
2023-10-15 11:09:08 +02:00
c323a812a5
kernel+libc+terminal+wind: Add support for POSIX sessions
...
continuous-integration/drone/push Build is passing
Fixes #42 .
2023-10-14 20:41:34 +02:00
a47321a228
libc: Implement openpty()
continuous-integration/drone/push Build is passing
2023-09-22 23:02:33 +02:00
36fad85396
kernel+init+preinit+wind: Remove the kernel TTY and support only userspace terminals
...
continuous-integration/drone/push Build is passing
Still allow printing text to the console, but without text input or ANSI escape fancy stuff.
2023-09-21 19:31:54 +02:00
75ea81bfbc
libc: Add pseudoterminal-related functions
2023-09-20 07:06:00 +02:00
a93626fc41
kernel: Add pseudoterminals and a /dev/pts filesystem
2023-09-20 07:05:59 +02:00
6a35cad8d5
kernel: Add POLLHUP and store it when a polled socket's peer disconnects
2023-09-20 07:05:52 +02:00
3f1e6fc2ff
libluna+kernel: Move luna/Syscall.h to the kernel API directory
...
continuous-integration/drone/push Build is failing
A kernel-specific header has nothing to do in libluna.
2023-08-23 14:35:21 +02:00
95a33c484e
kernel+libc: Add a memstat() syscall
...
We can finally show memory usage in userspace.
This could have been done using sysfs, but I'm lazy and don't want to implement that. Maybe in the next release?
2023-08-17 20:15:32 +02:00
49a6c39c38
libc: Implement popen() and pclose()
2023-08-15 19:21:25 +02:00
e2a77bb3da
kernel+libc: Add pledge support
continuous-integration/drone/push Build is failing
2023-08-12 21:38:25 +02:00
181b4c151b
tools: Build libstdc++
2023-08-11 18:24:38 +02:00
0c64b6e040
libc: Add some stub network-related header files
2023-08-11 18:09:45 +02:00
52064e0317
libc+kernel: Add alarm() and getpagesize()
2023-08-11 18:09:12 +02:00
ec3c1132d2
libc: Fix constness of some socket functions
2023-08-11 18:00:15 +02:00
5a1adcb2a6
libc: Add putenv
2023-08-11 17:59:04 +02:00
c4f6191e24
libc: Implement some simple stuff needed for gcc
2023-08-08 22:06:11 +02:00
39e4fbd112
libc: Provide a bunch of math functions wrapped around compiler builtins
2023-08-08 20:38:38 +02:00
b1e164f360
libc. Add basic wchar.h
2023-08-08 19:43:23 +02:00
d96ff92461
libc: Add borrowed strtod implementation
2023-08-08 15:17:25 +02:00
8c13513bf4
libc: Add strcoll()
continuous-integration/drone/push Build is passing
2023-08-08 14:40:14 +02:00
a92077d311
kernel+libc: Add all variants of utime
continuous-integration/drone/push Build is passing
2023-08-08 14:14:35 +02:00
4195e7f206
kernel+libc+stat: Add support for file times
...
continuous-integration/drone/push Build is passing
The modification time is not updated though.
2023-08-08 13:33:40 +02:00
b01aa72f17
libc+init+shmem-test: Add POSIX shared memory objects
continuous-integration/drone/push Build is passing
2023-08-03 10:32:52 +02:00
c5e24e478f
kernel+libc: Add truncate and ftruncate
continuous-integration/drone/push Build is passing
2023-08-03 08:47:37 +02:00
53d9f5c6fc
libc: Add msync wrapper
continuous-integration/drone/push Build is passing
2023-08-02 22:44:54 +02:00
2572695c8d
kernel: Support mapping shared memory using mmap()
2023-08-02 22:20:05 +02:00
6593f9241b
libc: Add wrapper for poll()
2023-08-02 17:19:16 +02:00
df4227eab8
kernel: Make the poll() system call actually work
2023-08-02 17:18:38 +02:00
f8cb6e03df
kernel: Allow turning off the TTY by setting it to graphical mode
continuous-integration/drone/push Build is passing
2023-08-02 15:16:10 +02:00
207d901de8
kernel+libc: Add the poll() syscall
continuous-integration/drone/push Build is passing
2023-08-02 14:48:20 +02:00
7b24a4d1c6
libc: Add wrappers for listen(), connect(), and accept()
2023-07-30 11:33:06 +02:00
a12b018b03
kernel+libc: Add basic Unix sockets (creation and binding)
2023-07-30 11:33:06 +02:00
200bb6c240
kernel+libc+libos: Add inode type for sockets
2023-07-30 11:33:05 +02:00
905e71527e
libc: Actually implement sigsetjmp() and siglongjmp()
2023-07-24 19:39:22 +02:00
b12f42cfe2
libc: Add SIGWINCH
...
Not used for anything at the moment, I guess if a user program wants to send it...
Required by bc.
2023-07-24 19:11:06 +02:00
c5af1bcef9
libc: Fix typo in fopen description
continuous-integration/drone/push Build is passing
2023-07-24 11:57:47 +02:00
9ef09cfc88
libc+libluna: Add case-insensitive string comparison functions
2023-07-22 11:58:28 +02:00
085d2895e8
libc: Implement setbuf(), setbuffer(), and setlinebuf()
...
continuous-integration/drone/pr Build is passing
continuous-integration/drone/push Build is passing
These are all simple wrappers around setvbuf().
2023-07-22 11:36:20 +02:00
d60ad184f1
libc: A bit of nice refactoring
2023-07-22 10:58:34 +02:00
a3ed950be8
libc: Basic write buffers
continuous-integration/drone/pr Build is passing
2023-07-22 00:04:27 +02:00
de6fe7f7c2
kernel+libc+sh: Make the TTY device actually follow termios rules
...
continuous-integration/drone/push Build is passing
Like, so much more termios compatibility!
2023-07-13 20:33:20 +02:00