ReactOS 0.4.16-dev-1946-g52006dd
generated.c
Go to the documentation of this file.
1/* File generated automatically from tools/winapi/tests.dat; do not edit! */
2/* This file can be copied, modified and distributed without restriction. */
3
4/*
5 * Unit tests for data structure packing
6 */
7
8#define WINE_NOWINSOCK
9
10#include <stdarg.h>
11#include "windef.h"
12#include "winbase.h"
13#include "ole2.h"
14#include "rpc.h"
15#include "rpcndr.h"
16#include "rpcproxy.h"
17
18#include "wine/test.h"
19
20/***********************************************************************
21 * Compatibility macros
22 */
23
24#define DWORD_PTR UINT_PTR
25#define LONG_PTR INT_PTR
26#define ULONG_PTR UINT_PTR
27
28/***********************************************************************
29 * Windows API extension
30 */
31
32#if defined(_MSC_VER) && (_MSC_VER >= 1300) && defined(__cplusplus)
33# define _TYPE_ALIGNMENT(type) __alignof(type)
34#elif defined(__GNUC__) || defined(__clang__)
35# define _TYPE_ALIGNMENT(type) __alignof__(type)
36#else
37/*
38 * FIXME: May not be possible without a compiler extension
39 * (if type is not just a name that is, otherwise the normal
40 * TYPE_ALIGNMENT can be used)
41 */
42#endif
43
44#if defined(TYPE_ALIGNMENT) && defined(_MSC_VER) && _MSC_VER >= 800 && !defined(__cplusplus)
45#pragma warning(disable:4116)
46#endif
47
48#if !defined(TYPE_ALIGNMENT) && defined(_TYPE_ALIGNMENT)
49# define TYPE_ALIGNMENT _TYPE_ALIGNMENT
50#endif
51
52/***********************************************************************
53 * Test helper macros
54 */
55
56#define TEST_TYPE_SIZE(type, size) C_ASSERT(sizeof(type) == size);
57
58#ifdef TYPE_ALIGNMENT
59# define TEST_TYPE_ALIGN(type, align) C_ASSERT(TYPE_ALIGNMENT(type) == align);
60#else
61# define TEST_TYPE_ALIGN(type, align)
62#endif
63
64#ifdef _TYPE_ALIGNMENT
65# define TEST_TARGET_ALIGN(type, align) C_ASSERT(_TYPE_ALIGNMENT(*(type)0) == align);
66# define TEST_FIELD_ALIGN(type, field, align) C_ASSERT(_TYPE_ALIGNMENT(((type*)0)->field) == align);
67#else
68# define TEST_TARGET_ALIGN(type, align)
69# define TEST_FIELD_ALIGN(type, field, align)
70#endif
71
72#define TEST_FIELD_OFFSET(type, field, offset) C_ASSERT(FIELD_OFFSET(type, field) == offset);
73
74#define TEST_TARGET_SIZE(type, size) TEST_TYPE_SIZE(*(type)0, size)
75#define TEST_FIELD_SIZE(type, field, size) TEST_TYPE_SIZE((((type*)0)->field), size)
76#define TEST_TYPE_SIGNED(type) C_ASSERT((type) -1 < 0);
77#define TEST_TYPE_UNSIGNED(type) C_ASSERT((type) -1 > 0);
78
79
80#ifdef _WIN64
81
82static void test_pack_I_RPC_HANDLE(void)
83{
84 /* I_RPC_HANDLE */
87}
88
89static void test_pack_RPC_STATUS(void)
90{
91 /* RPC_STATUS */
95}
96
97static void test_pack_PRPC_POLICY(void)
98{
99 /* PRPC_POLICY */
104}
105
107{
108 /* RPC_AUTH_IDENTITY_HANDLE */
111}
112
114{
115 /* RPC_AUTH_KEY_RETRIEVAL_FN */
116}
117
118static void test_pack_RPC_AUTHZ_HANDLE(void)
119{
120 /* RPC_AUTHZ_HANDLE */
123}
124
125static void test_pack_RPC_BINDING_HANDLE(void)
126{
127 /* RPC_BINDING_HANDLE */
130}
131
132static void test_pack_RPC_BINDING_VECTOR(void)
133{
134 /* RPC_BINDING_VECTOR */
143}
144
145static void test_pack_RPC_IF_HANDLE(void)
146{
147 /* RPC_IF_HANDLE */
150}
151
152static void test_pack_RPC_IF_ID(void)
153{
154 /* RPC_IF_ID */
157 TEST_FIELD_SIZE (RPC_IF_ID, Uuid, 16)
158 TEST_FIELD_ALIGN (RPC_IF_ID, Uuid, 4)
160 TEST_FIELD_SIZE (RPC_IF_ID, VersMajor, 2)
161 TEST_FIELD_ALIGN (RPC_IF_ID, VersMajor, 2)
162 TEST_FIELD_OFFSET(RPC_IF_ID, VersMajor, 16)
163 TEST_FIELD_SIZE (RPC_IF_ID, VersMinor, 2)
164 TEST_FIELD_ALIGN (RPC_IF_ID, VersMinor, 2)
165 TEST_FIELD_OFFSET(RPC_IF_ID, VersMinor, 18)
166}
167
168static void test_pack_RPC_POLICY(void)
169{
170 /* RPC_POLICY */
176 TEST_FIELD_SIZE (RPC_POLICY, EndpointFlags, 4)
177 TEST_FIELD_ALIGN (RPC_POLICY, EndpointFlags, 4)
178 TEST_FIELD_OFFSET(RPC_POLICY, EndpointFlags, 4)
179 TEST_FIELD_SIZE (RPC_POLICY, NICFlags, 4)
180 TEST_FIELD_ALIGN (RPC_POLICY, NICFlags, 4)
181 TEST_FIELD_OFFSET(RPC_POLICY, NICFlags, 8)
182}
183
184static void test_pack_UUID_VECTOR(void)
185{
186 /* UUID_VECTOR */
195}
196
197static void test_pack_PRPC_CLIENT_INTERFACE(void)
198{
199 /* PRPC_CLIENT_INTERFACE */
204}
205
206static void test_pack_PRPC_DISPATCH_TABLE(void)
207{
208 /* PRPC_DISPATCH_TABLE */
213}
214
215static void test_pack_PRPC_MESSAGE(void)
216{
217 /* PRPC_MESSAGE */
222}
223
224static void test_pack_PRPC_PROTSEQ_ENDPOINT(void)
225{
226 /* PRPC_PROTSEQ_ENDPOINT */
231}
232
233static void test_pack_PRPC_SERVER_INTERFACE(void)
234{
235 /* PRPC_SERVER_INTERFACE */
240}
241
242static void test_pack_PRPC_SYNTAX_IDENTIFIER(void)
243{
244 /* PRPC_SYNTAX_IDENTIFIER */
249}
250
251static void test_pack_RPC_CLIENT_INTERFACE(void)
252{
253 /* RPC_CLIENT_INTERFACE */
259 TEST_FIELD_SIZE (RPC_CLIENT_INTERFACE, InterfaceId, 20)
260 TEST_FIELD_ALIGN (RPC_CLIENT_INTERFACE, InterfaceId, 4)
262 TEST_FIELD_SIZE (RPC_CLIENT_INTERFACE, TransferSyntax, 20)
263 TEST_FIELD_ALIGN (RPC_CLIENT_INTERFACE, TransferSyntax, 4)
264 TEST_FIELD_OFFSET(RPC_CLIENT_INTERFACE, TransferSyntax, 24)
268 TEST_FIELD_SIZE (RPC_CLIENT_INTERFACE, RpcProtseqEndpointCount, 4)
269 TEST_FIELD_ALIGN (RPC_CLIENT_INTERFACE, RpcProtseqEndpointCount, 4)
270 TEST_FIELD_OFFSET(RPC_CLIENT_INTERFACE, RpcProtseqEndpointCount, 56)
271 TEST_FIELD_SIZE (RPC_CLIENT_INTERFACE, RpcProtseqEndpoint, 8)
272 TEST_FIELD_ALIGN (RPC_CLIENT_INTERFACE, RpcProtseqEndpoint, 8)
273 TEST_FIELD_OFFSET(RPC_CLIENT_INTERFACE, RpcProtseqEndpoint, 64)
277 TEST_FIELD_SIZE (RPC_CLIENT_INTERFACE, InterpreterInfo, 8)
278 TEST_FIELD_ALIGN (RPC_CLIENT_INTERFACE, InterpreterInfo, 8)
279 TEST_FIELD_OFFSET(RPC_CLIENT_INTERFACE, InterpreterInfo, 80)
283}
284
285static void test_pack_RPC_DISPATCH_FUNCTION(void)
286{
287 /* RPC_DISPATCH_FUNCTION */
288}
289
290static void test_pack_RPC_DISPATCH_TABLE(void)
291{
292 /* RPC_DISPATCH_TABLE */
295 TEST_FIELD_SIZE (RPC_DISPATCH_TABLE, DispatchTableCount, 4)
296 TEST_FIELD_ALIGN (RPC_DISPATCH_TABLE, DispatchTableCount, 4)
297 TEST_FIELD_OFFSET(RPC_DISPATCH_TABLE, DispatchTableCount, 0)
304}
305
306static void test_pack_RPC_MESSAGE(void)
307{
308 /* RPC_MESSAGE */
314 TEST_FIELD_SIZE (RPC_MESSAGE, DataRepresentation, 4)
315 TEST_FIELD_ALIGN (RPC_MESSAGE, DataRepresentation, 4)
316 TEST_FIELD_OFFSET(RPC_MESSAGE, DataRepresentation, 8)
323 TEST_FIELD_SIZE (RPC_MESSAGE, ProcNum, 4)
324 TEST_FIELD_ALIGN (RPC_MESSAGE, ProcNum, 4)
325 TEST_FIELD_OFFSET(RPC_MESSAGE, ProcNum, 28)
326 TEST_FIELD_SIZE (RPC_MESSAGE, TransferSyntax, 8)
327 TEST_FIELD_ALIGN (RPC_MESSAGE, TransferSyntax, 8)
328 TEST_FIELD_OFFSET(RPC_MESSAGE, TransferSyntax, 32)
329 TEST_FIELD_SIZE (RPC_MESSAGE, RpcInterfaceInformation, 8)
330 TEST_FIELD_ALIGN (RPC_MESSAGE, RpcInterfaceInformation, 8)
331 TEST_FIELD_OFFSET(RPC_MESSAGE, RpcInterfaceInformation, 40)
332 TEST_FIELD_SIZE (RPC_MESSAGE, ReservedForRuntime, 8)
333 TEST_FIELD_ALIGN (RPC_MESSAGE, ReservedForRuntime, 8)
334 TEST_FIELD_OFFSET(RPC_MESSAGE, ReservedForRuntime, 48)
335 TEST_FIELD_SIZE (RPC_MESSAGE, ManagerEpv, 8)
336 TEST_FIELD_ALIGN (RPC_MESSAGE, ManagerEpv, 8)
337 TEST_FIELD_OFFSET(RPC_MESSAGE, ManagerEpv, 56)
338 TEST_FIELD_SIZE (RPC_MESSAGE, ImportContext, 8)
339 TEST_FIELD_ALIGN (RPC_MESSAGE, ImportContext, 8)
340 TEST_FIELD_OFFSET(RPC_MESSAGE, ImportContext, 64)
341 TEST_FIELD_SIZE (RPC_MESSAGE, RpcFlags, 4)
342 TEST_FIELD_ALIGN (RPC_MESSAGE, RpcFlags, 4)
343 TEST_FIELD_OFFSET(RPC_MESSAGE, RpcFlags, 72)
344}
345
346static void test_pack_RPC_PROTSEQ_ENDPOINT(void)
347{
348 /* RPC_PROTSEQ_ENDPOINT */
351 TEST_FIELD_SIZE (RPC_PROTSEQ_ENDPOINT, RpcProtocolSequence, 8)
352 TEST_FIELD_ALIGN (RPC_PROTSEQ_ENDPOINT, RpcProtocolSequence, 8)
353 TEST_FIELD_OFFSET(RPC_PROTSEQ_ENDPOINT, RpcProtocolSequence, 0)
357}
358
359static void test_pack_RPC_SERVER_INTERFACE(void)
360{
361 /* RPC_SERVER_INTERFACE */
367 TEST_FIELD_SIZE (RPC_SERVER_INTERFACE, InterfaceId, 20)
368 TEST_FIELD_ALIGN (RPC_SERVER_INTERFACE, InterfaceId, 4)
370 TEST_FIELD_SIZE (RPC_SERVER_INTERFACE, TransferSyntax, 20)
371 TEST_FIELD_ALIGN (RPC_SERVER_INTERFACE, TransferSyntax, 4)
372 TEST_FIELD_OFFSET(RPC_SERVER_INTERFACE, TransferSyntax, 24)
376 TEST_FIELD_SIZE (RPC_SERVER_INTERFACE, RpcProtseqEndpointCount, 4)
377 TEST_FIELD_ALIGN (RPC_SERVER_INTERFACE, RpcProtseqEndpointCount, 4)
378 TEST_FIELD_OFFSET(RPC_SERVER_INTERFACE, RpcProtseqEndpointCount, 56)
379 TEST_FIELD_SIZE (RPC_SERVER_INTERFACE, RpcProtseqEndpoint, 8)
380 TEST_FIELD_ALIGN (RPC_SERVER_INTERFACE, RpcProtseqEndpoint, 8)
381 TEST_FIELD_OFFSET(RPC_SERVER_INTERFACE, RpcProtseqEndpoint, 64)
382 TEST_FIELD_SIZE (RPC_SERVER_INTERFACE, DefaultManagerEpv, 8)
383 TEST_FIELD_ALIGN (RPC_SERVER_INTERFACE, DefaultManagerEpv, 8)
384 TEST_FIELD_OFFSET(RPC_SERVER_INTERFACE, DefaultManagerEpv, 72)
385 TEST_FIELD_SIZE (RPC_SERVER_INTERFACE, InterpreterInfo, 8)
386 TEST_FIELD_ALIGN (RPC_SERVER_INTERFACE, InterpreterInfo, 8)
387 TEST_FIELD_OFFSET(RPC_SERVER_INTERFACE, InterpreterInfo, 80)
391}
392
393static void test_pack_RPC_SYNTAX_IDENTIFIER(void)
394{
395 /* RPC_SYNTAX_IDENTIFIER */
398 TEST_FIELD_SIZE (RPC_SYNTAX_IDENTIFIER, SyntaxGUID, 16)
401 TEST_FIELD_SIZE (RPC_SYNTAX_IDENTIFIER, SyntaxVersion, 4)
402 TEST_FIELD_ALIGN (RPC_SYNTAX_IDENTIFIER, SyntaxVersion, 2)
403 TEST_FIELD_OFFSET(RPC_SYNTAX_IDENTIFIER, SyntaxVersion, 16)
404}
405
406static void test_pack_RPC_VERSION(void)
407{
408 /* RPC_VERSION */
417}
418
419static void test_pack_ARRAY_INFO(void)
420{
421 /* ARRAY_INFO */
424 TEST_FIELD_SIZE (ARRAY_INFO, Dimension, 4)
425 TEST_FIELD_ALIGN (ARRAY_INFO, Dimension, 4)
426 TEST_FIELD_OFFSET(ARRAY_INFO, Dimension, 0)
427 TEST_FIELD_SIZE (ARRAY_INFO, BufferConformanceMark, 8)
428 TEST_FIELD_ALIGN (ARRAY_INFO, BufferConformanceMark, 8)
429 TEST_FIELD_OFFSET(ARRAY_INFO, BufferConformanceMark, 8)
430 TEST_FIELD_SIZE (ARRAY_INFO, BufferVarianceMark, 8)
431 TEST_FIELD_ALIGN (ARRAY_INFO, BufferVarianceMark, 8)
432 TEST_FIELD_OFFSET(ARRAY_INFO, BufferVarianceMark, 16)
433 TEST_FIELD_SIZE (ARRAY_INFO, MaxCountArray, 8)
434 TEST_FIELD_ALIGN (ARRAY_INFO, MaxCountArray, 8)
435 TEST_FIELD_OFFSET(ARRAY_INFO, MaxCountArray, 24)
436 TEST_FIELD_SIZE (ARRAY_INFO, OffsetArray, 8)
437 TEST_FIELD_ALIGN (ARRAY_INFO, OffsetArray, 8)
438 TEST_FIELD_OFFSET(ARRAY_INFO, OffsetArray, 32)
439 TEST_FIELD_SIZE (ARRAY_INFO, ActualCountArray, 8)
440 TEST_FIELD_ALIGN (ARRAY_INFO, ActualCountArray, 8)
441 TEST_FIELD_OFFSET(ARRAY_INFO, ActualCountArray, 40)
442}
443
444static void test_pack_COMM_FAULT_OFFSETS(void)
445{
446 /* COMM_FAULT_OFFSETS */
449 TEST_FIELD_SIZE (COMM_FAULT_OFFSETS, CommOffset, 2)
450 TEST_FIELD_ALIGN (COMM_FAULT_OFFSETS, CommOffset, 2)
452 TEST_FIELD_SIZE (COMM_FAULT_OFFSETS, FaultOffset, 2)
453 TEST_FIELD_ALIGN (COMM_FAULT_OFFSETS, FaultOffset, 2)
455}
456
457static void test_pack_CS_STUB_INFO(void)
458{
459 /* CS_STUB_INFO */
462 TEST_FIELD_SIZE (CS_STUB_INFO, WireCodeset, 4)
463 TEST_FIELD_ALIGN (CS_STUB_INFO, WireCodeset, 4)
464 TEST_FIELD_OFFSET(CS_STUB_INFO, WireCodeset, 0)
465 TEST_FIELD_SIZE (CS_STUB_INFO, DesiredReceivingCodeset, 4)
466 TEST_FIELD_ALIGN (CS_STUB_INFO, DesiredReceivingCodeset, 4)
467 TEST_FIELD_OFFSET(CS_STUB_INFO, DesiredReceivingCodeset, 4)
468 TEST_FIELD_SIZE (CS_STUB_INFO, CSArrayInfo, 8)
469 TEST_FIELD_ALIGN (CS_STUB_INFO, CSArrayInfo, 8)
470 TEST_FIELD_OFFSET(CS_STUB_INFO, CSArrayInfo, 8)
471}
472
473static void test_pack_EXPR_EVAL(void)
474{
475 /* EXPR_EVAL */
476}
477
479{
480 /* FULL_PTR_TO_REFID_ELEMENT */
495}
496
497static void test_pack_FULL_PTR_XLAT_TABLES(void)
498{
499 /* FULL_PTR_XLAT_TABLES */
500}
501
502static void test_pack_GENERIC_BINDING_INFO(void)
503{
504 /* GENERIC_BINDING_INFO */
511}
512
514{
515 /* GENERIC_BINDING_ROUTINE_PAIR */
516}
517
518static void test_pack_MALLOC_FREE_STRUCT(void)
519{
520 /* MALLOC_FREE_STRUCT */
521}
522
523static void test_pack_MIDL_FORMAT_STRING(void)
524{
525 /* MIDL_FORMAT_STRING */
529}
530
531static void test_pack_MIDL_SERVER_INFO(void)
532{
533 /* MIDL_SERVER_INFO */
536 TEST_FIELD_SIZE (MIDL_SERVER_INFO, pStubDesc, 8)
537 TEST_FIELD_ALIGN (MIDL_SERVER_INFO, pStubDesc, 8)
542 TEST_FIELD_SIZE (MIDL_SERVER_INFO, ProcString, 8)
543 TEST_FIELD_ALIGN (MIDL_SERVER_INFO, ProcString, 8)
544 TEST_FIELD_OFFSET(MIDL_SERVER_INFO, ProcString, 16)
545 TEST_FIELD_SIZE (MIDL_SERVER_INFO, FmtStringOffset, 8)
546 TEST_FIELD_ALIGN (MIDL_SERVER_INFO, FmtStringOffset, 8)
547 TEST_FIELD_OFFSET(MIDL_SERVER_INFO, FmtStringOffset, 24)
548 TEST_FIELD_SIZE (MIDL_SERVER_INFO, ThunkTable, 8)
549 TEST_FIELD_ALIGN (MIDL_SERVER_INFO, ThunkTable, 8)
550 TEST_FIELD_OFFSET(MIDL_SERVER_INFO, ThunkTable, 32)
551 TEST_FIELD_SIZE (MIDL_SERVER_INFO, pTransferSyntax, 8)
552 TEST_FIELD_ALIGN (MIDL_SERVER_INFO, pTransferSyntax, 8)
553 TEST_FIELD_OFFSET(MIDL_SERVER_INFO, pTransferSyntax, 40)
557 TEST_FIELD_SIZE (MIDL_SERVER_INFO, pSyntaxInfo, 8)
558 TEST_FIELD_ALIGN (MIDL_SERVER_INFO, pSyntaxInfo, 8)
559 TEST_FIELD_OFFSET(MIDL_SERVER_INFO, pSyntaxInfo, 56)
560}
561
562static void test_pack_MIDL_STUB_DESC(void)
563{
564 /* MIDL_STUB_DESC */
565 TEST_FIELD_SIZE (MIDL_STUB_DESC, RpcInterfaceInformation, 8)
566 TEST_FIELD_ALIGN (MIDL_STUB_DESC, RpcInterfaceInformation, 8)
567 TEST_FIELD_OFFSET(MIDL_STUB_DESC, RpcInterfaceInformation, 0)
568}
569
570static void test_pack_MIDL_STUB_MESSAGE(void)
571{
572 /* MIDL_STUB_MESSAGE */
579 TEST_FIELD_SIZE (MIDL_STUB_MESSAGE, BufferStart, 8)
580 TEST_FIELD_ALIGN (MIDL_STUB_MESSAGE, BufferStart, 8)
581 TEST_FIELD_OFFSET(MIDL_STUB_MESSAGE, BufferStart, 16)
585 TEST_FIELD_SIZE (MIDL_STUB_MESSAGE, BufferMark, 8)
586 TEST_FIELD_ALIGN (MIDL_STUB_MESSAGE, BufferMark, 8)
587 TEST_FIELD_OFFSET(MIDL_STUB_MESSAGE, BufferMark, 32)
606 TEST_FIELD_SIZE (MIDL_STUB_MESSAGE, ReuseBuffer, 4)
607 TEST_FIELD_ALIGN (MIDL_STUB_MESSAGE, ReuseBuffer, 4)
608 TEST_FIELD_OFFSET(MIDL_STUB_MESSAGE, ReuseBuffer, 60)
609 TEST_FIELD_SIZE (MIDL_STUB_MESSAGE, pAllocAllNodesContext, 8)
610 TEST_FIELD_ALIGN (MIDL_STUB_MESSAGE, pAllocAllNodesContext, 8)
611 TEST_FIELD_OFFSET(MIDL_STUB_MESSAGE, pAllocAllNodesContext, 64)
612 TEST_FIELD_SIZE (MIDL_STUB_MESSAGE, pPointerQueueState, 8)
613 TEST_FIELD_ALIGN (MIDL_STUB_MESSAGE, pPointerQueueState, 8)
614 TEST_FIELD_OFFSET(MIDL_STUB_MESSAGE, pPointerQueueState, 72)
615 TEST_FIELD_SIZE (MIDL_STUB_MESSAGE, IgnoreEmbeddedPointers, 4)
616 TEST_FIELD_ALIGN (MIDL_STUB_MESSAGE, IgnoreEmbeddedPointers, 4)
617 TEST_FIELD_OFFSET(MIDL_STUB_MESSAGE, IgnoreEmbeddedPointers, 80)
618 TEST_FIELD_SIZE (MIDL_STUB_MESSAGE, PointerBufferMark, 8)
619 TEST_FIELD_ALIGN (MIDL_STUB_MESSAGE, PointerBufferMark, 8)
620 TEST_FIELD_OFFSET(MIDL_STUB_MESSAGE, PointerBufferMark, 88)
621 TEST_FIELD_SIZE (MIDL_STUB_MESSAGE, CorrDespIncrement, 1)
622 TEST_FIELD_ALIGN (MIDL_STUB_MESSAGE, CorrDespIncrement, 1)
623 TEST_FIELD_OFFSET(MIDL_STUB_MESSAGE, CorrDespIncrement, 96)
627 TEST_FIELD_SIZE (MIDL_STUB_MESSAGE, UniquePtrCount, 2)
628 TEST_FIELD_ALIGN (MIDL_STUB_MESSAGE, UniquePtrCount, 2)
629 TEST_FIELD_OFFSET(MIDL_STUB_MESSAGE, UniquePtrCount, 98)
636 TEST_FIELD_SIZE (MIDL_STUB_MESSAGE, ActualCount, 4)
637 TEST_FIELD_ALIGN (MIDL_STUB_MESSAGE, ActualCount, 4)
638 TEST_FIELD_OFFSET(MIDL_STUB_MESSAGE, ActualCount, 116)
639}
640
642{
643 /* MIDL_STUBLESS_PROXY_INFO */
649 TEST_FIELD_SIZE (MIDL_STUBLESS_PROXY_INFO, ProcFormatString, 8)
650 TEST_FIELD_ALIGN (MIDL_STUBLESS_PROXY_INFO, ProcFormatString, 8)
651 TEST_FIELD_OFFSET(MIDL_STUBLESS_PROXY_INFO, ProcFormatString, 8)
652 TEST_FIELD_SIZE (MIDL_STUBLESS_PROXY_INFO, FormatStringOffset, 8)
653 TEST_FIELD_ALIGN (MIDL_STUBLESS_PROXY_INFO, FormatStringOffset, 8)
654 TEST_FIELD_OFFSET(MIDL_STUBLESS_PROXY_INFO, FormatStringOffset, 16)
655 TEST_FIELD_SIZE (MIDL_STUBLESS_PROXY_INFO, pTransferSyntax, 8)
656 TEST_FIELD_ALIGN (MIDL_STUBLESS_PROXY_INFO, pTransferSyntax, 8)
657 TEST_FIELD_OFFSET(MIDL_STUBLESS_PROXY_INFO, pTransferSyntax, 24)
664}
665
666static void test_pack_MIDL_SYNTAX_INFO(void)
667{
668 /* MIDL_SYNTAX_INFO */
671 TEST_FIELD_SIZE (MIDL_SYNTAX_INFO, TransferSyntax, 20)
672 TEST_FIELD_ALIGN (MIDL_SYNTAX_INFO, TransferSyntax, 4)
673 TEST_FIELD_OFFSET(MIDL_SYNTAX_INFO, TransferSyntax, 0)
677 TEST_FIELD_SIZE (MIDL_SYNTAX_INFO, ProcString, 8)
678 TEST_FIELD_ALIGN (MIDL_SYNTAX_INFO, ProcString, 8)
679 TEST_FIELD_OFFSET(MIDL_SYNTAX_INFO, ProcString, 32)
680 TEST_FIELD_SIZE (MIDL_SYNTAX_INFO, FmtStringOffset, 8)
681 TEST_FIELD_ALIGN (MIDL_SYNTAX_INFO, FmtStringOffset, 8)
682 TEST_FIELD_OFFSET(MIDL_SYNTAX_INFO, FmtStringOffset, 40)
683 TEST_FIELD_SIZE (MIDL_SYNTAX_INFO, TypeString, 8)
684 TEST_FIELD_ALIGN (MIDL_SYNTAX_INFO, TypeString, 8)
685 TEST_FIELD_OFFSET(MIDL_SYNTAX_INFO, TypeString, 48)
686 TEST_FIELD_SIZE (MIDL_SYNTAX_INFO, aUserMarshalQuadruple, 8)
687 TEST_FIELD_ALIGN (MIDL_SYNTAX_INFO, aUserMarshalQuadruple, 8)
688 TEST_FIELD_OFFSET(MIDL_SYNTAX_INFO, aUserMarshalQuadruple, 56)
689 TEST_FIELD_SIZE (MIDL_SYNTAX_INFO, pMethodProperties, 8)
690 TEST_FIELD_ALIGN (MIDL_SYNTAX_INFO, pMethodProperties, 8)
691 TEST_FIELD_OFFSET(MIDL_SYNTAX_INFO, pMethodProperties, 64)
692 TEST_FIELD_SIZE (MIDL_SYNTAX_INFO, pReserved2, 8)
693 TEST_FIELD_ALIGN (MIDL_SYNTAX_INFO, pReserved2, 8)
694 TEST_FIELD_OFFSET(MIDL_SYNTAX_INFO, pReserved2, 72)
695}
696
697static void test_pack_NDR_CCONTEXT(void)
698{
699 /* NDR_CCONTEXT */
702}
703
704static void test_pack_NDR_NOTIFY_ROUTINE(void)
705{
706 /* NDR_NOTIFY_ROUTINE */
707}
708
709static void test_pack_NDR_NOTIFY2_ROUTINE(void)
710{
711 /* NDR_NOTIFY2_ROUTINE */
712}
713
714static void test_pack_NDR_RUNDOWN(void)
715{
716 /* NDR_RUNDOWN */
717}
718
719static void test_pack_NDR_SCONTEXT(void)
720{
721 /* NDR_SCONTEXT */
724}
725
726static void test_pack_NDR_USER_MARSHAL_INFO(void)
727{
728 /* NDR_USER_MARSHAL_INFO */
729 TEST_FIELD_SIZE (NDR_USER_MARSHAL_INFO, InformationLevel, 4)
730 TEST_FIELD_ALIGN (NDR_USER_MARSHAL_INFO, InformationLevel, 4)
731 TEST_FIELD_OFFSET(NDR_USER_MARSHAL_INFO, InformationLevel, 0)
732}
733
735{
736 /* NDR_USER_MARSHAL_INFO_LEVEL1 */
743}
744
745static void test_pack_PARRAY_INFO(void)
746{
747 /* PARRAY_INFO */
752}
753
754static void test_pack_PFORMAT_STRING(void)
755{
756 /* PFORMAT_STRING */
759}
760
762{
763 /* PFULL_PTR_TO_REFID_ELEMENT */
768}
769
770static void test_pack_PFULL_PTR_XLAT_TABLES(void)
771{
772 /* PFULL_PTR_XLAT_TABLES */
775}
776
777static void test_pack_PGENERIC_BINDING_INFO(void)
778{
779 /* PGENERIC_BINDING_INFO */
782}
783
785{
786 /* PGENERIC_BINDING_ROUTINE_PAIR */
789}
790
791static void test_pack_PMIDL_SERVER_INFO(void)
792{
793 /* PMIDL_SERVER_INFO */
798}
799
800static void test_pack_PMIDL_STUB_DESC(void)
801{
802 /* PMIDL_STUB_DESC */
805}
806
807static void test_pack_PMIDL_STUB_MESSAGE(void)
808{
809 /* PMIDL_STUB_MESSAGE */
812}
813
815{
816 /* PMIDL_STUBLESS_PROXY_INFO */
821}
822
823static void test_pack_PMIDL_SYNTAX_INFO(void)
824{
825 /* PMIDL_SYNTAX_INFO */
830}
831
832static void test_pack_PNDR_ASYNC_MESSAGE(void)
833{
834 /* PNDR_ASYNC_MESSAGE */
837}
838
839static void test_pack_PNDR_CORRELATION_INFO(void)
840{
841 /* PNDR_CORRELATION_INFO */
844}
845
846static void test_pack_PSCONTEXT_QUEUE(void)
847{
848 /* PSCONTEXT_QUEUE */
853}
854
855static void test_pack_PXMIT_ROUTINE_QUINTUPLE(void)
856{
857 /* PXMIT_ROUTINE_QUINTUPLE */
860}
861
862static void test_pack_SCONTEXT_QUEUE(void)
863{
864 /* SCONTEXT_QUEUE */
867 TEST_FIELD_SIZE (SCONTEXT_QUEUE, NumberOfObjects, 4)
868 TEST_FIELD_ALIGN (SCONTEXT_QUEUE, NumberOfObjects, 4)
869 TEST_FIELD_OFFSET(SCONTEXT_QUEUE, NumberOfObjects, 0)
870 TEST_FIELD_SIZE (SCONTEXT_QUEUE, ArrayOfObjects, 8)
871 TEST_FIELD_ALIGN (SCONTEXT_QUEUE, ArrayOfObjects, 8)
872 TEST_FIELD_OFFSET(SCONTEXT_QUEUE, ArrayOfObjects, 8)
873}
874
875static void test_pack_SERVER_ROUTINE(void)
876{
877 /* SERVER_ROUTINE */
878}
879
880static void test_pack_STUB_THUNK(void)
881{
882 /* STUB_THUNK */
883}
884
885static void test_pack_USER_MARSHAL_CB(void)
886{
887 /* USER_MARSHAL_CB */
891 TEST_FIELD_SIZE (USER_MARSHAL_CB, pStubMsg, 8)
892 TEST_FIELD_ALIGN (USER_MARSHAL_CB, pStubMsg, 8)
894 TEST_FIELD_SIZE (USER_MARSHAL_CB, pReserve, 8)
895 TEST_FIELD_ALIGN (USER_MARSHAL_CB, pReserve, 8)
900}
901
903{
904 /* USER_MARSHAL_FREEING_ROUTINE */
905}
906
908{
909 /* USER_MARSHAL_MARSHALLING_ROUTINE */
910}
911
913{
914 /* USER_MARSHAL_ROUTINE_QUADRUPLE */
915}
916
918{
919 /* USER_MARSHAL_SIZING_ROUTINE */
920}
921
923{
924 /* USER_MARSHAL_UNMARSHALLING_ROUTINE */
925}
926
927static void test_pack_XMIT_HELPER_ROUTINE(void)
928{
929 /* XMIT_HELPER_ROUTINE */
930}
931
932static void test_pack_XMIT_ROUTINE_QUINTUPLE(void)
933{
934 /* XMIT_ROUTINE_QUINTUPLE */
935}
936
937static void test_pack_PRPC_STUB_FUNCTION(void)
938{
939 /* PRPC_STUB_FUNCTION */
940}
941
942#else /* _WIN64 */
943
944static void test_pack_I_RPC_HANDLE(void)
945{
946 /* I_RPC_HANDLE */
949}
950
951static void test_pack_RPC_STATUS(void)
952{
953 /* RPC_STATUS */
957}
958
959static void test_pack_PRPC_POLICY(void)
960{
961 /* PRPC_POLICY */
966}
967
969{
970 /* RPC_AUTH_IDENTITY_HANDLE */
973}
974
976{
977 /* RPC_AUTH_KEY_RETRIEVAL_FN */
978}
979
981{
982 /* RPC_AUTHZ_HANDLE */
985}
986
988{
989 /* RPC_BINDING_HANDLE */
992}
993
995{
996 /* RPC_BINDING_VECTOR */
1002 TEST_FIELD_SIZE (RPC_BINDING_VECTOR, BindingH, 4)
1005}
1006
1008{
1009 /* RPC_IF_HANDLE */
1012}
1013
1014static void test_pack_RPC_IF_ID(void)
1015{
1016 /* RPC_IF_ID */
1019 TEST_FIELD_SIZE (RPC_IF_ID, Uuid, 16)
1020 TEST_FIELD_ALIGN (RPC_IF_ID, Uuid, 4)
1022 TEST_FIELD_SIZE (RPC_IF_ID, VersMajor, 2)
1023 TEST_FIELD_ALIGN (RPC_IF_ID, VersMajor, 2)
1024 TEST_FIELD_OFFSET(RPC_IF_ID, VersMajor, 16)
1025 TEST_FIELD_SIZE (RPC_IF_ID, VersMinor, 2)
1026 TEST_FIELD_ALIGN (RPC_IF_ID, VersMinor, 2)
1027 TEST_FIELD_OFFSET(RPC_IF_ID, VersMinor, 18)
1028}
1029
1030static void test_pack_RPC_POLICY(void)
1031{
1032 /* RPC_POLICY */
1038 TEST_FIELD_SIZE (RPC_POLICY, EndpointFlags, 4)
1039 TEST_FIELD_ALIGN (RPC_POLICY, EndpointFlags, 4)
1040 TEST_FIELD_OFFSET(RPC_POLICY, EndpointFlags, 4)
1041 TEST_FIELD_SIZE (RPC_POLICY, NICFlags, 4)
1042 TEST_FIELD_ALIGN (RPC_POLICY, NICFlags, 4)
1043 TEST_FIELD_OFFSET(RPC_POLICY, NICFlags, 8)
1044}
1045
1046static void test_pack_UUID_VECTOR(void)
1047{
1048 /* UUID_VECTOR */
1054 TEST_FIELD_SIZE (UUID_VECTOR, Uuid, 4)
1055 TEST_FIELD_ALIGN (UUID_VECTOR, Uuid, 4)
1057}
1058
1060{
1061 /* PRPC_CLIENT_INTERFACE */
1066}
1067
1069{
1070 /* PRPC_DISPATCH_TABLE */
1075}
1076
1077static void test_pack_PRPC_MESSAGE(void)
1078{
1079 /* PRPC_MESSAGE */
1084}
1085
1087{
1088 /* PRPC_PROTSEQ_ENDPOINT */
1093}
1094
1096{
1097 /* PRPC_SERVER_INTERFACE */
1102}
1103
1105{
1106 /* PRPC_SYNTAX_IDENTIFIER */
1111}
1112
1114{
1115 /* RPC_CLIENT_INTERFACE */
1121 TEST_FIELD_SIZE (RPC_CLIENT_INTERFACE, InterfaceId, 20)
1122 TEST_FIELD_ALIGN (RPC_CLIENT_INTERFACE, InterfaceId, 4)
1124 TEST_FIELD_SIZE (RPC_CLIENT_INTERFACE, TransferSyntax, 20)
1125 TEST_FIELD_ALIGN (RPC_CLIENT_INTERFACE, TransferSyntax, 4)
1126 TEST_FIELD_OFFSET(RPC_CLIENT_INTERFACE, TransferSyntax, 24)
1130 TEST_FIELD_SIZE (RPC_CLIENT_INTERFACE, RpcProtseqEndpointCount, 4)
1131 TEST_FIELD_ALIGN (RPC_CLIENT_INTERFACE, RpcProtseqEndpointCount, 4)
1132 TEST_FIELD_OFFSET(RPC_CLIENT_INTERFACE, RpcProtseqEndpointCount, 48)
1133 TEST_FIELD_SIZE (RPC_CLIENT_INTERFACE, RpcProtseqEndpoint, 4)
1134 TEST_FIELD_ALIGN (RPC_CLIENT_INTERFACE, RpcProtseqEndpoint, 4)
1135 TEST_FIELD_OFFSET(RPC_CLIENT_INTERFACE, RpcProtseqEndpoint, 52)
1139 TEST_FIELD_SIZE (RPC_CLIENT_INTERFACE, InterpreterInfo, 4)
1140 TEST_FIELD_ALIGN (RPC_CLIENT_INTERFACE, InterpreterInfo, 4)
1141 TEST_FIELD_OFFSET(RPC_CLIENT_INTERFACE, InterpreterInfo, 60)
1145}
1146
1148{
1149 /* RPC_DISPATCH_FUNCTION */
1150}
1151
1153{
1154 /* RPC_DISPATCH_TABLE */
1157 TEST_FIELD_SIZE (RPC_DISPATCH_TABLE, DispatchTableCount, 4)
1158 TEST_FIELD_ALIGN (RPC_DISPATCH_TABLE, DispatchTableCount, 4)
1159 TEST_FIELD_OFFSET(RPC_DISPATCH_TABLE, DispatchTableCount, 0)
1166}
1167
1168static void test_pack_RPC_MESSAGE(void)
1169{
1170 /* RPC_MESSAGE */
1176 TEST_FIELD_SIZE (RPC_MESSAGE, DataRepresentation, 4)
1177 TEST_FIELD_ALIGN (RPC_MESSAGE, DataRepresentation, 4)
1178 TEST_FIELD_OFFSET(RPC_MESSAGE, DataRepresentation, 4)
1185 TEST_FIELD_SIZE (RPC_MESSAGE, ProcNum, 4)
1186 TEST_FIELD_ALIGN (RPC_MESSAGE, ProcNum, 4)
1187 TEST_FIELD_OFFSET(RPC_MESSAGE, ProcNum, 16)
1188 TEST_FIELD_SIZE (RPC_MESSAGE, TransferSyntax, 4)
1189 TEST_FIELD_ALIGN (RPC_MESSAGE, TransferSyntax, 4)
1190 TEST_FIELD_OFFSET(RPC_MESSAGE, TransferSyntax, 20)
1191 TEST_FIELD_SIZE (RPC_MESSAGE, RpcInterfaceInformation, 4)
1192 TEST_FIELD_ALIGN (RPC_MESSAGE, RpcInterfaceInformation, 4)
1193 TEST_FIELD_OFFSET(RPC_MESSAGE, RpcInterfaceInformation, 24)
1194 TEST_FIELD_SIZE (RPC_MESSAGE, ReservedForRuntime, 4)
1195 TEST_FIELD_ALIGN (RPC_MESSAGE, ReservedForRuntime, 4)
1196 TEST_FIELD_OFFSET(RPC_MESSAGE, ReservedForRuntime, 28)
1197 TEST_FIELD_SIZE (RPC_MESSAGE, ManagerEpv, 4)
1198 TEST_FIELD_ALIGN (RPC_MESSAGE, ManagerEpv, 4)
1199 TEST_FIELD_OFFSET(RPC_MESSAGE, ManagerEpv, 32)
1200 TEST_FIELD_SIZE (RPC_MESSAGE, ImportContext, 4)
1201 TEST_FIELD_ALIGN (RPC_MESSAGE, ImportContext, 4)
1202 TEST_FIELD_OFFSET(RPC_MESSAGE, ImportContext, 36)
1203 TEST_FIELD_SIZE (RPC_MESSAGE, RpcFlags, 4)
1204 TEST_FIELD_ALIGN (RPC_MESSAGE, RpcFlags, 4)
1205 TEST_FIELD_OFFSET(RPC_MESSAGE, RpcFlags, 40)
1206}
1207
1209{
1210 /* RPC_PROTSEQ_ENDPOINT */
1213 TEST_FIELD_SIZE (RPC_PROTSEQ_ENDPOINT, RpcProtocolSequence, 4)
1214 TEST_FIELD_ALIGN (RPC_PROTSEQ_ENDPOINT, RpcProtocolSequence, 4)
1215 TEST_FIELD_OFFSET(RPC_PROTSEQ_ENDPOINT, RpcProtocolSequence, 0)
1219}
1220
1222{
1223 /* RPC_SERVER_INTERFACE */
1229 TEST_FIELD_SIZE (RPC_SERVER_INTERFACE, InterfaceId, 20)
1230 TEST_FIELD_ALIGN (RPC_SERVER_INTERFACE, InterfaceId, 4)
1232 TEST_FIELD_SIZE (RPC_SERVER_INTERFACE, TransferSyntax, 20)
1233 TEST_FIELD_ALIGN (RPC_SERVER_INTERFACE, TransferSyntax, 4)
1234 TEST_FIELD_OFFSET(RPC_SERVER_INTERFACE, TransferSyntax, 24)
1238 TEST_FIELD_SIZE (RPC_SERVER_INTERFACE, RpcProtseqEndpointCount, 4)
1239 TEST_FIELD_ALIGN (RPC_SERVER_INTERFACE, RpcProtseqEndpointCount, 4)
1240 TEST_FIELD_OFFSET(RPC_SERVER_INTERFACE, RpcProtseqEndpointCount, 48)
1241 TEST_FIELD_SIZE (RPC_SERVER_INTERFACE, RpcProtseqEndpoint, 4)
1242 TEST_FIELD_ALIGN (RPC_SERVER_INTERFACE, RpcProtseqEndpoint, 4)
1243 TEST_FIELD_OFFSET(RPC_SERVER_INTERFACE, RpcProtseqEndpoint, 52)
1244 TEST_FIELD_SIZE (RPC_SERVER_INTERFACE, DefaultManagerEpv, 4)
1245 TEST_FIELD_ALIGN (RPC_SERVER_INTERFACE, DefaultManagerEpv, 4)
1246 TEST_FIELD_OFFSET(RPC_SERVER_INTERFACE, DefaultManagerEpv, 56)
1247 TEST_FIELD_SIZE (RPC_SERVER_INTERFACE, InterpreterInfo, 4)
1248 TEST_FIELD_ALIGN (RPC_SERVER_INTERFACE, InterpreterInfo, 4)
1249 TEST_FIELD_OFFSET(RPC_SERVER_INTERFACE, InterpreterInfo, 60)
1253}
1254
1256{
1257 /* RPC_SYNTAX_IDENTIFIER */
1260 TEST_FIELD_SIZE (RPC_SYNTAX_IDENTIFIER, SyntaxGUID, 16)
1263 TEST_FIELD_SIZE (RPC_SYNTAX_IDENTIFIER, SyntaxVersion, 4)
1264 TEST_FIELD_ALIGN (RPC_SYNTAX_IDENTIFIER, SyntaxVersion, 2)
1265 TEST_FIELD_OFFSET(RPC_SYNTAX_IDENTIFIER, SyntaxVersion, 16)
1266}
1267
1268static void test_pack_RPC_VERSION(void)
1269{
1270 /* RPC_VERSION */
1279}
1280
1281static void test_pack_ARRAY_INFO(void)
1282{
1283 /* ARRAY_INFO */
1286 TEST_FIELD_SIZE (ARRAY_INFO, Dimension, 4)
1287 TEST_FIELD_ALIGN (ARRAY_INFO, Dimension, 4)
1288 TEST_FIELD_OFFSET(ARRAY_INFO, Dimension, 0)
1289 TEST_FIELD_SIZE (ARRAY_INFO, BufferConformanceMark, 4)
1290 TEST_FIELD_ALIGN (ARRAY_INFO, BufferConformanceMark, 4)
1291 TEST_FIELD_OFFSET(ARRAY_INFO, BufferConformanceMark, 4)
1292 TEST_FIELD_SIZE (ARRAY_INFO, BufferVarianceMark, 4)
1293 TEST_FIELD_ALIGN (ARRAY_INFO, BufferVarianceMark, 4)
1294 TEST_FIELD_OFFSET(ARRAY_INFO, BufferVarianceMark, 8)
1295 TEST_FIELD_SIZE (ARRAY_INFO, MaxCountArray, 4)
1296 TEST_FIELD_ALIGN (ARRAY_INFO, MaxCountArray, 4)
1297 TEST_FIELD_OFFSET(ARRAY_INFO, MaxCountArray, 12)
1298 TEST_FIELD_SIZE (ARRAY_INFO, OffsetArray, 4)
1299 TEST_FIELD_ALIGN (ARRAY_INFO, OffsetArray, 4)
1300 TEST_FIELD_OFFSET(ARRAY_INFO, OffsetArray, 16)
1301 TEST_FIELD_SIZE (ARRAY_INFO, ActualCountArray, 4)
1302 TEST_FIELD_ALIGN (ARRAY_INFO, ActualCountArray, 4)
1303 TEST_FIELD_OFFSET(ARRAY_INFO, ActualCountArray, 20)
1304}
1305
1307{
1308 /* COMM_FAULT_OFFSETS */
1311 TEST_FIELD_SIZE (COMM_FAULT_OFFSETS, CommOffset, 2)
1312 TEST_FIELD_ALIGN (COMM_FAULT_OFFSETS, CommOffset, 2)
1314 TEST_FIELD_SIZE (COMM_FAULT_OFFSETS, FaultOffset, 2)
1315 TEST_FIELD_ALIGN (COMM_FAULT_OFFSETS, FaultOffset, 2)
1316 TEST_FIELD_OFFSET(COMM_FAULT_OFFSETS, FaultOffset, 2)
1317}
1318
1319static void test_pack_CS_STUB_INFO(void)
1320{
1321 /* CS_STUB_INFO */
1324 TEST_FIELD_SIZE (CS_STUB_INFO, WireCodeset, 4)
1325 TEST_FIELD_ALIGN (CS_STUB_INFO, WireCodeset, 4)
1326 TEST_FIELD_OFFSET(CS_STUB_INFO, WireCodeset, 0)
1327 TEST_FIELD_SIZE (CS_STUB_INFO, DesiredReceivingCodeset, 4)
1328 TEST_FIELD_ALIGN (CS_STUB_INFO, DesiredReceivingCodeset, 4)
1329 TEST_FIELD_OFFSET(CS_STUB_INFO, DesiredReceivingCodeset, 4)
1330 TEST_FIELD_SIZE (CS_STUB_INFO, CSArrayInfo, 4)
1331 TEST_FIELD_ALIGN (CS_STUB_INFO, CSArrayInfo, 4)
1332 TEST_FIELD_OFFSET(CS_STUB_INFO, CSArrayInfo, 8)
1333}
1334
1335static void test_pack_EXPR_EVAL(void)
1336{
1337 /* EXPR_EVAL */
1338}
1339
1341{
1342 /* FULL_PTR_TO_REFID_ELEMENT */
1357}
1358
1360{
1361 /* FULL_PTR_XLAT_TABLES */
1362}
1363
1365{
1366 /* GENERIC_BINDING_INFO */
1373}
1374
1376{
1377 /* GENERIC_BINDING_ROUTINE_PAIR */
1378}
1379
1381{
1382 /* MALLOC_FREE_STRUCT */
1383}
1384
1386{
1387 /* MIDL_FORMAT_STRING */
1391}
1392
1394{
1395 /* MIDL_SERVER_INFO */
1398 TEST_FIELD_SIZE (MIDL_SERVER_INFO, pStubDesc, 4)
1399 TEST_FIELD_ALIGN (MIDL_SERVER_INFO, pStubDesc, 4)
1400 TEST_FIELD_OFFSET(MIDL_SERVER_INFO, pStubDesc, 0)
1404 TEST_FIELD_SIZE (MIDL_SERVER_INFO, ProcString, 4)
1405 TEST_FIELD_ALIGN (MIDL_SERVER_INFO, ProcString, 4)
1406 TEST_FIELD_OFFSET(MIDL_SERVER_INFO, ProcString, 8)
1407 TEST_FIELD_SIZE (MIDL_SERVER_INFO, FmtStringOffset, 4)
1408 TEST_FIELD_ALIGN (MIDL_SERVER_INFO, FmtStringOffset, 4)
1409 TEST_FIELD_OFFSET(MIDL_SERVER_INFO, FmtStringOffset, 12)
1410 TEST_FIELD_SIZE (MIDL_SERVER_INFO, ThunkTable, 4)
1411 TEST_FIELD_ALIGN (MIDL_SERVER_INFO, ThunkTable, 4)
1412 TEST_FIELD_OFFSET(MIDL_SERVER_INFO, ThunkTable, 16)
1413 TEST_FIELD_SIZE (MIDL_SERVER_INFO, pTransferSyntax, 4)
1414 TEST_FIELD_ALIGN (MIDL_SERVER_INFO, pTransferSyntax, 4)
1415 TEST_FIELD_OFFSET(MIDL_SERVER_INFO, pTransferSyntax, 20)
1419 TEST_FIELD_SIZE (MIDL_SERVER_INFO, pSyntaxInfo, 4)
1420 TEST_FIELD_ALIGN (MIDL_SERVER_INFO, pSyntaxInfo, 4)
1421 TEST_FIELD_OFFSET(MIDL_SERVER_INFO, pSyntaxInfo, 28)
1422}
1423
1425{
1426 /* MIDL_STUB_DESC */
1427 TEST_FIELD_SIZE (MIDL_STUB_DESC, RpcInterfaceInformation, 4)
1428 TEST_FIELD_ALIGN (MIDL_STUB_DESC, RpcInterfaceInformation, 4)
1429 TEST_FIELD_OFFSET(MIDL_STUB_DESC, RpcInterfaceInformation, 0)
1430}
1431
1433{
1434 /* MIDL_STUB_MESSAGE */
1441 TEST_FIELD_SIZE (MIDL_STUB_MESSAGE, BufferStart, 4)
1442 TEST_FIELD_ALIGN (MIDL_STUB_MESSAGE, BufferStart, 4)
1443 TEST_FIELD_OFFSET(MIDL_STUB_MESSAGE, BufferStart, 8)
1447 TEST_FIELD_SIZE (MIDL_STUB_MESSAGE, BufferMark, 4)
1448 TEST_FIELD_ALIGN (MIDL_STUB_MESSAGE, BufferMark, 4)
1449 TEST_FIELD_OFFSET(MIDL_STUB_MESSAGE, BufferMark, 16)
1459 TEST_FIELD_SIZE (MIDL_STUB_MESSAGE, IsClient, 1)
1460 TEST_FIELD_ALIGN (MIDL_STUB_MESSAGE, IsClient, 1)
1468 TEST_FIELD_SIZE (MIDL_STUB_MESSAGE, ReuseBuffer, 4)
1469 TEST_FIELD_ALIGN (MIDL_STUB_MESSAGE, ReuseBuffer, 4)
1470 TEST_FIELD_OFFSET(MIDL_STUB_MESSAGE, ReuseBuffer, 36)
1471 TEST_FIELD_SIZE (MIDL_STUB_MESSAGE, pAllocAllNodesContext, 4)
1472 TEST_FIELD_ALIGN (MIDL_STUB_MESSAGE, pAllocAllNodesContext, 4)
1473 TEST_FIELD_OFFSET(MIDL_STUB_MESSAGE, pAllocAllNodesContext, 40)
1474 TEST_FIELD_SIZE (MIDL_STUB_MESSAGE, pPointerQueueState, 4)
1475 TEST_FIELD_ALIGN (MIDL_STUB_MESSAGE, pPointerQueueState, 4)
1476 TEST_FIELD_OFFSET(MIDL_STUB_MESSAGE, pPointerQueueState, 44)
1477 TEST_FIELD_SIZE (MIDL_STUB_MESSAGE, IgnoreEmbeddedPointers, 4)
1478 TEST_FIELD_ALIGN (MIDL_STUB_MESSAGE, IgnoreEmbeddedPointers, 4)
1479 TEST_FIELD_OFFSET(MIDL_STUB_MESSAGE, IgnoreEmbeddedPointers, 48)
1480 TEST_FIELD_SIZE (MIDL_STUB_MESSAGE, PointerBufferMark, 4)
1481 TEST_FIELD_ALIGN (MIDL_STUB_MESSAGE, PointerBufferMark, 4)
1482 TEST_FIELD_OFFSET(MIDL_STUB_MESSAGE, PointerBufferMark, 52)
1483 TEST_FIELD_SIZE (MIDL_STUB_MESSAGE, CorrDespIncrement, 1)
1484 TEST_FIELD_ALIGN (MIDL_STUB_MESSAGE, CorrDespIncrement, 1)
1485 TEST_FIELD_OFFSET(MIDL_STUB_MESSAGE, CorrDespIncrement, 56)
1489 TEST_FIELD_SIZE (MIDL_STUB_MESSAGE, UniquePtrCount, 2)
1490 TEST_FIELD_ALIGN (MIDL_STUB_MESSAGE, UniquePtrCount, 2)
1491 TEST_FIELD_OFFSET(MIDL_STUB_MESSAGE, UniquePtrCount, 58)
1492 TEST_FIELD_SIZE (MIDL_STUB_MESSAGE, MaxCount, 4)
1493 TEST_FIELD_ALIGN (MIDL_STUB_MESSAGE, MaxCount, 4)
1498 TEST_FIELD_SIZE (MIDL_STUB_MESSAGE, ActualCount, 4)
1499 TEST_FIELD_ALIGN (MIDL_STUB_MESSAGE, ActualCount, 4)
1500 TEST_FIELD_OFFSET(MIDL_STUB_MESSAGE, ActualCount, 68)
1501}
1502
1504{
1505 /* MIDL_STUBLESS_PROXY_INFO */
1511 TEST_FIELD_SIZE (MIDL_STUBLESS_PROXY_INFO, ProcFormatString, 4)
1512 TEST_FIELD_ALIGN (MIDL_STUBLESS_PROXY_INFO, ProcFormatString, 4)
1513 TEST_FIELD_OFFSET(MIDL_STUBLESS_PROXY_INFO, ProcFormatString, 4)
1514 TEST_FIELD_SIZE (MIDL_STUBLESS_PROXY_INFO, FormatStringOffset, 4)
1515 TEST_FIELD_ALIGN (MIDL_STUBLESS_PROXY_INFO, FormatStringOffset, 4)
1516 TEST_FIELD_OFFSET(MIDL_STUBLESS_PROXY_INFO, FormatStringOffset, 8)
1517 TEST_FIELD_SIZE (MIDL_STUBLESS_PROXY_INFO, pTransferSyntax, 4)
1518 TEST_FIELD_ALIGN (MIDL_STUBLESS_PROXY_INFO, pTransferSyntax, 4)
1519 TEST_FIELD_OFFSET(MIDL_STUBLESS_PROXY_INFO, pTransferSyntax, 12)
1526}
1527
1529{
1530 /* MIDL_SYNTAX_INFO */
1533 TEST_FIELD_SIZE (MIDL_SYNTAX_INFO, TransferSyntax, 20)
1534 TEST_FIELD_ALIGN (MIDL_SYNTAX_INFO, TransferSyntax, 4)
1535 TEST_FIELD_OFFSET(MIDL_SYNTAX_INFO, TransferSyntax, 0)
1539 TEST_FIELD_SIZE (MIDL_SYNTAX_INFO, ProcString, 4)
1540 TEST_FIELD_ALIGN (MIDL_SYNTAX_INFO, ProcString, 4)
1541 TEST_FIELD_OFFSET(MIDL_SYNTAX_INFO, ProcString, 24)
1542 TEST_FIELD_SIZE (MIDL_SYNTAX_INFO, FmtStringOffset, 4)
1543 TEST_FIELD_ALIGN (MIDL_SYNTAX_INFO, FmtStringOffset, 4)
1544 TEST_FIELD_OFFSET(MIDL_SYNTAX_INFO, FmtStringOffset, 28)
1545 TEST_FIELD_SIZE (MIDL_SYNTAX_INFO, TypeString, 4)
1546 TEST_FIELD_ALIGN (MIDL_SYNTAX_INFO, TypeString, 4)
1547 TEST_FIELD_OFFSET(MIDL_SYNTAX_INFO, TypeString, 32)
1548 TEST_FIELD_SIZE (MIDL_SYNTAX_INFO, aUserMarshalQuadruple, 4)
1549 TEST_FIELD_ALIGN (MIDL_SYNTAX_INFO, aUserMarshalQuadruple, 4)
1550 TEST_FIELD_OFFSET(MIDL_SYNTAX_INFO, aUserMarshalQuadruple, 36)
1551 TEST_FIELD_SIZE (MIDL_SYNTAX_INFO, pMethodProperties, 4)
1552 TEST_FIELD_ALIGN (MIDL_SYNTAX_INFO, pMethodProperties, 4)
1553 TEST_FIELD_OFFSET(MIDL_SYNTAX_INFO, pMethodProperties, 40)
1554 TEST_FIELD_SIZE (MIDL_SYNTAX_INFO, pReserved2, 4)
1555 TEST_FIELD_ALIGN (MIDL_SYNTAX_INFO, pReserved2, 4)
1556 TEST_FIELD_OFFSET(MIDL_SYNTAX_INFO, pReserved2, 44)
1557}
1558
1559static void test_pack_NDR_CCONTEXT(void)
1560{
1561 /* NDR_CCONTEXT */
1564}
1565
1567{
1568 /* NDR_NOTIFY_ROUTINE */
1569}
1570
1572{
1573 /* NDR_NOTIFY2_ROUTINE */
1574}
1575
1576static void test_pack_NDR_RUNDOWN(void)
1577{
1578 /* NDR_RUNDOWN */
1579}
1580
1581static void test_pack_NDR_SCONTEXT(void)
1582{
1583 /* NDR_SCONTEXT */
1586}
1587
1589{
1590 /* NDR_USER_MARSHAL_INFO */
1591 TEST_FIELD_SIZE (NDR_USER_MARSHAL_INFO, InformationLevel, 4)
1592 TEST_FIELD_ALIGN (NDR_USER_MARSHAL_INFO, InformationLevel, 4)
1593 TEST_FIELD_OFFSET(NDR_USER_MARSHAL_INFO, InformationLevel, 0)
1594}
1595
1597{
1598 /* NDR_USER_MARSHAL_INFO_LEVEL1 */
1605}
1606
1607static void test_pack_PARRAY_INFO(void)
1608{
1609 /* PARRAY_INFO */
1614}
1615
1617{
1618 /* PFORMAT_STRING */
1621}
1622
1624{
1625 /* PFULL_PTR_TO_REFID_ELEMENT */
1630}
1631
1633{
1634 /* PFULL_PTR_XLAT_TABLES */
1637}
1638
1640{
1641 /* PGENERIC_BINDING_INFO */
1644}
1645
1647{
1648 /* PGENERIC_BINDING_ROUTINE_PAIR */
1651}
1652
1654{
1655 /* PMIDL_SERVER_INFO */
1660}
1661
1663{
1664 /* PMIDL_STUB_DESC */
1667}
1668
1670{
1671 /* PMIDL_STUB_MESSAGE */
1674}
1675
1677{
1678 /* PMIDL_STUBLESS_PROXY_INFO */
1683}
1684
1686{
1687 /* PMIDL_SYNTAX_INFO */
1692}
1693
1695{
1696 /* PNDR_ASYNC_MESSAGE */
1699}
1700
1702{
1703 /* PNDR_CORRELATION_INFO */
1706}
1707
1709{
1710 /* PSCONTEXT_QUEUE */
1715}
1716
1718{
1719 /* PXMIT_ROUTINE_QUINTUPLE */
1722}
1723
1725{
1726 /* SCONTEXT_QUEUE */
1729 TEST_FIELD_SIZE (SCONTEXT_QUEUE, NumberOfObjects, 4)
1730 TEST_FIELD_ALIGN (SCONTEXT_QUEUE, NumberOfObjects, 4)
1731 TEST_FIELD_OFFSET(SCONTEXT_QUEUE, NumberOfObjects, 0)
1732 TEST_FIELD_SIZE (SCONTEXT_QUEUE, ArrayOfObjects, 4)
1733 TEST_FIELD_ALIGN (SCONTEXT_QUEUE, ArrayOfObjects, 4)
1734 TEST_FIELD_OFFSET(SCONTEXT_QUEUE, ArrayOfObjects, 4)
1735}
1736
1738{
1739 /* SERVER_ROUTINE */
1740}
1741
1742static void test_pack_STUB_THUNK(void)
1743{
1744 /* STUB_THUNK */
1745}
1746
1748{
1749 /* USER_MARSHAL_CB */
1753 TEST_FIELD_SIZE (USER_MARSHAL_CB, pStubMsg, 4)
1754 TEST_FIELD_ALIGN (USER_MARSHAL_CB, pStubMsg, 4)
1756 TEST_FIELD_SIZE (USER_MARSHAL_CB, pReserve, 4)
1757 TEST_FIELD_ALIGN (USER_MARSHAL_CB, pReserve, 4)
1762}
1763
1765{
1766 /* USER_MARSHAL_FREEING_ROUTINE */
1767}
1768
1770{
1771 /* USER_MARSHAL_MARSHALLING_ROUTINE */
1772}
1773
1775{
1776 /* USER_MARSHAL_ROUTINE_QUADRUPLE */
1777}
1778
1780{
1781 /* USER_MARSHAL_SIZING_ROUTINE */
1782}
1783
1785{
1786 /* USER_MARSHAL_UNMARSHALLING_ROUTINE */
1787}
1788
1790{
1791 /* XMIT_HELPER_ROUTINE */
1792}
1793
1795{
1796 /* XMIT_ROUTINE_QUINTUPLE */
1797}
1798
1800{
1801 /* PRPC_STUB_FUNCTION */
1802}
1803
1804#endif /* _WIN64 */
1805
1806static void test_pack(void)
1807{
1883}
1884
1885START_TEST(generated)
1886{
1887 test_pack();
1888}
#define START_TEST(x)
Definition: atltest.h:75
char * Pad(char *Str, char PadChar, ULONG Length)
Definition: cabman.cxx:29
Definition: bufpool.h:45
UINT uFlags
Definition: api.c:59
static const WCHAR Signature[]
Definition: parser.c:141
ULONG MajorVersion
Definition: ros_glue.cpp:4
ULONG MinorVersion
Definition: ros_glue.cpp:5
ULONG Handle
Definition: gdb_input.c:15
#define TEST_TARGET_SIZE(type, size)
Definition: generated.c:68
#define TEST_FIELD_OFFSET(type, field, offset)
Definition: generated.c:66
#define TEST_TARGET_ALIGN(type, align)
Definition: generated.c:62
static void test_pack(void)
Definition: generated.c:13122
#define TEST_TYPE_SIZE(type, size)
Definition: generated.c:50
#define TEST_FIELD_SIZE(type, field, size)
Definition: generated.c:69
#define TEST_TYPE_ALIGN(type, align)
Definition: generated.c:55
#define TEST_FIELD_ALIGN(type, field, align)
Definition: generated.c:63
int Count
Definition: noreturn.cpp:7
_In_ ULONG _In_ ULONG Offset
Definition: ntddpcm.h:101
_In_ ULONG _In_ ULONG _In_ ULONG Length
Definition: ntddpcm.h:102
#define TEST_TYPE_SIGNED(type)
Definition: generated.c:70
struct _NDR_CORRELATION_INFO * PNDR_CORRELATION_INFO
Definition: rpcndr.h:181
const unsigned char * PFORMAT_STRING
Definition: rpcndr.h:159
struct _NDR_ASYNC_MESSAGE * PNDR_ASYNC_MESSAGE
Definition: rpcndr.h:180
static void test_pack_XMIT_ROUTINE_QUINTUPLE(void)
Definition: generated.c:1794
static void test_pack_MIDL_SYNTAX_INFO(void)
Definition: generated.c:1528
static void test_pack_NDR_RUNDOWN(void)
Definition: generated.c:1576
static void test_pack_UUID_VECTOR(void)
Definition: generated.c:1046
static void test_pack_MIDL_SERVER_INFO(void)
Definition: generated.c:1393
static void test_pack_ARRAY_INFO(void)
Definition: generated.c:1281
static void test_pack_RPC_SERVER_INTERFACE(void)
Definition: generated.c:1221
static void test_pack_FULL_PTR_TO_REFID_ELEMENT(void)
Definition: generated.c:1340
static void test_pack_USER_MARSHAL_ROUTINE_QUADRUPLE(void)
Definition: generated.c:1774
static void test_pack_PXMIT_ROUTINE_QUINTUPLE(void)
Definition: generated.c:1717
static void test_pack_COMM_FAULT_OFFSETS(void)
Definition: generated.c:1306
static void test_pack_MIDL_STUB_MESSAGE(void)
Definition: generated.c:1432
static void test_pack_PARRAY_INFO(void)
Definition: generated.c:1607
static void test_pack_PRPC_DISPATCH_TABLE(void)
Definition: generated.c:1068
static void test_pack_RPC_AUTHZ_HANDLE(void)
Definition: generated.c:980
static void test_pack_USER_MARSHAL_CB(void)
Definition: generated.c:1747
static void test_pack_RPC_DISPATCH_FUNCTION(void)
Definition: generated.c:1147
static void test_pack_EXPR_EVAL(void)
Definition: generated.c:1335
static void test_pack_PFULL_PTR_TO_REFID_ELEMENT(void)
Definition: generated.c:1623
static void test_pack_PNDR_CORRELATION_INFO(void)
Definition: generated.c:1701
static void test_pack_I_RPC_HANDLE(void)
Definition: generated.c:944
static void test_pack_SERVER_ROUTINE(void)
Definition: generated.c:1737
static void test_pack_RPC_DISPATCH_TABLE(void)
Definition: generated.c:1152
static void test_pack_PNDR_ASYNC_MESSAGE(void)
Definition: generated.c:1694
static void test_pack_XMIT_HELPER_ROUTINE(void)
Definition: generated.c:1789
static void test_pack_RPC_SYNTAX_IDENTIFIER(void)
Definition: generated.c:1255
static void test_pack_RPC_CLIENT_INTERFACE(void)
Definition: generated.c:1113
static void test_pack_NDR_CCONTEXT(void)
Definition: generated.c:1559
static void test_pack_RPC_BINDING_HANDLE(void)
Definition: generated.c:987
static void test_pack_RPC_IF_HANDLE(void)
Definition: generated.c:1007
static void test_pack_NDR_SCONTEXT(void)
Definition: generated.c:1581
static void test_pack_PSCONTEXT_QUEUE(void)
Definition: generated.c:1708
static void test_pack_PMIDL_STUBLESS_PROXY_INFO(void)
Definition: generated.c:1676
static void test_pack_NDR_USER_MARSHAL_INFO_LEVEL1(void)
Definition: generated.c:1596
static void test_pack_RPC_BINDING_VECTOR(void)
Definition: generated.c:994
static void test_pack_PRPC_MESSAGE(void)
Definition: generated.c:1077
static void test_pack_CS_STUB_INFO(void)
Definition: generated.c:1319
static void test_pack_FULL_PTR_XLAT_TABLES(void)
Definition: generated.c:1359
static void test_pack_NDR_USER_MARSHAL_INFO(void)
Definition: generated.c:1588
static void test_pack_USER_MARSHAL_MARSHALLING_ROUTINE(void)
Definition: generated.c:1769
static void test_pack_GENERIC_BINDING_ROUTINE_PAIR(void)
Definition: generated.c:1375
static void test_pack_MIDL_STUBLESS_PROXY_INFO(void)
Definition: generated.c:1503
static void test_pack_USER_MARSHAL_UNMARSHALLING_ROUTINE(void)
Definition: generated.c:1784
static void test_pack_RPC_PROTSEQ_ENDPOINT(void)
Definition: generated.c:1208
static void test_pack_PGENERIC_BINDING_INFO(void)
Definition: generated.c:1639
static void test_pack_PRPC_PROTSEQ_ENDPOINT(void)
Definition: generated.c:1086
static void test_pack_PRPC_STUB_FUNCTION(void)
Definition: generated.c:1799
static void test_pack_PGENERIC_BINDING_ROUTINE_PAIR(void)
Definition: generated.c:1646
static void test_pack_USER_MARSHAL_SIZING_ROUTINE(void)
Definition: generated.c:1779
static void test_pack_RPC_VERSION(void)
Definition: generated.c:1268
static void test_pack_STUB_THUNK(void)
Definition: generated.c:1742
static void test_pack_PMIDL_STUB_MESSAGE(void)
Definition: generated.c:1669
static void test_pack_PFORMAT_STRING(void)
Definition: generated.c:1616
static void test_pack_RPC_POLICY(void)
Definition: generated.c:1030
static void test_pack_PRPC_POLICY(void)
Definition: generated.c:959
static void test_pack_USER_MARSHAL_FREEING_ROUTINE(void)
Definition: generated.c:1764
static void test_pack_PMIDL_STUB_DESC(void)
Definition: generated.c:1662
static void test_pack_PRPC_CLIENT_INTERFACE(void)
Definition: generated.c:1059
static void test_pack_RPC_AUTH_IDENTITY_HANDLE(void)
Definition: generated.c:968
static void test_pack_PMIDL_SYNTAX_INFO(void)
Definition: generated.c:1685
static void test_pack_GENERIC_BINDING_INFO(void)
Definition: generated.c:1364
static void test_pack_RPC_IF_ID(void)
Definition: generated.c:1014
static void test_pack_SCONTEXT_QUEUE(void)
Definition: generated.c:1724
static void test_pack_PRPC_SERVER_INTERFACE(void)
Definition: generated.c:1095
static void test_pack_MALLOC_FREE_STRUCT(void)
Definition: generated.c:1380
static void test_pack_PMIDL_SERVER_INFO(void)
Definition: generated.c:1653
static void test_pack_RPC_MESSAGE(void)
Definition: generated.c:1168
static void test_pack_NDR_NOTIFY2_ROUTINE(void)
Definition: generated.c:1571
static void test_pack_NDR_NOTIFY_ROUTINE(void)
Definition: generated.c:1566
static void test_pack_PRPC_SYNTAX_IDENTIFIER(void)
Definition: generated.c:1104
static void test_pack_PFULL_PTR_XLAT_TABLES(void)
Definition: generated.c:1632
static void test_pack_MIDL_STUB_DESC(void)
Definition: generated.c:1424
static void test_pack_RPC_STATUS(void)
Definition: generated.c:951
static void test_pack_RPC_AUTH_KEY_RETRIEVAL_FN(void)
Definition: generated.c:975
static void test_pack_MIDL_FORMAT_STRING(void)
Definition: generated.c:1385
long RPC_STATUS
Definition: rpc.h:48
STDMETHOD() Next(THIS_ ULONG celt, IAssociationElement *pElement, ULONG *pceltFetched) PURE
static CONST DWORD MemorySize[]
Definition: svga.c:32
_In_ PUCHAR BufferEnd
Definition: usbdlib.h:189
_Must_inspect_result_ _In_ WDFDEVICE _In_ PWDF_DEVICE_PROPERTY_DATA _In_ DEVPROPTYPE _In_ ULONG Size
Definition: wdfdevice.h:4539
_Must_inspect_result_ _In_ WDFDEVICE _In_ DEVICE_REGISTRY_PROPERTY _In_ ULONG BufferLength
Definition: wdfdevice.h:3777
_Must_inspect_result_ _In_opt_ PWDF_OBJECT_ATTRIBUTES _In_ _Strict_type_match_ POOL_TYPE _In_opt_ ULONG _In_ _Out_ WDFMEMORY * Memory
Definition: wdfmemory.h:169
_In_ WDFMEMORY _Out_opt_ size_t * BufferSize
Definition: wdfmemory.h:254
_In_ PWDFDEVICE_INIT _In_ PWDF_PDO_EVENT_CALLBACKS DispatchTable
Definition: wdfpdo.h:248
_Reserved_ PVOID Reserved
Definition: winddi.h:3974
_Must_inspect_result_ _In_ ULONG Flags
Definition: wsk.h:170