Commit Graph

467 Commits

Author SHA1 Message Date
Phil Lodwick dd000074fe rpcrt4: Support for SMVARRAY in EmbeddedComplexSize. 2006-07-25 11:31:59 +02:00
Robert Shearman 5700fe8a61 rpcrt4: Set BufferMark before calling EmbeddedPointerMarshall, EmbeddedPointerUnmarshall or EmbeddedPointerMemorySize. 2006-07-24 13:47:40 +02:00
Robert Shearman ba9158e2e1 rpcrt4: Improve the stubs for RpcImpersonateClient and RpcRevertToSelf. 2006-07-24 13:47:36 +02:00
Robert Shearman a8531067c4 rpcrt4: Support small fixed arrays in EmbeddedComplexSize. 2006-07-24 13:47:31 +02:00
Robert Shearman 4c4fc14fe9 rpcrt4: Allocate memory based on MaxCount, not ActualCount in NdrConformantStringUnmarshall. 2006-07-24 13:47:25 +02:00
Robert Shearman 98c26a81fe rpcrt4: Add support for marshaling the FC_HYPER base type in complex types.
Change the FIXME messages to print out unrecognised format characters in 
hex rather than decimal.
2006-07-24 13:47:13 +02:00
Robert Shearman d2cb9ec567 rpcrt4: Display a big message box if the user tries to use typelib
marshaling in native oleaut32 with builtin rpcrt4 to tell them what is
wrong.
2006-07-18 11:13:36 +02:00
Robert Shearman 9318cb0fbc rpcrt4: Handle more structure padding values. 2006-07-18 11:12:47 +02:00
Robert Shearman 2cb3b22c26 rpcrt4: Fix Variance Callback Functions.
A callback function for computing the variance puts the computed value 
into the same field as a conformance, so make sure to copy the value 
into pCount before returning from ComputeConformanceOrVariance.
2006-07-14 12:38:53 +02:00
Robert Shearman a02034a609 rpcrt4: Add the threading model and a description when registering a CLSID for the PSFactoryBuffer. 2006-07-14 12:38:48 +02:00
Robert Shearman 2538490d0b rpcrt4: Add a stub for I_RpcMapWin32Status. 2006-07-13 16:25:33 +02:00
Alexandre Julliard eb8a40c368 libs: Merged libwine_unicode into libwine.
Most dlls use libwine_unicode at this point, so there's nothing to
gain by having two separate libraries.
2006-07-11 19:33:22 +02:00
Alexandre Julliard 0fa8baafcb make_dlls: Recursively ignore .ok files in all tests directories. 2006-07-10 21:26:50 +02:00
Alexandre Julliard edd100b899 make_dlls: Recursively ignore testlist.c in all tests directories. 2006-07-10 21:19:42 +02:00
Alexandre Julliard 5258e061dc make_dlls: Ignore generated import libraries from the top-level .gitignore. 2006-07-10 20:55:58 +02:00
Alexandre Julliard cc2b3b48e6 Take advantage of the recursive nature of .gitignore for Makefile entries.
Prefix other entries with '/' to make them non-recursive.
2006-07-10 20:47:54 +02:00
Michael Stefaniuc 00e779370f janitorial: Put "inline static" at the beginning of a declaration. 2006-07-07 14:30:35 +02:00
Huw Davies 85ed9a5905 rpcrt4: Don't advance the buffer for FC_STRUCTPAD2. 2006-07-05 11:44:19 +02:00
Robert Shearman e7df38c27f rpcrt4: Add a stub for RpcMgmtSetServerStackSize. 2006-06-30 20:43:53 +02:00
Huw Davies 93fb9d10f5 rpcrt4: Calculate size of FC_STRUCT arguments correctly. 2006-06-26 12:36:10 +02:00
Robert Shearman 7d92b89abf rpcrt4: Stubs for RpcRevertToSelf and RpcMgmtSetComTimeout. 2006-06-21 13:39:52 +02:00
Robert Shearman 45d42528a0 rpcrt4: Add stub for RpcMgmtEnableIdleCleanup. 2006-06-21 13:39:38 +02:00
Huw Davies 3a56eca1c7 rpcrt4: Don't use a short to hold the packet length, since it can
result in premature termination of the send.
2006-06-20 20:35:38 +02:00
Robert Shearman 0da8836ff7 rpcrt4: Move the packet manipulation from the exception filter to the exception handler.
Remove the unused server_sem variable.
2006-06-19 23:04:19 +02:00
Robert Shearman 1437f8bd8c rpcrt4: Use the thread pool in the RPC server for processing packets. 2006-06-19 10:28:50 +02:00
Huw Davies 26c2953e58 rpcrt4: Fix the argument size of conformant arrays. 2006-06-16 14:42:36 +02:00
Robert Shearman b3c04e032d rpcrt4: getaddrinfo returns any non-zero value on failure, not just negative values. 2006-06-14 12:47:05 +02:00
Alexandre Julliard 2a91838f0c rpcrt4: Don't use sizeof in traces to avoid printf format warnings. 2006-06-13 14:11:28 +02:00
Alexandre Julliard d90f68166c rpcrt4/tests: Don't use sizeof in ok() to avoid printf format warnings. 2006-06-13 14:03:44 +02:00
Robert Shearman 1c04d9ab20 rpcrt4: Add an exception handler for CStdStubBuffer_Invoke.
This is needed because IRpcStubBuffer::Invoke should not allow RPC
exceptions to be passed to the caller.
2006-06-12 13:21:46 +02:00
Robert Shearman 35982d72f5 rpcrt4: Initialise pStubMsg->MemorySize to zero before calling
ComplexStructMemorySize from NdrComplexArrayUnmarshall.
2006-06-12 13:21:46 +02:00
Robert Shearman 539b48bff4 rpcrt4: Use safe_mutiply in conformant array functions. 2006-06-12 13:21:46 +02:00
Robert Shearman 8dea3c2aa8 rpcrt4: Pass in a maximum variance value to ReadVariance to allow us
to validate the conformance values being read from the wire.
2006-06-12 13:21:46 +02:00
Robert Shearman 613ee6d01c rpcrt4: Check that strings are null-terminated on unmarshaling of conformant-varying structs. 2006-06-12 13:21:46 +02:00
Robert Shearman a946eb420b rpcrt4: Use safe_multiply when multiplying anything by pStubMsg->ActualCount or pStubMsg->MaxCount. 2006-06-12 13:21:46 +02:00
Robert Shearman cec6092aa2 rpcrt4: Raise an exception during unmarshaling if a conformant string isn't null-terminated. 2006-06-12 13:21:46 +02:00
Robert Shearman 6e95bfe85a rpcrt4: Introduce a new function, safe_multiply, which will raise an
exception if a multiply overflows a 4-byte integer.

This will protect the unmarshaling code against attacks specifying a 
large variance.
Use this new function in the conformant string functions to harden them 
against attack.
2006-06-12 13:20:30 +02:00
Robert Shearman d98b73a17a rpcrt4: Clear an object pointer during unmarshaling, otherwise we
could end up using the previously allocated memory even if it isn't
the right size, causing heap corruption.
2006-06-09 21:07:57 +02:00
Robert Shearman 578df90d6d rpcrt4: Initialise pStubMsg->MemorySize to zero before calling ComplexStructMemorySize from NdrComplexArrayUnmarshall. 2006-06-09 21:07:44 +02:00
Robert Shearman e3df112a39 rpcrt4: Don't raise an exception if there is no freer function - not all types have a freer. 2006-06-09 21:07:37 +02:00
Robert Shearman 21673d03f9 rpcrt4: Implement more base types for complex types. 2006-06-09 21:07:22 +02:00
Robert Shearman 0b1e51ca25 rpcrt4: Now that there's a process-wide pool of connections we don't
need to copy the FromConn field when copying bindings.
2006-06-09 21:07:11 +02:00
Robert Shearman 56386bd88c rpcrt4: Return the status received from RPCRT4_Send in I_RpcSend instead of always returning RPC_S_OK. 2006-06-09 21:07:02 +02:00
Alexandre Julliard c32dc6744c rpcrt4: Make the protseq_ops structure constant. 2006-06-09 13:12:58 +02:00
Alexandre Julliard c0fcba798b rpcrt4: Avoid potential redefinition of uuid_t. 2006-06-08 11:29:26 +02:00
Robert Shearman 58ec282bfb rpcrt4: Implement a process-wide connection pool for client connections,
rather than relying on the restriction of one connection per
binding. This also avoids the problem of two threads using the same
connection at the same time.
2006-06-08 10:16:00 +02:00
Robert Shearman 1412c47a50 rpcrt4: Fix the retrieval of This for interpreted proxies. 2006-06-08 10:15:36 +02:00
Robert Shearman 7ef5c3c772 rpcrt4: Implement full-pointer support for interpreted stubs.
Move the calls to the full pointer init functions before
NdrClient/ServerInitializeNew, like in MIDL-generated code.
2006-06-08 10:15:22 +02:00
Robert Shearman c9779ca16b rpcrt4: Implement varying array NDR functions. 2006-06-05 13:25:09 +02:00
Robert Shearman cd19c99284 rpcrt4: Don't call NdrBaseTypeMemorySize from within NdrBaseTypeUnmarshall. 2006-06-05 13:24:54 +02:00