Commit Graph

247 Commits

Author SHA1 Message Date
Alexandre Julliard
49c7bbe0de rpcrt4: Fixed asm syntax for rep; movsl. 2006-01-14 17:07:28 +01:00
Robert Shearman
b330bd7ae9 rpcrt4: Remove the unused RPCRT4_GetPSFactory function. 2006-01-10 19:59:48 +01:00
Robert Shearman
e298538459 rpcrt4: Don't release the interface pointer on failure.
Don't release the interface pointer on failure since we are not the
ones that allocated it. It is the caller's responsability to call
NdrInterfacePointerFree, where the freeing is supposed to happen.
2006-01-10 19:59:26 +01:00
Robert Shearman
1926b6da63 rpcrt4: Improve ReadVariance.
Extend ReadVariance to read the offset as well as the actual count,
since these always come in pairs.
Handle the variance not being present in ReadVariance and always call
it from the unmarshalling functions to simplify the code there and
also to fix a bug where the format pointer wasn't advanced properly
for complex arrays (introduced in the previous patch when implementing
variance).
2006-01-09 17:21:01 +01:00
Robert Shearman
2e875d5d35 rpcrt4: Validate complex array format string.
Verify that the format string being passed into the complex array
functions is a complex array one.
2006-01-09 17:20:19 +01:00
Robert Shearman
c96e102fff rpcrt4: Compute variance for complex arrays 2006-01-06 21:07:27 +01:00
Robert Shearman
3180de6a98 rpcrt4: Call NdrStubCall2 when dealing with a pure interpreted stub
that has no dispatch table.
2006-01-06 21:07:20 +01:00
Robert Shearman
be77b87600 rpcrt4: Implement NdrClientCall2 and NdrServerCall2. 2006-01-05 12:19:05 +01:00
Robert Shearman
03060551d6 rpcrt4: Implement callback conformance. 2006-01-03 12:07:17 +01:00
Robert Shearman
196829663a rpcrt4: Fix race condition in RpcServerListen.
The DontWait parameter is used for forcing the function not to wait
for the server to finish.
2006-01-03 12:07:04 +01:00
Robert Shearman
68fcd5d8f7 Add a function to retrieve the MIDL_SERVER_INFO struct from an object. 2005-11-29 10:42:04 +01:00
Robert Shearman
4a76473965 The CLSID can be substituted by an IID present in one of the proxy
file infos in NdrDllGetClassObject.
2005-11-29 10:41:55 +01:00
Robert Shearman
96a8f8edda Return the correct error code from NdrProxyErrorHandler. 2005-11-29 10:41:45 +01:00
Robert Shearman
bb90b3e3cc Raise exceptions on failures.
Replace references of pStubMsg->BufferEnd with RpcMsg->Buffer +
pStubMsg->BufferLength.
Fix buffer calculation when no interface data is marshaled to the
stream.
2005-11-29 10:41:34 +01:00
Robert Shearman
552f18211d Fix the overflow check to not depend on pStubMsg->BufferStart and
pStubMsg->BufferEnd being valid, because they aren't filled in when
using MIDL-generated server stubs.
Don't set the pointer to NULL on unmarshaling because we may want to
unmarshal the value to an existing pointer instead of allocating a new
one.
2005-11-29 10:41:17 +01:00
Ge van Geldorp
1a1583a364 Match PSDK STATUS_* definitions. 2005-11-28 17:32:54 +01:00
Robert Shearman
386c3a5819 Make sure to fill out the MIDL_STUB_MESSAGE structure in
NdrSendReceive like we do in NdrProxySendReceive.
2005-11-28 11:31:04 +01:00
Robert Shearman
d9896dec47 Implement conformant varying array functions. 2005-11-28 11:30:32 +01:00
Robert Shearman
bc16c66736 Implement conformant struct functions. 2005-11-28 11:30:12 +01:00
Robert Shearman
d42ff35087 Implement FC_STRUCTPAD2 for complex types. 2005-11-28 11:28:45 +01:00
Robert Shearman
5ed6dc2c1b Add functions for marshaling base types (ints, floats, etc.). 2005-11-28 11:24:21 +01:00
Robert Shearman
fc17683f7d Extend conformance computation function to also compute variances.
MSDN suggests that conformance and variance are pretty much the same,
but there may be some subtleties to it.
2005-11-28 11:16:44 +01:00
Robert Shearman
b73a4a9528 Fix NdrConformantArrayBufferSize to include the size of the
conformance value.
Make NdrConformantArrayMemorySize do something more useful, like
actually return the required memory.
Conformance offset can be negative and should only be two bytes.
2005-11-28 10:58:40 +01:00
Robert Shearman
a1758ed6e0 We should always allocate in NdrConformantStringUnmarshal if the
memory pointer is NULL.
2005-11-28 10:39:10 +01:00
Alexandre Julliard
0ec7e1a591 Renamed all .cvsignore files to .gitignore. 2005-11-26 13:10:33 +01:00
Vincent Béron
f9a27638f5 Mark some functions as implemented in the spec files. 2005-11-21 11:58:49 +00:00
Huw Davies
c7462e431f Marshal enums. 2005-10-31 21:05:00 +00:00
Huw Davies
c4e8f06375 Stubs for NdrStubForwardingFunction and NdrCStdStubBuffer2_Release
along with a few related defines.
2005-10-26 13:56:00 +00:00
Alexandre Julliard
7e22be4d84 We are no longer generating .dbg.c files. 2005-09-29 10:35:58 +00:00
Robert Shearman
b3a4b59668 Fix ref-counting rules to match native DCOM Dlls. 2005-09-18 11:10:37 +00:00
Alexandre Julliard
20a1a203c6 Use a more portable scheme for storing the name of a critical
section.
2005-09-09 10:19:44 +00:00
Ge van Geldorp
94dc00c558 Fix NdrServerContextMarshall prototype. 2005-09-08 11:02:38 +00:00
Mike McCormack
d168219849 Fix gcc 4.0 warnings. 2005-09-06 10:26:13 +00:00
Robert Shearman
0aef679535 - Implement most of the details around unmarshalling of an object
pointer.
- Fix allocation scheme in NdrConformantArrayUnmarshal to allocate if
  *ppMemory is NULL, like complex struct and user type unmarshalling.
2005-09-02 11:19:26 +00:00
Mike McCormack
4a5378efcd Fix some gcc 4.0 warnings. 2005-08-30 08:56:35 +00:00
Alexandre Julliard
cc4da88563 Explicitly import kernel32 in tests that use it. 2005-08-27 09:27:09 +00:00
Alexandre Julliard
d37f0abf07 Don't prefix the functions DllCanUnloadNow, DllGetClassObject and
Dll(Un)RegisterServer with the dll name so that the compiler can check
the prototypes.
2005-08-08 17:35:28 +00:00
Robert Shearman
037bbdaf24 Add stubs for NdrMapCommAndFaultStatus, conformant string marshaling
and context handle functions.
2005-08-03 14:55:57 +00:00
Robert Shearman
c9e4ef73d2 Don't free previous buffer in NdrGetBuffer. 2005-08-03 14:55:05 +00:00
Stefan Huehner
4f82e547d7 Fix some missing-declarations warnings. 2005-07-24 17:11:59 +00:00
Francois Gouget
c995331d27 Fix the NdrVaryingArrayUnmarshall prototype (reported by
winapi_check).
2005-07-22 09:03:42 +00:00
Robert Shearman
b0b3080b2d IRpcStubBuffer_Disconnect can be called more than once. 2005-07-19 19:12:54 +00:00
Robert Shearman
8c02f6367e Add stubs for most of the NDR marshaling functions. 2005-07-18 13:14:05 +00:00
Mike McCormack
bda7ace2e9 Interlocked LONG* gcc warning fixes. 2005-07-13 11:59:15 +00:00
Stefan Huehner
2440dcfe88 Fix -Wmissing-declarations warnings. 2005-07-05 12:49:14 +00:00
Mike McCormack
b8fc783be2 Avoid warnings in generated tests by casting sizeof(x) to an int. 2005-07-03 11:23:30 +00:00
Francois Gouget
02c25a8981 Assorted spelling fixes. 2005-06-30 18:19:33 +00:00
Alexandre Julliard
f84401aa17 Sort entry points in the same order as Windows. 2005-06-23 09:57:11 +00:00
Stefan Huehner
9213d56ae0 Make some function static. 2005-06-20 15:35:54 +00:00
Robert Shearman
ff4ba9573c Fix an RPC server startup race introduced by me. 2005-06-08 18:32:30 +00:00