spclient
static struct spclient clispc = {
static int handshake_req(struct spclient *, int, void *, int, bool);
send_with_recon(struct spclient *spc, struct iovec *iov, size_t iovlen)
cliwaitresp(struct spclient *spc, struct respwait *rw, sigset_t *mask,
syscall_req(struct spclient *spc, sigset_t *omask, int sysnum,
handshake_req(struct spclient *spc, int type, void *data,
prefork_req(struct spclient *spc, sigset_t *omask, void **resp)
resp_sendlock(struct spclient *spc)
send_copyin_resp(struct spclient *spc, uint64_t reqno, void *data, size_t dlen,
send_anonmmap_resp(struct spclient *spc, uint64_t reqno, void *addr)
handlereq(struct spclient *spc)
struct spclient fork_spc;
struct spclient *spc;
struct spclient *spc = arg;
waitresp(struct spclient *spc, struct respwait *rw)
lwproc_rfork(struct spclient *spc, int flags, const char *comm)
nextreq(struct spclient *spc)
send_error_resp(struct spclient *spc, uint64_t reqno, enum rumpsp_err error)
send_handshake_resp(struct spclient *spc, uint64_t reqno, int error)
send_syscall_resp(struct spclient *spc, uint64_t reqno, int error,
send_prefork_resp(struct spclient *spc, uint64_t reqno, uint32_t *auth)
copyin_req(struct spclient *spc, const void *remaddr, size_t *dlen,
send_copyout_req(struct spclient *spc, const void *remaddr,
anonmmap_req(struct spclient *spc, size_t howmuch, void **resp)
send_raise_req(struct spclient *spc, int signo)
spcref(struct spclient *spc)
spcrelease(struct spclient *spc)
struct spclient *spc = &spclist[idx];
struct spclient *spc;
serv_handlesyscall(struct spclient *spc, struct rsp_hdr *rhdr, uint8_t *data)
serv_handleexec(struct spclient *spc, struct rsp_hdr *rhdr, const char *comm)
struct spclient *sba_spc;
struct spclient *spc = arg;
static struct spclient spclist[MAXCLI];
struct spclient *spc = arg;
struct spclient *spc = arg;
struct spclient *spc = arg;
schedulework(struct spclient *spc, enum sbatype sba_type)
handlereq(struct spclient *spc)
#define SPC_ZEROFF offsetof(struct spclient, spc_pfd)
static int readframe(struct spclient *);
static void handlereq(struct spclient *);
spcresetbuf(struct spclient *spc)
spcfreebuf(struct spclient *spc)
sendlockl(struct spclient *spc)
sendlock(struct spclient *spc)
sendunlockl(struct spclient *spc)
sendunlock(struct spclient *spc)
dosend(struct spclient *spc, struct iovec *iov, size_t iovlen)
doputwait(struct spclient *spc, struct respwait *rw, struct rsp_hdr *rhdr)
putwait_locked(struct spclient *spc, struct respwait *rw, struct rsp_hdr *rhdr)
putwait(struct spclient *spc, struct respwait *rw, struct rsp_hdr *rhdr)
dounputwait(struct spclient *spc, struct respwait *rw)
unputwait_locked(struct spclient *spc, struct respwait *rw)
unputwait(struct spclient *spc, struct respwait *rw)
kickwaiter(struct spclient *spc)
kickall(struct spclient *spc)
readframe(struct spclient *spc)