Commit Graph

63 Commits

Author SHA1 Message Date
Alexandre Julliard e213ac9aca widl: Add some support for unencapsulated unions that need a conformance descriptor. 2008-07-01 12:25:44 +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 f82488823b rpcrt4: Add test for using a conformant varying structure with pointers. 2008-06-23 14:04:39 +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 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 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
Dan Hipschman 2fa83d94c8 widl: Make structures with FC_ENUM16 fields complex.
Structures containing enum fields without the v1_enum attribute must be
treated as complex because of the range check and memory/wire size
differences.  This includes a test which didn't pass before and now
passes on Wine and Windows.
2008-03-21 11:24:28 +01:00
Paul Vriens 6832c8327d rpcrt4/tests: Make tests run on win9x/NT4 again. 2008-02-28 12:57:02 +01:00
Dan Hipschman 2d7b1f18b1 widl: Allow is_string_type to work for typedef'd types. 2008-02-22 12:04:26 +01:00
Alexandre Julliard 05c7174909 tests: Add a helper routine to wait for a child process and propagate its result correctly. 2008-02-07 12:56:00 +01:00
Rob Shearman 3e8a032e8b rpcrt4: Re-use existing memory for embedded pointers in NdrVaryingArrayUnmarshall. 2007-12-26 14:02:58 +01:00
Rob Shearman 273766ee6f rpcrt4: Re-use existing memory for embedded pointers in NdrConformantVaryingArrayUnmarshall. 2007-12-26 14:02:55 +01:00
Rob Shearman a05923e1d3 rpcrt4: Add tests for varying and conformant varying arrays. 2007-12-26 14:02:53 +01:00
Rob Shearman e24f664b26 rpcrt4: Add tests for low-level context handle functions. 2007-12-26 13:26:52 +01:00
Rob Shearman 366fd6e3af rpcrt4: Fix a memory leak from the get_filename call in the server tests. 2007-12-21 12:41:21 +01:00
Rob Shearman c49a73b853 rpcrt4: Initialise memory passed into RPCs in the server test.
aligns contains padding, but the memory is marshalled in one block so 
call memset to avoid Valgrind warnings. padded and padded2 are 
marshalled as complex types so this is not required here.

Initialise the dummy member of test_list_t to zero for the TL_NULL case. 
Change the type to the smallest available to not waste buffer space.
2007-12-19 19:35:28 +01:00
Rob Shearman d458a599eb widl: Add support for non-basetype return types. 2007-12-11 18:07:05 +01:00
Rob Shearman 2a9fae7565 rpcrt4: Set the destination pointer in PointerUnmarshall before calling the referenced type's unmarshalling routine.
When a pointer that is dereferenced is encountered then this can result 
in a stale pointer (i.e. the one that is marshalled into the buffer for 
the embedded pointer unmarshalling case) being used instead of the one 
that was intended.
2007-12-04 18:18:01 +01:00
Rob Shearman 620fca405d rpcrt4: Test that the string retrieved from get_name was actually unmarshalled correctly. 2007-12-03 13:10:21 +01:00
Rob Shearman c735a14788 rpcrt4: Fix NdrSimpleStructUnmarshall to cope with [in, out] embedded pointers. 2007-11-30 11:56:30 +01:00
Dan Hipschman a0ac63961d widl: Don't rely on type_memsize to return 0 for all conformant arrays. 2007-11-06 13:02:56 +01:00
Dan Hipschman 8d15820f79 widl: Handle pointers to conformant arrays (e.g., "[size_is(, n)] int **p; "). 2007-11-05 13:24:37 +01:00
Dan Hipschman eaffc0a0da rpcrt4/tests: Initialize memory in the get_name test.
This initializes the memory for an [in] parameter.
2007-11-05 13:24:36 +01:00
Rob Shearman 18c16a8027 rpcrt4: Add a test for the pointers in [in,out] pointer structs not changing when the pointers aren't NULL. 2007-11-02 12:37:35 +01:00
Dan Hipschman ff8930f2bf widl: Fix problems with variable-size user types. 2007-10-22 13:47:56 +02:00
Dan Hipschman 1d0f9378bc widl: Detect conformant arrays of user types correctly. 2007-10-18 12:09:23 +02:00
Dan Hipschman e219087c65 rpcrt4/tests: Free memory from one of the tests. 2007-10-15 16:55:31 +02:00
Dan Hipschman acfde97b9e rpcrt4, widl: Make pointer layouts compatible with windows; fix conformant array tests. 2007-10-11 16:24:28 +02:00
Dan Hipschman d00ff2ed58 widl: Make structs containing user types bogus; fix square_test_us test failure. 2007-10-09 11:39:26 +02:00
Alexandre Julliard b7df430831 rpcrt4/tests: Remove static keywords that hide test failures. 2007-09-27 20:13:21 +02:00
Dan Hipschman 723c8bacfa widl: Fix string codes in pointer descriptions. 2007-09-27 10:09:38 +02:00
Dan Hipschman 347f2a2da2 widl: Fix top-level conformant arrays with pointer attributes. 2007-09-27 10:09:32 +02:00
Dan Hipschman 767a1f26f6 widl: Handle top-level conformance for complex arrays. 2007-09-20 14:27:29 +02:00
Dan Hipschman dbfabf68a2 widl: Respect pointer attributes better. 2007-09-20 14:27:25 +02:00
Dan Hipschman 132f06cd48 widl: Implement complex arrays. 2007-09-19 11:39:09 +02:00
Dan Hipschman 8df79f0c99 widl: Implement pointer descriptions for complex structures. 2007-09-19 11:38:28 +02:00
Dan Hipschman 5e84eb9a47 widl: Add padding to the end of complex structures. 2007-09-14 14:43:13 +02:00
Dan Hipschman ba54c455fb widl: Allow size_is on strings. 2007-09-10 15:29:46 +02:00
Dan Hipschman 62fb623e14 widl: Implement NDR for struct field alignment. 2007-09-10 15:29:46 +02:00
Dan Hipschman 3d036da6d3 widl: Fix top-level and callback conformances. 2007-09-10 15:29:46 +02:00
Dan Hipschman 46222aee6e widl: Allow enums as union switch types. 2007-06-26 11:59:53 +02:00
Dan Hipschman 076a6206ff rpcrt4/tests: Wrap a try/except block around tests. 2007-06-26 11:59:32 +02:00
Dan Hipschman 512c36cae6 widl: Get simple enums working. 2007-06-26 11:59:02 +02:00
Rob Shearman 73c31ed309 rpcrt4: Don't use add on the sizes of array elements to an open-ended structure; use FIELD_OFFSET with the array index instead. 2007-06-25 23:21:52 +02:00
Dan Hipschman 4e8c8d03e5 widl: Add tests for arrays of pointers. 2007-06-21 13:10:46 +02:00
Dan Hipschman 6fd05b1dc7 rpcrt4: Fix bug calculating union switch type. 2007-06-19 11:45:51 +02:00
Dan Hipschman 08c846a9da rpcrt4: Add encapsulated union tests. 2007-06-19 11:45:11 +02:00
Dan Hipschman 3325020636 widl: Handle wire_marshal pointer attributes. 2007-06-14 11:36:05 +02:00
Dan Hipschman 2bc8808be1 widl: Test structure argument marshalling. 2007-06-14 11:35:55 +02:00
Dan Hipschman c0982b42c5 widl: Handle wire_marshal types. 2007-06-14 11:35:44 +02:00