Josh Megnauth
513f1951fe
Handle prepended whitespace for hashbang
2024-12-30 17:14:24 +00:00
Josh Megnauth
d6ac5f8947
Avoid over allocations & reallocations
...
As we know, vectors amortize the cost of adding new elements by reserving
space for multiple elements when full. This is useful but may lead to
allocating more memory than necessary.
`relibc` generally avoids over allocations by reserving the exact amount
of space when possible. I fixed a few areas that still over allocated or
reallocated unnecessarily by leveraging iterators that are more likely
to know sizes.
2024-11-14 22:53:12 -05:00
4lDO2
ec216e56e2
Preserve umask across execv.
2024-09-25 20:28:50 +02:00
Kamil Koczurek
408a7b2ab6
Add capability to set the default scheme
2024-09-23 14:36:45 +00:00
Peter Limkilde Svendsen
3193656f22
Put random() state behind mutex
2024-08-15 23:26:16 +00:00
bjorn3
49c708f537
Remove all uses of the legacy scheme syntax"
2024-08-04 13:49:10 +02:00
4lDO2
2d66993b3f
Adapt to now-inverted signal mask (allowset).
2024-07-09 15:00:55 +02:00
4lDO2
53ed7aae59
Move rlct_clone, sigprocmask, sigaction, to rt.
2024-07-09 15:00:52 +02:00
4lDO2
a800693266
Refactor: move redox-exec into redox-rt::proc.
2024-07-09 15:00:52 +02:00
Jacob Lorentzon
e0b640d530
Implement new low-level signal trampoline
2024-03-17 16:58:42 +00:00
Arthur Paulino
d4eddbf42e
Refactor: inline core_io
...
* Extract the minimal set of definitions from `core_io` to `relibc` itself
* Remove dependency on `core_io`
2023-12-24 17:06:27 -03:00
4lDO2
75d1c67ca2
Switch to a lightweight CStr wrapper
2023-11-04 18:29:38 +00:00
4lDO2
ae46e37ca7
Run rustfmt
2023-10-26 15:51:04 +02:00
4lDO2
966c59ca0c
Make escalated communication pathless using sendfd.
2023-10-19 17:17:18 +02:00
Noa
df6f4678e8
Fix warnings
2023-05-30 13:46:17 -05:00
Jeremy Soller
16abc91341
cargo fmt and cargo fix
2022-11-11 13:27:18 -07:00
4lDO2
c26ce37620
Also fail if cwd could not be written to escalated.
2022-08-13 19:16:48 +02:00
4lDO2
54b3f873f8
Move cwd from kernel to relibc.
2022-08-13 19:16:45 +02:00
4lDO2
985b2a59a9
Use better interfaces in exec/clone
2022-07-26 21:35:24 +02:00
4lDO2
049a5156d7
Implement PT_INTERP, and thus dynamic linking.
...
With this change, gcc can now successfully compile a tiny program that
printfs an integer returned from a function, from a dynamically linked
library that it compiled as well.
Rustc however, is orders of magnitude more complex, and the next step is
to fix constructors which require access to `environ`, in ld.so
2022-07-26 21:34:48 +02:00
4lDO2
1476cdeb8f
Split fexec_impl into crate, used by escalated.
2022-07-26 21:34:46 +02:00
4lDO2
df8e2deddc
Fix file descriptor leak in fork().
2022-07-26 21:34:12 +02:00
4lDO2
777a82b50f
Refactor out clone, fix some fd leaks.
2022-07-26 21:34:12 +02:00
4lDO2
bb45466a4e
Implement clone in userspace.
2022-07-26 21:34:11 +02:00
4lDO2
a7c817d81a
WIP: Support setuid/setgid
2022-07-26 21:33:01 +02:00
4lDO2
2186cd1fbd
Implement fexec in userspace.
2022-07-26 21:32:56 +02:00