R Aadarsh
ad151e0de8
* Correctly determine argv[0]
...
- If the function called is `posix_spawnp`, and the passed program name **does not** contain a slash, the path is used unmodified, and the path to the directory containing the program on $PATH is prepended to the program's path and assigned to `argv[0]. If the program name **does** contain a slash, the path is absolutised relative to CWD, and assigned to argv[0]
- If the function called is `posix_spawn`, the behaviour is as described above in the case where path contains a slash
* Add initial tests
2026-06-15 17:08:11 +05:30
R Aadarsh
f59e292744
Change spawn to use CString. String not-being null-terminated prevented files on PATH from being opened.
2026-06-15 17:08:11 +05:30
R Aadarsh
4ea8f329b6
Remove unused constants
2026-06-15 17:08:11 +05:30
R Aadarsh
72ee48df3f
Change file_actions implementation to mirror other pthread
2026-06-15 17:08:11 +05:30
R Aadarsh
632c8302a4
Change assertions and panics to display ERRNO
2026-06-15 17:08:11 +05:30
R Aadarsh
a941458ba0
Remove the use of platform::redox::path
2026-06-15 17:08:11 +05:30
R Aadarsh
fefea0f0a9
Make code safer by disallowing NULL argv, empty argv and NULL values for pointer arguments to functions
2026-06-15 17:08:11 +05:30
R Aadarsh
8c65ed481a
Make path to be owned
2026-06-15 17:08:11 +05:30
R Aadarsh
91933b4165
* Change Operation to Action
...
* Change the linked list to a `Vec<Action>`
* Make functions unsafe
2026-06-15 17:08:11 +05:30
R Aadarsh
2df7484e6c
* Make posix_spawnp consider the program argument as a path if it contains a slash
...
* Remove existence and file type check
* Make envp optional
* Ensure that the CWD of the calling process is same before and after spawning
2026-06-15 17:08:11 +05:30
R Aadarsh
0810991d7d
Do the requested sigmask changes and u/g id changes
2026-06-15 17:08:11 +05:30
R Aadarsh
0e5210cb4d
Make close operation work
2026-06-15 17:08:11 +05:30
R Aadarsh
e3d2257f64
* Make posix_spawn_file_actions_t an iterator
...
* Fix bug that caused the spawned process to not start
* Make the spawned process inherit the parent's file descriptos
2026-06-15 17:08:11 +05:30
R Aadarsh
ad83227225
Change the posix_spawn_file_actions_t struct to use a linked list instead of an array
2026-06-15 17:08:11 +05:30
R Aadarsh
88185cbd8d
Make posix_spawnp work
2026-06-15 17:08:11 +05:30
R Aadarsh
119f078216
* Fix bug that caused pid of the child process to be returned instead of 0 or errorno
...
* Add `same_process` field to not change the address space when `fexec_impl` is called on a different process
2026-06-15 17:08:11 +05:30
R Aadarsh
1bc472e7e1
Add posix_spawn and posix_spawnp for RedoxOS
2026-06-15 17:08:11 +05:30
R Aadarsh
df78820f01
Add posix_spawn_file_actions_t and posix_spawnattr_t and tests
2026-06-15 17:08:11 +05:30