Rob Shearman
8aeb2858e4
rpcrt4: Add a reference to the binding object in I_RpcNegotiateTransferSyntax and release the reference in I_RpcFreeBuffer.
...
This is needed because a context binding handle could be released on
unmarshall, but it still needs to stay valid until the binding handle is
no longer being used.
Re-use the previously unused RPCRT4_ExportBinding function as
RPCRT4_AddRefBinding and rename RPCRT4_DestroyBinding to
RPCRT4_ReleaseBinding to show that it's purpose is to release a
reference count and destroy if necessary, not always destroy.
2008-04-01 19:11:00 +02:00
Rob Shearman
2badb4faea
rpcrt4: Pass the SPN input to RpcBindingSetAuthInfoA/W into InitializeSecurityContextW instead of AcquireCredentialsHandleA/W.
2008-01-23 20:45:52 +01:00
Rob Shearman
5f077bab07
rpcrt4: Implement asynchronous RPC support.
2008-01-21 12:41:51 +01:00
Rob Shearman
51c051c0c4
rpcrt4: Keep a track of server context handles allocated during processing of a request.
...
Release them after processing of a request has finished to avoid a slow
memory leak if the association isn't released for ages.
2007-12-31 17:13:55 +01:00
Rob Shearman
1cb7df8a98
rpcrt4: Implement I_RpcGetCurrentCallHandle.
2007-12-18 19:48:19 +01:00
Rob Shearman
737510eeb6
rpcrt4: Move association code into a separate file.
2007-12-17 11:59:18 +01:00
Rob Shearman
22f530c835
rpcrt4: Make a server association when a bind packet is received in the server.
...
Support handing out association group IDs.
2007-12-17 11:59:13 +01:00
Rob Shearman
a51486c657
rpcrt4: Implement RpcCancelThread for the ncacn_ip_tcp protocol sequence.
2007-11-13 13:34:50 +01:00
Andrew Talbot
fa3d623882
rpcrt4: Constify some variables.
2007-08-20 11:56:05 +02:00
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