extern "C" {
// find_container_by_pid
-char *find_container_by_pid(pid_t /*pid*/) {
+API char *find_container_by_pid(pid_t /*pid*/) {
return NULL;
}
// get_domain_pid
-pid_t get_domain_pid(const char * /*name*/, const char * /*target*/) {
+API pid_t get_domain_pid(const char * /*name*/, const char * /*target*/) {
return -1;
}
return 0;
}
// sock_connect
-int sock_connect(const char * /*path*/) {
+API int sock_connect(const char * /*path*/) {
return 0;
}
// sock_create_socket
-int sock_create_socket(const char * /*path*/, int /*type*/, int /*flags*/) {
+API int sock_create_socket(const char * /*path*/, int /*type*/, int /*flags*/) {
return 0;
}
// sock_monitor_address
-int sock_monitor_address(char * /*buffer*/, int /*len*/, const char * /*lxcpath*/) {
+API int sock_monitor_address(char * /*buffer*/, int /*len*/, const char * /*lxcpath*/) {
return 0;
}
// sock_recv_fd (intern)
-int sock_recv_fd(int /*fd*/, int * /*recvfd*/, void * /*data*/, size_t /*size*/) {
+API int sock_recv_fd(int /*fd*/, int * /*recvfd*/, void * /*data*/, size_t /*size*/) {
return 0;
}
// sock_send_fd
-int sock_send_fd(int /*fd*/, int /*sendfd*/, void * /*data*/, size_t /*size*/) {
+API int sock_send_fd(int /*fd*/, int /*sendfd*/, void * /*data*/, size_t /*size*/) {
return 0;
}
// vasum_log
-void vasum_log(int /*type*/, const char * /*tag*/, const char * /*fmt*/ , ...) {
+API void vasum_log(int /*type*/, const char * /*tag*/, const char * /*fmt*/ , ...) {
}
#define MAX_ERROR_MSG 0x1000
"Device node"
};
-const char *fso_type_to_string(vsm_fso_type_t fso)
+API const char *fso_type_to_string(vsm_fso_type_t fso)
{
if (fso < 0 || fso > VSM_FSO_MAX_TYPE) {
return NULL;
return fso_type_strtab[fso];
}
-int wait_for_pid_status(pid_t pid)
+API int wait_for_pid_status(pid_t pid)
{
int status, ret;
return status;
}
-vsm_fso_type_t fso_string_to_type(char *str)
+API vsm_fso_type_t fso_string_to_type(char *str)
{
int len;
int i;
return static_cast<vsm_fso_type_t>(-1);
}
-int mkdir_p(const char *dir, mode_t mode)
+API int mkdir_p(const char *dir, mode_t mode)
{
const char *tmp = dir;
const char *orig = dir;
return 0;
}
-int lock_fd(int fd, int wait)
+API int lock_fd(int fd, int wait)
{
int ret;
struct flock f;
}
}
-int unlock_fd(int fd)
+API int unlock_fd(int fd)
{
struct flock f;
f.l_type = F_UNLCK;
return fcntl(fd, F_SETLKW, &f);
}
-int copy_smacklabel(const char * /*source*/, const char * /*dest*/)
+API int copy_smacklabel(const char * /*source*/, const char * /*dest*/)
{
return 0;
}
-int remove_file(char *path)
+API int remove_file(char *path)
{
struct stat path_stat;
DIR *dp;
return status;
}
-int copy_file(const char *source, const char *dest, int /*flags*/)
+API int copy_file(const char *source, const char *dest, int /*flags*/)
{
int ret;
FILE *sfp, *dfp;
return 0;
}
-int regex_compile(regex_t * r, const char *regex_text)
+API int regex_compile(regex_t * r, const char *regex_text)
{
int status = regcomp(r, regex_text, REG_EXTENDED | REG_NEWLINE);
return 0;
}
-int regex_match(regex_t * r, const char *to_match)
+API int regex_match(regex_t * r, const char *to_match)
{
const char *p = to_match;
const int n_matches = 10;
return 0;
}
-int get_peer_pid(int fd)
+API int get_peer_pid(int fd)
{
struct ucred cred;
socklen_t cr_len = sizeof(cred);
return cred.pid;
}
-pid_t gettid(void)
+API pid_t gettid(void)
{
return syscall(__NR_gettid);
}
-int set_smacklabel_fd(int fd, const char *xattr_name, const char *label)
+API int set_smacklabel_fd(int fd, const char *xattr_name, const char *label)
{
size_t len;
int ret;
return ret;
}
-int set_smacklabel(const char *path, const char *xattr_name, const char *label)
+API int set_smacklabel(const char *path, const char *xattr_name, const char *label)
{
size_t len;
int ret;
}
return ret;
}
-char *get_self_smacklabel(void)
+API char *get_self_smacklabel(void)
{
int ret;
int fd;
return strdup(buffer);
}
-int get_self_cpuset(char *name, int buf_sz)
+API int get_self_cpuset(char *name, int buf_sz)
{
int fd;
int lxc_len, ret;
}
-char * get_pid_cpuset(int pid)
+API char * get_pid_cpuset(int pid)
{
int fd;
int ret;
return strdup(current_name);
}
-char * read_namespace_link(const char *ns, int pid)
+API char * read_namespace_link(const char *ns, int pid)
{
char ns_path[PATH_MAX];
char buf[NAME_MAX];
// libs/device.c
#define DEV_ITERATE_CONTINUE 0
-int dev_enumerate_nodes(const char *cname, dev_enumerator enumerator,
+API int dev_enumerate_nodes(const char *cname, dev_enumerator enumerator,
void *data)
{
int ret;
return ret;
}
-int dev_terminal_enumerator(int type, int major, int minor, void *data)
+API int dev_terminal_enumerator(int type, int major, int minor, void *data)
{
int *dev = (int*)data;
}
// libs/namespace.c
-pid_t get_init_pid(const char *name)
+API pid_t get_init_pid(const char *name)
{
char filename[PATH_MAX];
FILE *fp;
}
-pid_t get_zone_pid(const char *name, const char *target)
+API pid_t get_zone_pid(const char *name, const char *target)
{
char path[PATH_MAX];
char cmd[PATH_MAX];
return ret;
}
-int open_ns(pid_t pid, const char *name)
+API int open_ns(pid_t pid, const char *name)
{
int fd, ret;
char path[PATH_MAX];
return fd;
}
-int get_console_fd(const char *path)
+API int get_console_fd(const char *path)
{
int fd;
return -1;
}
-int vt_switch_terminal(int id)
+API int vt_switch_terminal(int id)
{
int fd, ret = -1;
return ret;
}
-int vt_find_unused_terminal(void)
+API int vt_find_unused_terminal(void)
{
int fd, nr = -1;
return nr;
}
-int vt_query_active_terminal(void)
+API int vt_query_active_terminal(void)
{
int fd, ret = -1;
struct vt_stat vtstat;
struct unit_keyword_callback *kw;
};
-int parse_stream(const char *name, struct unit_parser *parser);
+API int parse_stream(const char *name, struct unit_parser *parser);
// libs/parser.c
#define PARSER_MAXARGS 32
return ret;
}
-int parse_stream_core(struct parser_context *ctx, char *s)
+API int parse_stream_core(struct parser_context *ctx, char *s)
{
struct unit_keyword_callback *kw;
struct parser_state state;
return NULL;
}
-int parse_stream(const char *name, struct unit_parser *parser)
+API int parse_stream(const char *name, struct unit_parser *parser)
{
char *stream;
struct parser_context *ctx;