49889858fa
Kernel: Allow chmod on TmpSocketInode
2024-02-08 03:16:01 +02:00
2424f38a62
Userspace: Implement super simple DNS resolver in userspace
...
You connect to this service using unix domain sockets and send the
asked domain name. It will respond with ip address or 'unavailable'
There is no DNS cache implemented so all calls ask the nameserver.
2024-02-08 03:14:00 +02:00
218456d127
BAN: Fix some includes
2024-02-08 03:13:21 +02:00
e7dd03e551
Kernel: Implement basic connection-mode unix domain sockets
2024-02-08 02:28:19 +02:00
0c8e9fe095
Kernel: Add operator bool() for WeakPtr
2024-02-08 02:26:46 +02:00
5b4acec4ca
BAN: Add capacity() getter for Queue
2024-02-07 22:53:56 +02:00
e26f360d93
Kernel: allow kmalloc of size 0
2024-02-07 22:36:24 +02:00
2cc9534570
BAN: Add emplace for Variant
...
This allows variant to store values that are not copy/move
constructible.
2024-02-07 22:33:16 +02:00
572c4052f6
Kernel: Fix Process APIs
2024-02-07 15:57:45 +02:00
132286895f
Kernel: Implement Socket inodes for tmpfs
2024-02-07 15:57:45 +02:00
454bee3f02
LibC: Fix sockaddr_un implementation
2024-02-07 15:57:45 +02:00
41cad88d6e
Kernel/LibC: Implement dummy syscalls for accept, connect, listen
2024-02-07 15:57:45 +02:00
40e341b0ee
BAN: Remove unstable hash map and set
...
These can now be implemented safely with new linked list api
2024-02-06 17:35:15 +02:00
5da59c9151
Kernel: Make better abstractions for networking
2024-02-06 16:45:39 +02:00
f804e87f7d
Kernel: Implement basic gateway for network interfaces
2024-02-05 18:18:56 +02:00
dd3641f054
Kernel: Cleanup ARPTable code
...
Packet process is now killed if ARPTable dies.
ARP wait loop now just reschecules so timeout actually works.
2024-02-05 18:18:56 +02:00
b2291ce162
Kernel/BAN: Fix network strucute endianness
2024-02-05 18:18:56 +02:00
c35ed6570b
LibC: Implement endiannes and ip address functions
2024-02-05 18:18:56 +02:00
d15cbb2d6a
Kernel: Fix IPv4 header checksum calculation
2024-02-05 18:18:56 +02:00
b8cf6432ef
BAN: Implement host_to_network_endian
2024-02-05 17:29:24 +02:00
89805fb092
dhcp-client: Use dprintln for debug printing
2024-02-05 01:24:45 +02:00
692cec8458
Kernel/Userspace/LibC: Implement basic dprintln for userspace
2024-02-05 01:24:09 +02:00
79897e77dc
dhcp-client: Remove packet send test :D
2024-02-03 18:04:31 +02:00
649e9f4500
Kernel: ARP now replies to requests
2024-02-03 18:04:12 +02:00
3a6d31d3fa
BAN: Add comparison for MAC
2024-02-03 18:03:27 +02:00
2138eeb87f
Userspace: Implement super simple DHCP client
2024-02-03 02:41:06 +02:00
102aa50a41
BuildSystem: Use E1000E network controller in qemu
2024-02-03 02:40:15 +02:00
5cfe249945
Kernel: Cleanup network code and implement basic ARP request
2024-02-03 02:39:26 +02:00
a0138955cd
Kernel: Implement barebones arp table
2024-02-03 01:50:10 +02:00
e1ffbb710b
Kernel/LibC: Implement basic ioctl for network addresses
2024-02-03 01:50:10 +02:00
c18f72ceb9
BAN: Add more APIs for IPv4 address
2024-02-03 01:50:10 +02:00
bc1441a5eb
LibC: add stropts.h
2024-02-02 14:29:20 +02:00
0f154c3173
Kernel: Implement basic recvfrom
2024-02-02 13:50:00 +02:00
7b287a1d5b
BAN: Add types for IPv4 and MAC addresses
2024-02-02 13:48:07 +02:00
4b332b5d42
Kernel: Cleanup PCI code
2024-02-02 03:16:37 +02:00
ec2f21bb9f
Kernel/LibC: Implement SYS_SENDTO
2024-02-02 03:16:01 +02:00
acd6c86f98
BAN: Add NetworkEndian to Endianness
2024-02-02 03:13:14 +02:00
ab150b458a
Kernel/LibC: Implement basic socket binding
2024-02-02 01:31:58 +02:00
cf28ecd5a6
Kernel/LibC: Add SYS_SOCKET
2024-02-01 23:39:09 +02:00
99eed9c37a
Kernel: Start work on network stack
2024-02-01 23:38:06 +02:00
f4e86028d0
Kernel: Write simple working E1000 and E1000E drivers
2024-02-01 22:08:59 +02:00
7cb71ec6fb
test-sort: Test more algorithms and cleanup output format
2024-02-01 15:22:28 +02:00
d054e5b4b7
BAN: Implement basic radix sort for unsigned integers
2024-02-01 15:22:28 +02:00
c69efc040c
Kernel: Scheduler now uses the new LinkedList API for moving threads
...
Scheduler doesn't have to depend on the fact that allocations should
work when same amount of memory is just deallocated
2024-02-01 15:22:28 +02:00
c4bf1641bd
BAN: Add cool API for LinkedList
...
You can now move elements between LinkedLists without allocations or
deallocations. Same node moves from source to destination
2024-02-01 14:19:02 +02:00
9213dd13bc
dd: Improve output format
...
Include written bytes and speed with units
2024-02-01 00:06:46 +02:00
4273f43be1
BAN: Move placement new to its own file and fix includes
2024-01-31 23:55:41 +02:00
139bb5c2a5
Kernel: Fix linker script
...
I have no idea why rodata was executable :D
2024-01-30 17:32:50 +02:00
95e861bcdd
Kernel: Optimize all SpinLocks. All locking operations are atomic
2024-01-30 12:39:37 +02:00
ca8e7b40bc
Kernel: Implement SpinLock without CriticalScope
...
This actually is not even spinlock since it yields the current
thread. It will become one when I get to SMP though...
2024-01-30 01:21:15 +02:00