hi,everyone
I`m trying to dissect the MAPI(also called ExchangeRPC) PDUs and have
encountered this problem,what is the order in which a RPC client or server
transfers a remote procedure actual paramters into a network octets stream?
As I known, a RPC request/response PDU consists of a common header,a PDU
body and the other parts.The PDU body contains the input parameters required
by a RPC and maybe include some output parameters required by this Remote
Procedure Call, but in which order , the rpc runtime transfers these parameters
into a PDU body.
For example, a remote procedure of EcDoRpcExt2 was declared in Exchange
protocol specification as following:
long __stdcall EcDoRpcExt2(
[in,out,ref] CXH *pcxh,
[in,out] unsigned long *pulFlags,
[in,size_is(cbIn)],
[in] unsigned long cbIn,
[out,length_is(*pcbOut),size_is(*pcbOut)] unsigned char rgbOut[],
[in,out] BIG_RANGE_ULONG *pcbOut,
[in ,size_is(cbAuxIn)] unsigned char rgbAuxIn[],
[in] unsigned long cbAuxIn,
[out,length_is(*pcbAuxOut),size_is (*pcbAuxOut)] unsigned char
rgbAuxOut[],
[in,out] SMALL_RANGE_ULONG *pcbAuxOut,
[out] unsigned long *pulTransTime
)
What`s the order, in which these parameters(now,i don`t ensure whether out
parameters are serialized into a request PDU body) are transfered into a
request PDU body, isn`t the formal parameter declaration order ,the opposite
order or the others?
I have read the Transfer syntax NDR section in DCE-RPC[C706] specification,
but I can't get the answer.
Who can help me? any reply is appreciated!
Thanks very very much in advance!
Na [EMAIL PROTECTED]
2008-09-27
_______________________________________________
Wireshark-dev mailing list
[email protected]
https://wireshark.org/mailman/listinfo/wireshark-dev