Bananymous 
							
						 
						
							
								e431e90b20 
								
							 
						 
						
							
							
								
								Kernel/LibC: Implement all chown family function with fchownat  
							
							
							
						 
						
							2024-09-17 18:35:01 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								4aa466b948 
								
							 
						 
						
							
							
								
								Kernel/LibC: Implement all chmod family functions using fchmodat  
							
							
							
						 
						
							2024-09-17 17:19:26 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								3666525d24 
								
							 
						 
						
							
							
								
								Kernel/LibC: Implement `readlink` in terms of `readlinkat`  
							
							
							
						 
						
							2024-09-17 16:38:15 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								f1a4bbce53 
								
							 
						 
						
							
							
								
								Kernel/LibC: Implement all stat family functions with fstatat  
							
							... 
							
							
							
							This patch gets rid of 2 unnecessary syscalls! 
							
						 
						
							2024-09-17 16:38:01 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								708a720d9d 
								
							 
						 
						
							
							
								
								Kernel: Remove SYS_OPEN  
							
							... 
							
							
							
							This can be done with SYS_OPENAT with fd set to AT_FDCWD 
							
						 
						
							2024-09-17 16:16:47 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								7177da7d62 
								
							 
						 
						
							
							
								
								LibC: Implement dummy get_rusage  
							
							... 
							
							
							
							One port seems to use this function. This dummy just reports no used CPU
time for current process nor children 
							
						 
						
							2024-09-17 15:59:22 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								d88ee5c9ee 
								
							 
						 
						
							
							
								
								Kernel/LibC: Implement `creat` with `open`  
							
							... 
							
							
							
							This allows getting rid of unnecessary SYS_CREATE. Directory creation
still has its own syscall, but I could combine it with SYS_OPEN also. 
							
						 
						
							2024-09-17 15:55:53 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								467ac6c365 
								
							 
						 
						
							
							
								
								Kernel/LibC: Implement SOCK_CLOEXEC and SOCK_NONBLOCK  
							
							... 
							
							
							
							This removes the need for fcntl after creating a socket :) 
							
						 
						
							2024-09-11 21:59:11 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								4189a1c729 
								
							 
						 
						
							
							
								
								LibC: Make _init and _fini weak symbols  
							
							... 
							
							
							
							These seem to be missing sometimes when making shared executables 
							
						 
						
							2024-09-11 14:39:07 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								a07cbabcb3 
								
							 
						 
						
							
							
								
								LibC: Define function sizes for setjmp and longjmp  
							
							... 
							
							
							
							dynamic linking was complaining about these not existing 
							
						 
						
							2024-09-10 16:21:20 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								32ba4d07e2 
								
							 
						 
						
							
							
								
								Userspace: Remove unnecessary mov instruction from crt0  
							
							
							
						 
						
							2024-09-05 12:59:05 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								ddaaf89c87 
								
							 
						 
						
							
							
								
								BuildSystem: Make default libc a shared library  
							
							
							
						 
						
							2024-09-05 12:58:35 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								9aed8dbe6b 
								
							 
						 
						
							
							
								
								Toolchain: Build crtbeginS.o crtendS.o and shared libgcc  
							
							
							
						 
						
							2024-09-05 12:58:21 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								f30947336a 
								
							 
						 
						
							
							
								
								BuildSystem: Cleanup cmake files  
							
							
							
						 
						
							2024-09-05 12:52:25 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								0bb44d7b75 
								
							 
						 
						
							
							
								
								LibC: Fix errno to work with shared libraries  
							
							
							
						 
						
							2024-09-04 21:16:04 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								35743cc8e6 
								
							 
						 
						
							
							
								
								LibC: Compile both static and shared version of LibC  
							
							... 
							
							
							
							libc target is now set as an alias for libc-static 
							
						 
						
							2024-09-02 21:28:02 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								5f92807fdd 
								
							 
						 
						
							
							
								
								userspace: Allow building without SSE  
							
							... 
							
							
							
							I had added changes that had broken compilation without sse support 
							
						 
						
							2024-09-02 21:25:00 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								57300687ff 
								
							 
						 
						
							
							
								
								LibC: Cleanup and fix missing LibC headers  
							
							
							
						 
						
							2024-08-28 17:07:58 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								d559339f5f 
								
							 
						 
						
							
							
								
								LibC: Compile shared libc as well as static  
							
							
							
						 
						
							2024-08-28 17:07:15 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								2c520391eb 
								
							 
						 
						
							
							
								
								Kernel/LibC: Add support for init_array and fini_array  
							
							
							
						 
						
							2024-08-27 00:47:03 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								991ae4383a 
								
							 
						 
						
							
							
								
								Kernel/LibC: Implement fchmod  
							
							
							
						 
						
							2024-08-25 15:07:42 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								500f774b7f 
								
							 
						 
						
							
							
								
								LibC: Add a lot of stub implementations for different libc functions  
							
							... 
							
							
							
							some ports want to link against these, but they are not ever called
based on simple testing
This patch adds stubs for
- openlog
- syslog
- getrusage
- mlock
- mprotect
- getpeername
- shutdown
- tzset
- mktime 
							
						 
						
							2024-08-22 15:10:41 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								ca8832c0e1 
								
							 
						 
						
							
							
								
								LibC: Implement getaddrinfo and freeaddrinfo, add stub for getnameinfo  
							
							
							
						 
						
							2024-08-22 15:10:41 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								1cbba113fd 
								
							 
						 
						
							
							
								
								LibC: Add and cleanup some networking structures and definitions  
							
							
							
						 
						
							2024-08-22 15:10:41 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								45b4b33a3d 
								
							 
						 
						
							
							
								
								LibC: Add definitions for some integer sizes to limits.h  
							
							
							
						 
						
							2024-08-22 15:10:41 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								c453a8e2dc 
								
							 
						 
						
							
							
								
								LibC: Implement poll() using select  
							
							
							
						 
						
							2024-08-22 15:10:41 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								72f3fe0b12 
								
							 
						 
						
							
							
								
								LibC: Add empty files sys/param.h and sys/file.h  
							
							... 
							
							
							
							For some reason some ports include these files even when they detect
that they are not available 
							
						 
						
							2024-08-22 14:47:59 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								25a47f0df3 
								
							 
						 
						
							
							
								
								LibC: Implement ungetc()  
							
							... 
							
							
							
							I didn't really test this, but I think this implementation does what it
needs to :) 
							
						 
						
							2024-08-12 19:14:55 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								5197000124 
								
							 
						 
						
							
							
								
								LibC: Fix qsort for types bigger than 64 bytes  
							
							
							
						 
						
							2024-08-11 18:00:05 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								a5a097fa4a 
								
							 
						 
						
							
							
								
								Kernel/LibC: Add initial pseudo terminal support  
							
							... 
							
							
							
							This patch implements posix_openpt() and ptsname()
grantpt() and unlockpt() are left in LibC as stubs, as posix_openpt
currently does all of the needed work. 
							
						 
						
							2024-08-11 01:02:59 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								ad645f31d0 
								
							 
						 
						
							
							
								
								Kernel/LibC: Add setsid()  
							
							
							
						 
						
							2024-08-11 00:58:12 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								a12bfe4639 
								
							 
						 
						
							
							
								
								LibC: Don't crash when calling tcflush()  
							
							
							
						 
						
							2024-08-09 17:03:21 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								6cda639869 
								
							 
						 
						
							
							
								
								LibC: Add stubs for tmpfile, mktemp and fchmod  
							
							
							
						 
						
							2024-08-09 17:02:49 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								2797fe116f 
								
							 
						 
						
							
							
								
								LibC: Add stubs for some functions in {dlfcn,ftw,utime,wchar}.h  
							
							
							
						 
						
							2024-08-09 17:01:41 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								e768cd53fb 
								
							 
						 
						
							
							
								
								LibC: Add definition for SIGWINCH  
							
							... 
							
							
							
							This is actually not yet sent, but programs can install signal handlers
for it! 
							
						 
						
							2024-08-09 17:00:13 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								83e2ad40d6 
								
							 
						 
						
							
							
								
								LibC: Implement gai_strerror and add stubs for {get,free}addrinfo  
							
							
							
						 
						
							2024-08-09 16:59:49 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								7ebd0699e3 
								
							 
						 
						
							
							
								
								LibC: Add _PC* definitions to unistd.h  
							
							... 
							
							
							
							These are not used for anything yet 
							
						 
						
							2024-08-09 16:58:58 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								46b1d4d194 
								
							 
						 
						
							
							
								
								LibC: Remove cxx abi stuff from libc  
							
							... 
							
							
							
							These will cause multiple definitions when linking with libstdc++ 
							
						 
						
							2024-08-09 16:58:11 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								f60e265397 
								
							 
						 
						
							
							
								
								LibC: Add ldexp to math.cpp  
							
							
							
						 
						
							2024-08-09 16:57:16 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								2e642327ea 
								
							 
						 
						
							
							
								
								LibC: Implement localeconv()  
							
							
							
						 
						
							2024-08-09 16:56:48 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								a87ce41030 
								
							 
						 
						
							
							
								
								LibC: rename fd_set internal variable  
							
							... 
							
							
							
							binutils seems to need access to the internal type and uses this name
for lookup. 
							
						 
						
							2024-08-09 16:55:52 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								0c8cae4cc3 
								
							 
						 
						
							
							
								
								LibC: Move ioctl to <sys/ioctl.h>  
							
							... 
							
							
							
							Some ports seem to be assuming that ioctl exists there and not in
stropts.h 
							
						 
						
							2024-08-09 16:54:30 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								6fedf06150 
								
							 
						 
						
							
							
								
								LibC: Implement {sig,_,}{longjmp,setjmp}  
							
							
							
						 
						
							2024-08-09 15:58:56 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								44f0ec601f 
								
							 
						 
						
							
							
								
								Kernel: Expose /proc/meminfo and fix /proc/<pid>/meminfo  
							
							... 
							
							
							
							Thread was unconditionally calling <stack>->size() without validating
that the stack actually exists 
							
						 
						
							2024-08-09 15:58:56 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								2a659a9d03 
								
							 
						 
						
							
							
								
								BuildSystem: Fix enable sse definition  
							
							... 
							
							
							
							__enable_sse was never actually defined for any targets. This also adds
__arch definition for libc (so `utsname` works). 
							
						 
						
							2024-08-09 15:52:42 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								3b23458ecc 
								
							 
						 
						
							
							
								
								LibC: Start work on locales  
							
							... 
							
							
							
							This patch adds 2 locales, POSIX locale and UTF8 locale.
functions `mbstowcs()` and `strcoll()` use locales to do convertions and
comparison respectively. 
							
						 
						
							2024-08-09 15:52:42 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								7afdfb150f 
								
							 
						 
						
							
							
								
								LibC: Rewrite sigprocmask in terms of pthread_sigmask  
							
							... 
							
							
							
							Also don't fail SYS_SIGPROCMASK if how is invalid and set is NULL. 
							
						 
						
							2024-08-07 17:01:35 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								fe94d6cf89 
								
							 
						 
						
							
							
								
								LibC: Implement dummy rename() so vim can save files  
							
							... 
							
							
							
							vim calls rename when saving a file. This patch adds dummy
implementation that only works for regular files and does a copy instead
of proper rename. 
							
						 
						
							2024-08-05 20:16:05 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								4d96ae56ac 
								
							 
						 
						
							
							
								
								LibC: Add stubs for ungetc(), tcflush() and symlink()  
							
							
							
						 
						
							2024-08-05 01:48:24 +03:00  
				
					
						
							
							
								
								Bananymous 
							
						 
						
							
								adadb10b15 
								
							 
						 
						
							
							
								
								LibC: Fix strsignal() and implement psignal()  
							
							
							
						 
						
							2024-08-05 00:59:03 +03:00