KdRpcDispatcher Class Reference

Contains code unmarshalling parameters for KdSendPacket()/KdReceivePacket(). More...

#include <rpcdisp.h>

Collaboration diagram for KdRpcDispatcher:

List of all members.

Public Member Functions

 KdRpcDispatcher (IKdComDispatcher *pDispatcher)
 ~KdRpcDispatcher ()
unsigned OnRequest (const char *pRequest, unsigned RequestSize, char **ppReply)
 This method is called when a data packet is received from KDVMWARE.DLL via GuestRPC mechanism.

Public Attributes

char szTestReply [KDRPC_TEST_BUFFER_SIZE+sizeof(g_szRPCReplySignature)]

Private Types

enum  { REPLY_BUFFER_BASE = 262144 }
enum  { MAX_BUFFER_SIZE = 65536 }
enum  { REPLY_BUFFER_SIZE = REPLY_BUFFER_BASE + MAX_BUFFER_SIZE }

Static Private Member Functions

static void Serialize (char *pBase, unsigned &offset, const void *pBuffer, unsigned Size)

Private Attributes

char * m_pReplyBuffer
IKdComDispatcherm_pDispatcher
bool m_bProtocolVersionMatch


Detailed Description

Contains code unmarshalling parameters for KdSendPacket()/KdReceivePacket().

This class parses the data blocks containing function parameters and calls the corresponding methods from IKdComDispatcher class. The OnRequest() method is called by either GuestRPC mechanism handler, or the RpcProxy class. The method internally processes the VersionReport and TestConnection requests, and calls the corresponding method from IKdComDispatcher for ReceivePacket and SendPacket requests. For more details see the KDRPC protocol version A protocol description.

Definition at line 46 of file rpcdisp.h.


Member Enumeration Documentation

anonymous enum [private]

Enumerator:
REPLY_BUFFER_BASE 

Definition at line 49 of file rpcdisp.h.

anonymous enum [private]

Enumerator:
MAX_BUFFER_SIZE 

Definition at line 50 of file rpcdisp.h.

anonymous enum [private]

Enumerator:
REPLY_BUFFER_SIZE 

Definition at line 51 of file rpcdisp.h.


Constructor & Destructor Documentation

KdRpcDispatcher::KdRpcDispatcher ( IKdComDispatcher pDispatcher  )  [inline]

Definition at line 67 of file rpcdisp.h.

KdRpcDispatcher::~KdRpcDispatcher (  )  [inline]

Definition at line 74 of file rpcdisp.h.


Member Function Documentation

unsigned KdRpcDispatcher::OnRequest ( const char *  pRequest,
unsigned  RequestSize,
char **  ppReply 
) [inline]

This method is called when a data packet is received from KDVMWARE.DLL via GuestRPC mechanism.

Definition at line 81 of file rpcdisp.h.

Here is the call graph for this function:

static void KdRpcDispatcher::Serialize ( char *  pBase,
unsigned &  offset,
const void *  pBuffer,
unsigned  Size 
) [inline, static, private]

Definition at line 58 of file rpcdisp.h.


Member Data Documentation

Definition at line 56 of file rpcdisp.h.

Definition at line 55 of file rpcdisp.h.

Definition at line 52 of file rpcdisp.h.

char KdRpcDispatcher::szTestReply[KDRPC_TEST_BUFFER_SIZE+sizeof(g_szRPCReplySignature)]

Definition at line 65 of file rpcdisp.h.


The documentation for this class was generated from the following file:
  • E:/PROJECTS/cvsed/mixed/VIRTUA~1/rpcdispatch/rpcdisp.h