lib: launch: implement passing args and environment variables to new tasks

This commit is contained in:
2026-03-06 20:16:51 +00:00
parent a6a2526502
commit c4fd252f86
6 changed files with 186 additions and 8 deletions

View File

@@ -14,6 +14,7 @@ enum launch_status {
* version, etc).
*/
LAUNCH_ERR_UNSUPPORTED_EXECUTABLE,
LAUNCH_ERR_MISSING_SYMBOL,
/* a particular dependency of the executable could not be resolved. */
LAUNCH_ERR_CANNOT_RESOLVE_DEPENDENCY,
LAUNCH_ERR_MEMORY_MAP_FAILED,
@@ -28,6 +29,8 @@ enum launch_flags {
};
struct launch_ctx;
struct rosetta_bootstrap_handle;
struct rosetta_bootstrap_channel;
typedef enum launch_status (*launch_resolve_library_function)(
struct launch_ctx *,
@@ -52,6 +55,12 @@ struct launch_parameters {
int p_envc;
const char **p_envp;
const struct rosetta_bootstrap_handle *p_handles;
size_t p_handle_count;
const struct rosetta_bootstrap_channel *p_channels;
size_t p_channel_count;
void *p_resolver_arg;
};