|
0c873923e8
|
kernel: Make OpenFileDescription shareable
continuous-integration/drone/pr Build is passing
|
2023-07-30 11:33:46 +02:00 |
|
|
63745565db
|
apps: Add socket client
continuous-integration/drone/pr Build is failing
|
2023-07-30 11:33:06 +02:00 |
|
|
7b24a4d1c6
|
libc: Add wrappers for listen(), connect(), and accept()
|
2023-07-30 11:33:06 +02:00 |
|
|
8d3b3aaf05
|
libluna: Add a few more network-related errno codes
|
2023-07-30 11:33:06 +02:00 |
|
|
bb3127c212
|
kernel: Implement listen(), connect() and accept()
|
2023-07-30 11:33:06 +02:00 |
|
|
cca806f088
|
libluna: Add a variant of CircularQueue that dynamically allocates its buffer at runtime
This is needed to implement the backlog queue for listening sockets.
|
2023-07-30 11:33:06 +02:00 |
|
|
7a7ae086f5
|
kernel: Use a did_close callback for UnixSockets
|
2023-07-30 11:33:06 +02:00 |
|
|
fb08594a18
|
kernel: Separate FileDescriptors and OpenFileDescription
Also, add a did_close() callback for OpenFileDescriptions losing all their references.
|
2023-07-30 11:33:06 +02:00 |
|
|
9303c44269
|
apps: Add socket-test
|
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 |
|
|
c4e30c3029
|
kernel: Add functionality to allow external inodes (such as sockets) to acquire an inode number from a file system
This is only implemented in tmpfs.
|
2023-07-30 11:33:06 +02:00 |
|
|
c1d08b904e
|
kernel+libluna: Add Buffer::dequeue_data()
|
2023-07-30 11:33:05 +02:00 |
|
|
200bb6c240
|
kernel+libc+libos: Add inode type for sockets
|
2023-07-30 11:33:05 +02:00 |
|
|
6b0bc66fd2
|
libluna: Add new socket-related errno codes
|
2023-07-30 11:33:05 +02:00 |
|
|
4ed7ec5e93
|
libluna: Store SharedPtr's ref count in the object itself
continuous-integration/drone/push Build is passing
|
2023-07-30 11:32:46 +02:00 |
|
|
28cc4b2306
|
kernel: Add default action for SIGWINCH
continuous-integration/drone/push Build is passing
|
2023-07-27 14:00:30 +02:00 |
|
|
11df5a2ec3
|
kernel: Use pid_t internally for process IDs
continuous-integration/drone/push Build is passing
This removes a bunch of casts between pid_t and u64, and makes more sense since pid_t is literally the data type for process IDs.
|
2023-07-26 21:32:00 +02:00 |
|
|
5aad7d3154
|
kernel/x86_64: Fail on invalid interrupts instead of calling FIXME_UNHANDLED_INTERRUPT
continuous-integration/drone/push Build is passing
A FIXME is something that should be changed later,
this is a check for something that should never happen.
|
2023-07-25 18:23:33 +02:00 |
|
|
58fa297068
|
libluna: Wrap around when iterating through a HashTable's buckets array
continuous-integration/drone/push Build is passing
Why am I so dumb?
|
2023-07-25 18:19:45 +02:00 |
|
|
28dd8194af
|
kernel: Include waited-for grandchildren in RUSAGE_CHILDREN's times
continuous-integration/drone/push Build is passing
|
2023-07-25 17:50:15 +02:00 |
|
|
b88da4811f
|
kernel: Remove debug message in readlink
continuous-integration/drone/push Build is passing
|
2023-07-25 17:30:56 +02:00 |
|
|
7f990b161b
|
libluna: Fix comparison of StringViews without null termination
continuous-integration/drone/push Build is passing
This regressed in de7e58c274 , and made value arguments pretty much unusable.
This really needs a test...
|
2023-07-25 17:25:18 +02:00 |
|
|
9bb3fed611
|
libluna: Use the right unsigned integer type for wcscmp()'s return type
|
2023-07-25 17:23:27 +02:00 |
|
|
105ed79f8f
|
kernel: Reenable userspace stack tracing, but hidden behind a config flag
continuous-integration/drone/push Build is passing
Sometimes this is needed for userspace program debugging (such as ports),
but sometimes it can crash, so we leave it off by default.
|
2023-07-25 17:02:09 +02:00 |
|
|
905e71527e
|
libc: Actually implement sigsetjmp() and siglongjmp()
|
2023-07-24 19:39:22 +02:00 |
|
|
c6d91c89cd
|
stat: Change program description
continuous-integration/drone/push Build is passing
|
2023-07-24 19:17:36 +02:00 |
|
|
2e2b87b714
|
ports+tools: Add bc port
continuous-integration/drone/push Build is passing
It segfaults when writing "about", but oh well...
|
2023-07-24 19:14: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 |
|
|
c70790bf62
|
ports: Add some defaults for CMake projects as well
continuous-integration/drone/push Build is passing
|
2023-07-24 18:50:51 +02:00 |
|
|
a990cc145e
|
ports: Add initial documentation to the port system
continuous-integration/drone/push Build is passing
|
2023-07-24 18:29:44 +02:00 |
|
|
b0d7870ec6
|
ports: Add minitar (with examples!)
continuous-integration/drone/push Build is passing
|
2023-07-24 17:20:54 +02:00 |
|
|
9a00b29304
|
ports: Basic ports system + nasm port
continuous-integration/drone/push Build is passing
|
2023-07-24 17:07:49 +02:00 |
|
|
033aff4f6c
|
all: Error out on bidirectional characters (CVE-2021-42574)
continuous-integration/drone/push Build is passing
|
2023-07-24 15:06:48 +02:00 |
|
|
c5af1bcef9
|
libc: Fix typo in fopen description
continuous-integration/drone/push Build is passing
|
2023-07-24 11:57:47 +02:00 |
|
|
b3c478f19e
|
init: Make the log stream line-buffered
continuous-integration/drone/push Build is passing
Looks like log output stopped showing after buffering was implemented, since the log was not flushed properly.
|
2023-07-24 11:54:49 +02:00 |
|
|
ad3f3bf4db
|
kernel: Log the release name and build date in the boot log
|
2023-07-24 11:48:01 +02:00 |
|
|
01359af288
|
tools: Make the Ext2 partition bigger (32M)
continuous-integration/drone/push Build is passing
|
2023-07-22 16:11:34 +02:00 |
|
|
eeb9e16a74
|
libos: Make os::File a wrapper around stdio's FILE
continuous-integration/drone/push Build is passing
This way, os::File benefits from the same buffering as stdio.h does.
|
2023-07-22 12:40:02 +02:00 |
|
|
358493a7bc
|
kernel: Add a system for release names in uname(), call alpha releases "Mercury"
continuous-integration/drone/push Build is passing
|
2023-07-22 12:21:01 +02:00 |
|
|
5110d740b8
|
all: Update the version number to 0.4.0
continuous-integration/drone/push Build is passing
|
2023-07-22 12:11:02 +02:00 |
|
|
759fb4fe0e
|
tools: Make replace-stdint.sh replace types only if they're followed by a space
continuous-integration/drone/push Build is passing
Otherwise, size_to_read -> usizeo_read.
|
2023-07-22 11:59:41 +02:00 |
|
|
098109f16b
|
tools: Make sure formatting scripts cover all sources
|
2023-07-22 11:59:02 +02:00 |
|
|
9ef09cfc88
|
libc+libluna: Add case-insensitive string comparison functions
|
2023-07-22 11:58:28 +02:00 |
|
|
c17e1a5802
|
Update README.md
continuous-integration/drone/push Build is passing
|
2023-07-22 11:45:35 +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 |
|
|
77022abafd
|
libc: Implement ungetc
continuous-integration/drone/pr Build is passing
|
2023-07-22 11:25:20 +02:00 |
|
|
19b4aa9f81
|
libc: Flush buffers before dealing with file positions
|
2023-07-22 11:19:48 +02:00 |
|
|
420270ebd4
|
libc: Implement read buffering =D
|
2023-07-22 11:17:51 +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 |
|