cf8a8c145a
init: Remove redundant continue statement
continuous-integration/drone/push Build is passing
2023-04-23 21:15:23 +02:00
de25338d6c
libluna: Remove redundant return statements in Result<void>
2023-04-23 21:15:00 +02:00
37547ec640
libluna: Run lint scripts
continuous-integration/drone/push Build is passing
2023-04-23 10:53:48 +02:00
2f2b45758e
tools: Update some of the lint scripts with a better system to find source files
2023-04-23 10:53:34 +02:00
e378d8ee2f
Revert "libos: Make File::read_line optionally strip the ending newline"
...
continuous-integration/drone/push Build is passing
This should be done by the caller, as making libos do it will not return a different value if the line was empty or was EOF.
Fortunately, we now have String::trim.
2023-04-22 15:21:04 +02:00
c075aa77b9
init: Allow empty lines in service files
2023-04-22 15:19:37 +02:00
dcc6bbf055
libluna: Add String::trim
2023-04-22 15:19:07 +02:00
257c2ffd0a
init: Add a configurable service system instead of always starting /bin/sh
continuous-integration/drone/push Build is passing
2023-04-22 13:56:08 +02:00
63a2df112d
libos: Make File::read_line optionally strip the ending newline
2023-04-22 13:55:07 +02:00
e654ed6415
libos: Allow passing environment to Process::exec
2023-04-22 13:54:47 +02:00
5d56638851
kernel: Ignore all non-bootstrap processors
continuous-integration/drone/push Build is passing
2023-04-22 12:25:43 +02:00
60694f651f
kernel/ELF: Remove unused include
continuous-integration/drone/push Build is passing
2023-04-22 12:20:30 +02:00
2acd2ed75d
kernel/ELF: Avoid zeroing out memory twice
continuous-integration/drone/push Build is passing
2023-04-22 12:19:22 +02:00
4f6e020196
kernel+libc: Add framebuffer ioctls
continuous-integration/drone/push Build is passing
2023-04-21 18:25:53 +02:00
841fc25137
kernel+init: Add a framebuffer special device file
continuous-integration/drone/push Build is passing
2023-04-21 18:18:15 +02:00
58dc23e4d9
apps: Add stat
continuous-integration/drone/push Build is passing
2023-04-21 18:04:17 +02:00
15b76f94f4
chown: Parse the owner and group properly
continuous-integration/drone/push Build is passing
2023-04-20 20:08:49 +02:00
fb79e12248
StringView: Add split_once and to_uint
2023-04-20 20:08:49 +02:00
eb58b4acc8
libos: Add support for --help to ArgumentParser
continuous-integration/drone/push Build is passing
2023-04-19 19:16:45 +02:00
0058df9f01
libluna: Handle * characters correctly in cstyle_format
2023-04-19 19:05:09 +02:00
d56e8baca5
libos+rm: Add recursive removal of directories
continuous-integration/drone/push Build is passing
2023-04-19 18:20:44 +02:00
05144f65d1
libos: Remove unused include
continuous-integration/drone/push Build is passing
2023-04-19 18:19:22 +02:00
2ecb1e7c90
Vector: Call destructors on reassignment and call element copy constructors
continuous-integration/drone/push Build is passing
2023-04-18 20:17:05 +02:00
02f8a50b9d
kernel: Replace unlink() with unlinkat()
continuous-integration/drone/push Build is passing
2023-04-18 19:36:29 +02:00
259ea86c20
libluna: Fix compilation
continuous-integration/drone/push Build is passing
2023-04-18 18:49:55 +02:00
8560918931
libluna: Add Result<void>::from_syscall
continuous-integration/drone/push Build is failing
2023-04-18 18:49:24 +02:00
67e9543675
os: Add FileSystem::change_directory
continuous-integration/drone/push Build is passing
2023-04-18 18:46:19 +02:00
b7a0ad8ffb
sh: Remove stray variable
continuous-integration/drone/push Build is passing
2023-04-18 18:43:50 +02:00
00832163d4
libos: Add Process::exec
continuous-integration/drone/push Build is passing
2023-04-18 18:39:37 +02:00
6ce125d286
libos: Add a Process class
continuous-integration/drone/push Build is passing
2023-04-18 18:16:24 +02:00
fbb7de7156
sh: Do not leak memory when using cd
continuous-integration/drone/push Build is passing
2023-04-18 16:49:05 +02:00
4baee3a91f
sh: Close script file on exec
2023-04-18 16:42:43 +02:00
407e81b107
cat: Read into buffers instead of lines
2023-04-18 16:41:58 +02:00
fe11b04832
File: Add methods to read/write using buffers
2023-04-18 16:41:17 +02:00
51eedf2b16
Buffer: Add an is_empty() method
2023-04-18 16:40:37 +02:00
e466c51e9f
kernel: Also zero out mmap-ed pages
continuous-integration/drone/push Build is passing
2023-04-17 22:16:27 +02:00
95659639e5
kernel: Zero out allocated memory for userspace to avoid leaking sensitive data
continuous-integration/drone/push Build is passing
2023-04-17 20:11:07 +02:00
b2fe1f45ef
libc: Define NULL in stdio.h
continuous-integration/drone/push Build is passing
2023-04-16 22:00:41 +02:00
949321932f
kernel: Do not forbid filenames starting with a hyphen
...
continuous-integration/drone/push Build is passing
Some programs on Linux seem to use those, better be careful.
2023-04-16 11:33:35 +02:00
3b4214c8be
dirname: Parse one-character paths properly
continuous-integration/drone/push Build is passing
2023-04-16 11:25:47 +02:00
e6954d2e49
kernel: Disallow problematic characters, control characters and invalid UTF-8 in filenames
2023-04-16 11:25:32 +02:00
82e7b0e860
kernel: Introduce *at() syscall framework, add openat() and fstatat()
continuous-integration/drone/push Build is passing
2023-04-15 20:26:15 +02:00
df95126ccd
kernel: Remove unneeded debug logs & random cleanups
continuous-integration/drone/push Build is passing
2023-04-14 21:10:38 +02:00
8c4ead0c0f
libc: Add more conversion specifiers to strftime
2023-04-14 21:08:50 +02:00
b7df596f8a
libc: Add strftime()
continuous-integration/drone/push Build is passing
2023-04-13 21:09:27 +02:00
1733fc810d
mkdir: Use os::FileSystem and add -p flag
continuous-integration/drone/push Build is passing
2023-04-13 18:33:56 +02:00
fb3430c56a
apps: Use os::FileSystem
2023-04-13 18:33:43 +02:00
5df16a9bff
libos: Add FileSystem
2023-04-13 18:33:04 +02:00
bd60c65e17
kernel: Make chown() search in the process's current directory
2023-04-13 18:20:07 +02:00
60c6e764a4
libos+apps: Add some missing functionality to File and eliminate any trace of C from cat and edit
continuous-integration/drone/push Build is passing
2023-04-13 17:31:21 +02:00