Commit Graph

  • d1801d484c
    libc: Add qsort() apio 2023-05-02 20:45:43 +0200
  • dcd93cce3a
    libluna: Add a sort() function apio 2023-05-02 20:42:48 +0200
  • 6beea7f817
    ls: Avoid printing an empty line when a directory is empty apio 2023-05-02 11:00:28 +0200
  • 0fad179485
    apps+libc+libos: Remove _LUNA_SYSTEM_ERROR_EXTENSIONS and reorder headers apio 2023-05-02 10:50:39 +0200
  • 052ae4902e
    libluna: Remove EFIXME and make others declare error_string() and error_name() apio 2023-05-02 10:46:18 +0200
  • 7058ec945a
    libluna: Use a String for name and handle prefix correctly in TarStream apio 2023-05-02 10:47:50 +0200
  • 6982a8c07e
    libluna: Make String::from_string_view handle non-null-terminated strings properly apio 2023-05-02 10:48:38 +0200
  • 1444cbb3df
    libluna: Allow constructing a StringView from a string that might not be null-terminated apio 2023-05-02 10:49:12 +0200
  • 1d6a39c924
    libluna: Make String::split() inline apio 2023-05-01 20:05:10 +0200
  • 376247ba8a
    libluna: Add String::from_string_view() apio 2023-05-01 20:03:16 +0200
  • 53ec448e33
    ls: Add the -l flag apio 2023-05-01 20:01:05 +0200
  • 2572d5b238
    libc: Add wrapper for the fstatat() system call apio 2023-05-01 20:00:43 +0200
  • 458e0a87cc
    libc: Fix S_IS* macros apio 2023-05-01 20:00:10 +0200
  • 48df90e636
    libos+apps: Use os::*print* instead of (f)printf apio 2023-05-01 19:32:00 +0200
  • a2303665fc
    libos: Add os:: print(), println(), eprint(), and eprintln() apio 2023-05-01 19:31:15 +0200
  • df590f4e26
    libluna: Add String::join() apio 2023-05-01 19:29:17 +0200
  • 7fbc644753
    libc: Add clearenv apio 2023-05-01 19:06:31 +0200
  • 967758d464
    libc: Implement setenv() and unsetenv() apio 2023-04-30 14:46:34 +0200
  • ac4bbd135b
    libos: Add Directory::list() apio 2023-04-28 22:41:44 +0200
  • 6c5d6aaf00
    libos: Make remove_tree_at use os::Directory apio 2023-04-28 21:16:29 +0200
  • 3e277b5d6f
    libos: Introduce os::Directory apio 2023-04-28 21:15:41 +0200
  • 8adfb6fdb9
    libluna: Leave String in a valid state when moved apio 2023-04-28 21:16:11 +0200
  • ae7c841fff
    tests: Make building tests optional, although with no option to toggle them on for now apio 2023-04-28 20:02:49 +0200
  • b34f2149ee
    tests: Test libluna's UTF-8 suite apio 2023-04-28 20:01:18 +0200
  • c5a867d81c
    libluna: Add wcscmp apio 2023-04-28 20:00:26 +0200
  • 15dcd6ad15
    libluna: Check the whole string in Utf8StringDecoder::code_points() apio 2023-04-28 20:00:14 +0200
  • b4a5aff071
    libluna: Fix UTF-8 encoding apio 2023-04-28 19:59:40 +0200
  • 80914f0bb9
    ArgumentParser: Add support for version information apio 2023-04-28 16:33:05 +0200
  • 0c1d33f2ec
    kernel: Move some files into subdirectories apio 2023-04-28 15:55:06 +0200
  • 52ce4b28aa
    Scheduler: Remove redundant check in for_each_child apio 2023-04-28 15:22:16 +0200
  • 7b4cfd52cd
    Scheduler: Don't search threads spawned before the current thread to find children apio 2023-04-28 15:19:01 +0200
  • bcdec62f51
    kernel: Allow returning early from Scheduler::for_each_child apio 2023-04-28 15:13:53 +0200
  • f3ffdd32d4
    libluna: Add support for range-based iteration to LinkedList apio 2023-04-28 15:12:21 +0200
  • 77dcfab5ef
    kernel: Run the initialization process in a thread apio 2023-04-28 13:23:07 +0200
  • b1e400d795
    libluna: Allow callers to optimize heap allocations by telling us they won't resize the returned memory apio 2023-04-27 17:36:25 +0200
  • f0fc3ec7ca
    Remove old note from README apio 2023-04-26 22:49:43 +0200
  • 7c8f195088
    base64: Rename --allow-garbage to --ignore-garbage apio 2023-04-26 22:37:55 +0200
  • e1ac9473a2
    libluna: If allowing garbage chars while decoding Base64, skip them after the padding instead of erroring out apio 2023-04-26 22:32:24 +0200
  • fb22e14524
    tests: Add tests for Base64 apio 2023-04-26 21:17:09 +0200
  • 9d33e22ae0
    apps: Add base64 apio 2023-04-26 20:58:04 +0200
  • b48d1024a8
    libluna: Add Base64 encoding and decoding code apio 2023-04-26 20:57:48 +0200
  • 24f4ce9669
    kernel: Only allow Ctrl+D on an empty line apio 2023-04-26 20:42:26 +0200
  • 099f6131d1
    kernel: Avoid printing control characters that we don't have a special meaning for apio 2023-04-26 20:42:08 +0200
  • 36bc217056
    libluna: Allow constructing a Slice from another one with a different pointer type apio 2023-04-26 20:41:24 +0200
  • cb28e2a385
    libos: Add a convenience function for opening a file or standard input apio 2023-04-26 20:41:03 +0200
  • fb09eb97ce
    libos: Add File::read_all() and File::read_all_as_string() apio 2023-04-26 20:34:09 +0200
  • 5b69ce554c
    init: Add a few more configuration options for services apio 2023-04-25 21:00:12 +0200
  • 97e9fceaa4
    kernel+libc: Add dup2() apio 2023-04-25 20:37:30 +0200
  • 188a97cf54
    libc: Add execlp apio 2023-04-25 20:25:51 +0200
  • 89fd57dea4
    libc: Propagate all errors in execl() and execvpe() + add execle(). apio 2023-04-25 17:42:19 +0200
  • b8ca749a6c
    su: Default to root if no username is provided v0.1.0 apio 2023-04-24 22:24:07 +0200
  • 919c9dd3cf
    sh: Build a more elaborate prompt using the system hostname and username apio 2023-04-24 22:13:06 +0200
  • 403b0f6b94
    kernel+libc+init: Add a way to modify the system hostname apio 2023-04-24 21:20:44 +0200
  • cfb4baab4b
    apps: Add uname apio 2023-04-24 21:02:04 +0200
  • 9eab0886b6
    kernel+libc: Add uname() apio 2023-04-24 20:34:44 +0200
  • a99a0e5a54
    tests: Start testing libluna apio 2023-04-23 21:52:28 +0200
  • cf8a8c145a
    init: Remove redundant continue statement apio 2023-04-23 21:15:23 +0200
  • de25338d6c
    libluna: Remove redundant return statements in Result<void> apio 2023-04-23 21:15:00 +0200
  • 37547ec640
    libluna: Run lint scripts apio 2023-04-23 10:53:48 +0200
  • 2f2b45758e
    tools: Update some of the lint scripts with a better system to find source files apio 2023-04-23 10:53:34 +0200
  • e378d8ee2f
    Revert "libos: Make File::read_line optionally strip the ending newline" apio 2023-04-22 15:21:04 +0200
  • c075aa77b9
    init: Allow empty lines in service files apio 2023-04-22 15:19:37 +0200
  • dcc6bbf055
    libluna: Add String::trim apio 2023-04-22 15:19:07 +0200
  • 257c2ffd0a
    init: Add a configurable service system instead of always starting /bin/sh apio 2023-04-22 13:56:08 +0200
  • 63a2df112d
    libos: Make File::read_line optionally strip the ending newline apio 2023-04-22 13:55:07 +0200
  • e654ed6415
    libos: Allow passing environment to Process::exec apio 2023-04-22 13:54:47 +0200
  • 5d56638851
    kernel: Ignore all non-bootstrap processors apio 2023-04-22 12:25:43 +0200
  • 60694f651f
    kernel/ELF: Remove unused include apio 2023-04-22 12:20:30 +0200
  • 2acd2ed75d
    kernel/ELF: Avoid zeroing out memory twice apio 2023-04-22 12:19:22 +0200
  • 4f6e020196
    kernel+libc: Add framebuffer ioctls apio 2023-04-21 18:25:53 +0200
  • 841fc25137
    kernel+init: Add a framebuffer special device file apio 2023-04-21 18:18:15 +0200
  • 58dc23e4d9
    apps: Add stat apio 2023-04-21 18:04:17 +0200
  • 15b76f94f4
    chown: Parse the owner and group properly apio 2023-04-20 20:08:18 +0200
  • fb79e12248
    StringView: Add split_once and to_uint apio 2023-04-20 20:08:34 +0200
  • eb58b4acc8
    libos: Add support for --help to ArgumentParser apio 2023-04-19 19:16:45 +0200
  • 0058df9f01
    libluna: Handle * characters correctly in cstyle_format apio 2023-04-19 19:05:09 +0200
  • d56e8baca5
    libos+rm: Add recursive removal of directories apio 2023-04-19 18:20:44 +0200
  • 05144f65d1
    libos: Remove unused include apio 2023-04-19 18:19:22 +0200
  • 2ecb1e7c90
    Vector: Call destructors on reassignment and call element copy constructors apio 2023-04-18 20:17:05 +0200
  • 02f8a50b9d
    kernel: Replace unlink() with unlinkat() apio 2023-04-18 19:36:29 +0200
  • 259ea86c20
    libluna: Fix compilation apio 2023-04-18 18:49:55 +0200
  • 8560918931
    libluna: Add Result<void>::from_syscall apio 2023-04-18 18:49:24 +0200
  • 67e9543675
    os: Add FileSystem::change_directory apio 2023-04-18 18:46:19 +0200
  • b7a0ad8ffb
    sh: Remove stray variable apio 2023-04-18 18:43:50 +0200
  • 00832163d4
    libos: Add Process::exec apio 2023-04-18 18:39:37 +0200
  • 6ce125d286
    libos: Add a Process class apio 2023-04-18 18:16:24 +0200
  • fbb7de7156
    sh: Do not leak memory when using cd apio 2023-04-18 16:49:05 +0200
  • 4baee3a91f
    sh: Close script file on exec apio 2023-04-18 16:42:43 +0200
  • 407e81b107
    cat: Read into buffers instead of lines apio 2023-04-18 16:41:58 +0200
  • fe11b04832
    File: Add methods to read/write using buffers apio 2023-04-18 16:41:17 +0200
  • 51eedf2b16
    Buffer: Add an is_empty() method apio 2023-04-18 16:40:37 +0200
  • e466c51e9f
    kernel: Also zero out mmap-ed pages apio 2023-04-17 22:16:27 +0200
  • 95659639e5
    kernel: Zero out allocated memory for userspace to avoid leaking sensitive data apio 2023-04-17 20:11:07 +0200
  • b2fe1f45ef
    libc: Define NULL in stdio.h apio 2023-04-16 22:00:41 +0200
  • 949321932f
    kernel: Do not forbid filenames starting with a hyphen apio 2023-04-16 11:33:35 +0200
  • 3b4214c8be
    dirname: Parse one-character paths properly apio 2023-04-16 11:25:47 +0200
  • e6954d2e49
    kernel: Disallow problematic characters, control characters and invalid UTF-8 in filenames apio 2023-04-16 11:25:32 +0200
  • 82e7b0e860
    kernel: Introduce *at() syscall framework, add openat() and fstatat() apio 2023-04-15 20:26:15 +0200
  • df95126ccd
    kernel: Remove unneeded debug logs & random cleanups apio 2023-04-14 21:10:38 +0200
  • 8c4ead0c0f
    libc: Add more conversion specifiers to strftime apio 2023-04-14 21:08:50 +0200