summaryrefslogtreecommitdiff
path: root/src/user/lib/include
AgeCommit message (Collapse)Author
2023-08-14reorganization: first stepsdzwdz
2023-08-13libc: replace fork2_n_mount with mount_atdzwdz
2023-08-10user/fs: no longer inject MOUNT_ATs by defaultdzwdz
arguably the wrong choice from an usability standpoint, but the right choice from a performance standpoint. there's definitely a nicer way to do this
2023-08-06libc: fs_dirinject2 for injecting multiple pathsdzwdz
2023-07-19user /keyboard: handle open()s instantly even if waiting for kbdzwdz
fixes e.g. `echo */*` in dash
2023-06-18libc: experimental fread buffering supportdzwdz
makes find(1) run 3x faster
2023-06-17libc: implement dirent.hdzwdz
2023-06-17libc: dumb stat() stubs to make dash's PATH search workdzwdz
2023-06-17libc: expand psdata into a proper struct, include executable basedzwdz
this is very useful for debugging userland programs using the qemu gdb stub
2023-06-11kernel: replace await with wait2, roughly compatible with POSIXdzwdz
dash works now :^)))
2023-06-10libc: basic signal stubs, non-spec-compliant write() stubdzwdz
2023-06-09ports/dash: stub out everything needed for dash to compiledzwdz
2023-06-08libc: move the strto* functions to stdlib.h, where they "belong"dzwdz
2023-06-02libc: stub out sltar's requirementsdzwdz
2023-02-24toolchain: partially set up the sysrootdzwdz
2023-02-23build: don't -Isrc/ in user codedzwdz
2023-01-25style: typedef structs, shorter namespacesdzwdz
I've wanted to do this for a while, and since I've just had a relatively large refactor commit (pcpy), this is as good of a time as any. Typedefing structs was mostly inspired by Plan 9's coding style. It makes some lines of code much shorter at basically no expense. Everything related to userland kept old-style struct definitions, so as not to force that style onto other people. I also considered changing SCREAMING_ENUM_FIELDS to NicerLookingCamelcase, but I didn't, just in case that'd be confusing.
2023-01-25user: process titles, /bin/psdzwdz
2023-01-19kernel: user interruptsdzwdz
2023-01-11kernel: return EPIPE when fs_waiting on a dead filesystemdzwdz
2022-12-27sh: minor usability / aesthetic improvementsdzwdz
2022-12-25user/lib: reorganize a few header filesdzwdz
2022-10-19user/libc: BSD err.h, getprogname()dzwdz
2022-10-04user/libc: camellia_open, takes cwd into accountdzwdz
2022-09-21user/lib: ufs_waitdzwdz
2022-09-03user/libc: generate strerror from camellia/errno.hdzwdz
2022-09-03user: implement a basic mkdirdzwdz
2022-09-02user/ports: bare minimum to run doomgenericdzwdz
2022-08-29user/libc: setjmpdzwdz
2022-08-29user/lua: implement the bare minimum for it to link and "run"dzwdz
2022-08-28user/lua: prepare libc headersdzwdz
2022-08-28shared/path_simplify: return an unsigned valuedzwdz
2022-08-26user/libc: prepare for OpenED portdzwdz
2022-08-22user/libc: strspn, strtokdzwdz
2022-08-19user/libc: fextflags, add nonbuffering mode for freaddzwdz
useful for e.g. `hexdump -r /kdev/eth` to see packets as they come in
2022-08-14user/libc: ctype.hdzwdz
2022-08-09user/libc: preserve cwd through exec()dzwdz
2022-08-08user/libc: cwddzwdz
2022-08-07user/libc: port dlmallocdzwdz
2022-08-07user/libc: preparation for dlmalloc portdzwdz
2022-08-07user/libc: strchrdzwdz
2022-08-06make snprintf shared; dynamic resolution supportdzwdz
2022-08-05user/libc: fseek + ftell for getting a file's sizedzwdz
2022-08-03user/libc: "!files"dzwdz
similar to /dev/{stdin,stdout,stderr} on Linux, except handled by the libc instead of the kernel because that's the simplest way
2022-08-03user/libc: isspace, strtoldzwdz
2022-07-30user: stderrdzwdz
2022-07-29user/libc: properly implement snprintf; the v*printf familydzwdz
2022-07-27user/libc: a shitty fgets()dzwdz
2022-07-27user/libc: fseek()dzwdz
2022-07-26user/libc: execv()dzwdz