Commit Graph

201 Commits

Author SHA1 Message Date
Bananymous ccde8148a7 Userspace: Implement basic udp test program 2024-02-12 04:45:42 +02:00
Bananymous b9bbf42538 Userspace: Implement basic test program for tcp connection 2024-02-12 04:45:42 +02:00
Bananymous f117027175 resolver: dump errors to debug output 2024-02-08 18:34:15 +02:00
Bananymous 5a939cf252 Userspace: Add simple test for unix domain sockets 2024-02-08 13:18:54 +02:00
Bananymous 065ee9004c Userspace: Add DNS cache to resolver
Also the format of resolver reply is now just sockaddr_storage with
family set and address in the storage field.
2024-02-08 12:06:30 +02:00
Bananymous 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
Bananymous 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
Bananymous f804e87f7d Kernel: Implement basic gateway for network interfaces 2024-02-05 18:18:56 +02:00
Bananymous b2291ce162 Kernel/BAN: Fix network strucute endianness 2024-02-05 18:18:56 +02:00
Bananymous 89805fb092 dhcp-client: Use dprintln for debug printing 2024-02-05 01:24:45 +02:00
Bananymous 692cec8458 Kernel/Userspace/LibC: Implement basic dprintln for userspace 2024-02-05 01:24:09 +02:00
Bananymous 79897e77dc dhcp-client: Remove packet send test :D 2024-02-03 18:04:31 +02:00
Bananymous 2138eeb87f Userspace: Implement super simple DHCP client 2024-02-03 02:41:06 +02:00
Bananymous 7cb71ec6fb test-sort: Test more algorithms and cleanup output format 2024-02-01 15:22:28 +02:00
Bananymous 9213dd13bc dd: Improve output format
Include written bytes and speed with units
2024-02-01 00:06:46 +02:00
Bananymous 210b24b6e3 AOC2023: Delete file that should not be committed... 2024-01-24 15:53:38 +02:00
Bananymous dfe5a2d665 All: Cleanup all files
Add newline to end of files and remove whitespace from end of lines
2024-01-24 15:53:38 +02:00
Bananymous 64a63fa4be Userspace: Add loadkeys program to change keymap 2024-01-10 14:57:50 +02:00
Bananymous 51214ea1bf Kernel: Add load_keymap syscall and load Finnish keymap in init 2024-01-10 14:46:29 +02:00
Bananymous 40f55be587 Userspace: Write simple mouse test program
This program draws circle on framebuffer, that you can move with
mouse, resize with scroll, and recolor with mouse buttons.
2024-01-04 19:50:26 +02:00
Bananymous 753de3d9f0 ls: Write group name instead of gid in list mode 2024-01-03 00:15:13 +02:00
Bananymous 1bd33e76e5 cat/cat-mmap: print newline if file doesn't end in one 2024-01-02 23:27:13 +02:00
Bananymous 96d831c31a Kernel/LibC/Userspace: Implement chown and set tty owner on login 2024-01-02 22:19:38 +02:00
Bananymous 8b5e437936 AOC2023: Implement day25 part1
7 starts missing + partly broken day22. I might finish these soon...
2023-12-26 20:04:42 +02:00
Bananymous d87fa1a7ea AOC2023: Implement day24 part1 2023-12-26 14:10:49 +02:00
Bananymous 910a57089b AOC2023: Implement day23 part1
My day22 implementation is off by couple of bricks...
2023-12-26 00:56:35 +02:00
Bananymous 36590fb5c7 AOC2023: Implement day21 part1 2023-12-24 14:58:21 +02:00
Bananymous ce990c3026 AOC2023: Implement day20 part1 2023-12-24 13:39:26 +02:00
Bananymous 4146f2777b AOC2023: Implement 10 hour solution to day19 part2 2023-12-23 20:53:50 +02:00
Bananymous 64323c51e6 AOC2023: Implement day19 part 1 2023-12-23 18:47:44 +02:00
Bananymous a0200a7b10 AOC2023: Implement day18 part 1 2023-12-23 18:47:21 +02:00
Bananymous 8add759b5d AOC2023: Implement day17 part1 2023-12-23 18:46:43 +02:00
Bananymous 2faf90bc2b AOC2023: Add script to create day template and download input 2023-12-23 18:46:14 +02:00
Bananymous 762d575d70 AOC2023: Add program to run all days 2023-12-23 18:45:40 +02:00
Bananymous 3b21cc90ae AOC2023: Add helper for downloading puzzle input 2023-12-19 22:22:31 +02:00
Bananymous 4e900804b8 AOC2023: Implement day16 2023-12-19 22:22:16 +02:00
Bananymous 9ec733904f AOC2023: Implement day15 2023-12-19 21:42:59 +02:00
Bananymous f46240e879 AOC2023: Implement day14 2023-12-19 02:49:48 +02:00
Bananymous 68627995f8 AOC2023: Implement day13 2023-12-19 01:25:23 +02:00
Bananymous d273c5e77c rm: Use remove instead of unlink for removing files 2023-12-14 11:03:58 +02:00
Bananymous 8344f2f9ab AOC2023: Fix day3 implementation
I accidently broke my day3 when messing with signed/unsigned integers
2023-12-14 11:03:19 +02:00
Bananymous 862993398d AOC2023: Implement day12
There seems to be a problem with my malloc so the hash map is not
working. This code worked fine on my linux with actually working
malloc :D
2023-12-14 10:51:48 +02:00
Bananymous 225c7c6ab4 AOC2023: Implement day11 2023-12-11 14:36:33 +02:00
Bananymous 58633ca373 AOC2023: Remove unnecessary loop 2023-12-10 20:18:59 +02:00
Bananymous 00d57d783e LibC+userspace: Make everything compile with -Wall -Wextra -Werror
I added -Wall -Wextra -Werror as public compile flags to libc. Now
everything in userspace in compiled using these flags. I made all
necessary changes to allow compilation to work.

Only exception is execvp which has a large stack usage. Maybe it
should use malloc for the buffer but posix allows ENOMEM only when
kernel is out of memory... This can be fixed when fexecve is
implemented and there is no need for absolute path.
2023-12-10 19:20:14 +02:00
Bananymous f077e17b2a AOC2023: Implement day10 2023-12-10 18:28:04 +02:00
Bananymous a6bfbbf655 ls: Rewrite whole program for cleaner output
ls -l now sorts elements and aligns them by columns.
2023-12-10 01:05:12 +02:00
Bananymous c273bf98c9 ls+stat: show setuid, setgid and sticky bits 2023-12-09 19:43:25 +02:00
Bananymous 99a5b6e2ef AOC2023: Cleanup day9 code
Move tree building to its own function. Both parts can use the same
tree. This also decreaseas memory usage by one element by row :D
2023-12-09 19:08:13 +02:00
Bananymous 0c3e5980d6 AOC2023: Implement day9 2023-12-09 16:22:43 +02:00