Commit Graph

936 Commits

Author SHA1 Message Date
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
Rob Shearman dec4acd8fe rpcrt4: Rename RPCRT4_SendAuth to RPCRT4_SendWithAuth. 2008-06-19 11:44:17 +02:00
Rob Shearman 9060d2aaab Update generated packing tests using current headers. 2008-06-18 15:21:48 +02:00
Rob Shearman 3f92030e2d rpcrt4: Zero the memory of the s1 structure in test_simple_struct to avoid a Valgrind warning. 2008-06-18 13:50:08 +02:00
Rob Shearman fd8cb3f9c2 rpcrt4: Reduce the timeout of waiting on the stop event in the server test to one second.
The stop event should already be signaled by the time we get to that
point since we wait until the child processes terminate in the server
process and the stop event is signaled in the context of one of the
child processes.

Don't call RpcMgmtWaitServerListening if the call to
WaitForSingleObject failed since it is likely that s_stop() hasn't
been called and therefore the call to RpcMgmtWaitServerListening won't
ever return.
2008-06-18 13:50:01 +02:00
Rob Shearman 9ce356c966 rpcrt4: Save the previous BufferLength in test_ndr_buffer and use it when testing the expected buffer length after the NdrFreeBuffer call.
This fixes a test failure on Win2003 upwards when the allocated length
appears to be rounded up to a multiple of 4.
2008-06-18 13:49:56 +02:00
Rob Shearman c9ef063e12 rpcrt4: Fix ndr_marshall tests to cope with using pointer ids instead of using pointer values.
This fixes a number of test failures on XP SP3 and Win2003 upwards.
2008-06-18 13:49:48 +02:00
Rob Shearman 9196337e09 rpcrt4: Clear a hole in the ps1 structure in test_simple_struct. 2008-06-13 10:17:03 +02:00
Rob Shearman c82ffcec60 rpcrt4: Initialise the array to be marshalled in test_conformant_array. 2008-06-13 10:16:51 +02:00
Paul Vriens e7ef88beda rpcrt4/tests: Fix test failures for win9x, NT4, W2K and XP-SP1. 2008-06-12 12:03:30 +02:00
Rob Shearman a1a5d8d02a rpcrt4: Use RpcServerRegisterIfEx with RPC_IF_ALLOW_CALLBACKS_WITH_NO_AUTH in the server test.
This allows the test to run correctly on XP SP2 upwards instead of
failing with ERROR_ACCESS_DENIED.
2008-06-10 11:33:21 +02:00
Rob Shearman d6503215ef include: Add some missing defines and function declarations to rpcdce.h. 2008-06-10 11:33:13 +02:00
Alexandre Julliard 853db9a79d rpcrt4: Properly handle the case of a client having disconnected in rpcrt4_conn_listen_pipe. 2008-06-09 12:56:42 +02:00
James Hawkins 3978df4e52 rpcrt4: Trace the results of two statuses that return different results across platforms. 2008-05-26 18:00:08 +02:00
Maarten Lankhorst fd7b277d8a rpcrt4: Fix ndr_marshall test failures.
Created with help from Robert Shearman.
2008-05-07 20:22:56 +02:00
Rob Shearman 02c66c2312 rpcrt4: Add better traces for the server test.
Handle failure to use one or more protocol sequences more gracefully, as 
ncacn_np servers aren't support on Win9x and ncacn_ip_tcp fails on some 
machines.
2008-05-07 17:48:12 +02:00
Francois Gouget 42a61d7ed7 Assorted spelling fixes. 2008-05-06 16:10:20 +02:00
Alexandre Julliard dad21bbcbf makefiles: List the static libraries as normal imports instead of extra libs. 2008-04-30 14:23:55 +02:00
Alexandre Julliard ef07d83405 Include wine/port.h everywhere we use exceptions. 2008-04-29 20:18:49 +02:00
Rob Shearman 8e08b1dd7f rpcrt4: Use safe_copy_from_buffer instead of direct memory copy in NdrBaseTypeUnmarshall.
This makes the code check that the buffer is big enough to read from 
before copying the data from it. The safe_buffer_increment call is still 
needed for the case where we point the memory to the buffer, so move the 
call there.
2008-04-28 13:28:16 +02:00