Bananymous 
							
						 
						
							
								34e680d792 
								
							 
						 
						
							
							
								
								ports/ncurses: Set some needed environment variables  
							
							... 
							
							
							
							ncurses depends on these being set to function properly 
							
						 
						
							2025-04-22 01:56:34 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								32d543943b 
								
							 
						 
						
							
							
								
								ports: Add lynx port  
							
							... 
							
							
							
							I have had this for a while but apparently never commited :D 
							
						 
						
							2025-04-22 01:44:49 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								2632507980 
								
							 
						 
						
							
							
								
								ports/ca-certificates: Add symlink to /etc/ssl/cert.pem  
							
							... 
							
							
							
							Some ports try to use this file 
							
						 
						
							2025-04-22 01:44:02 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								f467a9a309 
								
							 
						 
						
							
							
								
								resolver: Resolve hostname to loopback address  
							
							... 
							
							
							
							We don't currently support loopback adapters, but some ports were trying
to resolve it. 
							
						 
						
							2025-04-22 00:48:26 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								5c9710c78b 
								
							 
						 
						
							
							
								
								LibC: Implement `strcoll_l`  
							
							
							
						 
						
							2025-04-22 00:48:26 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								107b31a0b5 
								
							 
						 
						
							
							
								
								Kernel: Fix E1000{,E} driver for older qemu versions  
							
							... 
							
							
							
							This patch adds clearing of *Interrupt Cause Registers*, which allows
older qemu versions to send new interrupts. Apparently this is not
needed on newer releases. 
							
						 
						
							2025-04-22 00:31:13 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								028c7a822f 
								
							 
						 
						
							
							
								
								LibC: Don't define SCHAR_MAX in locale.c  
							
							
							
						 
						
							2025-04-21 22:21:40 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								18f5f98e62 
								
							 
						 
						
							
							
								
								General: Mark USB hubs done in README  
							
							
							
						 
						
							2025-04-21 22:13:31 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								543bb3cc4b 
								
							 
						 
						
							
							
								
								LibC: Rework malloc locking add proper realloc  
							
							
							
						 
						
							2025-04-21 20:29:28 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								1c44d24b76 
								
							 
						 
						
							
							
								
								Kernel: Fix TCP closing state machine  
							
							
							
						 
						
							2025-04-21 20:02:32 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								5305f962c0 
								
							 
						 
						
							
							
								
								ports/openssl: Make openssl port threaded  
							
							
							
						 
						
							2025-04-21 19:59:57 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								b774f147da 
								
							 
						 
						
							
							
								
								LibC: Implement dummy pthread_attr_{get,set}detachstate  
							
							... 
							
							
							
							detached threads are not yet supported, but this allows implementation
to make sure threads are joinable. 
							
						 
						
							2025-04-21 19:58:01 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								2a5921b9c9 
								
							 
						 
						
							
							
								
								LibC: Implement pthread_barrier  
							
							... 
							
							
							
							This is not fully working but should be fine for most cases 
							
						 
						
							2025-04-21 19:53:38 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								60cb392e97 
								
							 
						 
						
							
							
								
								LibC: Implement pthread_barrier  
							
							... 
							
							
							
							This is yet another bad sched_yield implementation :D 
							
						 
						
							2025-04-21 19:52:14 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								d012c538c3 
								
							 
						 
						
							
							
								
								LibC: Add PTHREAD_SPIN_INITIALIZER  
							
							... 
							
							
							
							This is not posix, but current implementation allows adding this 
							
						 
						
							2025-04-21 19:47:00 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								1c88d0d7f7 
								
							 
						 
						
							
							
								
								LibC: Implement pthread_rwlock  
							
							... 
							
							
							
							This uses the same dumb sched_yield instead of actually blocking :D 
							
						 
						
							2025-04-21 18:48:47 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								773b8de8ba 
								
							 
						 
						
							
							
								
								LibC: Refactor pthread type definitions  
							
							
							
						 
						
							2025-04-21 14:38:40 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								5d8dd090a9 
								
							 
						 
						
							
							
								
								LibC: Implement `pthread_once`  
							
							
							
						 
						
							2025-04-21 14:17:17 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								2cbfe70a28 
								
							 
						 
						
							
							
								
								DynamicLoader: Don't leak fds  
							
							
							
						 
						
							2025-04-20 18:18:32 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								16dbfbb267 
								
							 
						 
						
							
							
								
								LibC: Make limits.h `*_MAX` usable in #if comparisons  
							
							
							
						 
						
							2025-04-20 17:15:20 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								99fc7817c6 
								
							 
						 
						
							
							
								
								Kernel: Cleanup stack alignment assembly  
							
							
							
						 
						
							2025-04-20 16:55:18 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								265b4c2b22 
								
							 
						 
						
							
							
								
								LibC: Implement `thread_equal`  
							
							
							
						 
						
							2025-04-20 03:27:16 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								db9db2cc40 
								
							 
						 
						
							
							
								
								LibC: Implement basic pthread mutexes  
							
							... 
							
							
							
							This implementation is just calling sched_yield if it could not get
mutex. This is not optimal as it does not allow the CPU to idle, but it
works for now :)
Also I did not test this code at all, but it feels correct :D 
							
						 
						
							2025-04-20 03:27:16 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								3642eabac0 
								
							 
						 
						
							
							
								
								LibC: Use BAN::atomic_* functions in pthread spinlock  
							
							... 
							
							
							
							This allows us not to reinterpret_cast pthread_spin_t to
BAN::Atomic<pthread_spin_t> which is much better :) 
							
						 
						
							2025-04-20 03:11:41 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								98e05fd179 
								
							 
						 
						
							
							
								
								BAN: Implement atomic functions for normal integers  
							
							
							
						 
						
							2025-04-20 03:11:41 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								1ccff9478f 
								
							 
						 
						
							
							
								
								LibC: Don't define __tls_get_addr if TLS is disabled  
							
							... 
							
							
							
							This makes linking fail if something tries to use TLS :) 
							
						 
						
							2025-04-20 03:11:41 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								85f9b585f5 
								
							 
						 
						
							
							
								
								LibC: Don't yield on `pthread_spin_lock`  
							
							... 
							
							
							
							Thats kinda the whole point of spinlocks :D 
							
						 
						
							2025-04-20 03:11:41 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								01626b4c9f 
								
							 
						 
						
							
							
								
								LibC: Add stub for `pthread_detach`  
							
							
							
						 
						
							2025-04-20 03:11:41 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								a85841ca76 
								
							 
						 
						
							
							
								
								LibC: Add stub for `pthread_attr_setstacksize`  
							
							
							
						 
						
							2025-04-20 03:11:41 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								fe6c4cd0b5 
								
							 
						 
						
							
							
								
								LibC: Implement POSIX TLD area (pthread_key*)  
							
							
							
						 
						
							2025-04-20 03:11:41 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								f1585d09e1 
								
							 
						 
						
							
							
								
								LibC: Add more integer size definintions to limits.h  
							
							
							
						 
						
							2025-04-19 21:50:26 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								252784ff5b 
								
							 
						 
						
							
							
								
								Kernel: Preserve kernel command line on fork  
							
							
							
						 
						
							2025-04-19 21:29:52 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								6f9dc2a9b8 
								
							 
						 
						
							
							
								
								Kernel/LibC: Implement `fchdir`, cleanup `chdir` and `getcwd`  
							
							
							
						 
						
							2025-04-19 21:28:31 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								7edfae8583 
								
							 
						 
						
							
							
								
								Shell: Cleanup `export` builtin  
							
							
							
						 
						
							2025-04-19 21:23:26 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								28275d86ea 
								
							 
						 
						
							
							
								
								LibC/Shell: set PWD env in Shell, not libc  
							
							... 
							
							
							
							I have no idea why I was doing it in the libc 
							
						 
						
							2025-04-19 21:16:11 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								2d19b5074e 
								
							 
						 
						
							
							
								
								LibC: Implement some missing wchar functions  
							
							
							
						 
						
							2025-04-19 20:56:41 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								e62cc17797 
								
							 
						 
						
							
							
								
								LibC: Use `nl_langinfo` for strings in `strftime`  
							
							
							
						 
						
							2025-04-19 20:03:56 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								407eed212a 
								
							 
						 
						
							
							
								
								LibC: Implement nl_langinfo  
							
							... 
							
							
							
							All values are from POSIX locale except CODESET which can be "UTF-8"
depending on the current locale 
							
						 
						
							2025-04-19 20:02:01 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								12d47858c1 
								
							 
						 
						
							
							
								
								LibC: Fix overflow error in `fread` and `fwrite`  
							
							
							
						 
						
							2025-04-19 18:42:12 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								3d34e6e6d9 
								
							 
						 
						
							
							
								
								ports: ncurses add support for shared libraries  
							
							
							
						 
						
							2025-04-19 05:55:16 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								dc188e601a 
								
							 
						 
						
							
							
								
								LibC: Add definition for LOG_UPTO  
							
							
							
						 
						
							2025-04-19 02:48:21 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								8a2df23260 
								
							 
						 
						
							
							
								
								LibC: Define RLIM_NLIMITS  
							
							
							
						 
						
							2025-04-19 02:34:56 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								46079a8612 
								
							 
						 
						
							
							
								
								LibC: Implement no-op posix_madvice  
							
							... 
							
							
							
							Also add non-posix prefixed definitions 
							
						 
						
							2025-04-19 02:07:45 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								201d752850 
								
							 
						 
						
							
							
								
								Kernel: Allow pipe to write partial data  
							
							... 
							
							
							
							This allows potential blocking 
							
						 
						
							2025-04-19 00:39:42 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								63b3d9875d 
								
							 
						 
						
							
							
								
								Kernel: Fix `Thread::block_with_eintr*` functions  
							
							... 
							
							
							
							I was using wrong block function, `block_with_timeout` instead of
`block_with_wake_time`. This caused functions to block way too long and
caused a lot of hangs. 
							
						 
						
							2025-04-19 00:39:42 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								8cd2d772b0 
								
							 
						 
						
							
							
								
								Shell: Print error if `execv` fails  
							
							
							
						 
						
							2025-04-19 00:39:42 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								2ff3f88b4d 
								
							 
						 
						
							
							
								
								LibC: Add support for shebangs  
							
							... 
							
							
							
							I implemented shebangs in userspace as I don't really see the benefit of
doing it in kernel space. Only benefit I can think of is executing non
readable scripts but I don't really see the benefit in that. 
							
						 
						
							2025-04-19 00:39:42 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								ab4dd6a268 
								
							 
						 
						
							
							
								
								LibC: Add ARG_MAX constant  
							
							
							
						 
						
							2025-04-19 00:39:42 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								0094efc7f4 
								
							 
						 
						
							
							
								
								LibC: Fix `execl*` memory leak on error  
							
							
							
						 
						
							2025-04-18 20:54:53 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								d73a270fb1 
								
							 
						 
						
							
							
								
								Shell: Save and restore stdin flags after child returns  
							
							... 
							
							
							
							If child makes stdin nonblocking, Shell now restores it back to "normal"
flags 
							
						 
						
							2025-04-18 18:26:09 +03:00