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
62c49bdd18
rpcrt4: When an exception is raised, return the stored exception code instead of the generic RPC_S_CALL_FAILED.
2007-06-25 23:21:53 +02:00
Rob Shearman
c411d95e20
rpcrt4: Close the connection if a protocol error or certain other kinds of errors occur, instead of returning it to the connection pool.
2007-06-25 23:21:53 +02:00
Andrew Talbot
d5d056ef75
rpcrt4: Exclude unused headers.
2007-05-18 14:11:22 +02:00
Rob Shearman
35e99b50f1
rpcrt4: Print the correct values when warning about a bad frag length.
2007-04-30 12:33:19 +02:00
Rob Shearman
173590a664
rpcrt4: Fixing the using of the auth_len values the wrong way round - PKT_PRIVACY implies the packet will be encrypted, not just signed.
2007-03-28 12:14:18 +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
88295b9a02
rpcrt4: Call CompleteAuthToken if InitializeSecurityContext returned a code that says it should be called.
...
Currently, the only security provider that requires this is the Digest
one, which we don't really care about, but is supported for completeness.
2007-03-27 12:59:42 +02:00
Rob Shearman
88e9b3fad8
rpcrt4: Call InitializeSecurityContext from only one function.
...
This reduces the amount of code and ensures that the parameters passed
to it stay the same, apart from the previous context and the output
buffer description.
2007-03-27 12:42:05 +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
ca6fe3fbf2
rpcrt4: Fix a memory leak in I_RpcSendReceive caused by I_RpcReceive overwriting pMsg->Buffer.
...
(Reported by Huw Davies.)
2007-02-21 19:48:51 +01:00
Rob Shearman
b491d926d5
rpcrt4: Add documentation for the I_Rpc* RPC message functions.
2007-02-21 19:48:44 +01:00
Andrew Talbot
3bc14d9110
rpcrt4: Declare some functions static.
2007-01-25 12:04:18 +01:00
Rob Shearman
06dd3efe2f
rpcrt4: RPC_C_AUTHN_LEVEL_NONE and RPC_C_AUTHN_LEVEL_DEFAULT are
...
handled at the binding level now instead of the message level, so
remove this special handling in RPCRT4_Send.
2006-11-22 11:37:15 +01:00
Rob Shearman
8bb10f1082
rpcrt4: Use SecInvalidateHandle and SecIsValidHandle for handling RpcConnection::ctx instead of setting/comparing the field to 0.
2006-11-15 11:25:57 +01:00
Rob Shearman
51dd6f9fb8
rpcrt4: Add support for signing, verifying, encrypting and decrypting RPC packets.
2006-11-15 11:25:53 +01:00
Alexandre Julliard
e9d5e5503f
rpcrt4: Avoid a sizeof in a trace.
2006-11-10 14:29:55 +01:00
Rob Shearman
44922d29db
rpcrt4: Correctly align the results in the RPC Bind Ack packet.
2006-11-10 13:50:03 +01:00
Michael Stefaniuc
de21efbadd
rpcrt4: Win64 printf format warning fixes.
2006-11-10 11:31:59 +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
Michael Stefaniuc
56b87f3a0f
janitorial: Remove redundant NULL checks before calling HeapFree wrappers.
2006-10-16 10:52:48 +02:00
Huw Davies
3a56eca1c7
rpcrt4: Don't use a short to hold the packet length, since it can
...
result in premature termination of the send.
2006-06-20 20:35:38 +02:00
Alexandre Julliard
2a91838f0c
rpcrt4: Don't use sizeof in traces to avoid printf format warnings.
2006-06-13 14:11:28 +02:00
Robert Shearman
56386bd88c
rpcrt4: Return the status received from RPCRT4_Send in I_RpcSend instead of always returning RPC_S_OK.
2006-06-09 21:07:02 +02:00
Robert Shearman
8b56e88276
rpcrt4: Return the actual status code sent back by the server, rather than RPC_S_CALL_FAILED.
2006-05-26 20:15:44 +02:00
Jonathan Ernst
360a3f9142
Update the address of the Free Software Foundation.
2006-05-23 14:11:13 +02:00
Robert Shearman
dd362a62a1
rpcrt4: Fix copying too much data from the buffer by not taking into account the fact that auth_pad_len has been included in the fragment length.
2006-05-23 11:36:37 +02:00
Robert Shearman
e91da1458d
rpcrt4: Authentication padding should only be generated if there is authentication data.
2006-05-23 11:36:26 +02:00
Robert Shearman
0592210bcd
rpcrt4: Add the definition of RpcAuthVerifier to rpc_defs.h from the DCE/RPC spec.
...
Use it in RPCRT4_SendAuth instead of writing out the data byte-by-byte.
2006-05-20 17:31:16 +02:00
Robert Shearman
5f266c54a1
rpcrt4: Add the correct amount of auth padding to messages.
2006-05-20 14:02:51 +02:00
Robert Shearman
a2d2d4db63
rpcrt4: Update the todo lists and copyrights.
2006-05-20 14:02:24 +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
Robert Shearman
2aa52b07d6
rpcrt4: If the authorisation failed during a send then we should return ERROR_ACCESS_DENIED.
2006-05-18 10:33:50 +02:00
Mike McCormack
336e67e2d1
rpcrt4: Implemented NTLM authentication for rpcrt4 connections.
2006-05-16 12:40:13 +02:00
Mike McCormack
7b5e5b65b0
rpcrt4: Add infrastructure for send authentication data.
2006-05-15 13:56:54 +02:00
Robert Shearman
f7fa650d1b
rpcrt4: Automatically resolve the endpoint.
2006-05-08 15:36: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
71fc596a05
rpcrt4: Make RPCRT4_Send more compatible with write(2).
2006-04-19 19:15:53 +02:00
Mike McCormack
9a4abffa18
rpcrt4: Make RPCRT4_Receive more compatible with read(2).
2006-04-19 15:23:37 +02:00
Robert Shearman
a4000349f8
rpcrt4: Fix the sending of >5800 byte messages by only adding offset
...
to the buffer after the first batch of data has been written to the
pipe.
2006-01-18 11:29:38 +01: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
Robert Shearman
64280a6de4
- RpcMgmtStopServerListen should not affect auto-listen interfaces.
...
- Implement stub for RpcRevertToSelfEx.
- Change the more verbose files to use a new debug channel, "rpc."
2005-03-14 10:11:04 +00:00
Robert Shearman
b24193c344
- Add a stub implementation of RpcImpersonateClient.
...
- More tracing, particularly on error paths.
2005-02-15 20:45:37 +00:00
Michael Stefaniuc
5ad7d858e0
Do not check for non NULL pointer before HeapFree'ing it. It's
...
redundant.
2004-12-23 17:06:43 +00:00
Filip Navara
c5580b0355
Make RPCRT4 use Windows compatible protocol (DCE v5.0) for
...
communication.
2004-04-26 23:33:39 +00:00
Filip Navara
3e103dcabe
Prevent crashes in I_RpcSend on Windows XP.
2004-04-19 02:56:12 +00:00
Robert Shearman
d1d89a64a6
- Fix a bad use of HeapRealloc.
...
- Fix error return codes.
- Improve traces.
2004-02-27 04:33:41 +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
c707e23675
Initial support for RPC call failures, by catching RPC server
...
exceptions and returning simple failure packets, and throwing
exceptions on the client side when unmarshalling the failure packet.
2003-05-22 03:36:00 +00:00
Ove Kaaven
2d56c3d62d
For RPC servers, don't deallocate the RPC request packet before the
...
RPC reply packet is sent, in case marshalling the reply needs any of
the request data.
2003-05-21 18:23:06 +00:00
Ove Kaaven
def211c4c9
For better concurrency, separate the connections from the bindings.
2003-02-19 03:44:35 +00:00
Greg Turner
7ac58a4dc9
- Pull the buffer from the rpc message into the midl stub message
...
during RpcServerInitializeNew.
- Attempt to implement NdrConformantStringUnmarshall.
- More assertions.
- Comments and cleanups.
2002-10-28 23:53:23 +00:00
Greg Turner
a215f6b21a
- Clean up and add some comments.
...
- Add NDR Data representation constants.
- Propagate DataRepresentation into and out of packet headers.
- Implement NdrServerInitializeNew
2002-10-28 21:14:16 +00:00
Greg Turner
461708c142
- Use memset instead of ZeroMemory, just to be consistent with Ove's
...
code.
- Add some assertions where assumptions are made (need way more).
- Plug the binding handle into the RPC_MESSAGE during NdrGetBuffer.
- Implement NdrSendReceive.
- Attempt to support client and server bindings in I_RpcSend[Receive].
2002-10-25 21:02:02 +00:00
Ove Kaaven
0a17edf3a5
Implemented I_RpcFreeBuffer, I_RpcGetBuffer, I_RpcReceive, I_RpcSend,
...
I_RpcSendReceive; administrivia.
2002-10-10 18:55:24 +00:00