launchd_unix_ipc.h [plain text]
#ifndef __LAUNCHD_UNIX_IPC__
#define __LAUNCHD_UNIX_IPC__
#include <sys/queue.h>
#include "launchd_runtime.h"
#include "launchd_core_logic.h"
#include "liblaunch_private.h"
struct conncb {
kq_callback kqconn_callback;
LIST_ENTRY(conncb) sle;
launch_t conn;
job_t j;
};
extern char *sockpath;
void ipc_open(int fd, job_t j);
void ipc_close_all_with_job(job_t j);
void ipc_close(struct conncb *c);
void ipc_callback(void *, struct kevent *);
void ipc_readmsg(launch_data_t msg, void *context);
void ipc_revoke_fds(launch_data_t o);
void ipc_close_fds(launch_data_t o);
void ipc_clean_up(void);
void ipc_server_init(void);
#endif