Rob Shearman
7ad36eabfc
rpcrt4: Add stubs for RpcMgmtSetCancelTimeout and RpcCancelThread.
2007-11-07 11:57:25 +01:00
Rob Shearman
ebe885d782
rpcrt4: Add a stub for RpcErrorStartEnumeration.
2007-11-07 11:57:20 +01:00
Dan Hipschman
a0ac63961d
widl: Don't rely on type_memsize to return 0 for all conformant arrays.
2007-11-06 13:02:56 +01:00
Rob Shearman
04dc115b54
rpcrt4: Handle FC_IGNORE in the base type functions.
2007-11-05 15:06:06 +01:00
Dan Hipschman
8d15820f79
widl: Handle pointers to conformant arrays (e.g., "[size_is(, n)] int **p; ").
2007-11-05 13:24:37 +01:00
Dan Hipschman
8caa325eb7
rpcrt4: Initialize allocated pointers to NULL in PointerUnmarshall.
...
This patch initializes allocated pointers in PointerUnmarshall since later
code checks the value for NULL (specifically, NdrConformantArrayUnmarshall).
2007-11-05 13:24:36 +01:00
Dan Hipschman
eaffc0a0da
rpcrt4/tests: Initialize memory in the get_name test.
...
This initializes the memory for an [in] parameter.
2007-11-05 13:24:36 +01:00
Rob Shearman
c4a1a081a9
rpcrt4: Factorise out the argument processing from NdrStubCall2 into two functions.
2007-11-05 13:24:36 +01:00
Rob Shearman
83bc80ada0
rpcrt4: Move some type definitions from ndr_stubless.c to ndr_stubless.h.
2007-11-05 13:24:36 +01:00
Rob Shearman
3eac5b4e59
rpcrt4: Add a small bit of documentation as to what NdrStubCall2 does.
2007-11-05 13:24:36 +01:00
Rob Shearman
18c16a8027
rpcrt4: Add a test for the pointers in [in,out] pointer structs not changing when the pointers aren't NULL.
2007-11-02 12:37:35 +01:00
Gerald Pfeifer
826a6d09d4
rpcrt4: Initialize variable to avoid compiler warning.
2007-10-25 12:48:01 +02:00
Dan Hipschman
ff8930f2bf
widl: Fix problems with variable-size user types.
2007-10-22 13:47:56 +02:00
Dan Hipschman
1d0f9378bc
widl: Detect conformant arrays of user types correctly.
2007-10-18 12:09:23 +02:00
Dan Hipschman
e219087c65
rpcrt4/tests: Free memory from one of the tests.
2007-10-15 16:55:31 +02:00
Dan Hipschman
acfde97b9e
rpcrt4, widl: Make pointer layouts compatible with windows; fix conformant array tests.
2007-10-11 16:24:28 +02:00
Dan Hipschman
d00ff2ed58
widl: Make structs containing user types bogus; fix square_test_us test failure.
2007-10-09 11:39:26 +02:00
Dan Hipschman
e0b209815d
rpcrt4/tests: Make server.idl compatible with MIDL.
2007-10-09 11:39:21 +02:00
Alexandre Julliard
b7df430831
rpcrt4/tests: Remove static keywords that hide test failures.
2007-09-27 20:13:21 +02:00
Dan Hipschman
723c8bacfa
widl: Fix string codes in pointer descriptions.
2007-09-27 10:09:38 +02:00
Dan Hipschman
347f2a2da2
widl: Fix top-level conformant arrays with pointer attributes.
2007-09-27 10:09:32 +02:00
Dan Hipschman
767a1f26f6
widl: Handle top-level conformance for complex arrays.
2007-09-20 14:27:29 +02:00
Dan Hipschman
dbfabf68a2
widl: Respect pointer attributes better.
2007-09-20 14:27:25 +02:00
Dan Hipschman
132f06cd48
widl: Implement complex arrays.
2007-09-19 11:39:09 +02:00
Dan Hipschman
8df79f0c99
widl: Implement pointer descriptions for complex structures.
2007-09-19 11:38:28 +02:00
Rob Shearman
f67a6adf4e
rpcrt4: Implement RpcSmDestroyClientContext and RpcSsDestroyClientContext.
2007-09-19 11:36:41 +02:00
Rob Shearman
5191498564
rpcrt4: Fix a copy-and-paste error in RpcAuthInfo_Release that caused a double free of memory.
2007-09-19 11:36:28 +02:00
Dan Hipschman
5e84eb9a47
widl: Add padding to the end of complex structures.
2007-09-14 14:43:13 +02:00
Rob Shearman
2eb0e1ce21
rpcrt4: Fix a trace in RPCRT4_SecurePacket.
2007-09-12 11:33:11 +02:00
Rob Shearman
e0e27e4dfb
rpcrt4: Correctly handle the failure of RPCRT4_SecurePacket in RPCRT4_Receive.
2007-09-12 11:33:10 +02:00
Dan Hipschman
ba54c455fb
widl: Allow size_is on strings.
2007-09-10 15:29:46 +02:00
Dan Hipschman
62fb623e14
widl: Implement NDR for struct field alignment.
2007-09-10 15:29:46 +02:00
Dan Hipschman
3d036da6d3
widl: Fix top-level and callback conformances.
2007-09-10 15:29:46 +02:00
Andrew Talbot
04e0986d60
rpcrt4: Constify some variables.
2007-08-22 11:58:13 +02:00
Andrew Talbot
fa3d623882
rpcrt4: Constify some variables.
2007-08-20 11:56:05 +02:00
Rob Shearman
8a87d916b4
rpcrt4: Convert bind ack and nack reject reasons into RPC status codes when binding.
2007-07-23 11:48:13 +02:00
Dmitry Timoshkov
12d3905427
rpcrt4: Fix the buffer bounds check.
2007-07-19 12:03:50 +02:00
Rob Shearman
d212adbf10
rpcrt4: Add some more RPC to NCA status code mappings.
...
Add RPC_S_SEC_PKG_ERROR to the list of "hard" errors.
2007-07-18 12:56:16 +02:00
Rob Shearman
2703059933
rpcrt4: Never allocate memory for the discriminant in union_arm_unmarshall as the memory is part of the union and has already been allocated.
2007-07-16 22:46:59 +02:00
Rob Shearman
b44c16cc8d
rpcrt4: Check to make sure there is enough data in the buffer during unmarshalling, so that the code doesn't try to read beyound the end of the buffer.
2007-07-16 22:46:55 +02:00
Rob Shearman
686c0f094c
rpcrt4: Even though FC_ENUM16 is an unsigned type, the highest allowable value that can be marshalled is SHRT_MAX, not USHRT_MAX.
2007-07-16 22:46:47 +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
69eeb8b1b7
rpcrt4: Return a fault packet if the proc num exceeds the index of the last function available for the interface.
2007-07-05 19:53:53 +02:00
Rob Shearman
234b8cbe0a
rpcrt4: Call RPCRT4_Send directly from PKT_RECEIVE handler in server.
...
Remove the WINE_RPCFLAG_EXCEPTION hack to pass exception information to
I_RpcSend.
2007-07-05 19:53:47 +02:00
Rob Shearman
9c77d7ac1f
rpcrt4: Translate between NCA and RPC status codes.
2007-07-05 19:53:29 +02:00
Rob Shearman
67c8fa58ec
rpcrt4: Store the assoc_group_id in the connections.
2007-06-27 12:32:43 +02:00
Rob Shearman
9787f12589
rpcrt4: Make pointers to RPCRT4_BuildBindHeader and RPCRT4_BuildBindAckHeader const.
2007-06-27 12:32:43 +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
Dan Hipschman
46222aee6e
widl: Allow enums as union switch types.
2007-06-26 11:59:53 +02:00
Dan Hipschman
ea7b1694de
rpcrt4: Allow enums as union switch types.
2007-06-26 11:59:43 +02:00
Dan Hipschman
076a6206ff
rpcrt4/tests: Wrap a try/except block around tests.
2007-06-26 11:59:32 +02:00
Dan Hipschman
512c36cae6
widl: Get simple enums working.
2007-06-26 11:59:02 +02:00
Rob Shearman
545c2a95f6
rpcrt4: Dereference the pointer passed to the marshaling/unmarshaling/sizing routines in complex types for interface pointers.
2007-06-25 23:21:55 +02:00
Rob Shearman
fc124eca6e
rpcrt4: Implement marshalling, unmarshalling and buffer sizing for the context handle type.
2007-06-25 23:21:55 +02:00
Rob Shearman
d36f02eaa9
rpcrt4: Implement marshalling/unmarshalling for the range NDR type.
2007-06-25 23:21:54 +02:00
Rob Shearman
4174255e0c
rpcrt4: Set PointerBufferMark to the buffer location immediately after the non-pointer data in complex struct and array marshaling and unmarshaling to keep to the DCE/RPC specification.
2007-06-25 23:21:54 +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
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
2de3d31a7a
rpcrt4: Translate STATUS_ACCESS_VIOLATION exceptions caught whilst executing the stub function to ERROR_NOACCESS to prevent confusing exceptions occurring in the client.
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
Rob Shearman
0d05685b68
rpcrt4: Return a fault packet if the interface/object pair in a request packet aren't registered.
2007-06-25 23:21:52 +02:00
Rob Shearman
903fb72b21
rpcrt4: Add a STUBLESS_FREE phase for freeing the allocated memory in the server function.
2007-06-25 23:21:52 +02:00
Rob Shearman
a1dca20dd7
rpcrt4: Add support for ServerAllocSize parameters.
2007-06-25 23:21:52 +02:00
Rob Shearman
73c31ed309
rpcrt4: Don't use add on the sizes of array elements to an open-ended structure; use FIELD_OFFSET with the array index instead.
2007-06-25 23:21:52 +02:00
Dan Hipschman
4e8c8d03e5
widl: Add tests for arrays of pointers.
2007-06-21 13:10:46 +02:00
Rob Shearman
0f826e7cc1
rpcrt4: Use the offset to array data in embedded pointer format descriptions.
2007-06-20 13:08:30 +02:00
Dan Hipschman
d2c15ed01b
rpcrt4: Fix typo in union buffer size calculation.
2007-06-19 11:46:02 +02:00
Dan Hipschman
6fd05b1dc7
rpcrt4: Fix bug calculating union switch type.
2007-06-19 11:45:51 +02:00
Dan Hipschman
b09b917a5c
rpcrt4: Remove inaccurate comments.
2007-06-19 11:45:44 +02:00
Dan Hipschman
08c846a9da
rpcrt4: Add encapsulated union tests.
2007-06-19 11:45:11 +02:00
Rob Shearman
0871ab9130
rpcrt4: Implement encapsulated union NDR functions.
2007-06-18 13:58:09 +02:00
Dan Hipschman
3325020636
widl: Handle wire_marshal pointer attributes.
2007-06-14 11:36:05 +02:00
Dan Hipschman
2bc8808be1
widl: Test structure argument marshalling.
2007-06-14 11:35:55 +02:00
Dan Hipschman
c0982b42c5
widl: Handle wire_marshal types.
2007-06-14 11:35:44 +02:00
Dan Hipschman
88c8128704
widl: Simplify correlation descriptor code.
2007-06-12 11:13:30 +02:00
Dan Hipschman
8f689ee023
widl: Implement conformant structure handling.
2007-06-06 12:13:35 +02:00
Dan Hipschman
978b4d4f4e
widl: Represent arrays with type_t.
2007-06-06 12:13:16 +02:00
Dan Hipschman
e5c8a6eb5d
rpcrt4: Fix build of test on Solaris by renaming a variable.
2007-05-31 13:07:13 +02:00
Francois Gouget
8d7ad785e3
rpcrt4/tests: Fix a Visual C++ double to float conversion warning.
2007-05-29 13:46:19 +02:00
Francois Gouget
f27a7153a5
rpcrt4/tests: Fix signed/unsigned and 32/64bit issues with the wiredatalen parameter.
2007-05-29 13:46:14 +02:00
Dmitry Timoshkov
3c9e7a7f33
wine: Switch to using 'long' for INT_PTR type for 64-bit compatibility.
2007-05-25 20:37:56 +02:00
Dan Hipschman
8f7a5d63ec
widl: Allow types that reference themselves.
2007-05-25 19:36:12 +02:00
Dan Hipschman
00ce411231
widl: Handle pointers in unions.
...
Unify write_pointers with write_embedded_types, and handle pointers in
unions. Includes tests.
2007-05-25 19:35:29 +02:00
Dan Hipschman
b4e8073f8c
rpcrt4: Fix test typo.
2007-05-25 19:35:02 +02:00
Dan Hipschman
c5aaadc4c8
widl: Lay framework for unions with simple unions working.
2007-05-21 12:40:58 +02:00
Andrew Talbot
d5d056ef75
rpcrt4: Exclude unused headers.
2007-05-18 14:11:22 +02:00
Dan Hipschman
52ca3ebada
widl: Write some structures to the type format string on the fly.
2007-05-16 13:33:17 +02:00
Dan Hipschman
d9c120490f
widl: Handle pointers fields that point to structures.
2007-05-14 14:24:16 +02:00
Dan Hipschman
ef433e2792
widl: Remove var_t's ptr_level field and start write_pointers.
2007-05-11 12:33:27 +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
Dan Hipschman
ba17c25e62
rpcrt4: Add a testcase for RPCs with fixed-size arrays.
2007-04-26 16:12:23 +02:00
Dan Hipschman
cc09b0c19c
rpcrt4: Add tests for RPC and widl generated code.
2007-04-26 15:48:13 +02:00
Dan Hipschman
6c5e78fe03
rpcrt4: Add tests for RpcServerListen and friends.
2007-04-13 11:42:42 +02:00
Francois Gouget
0081b430e1
Assorted spelling and English fixes.
2007-04-03 11:23:12 +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