Bananymous
							
						 
						
							 
							
							
							
							
								
							
							
								165a379c73 
								
							 
						 
						
							
							
								
								LibC: Fix S_IF* macros and add macros for access/type masks  
							
							 
							
							
							
						 
						
							2023-08-11 10:30:50 +03:00  
						
					 
				
					
						
							
							
								 
								Bananymous
							
						 
						
							 
							
							
							
							
								
							
							
								c67a7cec5b 
								
							 
						 
						
							
							
								
								LibC: fix typo  
							
							 
							
							
							
						 
						
							2023-08-02 22:10:12 +03:00  
						
					 
				
					
						
							
							
								 
								Bananymous
							
						 
						
							 
							
							
							
							
								
							
							
								13852e865c 
								
							 
						 
						
							
							
								
								LibC: sys/wait.h now has proper exit status macros  
							
							 
							
							... 
							
							
							
							We use the same format as basically every implementation 
							
						 
						
							2023-08-01 10:32:04 +03:00  
						
					 
				
					
						
							
							
								 
								Bananymous
							
						 
						
							 
							
							
							
							
								
							
							
								432c296b7b 
								
							 
						 
						
							
							
								
								Kernel: Implement SYS_GET_PID and SYS_TCSETPGID  
							
							 
							
							... 
							
							
							
							we don't have consept of process groups yet 
							
						 
						
							2023-07-24 22:29:59 +03:00  
						
					 
				
					
						
							
							
								 
								Bananymous
							
						 
						
							 
							
							
							
							
								
							
							
								adb14ba373 
								
							 
						 
						
							
							
								
								Kernel: Userspace signal handlers are now called one at a time  
							
							 
							
							... 
							
							
							
							I added a syscall for telling the kernel when signal execution has
finished. We should send a random hash or id to the signal trampoline
that we would include in the syscall, so validity of signal exit can
be confirmed. 
							
						 
						
							2023-07-23 13:34:53 +03:00  
						
					 
				
					
						
							
							
								 
								Bananymous
							
						 
						
							 
							
							
							
							
								
							
							
								7391d91317 
								
							 
						 
						
							
							
								
								Kernel/LibC: add SYS_SIGNAL/signal()  
							
							 
							
							
							
						 
						
							2023-07-21 20:08:13 +03:00  
						
					 
				
					
						
							
							
								 
								Bananymous
							
						 
						
							 
							
							
							
							
								
							
							
								2149cec29f 
								
							 
						 
						
							
							
								
								Kernel: Make signals more POSIX  
							
							 
							
							
							
						 
						
							2023-07-21 20:01:12 +03:00  
						
					 
				
					
						
							
							
								 
								Bananymous
							
						 
						
							 
							
							
							
							
								
							
							
								ad756c36fc 
								
							 
						 
						
							
							
								
								Kernel/LibC: Add SYS_KILL/kill()  
							
							 
							
							
							
						 
						
							2023-07-21 19:27:38 +03:00  
						
					 
				
					
						
							
							
								 
								Bananymous
							
						 
						
							 
							
							
							
							
								
							
							
								dcd4d0daeb 
								
							 
						 
						
							
							
								
								Kernel/LibC: Add bareboness signals  
							
							 
							
							... 
							
							
							
							You can now call raise() to raise a signal. Signal handlers are
not yet supported, but the handling works :) 
							
						 
						
							2023-07-21 15:45:02 +03:00  
						
					 
				
					
						
							
							
								 
								Bananymous
							
						 
						
							 
							
							
							
							
								
							
							
								6d93c1eb92 
								
							 
						 
						
							
							
								
								LibC: add NAME_MAX to limits.h  
							
							 
							
							... 
							
							
							
							This is defined to 255 which is _XOPEN_NAME_MAX, smallest value
for XOPEN compliance 
							
						 
						
							2023-07-10 11:48:11 +03:00  
						
					 
				
					
						
							
							
								 
								Bananymous
							
						 
						
							 
							
							
							
							
								
							
							
								274ecbba78 
								
							 
						 
						
							
							
								
								LibC: limits.h now defined OPEN_MAX  
							
							 
							
							
							
						 
						
							2023-07-07 23:08:49 +03:00  
						
					 
				
					
						
							
							
								 
								Bananymous
							
						 
						
							 
							
							
							
							
								
							
							
								a549336530 
								
							 
						 
						
							
							
								
								Kernel/LibC: add basic dup2  
							
							 
							
							
							
						 
						
							2023-07-06 23:17:54 +03:00  
						
					 
				
					
						
							
							
								 
								Bananymous
							
						 
						
							 
							
							
							
							
								
							
							
								4eb95c963d 
								
							 
						 
						
							
							
								
								Kernel/LibC: Add basic pipe() syscall and command  
							
							 
							
							... 
							
							
							
							You can now create pipes :) 
							
						 
						
							2023-07-06 22:16:26 +03:00  
						
					 
				
					
						
							
							
								 
								Bananymous
							
						 
						
							 
							
							
							
							
								
							
							
								3c068aa0ae 
								
							 
						 
						
							
							
								
								Kernel/LibC: add clock_gettime() for CLOCK_MONOTONIC  
							
							 
							
							... 
							
							
							
							This gets the number of milliseconds since boot 
							
						 
						
							2023-07-06 00:38:29 +03:00  
						
					 
				
					
						
							
							
								 
								Bananymous
							
						 
						
							 
							
							
							
							
								
							
							
								0f63cfa43f 
								
							 
						 
						
							
							
								
								Kernel/LibC: add SYS_{SET,GET}_PWD and chdir, getpwd  
							
							 
							
							
							
						 
						
							2023-06-12 02:02:52 +03:00  
						
					 
				
					
						
							
							
								 
								Bananymous
							
						 
						
							 
							
							
							
							
								
							
							
								b254ade69b 
								
							 
						 
						
							
							
								
								Kernel: Add SYS_GET_{,E}{UID,GID}  
							
							 
							
							
							
						 
						
							2023-06-11 22:37:00 +03:00  
						
					 
				
					
						
							
							
								 
								Bananymous
							
						 
						
							 
							
							
							
							
								
							
							
								ef4ebaa969 
								
							 
						 
						
							
							
								
								Kernel: Add syscalls for set{,e,re}{uid,gid}  
							
							 
							
							
							
						 
						
							2023-06-11 22:37:00 +03:00  
						
					 
				
					
						
							
							
								 
								Bananymous
							
						 
						
							 
							
							
							
							
								
							
							
								99f8133b91 
								
							 
						 
						
							
							
								
								LibC: gid_t and id_t are now signed types  
							
							 
							
							... 
							
							
							
							I have no idea why I had made them unisigned 
							
						 
						
							2023-06-11 22:37:00 +03:00  
						
					 
				
					
						
							
							
								 
								Bananymous
							
						 
						
							 
							
							
							
							
								
							
							
								071da18fa3 
								
							 
						 
						
							
							
								
								LibC: add strchrnul()  
							
							 
							
							... 
							
							
							
							this is a gnu libc extension 
							
						 
						
							2023-06-11 20:18:03 +03:00  
						
					 
				
					
						
							
							
								 
								Bananymous
							
						 
						
							 
							
							
							
							
								
							
							
								5aed186827 
								
							 
						 
						
							
							
								
								Kernel: Add SYS_OPENAT  
							
							 
							
							
							
						 
						
							2023-06-11 03:29:22 +03:00  
						
					 
				
					
						
							
							
								 
								Bananymous
							
						 
						
							 
							
							
							
							
								
							
							
								52c4eebd77 
								
							 
						 
						
							
							
								
								Kernel: Implement SYS_FSTAT  
							
							 
							
							
							
						 
						
							2023-06-11 03:29:22 +03:00  
						
					 
				
					
						
							
							
								 
								Bananymous
							
						 
						
							 
							
							
							
							
								
							
							
								24f0d26fce 
								
							 
						 
						
							
							
								
								LibC: Implement basic dirent functionality  
							
							 
							
							... 
							
							
							
							We don't currently support seeking 
							
						 
						
							2023-06-11 03:29:22 +03:00  
						
					 
				
					
						
							
							
								 
								Bananymous
							
						 
						
							 
							
							
							
							
								
							
							
								7a5d5cabad 
								
							 
						 
						
							
							
								
								Kernel: Add syscall for reading directory entries  
							
							 
							
							
							
						 
						
							2023-06-11 00:18:08 +03:00  
						
					 
				
					
						
							
							
								 
								Bananymous
							
						 
						
							 
							
							
							
							
								
							
							
								f7de310889 
								
							 
						 
						
							
							
								
								LibC: add missing O_EXEC and O_SEARCH  
							
							 
							
							
							
						 
						
							2023-06-11 00:17:18 +03:00  
						
					 
				
					
						
							
							
								 
								Bananymous
							
						 
						
							 
							
							
							
							
								
							
							
								86f58f60cb 
								
							 
						 
						
							
							
								
								LibC: implement setenv, unsetenv, putenv  
							
							 
							
							
							
						 
						
							2023-06-05 22:51:02 +03:00  
						
					 
				
					
						
							
							
								 
								Bananymous
							
						 
						
							 
							
							
							
							
								
							
							
								9d64dbd5c2 
								
							 
						 
						
							
							
								
								Kernel/LibC: add SYS_STAT and stat(), lstat()  
							
							 
							
							
							
						 
						
							2023-06-05 14:37:14 +03:00  
						
					 
				
					
						
							
							
								 
								Bananymous
							
						 
						
							 
							
							
							
							
								
							
							
								cbb9f47ee5 
								
							 
						 
						
							
							
								
								LibC: add wait and waitpid  
							
							 
							
							... 
							
							
							
							Note that wait() doesn't work since only waiting for specified
pid is supported. wait() will just return -1 and set errno to
ECHILD. 
							
						 
						
							2023-06-04 18:00:52 +03:00  
						
					 
				
					
						
							
							
								 
								Bananymous
							
						 
						
							 
							
							
							
							
								
							
							
								3c3c7826ef 
								
							 
						 
						
							
							
								
								LibC: Add simple definition for realloc  
							
							 
							
							... 
							
							
							
							The syscall just crashes the kernel currently. I will implement
this when needed 
							
						 
						
							2023-06-02 17:56:13 +03:00  
						
					 
				
					
						
							
							
								 
								Bananymous
							
						 
						
							 
							
							
							
							
								
							
							
								3a69768eb0 
								
							 
						 
						
							
							
								
								LibC: remove select() declaration  
							
							 
							
							... 
							
							
							
							This already comes from sys/select.h 
							
						 
						
							2023-06-02 17:29:09 +03:00  
						
					 
				
					
						
							
							
								 
								Bananymous
							
						 
						
							 
							
							
							
							
								
							
							
								afb29ff3ec 
								
							 
						 
						
							
							
								
								LibC: rename [[noreturn]] to __attribute__((__noreturn__))  
							
							 
							
							... 
							
							
							
							This compiles with C compiler 
							
						 
						
							2023-06-02 17:28:36 +03:00  
						
					 
				
					
						
							
							
								 
								Bananymous
							
						 
						
							 
							
							
							
							
								
							
							
								e6f0f891a6 
								
							 
						 
						
							
							
								
								LibC: stdlib.h doesn't seem to typedef wchar_t without __need_wchar_t  
							
							 
							
							
							
						 
						
							2023-06-02 17:27:31 +03:00  
						
					 
				
					
						
							
							
								 
								Bananymous
							
						 
						
							 
							
							
							
							
								
							
							
								36e5aa4683 
								
							 
						 
						
							
							
								
								LibC: fix INFINITY definition typo  
							
							 
							
							
							
						 
						
							2023-06-02 17:27:14 +03:00  
						
					 
				
					
						
							
							
								 
								Bananymous
							
						 
						
							 
							
							
							
							
								
							
							
								7738050105 
								
							 
						 
						
							
							
								
								LibC: fix DIR typedef for C code  
							
							 
							
							
							
						 
						
							2023-06-02 17:26:38 +03:00  
						
					 
				
					
						
							
							
								 
								Bananymous
							
						 
						
							 
							
							
							
							
								
							
							
								4bf11ec349 
								
							 
						 
						
							
							
								
								LibC: complex.h undefs I before defining it  
							
							 
							
							
							
						 
						
							2023-06-02 17:13:09 +03:00  
						
					 
				
					
						
							
							
								 
								Bananymous
							
						 
						
							 
							
							
							
							
								
							
							
								d821012eed 
								
							 
						 
						
							
							
								
								LibC: mbstate_t is empty struct  
							
							 
							
							
							
						 
						
							2023-06-02 17:10:29 +03:00  
						
					 
				
					
						
							
							
								 
								Bananymous
							
						 
						
							 
							
							
							
							
								
							
							
								35c6edd989 
								
							 
						 
						
							
							
								
								LibC: fix sig_atomic_t definition  
							
							 
							
							
							
						 
						
							2023-06-02 17:08:43 +03:00  
						
					 
				
					
						
							
							
								 
								Bananymous
							
						 
						
							 
							
							
							
							
								
							
							
								ab61b49aca 
								
							 
						 
						
							
							
								
								Kernel: Add SYS_EXEC syscall  
							
							 
							
							
							
						 
						
							2023-05-31 20:57:33 +03:00  
						
					 
				
					
						
							
							
								 
								Bananymous
							
						 
						
							 
							
							
							
							
								
							
							
								341f7e41e5 
								
							 
						 
						
							
							
								
								LibC: Fix some headers to make gcc build again  
							
							 
							
							
							
						 
						
							2023-05-30 01:17:45 +03:00  
						
					 
				
					
						
							
							
								 
								Bananymous
							
						 
						
							 
							
							
							
							
								
							
							
								0c316ebfb2 
								
							 
						 
						
							
							
								
								Kernel: Add SYS_SLEEP  
							
							 
							
							
							
						 
						
							2023-05-28 22:34:48 +03:00  
						
					 
				
					
						
							
							
								 
								Bananymous
							
						 
						
							 
							
							
							
							
								
							
							
								6fdbe6f9c2 
								
							 
						 
						
							
							
								
								Kernel: Add bareboness fork() function  
							
							 
							
							
							
						 
						
							2023-05-28 18:08:49 +03:00  
						
					 
				
					
						
							
							
								 
								Bananymous
							
						 
						
							 
							
							
							
							
								
							
							
								f79250c4d4 
								
							 
						 
						
							
							
								
								LibC: Rewrite all the headers.  
							
							 
							
							... 
							
							
							
							We now have more or less posix issue 2018 conforming libc headers.
This was a really time consuming and boring operation but it had to
be done.
Now we get to actually start implementing libc :) 
							
						 
						
							2023-05-26 22:31:21 +03:00  
						
					 
				
					
						
							
							
								 
								Bananymous
							
						 
						
							 
							
							
							
							
								
							
							
								9e0abbc2f0 
								
							 
						 
						
							
							
								
								Kernel: Add bareboness possibility to set termios  
							
							 
							
							
							
						 
						
							2023-05-26 22:31:21 +03:00  
						
					 
				
					
						
							
							
								 
								Bananymous
							
						 
						
							 
							
							
							
							
								
							
							
								53f4b5a9da 
								
							 
						 
						
							
							
								
								LibC: add function declarations to sys/stat.h  
							
							 
							
							
							
						 
						
							2023-05-11 15:11:33 +03:00  
						
					 
				
					
						
							
							
								 
								Bananymous
							
						 
						
							 
							
							
							
							
								
							
							
								1d4a6c3a42 
								
							 
						 
						
							
							
								
								LibC: add function declarations to dirent.h  
							
							 
							
							
							
						 
						
							2023-05-11 01:42:52 +03:00  
						
					 
				
					
						
							
							
								 
								Bananymous
							
						 
						
							 
							
							
							
							
								
							
							
								40083e4aa1 
								
							 
						 
						
							
							
								
								LibC: add definitions to math.h  
							
							 
							
							
							
						 
						
							2023-05-11 01:40:42 +03:00  
						
					 
				
					
						
							
							
								 
								Bananymous
							
						 
						
							 
							
							
							
							
								
							
							
								bd929bff07 
								
							 
						 
						
							
							
								
								LibC: add defines in stdio.h  
							
							 
							
							
							
						 
						
							2023-05-11 01:39:16 +03:00  
						
					 
				
					
						
							
							
								 
								Bananymous
							
						 
						
							 
							
							
							
							
								
							
							
								cd4a0530fa 
								
							 
						 
						
							
							
								
								LibC: add function declarations to unistd.h  
							
							 
							
							
							
						 
						
							2023-05-11 00:34:03 +03:00  
						
					 
				
					
						
							
							
								 
								Bananymous
							
						 
						
							 
							
							
							
							
								
							
							
								273fdd2235 
								
							 
						 
						
							
							
								
								LibC: add function declarations to string.h  
							
							 
							
							
							
						 
						
							2023-05-11 00:34:03 +03:00  
						
					 
				
					
						
							
							
								 
								Bananymous
							
						 
						
							 
							
							
							
							
								
							
							
								b20f2e8d31 
								
							 
						 
						
							
							
								
								LibC: add function declarations to math.h  
							
							 
							
							
							
						 
						
							2023-05-11 00:34:03 +03:00  
						
					 
				
					
						
							
							
								 
								Bananymous
							
						 
						
							 
							
							
							
							
								
							
							
								e756cde2b1 
								
							 
						 
						
							
							
								
								LibC: define all errnos and strerror{name,desk}_np  
							
							 
							
							
							
						 
						
							2023-05-11 00:34:03 +03:00