Rob Shearman
1e46fc672a
rpcrt4: Fix the protid used in ncalrpc tower functions.
...
The epm tower for the ncalrpc protseq should have a floor with a
protid of EPM_PROTOCOL_PIPE instead of EPM_PROTOCOL_SMB.
2008-08-18 14:35:26 +02:00
Rob Shearman
498216fc11
rpcrt4: Fix crash in rpcrt4_ncalrpc_parse_top_of_tower due to unconditionally dereferencing networkaddr and endpoint variables.
...
These can be NULL when parts of the tower are not required.
2008-08-18 14:35:21 +02:00
Rob Shearman
54e904e780
rpcrt4: Fix crash calculation of tower size in rpcrt4_ncalrpc_get_top_of_tower.
...
The size depends on the length of the endpoint string, not the network
address string.
2008-08-18 14:35:15 +02:00
Rob Shearman
cdb9625dbd
rpcrt4: Fix a typo in the ncalrpc protseq in the epm_endpoints structure.
2008-08-18 14:35:10 +02:00
Rob Shearman
2652ddfeba
rpcrt4: Re-implement part of the conformant varying structure processing routines using array_* functions.
2008-08-18 14:34:41 +02:00
Rob Shearman
b2305adc3c
rpcrt4: Factorise conformant string functions into array_* functions.
...
This allows conformant string array types to be
marshalled/unmarshalled when embedded in a complex type.
2008-08-18 14:34:40 +02:00
Rob Shearman
9e3260847a
rpcrt4: Factorise conformant varying array functions into array_* functions.
...
This allows conformant varying array types to be
marshalled/unmarshalled when embedded in a complex type.
2008-08-18 14:34:40 +02:00
Rob Shearman
518242ef33
rpcrt4: Add tests for a complex struct with conformant array.
2008-08-18 14:34:40 +02:00
Rob Shearman
9116d73c63
rpcrt4: Factorise conformant array NDR functions and use them to fix the wire-representation of complex structures with conformant arrays.
...
Factorise each conformant array function into the part that deals with
reading, writing or sizing the conformance and another part that deals
with reading, writing or sizing the variance and the element data.
This allows complex structures to use the right wire format where the
conformance appears before the structure data starts.
2008-08-18 14:34:40 +02:00
Rob Shearman
1eaea13ebb
rpcrt4: Validate the uuid portion of the string passed to RpcStringBindingParseA/W.
2008-07-31 13:25:55 +02:00
Francois Gouget
eb16f43bdf
Add some API documentation stubs to make winapi_check happy.
2008-07-28 11:34:45 +02:00
Alexandre Julliard
d96e3964b7
make_makefiles: Explicitly list the Wine headers that should be exported.
2008-07-23 11:40:43 +02:00
Rob Shearman
8af1dba5a9
rpcrt4: Fix the memory pointer passed into the conformant array marshaller in NdrComplexStructMarshall.
...
It needs to be the end of the memory used by the constant part of the
structure, which is returned by CompkexStructMarshall.
2008-07-16 17:54:48 +02:00
Rob Shearman
7551b82cca
rpcrt4: Implement RpcCancelThreadEx.
...
Implement RpcCancelThreadEx using existing code moved into a new
function, rpc_ccancel_thread.
Implement RpcCancelThread based on RpcCancelThreadEx with timeout of 0.
2008-07-14 12:29:46 +02:00
Andrew Talbot
ab6efdd1e4
rpcrt4: Remove unneeded address-of operator from array name.
2008-07-14 11:50:08 +02:00
Rob Shearman
09f343b135
rpcrt4: Ignore the return value of functions when unmarshalling a pickled procedure.
2008-07-14 11:48:25 +02:00
Rob Shearman
2b0ad6e6e7
rpcrt4: Implement MesDecodeBufferHandleCreate and MesEncodeFixedBufferHandleCreate.
2008-07-14 11:48:16 +02:00
Rob Shearman
734094ed2c
rpcrt4: Implement NdrMesProcEncodeDecode.
2008-07-14 11:48:08 +02:00
Rob Shearman
0879041cd2
rpcrt4: Implement MesEncodeIncrementalHandleCreate, MesDecodeIncrementalHandleCreate, MesIncrementalHandleReset and MesHandleFree.
2008-07-14 11:47:46 +02:00
Alexandre Julliard
79c64acc7b
tests: Don't depend on the static uuid libraries in the tests.
...
This avoids trouble with the broken MingW libraries when
cross-compiling the tests.
2008-07-08 17:51:45 +02:00
James Hawkins
490443ed4b
rpcrt4: Fix a test that fails in win2k3.
2008-07-08 10:48:06 +02:00
Alexandre Julliard
6f8749b7bc
rpcrt4: Use interlocked functions to increment/decrement ref counts.
2008-07-07 12:11:24 +02:00
Rob Shearman
b75828fc90
rpcrt4: Clear the memory of embedded complex types in ComplexUnmarshall when fMustAlloc is TRUE to avoid passing uninitialised memory to the unmarshaller.
...
Found by Valgrind.
2008-07-07 12:11:24 +02:00
Rob Shearman
666b57d62f
include: Remove unused file wine/rpcss_shared.h.
2008-07-07 11:11:02 +02:00
Rob Shearman
620d783680
rpcrt4: Don't reserve space in the buffer for reference pointers embedded in complex types.
...
Ref pointers don't need a pointer ID and reserving space would render
the code incompatible with other clients. Note that the pointer
marshalling/unmarshalling functions didn't actually read/write pointer
IDs to/from the reserved space in the buffer.
2008-07-04 19:49:00 +02:00
Rob Shearman
5887be5717
rpcrt4: Implement memory sizing for pointers in complex types.
2008-07-04 19:48:47 +02:00
Rob Shearman
81b4436add
rpcrt4: The conformant array offset in complex structs should be signed.
2008-07-04 19:48:38 +02:00
Rob Shearman
44649e855a
rpcrt4: Fix NdrComplexArrayUnmarshall and NdrComplexStructUnmarshall to reuse memory for embedded pointers.
2008-07-04 19:48:30 +02:00
Rob Shearman
517844e054
rpcrt4: Support calculating the size in memory of range types embedded in complex types.
2008-07-04 19:47:58 +02:00
James Hawkins
d0a8fd48a9
rpcrt4: Fix a failing test in win2k.
2008-07-02 12:17:01 +02:00
Rob Shearman
182a2ae315
rpcrt4: Reset the BufferLength to the used part of the buffer in NdrProxySendReceive.
...
This avoids sending uninitialised data on the wire.
2008-07-02 11:38:37 +02:00
James Hawkins
ee24a372be
rpcrt4: Fix a few failing tests in win2k.
2008-07-01 15:00:08 +02:00
Rob Shearman
456326281d
rpcrt4: Add a comment in NdrSendReceive explaining why we change the BufferLength.
2008-07-01 12:26:37 +02:00
Alexandre Julliard
e213ac9aca
widl: Add some support for unencapsulated unions that need a conformance descriptor.
2008-07-01 12:25:44 +02:00
Detlef Riekenberg
74b78100f3
rpcrt4: Add a stub for I_RpcBindingInqTransportType.
2008-06-26 21:07:22 +02:00
Rob Shearman
1a978cb460
rpcrt4: Add tests for endpoint mapper functions.
2008-06-26 12:20:31 +02:00
Rob Shearman
45a3462c32
rpcrt4/rpcss: Remove old named pipe code for communicating with RPCSS process.
2008-06-26 12:20:24 +02:00
Rob Shearman
9e1c7a30c7
rpcrt4: Use DCE/RPC to contact the endpoint-mapper server.
2008-06-26 12:18:35 +02:00
Rob Shearman
0c095ee0d3
rpcrt4: Fix NdrConformantVaryingStructUnmarshall to use buffer memory if applicable and to reuse memory for embedded pointers.
2008-06-23 19:46:29 +02:00
Rob Shearman
33e907bc9d
rpcrt4: Factor out string validation from NDR unmarshalling functions into a separate function, validate_string_data.
2008-06-23 19:46:29 +02:00
Kai Blin
533419cb35
rpcrt4: Ignore the AuthzSvr parameter for RPC_C_AUTHN_WINNT.
2008-06-23 14:04:46 +02:00
Kai Blin
a3bd1f8635
rpcrt4: Fix some A/W use in error messages.
2008-06-23 14:04:44 +02:00
Rob Shearman
f82488823b
rpcrt4: Add test for using a conformant varying structure with pointers.
2008-06-23 14:04:39 +02:00
Rob Shearman
cc199b777e
rpcrt4: Initialise UniquePtrCount in NdrServerInitializeNew.
2008-06-23 12:49:06 +02:00
Rob Shearman
7f1b7c51be
include: Add new bitfields to MIDL_STUB_MESSAGE added in Vista SDKs.
...
Move fBufferValid to a bitfield and update the corresponding tests in rpcrt4.
Add tests for the new fields.
2008-06-23 12:48:59 +02:00
Rob Shearman
4bde42aaa2
rpcrt4: Use abrtitrary pointer identifiers when marshalling pointers instead of using pointer values.
...
This ensures that no information about the server memory layout is
leaked to clients.
2008-06-21 11:12:58 +02:00
Rob Shearman
6cf9e441ad
rpcrt4: Initialise UniquePtrCount in NdrClientInitializeNew.
2008-06-21 11:12:54 +02:00
Rob Shearman
52911fc66c
include: Update the MIDL_STUB_MESSAGE structure.
...
Reduce the size of the IsClient field, as is done in the latest SDKs
to fix NdrClientInitializeNew tests on XP SP3 and Win2003+.
2008-06-19 11:54:49 +02:00
Rob Shearman
6bb26abe81
rpcrt4: Make RpcAssoc_BindConnection use RPCRT4_ReceiveWithAuth instead of RPCRT4_Receive.
...
Move the special handling of the PKT_BIND_ACK packet from
RPCRT4_ReceiveWithAuth to RpcAssoc_BindConnection, where it belongs.
2008-06-19 11:44:28 +02:00
Rob Shearman
6bb03d7dba
rpcrt4: Add new function RPCRT4_ReceiveWithAuth to receive a fragment and return the authentication data received, if any.
2008-06-19 11:44:22 +02:00