Alexandre Julliard
cdf457774d
rpcrt4: Don't try to bind to a null handle.
2011-06-10 11:42:19 +02:00
Alexandre Julliard
c8d787dba8
rpcrt4: Add support for the argument size of varying arrays.
2011-06-10 11:41:58 +02:00
Alexandre Julliard
87cf6ec75d
rpcrt4: Fix parameter stack size computation in the old-style stubless marshaller.
2011-06-10 11:41:38 +02:00
Alexandre Julliard
5d7e4da81a
rpcrt4: Fix handling of arguments passed by value in the old-style stubless marshaller.
2011-06-10 11:35:53 +02:00
Alexandre Julliard
0941644db7
rpcrt4: Don't marshall out-only parameters in the old-style stubless marshaller.
2011-06-10 11:35:24 +02:00
Alexandre Julliard
3c5688a80d
rpcrt4/tests: Add a few more marshalling tests.
2011-06-09 13:19:08 +02:00
Alexandre Julliard
69bc4da51a
rpcrt4: Add entry points for the old-style stubless Ndr calls.
2011-06-02 17:26:59 +02:00
Alexandre Julliard
f061917296
include: Make CLIENT_CALL_RETURN definition platform-specific to handle the return type incompatibility in NdrClientCall.
2011-06-02 16:22:43 +02:00
Alexandre Julliard
968c8688c4
widl: Array dimensions have to be constants.
2011-05-28 13:39:18 +02:00
Huw Davies
e0a60312d1
rpcrt4: Handle non-conformant bogus structures.
2011-04-27 11:55:01 +02:00
Marcus Meissner
58040f9508
rpcrt4: Mark internal symbols with hidden visibility.
2011-04-26 15:31:27 +02:00
Michael Stefaniuc
64d18bc1f0
rpcrt4/tests: COM cleanup in cstub.c.
2011-03-15 17:14:07 +01:00
Austin English
01ca32ac91
rpcrt4/tests: Remove win9x hacks.
2011-02-28 13:13:58 +01:00
Austin English
5b25b11b05
rpcrt4/tests: Make sure return values are used (LLVM/Clang).
2011-02-09 09:26:05 -06:00
Joris Huizer
3312d63119
rpcrt4: Reduce scope of variable (Clang).
2011-02-04 15:25:33 +01:00
Huw Davies
5102d4df8c
rpcrt4/tests: Add a test for marshalling a pointer to a user type, where the user type is itself a pointer.
2011-02-04 15:25:33 +01:00
Michael Stefaniuc
18a3b3f2f7
rpcrt4: COM cleanup for StdProxyImpl.
2010-12-30 12:21:54 +01:00
Hans Leidekker
215b69e36b
rpcrt4: Add a stub implementation of RpcMgmtSetAuthorizationFn.
2010-12-15 12:02:09 +01:00
Michael Stefaniuc
c38d6fed39
rpcrt4: Use an iface instead of a vtbl pointer in RpcStreamImpl.
2010-12-09 12:24:15 +01:00
Alexandre Julliard
dc9b648fcb
rpcrt4: Get rid of the ICOM_THIS_MULTI macro.
2010-11-11 20:21:57 +01:00
Alexandre Julliard
749f22948c
rpcrt4: Implement waiting in RpcMgmtWaitServerListen.
2010-11-10 10:00:35 +01:00
Louis Lenders
92f41c56f7
rpcrt4: Add stub for NdrMesTypeEncode2.
2010-10-27 11:46:54 +02:00
Alexandre Julliard
7bfa513bc9
rpcrt4/tests: Fix a test failure on XP SP3.
2010-10-08 11:56:45 +02:00
Alexandre Julliard
7afdf5d920
Make some variable declarations extern.
2010-10-01 13:42:22 +02:00
Alexandre Julliard
730f01801f
tests: Make some variables static.
2010-10-01 13:41:42 +02:00
Alexandre Julliard
81b8ee863e
makefiles: Add a standard header for all makefiles to replace the common variable initializations.
2010-09-19 12:36:48 +02:00
Alexandre Julliard
95ea352738
rpcrt4: Remove a couple of unused local variables.
2010-09-01 14:01:04 +02:00
Alexandre Julliard
0abc475365
rpcrt4: Retrieve the stack argument pointer in a more portable way in NdrMesProcEncodeDecode.
2010-09-01 14:01:04 +02:00
Francois Gouget
99c5ca7e40
rpcrt4: Make RPCRT4_Receive() static.
2010-08-31 14:23:47 +02:00
Alexandre Julliard
9de9cbb324
rpcrt4: Retrieve the stack argument pointer in a more portable way in NdrClientCall.
2010-08-26 17:21:09 +02:00
Alexandre Julliard
e095467b3c
rpcrt4: Fix cfi annotations for the stubless proxy entry point.
2010-08-26 17:21:09 +02:00
Huw Davies
300536d88e
rpcrt4: Add a missing STUBLESS_INITOUT case.
2010-08-02 17:40:34 +02:00
Alexandre Julliard
ee5cada235
rpcrt4: Don't align the buffer after reading the conformance, we need to read the variance first.
2010-07-21 20:31:53 +02:00
Alexandre Julliard
b86d515ed6
dlls: Remove explicit imports of kernel32 and ntdll.
2010-07-21 17:38:36 +02:00
Austin English
eb7c206114
rpcrt4/tests: Improve failure messages.
2010-07-20 14:40:32 +02:00
Michael Stefaniuc
9dc835c2bc
rpcrt4: Remove redundant "non NULL" check of var cred_dst (coccicheck).
2010-05-20 13:47:52 +02:00
Michael Stefaniuc
943eefc8fc
rpcrt4: Avoid using long.
2010-05-17 15:41:33 +02:00
Gerald Pfeifer
2f4c5cf351
rpcrt4: Remove variable hr which is not really used from NdrInterfacePointerBufferSize.
2010-05-17 12:42:31 +02:00
Gerald Pfeifer
3b3085fba1
rpcrt4: Remove variable size which is not really used from NdrComplexArrayUnmarshall.
2010-04-26 07:01:03 -05:00
Aric Stewart
75197bdfaf
rpcrt4/tests: Add NdrDllRegisterProxy tests.
2010-04-08 12:25:08 +02:00
Aric Stewart
0e09ade10b
rpcrt4: Improve NdrDllRegisterProxy parameter checking.
2010-04-08 12:24:49 +02:00
Aric Stewart
0608581768
rpcrt4: Handle NULL pclsid in NdrDllRegisterProxy and NdrDllUnregisterProxy.
2010-04-08 12:24:11 +02:00
Alexandre Julliard
a8e86e35dd
winapi: Generate the 64-bit variant of structure size/alignment tests.
2010-04-07 18:03:00 +02:00
Alexandre Julliard
334f3add29
rpcrt4: Implement proxy/stub delegation for x86_64.
2010-04-07 13:09:46 +02:00
Alexandre Julliard
a758a38fae
rpcrt4: Add support for marshalling int3264 types.
2010-04-07 13:09:30 +02:00
Alexandre Julliard
cf50aa91f6
rpcrt4: Clean up handling of enum16 types.
2010-04-07 13:09:17 +02:00
Alexandre Julliard
fe2f875aaf
rpcrt4: Add support for complex arrays in the generic array unmarshalling functions.
2010-04-05 22:02:20 +02:00
Alexandre Julliard
3243ee7e0b
rpcrt4: Add support for complex arrays in the generic array marshalling functions.
2010-04-05 22:01:46 +02:00
Alexandre Julliard
c1a9dc8ad2
rpcrt4: Always skip the conformance format, even if conformance is not present in the buffer.
...
Add an identical SkipVariance function to make the code clearer.
2010-04-05 21:59:30 +02:00
Alexandre Julliard
5728d6b402
rpcrt4: Fix tracing of non-conformant strings.
2010-04-05 21:58:06 +02:00
Alexandre Julliard
b91e5302a5
rpcrt4: Replace the alignment macros by inline functions.
2010-04-02 21:54:55 +02:00
Alexandre Julliard
afa56b29ce
rpcrt4: Fix the pointer alignment macros for 64-bit.
2010-04-02 21:38:32 +02:00
Mikhail Maroukhine
9b933a3594
rpcrt4: Fix compiler warnings with flag -Wcast-qual.
2010-04-01 18:12:41 +02:00
Alexandre Julliard
d1c7029b34
rpcrt4: Always start the 64-bit version of rpcss.exe on Wow64.
2010-03-29 15:50:09 +02:00
Michael Stefaniuc
3a8a9620ab
rpcrt4/tests: Fix duplicate expressions in if conditions.
2010-03-26 15:35:43 +01:00
Rob Shearman
1ff4bfe69a
rpcrt4: Add test for [out] non-conformant array.
2010-03-23 17:27:13 +01:00
Alistair Leslie-Hughes
9d056eb8e2
rpcrt4: Added stub function CreateStubFromTypeInfo.
2010-03-22 15:52:35 +01:00
Rob Shearman
f6c4c49f86
rpcrt4: Add tests for a complex array of pointers.
2010-03-19 16:25:48 +01:00
Alexandre Julliard
bef5645eb1
makefiles: Remove the no longer needed explicit separators for dependencies.
2010-03-16 13:28:19 +01:00
Rob Shearman
088c0857c9
rpcrt4: Add support for marshalling/unmarshalling complex arrays of pointers.
2010-03-16 11:42:09 +01:00
Juan Lang
86292d1dba
rpcrt4: Implement UuidCreateSequential using the machine's MAC address, when available.
2010-03-04 12:29:54 +01:00
Juan Lang
b61c8f8b53
rpcrt4: Add tests for UuidCreateSequential.
2010-03-04 12:29:26 +01:00
Huw Davies
87b712be8b
rpcrt4: Add support for FC_FLOAT and FC_DOUBLE in complex structures.
2010-02-22 13:18:50 +01:00
Alexandre Julliard
6164ce2d82
makefiles: Use the standard C_SRCS variable as the list of test files.
...
This enables it to be auto-updated by make_makefiles.
2010-02-22 10:47:11 +01:00
Huw Davies
24db8d384c
rpcrt4: Fix tests on win64.
2010-02-15 16:07:53 +01:00
Paul Vriens
693dd47689
rcprt4/tests: Don't crash on NT4 or lower.
2010-02-12 16:39:39 +01:00
Huw Davies
6805045b05
rpcrt4: Add tests for multi-dimensional conformant arrays.
2010-02-11 17:47:59 +01:00
Paul Vriens
da91da4652
rpcrt4/tests: Fix some memory leaks (Valgrind).
2010-01-22 13:07:39 +01:00
Rob Shearman
c66972dfba
rpcrt4: Add structure definition for RPC AUTH3 packet and use the size of this on sending to fix authentication against native servers.
...
Also use the new size to validate incoming AUTH3 packets to be
consistent with native.
2010-01-19 15:03:56 +01:00
Paul Vriens
876c3c352b
rpcrt4/tests: Skip more tests on Win9x/WinMe.
2009-12-16 12:42:40 +01:00
Paul Vriens
4d1fa5833e
rpcrt4/tests: Don't crash on NT4.
2009-12-16 12:42:39 +01:00
Marcus Meissner
122ca034db
rpcrt4: Exit on unknown confirmance type (Coverity).
2009-12-15 16:09:11 +01:00
Hans Leidekker
d95e58ba4d
rpcrt4: Avoid test failures on win9x.
2009-12-15 11:45:00 +01:00
Hans Leidekker
fddabccaa1
rpcrt4: Add tests for RPC calls with authentication.
2009-12-14 16:14:37 +01:00
Rob Shearman
f823f2181e
rpcrt4: Override inquire_auth_client for ncalrpc transport to always indicate that the connection is authenticated.
2009-12-14 12:19:37 +01:00
Rob Shearman
3dbf356f8f
rpcrt4: Allow the authentication details of the client to be transport-specific.
2009-12-14 12:19:33 +01:00
Rob Shearman
d918587f1d
rpcrt4: Implement client impersonation.
2009-12-14 12:19:27 +01:00
Rob Shearman
95026f9d6b
rpcrt4: Override authentication functions for ncalrpc protocol to do nothing.
...
The protocol is local only and therefore encryption/decryption isn't
necessary to keep the data private, and methods are built into the
protocol for impersonating the user of the calling thread.
2009-12-14 12:19:21 +01:00
Rob Shearman
deae193ac8
rpcrt4: Allow the connection to override the authentication mechanism for a connection type.
2009-12-14 12:19:16 +01:00
Rob Shearman
a65f7b637a
rpcrt4: Process control packets in the server synchronously to avoid races when using 3-factor authentication.
...
The client has nothing to wait for after sending the AUTH3 packet
before sending the first request packet. Therefore, we must ensure
that the AUTH3 packet has finished being processed before we start
processing any request packets.
2009-12-14 12:19:09 +01:00
Rob Shearman
e27e61db71
rpcrt4: Add support for server-side authentication.
2009-12-14 12:19:02 +01:00
Rob Shearman
ceb7fda374
rpcrt4: Fix rpcrt4_conn_tcp_read and rpcrt4_conn_tcp_write for reading/writing zero-sized data.
2009-12-14 12:18:47 +01:00
Rob Shearman
6ad4d5922b
rpcrt4: Implement RpcServerRegisterAuthInfoA/W.
2009-12-14 12:18:41 +01:00
Rob Shearman
d412bcc3ae
rpcrt4: Handle [out]-only non-conformant strings in stubless servers.
2009-12-14 12:04:05 +01:00
Rob Shearman
b24aa1c153
rpcrt4: Add support for context handles in stubless servers.
2009-12-14 12:04:05 +01:00
Rob Shearman
15cd36d21d
rpcrt4: Fix some memory leaks in the cstub tests.
2009-12-14 12:04:05 +01:00
Marcus Meissner
4c36f79964
rpcrt4: Fixed array_compute_and_size_conformance on strings (Coverity).
2009-12-07 14:18:28 +01:00
Alexandre Julliard
e48f4253a4
rpcrt4/tests: Skip the get_ranged_enum test on old Windows versions.
2009-12-04 14:34:58 +01:00
Rob Shearman
cd453f453f
rpcrt4: Fix memory leak in test_conf_complex_struct.
2009-11-29 16:42:15 +01:00
Rob Shearman
c8f9df7f1e
rpcrt4: Fix uninitialised memory read in ndr_marshall tests.
...
The memory needs to be initialised since NDR will look at the memory
to see if it needs to allocate memory for embedded pointers.
2009-11-29 16:40:20 +01:00
Rob Shearman
af271255f5
rpcrt4: Add tests for full pointers.
2009-11-18 15:15:21 +01:00
Rob Shearman
37793cd550
rpcrt4: Fix the pointer saved during full pointer unmarshalling.
...
The pointer address may set by the type unmarshalling function and
therefore will not be base_ptr_val. This value is the value at
*pPointer and is what needs to be retrieved during subsequent
unmarshalling of the same function.
2009-11-18 15:14:10 +01:00
Rob Shearman
51dbc8d06b
rpcrt4: Fix the return value of NdrFullPointerQueryRefId for a pointer ID of 0.
2009-11-18 14:13:33 +01:00
Rob Shearman
d6f293f7be
rpcrt4: Add test for calling NdrFullPointerQueryRefId with a 0 pointer ID.
2009-11-18 14:13:30 +01:00
Rob Shearman
438f2a52a6
rpcrt4: Implement comm_status and fault_status handling for stubless procedures.
2009-11-16 17:16:33 +01:00
Rob Shearman
cdc10a8d3b
rpcrt4: Don't crash with a NULL binding handle in RpcBindingFree.
2009-11-16 17:16:19 +01:00
Rob Shearman
b49512ecaf
rpcrt4: Ignore the network address for ncalrpc in is_epm_destination_local.
...
The network address is ignored in the transport code, so it doesn't
make sense to take it into account here.
2009-11-16 17:16:14 +01:00
Rob Shearman
eb0d2828b2
rpcrt4: Fix potential NULL pointer access in process_bind_packet.
...
Upon failure to allocate results in process_bind_packet, build nack
packet and send right away, instead of falling into the normal path
and potentially dereferencing the NULL pointer.
2009-11-16 11:34:58 +01:00
Hans Leidekker
03aae9e418
rpcrt4: Add tests for RpcBindingInqAuthInfo.
2009-11-12 15:18:54 +01:00
Hans Leidekker
8abe95ddfa
rpcrt4: Implement RpcBindingInqAuthInfo{, Ex}.
2009-11-12 15:18:48 +01:00
Rob Shearman
efda021c5d
Revert "rpcrt4: The get_ranged_enum test doesn't work on Windows, so don't execute it for the moment.".
...
This reverts commit 81036cc51831db03f8e0eb03b5f74ae5099461cd.
2009-11-12 14:18:27 +01:00
Rob Shearman
03f87bc1c3
rpcrt4: Replace sizeofs with FIELD_OFFSET in RPCRT4_BuildBindNackHeader to avoid relying on ANYSIZE_ARRAY being 1.
2009-11-12 13:15:37 +01:00
Rob Shearman
a638bff53d
rpcrt4: Stop searching through transfer syntaxes in process_bind_packet when one has been found.
...
Fixes Valgrind errors in various tests using RPC.
2009-11-12 13:13:26 +01:00
Hans Leidekker
59e3d9b5c7
rpcrt4: Implement RpcBindingInqAuthClient{, Ex}.
2009-11-11 11:51:18 +01:00
Rob Shearman
59ba6d2573
rpcrt4: Support multiple interfaces and transfer syntaxes in bind and bind ack messages.
2009-11-11 10:56:13 +01:00
Rob Shearman
7e52896b84
rpcrt4: The get_ranged_enum test doesn't work on Windows, so don't execute it for the moment.
2009-11-11 10:56:09 +01:00
Marcus Meissner
860c87bb1c
rpcrt4: Compare network options correctly (Coverity).
2009-11-10 13:10:14 +01:00
Rob Shearman
97d5f3401d
widl: Add support for varargs functions.
2009-11-09 20:42:27 +01:00
Rob Shearman
2b3659f326
widl: Implement [range] attribute.
2009-11-09 20:34:17 +01:00
Hans Leidekker
444307610e
rpcrt4: Add a test for the ncalrpc protocol sequence.
2009-11-04 13:07:56 +01:00
Hans Leidekker
4b33527f51
rpcrt4: Correct spelling of RPC_C_QOS_IDENTITY_STATIC and RPC_C_QOS_IDENTITY_DYNAMIC.
2009-11-04 13:07:56 +01:00
Alexandre Julliard
c4ebf3687b
rpcrt4: Specify the full application path when starting rpcss.exe.
2009-10-27 11:20:42 +01:00
Huw Davies
da86e727bd
rpcrt4: Move the full pointer table init to after a potential call to NdrServerInitializeNew().
2009-10-26 13:38:10 +01:00
Alexandre Julliard
3b602f5fea
rpcrt4/tests: Fix a double free (Valgrind).
2009-10-22 15:10:58 +02:00
Alexandre Julliard
8ce9b8f1be
rpcrt4/tests: Remove tests for specific values of bit fields.
2009-10-09 16:09:20 +02:00
Ge van Geldorp
55230ba6e0
rpcrt4/tests: Fix cstub test on Win7.
2009-09-24 16:03:31 +02:00
Hans Leidekker
ee7755511b
rpcrt4: Add stub implementations of NdrMesTypeDecode2 and NdrMesTypeFree2.
2009-09-22 16:17:53 +02:00
Francois Gouget
891d3ef525
rpcrt4: Fix compilation on systems that don't support nameless unions.
2009-08-31 12:41:37 +02:00
Francois Gouget
ee7902b283
rpcrt4/tests: Fix compilation on systems that don't support nameless unions.
...
Also omit the nameless union macros from the error messages for clarity.
2009-08-31 12:41:21 +02:00
Juan Lang
d82cbcf049
rpcrt4: Allow Annotation to be NULL.
...
Fixes bug 19760.
--Juan
From afb4d6b943345e19952fe34bd1d8ab4c411563ae Mon Sep 17 00:00:00 2001
From: Juan Lang <juan.lang@gmail.com>
Date: Wed, 19 Aug 2009 14:27:20 -0700
Subject: [PATCH 3/3] Allow Annotation to be NULL
2009-08-20 15:26:33 +02:00
Alexandre Julliard
e01420d72a
rpcrt4: Assign a unique id to the connection instead of changing it for each message.
2009-08-18 20:15:01 +02:00
Huw Davies
70804336aa
rpcrt4: Add support for FC_ALIGNM2.
2009-08-17 16:47:24 +02:00
Alexandre Julliard
8de0242885
rpcrt4: Replace long and unsigned long by more appropriate types.
2009-07-03 13:42:57 +02:00
Alexandre Julliard
b6efd13ef5
rpcrt4: Add call frame annotations in x86 assembly code.
2009-06-25 12:05:09 +02:00
Alexandre Julliard
b579c48133
rpcrt4: Fix memory sizes of marshalled pointers on 64-bit.
2009-06-19 12:49:35 +02:00
Alexandre Julliard
39d75dfba4
rpcrt4/tests: Fix the marshalling test for Win9x.
2009-06-19 12:49:20 +02:00
Alexandre Julliard
c3c8aa3b23
rpcrt4/tests: Fix the marshalling test for Win64.
2009-06-19 12:38:46 +02:00
Francois Gouget
d51d209b5f
rpcrt4/tests: Replace malloc() with HeapAlloc().
2009-06-15 13:42:29 +02:00
Alexandre Julliard
f2d65b5563
rpcrt4: Add appropriate stdcall decorations to assembly functions.
2009-06-15 13:42:26 +02:00
Alexandre Julliard
c35aa1d46d
rpcrt4: Adjust the start of the proxy virtual table for stubless proxies.
2009-06-10 16:54:30 +02:00
Francois Gouget
47be6e8379
rpcrt4/tests: Make dummy_Release() static.
2009-06-05 14:43:25 +02:00
Alexandre Julliard
cbf9d1b0c6
rpcrt4: Add checks for the number of methods being larger than what we support.
2009-06-03 16:52:06 +02:00
Alexandre Julliard
066060a520
rpcrt4/tests: Add tests for the contents of virtual table for delegated proxies.
2009-06-03 16:51:47 +02:00
Alexandre Julliard
3c9571df78
rpcrt4: Add support for proxy delegation.
2009-06-03 16:51:15 +02:00
Alexandre Julliard
01d00d178e
rpcrt4: Split the vtbl initialization in NdrDllGetClassObject to a separate function.
2009-06-03 16:50:39 +02:00
Alexandre Julliard
449a82866d
rpcrt4: Retrieve the stubless information for the thunks directly from the virtual table pointer.
2009-06-01 21:48:48 +02:00
Alexandre Julliard
acfebea667
rpcrt4: Use the same allocation technique as delegated stubs for the stubless thunks.
...
This avoids allocating them on the heap, and avoids the need for a
separate vtbl.
2009-06-01 21:38:18 +02:00
Alexandre Julliard
ce3c45934b
rpcrt4: Return the stack size from the ObjectStubless function so that the thunks are independent from the number of arguments.
2009-06-01 21:36:12 +02:00
Alexandre Julliard
6f49023802
rpcrt4: Allocate the delegated stubs vtbl only once it is really needed.
2009-06-01 16:55:14 +02:00
Alexandre Julliard
0357ad0894
rpcrt4: Change the allocation of delegated stub methods so that we never need to free them.
2009-06-01 16:40:44 +02:00
Alexandre Julliard
2c1b94bde2
rpcrt4/tests: Fix a few more broken tests on NT4.
2009-06-01 16:16:05 +02:00
Alexandre Julliard
47d927f704
rpcrt4/tests: Disable some tests that crash on Windows.
2009-05-28 22:27:51 +02:00
Alexandre Julliard
05f57146c8
rpcrt4/tests: Remove tests for v1 memory list, the layout is wrong and we don't care about it anyway.
2009-05-28 20:30:05 +02:00
Alexandre Julliard
03b6dcb4a1
rpcrt4/tests: Mark some stub message tests broken for older Windows versions.
...
Group the common tests in a function shared between client and server.
2009-05-28 20:29:51 +02:00
Alexandre Julliard
aded9e4091
rpcrt4: Fix compiler warnings on 64-bit.
2009-05-28 11:56:30 +02:00
Alexandre Julliard
feeaf97c81
rpcrt4: Implement NdrPointerMemorySize and enable the corresponding tests.
2009-05-28 11:52:36 +02:00
Alexandre Julliard
49f1433cdc
rpcrt4/tests: Enable some tests that no longer crash Wine.
2009-05-28 11:41:12 +02:00
Alexandre Julliard
bb18c5ab07
rpcrt4/tests: Comment out a couple of tests that crash on older Windows versions.
2009-05-28 11:38:41 +02:00
Alexandre Julliard
7571c1fd53
rpcrt4: Fix the PSFactoryBuffer proxy refcounting, with tests.
2009-05-27 21:25:10 +02:00
Alexandre Julliard
36965f5726
rpcrt4/tests: Fix a number of 64-bit issues in the ndr_marshall test.
2009-05-27 21:18:35 +02:00
Alexandre Julliard
23e70e00ed
rpcrt4: Internal functions don't need to be WINAPI.
2009-05-27 13:04:33 +02:00
Francois Gouget
ef5f1f5065
rpcrt4: Make RPCRT4_NextHttpHeaderField() and RPCRT4_default_receive_fragment() static.
2009-05-13 12:45:37 +02:00
Francois Gouget
082147d906
rpcrt4: Remove WINAPI on static functions where not needed.
2009-05-06 12:20:10 +02:00
Michael Stefaniuc
3b803f5390
rpcrt4: Replace some usage of the long type.
2009-04-21 13:16:31 +02:00
Paul Vriens
90d3163aba
rpcrt4: Fix NdrDllCanUnloadNow.
2009-04-20 14:14:03 +02:00
Rob Shearman
324b4d0243
rpcrt4: Add a Win32 implementation of ncacn_ip_tcp transport.
2009-04-08 16:01:42 +02:00
Rob Shearman
06c2982a39
rpcrt4: Factor out non-Win32 compatible parts of the ncacn_ip_tcp client code to allow it to be compiled in.
2009-04-08 16:01:34 +02:00
Rob Shearman
ce747f3fac
rpcrt4: Compile in RPC over HTTP support even if HAVE_SOCKETPAIR is not defined.
2009-04-07 14:53:34 +02:00
Rob Shearman
b2a5bfdfc9
rpcrt4: Fix context handle test on Vista upwards.
...
Don't run tests that results in an ERROR_INVALID_HANDLE exception being raised.
Check for the context handle function pointers being non-NULL to
prevent exceptions being raised on platforms without these functions.
2009-04-07 14:22:35 +02:00
Nikolay Sivov
fd3b57c53a
rpcrt4: Implemented RpcEpRegisterW wrapping RpcEpRegisterA.
2009-03-31 12:41:11 +02:00
Rob Shearman
317edfd7da
rpcrt4: Free the memory allocated for the protseq and endpoint strings allocated in RpcServerUseProtseq* functions.
...
Make a copy of the protseq string in alloc_serverprotoseq to simplify
memory management in higher-level functions.
2009-03-30 13:58:01 +02:00
Rob Shearman
4d8057ffef
rpcrt4: RpcServerUseProtseqEp(..., NULL, ...) should return RPC_S_OK.
...
However, on some buggy platforms it returns
RPC_S_INVALID_ENDPOINT_FORMAT. Don't follow this behaviour our
implementation of the API.
2009-03-30 13:57:54 +02:00
Austin English
f8f4c4ef43
rpcrt4/test: Change a skip to win_skip.
2009-03-26 16:13:33 +01:00
Rob Shearman
524a99a2da
rpcrt4: Ensure that only the IP/IPv6 address families are considered in rpcrt4_protseq_ncacn_ip_tcp_open_endpoint/rpcrt4_ncacn_ip_tcp_open.
2009-03-26 16:11:07 +01:00
Rob Shearman
a42d4dbfb6
rpcrt4: Allow listening on dynamically generated ncacn_ip_tcp endpoints.
2009-03-26 16:10:59 +01:00
Rob Shearman
375c68a043
rpcrt4: Re-use already registered endpoints for a protocol sequence.
...
Return RPC_S_INVALID_ENDPOINT_FORMAT if a NULL endpoint is passed into
RpcServerUseProtseqEp{,Ex}{A,W}.
2009-03-26 16:10:49 +01:00
Alexandre Julliard
ce3ce9be8f
rpcrt4: Disable HTTP support if we don't have socketpair and related networking functions.
2009-03-26 14:02:01 +01:00
Huw Davies
eaf4492c70
rpcrt4: Dynamically allocate the buffer if the fixed size one isn't large enough. Don't return an inappropriate error if we fail to get the status text, it's only used for diagnostics.
2009-03-26 11:50:50 +01:00
Rob Shearman
5f6ae94ad0
rpcrt4: Implement RPC over HTTP support.
...
CodeWeavers did this work for supporting the optional HTTP connection
method of Outlook 2003/2007 (must be running with Windows versions set
to XP or higher to see this option).
This was written before Microsoft publicly released a specification
for the RPC over HTTP protocol and so was developed by examining
traffic flowing between a Windows client and an IIS server.
2009-03-25 15:20:52 +01:00
Rob Shearman
834c5b4275
rpcrt4: Implement stubless asynchronous NDR interpreter.
...
CodeWeavers did this work for supporting Outlook 2007.
2009-03-25 15:20:44 +01:00
Rob Shearman
cdf509d71f
rpcrt4: Fix crash when calling RpcServerUseProtseq for ncacn_np and ncalrpc.
...
Add tests for these protocol sequences and for ncacn_ip_tcp.
2009-03-24 13:12:11 +01:00
Rob Shearman
ae5770d366
rpcrt4: Fix a memory leak in union unmarshall functions by never passing fMustAlloc=TRUE into union_arm_unmarshall.
2009-03-23 14:54:29 +01:00
Rob Shearman
1c8c45d0f6
rpcrt4: Implement NdrRangeUnmarshall for enum types.
2009-03-23 14:54:15 +01:00
Rob Shearman
7208067492
rpcrt4: Simplify some code in RpcServerInqBindings by changing while loops into for loops.
2009-03-23 14:54:07 +01:00
Rob Shearman
5e1d10d423
rpcrt4: Free the resources associated with server protocol sequences on DLL unload.
2009-03-23 14:54:01 +01:00
Michael Stefaniuc
efbb4ebf3e
widl: Output "LONG" instead of "long" for a 32bit integer.
...
long is always 32bit in IDL files but that's not true in C.
2009-03-13 11:15:21 +01:00
Alexandre Julliard
85f8f30a65
rpcrt4: Use RpcMsg->Buffer instead of BufferStart since the latter isn't always set.
2009-03-12 13:09:54 +01:00
Rob Shearman
689a49b52a
rpcrt4: Add a check for a NULL ref pointer to NdrPointerUnmarshall.
2009-03-11 10:29:26 +01:00
Rob Shearman
86f79e3a55
rpcrt4: Fix use of uninitialised variable in NdrDllRegisterProxy.
...
It should be key, not subkey being passed into RegSetValueExW.
2009-02-24 16:57:31 +01:00
Francois Gouget
bf855d8696
rpcrt4/tests: Use win_skip() to skip over unimplemented functionality.
2009-02-23 12:21:30 +01:00
Michael Stefaniuc
e3bb1c8243
rpcrt4: Remove superfluous pointer casts.
2009-02-16 16:01:37 +01:00
Juan Lang
76f4b9b053
rpcrt4: Don't abort reading from a pipe if a single read is short.
2009-02-09 12:09:01 +01:00
Rob Shearman
7fe67b159d
rpcrt4: Change the test of CStdStubBuffer->pPSFactory to only test for the field not being NULL.
...
The address varies on older versions of Windows and isn't really important.
2009-02-06 13:03:19 +01:00
Rob Shearman
d3085abc08
Change parameter type from size_t to SIZE_T for MIDL_user_allocate.
2009-02-02 11:55:21 +01:00
Rob Shearman
ff8bd24ec2
rpcrt4: Fix a cstub test failure on older versions of Windows.
2009-01-29 14:07:04 +01:00
Rob Shearman
47adeb0525
rpcrt4: Add tests for NdrGetUserMarshalInfo.
2009-01-28 14:16:19 +01:00
Rob Shearman
78ac42bb1c
rpcrt4: Implement NdrGetUserMarshalInfo.
2009-01-28 14:16:13 +01:00
Rob Shearman
b46f168650
rpcrt4: Don't test for a specific value for fBufferValid in test_client_init.
...
It's not consistent across different Windows versions.
2009-01-28 14:16:01 +01:00
Alexandre Julliard
9876c5433f
rpcrt4: Don't align the buffer pointer in ComplexStructMemorySize for alignment formats.
2009-01-26 15:12:07 +01:00
Rob Shearman
2ec1e4a393
rpcrt4: Fix buffer overflow in UUID tests.
2009-01-26 14:30:47 +01:00
Rob Shearman
bcca81f4f4
rpcrt4: Remove the NDR version check from NdrClientCall2 and NdrStubCall2.
...
It does more harm than good, since we can't get any information about
what new features are being used by the caller, if any, by bailing at
this early point.
2009-01-23 16:14:00 +01:00
Rob Shearman
05063ece28
rpcrt4: Don't declare functions that aren't exported by rpcrt4.dll in include/rpcndr.h.
...
NdrRangeMarshall, NdrRangeBufferSize, NdrRangeFree and
NdrByteCountPointerMemorySize should be declared static in
ndr_marshall.c instead.
2009-01-23 16:13:53 +01:00
Hans Leidekker
7df0a4ecb2
rpcrt4: Move NdrGetUserMarshalInfo stub near user marshal functions. Add documentation header.
2009-01-23 13:40:36 +01:00
Juan Lang
5e5b53666c
rpcrt4: Use pseudo-random numbers to generate UUIDs rather than using the (old, deprecated) MAC-address-and-time generation algorithm.
2009-01-22 15:28:23 +01:00
Hans Leidekker
1de7f2d50c
rpcrt4: Add a stub implementation of NdrGetUserMarshalInfo.
2009-01-21 13:07:30 +01:00
Andrew Talbot
273b40656b
rpcrt4: Declare some functions static.
2009-01-19 13:36:26 +01:00
Francois Gouget
5656e41640
rpcrt4/tests: Add a trailing '\n' to ok() calls.
2009-01-14 14:52:18 +01:00
Ge van Geldorp
a9950e3cee
rpcrt4/tests: Remove NdrVaryingArrayUnmarshall() test, it is broken on Windows.
...
The failures in rpcrt4:server on Windows are caused by an access violation
thrown in NdrVaryingArrayUnmarshall() called from get_5numbers(). I've
created a minimum get_5numbers() test with Microsoft tools and that throws
the same access violation. The access violation disappears when zeroing
out the StubMsg before calling NdrClientInitializeNew(), so my guess is
Windows NdrVaryingArrayUnmarshall() uses an uninitialized member.
2009-01-13 16:39:30 +01:00
Michael Karcher
1c56d293f0
widl: Dereference operator in expr works on any declared pointer.
2009-01-12 16:53:18 +01:00
Rob Shearman
59158fb25c
rpcrt4: Unmarshalling functions should always set fMustAlloc when allocating memory.
...
The memory is uninitialised and so further unmarshalling shouldn't try
to reuse any memory. fMustAlloc is always set to TRUE when allocating
memory so that it is clear that the unmarshalling is safe and to avoid
future problems with change or the code being copied.
2009-01-12 13:07:31 +01:00