lib: rosetta: add library to contain os-wide definitions
This commit is contained in:
45
lib/librosetta/include/rosetta/bootstrap.h
Normal file
45
lib/librosetta/include/rosetta/bootstrap.h
Normal file
@@ -0,0 +1,45 @@
|
||||
#ifndef ROSETTA_BOOTSTRAP_H_
|
||||
#define ROSETTA_BOOTSTRAP_H_
|
||||
|
||||
#include <mango/types.h>
|
||||
|
||||
enum rosetta_bootstrap_handle_type {
|
||||
RSBS_HANDLE_NONE = 0,
|
||||
RSBS_HANDLE_TASK,
|
||||
RSBS_HANDLE_ADDRESS_SPACE,
|
||||
};
|
||||
|
||||
enum rosetta_bootstrap_channel_type {
|
||||
RSBS_CHANNEL_NONE,
|
||||
RSBS_CHANNEL_SYSTEM,
|
||||
};
|
||||
|
||||
struct rosetta_bootstrap_handle {
|
||||
enum rosetta_bootstrap_handle_type h_type;
|
||||
kern_handle_t h_value;
|
||||
};
|
||||
|
||||
struct rosetta_bootstrap_channel {
|
||||
enum rosetta_bootstrap_channel_type c_type;
|
||||
tid_t c_tid;
|
||||
unsigned int c_cid;
|
||||
};
|
||||
|
||||
struct rosetta_bootstrap {
|
||||
int bs_argc;
|
||||
const char **bs_argv;
|
||||
|
||||
int bs_envc;
|
||||
const char **bs_envp;
|
||||
|
||||
const struct rosetta_bootstrap_handle *bs_handles;
|
||||
size_t bs_handles_count;
|
||||
|
||||
const struct rosetta_bootstrap_channel *bs_channels;
|
||||
size_t bs_channels_count;
|
||||
};
|
||||
|
||||
extern const struct rosetta_bootstrap_channel *rosetta_bootstrap_get_channel(
|
||||
void);
|
||||
|
||||
#endif
|
||||
Reference in New Issue
Block a user