4725538aa7
Tests: Add tests for memmove and memcmp + correct our memcmp implementation
2022-10-22 19:04:19 +02:00
8908faf6e2
libc: Add strchrnul()
...
Another GNU extension, it's ok.
2022-10-22 18:37:02 +02:00
bfbe8e847b
Tests: Add tests for memset, memcpy and memchr
2022-10-22 18:33:28 +02:00
766b6d26c8
Tests: add test for strpbrk()
2022-10-22 18:09:43 +02:00
ea96c5f47b
Tests: Add tests for calloc() and realloc()
2022-10-22 18:06:01 +02:00
c3828dd357
Tests: add tests for strchr() and strrchr()
2022-10-22 17:58:54 +02:00
503a04f0e9
libc: Add strpbrk()
2022-10-22 17:54:33 +02:00
4d71c0ef04
libc: Implement strndup()
2022-10-22 17:49:44 +02:00
20429929dd
InitRD: Bump up the filesystem limits
2022-10-22 17:23:22 +02:00
58ca030711
initrd: warn when failing to register stuff
2022-10-22 17:21:34 +02:00
26324259f2
uname: Use fgets()
2022-10-22 15:43:21 +02:00
a1a1157151
sh: update it
2022-10-22 15:09:09 +02:00
4aa979bd87
sh: remove duplicate code
2022-10-22 15:08:27 +02:00
fef7dd5867
Rename [moon-reaper] to [reaper]
2022-10-22 14:43:41 +02:00
ac8a23d733
wrong type :)
2022-10-22 14:40:30 +02:00
189986d23f
libc: Rename pstname() to pstatname()
...
To avoid confusion with ptsname().
2022-10-22 14:30:41 +02:00
727e227b09
apps: Add ps (uses pstat)
2022-10-22 14:26:59 +02:00
6ac57a2f5c
libc: Add support for pstat()
2022-10-22 14:26:42 +02:00
bcdcfc4b45
Kernel: Add a pstat() system call
...
Not part of C or POSIX, but since there is no procfs right now, I thought it would be nice to have an interface to query process information.
It works like this: you pass the process ID and a pointer to a struct pstat (can be null).
If the process ID is -1, the kernel picks the process with the highest PID.
Then, if the pointer to a pstat struct is not null, the kernel fills it in with the process's information, and returns the process's PID.
2022-10-22 14:26:29 +02:00
31e0f0efed
uptime: Use fgets()
2022-10-22 14:23:34 +02:00
a4eed362b6
libc: Implement fseeko() and ftello()
2022-10-22 12:41:15 +02:00
759c8a8cab
libc: Make fpos_t no longer a struct
2022-10-22 12:39:37 +02:00
9bbb5d0c07
libc: Implement strspn (with a test)
2022-10-22 12:36:31 +02:00
551d731627
libc: Add FIXME
2022-10-22 12:30:30 +02:00
063e2d5e7a
libc: Add more spacing to stdio.cpp
2022-10-22 12:21:04 +02:00
6dc51abfc8
libc: Add remove() stub
2022-10-22 12:20:05 +02:00
81c337cf9a
libc: Add struct tm and localtime(), gmtime() stubs
2022-10-22 12:17:48 +02:00
91969d4d48
libc: strtoul's endptr must not be const
2022-10-22 12:12:52 +02:00
6e01323e84
Tests: Add tests for srand, atol and atoll
2022-10-22 12:10:19 +02:00
59d5e9789e
Tests: Add a test for atoi()
2022-10-22 12:03:10 +02:00
1f5f6a5e3b
libc: Add strcspn (with a test)
2022-10-22 11:57:25 +02:00
6816a5b11f
Scheduler: do not reboot on PID 1 exit if we are in a test
2022-10-22 11:56:08 +02:00
27a18a608c
libc: Implement fgets, fgetc, getc, getchar (with buffered read IO)
2022-10-22 11:38:16 +02:00
51e024588e
libc: Update inttypes.h
...
Turns out it was incorrect.
2022-10-22 11:23:12 +02:00
0faabe02e5
Kernel, libc: Implement O_CLOEXEC
2022-10-22 10:28:02 +02:00
fb88459263
libc: Add all missing errors to strerror()
2022-10-22 10:14:40 +02:00
b2f5a0502f
Kernel, libc: Implement O_NONBLOCK
2022-10-21 21:51:03 +02:00
da61e3648f
Kernel: Implement blocking reads
...
This is a huge step forward!! bc actually runs now, without echo or backspace, but it runs!!
2022-10-21 21:26:19 +02:00
43073cfdbb
Add new __lc_used macro
2022-10-21 18:39:46 +02:00
fcd6d9b9f5
Add FIXME
2022-10-21 18:37:18 +02:00
bef9158450
Kernel, libc: Add isatty() and F_ISTTY to fcntl()
2022-10-21 18:34:31 +02:00
93207820b3
libc: Add a few errors to errno.h
...
As well as ino_t, which I forgot in the fstat() commit :)
2022-10-21 18:34:01 +02:00
62fa773b27
libc: Add dummy argv
2022-10-21 18:33:06 +02:00
6d7a8a0d0b
libc: Add very basic strtoul()
...
As well as returning NULL in getenv() instead of aborting.
2022-10-21 18:32:46 +02:00
bf026d0dea
libc: Add bad time() function
...
It's just an alias for clock(). Which is not good. But it's a stub, that's the point.
2022-10-21 18:32:01 +02:00
c8a37eaf70
libc: Add SIGINT define
2022-10-21 18:31:19 +02:00
fcf191aa7a
Kernel, libc: Add fstat()
2022-10-21 18:31:09 +02:00
0720b3245b
sh: Do not backspace if command is empty
2022-10-20 19:32:32 +02:00
b69fbd46bf
init: Add a Message of the Day
2022-10-20 19:27:37 +02:00
bd4c587409
sh: Try to execute programs in /bin if they are not found
2022-10-20 19:12:17 +02:00