19 #ifndef _VMWARE_TOOLS_GUESTRPC_H_
20 #define _VMWARE_TOOLS_GUESTRPC_H_
45 #define RPCIN_SETRETVALS RpcChannel_SetRetVals
46 #define RPCIN_SETRETVALSF RpcChannel_SetRetValsF
50 #define RPCCHANNEL_SEND_PERMISSION_DENIED "Permission denied"
52 typedef struct _RpcChannel RpcChannel;
83 typedef enum RpcChannelType {
84 RPCCHANNEL_TYPE_INACTIVE,
85 RPCCHANNEL_TYPE_BKDOOR,
86 RPCCHANNEL_TYPE_PRIV_VSOCK,
87 RPCCHANNEL_TYPE_UNPRIV_VSOCK
142 RpcChannel_Start(RpcChannel *chan);
145 RpcChannel_Stop(RpcChannel *chan);
148 RpcChannel_GetType(RpcChannel *chan);
151 RpcChannel_Send(RpcChannel *chan,
158 RpcChannel_Free(
void *ptr);
160 #if !defined(USE_RPCI_ONLY)
162 RpcChannel_BuildXdrCommand(
const char *cmd,
171 RpcChannel_Setup(RpcChannel *chan,
172 const gchar *appName,
173 GMainContext *mainCtx,
181 RpcChannel_RegisterCallback(RpcChannel *chan,
185 RpcChannel_UnregisterCallback(RpcChannel *chan,
190 RpcChannel_Create(
void);
193 RpcChannel_Destroy(RpcChannel *chan);
206 RpcChannel_SendOneRaw(
const char *data,
211 #if defined(__linux__) || defined(_WIN32)
213 RpcChannel_SendOneRawPriv(
const char *data,
220 RpcChannel_SendOne(
char **reply,
225 #if defined(__linux__) || defined(_WIN32)
227 RpcChannel_SendOnePriv(
char **reply,
234 RpcChannel_New(
void);
236 #if defined(__linux__) || defined(_WIN32)
238 VSockChannel_New(
int flags);
242 RpcChannel_SetBackdoorOnly(
void);
245 BackdoorChannel_New(
void);
Definition: guestrpc.h:98
size_t xdrInSize
Definition: guestrpc.h:118
gpointer clientData
Definition: guestrpc.h:104
gpointer xdrIn
Definition: guestrpc.h:106
const char * name
Definition: guestrpc.h:100
gpointer xdrOut
Definition: guestrpc.h:113
RpcIn_Callback callback
Definition: guestrpc.h:102
Definition: guestrpc.h:55
const char * name
Definition: guestrpc.h:57
gboolean freeResult
Definition: guestrpc.h:76
char * result
Definition: guestrpc.h:69
size_t argsSize
Definition: guestrpc.h:64
const char * args
Definition: guestrpc.h:62
void * appCtx
Definition: guestrpc.h:78
void * clientData
Definition: guestrpc.h:80
size_t resultLen
Definition: guestrpc.h:71