Age | Commit message (Collapse) | Author | |
---|---|---|---|
2019-06-07 | AK: Rename printf.cpp to PrintfImplementation.h. | Andreas Kling | |
2019-06-07 | AK: Add a ScopeGuard helper that invokes a callback when destroyed. | Andreas Kling | |
This is useful when you want to ensure some little thing happens when you exit a certain scope. This patch makes use of it in LibC's netdb code to make sure we close the connection to the LookupServer. | |||
2019-06-06 | LookupServer+LibC: Add support for reverse DNS lookups via gethostbyaddr(). | Andreas Kling | |
LookupServer can now take two types of requests: * L: Lookup * R: Reverse lookup The /bin/host program now does a reverse lookup if the input string is a valid IPv4 address. :^) | |||
2019-06-06 | LibC: inet_pton() should return 1 on success, 0 or -1 on failure. | Andreas Kling | |
2019-06-03 | LibC: Implement popen() and pclose(). | Andreas Kling | |
I feel reasonably confident that I might have gotten these right. :^) | |||
2019-06-03 | Terminal: Use Vectors and OwnPtrs for Terminal lines. Adjust scroll | Christopher Dumas | |
region behavior | |||
2019-06-03 | Terminal: Implement scroll region termcodes | Christopher Dumas | |
2019-06-03 | LibC: Implement dirfd(). | Andreas Kling | |
2019-06-01 | Kernel: Add fchown() syscall. | Andreas Kling | |
2019-05-30 | LibC: Move wait-related stuff to <sys/wait.h>. #POSIX | Andreas Kling | |
2019-05-30 | LibC: Add setenv(). | Andreas Kling | |
If I'm understanding the standard C library correctly, setenv() copies while putenv() does not. That's really confusing and putenv() basically sucks. To know which environment variables to free on replacement and which ones to leave alone, we keep track of the ones malloced by setenv in a side table. This patch also moves Shell to using setenv() instead of putenv(). Fixes #29. | |||
2019-05-30 | Kernel/LibC: Implement sched_* functionality to set/get process priority | Robin Burchell | |
Right now, we allow anything inside a user to raise or lower any other process's priority. This feels simple enough to me. Linux disallows raising, but that's annoying in practice. | |||
2019-05-30 | LibC: Add malloc_size() to tell you how big an allocation might be. | Andreas Kling | |
It can't be 100% precise but it doesn't really matter. Use this to implement realloc() nicely. This also fixes a bug in realloc() where we didn't take the size of the allocation metadata into account when computing the size of an allocation backed by a BigAllocationBlock. | |||
2019-05-29 | LibM LibC: add fixes for Lua port. | Mustafa Ali CAN | |
2019-05-29 | LibC: realloc() should reuse the existing allocation more often. | Andreas Kling | |
We were only reusing the existing allocation if the new requested size was exactly the same as the fudged size of the block. This meant that realloc() could allocate a new block even though the new block would be identical to the old block. | |||
2019-05-28 | LibC: Don't define ALWAYS_INLINE if it's already defined. | Andreas Kling | |
This makes building GCC a bit quieter. | |||
2019-05-28 | LibC: fcntl.h should define F_RDLCK. | Andreas Kling | |
2019-05-28 | Add clang-format file | Robin Burchell | |
Also run it across the whole tree to get everything using the One True Style. We don't yet run this in an automated fashion as it's a little slow, but there is a snippet to do so in makeall.sh. | |||
2019-05-28 | LibC: Make dlfcn stubs extern "C" like the outside world expects. | Andreas Kling | |
2019-05-28 | LibC: Move size_t, ptrdiff_t and NULL to stddef.h. #POSIX | Andreas Kling | |
2019-05-28 | LibC: Move struct timeval to sys/time.h. #POSIX | Andreas Kling | |
2019-05-26 | LibC: Implement abort() as raise(SIGABRT). | Andreas Kling | |
2019-05-26 | LibC: Let the string for SIGFPE be "Division by zero". | Andreas Kling | |
That's really what we send this signal for, so let's call it that. | |||
2019-05-23 | LibC: Stub out dlfcn | Robin Burchell | |
2019-05-23 | LibC: The "install" target should depend on the "startfiles" target. | Andreas Kling | |
This ensures that crt0.o is built during the Toolchain bootstrap. | |||
2019-05-23 | LibC: Port setjmp syntax to avoid nasm dependency | Robin Burchell | |
2019-05-22 | LibC: Some compat fixes for GNU make. | Andreas Kling | |
2019-05-22 | LibC: Implement wait() as a wrapper around waitpid(). | Andreas Kling | |
2019-05-21 | LibC: First pass of compat work / stubs while trying to build OpenSSL. | Andreas Kling | |
2019-05-21 | LibC: Oops, forgot to commit sigsuspend() prototype. | Andreas Kling | |
2019-05-21 | LibC: Add htonl() and ntohl(). | Andreas Kling | |
2019-05-21 | LibC: Add sigsuspend() stub. | Andreas Kling | |
2019-05-20 | Kernel: Add getpeername() syscall, and fix getsockname() behavior. | Andreas Kling | |
We were copying the raw IPv4 addresses into the wrong part of sockaddr_in, and we didn't set sa_family or sa_port. | |||
2019-05-20 | Kernel: Add support for recv() with MSG_DONTWAIT. | Andreas Kling | |
Passing this flag to recv() temporarily puts the file descriptor into non-blocking mode. Also implement LocalSocket::recv() as a simple forwarding to read(). | |||
2019-05-19 | LibC: Add an h_addr macro for old code that doesn't know about h_addr_list. | Andreas Kling | |
2019-05-19 | Kernel+LibC: Implement getsockname() syscall. | Andreas Kling | |
2019-05-19 | LibC: Add stub for fsync(). | Andreas Kling | |
2019-05-19 | LibC: Add mmap_with_name() that names the allocation immediately. | Andreas Kling | |
This allows us to skip the separate call to set_mmap_name() in code that we control, e.g malloc() and GraphicsBitmap. | |||
2019-05-19 | LibC: unsetenv() should take a const char*, not a char*. | Andreas Kling | |
2019-05-18 | malloc: Use a Vector with inline capacity for the big block recyclers. | Andreas Kling | |
2019-05-17 | LibC: Implement clock() and add CLOCKS_PER_SEC define. | Andreas Kling | |
2019-05-17 | LibCore: Move AK/ArgsParser to LibCore/CArgsParser | Robin Burchell | |
Also rename the classes to match LibCore naming style. This means that it's no longer incorrectly linked into LibC and Kernel. | |||
2019-05-17 | LibC: Rename beep() to sysbeep() to avoid clashing with curses. | Andreas Kling | |
2019-05-16 | LibC: Don't clobber errno in dbgprintf(). | Andreas Kling | |
2019-05-16 | LibC/Shell: Add unsetenv(), and unset builtin calling it in Shell. | Robin Burchell | |
2019-05-16 | LibC: Change putenv (and getenv) to not copy, but directly return the ↵ | Robin Burchell | |
environ values. This is in keeping with how putenv should function. It does mean that the shell's export command now leaks, but that's not a difficult fix. Contributes to #29. | |||
2019-05-16 | LibC: Add struct timespec to time.h | Robin Burchell | |
2019-05-16 | LibC: Allow {AF,PF}_UNIX as well as {AF,PF}_LOCAL | Robin Burchell | |
Seems that these are equivilent. POSIX specifies _LOCAL, but a lot of software uses _UNIX. | |||
2019-05-16 | LibC: Add INET_ADDRSTRLEN define | Robin Burchell | |
2019-05-16 | LibC: Define a SOMAXCONN value in socket.h | Robin Burchell | |
No idea if this is sensible; but some software will look for it. |