Commit Graph

44 Commits

Author SHA1 Message Date
Alexandre Julliard
334f3add29 rpcrt4: Implement proxy/stub delegation for x86_64. 2010-04-07 13:09:46 +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
3c9571df78 rpcrt4: Add support for proxy delegation. 2009-06-03 16:51:15 +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
23e70e00ed rpcrt4: Internal functions don't need to be WINAPI. 2009-05-27 13:04:33 +02:00
Michael Stefaniuc
e3bb1c8243 rpcrt4: Remove superfluous pointer casts. 2009-02-16 16:01:37 +01:00
Alexandre Julliard
83b6c8a5fa rpcrt4: Convert source files to utf-8. 2008-10-18 19:20:44 +02:00
Rob Shearman
62a1beebbf rpcrt4: Don't call VirtualFree with MEM_RELEASE and non-zero size.
The calls fail with ERROR_INVALID_PARAMETER. Instead just call with a
zero size which performs the intended function.
2008-09-23 16:00:05 +02:00
Alexandre Julliard
ef07d83405 Include wine/port.h everywhere we use exceptions. 2008-04-29 20:18:49 +02:00
Steven Edwards
d0ddece843 rpcrt4: Correct the number of aguments for fill_method on unsupported architectures. 2008-04-21 18:32:02 +02:00
Rob Shearman
a82f4dd9b7 Don't use GetExceptionCode and GetExceptionInformation in exception filter functions.
When using native compiler exceptions, it isn't valid to use 
GetExceptionCode and GetExceptionInformation anywhere other than in the 
filter or handler blocks since it would be very hard for the compiler to 
work out where to retrieve the exception information from on the stack.

Therefore, remove the WINE_EXCEPTION_FILTER and WINE_FINALLY_FUNC macros 
which enabled GetExceptionCode, GetExceptionInformation and 
AbnormalTermination to be used inside of the functions they declared and 
fix up all callers to access the information directly.
2008-02-16 14:57:44 +01:00
Rob Shearman
9d8ebc1a24 rpcrt4: NdrStubGetBuffer shouldn't set BufferStart and BufferEnd.
These are supposed to point to the original buffer when the types were 
unmarshalled.
2007-12-14 12:23:46 +01:00
Rob Shearman
a016d7b335 rpcrt4: Handle all non-continuable exceptions in CStdStubBuffer_Invoke. 2007-12-04 13:33:10 +01:00
Rob Shearman
6dcc3fe62e rpcrt4: Put the delegating stub thunks in an executable memory page, rather than on the heap. 2007-12-04 13:32:41 +01:00
Rob Shearman
341208bf1b rpcrt4: Call IRpcChannelBuffer_GetDestCtx in NdrStubInitialize, just like we do in NdrProxyInitialize. 2007-12-04 13:32:29 +01:00
Andrew Talbot
b011a4eecd rpcrt4: Cast-qual warnings fix. 2006-11-13 12:46:53 +01:00
Michael Stefaniuc
de21efbadd rpcrt4: Win64 printf format warning fixes. 2006-11-10 11:31:59 +01:00
Huw Davies
bd9891ffed rpcrt4: Add delegating stub support. 2006-09-07 10:57:39 +02:00
Huw Davies
b058e6e729 rpcrt4: Add infrastructure to create and manage a variable sized vtbl
that will be used as the server object for delegated stubs.
2006-09-07 10:57:27 +02:00
Huw Davies
9b91307677 rpcrt4: Tests on NdrCStdStubBuffer_Release to show that we shouldn't call Disconnect.
Also call IPSFactoryBuffer_Release on the 2nd arg, rather than on This->pPSFactory.
2006-09-07 10:24:54 +02:00
Huw Davies
86aa95fd2b rpcrt4: Tidy up CStdStubBuffer_QueryInterface. 2006-09-07 10:23:00 +02:00
Huw Davies
dffd3e5034 rpcrt4: Tidy up CStdStubBuffer_AddRef,Release. 2006-09-07 10:22:35 +02:00
Robert Shearman
3e01da1838 rpcrt4: Fix NdrStubGetBuffer to use the IRpcChannelBuffer object since
IRpcChannelBuffer_GetBuffer may put extra data onto the wire for ORPC
calls.
2006-09-07 10:18:52 +02:00
Robert Shearman
583ae12233 rpcrt4: Move NdrStub* functions to cstub.c and move NdrProxy*
functions to cproxy.c since both sets of functions depend on the
implementations of the standard stubs and proxies.
2006-09-07 10:17:28 +02:00
Huw Davies
487c691dc5 rpcrt4: Tests for CStdStubBuffer_Disconnect and a tidy up of the implementation. 2006-08-23 20:10:36 +02:00
Huw Davies
f42f727f7c rpcrt4: Tests for CStdStubBuffer_Connect and fixes to make them pass. 2006-08-23 20:10:15 +02:00
Huw Davies
cadc39842b rpcrt4: Add tests for CreateStub and fix up CStdStubBuffer_Construct to match. 2006-08-23 20:10:06 +02:00
Huw Davies
6a0fccd3a9 rpcrt4: Add tests for NdrStubForwardingFunction and write a commented out implementation.
This shows that the IRpcStubBuffer for a delegated stub's base
interface is stored at (void**)This-1.
2006-08-23 20:09:52 +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
Jonathan Ernst
360a3f9142 Update the address of the Free Software Foundation. 2006-05-23 14:11:13 +02:00
Robert Shearman
b670ec83fd rpcrt4: Fill in the IRpcStubBuffer vtables for interfaces that don't
already have them filled in.
2006-01-30 14:56:07 +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
68fcd5d8f7 Add a function to retrieve the MIDL_SERVER_INFO struct from an object. 2005-11-29 10:42:04 +01:00
Huw Davies
c4e8f06375 Stubs for NdrStubForwardingFunction and NdrCStdStubBuffer2_Release
along with a few related defines.
2005-10-26 13:56:00 +00:00
Robert Shearman
b0b3080b2d IRpcStubBuffer_Disconnect can be called more than once. 2005-07-19 19:12:54 +00:00
Francois Gouget
486d020c1b Don't define COBJMACROS in objbase.h.
Update the Wine sources accordingly.
2004-10-07 03:06:48 +00:00
Alexandre Julliard
39a696a166 Removed some uses of the non-standard ICOM_THIS macro. 2004-09-06 20:34:29 +00:00
Alexandre Julliard
e37c6e18d0 Fixed header dependencies to be fully compatible with the Windows
headers (with help from Dimitrie O. Paun).
2003-09-05 23:08:26 +00:00
Ove Kaaven
6e67d46355 Fixed NdrDllRegisterProxy so it registers the key names that ole32
expects. Better debug traces (include name of interface).
2003-05-20 04:13:44 +00:00
Ove Kaaven
daffdb622a Added missing AddRef. 2003-04-19 02:49:15 +00:00
Ove Kaaven
1f5315c80f Make sure that no files except unknwn.h include wine/obj_base.h
directly.
2002-12-05 20:33:07 +00:00
Alberto Massari
d9159093a5 Avoid crashing when releasing an NdrCStdStubBuffer that had been
previously disconnected.
2002-11-08 18:52:34 +00:00
Ove Kaaven
1d5d2bd081 Implement the CStdStubBuffer methods. 2002-10-10 22:46:08 +00:00