Commit Graph

532 Commits

Author SHA1 Message Date
Rob Shearman 85e28ae33d rpcrt4: Set the AI_PASSIVE flag to getaddrinfo in rpcrt4_ip_tcp_open so that the bound-to port is connectable from other machines. 2006-10-31 21:42:32 +01:00
Rob Shearman 3ed6a201c2 rpcrt4: Improve the debug messages for failures in rpcrt4_ip_tcp_open. 2006-10-31 21:42:25 +01:00
Rob Shearman 828c733f72 rpcrt4: Set the socket back to blocking in rpcrt4_conn_tcp_handoff as
the read and write function for the protseq assume that syscalls will block.
2006-10-31 21:42:17 +01:00
Rob Shearman e2e05d0493 rpcrt4: Fix a typo in rpcrt4_ip_tcp_open that would cause the function
to go into an infinite loop if getaddrinfo returned more than one entry.
2006-10-31 21:41:38 +01:00
Rob Shearman 593d0fbac0 rpcrt4: Convert the named pipe server code to look directly into the
connection to get at the wait handles, instead of using
get_connect_wait_handle which isn't generic enough to be used for
other protocols.
Remove the unneeded get_connect_wait_handle function from the connection 
operations function list.
2006-10-31 21:41:29 +01:00
Rob Shearman 7553a8990c rpcrt4: Eliminate the extra thread used for RPC over TCP/IP servers by adding socket-specific server protseq functions. 2006-10-31 21:41:07 +01:00
Rob Shearman 709b536f0c rpcrt4: The allocation hint in request and response packets is just that - a hint.
It is not an error if the stub data exceeds this size, so reallocate the 
buffer with the newly calculated size and continue.
2006-10-27 12:00:22 +02:00
Rob Shearman fbe829cbb1 rpcrt4: Don't terminate the loop on the buffer becoming filled, but when we receive a packet with the RPC_FLG_LAST flag set.
This matches what is mentioned in the DCE/RPC specification.
2006-10-27 12:00:12 +02:00
Rob Shearman 28d3bd3e42 rpcrt4: Fix RPCRT4_Receive to accept authentication verifier data on any packets, not just bind packets. 2006-10-27 12:00:05 +02:00
Rob Shearman c3918d9be4 rpcrt4: Move transport-specific server functions to rpc_transport.c. 2006-10-25 20:21:41 +02:00
Damjan Jovanovic 48ca62185b rpcrt4: Added support for RPC TCP servers. 2006-10-20 14:46:55 +02:00
Robert Shearman 2f6e643d56 rpcrt4: Add a critical section to protect the connection list in each
protseq to avoid taking the process-wide server_cs in the hot path for
each protocol.
2006-10-16 19:58:17 +02:00
Robert Shearman 9ea03d7077 rpcrt4: Convert the protseq list into a standard Wine list. 2006-10-16 19:57:01 +02:00
Robert Shearman 1ceeb058e3 rpcrt4: Abstract out the way incoming connections are waited for so that we no longer need to wait on Win32 handles. 2006-10-16 19:56:38 +02:00
Robert Shearman 92c3979433 rpcrt4: Rename protseq_ops to connection_ops to reflect the fact that
the functions operate on an RpcConnection object, not an
RpcServerProtseq object.
2006-10-16 19:55:37 +02:00
Robert Shearman e906424178 rpcrt4: Create a server thread for each protseq. 2006-10-16 19:44:42 +02:00
Michael Stefaniuc 56b87f3a0f janitorial: Remove redundant NULL checks before calling HeapFree wrappers. 2006-10-16 10:52:48 +02:00
Francois Gouget 4794dc0e38 rpcrt4: Add RPC_CSTR, RPC_WSTR and update the prototypes accordingly. 2006-10-13 11:54:58 +02:00
Ge van Geldorp d642e11438 winapi_test: Regenerate tests.
Remove structs from test list which have preprocessor directives in
their definitions (winapi_test can't handle that).
2006-10-11 12:12:21 +02:00
Michael Stefaniuc 14c551bc3a rpcrt4/tests: Win64 printf format warning fixes. 2006-10-09 12:44:16 +02:00
Francois Gouget 82babbee0b Add missing '\n's to Wine traces. 2006-10-05 17:46:48 +02:00
Robert Shearman 2324aeec33 rpcrt4: Use I_Rpc{Allocate, Free} instead of Heap{Alloc, Free} as that
the former are exported by rpcrt4 seemingly to allow callers of tower
functions to free the allocated memory.
2006-10-03 16:14:57 +02:00
Robert Shearman 7dab87e2e9 rpcrt4: RpcBindingCopy is implemented. 2006-10-03 16:14:49 +02:00
Robert Shearman b9423076ba rpcrt4: Don't use HEAP_ZERO_MEMORY when most of the fields will be initialised to non-zero values. 2006-10-03 16:14:47 +02:00
Francois Gouget 1011bc47bf rpcrt4: Don't return void values. This fixes Visual C++ warnings. 2006-10-02 11:54:43 +02:00
Francois Gouget 68e84a7a53 Add missing '\n's to ok() calls. 2006-09-29 17:53:39 +02:00
Michael Stefaniuc 85ce5117c5 Add a WINE_NO_LONG_INT define to many makefiles to ease the transition of DWORD/LONG/ULONG from long to int. 2006-09-29 16:08:30 +02:00
Thomas Weidenmueller bc0f9c49b0 rpcrt4: Fix RpcMgmtSetServerStackSize prototype. 2006-09-28 14:03:50 +02:00
Andrew Talbot 8221beb225 rpcrt4: Cast-qual warnings fix. 2006-09-26 11:40:52 +02:00
Andrew Talbot 3f123e51bf rpcrt4: Cast-qual warnings fix. 2006-09-26 11:40:47 +02:00
Andrew Talbot 269f77d872 rpcrt4: Cast-qual warnings fix. 2006-09-26 11:40:41 +02:00
Andrew Talbot 7147f79153 rpcrt4: Cast-qual warnings fix. 2006-09-26 11:40:33 +02:00
Alexandre Julliard 32ab895e46 makefiles: Generate the dependencies line to avoid some code duplication. 2006-09-14 09:38:16 +02:00
Francois Gouget 06f9532dda Assorted spelling fixes. 2006-09-08 11:04:53 +02:00
Robert Shearman a6e545a27c rpcrt4: Raise an exception if IRpcChannelBuffer_GetBuffer fails.
Make StdProxy_GetIID and StdProxy_GetChannel return void.
Don't bother checking for This and pRpcChannelBuffer being NULL as 
native doesn't.
2006-09-07 11:42:05 +02: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 ada61620de rpcrt4: Make the reference counting in the standard proxy thread-safe. 2006-09-07 10:19:38 +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 3535b70a0b rpcrt4: Remove some unused code. 2006-09-07 10:18:48 +02:00
Robert Shearman 5515633517 rpcrt4: Rename ndr_midl.c to ndr_clientserver.c to more accurately
idenitfy what the code contained does - it is a number of helpers for
generated client/server code.
2006-09-07 10:18:31 +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 d28698dd73 rpcrt4: Add a test for IRpcStubBuffer_Connect on a delegated stub.
This shows that we have a vtbl ptr at (void**)This-2 that is passed to
the base interface's IRpcStubBuffer_Connect.  This vtbl should
presumably forward calls to the real object's vtbl.  We can't simply
pass the real object to the base interface's stub, as the real
object's QI may not provide us with the base interface.
2006-08-29 12:26:31 +02:00
Huw Davies 161f60071e rpcrt4: Add a helper function to create a stub. 2006-08-29 12:26:22 +02:00
Alexandre Julliard 5cf75e615a makefiles: Only run test and documentation targets in directories that need them. 2006-08-28 13:37:44 +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