Commit Graph

226 Commits

Author SHA1 Message Date
Jonas 'Sortie' Termansen 60b9a84a51 execv(3) now passes environ(7) to execve(2). 2012-04-04 01:38:45 +02:00
Jonas 'Sortie' Termansen 33645eb347 <unistd.h> now declares environ(7) if _WANT_ENVIRON.
Note that it is very bad style of programs to access it directly.
2012-04-04 01:37:05 +02:00
Jonas 'Sortie' Termansen 05b29ce25a Renamed rfork(2) to sfork(2) to avoid compatibility issues.
sfork is much like rfork except sharing is default for everything.

Eventually, I'll make a rfork(3) wrapper function around sfork(2) to
provide compatibility to BSD programs.

I don't like Linux clone(2): that's some messy function.
2012-04-04 00:29:25 +02:00
Jonas 'Sortie' Termansen dd5157da6a Implemented setenv(3), putenv(3), getenv(3), clearenv(3), sortix_getenv(3),
unsetenv(3), envlength(3), getenvindexed(3), and environ(7).

This provides the user-space foundation for environmental variables.

Note that this works over fork(2), but not execve(2) yet.
2012-04-03 20:23:28 +02:00
Jonas 'Sortie' Termansen 5d59f0ed03 Added EBOUND. 2012-04-02 20:24:56 +02:00
Jonas 'Sortie' Termansen 95a088fec5 Added a dummy implementation rfork(2) equal to fork(2).
Note that in my implementation, you share per default, unless you ask.
2012-04-02 16:30:13 +02:00
Jonas 'Sortie' Termansen cd0e402bbb Added {,l,ll,imax}abs(3). 2012-03-27 16:36:55 +02:00
Jonas 'Sortie' Termansen 9ab0bc5474 Added {,p}{read,write}{all,least}(3). 2012-03-24 15:34:30 +01:00
Jonas 'Sortie' Termansen c62eb09cdc Added stubs for pread(2) and pwrite(2).
These are not implemented yet because the current kernel design is bad.

However, I need the stubs for other code.
2012-03-24 15:23:07 +01:00
Jonas 'Sortie' Termansen 757184fd5c Added EEOF. 2012-03-24 15:19:16 +01:00
Jonas 'Sortie' Termansen db79994e64 Refactored all the sortix headers into a include directory.
Also got rid of trailing white space. That corrupted .git/.

Big ass-commit because of recovered .git directory.
2012-03-22 00:52:29 +01:00
Jonas 'Sortie' Termansen e496c07764 Added a <libmaxsi/integer.h> header with divide-round-up functions. 2012-03-21 16:23:05 +01:00
Jonas 'Sortie' Termansen e0e0cadf4a Changed error message for ENOMEM to something sensible. 2012-03-19 02:26:32 +01:00
Jonas 'Sortie' Termansen f54cb6ab94 Added EAGAIN and made read(1) and write(1) retry if they get it. 2012-03-17 15:35:45 +01:00
Jonas 'Sortie' Termansen e0eabd0e5f <dirent.h> now declares size_t. 2012-03-12 02:03:46 +01:00
Jonas 'Sortie' Termansen 8399b1a2ee Made <sys/types.h> more POSIX compliant. 2012-03-12 02:00:00 +01:00
Jonas 'Sortie' Termansen 3cab1113cf Made EOPNOTSUPP an alias for ENOTSUP. 2012-03-12 01:46:12 +01:00
Jonas 'Sortie' Termansen 2cdeb575f8 Renamed EACCESS to EACCES.
Stupid POSIX.
2012-03-12 01:43:00 +01:00
Jonas 'Sortie' Termansen 6de3c462be Added EMFILE. 2012-03-12 01:37:50 +01:00
Jonas 'Sortie' Termansen 44e2537d7b Added mode_t to <sys/types.h>.
Gonna do something about that header.
2012-03-12 01:31:48 +01:00
Jonas 'Sortie' Termansen d564574cd0 Added fseterr(3). 2012-03-12 01:31:48 +01:00
Jonas 'Sortie' Termansen 366cc2549a Added the stdio_ext(3) API.
The API is available in <stdio.h> without __ prefix if _SORTIX_SOURCE.
2012-03-12 00:38:48 +01:00
Jonas 'Sortie' Termansen d033a58b10 Added a hacky definition of MB_CUR_MAX. 2012-03-11 20:49:50 +01:00
Jonas 'Sortie' Termansen 4ad0d360da Added EILSEQ. 2012-03-11 20:44:57 +01:00
Jonas 'Sortie' Termansen 9fa5690d79 Added time_t declaration to <time.h>. 2012-03-11 20:38:55 +01:00
Jonas 'Sortie' Termansen beb88d0443 Added EPIPE. 2012-03-11 20:11:32 +01:00
Jonas 'Sortie' Termansen c2660e5432 Added EBUSY. 2012-03-10 23:18:27 +01:00
Jonas 'Sortie' Termansen f8bcf3117d Added ENOTEMPTY. 2012-03-10 23:12:31 +01:00
Jonas 'Sortie' Termansen bdd8b2a77a Added strnlen(3). 2012-03-10 23:04:49 +01:00
Jonas 'Sortie' Termansen cde10097e6 Fixed realloc(3) bug causing buffer overruns. 2012-03-07 20:52:44 +01:00
Jonas 'Sortie' Termansen 8a9a0c58ea Added kernelinfo(2), which reads a kernel information string.
Currently it lets you query the name of the kernel, its version, and the
build timestamp of the kernelinfo.cpp file.
2012-03-07 18:04:59 +01:00
Jonas 'Sortie' Termansen d6f9505d3b Made getdelim(3) follow POSIX-2008 a bit more closely.
It now reads lines that aren't delimited, but terminated by EOF.
2012-03-07 15:52:07 +01:00
Jonas 'Sortie' Termansen 3cc1f7a687 Made fgetc(3) and fputc(3) use unsigned char internally. 2012-03-07 15:51:25 +01:00
Jonas 'Sortie' Termansen 2722c3f03d Added EINTR. 2012-03-06 13:36:44 +01:00
Jonas 'Sortie' Termansen 9f7175fbc8 Forgot to add fputs(3) to <stdio.h>. 2012-03-06 13:24:10 +01:00
Jonas 'Sortie' Termansen 065ceae509 Added fgets(3). 2012-03-06 13:15:02 +01:00
Jonas 'Sortie' Termansen 6bcb3d7384 Added stat(2) and fstat(2) in the kernel.
It's a bit hacky, but it works.

lstat(2) currently redirects to stat(2).
2012-03-06 13:10:59 +01:00
Jonas 'Sortie' Termansen fa4bd9e7a8 Forgot to add extern "C" to sscanf. 2012-03-05 16:06:15 +01:00
Jonas 'Sortie' Termansen c03738a9f3 Added a stub for sscanf(3).
This stub implements an ugly hack to help port binutils.

Hopefully we'll get a real scanf family of functions soon.
2012-03-05 16:01:43 +01:00
Jonas 'Sortie' Termansen f089a030b4 Added stub for lstat(2). 2012-03-05 15:50:41 +01:00
Jonas 'Sortie' Termansen 4b2c22d480 Added access(2). 2012-03-05 15:46:23 +01:00
Jonas 'Sortie' Termansen cd350620f2 Added fputs(3). 2012-03-05 13:32:42 +01:00
Jonas 'Sortie' Termansen bc38dc5127 Added a stub for environ(3). 2012-03-05 13:20:37 +01:00
Jonas 'Sortie' Termansen 25b33b4755 Fixed broken declaration of mktemp(3) in <stdlib.h>. 2012-03-05 13:10:56 +01:00
Jonas 'Sortie' Termansen 85549b5688 Uncommented warning in <assert.h> to prevent compile errors in binutils.
This is because they treat warnings as errors.
2012-03-05 13:09:00 +01:00
Jonas 'Sortie' Termansen c1affdf6db Added missing extern "C" linkages in libmaxsi/string.cpp. 2012-03-05 13:08:02 +01:00
Jonas 'Sortie' Termansen 7082ac4ac9 Forgot to add extern "C" linkage to mktemp(3). 2012-03-05 13:05:45 +01:00
Jonas 'Sortie' Termansen 5449ae78f4 Added atol(3) and atoll(3). 2012-03-05 12:53:58 +01:00
Jonas 'Sortie' Termansen 422d2fd579 Added qsort(3).
This is a rather slow implementation. Will be fixed soon.
2012-03-05 12:37:59 +01:00
Jonas 'Sortie' Termansen 12e8dd6d81 Added stub for getenv(3). 2012-03-04 23:55:41 +01:00