Commit Graph

33 Commits

Author SHA1 Message Date
Rob Shearman c6dc14d81b rpcrt4: Make binding to an interface a function of RpcAssoc instead of
binding handles, since binding requires information from the
association and not from the binding handle.
2007-07-13 12:27:17 +02:00
Rob Shearman 680e35643d rpcrt4: Remove the unused AuthInfo field from the RpcAssoc structure and Used from RpcConnection. 2007-06-27 12:32:42 +02:00
Rob Shearman cbafe663b0 rpcrt4: Try a lot harder to resuse existing connections by comparing inside the RpcQualityOfService and RpcAuthInfo objects.
Store a copy of the SEC_WINNT_AUTH_IDENTITY structure passed in to
RpcBindingSetAuthInfo(Ex) to enable us to do this for RpcAuthInfo objects.
2007-06-25 23:21:54 +02:00
Rob Shearman 0ebcacca39 rpcrt4: Store the assoc_group_id field returned from the bind_ack packet and use it when creating further connections in the association group. 2007-06-25 23:21:53 +02:00
Rob Shearman 763fe63213 rpcrt4: Use the correct authorization trailer length using information from the security provider.
Previously it was hardcoded to 16, so only the NTLM provider would work correctly.
2007-03-27 13:00:00 +02:00
Rob Shearman 7abb647cd3 rpcrt4: Retrieve the maximum token length from the security provider rather than using a hardcoded and rather small limit. 2007-03-27 12:41:54 +02:00
Rob Shearman 7e061e4f64 rpcrt4: Make some parameters of non-exported functions const. 2007-03-27 12:39:18 +02:00
Rob Shearman adb7cca85c rpcrt4: Implement associations which are intermediary objects that track the relationship between the client and a given endpoint on the server.
Use these to encapsulate the connection pool so that the lifetimes of 
connections are properly handled again.
2007-03-27 12:39:05 +02:00
Andrew Talbot 3bc14d9110 rpcrt4: Declare some functions static. 2007-01-25 12:04:18 +01:00
Rob Shearman 399844e9f6 rpcrt4: RPCRT4_strdupWtoA and RPCRT4_strdupAtoW don't change the input string, so make the input const. 2007-01-25 12:00:13 +01:00
Rob Shearman 961455c7f0 rpcrt4: Stash away NetworkOptions passed in from the binding string so that transports can look at the string if needed. 2007-01-25 12:00:10 +01:00
Rob Shearman 4b79a0252a rpcrt4: Track the security quality of service settings for bindings and connections. 2007-01-22 12:01:54 +01:00
Rob Shearman 8b6c30ab4b rpcrt4: Open the endpoint from the caller of RpcServerUseProtseq* instead of the protseq server thread.
This allows errors to be returned to the caller and to create more than 
one connection for an endpoint.
2006-11-09 10:36:47 +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
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
Alexandre Julliard c32dc6744c rpcrt4: Make the protseq_ops structure constant. 2006-06-09 13:12:58 +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 37364b836f rpcrt4: Add functions for generating and parsing the upper floors in endpoint-mapper towers for different transports. 2006-06-02 11:24:03 +02:00
Jonathan Ernst 360a3f9142 Update the address of the Free Software Foundation. 2006-05-23 14:11:13 +02:00
Robert Shearman 217ec275b8 rpcrt4: Store non-connection-specific authentication information in a ref-counted structure that is shared between connections and bindings. 2006-05-18 10:36:07 +02:00
Robert Shearman 5067ea70c0 rpcrt4: Increment the call id field of the request header.
This is necessary for compatibility with MS/RPC servers.
2006-05-18 10:34:33 +02:00
Mike McCormack 336e67e2d1 rpcrt4: Implemented NTLM authentication for rpcrt4 connections. 2006-05-16 12:40:13 +02:00
Mike McCormack 87ddd7b53a rpcrt4: Hide the details of the rpc transport mechanism. 2006-04-21 11:32:44 +02:00
Mike McCormack 83109e4937 rpcrt4: Abstract RPCRT4_SpawnConnection. 2006-04-21 11:32:29 +02:00
Mike McCormack fe99f330ab rpcrt4: Abstract the transport layer functionality. 2006-04-20 19:48:15 +02:00
Mike McCormack 5f6ac9c484 rpcrt4: Use rpcrt4_conn_read in RPCRT4_OpenBinding. 2006-04-19 19:17:42 +02:00
Mike McCormack bda7ace2e9 Interlocked LONG* gcc warning fixes. 2005-07-13 11:59:15 +00:00
Filip Navara c5580b0355 Make RPCRT4 use Windows compatible protocol (DCE v5.0) for
communication.
2004-04-26 23:33:39 +00:00
Daniel Marmier 7e0ddbc60f Fixed warnings with gcc option "-Wwrite-strings". 2003-10-07 22:54:17 +00:00
Ove Kaaven 8e38233736 Implemented simple caching of client connections. 2003-04-19 20:06:42 +00:00
Ove Kaaven def211c4c9 For better concurrency, separate the connections from the bindings. 2003-02-19 03:44:35 +00:00
Alexandre Julliard d77294a8ec Authors: Greg Turner <gmturner007@ameritech.net>, Ove Kaaven <ovek@transgaming.com>
- preliminary implementation of endpoint-mapping via a new on-demand
  server-ish process
- more header fixups
- (re)implement RpcEpRegisterA, RpcEpUnregister, and
  RpcEpResolveBinding using the new rpcss functionality
- update the todo list in rpcrt4_main.c a bit
- many beautifications and touch-ups
- command-line configurable timeout
- micro-client imbedded in np_server.c
2002-12-02 21:17:04 +00:00
Ove Kaaven 9b239925a9 Implemented RpcBindingInqObject, RpcBindingSetObject,
RpcBindingVectorFree, RpcBindingToStringBindingA/W,
RpcBindingFromStringBindingA/W, RpcStringBindingParseA/W,
I_RpcBindingSetAsync, RpcStringBindingComposeA/W, RpcBindingFree,
RPCStringFreeW, UUIDHash, UuidToStringW, and associated junk.
2002-10-07 21:49:49 +00:00