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 #ifndef __REACTOS__
9 #define WINVER 0x0501
10 #define _WIN32_IE 0x0501
11 #define _WIN32_WINNT 0x0501
12 #endif
13 
14 #define WINE_NOWINSOCK
15 
16 #include <stdarg.h>
17 #include "windef.h"
18 #include "winbase.h"
19 #include "wininet.h"
20 #include "wininet_test.h"
21 
22 #include "wine/test.h"
23 
24 /***********************************************************************
25  * Compatibility macros
26  */
27 
28 #define DWORD_PTR UINT_PTR
29 #define LONG_PTR INT_PTR
30 #define ULONG_PTR UINT_PTR
31 
32 /***********************************************************************
33  * Windows API extension
34  */
35 
36 #if defined(_MSC_VER) && (_MSC_VER >= 1300) && defined(__cplusplus)
37 # define _TYPE_ALIGNMENT(type) __alignof(type)
38 #elif defined(__GNUC__)
39 # define _TYPE_ALIGNMENT(type) __alignof__(type)
40 #else
41 /*
42  * FIXME: May not be possible without a compiler extension
43  *        (if type is not just a name that is, otherwise the normal
44  *         TYPE_ALIGNMENT can be used)
45  */
46 #endif
47 
48 #if defined(TYPE_ALIGNMENT) && defined(_MSC_VER) && _MSC_VER >= 800 && !defined(__cplusplus)
49 #pragma warning(disable:4116)
50 #endif
51 
52 #if !defined(TYPE_ALIGNMENT) && defined(_TYPE_ALIGNMENT)
53 # define TYPE_ALIGNMENT _TYPE_ALIGNMENT
54 #endif
55 
56 /***********************************************************************
57  * Test helper macros
58  */
59 
60 #define TEST_TYPE_SIZE(type, size)             C_ASSERT(sizeof(type) == size);
61 
62 #ifdef TYPE_ALIGNMENT
63 # define TEST_TYPE_ALIGN(type, align)          C_ASSERT(TYPE_ALIGNMENT(type) == align);
64 #else
65 # define TEST_TYPE_ALIGN(type, align)
66 #endif
67 
68 #ifdef _TYPE_ALIGNMENT
69 # define TEST_TARGET_ALIGN(type, align)        C_ASSERT(_TYPE_ALIGNMENT(*(type)0) == align);
70 # define TEST_FIELD_ALIGN(type, field, align)  C_ASSERT(_TYPE_ALIGNMENT(((type*)0)->field) == align);
71 #else
72 # define TEST_TARGET_ALIGN(type, align)
73 # define TEST_FIELD_ALIGN(type, field, align)
74 #endif
75 
76 #define TEST_FIELD_OFFSET(type, field, offset) C_ASSERT(FIELD_OFFSET(type, field) == offset);
77 
78 #define TEST_TARGET_SIZE(type, size)            TEST_TYPE_SIZE(*(type)0, size)
79 #define TEST_FIELD_SIZE(type, field, size)      TEST_TYPE_SIZE((((type*)0)->field), size)
80 #define TEST_TYPE_SIGNED(type)                  C_ASSERT((type) -1 < 0);
81 #define TEST_TYPE_UNSIGNED(type)                C_ASSERT((type) -1 > 0);
82 
83 
84 #ifdef _WIN64
85 
86 static void test_pack_GOPHER_ABSTRACT_ATTRIBUTE_TYPEA(void)
87 {
88     /* GOPHER_ABSTRACT_ATTRIBUTE_TYPEA */
89     TEST_TYPE_SIZE   (GOPHER_ABSTRACT_ATTRIBUTE_TYPEA, 16)
90     TEST_TYPE_ALIGN  (GOPHER_ABSTRACT_ATTRIBUTE_TYPEA, 8)
91     TEST_FIELD_SIZE  (GOPHER_ABSTRACT_ATTRIBUTE_TYPEA, ShortAbstract, 8)
92     TEST_FIELD_ALIGN (GOPHER_ABSTRACT_ATTRIBUTE_TYPEA, ShortAbstract, 8)
93     TEST_FIELD_OFFSET(GOPHER_ABSTRACT_ATTRIBUTE_TYPEA, ShortAbstract, 0)
94     TEST_FIELD_SIZE  (GOPHER_ABSTRACT_ATTRIBUTE_TYPEA, AbstractFile, 8)
95     TEST_FIELD_ALIGN (GOPHER_ABSTRACT_ATTRIBUTE_TYPEA, AbstractFile, 8)
96     TEST_FIELD_OFFSET(GOPHER_ABSTRACT_ATTRIBUTE_TYPEA, AbstractFile, 8)
97 }
98 
99 static void test_pack_GOPHER_ABSTRACT_ATTRIBUTE_TYPEW(void)
100 {
101     /* GOPHER_ABSTRACT_ATTRIBUTE_TYPEW */
102     TEST_TYPE_SIZE   (GOPHER_ABSTRACT_ATTRIBUTE_TYPEW, 16)
103     TEST_TYPE_ALIGN  (GOPHER_ABSTRACT_ATTRIBUTE_TYPEW, 8)
104     TEST_FIELD_SIZE  (GOPHER_ABSTRACT_ATTRIBUTE_TYPEW, ShortAbstract, 8)
105     TEST_FIELD_ALIGN (GOPHER_ABSTRACT_ATTRIBUTE_TYPEW, ShortAbstract, 8)
106     TEST_FIELD_OFFSET(GOPHER_ABSTRACT_ATTRIBUTE_TYPEW, ShortAbstract, 0)
107     TEST_FIELD_SIZE  (GOPHER_ABSTRACT_ATTRIBUTE_TYPEW, AbstractFile, 8)
108     TEST_FIELD_ALIGN (GOPHER_ABSTRACT_ATTRIBUTE_TYPEW, AbstractFile, 8)
109     TEST_FIELD_OFFSET(GOPHER_ABSTRACT_ATTRIBUTE_TYPEW, AbstractFile, 8)
110 }
111 
112 static void test_pack_GOPHER_ADMIN_ATTRIBUTE_TYPEA(void)
113 {
114     /* GOPHER_ADMIN_ATTRIBUTE_TYPEA */
115     TEST_TYPE_SIZE   (GOPHER_ADMIN_ATTRIBUTE_TYPEA, 16)
116     TEST_TYPE_ALIGN  (GOPHER_ADMIN_ATTRIBUTE_TYPEA, 8)
117     TEST_FIELD_SIZE  (GOPHER_ADMIN_ATTRIBUTE_TYPEA, Comment, 8)
118     TEST_FIELD_ALIGN (GOPHER_ADMIN_ATTRIBUTE_TYPEA, Comment, 8)
119     TEST_FIELD_OFFSET(GOPHER_ADMIN_ATTRIBUTE_TYPEA, Comment, 0)
120     TEST_FIELD_SIZE  (GOPHER_ADMIN_ATTRIBUTE_TYPEA, EmailAddress, 8)
121     TEST_FIELD_ALIGN (GOPHER_ADMIN_ATTRIBUTE_TYPEA, EmailAddress, 8)
122     TEST_FIELD_OFFSET(GOPHER_ADMIN_ATTRIBUTE_TYPEA, EmailAddress, 8)
123 }
124 
125 static void test_pack_GOPHER_ADMIN_ATTRIBUTE_TYPEW(void)
126 {
127     /* GOPHER_ADMIN_ATTRIBUTE_TYPEW */
128     TEST_TYPE_SIZE   (GOPHER_ADMIN_ATTRIBUTE_TYPEW, 16)
129     TEST_TYPE_ALIGN  (GOPHER_ADMIN_ATTRIBUTE_TYPEW, 8)
130     TEST_FIELD_SIZE  (GOPHER_ADMIN_ATTRIBUTE_TYPEW, Comment, 8)
131     TEST_FIELD_ALIGN (GOPHER_ADMIN_ATTRIBUTE_TYPEW, Comment, 8)
132     TEST_FIELD_OFFSET(GOPHER_ADMIN_ATTRIBUTE_TYPEW, Comment, 0)
133     TEST_FIELD_SIZE  (GOPHER_ADMIN_ATTRIBUTE_TYPEW, EmailAddress, 8)
134     TEST_FIELD_ALIGN (GOPHER_ADMIN_ATTRIBUTE_TYPEW, EmailAddress, 8)
135     TEST_FIELD_OFFSET(GOPHER_ADMIN_ATTRIBUTE_TYPEW, EmailAddress, 8)
136 }
137 
138 static void test_pack_GOPHER_ASK_ATTRIBUTE_TYPEA(void)
139 {
140     /* GOPHER_ASK_ATTRIBUTE_TYPEA */
141     TEST_TYPE_SIZE   (GOPHER_ASK_ATTRIBUTE_TYPEA, 16)
142     TEST_TYPE_ALIGN  (GOPHER_ASK_ATTRIBUTE_TYPEA, 8)
143     TEST_FIELD_SIZE  (GOPHER_ASK_ATTRIBUTE_TYPEA, QuestionType, 8)
144     TEST_FIELD_ALIGN (GOPHER_ASK_ATTRIBUTE_TYPEA, QuestionType, 8)
145     TEST_FIELD_OFFSET(GOPHER_ASK_ATTRIBUTE_TYPEA, QuestionType, 0)
146     TEST_FIELD_SIZE  (GOPHER_ASK_ATTRIBUTE_TYPEA, QuestionText, 8)
147     TEST_FIELD_ALIGN (GOPHER_ASK_ATTRIBUTE_TYPEA, QuestionText, 8)
148     TEST_FIELD_OFFSET(GOPHER_ASK_ATTRIBUTE_TYPEA, QuestionText, 8)
149 }
150 
151 static void test_pack_GOPHER_ASK_ATTRIBUTE_TYPEW(void)
152 {
153     /* GOPHER_ASK_ATTRIBUTE_TYPEW */
154     TEST_TYPE_SIZE   (GOPHER_ASK_ATTRIBUTE_TYPEW, 16)
155     TEST_TYPE_ALIGN  (GOPHER_ASK_ATTRIBUTE_TYPEW, 8)
156     TEST_FIELD_SIZE  (GOPHER_ASK_ATTRIBUTE_TYPEW, QuestionType, 8)
157     TEST_FIELD_ALIGN (GOPHER_ASK_ATTRIBUTE_TYPEW, QuestionType, 8)
158     TEST_FIELD_OFFSET(GOPHER_ASK_ATTRIBUTE_TYPEW, QuestionType, 0)
159     TEST_FIELD_SIZE  (GOPHER_ASK_ATTRIBUTE_TYPEW, QuestionText, 8)
160     TEST_FIELD_ALIGN (GOPHER_ASK_ATTRIBUTE_TYPEW, QuestionText, 8)
161     TEST_FIELD_OFFSET(GOPHER_ASK_ATTRIBUTE_TYPEW, QuestionText, 8)
162 }
163 
164 static void test_pack_GOPHER_ATTRIBUTE_ENUMERATORA(void)
165 {
166     /* GOPHER_ATTRIBUTE_ENUMERATORA */
167     TEST_TYPE_SIZE   (GOPHER_ATTRIBUTE_ENUMERATORA, 8)
168     TEST_TYPE_ALIGN  (GOPHER_ATTRIBUTE_ENUMERATORA, 8)
169 }
170 
171 static void test_pack_GOPHER_ATTRIBUTE_ENUMERATORW(void)
172 {
173     /* GOPHER_ATTRIBUTE_ENUMERATORW */
174     TEST_TYPE_SIZE   (GOPHER_ATTRIBUTE_ENUMERATORW, 8)
175     TEST_TYPE_ALIGN  (GOPHER_ATTRIBUTE_ENUMERATORW, 8)
176 }
177 
178 static void test_pack_GOPHER_ATTRIBUTE_TYPEA(void)
179 {
180     /* GOPHER_ATTRIBUTE_TYPEA */
181     TEST_FIELD_SIZE  (GOPHER_ATTRIBUTE_TYPEA, CategoryId, 4)
182     TEST_FIELD_ALIGN (GOPHER_ATTRIBUTE_TYPEA, CategoryId, 4)
183     TEST_FIELD_OFFSET(GOPHER_ATTRIBUTE_TYPEA, CategoryId, 0)
184     TEST_FIELD_SIZE  (GOPHER_ATTRIBUTE_TYPEA, AttributeId, 4)
185     TEST_FIELD_ALIGN (GOPHER_ATTRIBUTE_TYPEA, AttributeId, 4)
186     TEST_FIELD_OFFSET(GOPHER_ATTRIBUTE_TYPEA, AttributeId, 4)
187 }
188 
189 static void test_pack_GOPHER_ATTRIBUTE_TYPEW(void)
190 {
191     /* GOPHER_ATTRIBUTE_TYPEW */
192     TEST_FIELD_SIZE  (GOPHER_ATTRIBUTE_TYPEW, CategoryId, 4)
193     TEST_FIELD_ALIGN (GOPHER_ATTRIBUTE_TYPEW, CategoryId, 4)
194     TEST_FIELD_OFFSET(GOPHER_ATTRIBUTE_TYPEW, CategoryId, 0)
195     TEST_FIELD_SIZE  (GOPHER_ATTRIBUTE_TYPEW, AttributeId, 4)
196     TEST_FIELD_ALIGN (GOPHER_ATTRIBUTE_TYPEW, AttributeId, 4)
197     TEST_FIELD_OFFSET(GOPHER_ATTRIBUTE_TYPEW, AttributeId, 4)
198 }
199 
200 static void test_pack_GOPHER_FIND_DATAA(void)
201 {
202     /* GOPHER_FIND_DATAA */
203     TEST_TYPE_SIZE   (GOPHER_FIND_DATAA, 808)
204     TEST_TYPE_ALIGN  (GOPHER_FIND_DATAA, 4)
205     TEST_FIELD_SIZE  (GOPHER_FIND_DATAA, DisplayString, 129)
206     TEST_FIELD_ALIGN (GOPHER_FIND_DATAA, DisplayString, 1)
207     TEST_FIELD_OFFSET(GOPHER_FIND_DATAA, DisplayString, 0)
208     TEST_FIELD_SIZE  (GOPHER_FIND_DATAA, GopherType, 4)
209     TEST_FIELD_ALIGN (GOPHER_FIND_DATAA, GopherType, 4)
210     TEST_FIELD_OFFSET(GOPHER_FIND_DATAA, GopherType, 132)
211     TEST_FIELD_SIZE  (GOPHER_FIND_DATAA, SizeLow, 4)
212     TEST_FIELD_ALIGN (GOPHER_FIND_DATAA, SizeLow, 4)
213     TEST_FIELD_OFFSET(GOPHER_FIND_DATAA, SizeLow, 136)
214     TEST_FIELD_SIZE  (GOPHER_FIND_DATAA, SizeHigh, 4)
215     TEST_FIELD_ALIGN (GOPHER_FIND_DATAA, SizeHigh, 4)
216     TEST_FIELD_OFFSET(GOPHER_FIND_DATAA, SizeHigh, 140)
217     TEST_FIELD_SIZE  (GOPHER_FIND_DATAA, LastModificationTime, 8)
218     TEST_FIELD_ALIGN (GOPHER_FIND_DATAA, LastModificationTime, 4)
219     TEST_FIELD_OFFSET(GOPHER_FIND_DATAA, LastModificationTime, 144)
220     TEST_FIELD_SIZE  (GOPHER_FIND_DATAA, Locator, 654)
221     TEST_FIELD_ALIGN (GOPHER_FIND_DATAA, Locator, 1)
222     TEST_FIELD_OFFSET(GOPHER_FIND_DATAA, Locator, 152)
223 }
224 
225 static void test_pack_GOPHER_FIND_DATAW(void)
226 {
227     /* GOPHER_FIND_DATAW */
228     TEST_TYPE_SIZE   (GOPHER_FIND_DATAW, 1588)
229     TEST_TYPE_ALIGN  (GOPHER_FIND_DATAW, 4)
230     TEST_FIELD_SIZE  (GOPHER_FIND_DATAW, DisplayString, 258)
231     TEST_FIELD_ALIGN (GOPHER_FIND_DATAW, DisplayString, 2)
232     TEST_FIELD_OFFSET(GOPHER_FIND_DATAW, DisplayString, 0)
233     TEST_FIELD_SIZE  (GOPHER_FIND_DATAW, GopherType, 4)
234     TEST_FIELD_ALIGN (GOPHER_FIND_DATAW, GopherType, 4)
235     TEST_FIELD_OFFSET(GOPHER_FIND_DATAW, GopherType, 260)
236     TEST_FIELD_SIZE  (GOPHER_FIND_DATAW, SizeLow, 4)
237     TEST_FIELD_ALIGN (GOPHER_FIND_DATAW, SizeLow, 4)
238     TEST_FIELD_OFFSET(GOPHER_FIND_DATAW, SizeLow, 264)
239     TEST_FIELD_SIZE  (GOPHER_FIND_DATAW, SizeHigh, 4)
240     TEST_FIELD_ALIGN (GOPHER_FIND_DATAW, SizeHigh, 4)
241     TEST_FIELD_OFFSET(GOPHER_FIND_DATAW, SizeHigh, 268)
242     TEST_FIELD_SIZE  (GOPHER_FIND_DATAW, LastModificationTime, 8)
243     TEST_FIELD_ALIGN (GOPHER_FIND_DATAW, LastModificationTime, 4)
244     TEST_FIELD_OFFSET(GOPHER_FIND_DATAW, LastModificationTime, 272)
245     TEST_FIELD_SIZE  (GOPHER_FIND_DATAW, Locator, 1308)
246     TEST_FIELD_ALIGN (GOPHER_FIND_DATAW, Locator, 2)
247     TEST_FIELD_OFFSET(GOPHER_FIND_DATAW, Locator, 280)
248 }
249 
250 static void test_pack_GOPHER_GEOGRAPHICAL_LOCATION_ATTRIBUTE_TYPE(void)
251 {
252     /* GOPHER_GEOGRAPHICAL_LOCATION_ATTRIBUTE_TYPE */
253     TEST_TYPE_SIZE   (GOPHER_GEOGRAPHICAL_LOCATION_ATTRIBUTE_TYPE, 24)
254     TEST_TYPE_ALIGN  (GOPHER_GEOGRAPHICAL_LOCATION_ATTRIBUTE_TYPE, 4)
255     TEST_FIELD_SIZE  (GOPHER_GEOGRAPHICAL_LOCATION_ATTRIBUTE_TYPE, DegreesNorth, 4)
256     TEST_FIELD_ALIGN (GOPHER_GEOGRAPHICAL_LOCATION_ATTRIBUTE_TYPE, DegreesNorth, 4)
257     TEST_FIELD_OFFSET(GOPHER_GEOGRAPHICAL_LOCATION_ATTRIBUTE_TYPE, DegreesNorth, 0)
258     TEST_FIELD_SIZE  (GOPHER_GEOGRAPHICAL_LOCATION_ATTRIBUTE_TYPE, MinutesNorth, 4)
259     TEST_FIELD_ALIGN (GOPHER_GEOGRAPHICAL_LOCATION_ATTRIBUTE_TYPE, MinutesNorth, 4)
260     TEST_FIELD_OFFSET(GOPHER_GEOGRAPHICAL_LOCATION_ATTRIBUTE_TYPE, MinutesNorth, 4)
261     TEST_FIELD_SIZE  (GOPHER_GEOGRAPHICAL_LOCATION_ATTRIBUTE_TYPE, SecondsNorth, 4)
262     TEST_FIELD_ALIGN (GOPHER_GEOGRAPHICAL_LOCATION_ATTRIBUTE_TYPE, SecondsNorth, 4)
263     TEST_FIELD_OFFSET(GOPHER_GEOGRAPHICAL_LOCATION_ATTRIBUTE_TYPE, SecondsNorth, 8)
264     TEST_FIELD_SIZE  (GOPHER_GEOGRAPHICAL_LOCATION_ATTRIBUTE_TYPE, DegreesEast, 4)
265     TEST_FIELD_ALIGN (GOPHER_GEOGRAPHICAL_LOCATION_ATTRIBUTE_TYPE, DegreesEast, 4)
266     TEST_FIELD_OFFSET(GOPHER_GEOGRAPHICAL_LOCATION_ATTRIBUTE_TYPE, DegreesEast, 12)
267     TEST_FIELD_SIZE  (GOPHER_GEOGRAPHICAL_LOCATION_ATTRIBUTE_TYPE, MinutesEast, 4)
268     TEST_FIELD_ALIGN (GOPHER_GEOGRAPHICAL_LOCATION_ATTRIBUTE_TYPE, MinutesEast, 4)
269     TEST_FIELD_OFFSET(GOPHER_GEOGRAPHICAL_LOCATION_ATTRIBUTE_TYPE, MinutesEast, 16)
270     TEST_FIELD_SIZE  (GOPHER_GEOGRAPHICAL_LOCATION_ATTRIBUTE_TYPE, SecondsEast, 4)
271     TEST_FIELD_ALIGN (GOPHER_GEOGRAPHICAL_LOCATION_ATTRIBUTE_TYPE, SecondsEast, 4)
272     TEST_FIELD_OFFSET(GOPHER_GEOGRAPHICAL_LOCATION_ATTRIBUTE_TYPE, SecondsEast, 20)
273 }
274 
275 static void test_pack_GOPHER_LOCATION_ATTRIBUTE_TYPEA(void)
276 {
277     /* GOPHER_LOCATION_ATTRIBUTE_TYPEA */
278     TEST_TYPE_SIZE   (GOPHER_LOCATION_ATTRIBUTE_TYPEA, 8)
279     TEST_TYPE_ALIGN  (GOPHER_LOCATION_ATTRIBUTE_TYPEA, 8)
280     TEST_FIELD_SIZE  (GOPHER_LOCATION_ATTRIBUTE_TYPEA, Location, 8)
281     TEST_FIELD_ALIGN (GOPHER_LOCATION_ATTRIBUTE_TYPEA, Location, 8)
282     TEST_FIELD_OFFSET(GOPHER_LOCATION_ATTRIBUTE_TYPEA, Location, 0)
283 }
284 
285 static void test_pack_GOPHER_LOCATION_ATTRIBUTE_TYPEW(void)
286 {
287     /* GOPHER_LOCATION_ATTRIBUTE_TYPEW */
288     TEST_TYPE_SIZE   (GOPHER_LOCATION_ATTRIBUTE_TYPEW, 8)
289     TEST_TYPE_ALIGN  (GOPHER_LOCATION_ATTRIBUTE_TYPEW, 8)
290     TEST_FIELD_SIZE  (GOPHER_LOCATION_ATTRIBUTE_TYPEW, Location, 8)
291     TEST_FIELD_ALIGN (GOPHER_LOCATION_ATTRIBUTE_TYPEW, Location, 8)
292     TEST_FIELD_OFFSET(GOPHER_LOCATION_ATTRIBUTE_TYPEW, Location, 0)
293 }
294 
295 static void test_pack_GOPHER_MOD_DATE_ATTRIBUTE_TYPE(void)
296 {
297     /* GOPHER_MOD_DATE_ATTRIBUTE_TYPE */
298     TEST_TYPE_SIZE   (GOPHER_MOD_DATE_ATTRIBUTE_TYPE, 8)
299     TEST_TYPE_ALIGN  (GOPHER_MOD_DATE_ATTRIBUTE_TYPE, 4)
300     TEST_FIELD_SIZE  (GOPHER_MOD_DATE_ATTRIBUTE_TYPE, DateAndTime, 8)
301     TEST_FIELD_ALIGN (GOPHER_MOD_DATE_ATTRIBUTE_TYPE, DateAndTime, 4)
302     TEST_FIELD_OFFSET(GOPHER_MOD_DATE_ATTRIBUTE_TYPE, DateAndTime, 0)
303 }
304 
305 static void test_pack_GOPHER_ORGANIZATION_ATTRIBUTE_TYPEA(void)
306 {
307     /* GOPHER_ORGANIZATION_ATTRIBUTE_TYPEA */
308     TEST_TYPE_SIZE   (GOPHER_ORGANIZATION_ATTRIBUTE_TYPEA, 8)
309     TEST_TYPE_ALIGN  (GOPHER_ORGANIZATION_ATTRIBUTE_TYPEA, 8)
310     TEST_FIELD_SIZE  (GOPHER_ORGANIZATION_ATTRIBUTE_TYPEA, Organization, 8)
311     TEST_FIELD_ALIGN (GOPHER_ORGANIZATION_ATTRIBUTE_TYPEA, Organization, 8)
312     TEST_FIELD_OFFSET(GOPHER_ORGANIZATION_ATTRIBUTE_TYPEA, Organization, 0)
313 }
314 
315 static void test_pack_GOPHER_ORGANIZATION_ATTRIBUTE_TYPEW(void)
316 {
317     /* GOPHER_ORGANIZATION_ATTRIBUTE_TYPEW */
318     TEST_TYPE_SIZE   (GOPHER_ORGANIZATION_ATTRIBUTE_TYPEW, 8)
319     TEST_TYPE_ALIGN  (GOPHER_ORGANIZATION_ATTRIBUTE_TYPEW, 8)
320     TEST_FIELD_SIZE  (GOPHER_ORGANIZATION_ATTRIBUTE_TYPEW, Organization, 8)
321     TEST_FIELD_ALIGN (GOPHER_ORGANIZATION_ATTRIBUTE_TYPEW, Organization, 8)
322     TEST_FIELD_OFFSET(GOPHER_ORGANIZATION_ATTRIBUTE_TYPEW, Organization, 0)
323 }
324 
325 static void test_pack_GOPHER_PROVIDER_ATTRIBUTE_TYPEA(void)
326 {
327     /* GOPHER_PROVIDER_ATTRIBUTE_TYPEA */
328     TEST_TYPE_SIZE   (GOPHER_PROVIDER_ATTRIBUTE_TYPEA, 8)
329     TEST_TYPE_ALIGN  (GOPHER_PROVIDER_ATTRIBUTE_TYPEA, 8)
330     TEST_FIELD_SIZE  (GOPHER_PROVIDER_ATTRIBUTE_TYPEA, Provider, 8)
331     TEST_FIELD_ALIGN (GOPHER_PROVIDER_ATTRIBUTE_TYPEA, Provider, 8)
332     TEST_FIELD_OFFSET(GOPHER_PROVIDER_ATTRIBUTE_TYPEA, Provider, 0)
333 }
334 
335 static void test_pack_GOPHER_PROVIDER_ATTRIBUTE_TYPEW(void)
336 {
337     /* GOPHER_PROVIDER_ATTRIBUTE_TYPEW */
338     TEST_TYPE_SIZE   (GOPHER_PROVIDER_ATTRIBUTE_TYPEW, 8)
339     TEST_TYPE_ALIGN  (GOPHER_PROVIDER_ATTRIBUTE_TYPEW, 8)
340     TEST_FIELD_SIZE  (GOPHER_PROVIDER_ATTRIBUTE_TYPEW, Provider, 8)
341     TEST_FIELD_ALIGN (GOPHER_PROVIDER_ATTRIBUTE_TYPEW, Provider, 8)
342     TEST_FIELD_OFFSET(GOPHER_PROVIDER_ATTRIBUTE_TYPEW, Provider, 0)
343 }
344 
345 static void test_pack_GOPHER_SCORE_ATTRIBUTE_TYPE(void)
346 {
347     /* GOPHER_SCORE_ATTRIBUTE_TYPE */
348     TEST_TYPE_SIZE   (GOPHER_SCORE_ATTRIBUTE_TYPE, 4)
349     TEST_TYPE_ALIGN  (GOPHER_SCORE_ATTRIBUTE_TYPE, 4)
350     TEST_FIELD_SIZE  (GOPHER_SCORE_ATTRIBUTE_TYPE, Score, 4)
351     TEST_FIELD_ALIGN (GOPHER_SCORE_ATTRIBUTE_TYPE, Score, 4)
352     TEST_FIELD_OFFSET(GOPHER_SCORE_ATTRIBUTE_TYPE, Score, 0)
353 }
354 
355 static void test_pack_GOPHER_SCORE_RANGE_ATTRIBUTE_TYPE(void)
356 {
357     /* GOPHER_SCORE_RANGE_ATTRIBUTE_TYPE */
358     TEST_TYPE_SIZE   (GOPHER_SCORE_RANGE_ATTRIBUTE_TYPE, 8)
359     TEST_TYPE_ALIGN  (GOPHER_SCORE_RANGE_ATTRIBUTE_TYPE, 4)
360     TEST_FIELD_SIZE  (GOPHER_SCORE_RANGE_ATTRIBUTE_TYPE, LowerBound, 4)
361     TEST_FIELD_ALIGN (GOPHER_SCORE_RANGE_ATTRIBUTE_TYPE, LowerBound, 4)
362     TEST_FIELD_OFFSET(GOPHER_SCORE_RANGE_ATTRIBUTE_TYPE, LowerBound, 0)
363     TEST_FIELD_SIZE  (GOPHER_SCORE_RANGE_ATTRIBUTE_TYPE, UpperBound, 4)
364     TEST_FIELD_ALIGN (GOPHER_SCORE_RANGE_ATTRIBUTE_TYPE, UpperBound, 4)
365     TEST_FIELD_OFFSET(GOPHER_SCORE_RANGE_ATTRIBUTE_TYPE, UpperBound, 4)
366 }
367 
368 static void test_pack_GOPHER_SITE_ATTRIBUTE_TYPEA(void)
369 {
370     /* GOPHER_SITE_ATTRIBUTE_TYPEA */
371     TEST_TYPE_SIZE   (GOPHER_SITE_ATTRIBUTE_TYPEA, 8)
372     TEST_TYPE_ALIGN  (GOPHER_SITE_ATTRIBUTE_TYPEA, 8)
373     TEST_FIELD_SIZE  (GOPHER_SITE_ATTRIBUTE_TYPEA, Site, 8)
374     TEST_FIELD_ALIGN (GOPHER_SITE_ATTRIBUTE_TYPEA, Site, 8)
375     TEST_FIELD_OFFSET(GOPHER_SITE_ATTRIBUTE_TYPEA, Site, 0)
376 }
377 
378 static void test_pack_GOPHER_SITE_ATTRIBUTE_TYPEW(void)
379 {
380     /* GOPHER_SITE_ATTRIBUTE_TYPEW */
381     TEST_TYPE_SIZE   (GOPHER_SITE_ATTRIBUTE_TYPEW, 8)
382     TEST_TYPE_ALIGN  (GOPHER_SITE_ATTRIBUTE_TYPEW, 8)
383     TEST_FIELD_SIZE  (GOPHER_SITE_ATTRIBUTE_TYPEW, Site, 8)
384     TEST_FIELD_ALIGN (GOPHER_SITE_ATTRIBUTE_TYPEW, Site, 8)
385     TEST_FIELD_OFFSET(GOPHER_SITE_ATTRIBUTE_TYPEW, Site, 0)
386 }
387 
388 static void test_pack_GOPHER_TIMEZONE_ATTRIBUTE_TYPE(void)
389 {
390     /* GOPHER_TIMEZONE_ATTRIBUTE_TYPE */
391     TEST_TYPE_SIZE   (GOPHER_TIMEZONE_ATTRIBUTE_TYPE, 4)
392     TEST_TYPE_ALIGN  (GOPHER_TIMEZONE_ATTRIBUTE_TYPE, 4)
393     TEST_FIELD_SIZE  (GOPHER_TIMEZONE_ATTRIBUTE_TYPE, Zone, 4)
394     TEST_FIELD_ALIGN (GOPHER_TIMEZONE_ATTRIBUTE_TYPE, Zone, 4)
395     TEST_FIELD_OFFSET(GOPHER_TIMEZONE_ATTRIBUTE_TYPE, Zone, 0)
396 }
397 
398 static void test_pack_GOPHER_TTL_ATTRIBUTE_TYPE(void)
399 {
400     /* GOPHER_TTL_ATTRIBUTE_TYPE */
401     TEST_TYPE_SIZE   (GOPHER_TTL_ATTRIBUTE_TYPE, 4)
402     TEST_TYPE_ALIGN  (GOPHER_TTL_ATTRIBUTE_TYPE, 4)
403     TEST_FIELD_SIZE  (GOPHER_TTL_ATTRIBUTE_TYPE, Ttl, 4)
404     TEST_FIELD_ALIGN (GOPHER_TTL_ATTRIBUTE_TYPE, Ttl, 4)
405     TEST_FIELD_OFFSET(GOPHER_TTL_ATTRIBUTE_TYPE, Ttl, 0)
406 }
407 
408 static void test_pack_GOPHER_UNKNOWN_ATTRIBUTE_TYPEA(void)
409 {
410     /* GOPHER_UNKNOWN_ATTRIBUTE_TYPEA */
411     TEST_TYPE_SIZE   (GOPHER_UNKNOWN_ATTRIBUTE_TYPEA, 8)
412     TEST_TYPE_ALIGN  (GOPHER_UNKNOWN_ATTRIBUTE_TYPEA, 8)
413     TEST_FIELD_SIZE  (GOPHER_UNKNOWN_ATTRIBUTE_TYPEA, Text, 8)
414     TEST_FIELD_ALIGN (GOPHER_UNKNOWN_ATTRIBUTE_TYPEA, Text, 8)
415     TEST_FIELD_OFFSET(GOPHER_UNKNOWN_ATTRIBUTE_TYPEA, Text, 0)
416 }
417 
418 static void test_pack_GOPHER_UNKNOWN_ATTRIBUTE_TYPEW(void)
419 {
420     /* GOPHER_UNKNOWN_ATTRIBUTE_TYPEW */
421     TEST_TYPE_SIZE   (GOPHER_UNKNOWN_ATTRIBUTE_TYPEW, 8)
422     TEST_TYPE_ALIGN  (GOPHER_UNKNOWN_ATTRIBUTE_TYPEW, 8)
423     TEST_FIELD_SIZE  (GOPHER_UNKNOWN_ATTRIBUTE_TYPEW, Text, 8)
424     TEST_FIELD_ALIGN (GOPHER_UNKNOWN_ATTRIBUTE_TYPEW, Text, 8)
425     TEST_FIELD_OFFSET(GOPHER_UNKNOWN_ATTRIBUTE_TYPEW, Text, 0)
426 }
427 
428 static void test_pack_GOPHER_VERONICA_ATTRIBUTE_TYPE(void)
429 {
430     /* GOPHER_VERONICA_ATTRIBUTE_TYPE */
431     TEST_TYPE_SIZE   (GOPHER_VERONICA_ATTRIBUTE_TYPE, 4)
432     TEST_TYPE_ALIGN  (GOPHER_VERONICA_ATTRIBUTE_TYPE, 4)
433     TEST_FIELD_SIZE  (GOPHER_VERONICA_ATTRIBUTE_TYPE, TreeWalk, 4)
434     TEST_FIELD_ALIGN (GOPHER_VERONICA_ATTRIBUTE_TYPE, TreeWalk, 4)
435     TEST_FIELD_OFFSET(GOPHER_VERONICA_ATTRIBUTE_TYPE, TreeWalk, 0)
436 }
437 
438 static void test_pack_GOPHER_VERSION_ATTRIBUTE_TYPEA(void)
439 {
440     /* GOPHER_VERSION_ATTRIBUTE_TYPEA */
441     TEST_TYPE_SIZE   (GOPHER_VERSION_ATTRIBUTE_TYPEA, 8)
442     TEST_TYPE_ALIGN  (GOPHER_VERSION_ATTRIBUTE_TYPEA, 8)
443     TEST_FIELD_SIZE  (GOPHER_VERSION_ATTRIBUTE_TYPEA, Version, 8)
444     TEST_FIELD_ALIGN (GOPHER_VERSION_ATTRIBUTE_TYPEA, Version, 8)
445     TEST_FIELD_OFFSET(GOPHER_VERSION_ATTRIBUTE_TYPEA, Version, 0)
446 }
447 
448 static void test_pack_GOPHER_VERSION_ATTRIBUTE_TYPEW(void)
449 {
450     /* GOPHER_VERSION_ATTRIBUTE_TYPEW */
451     TEST_TYPE_SIZE   (GOPHER_VERSION_ATTRIBUTE_TYPEW, 8)
452     TEST_TYPE_ALIGN  (GOPHER_VERSION_ATTRIBUTE_TYPEW, 8)
453     TEST_FIELD_SIZE  (GOPHER_VERSION_ATTRIBUTE_TYPEW, Version, 8)
454     TEST_FIELD_ALIGN (GOPHER_VERSION_ATTRIBUTE_TYPEW, Version, 8)
455     TEST_FIELD_OFFSET(GOPHER_VERSION_ATTRIBUTE_TYPEW, Version, 0)
456 }
457 
458 static void test_pack_GOPHER_VIEW_ATTRIBUTE_TYPEA(void)
459 {
460     /* GOPHER_VIEW_ATTRIBUTE_TYPEA */
461     TEST_TYPE_SIZE   (GOPHER_VIEW_ATTRIBUTE_TYPEA, 24)
462     TEST_TYPE_ALIGN  (GOPHER_VIEW_ATTRIBUTE_TYPEA, 8)
463     TEST_FIELD_SIZE  (GOPHER_VIEW_ATTRIBUTE_TYPEA, ContentType, 8)
464     TEST_FIELD_ALIGN (GOPHER_VIEW_ATTRIBUTE_TYPEA, ContentType, 8)
465     TEST_FIELD_OFFSET(GOPHER_VIEW_ATTRIBUTE_TYPEA, ContentType, 0)
466     TEST_FIELD_SIZE  (GOPHER_VIEW_ATTRIBUTE_TYPEA, Language, 8)
467     TEST_FIELD_ALIGN (GOPHER_VIEW_ATTRIBUTE_TYPEA, Language, 8)
468     TEST_FIELD_OFFSET(GOPHER_VIEW_ATTRIBUTE_TYPEA, Language, 8)
469     TEST_FIELD_SIZE  (GOPHER_VIEW_ATTRIBUTE_TYPEA, Size, 4)
470     TEST_FIELD_ALIGN (GOPHER_VIEW_ATTRIBUTE_TYPEA, Size, 4)
471     TEST_FIELD_OFFSET(GOPHER_VIEW_ATTRIBUTE_TYPEA, Size, 16)
472 }
473 
474 static void test_pack_GOPHER_VIEW_ATTRIBUTE_TYPEW(void)
475 {
476     /* GOPHER_VIEW_ATTRIBUTE_TYPEW */
477     TEST_TYPE_SIZE   (GOPHER_VIEW_ATTRIBUTE_TYPEW, 24)
478     TEST_TYPE_ALIGN  (GOPHER_VIEW_ATTRIBUTE_TYPEW, 8)
479     TEST_FIELD_SIZE  (GOPHER_VIEW_ATTRIBUTE_TYPEW, ContentType, 8)
480     TEST_FIELD_ALIGN (GOPHER_VIEW_ATTRIBUTE_TYPEW, ContentType, 8)
481     TEST_FIELD_OFFSET(GOPHER_VIEW_ATTRIBUTE_TYPEW, ContentType, 0)
482     TEST_FIELD_SIZE  (GOPHER_VIEW_ATTRIBUTE_TYPEW, Language, 8)
483     TEST_FIELD_ALIGN (GOPHER_VIEW_ATTRIBUTE_TYPEW, Language, 8)
484     TEST_FIELD_OFFSET(GOPHER_VIEW_ATTRIBUTE_TYPEW, Language, 8)
485     TEST_FIELD_SIZE  (GOPHER_VIEW_ATTRIBUTE_TYPEW, Size, 4)
486     TEST_FIELD_ALIGN (GOPHER_VIEW_ATTRIBUTE_TYPEW, Size, 4)
487     TEST_FIELD_OFFSET(GOPHER_VIEW_ATTRIBUTE_TYPEW, Size, 16)
488 }
489 
490 static void test_pack_GROUPID(void)
491 {
492     /* GROUPID */
493     TEST_TYPE_SIZE   (GROUPID, 8)
494     TEST_TYPE_ALIGN  (GROUPID, 8)
495     TEST_TYPE_SIGNED(GROUPID)
496 }
497 
498 static void test_pack_HINTERNET(void)
499 {
500     /* HINTERNET */
501     TEST_TYPE_SIZE   (HINTERNET, 8)
502     TEST_TYPE_ALIGN  (HINTERNET, 8)
503 }
504 
505 static void test_pack_HTTP_VERSION_INFO(void)
506 {
507     /* HTTP_VERSION_INFO */
508     TEST_TYPE_SIZE   (HTTP_VERSION_INFO, 8)
509     TEST_TYPE_ALIGN  (HTTP_VERSION_INFO, 4)
510     TEST_FIELD_SIZE  (HTTP_VERSION_INFO, dwMajorVersion, 4)
511     TEST_FIELD_ALIGN (HTTP_VERSION_INFO, dwMajorVersion, 4)
512     TEST_FIELD_OFFSET(HTTP_VERSION_INFO, dwMajorVersion, 0)
513     TEST_FIELD_SIZE  (HTTP_VERSION_INFO, dwMinorVersion, 4)
514     TEST_FIELD_ALIGN (HTTP_VERSION_INFO, dwMinorVersion, 4)
515     TEST_FIELD_OFFSET(HTTP_VERSION_INFO, dwMinorVersion, 4)
516 }
517 
518 static void test_pack_INTERNET_ASYNC_RESULT(void)
519 {
520     /* INTERNET_ASYNC_RESULT */
521     TEST_TYPE_SIZE   (INTERNET_ASYNC_RESULT, 16)
522     TEST_TYPE_ALIGN  (INTERNET_ASYNC_RESULT, 8)
523     TEST_FIELD_SIZE  (INTERNET_ASYNC_RESULT, dwResult, 8)
524     TEST_FIELD_ALIGN (INTERNET_ASYNC_RESULT, dwResult, 8)
525     TEST_FIELD_OFFSET(INTERNET_ASYNC_RESULT, dwResult, 0)
526     TEST_FIELD_SIZE  (INTERNET_ASYNC_RESULT, dwError, 4)
527     TEST_FIELD_ALIGN (INTERNET_ASYNC_RESULT, dwError, 4)
528     TEST_FIELD_OFFSET(INTERNET_ASYNC_RESULT, dwError, 8)
529 }
530 
531 static void test_pack_INTERNET_AUTH_NOTIFY_DATA(void)
532 {
533     /* INTERNET_AUTH_NOTIFY_DATA */
534     TEST_TYPE_SIZE   (INTERNET_AUTH_NOTIFY_DATA, 24)
535     TEST_TYPE_ALIGN  (INTERNET_AUTH_NOTIFY_DATA, 8)
536     TEST_FIELD_SIZE  (INTERNET_AUTH_NOTIFY_DATA, cbStruct, 4)
537     TEST_FIELD_ALIGN (INTERNET_AUTH_NOTIFY_DATA, cbStruct, 4)
538     TEST_FIELD_OFFSET(INTERNET_AUTH_NOTIFY_DATA, cbStruct, 0)
539     TEST_FIELD_SIZE  (INTERNET_AUTH_NOTIFY_DATA, dwOptions, 4)
540     TEST_FIELD_ALIGN (INTERNET_AUTH_NOTIFY_DATA, dwOptions, 4)
541     TEST_FIELD_OFFSET(INTERNET_AUTH_NOTIFY_DATA, dwOptions, 4)
542     TEST_FIELD_SIZE  (INTERNET_AUTH_NOTIFY_DATA, pfnNotify, 8)
543     TEST_FIELD_ALIGN (INTERNET_AUTH_NOTIFY_DATA, pfnNotify, 8)
544     TEST_FIELD_OFFSET(INTERNET_AUTH_NOTIFY_DATA, pfnNotify, 8)
545     TEST_FIELD_SIZE  (INTERNET_AUTH_NOTIFY_DATA, dwContext, 8)
546     TEST_FIELD_ALIGN (INTERNET_AUTH_NOTIFY_DATA, dwContext, 8)
547     TEST_FIELD_OFFSET(INTERNET_AUTH_NOTIFY_DATA, dwContext, 16)
548 }
549 
550 static void test_pack_INTERNET_BUFFERSA(void)
551 {
552     /* INTERNET_BUFFERSA */
553     TEST_TYPE_SIZE   (INTERNET_BUFFERSA, 56)
554     TEST_TYPE_ALIGN  (INTERNET_BUFFERSA, 8)
555     TEST_FIELD_SIZE  (INTERNET_BUFFERSA, dwStructSize, 4)
556     TEST_FIELD_ALIGN (INTERNET_BUFFERSA, dwStructSize, 4)
557     TEST_FIELD_OFFSET(INTERNET_BUFFERSA, dwStructSize, 0)
558     TEST_FIELD_SIZE  (INTERNET_BUFFERSA, Next, 8)
559     TEST_FIELD_ALIGN (INTERNET_BUFFERSA, Next, 8)
560     TEST_FIELD_OFFSET(INTERNET_BUFFERSA, Next, 8)
561     TEST_FIELD_SIZE  (INTERNET_BUFFERSA, lpcszHeader, 8)
562     TEST_FIELD_ALIGN (INTERNET_BUFFERSA, lpcszHeader, 8)
563     TEST_FIELD_OFFSET(INTERNET_BUFFERSA, lpcszHeader, 16)
564     TEST_FIELD_SIZE  (INTERNET_BUFFERSA, dwHeadersLength, 4)
565     TEST_FIELD_ALIGN (INTERNET_BUFFERSA, dwHeadersLength, 4)
566     TEST_FIELD_OFFSET(INTERNET_BUFFERSA, dwHeadersLength, 24)
567     TEST_FIELD_SIZE  (INTERNET_BUFFERSA, dwHeadersTotal, 4)
568     TEST_FIELD_ALIGN (INTERNET_BUFFERSA, dwHeadersTotal, 4)
569     TEST_FIELD_OFFSET(INTERNET_BUFFERSA, dwHeadersTotal, 28)
570     TEST_FIELD_SIZE  (INTERNET_BUFFERSA, lpvBuffer, 8)
571     TEST_FIELD_ALIGN (INTERNET_BUFFERSA, lpvBuffer, 8)
572     TEST_FIELD_OFFSET(INTERNET_BUFFERSA, lpvBuffer, 32)
573     TEST_FIELD_SIZE  (INTERNET_BUFFERSA, dwBufferLength, 4)
574     TEST_FIELD_ALIGN (INTERNET_BUFFERSA, dwBufferLength, 4)
575     TEST_FIELD_OFFSET(INTERNET_BUFFERSA, dwBufferLength, 40)
576     TEST_FIELD_SIZE  (INTERNET_BUFFERSA, dwBufferTotal, 4)
577     TEST_FIELD_ALIGN (INTERNET_BUFFERSA, dwBufferTotal, 4)
578     TEST_FIELD_OFFSET(INTERNET_BUFFERSA, dwBufferTotal, 44)
579     TEST_FIELD_SIZE  (INTERNET_BUFFERSA, dwOffsetLow, 4)
580     TEST_FIELD_ALIGN (INTERNET_BUFFERSA, dwOffsetLow, 4)
581     TEST_FIELD_OFFSET(INTERNET_BUFFERSA, dwOffsetLow, 48)
582     TEST_FIELD_SIZE  (INTERNET_BUFFERSA, dwOffsetHigh, 4)
583     TEST_FIELD_ALIGN (INTERNET_BUFFERSA, dwOffsetHigh, 4)
584     TEST_FIELD_OFFSET(INTERNET_BUFFERSA, dwOffsetHigh, 52)
585 }
586 
587 static void test_pack_INTERNET_BUFFERSW(void)
588 {
589     /* INTERNET_BUFFERSW */
590     TEST_TYPE_SIZE   (INTERNET_BUFFERSW, 56)
591     TEST_TYPE_ALIGN  (INTERNET_BUFFERSW, 8)
592     TEST_FIELD_SIZE  (INTERNET_BUFFERSW, dwStructSize, 4)
593     TEST_FIELD_ALIGN (INTERNET_BUFFERSW, dwStructSize, 4)
594     TEST_FIELD_OFFSET(INTERNET_BUFFERSW, dwStructSize, 0)
595     TEST_FIELD_SIZE  (INTERNET_BUFFERSW, Next, 8)
596     TEST_FIELD_ALIGN (INTERNET_BUFFERSW, Next, 8)
597     TEST_FIELD_OFFSET(INTERNET_BUFFERSW, Next, 8)
598     TEST_FIELD_SIZE  (INTERNET_BUFFERSW, lpcszHeader, 8)
599     TEST_FIELD_ALIGN (INTERNET_BUFFERSW, lpcszHeader, 8)
600     TEST_FIELD_OFFSET(INTERNET_BUFFERSW, lpcszHeader, 16)
601     TEST_FIELD_SIZE  (INTERNET_BUFFERSW, dwHeadersLength, 4)
602     TEST_FIELD_ALIGN (INTERNET_BUFFERSW, dwHeadersLength, 4)
603     TEST_FIELD_OFFSET(INTERNET_BUFFERSW, dwHeadersLength, 24)
604     TEST_FIELD_SIZE  (INTERNET_BUFFERSW, dwHeadersTotal, 4)
605     TEST_FIELD_ALIGN (INTERNET_BUFFERSW, dwHeadersTotal, 4)
606     TEST_FIELD_OFFSET(INTERNET_BUFFERSW, dwHeadersTotal, 28)
607     TEST_FIELD_SIZE  (INTERNET_BUFFERSW, lpvBuffer, 8)
608     TEST_FIELD_ALIGN (INTERNET_BUFFERSW, lpvBuffer, 8)
609     TEST_FIELD_OFFSET(INTERNET_BUFFERSW, lpvBuffer, 32)
610     TEST_FIELD_SIZE  (INTERNET_BUFFERSW, dwBufferLength, 4)
611     TEST_FIELD_ALIGN (INTERNET_BUFFERSW, dwBufferLength, 4)
612     TEST_FIELD_OFFSET(INTERNET_BUFFERSW, dwBufferLength, 40)
613     TEST_FIELD_SIZE  (INTERNET_BUFFERSW, dwBufferTotal, 4)
614     TEST_FIELD_ALIGN (INTERNET_BUFFERSW, dwBufferTotal, 4)
615     TEST_FIELD_OFFSET(INTERNET_BUFFERSW, dwBufferTotal, 44)
616     TEST_FIELD_SIZE  (INTERNET_BUFFERSW, dwOffsetLow, 4)
617     TEST_FIELD_ALIGN (INTERNET_BUFFERSW, dwOffsetLow, 4)
618     TEST_FIELD_OFFSET(INTERNET_BUFFERSW, dwOffsetLow, 48)
619     TEST_FIELD_SIZE  (INTERNET_BUFFERSW, dwOffsetHigh, 4)
620     TEST_FIELD_ALIGN (INTERNET_BUFFERSW, dwOffsetHigh, 4)
621     TEST_FIELD_OFFSET(INTERNET_BUFFERSW, dwOffsetHigh, 52)
622 }
623 
624 static void test_pack_INTERNET_CACHE_ENTRY_INFOA(void)
625 {
626     /* INTERNET_CACHE_ENTRY_INFOA */
627     TEST_FIELD_SIZE  (INTERNET_CACHE_ENTRY_INFOA, dwStructSize, 4)
628     TEST_FIELD_ALIGN (INTERNET_CACHE_ENTRY_INFOA, dwStructSize, 4)
629     TEST_FIELD_OFFSET(INTERNET_CACHE_ENTRY_INFOA, dwStructSize, 0)
630     TEST_FIELD_SIZE  (INTERNET_CACHE_ENTRY_INFOA, lpszSourceUrlName, 8)
631     TEST_FIELD_ALIGN (INTERNET_CACHE_ENTRY_INFOA, lpszSourceUrlName, 8)
632     TEST_FIELD_OFFSET(INTERNET_CACHE_ENTRY_INFOA, lpszSourceUrlName, 8)
633     TEST_FIELD_SIZE  (INTERNET_CACHE_ENTRY_INFOA, lpszLocalFileName, 8)
634     TEST_FIELD_ALIGN (INTERNET_CACHE_ENTRY_INFOA, lpszLocalFileName, 8)
635     TEST_FIELD_OFFSET(INTERNET_CACHE_ENTRY_INFOA, lpszLocalFileName, 16)
636     TEST_FIELD_SIZE  (INTERNET_CACHE_ENTRY_INFOA, CacheEntryType, 4)
637     TEST_FIELD_ALIGN (INTERNET_CACHE_ENTRY_INFOA, CacheEntryType, 4)
638     TEST_FIELD_OFFSET(INTERNET_CACHE_ENTRY_INFOA, CacheEntryType, 24)
639     TEST_FIELD_SIZE  (INTERNET_CACHE_ENTRY_INFOA, dwUseCount, 4)
640     TEST_FIELD_ALIGN (INTERNET_CACHE_ENTRY_INFOA, dwUseCount, 4)
641     TEST_FIELD_OFFSET(INTERNET_CACHE_ENTRY_INFOA, dwUseCount, 28)
642     TEST_FIELD_SIZE  (INTERNET_CACHE_ENTRY_INFOA, dwHitRate, 4)
643     TEST_FIELD_ALIGN (INTERNET_CACHE_ENTRY_INFOA, dwHitRate, 4)
644     TEST_FIELD_OFFSET(INTERNET_CACHE_ENTRY_INFOA, dwHitRate, 32)
645     TEST_FIELD_SIZE  (INTERNET_CACHE_ENTRY_INFOA, dwSizeLow, 4)
646     TEST_FIELD_ALIGN (INTERNET_CACHE_ENTRY_INFOA, dwSizeLow, 4)
647     TEST_FIELD_OFFSET(INTERNET_CACHE_ENTRY_INFOA, dwSizeLow, 36)
648     TEST_FIELD_SIZE  (INTERNET_CACHE_ENTRY_INFOA, dwSizeHigh, 4)
649     TEST_FIELD_ALIGN (INTERNET_CACHE_ENTRY_INFOA, dwSizeHigh, 4)
650     TEST_FIELD_OFFSET(INTERNET_CACHE_ENTRY_INFOA, dwSizeHigh, 40)
651     TEST_FIELD_SIZE  (INTERNET_CACHE_ENTRY_INFOA, LastModifiedTime, 8)
652     TEST_FIELD_ALIGN (INTERNET_CACHE_ENTRY_INFOA, LastModifiedTime, 4)
653     TEST_FIELD_OFFSET(INTERNET_CACHE_ENTRY_INFOA, LastModifiedTime, 44)
654     TEST_FIELD_SIZE  (INTERNET_CACHE_ENTRY_INFOA, ExpireTime, 8)
655     TEST_FIELD_ALIGN (INTERNET_CACHE_ENTRY_INFOA, ExpireTime, 4)
656     TEST_FIELD_OFFSET(INTERNET_CACHE_ENTRY_INFOA, ExpireTime, 52)
657     TEST_FIELD_SIZE  (INTERNET_CACHE_ENTRY_INFOA, LastAccessTime, 8)
658     TEST_FIELD_ALIGN (INTERNET_CACHE_ENTRY_INFOA, LastAccessTime, 4)
659     TEST_FIELD_OFFSET(INTERNET_CACHE_ENTRY_INFOA, LastAccessTime, 60)
660     TEST_FIELD_SIZE  (INTERNET_CACHE_ENTRY_INFOA, LastSyncTime, 8)
661     TEST_FIELD_ALIGN (INTERNET_CACHE_ENTRY_INFOA, LastSyncTime, 4)
662     TEST_FIELD_OFFSET(INTERNET_CACHE_ENTRY_INFOA, LastSyncTime, 68)
663     TEST_FIELD_SIZE  (INTERNET_CACHE_ENTRY_INFOA, lpHeaderInfo, 8)
664     TEST_FIELD_ALIGN (INTERNET_CACHE_ENTRY_INFOA, lpHeaderInfo, 8)
665     TEST_FIELD_OFFSET(INTERNET_CACHE_ENTRY_INFOA, lpHeaderInfo, 80)
666     TEST_FIELD_SIZE  (INTERNET_CACHE_ENTRY_INFOA, dwHeaderInfoSize, 4)
667     TEST_FIELD_ALIGN (INTERNET_CACHE_ENTRY_INFOA, dwHeaderInfoSize, 4)
668     TEST_FIELD_OFFSET(INTERNET_CACHE_ENTRY_INFOA, dwHeaderInfoSize, 88)
669     TEST_FIELD_SIZE  (INTERNET_CACHE_ENTRY_INFOA, lpszFileExtension, 8)
670     TEST_FIELD_ALIGN (INTERNET_CACHE_ENTRY_INFOA, lpszFileExtension, 8)
671     TEST_FIELD_OFFSET(INTERNET_CACHE_ENTRY_INFOA, lpszFileExtension, 96)
672 }
673 
674 static void test_pack_INTERNET_CACHE_ENTRY_INFOW(void)
675 {
676     /* INTERNET_CACHE_ENTRY_INFOW */
677     TEST_FIELD_SIZE  (INTERNET_CACHE_ENTRY_INFOW, dwStructSize, 4)
678     TEST_FIELD_ALIGN (INTERNET_CACHE_ENTRY_INFOW, dwStructSize, 4)
679     TEST_FIELD_OFFSET(INTERNET_CACHE_ENTRY_INFOW, dwStructSize, 0)
680     TEST_FIELD_SIZE  (INTERNET_CACHE_ENTRY_INFOW, lpszSourceUrlName, 8)
681     TEST_FIELD_ALIGN (INTERNET_CACHE_ENTRY_INFOW, lpszSourceUrlName, 8)
682     TEST_FIELD_OFFSET(INTERNET_CACHE_ENTRY_INFOW, lpszSourceUrlName, 8)
683     TEST_FIELD_SIZE  (INTERNET_CACHE_ENTRY_INFOW, lpszLocalFileName, 8)
684     TEST_FIELD_ALIGN (INTERNET_CACHE_ENTRY_INFOW, lpszLocalFileName, 8)
685     TEST_FIELD_OFFSET(INTERNET_CACHE_ENTRY_INFOW, lpszLocalFileName, 16)
686     TEST_FIELD_SIZE  (INTERNET_CACHE_ENTRY_INFOW, CacheEntryType, 4)
687     TEST_FIELD_ALIGN (INTERNET_CACHE_ENTRY_INFOW, CacheEntryType, 4)
688     TEST_FIELD_OFFSET(INTERNET_CACHE_ENTRY_INFOW, CacheEntryType, 24)
689     TEST_FIELD_SIZE  (INTERNET_CACHE_ENTRY_INFOW, dwUseCount, 4)
690     TEST_FIELD_ALIGN (INTERNET_CACHE_ENTRY_INFOW, dwUseCount, 4)
691     TEST_FIELD_OFFSET(INTERNET_CACHE_ENTRY_INFOW, dwUseCount, 28)
692     TEST_FIELD_SIZE  (INTERNET_CACHE_ENTRY_INFOW, dwHitRate, 4)
693     TEST_FIELD_ALIGN (INTERNET_CACHE_ENTRY_INFOW, dwHitRate, 4)
694     TEST_FIELD_OFFSET(INTERNET_CACHE_ENTRY_INFOW, dwHitRate, 32)
695     TEST_FIELD_SIZE  (INTERNET_CACHE_ENTRY_INFOW, dwSizeLow, 4)
696     TEST_FIELD_ALIGN (INTERNET_CACHE_ENTRY_INFOW, dwSizeLow, 4)
697     TEST_FIELD_OFFSET(INTERNET_CACHE_ENTRY_INFOW, dwSizeLow, 36)
698     TEST_FIELD_SIZE  (INTERNET_CACHE_ENTRY_INFOW, dwSizeHigh, 4)
699     TEST_FIELD_ALIGN (INTERNET_CACHE_ENTRY_INFOW, dwSizeHigh, 4)
700     TEST_FIELD_OFFSET(INTERNET_CACHE_ENTRY_INFOW, dwSizeHigh, 40)
701     TEST_FIELD_SIZE  (INTERNET_CACHE_ENTRY_INFOW, LastModifiedTime, 8)
702     TEST_FIELD_ALIGN (INTERNET_CACHE_ENTRY_INFOW, LastModifiedTime, 4)
703     TEST_FIELD_OFFSET(INTERNET_CACHE_ENTRY_INFOW, LastModifiedTime, 44)
704     TEST_FIELD_SIZE  (INTERNET_CACHE_ENTRY_INFOW, ExpireTime, 8)
705     TEST_FIELD_ALIGN (INTERNET_CACHE_ENTRY_INFOW, ExpireTime, 4)
706     TEST_FIELD_OFFSET(INTERNET_CACHE_ENTRY_INFOW, ExpireTime, 52)
707     TEST_FIELD_SIZE  (INTERNET_CACHE_ENTRY_INFOW, LastAccessTime, 8)
708     TEST_FIELD_ALIGN (INTERNET_CACHE_ENTRY_INFOW, LastAccessTime, 4)
709     TEST_FIELD_OFFSET(INTERNET_CACHE_ENTRY_INFOW, LastAccessTime, 60)
710     TEST_FIELD_SIZE  (INTERNET_CACHE_ENTRY_INFOW, LastSyncTime, 8)
711     TEST_FIELD_ALIGN (INTERNET_CACHE_ENTRY_INFOW, LastSyncTime, 4)
712     TEST_FIELD_OFFSET(INTERNET_CACHE_ENTRY_INFOW, LastSyncTime, 68)
713     TEST_FIELD_SIZE  (INTERNET_CACHE_ENTRY_INFOW, lpHeaderInfo, 8)
714     TEST_FIELD_ALIGN (INTERNET_CACHE_ENTRY_INFOW, lpHeaderInfo, 8)
715     TEST_FIELD_OFFSET(INTERNET_CACHE_ENTRY_INFOW, lpHeaderInfo, 80)
716     TEST_FIELD_SIZE  (INTERNET_CACHE_ENTRY_INFOW, dwHeaderInfoSize, 4)
717     TEST_FIELD_ALIGN (INTERNET_CACHE_ENTRY_INFOW, dwHeaderInfoSize, 4)
718     TEST_FIELD_OFFSET(INTERNET_CACHE_ENTRY_INFOW, dwHeaderInfoSize, 88)
719     TEST_FIELD_SIZE  (INTERNET_CACHE_ENTRY_INFOW, lpszFileExtension, 8)
720     TEST_FIELD_ALIGN (INTERNET_CACHE_ENTRY_INFOW, lpszFileExtension, 8)
721     TEST_FIELD_OFFSET(INTERNET_CACHE_ENTRY_INFOW, lpszFileExtension, 96)
722 }
723 
724 static void test_pack_INTERNET_CERTIFICATE_INFOA(void)
725 {
726     /* INTERNET_CERTIFICATE_INFOA */
727     TEST_TYPE_SIZE   (INTERNET_CERTIFICATE_INFOA, 64)
728     TEST_TYPE_ALIGN  (INTERNET_CERTIFICATE_INFOA, 8)
729     TEST_FIELD_SIZE  (INTERNET_CERTIFICATE_INFOA, ftExpiry, 8)
730     TEST_FIELD_ALIGN (INTERNET_CERTIFICATE_INFOA, ftExpiry, 4)
731     TEST_FIELD_OFFSET(INTERNET_CERTIFICATE_INFOA, ftExpiry, 0)
732     TEST_FIELD_SIZE  (INTERNET_CERTIFICATE_INFOA, ftStart, 8)
733     TEST_FIELD_ALIGN (INTERNET_CERTIFICATE_INFOA, ftStart, 4)
734     TEST_FIELD_OFFSET(INTERNET_CERTIFICATE_INFOA, ftStart, 8)
735     TEST_FIELD_SIZE  (INTERNET_CERTIFICATE_INFOA, lpszSubjectInfo, 8)
736     TEST_FIELD_ALIGN (INTERNET_CERTIFICATE_INFOA, lpszSubjectInfo, 8)
737     TEST_FIELD_OFFSET(INTERNET_CERTIFICATE_INFOA, lpszSubjectInfo, 16)
738     TEST_FIELD_SIZE  (INTERNET_CERTIFICATE_INFOA, lpszIssuerInfo, 8)
739     TEST_FIELD_ALIGN (INTERNET_CERTIFICATE_INFOA, lpszIssuerInfo, 8)
740     TEST_FIELD_OFFSET(INTERNET_CERTIFICATE_INFOA, lpszIssuerInfo, 24)
741     TEST_FIELD_SIZE  (INTERNET_CERTIFICATE_INFOA, lpszProtocolName, 8)
742     TEST_FIELD_ALIGN (INTERNET_CERTIFICATE_INFOA, lpszProtocolName, 8)
743     TEST_FIELD_OFFSET(INTERNET_CERTIFICATE_INFOA, lpszProtocolName, 32)
744     TEST_FIELD_SIZE  (INTERNET_CERTIFICATE_INFOA, lpszSignatureAlgName, 8)
745     TEST_FIELD_ALIGN (INTERNET_CERTIFICATE_INFOA, lpszSignatureAlgName, 8)
746     TEST_FIELD_OFFSET(INTERNET_CERTIFICATE_INFOA, lpszSignatureAlgName, 40)
747     TEST_FIELD_SIZE  (INTERNET_CERTIFICATE_INFOA, lpszEncryptionAlgName, 8)
748     TEST_FIELD_ALIGN (INTERNET_CERTIFICATE_INFOA, lpszEncryptionAlgName, 8)
749     TEST_FIELD_OFFSET(INTERNET_CERTIFICATE_INFOA, lpszEncryptionAlgName, 48)
750     TEST_FIELD_SIZE  (INTERNET_CERTIFICATE_INFOA, dwKeySize, 4)
751     TEST_FIELD_ALIGN (INTERNET_CERTIFICATE_INFOA, dwKeySize, 4)
752     TEST_FIELD_OFFSET(INTERNET_CERTIFICATE_INFOA, dwKeySize, 56)
753 }
754 
755 static void test_pack_INTERNET_CERTIFICATE_INFOW(void)
756 {
757     /* INTERNET_CERTIFICATE_INFOW */
758     TEST_TYPE_SIZE   (INTERNET_CERTIFICATE_INFOW, 64)
759     TEST_TYPE_ALIGN  (INTERNET_CERTIFICATE_INFOW, 8)
760     TEST_FIELD_SIZE  (INTERNET_CERTIFICATE_INFOW, ftExpiry, 8)
761     TEST_FIELD_ALIGN (INTERNET_CERTIFICATE_INFOW, ftExpiry, 4)
762     TEST_FIELD_OFFSET(INTERNET_CERTIFICATE_INFOW, ftExpiry, 0)
763     TEST_FIELD_SIZE  (INTERNET_CERTIFICATE_INFOW, ftStart, 8)
764     TEST_FIELD_ALIGN (INTERNET_CERTIFICATE_INFOW, ftStart, 4)
765     TEST_FIELD_OFFSET(INTERNET_CERTIFICATE_INFOW, ftStart, 8)
766     TEST_FIELD_SIZE  (INTERNET_CERTIFICATE_INFOW, lpszSubjectInfo, 8)
767     TEST_FIELD_ALIGN (INTERNET_CERTIFICATE_INFOW, lpszSubjectInfo, 8)
768     TEST_FIELD_OFFSET(INTERNET_CERTIFICATE_INFOW, lpszSubjectInfo, 16)
769     TEST_FIELD_SIZE  (INTERNET_CERTIFICATE_INFOW, lpszIssuerInfo, 8)
770     TEST_FIELD_ALIGN (INTERNET_CERTIFICATE_INFOW, lpszIssuerInfo, 8)
771     TEST_FIELD_OFFSET(INTERNET_CERTIFICATE_INFOW, lpszIssuerInfo, 24)
772     TEST_FIELD_SIZE  (INTERNET_CERTIFICATE_INFOW, lpszProtocolName, 8)
773     TEST_FIELD_ALIGN (INTERNET_CERTIFICATE_INFOW, lpszProtocolName, 8)
774     TEST_FIELD_OFFSET(INTERNET_CERTIFICATE_INFOW, lpszProtocolName, 32)
775     TEST_FIELD_SIZE  (INTERNET_CERTIFICATE_INFOW, lpszSignatureAlgName, 8)
776     TEST_FIELD_ALIGN (INTERNET_CERTIFICATE_INFOW, lpszSignatureAlgName, 8)
777     TEST_FIELD_OFFSET(INTERNET_CERTIFICATE_INFOW, lpszSignatureAlgName, 40)
778     TEST_FIELD_SIZE  (INTERNET_CERTIFICATE_INFOW, lpszEncryptionAlgName, 8)
779     TEST_FIELD_ALIGN (INTERNET_CERTIFICATE_INFOW, lpszEncryptionAlgName, 8)
780     TEST_FIELD_OFFSET(INTERNET_CERTIFICATE_INFOW, lpszEncryptionAlgName, 48)
781     TEST_FIELD_SIZE  (INTERNET_CERTIFICATE_INFOW, dwKeySize, 4)
782     TEST_FIELD_ALIGN (INTERNET_CERTIFICATE_INFOW, dwKeySize, 4)
783     TEST_FIELD_OFFSET(INTERNET_CERTIFICATE_INFOW, dwKeySize, 56)
784 }
785 
786 static void test_pack_INTERNET_CONNECTED_INFO(void)
787 {
788     /* INTERNET_CONNECTED_INFO */
789     TEST_TYPE_SIZE   (INTERNET_CONNECTED_INFO, 8)
790     TEST_TYPE_ALIGN  (INTERNET_CONNECTED_INFO, 4)
791     TEST_FIELD_SIZE  (INTERNET_CONNECTED_INFO, dwConnectedState, 4)
792     TEST_FIELD_ALIGN (INTERNET_CONNECTED_INFO, dwConnectedState, 4)
793     TEST_FIELD_OFFSET(INTERNET_CONNECTED_INFO, dwConnectedState, 0)
794     TEST_FIELD_SIZE  (INTERNET_CONNECTED_INFO, dwFlags, 4)
795     TEST_FIELD_ALIGN (INTERNET_CONNECTED_INFO, dwFlags, 4)
796     TEST_FIELD_OFFSET(INTERNET_CONNECTED_INFO, dwFlags, 4)
797 }
798 
799 static void test_pack_INTERNET_PORT(void)
800 {
801     /* INTERNET_PORT */
802     TEST_TYPE_SIZE   (INTERNET_PORT, 2)
803     TEST_TYPE_ALIGN  (INTERNET_PORT, 2)
804     TEST_TYPE_UNSIGNED(INTERNET_PORT)
805 }
806 
807 static void test_pack_INTERNET_PROXY_INFOA(void)
808 {
809     /* INTERNET_PROXY_INFOA */
810     TEST_TYPE_SIZE   (INTERNET_PROXY_INFOA, 24)
811     TEST_TYPE_ALIGN  (INTERNET_PROXY_INFOA, 8)
812     TEST_FIELD_SIZE  (INTERNET_PROXY_INFOA, dwAccessType, 4)
813     TEST_FIELD_ALIGN (INTERNET_PROXY_INFOA, dwAccessType, 4)
814     TEST_FIELD_OFFSET(INTERNET_PROXY_INFOA, dwAccessType, 0)
815     TEST_FIELD_SIZE  (INTERNET_PROXY_INFOA, lpszProxy, 8)
816     TEST_FIELD_ALIGN (INTERNET_PROXY_INFOA, lpszProxy, 8)
817     TEST_FIELD_OFFSET(INTERNET_PROXY_INFOA, lpszProxy, 8)
818     TEST_FIELD_SIZE  (INTERNET_PROXY_INFOA, lpszProxyBypass, 8)
819     TEST_FIELD_ALIGN (INTERNET_PROXY_INFOA, lpszProxyBypass, 8)
820     TEST_FIELD_OFFSET(INTERNET_PROXY_INFOA, lpszProxyBypass, 16)
821 }
822 
823 static void test_pack_INTERNET_PROXY_INFOW(void)
824 {
825     /* INTERNET_PROXY_INFOW */
826     TEST_TYPE_SIZE   (INTERNET_PROXY_INFOW, 24)
827     TEST_TYPE_ALIGN  (INTERNET_PROXY_INFOW, 8)
828     TEST_FIELD_SIZE  (INTERNET_PROXY_INFOW, dwAccessType, 4)
829     TEST_FIELD_ALIGN (INTERNET_PROXY_INFOW, dwAccessType, 4)
830     TEST_FIELD_OFFSET(INTERNET_PROXY_INFOW, dwAccessType, 0)
831     TEST_FIELD_SIZE  (INTERNET_PROXY_INFOW, lpszProxy, 8)
832     TEST_FIELD_ALIGN (INTERNET_PROXY_INFOW, lpszProxy, 8)
833     TEST_FIELD_OFFSET(INTERNET_PROXY_INFOW, lpszProxy, 8)
834     TEST_FIELD_SIZE  (INTERNET_PROXY_INFOW, lpszProxyBypass, 8)
835     TEST_FIELD_ALIGN (INTERNET_PROXY_INFOW, lpszProxyBypass, 8)
836     TEST_FIELD_OFFSET(INTERNET_PROXY_INFOW, lpszProxyBypass, 16)
837 }
838 
839 static void test_pack_INTERNET_STATUS_CALLBACK(void)
840 {
841     /* INTERNET_STATUS_CALLBACK */
842     TEST_TYPE_SIZE   (INTERNET_STATUS_CALLBACK, 8)
843     TEST_TYPE_ALIGN  (INTERNET_STATUS_CALLBACK, 8)
844 }
845 
846 static void test_pack_INTERNET_VERSION_INFO(void)
847 {
848     /* INTERNET_VERSION_INFO */
849     TEST_TYPE_SIZE   (INTERNET_VERSION_INFO, 8)
850     TEST_TYPE_ALIGN  (INTERNET_VERSION_INFO, 4)
851     TEST_FIELD_SIZE  (INTERNET_VERSION_INFO, dwMajorVersion, 4)
852     TEST_FIELD_ALIGN (INTERNET_VERSION_INFO, dwMajorVersion, 4)
853     TEST_FIELD_OFFSET(INTERNET_VERSION_INFO, dwMajorVersion, 0)
854     TEST_FIELD_SIZE  (INTERNET_VERSION_INFO, dwMinorVersion, 4)
855     TEST_FIELD_ALIGN (INTERNET_VERSION_INFO, dwMinorVersion, 4)
856     TEST_FIELD_OFFSET(INTERNET_VERSION_INFO, dwMinorVersion, 4)
857 }
858 
859 static void test_pack_LPGOPHER_ABSTRACT_ATTRIBUTE_TYPEA(void)
860 {
861     /* LPGOPHER_ABSTRACT_ATTRIBUTE_TYPEA */
862     TEST_TYPE_SIZE   (LPGOPHER_ABSTRACT_ATTRIBUTE_TYPEA, 8)
863     TEST_TYPE_ALIGN  (LPGOPHER_ABSTRACT_ATTRIBUTE_TYPEA, 8)
864     TEST_TARGET_SIZE (LPGOPHER_ABSTRACT_ATTRIBUTE_TYPEA, 16)
865     TEST_TARGET_ALIGN(LPGOPHER_ABSTRACT_ATTRIBUTE_TYPEA, 8)
866 }
867 
868 static void test_pack_LPGOPHER_ABSTRACT_ATTRIBUTE_TYPEW(void)
869 {
870     /* LPGOPHER_ABSTRACT_ATTRIBUTE_TYPEW */
871     TEST_TYPE_SIZE   (LPGOPHER_ABSTRACT_ATTRIBUTE_TYPEW, 8)
872     TEST_TYPE_ALIGN  (LPGOPHER_ABSTRACT_ATTRIBUTE_TYPEW, 8)
873     TEST_TARGET_SIZE (LPGOPHER_ABSTRACT_ATTRIBUTE_TYPEW, 16)
874     TEST_TARGET_ALIGN(LPGOPHER_ABSTRACT_ATTRIBUTE_TYPEW, 8)
875 }
876 
877 static void test_pack_LPGOPHER_ADMIN_ATTRIBUTE_TYPEA(void)
878 {
879     /* LPGOPHER_ADMIN_ATTRIBUTE_TYPEA */
880     TEST_TYPE_SIZE   (LPGOPHER_ADMIN_ATTRIBUTE_TYPEA, 8)
881     TEST_TYPE_ALIGN  (LPGOPHER_ADMIN_ATTRIBUTE_TYPEA, 8)
882     TEST_TARGET_SIZE (LPGOPHER_ADMIN_ATTRIBUTE_TYPEA, 16)
883     TEST_TARGET_ALIGN(LPGOPHER_ADMIN_ATTRIBUTE_TYPEA, 8)
884 }
885 
886 static void test_pack_LPGOPHER_ADMIN_ATTRIBUTE_TYPEW(void)
887 {
888     /* LPGOPHER_ADMIN_ATTRIBUTE_TYPEW */
889     TEST_TYPE_SIZE   (LPGOPHER_ADMIN_ATTRIBUTE_TYPEW, 8)
890     TEST_TYPE_ALIGN  (LPGOPHER_ADMIN_ATTRIBUTE_TYPEW, 8)
891     TEST_TARGET_SIZE (LPGOPHER_ADMIN_ATTRIBUTE_TYPEW, 16)
892     TEST_TARGET_ALIGN(LPGOPHER_ADMIN_ATTRIBUTE_TYPEW, 8)
893 }
894 
895 static void test_pack_LPGOPHER_ASK_ATTRIBUTE_TYPEA(void)
896 {
897     /* LPGOPHER_ASK_ATTRIBUTE_TYPEA */
898     TEST_TYPE_SIZE   (LPGOPHER_ASK_ATTRIBUTE_TYPEA, 8)
899     TEST_TYPE_ALIGN  (LPGOPHER_ASK_ATTRIBUTE_TYPEA, 8)
900     TEST_TARGET_SIZE (LPGOPHER_ASK_ATTRIBUTE_TYPEA, 16)
901     TEST_TARGET_ALIGN(LPGOPHER_ASK_ATTRIBUTE_TYPEA, 8)
902 }
903 
904 static void test_pack_LPGOPHER_ASK_ATTRIBUTE_TYPEW(void)
905 {
906     /* LPGOPHER_ASK_ATTRIBUTE_TYPEW */
907     TEST_TYPE_SIZE   (LPGOPHER_ASK_ATTRIBUTE_TYPEW, 8)
908     TEST_TYPE_ALIGN  (LPGOPHER_ASK_ATTRIBUTE_TYPEW, 8)
909     TEST_TARGET_SIZE (LPGOPHER_ASK_ATTRIBUTE_TYPEW, 16)
910     TEST_TARGET_ALIGN(LPGOPHER_ASK_ATTRIBUTE_TYPEW, 8)
911 }
912 
913 static void test_pack_LPGOPHER_ATTRIBUTE_TYPEA(void)
914 {
915     /* LPGOPHER_ATTRIBUTE_TYPEA */
916     TEST_TYPE_SIZE   (LPGOPHER_ATTRIBUTE_TYPEA, 8)
917     TEST_TYPE_ALIGN  (LPGOPHER_ATTRIBUTE_TYPEA, 8)
918 }
919 
920 static void test_pack_LPGOPHER_ATTRIBUTE_TYPEW(void)
921 {
922     /* LPGOPHER_ATTRIBUTE_TYPEW */
923     TEST_TYPE_SIZE   (LPGOPHER_ATTRIBUTE_TYPEW, 8)
924     TEST_TYPE_ALIGN  (LPGOPHER_ATTRIBUTE_TYPEW, 8)
925 }
926 
927 static void test_pack_LPGOPHER_FIND_DATAA(void)
928 {
929     /* LPGOPHER_FIND_DATAA */
930     TEST_TYPE_SIZE   (LPGOPHER_FIND_DATAA, 8)
931     TEST_TYPE_ALIGN  (LPGOPHER_FIND_DATAA, 8)
932     TEST_TARGET_SIZE (LPGOPHER_FIND_DATAA, 808)
933     TEST_TARGET_ALIGN(LPGOPHER_FIND_DATAA, 4)
934 }
935 
936 static void test_pack_LPGOPHER_FIND_DATAW(void)
937 {
938     /* LPGOPHER_FIND_DATAW */
939     TEST_TYPE_SIZE   (LPGOPHER_FIND_DATAW, 8)
940     TEST_TYPE_ALIGN  (LPGOPHER_FIND_DATAW, 8)
941     TEST_TARGET_SIZE (LPGOPHER_FIND_DATAW, 1588)
942     TEST_TARGET_ALIGN(LPGOPHER_FIND_DATAW, 4)
943 }
944 
945 static void test_pack_LPGOPHER_GEOGRAPHICAL_LOCATION_ATTRIBUTE_TYPE(void)
946 {
947     /* LPGOPHER_GEOGRAPHICAL_LOCATION_ATTRIBUTE_TYPE */
948     TEST_TYPE_SIZE   (LPGOPHER_GEOGRAPHICAL_LOCATION_ATTRIBUTE_TYPE, 8)
949     TEST_TYPE_ALIGN  (LPGOPHER_GEOGRAPHICAL_LOCATION_ATTRIBUTE_TYPE, 8)
950     TEST_TARGET_SIZE (LPGOPHER_GEOGRAPHICAL_LOCATION_ATTRIBUTE_TYPE, 24)
951     TEST_TARGET_ALIGN(LPGOPHER_GEOGRAPHICAL_LOCATION_ATTRIBUTE_TYPE, 4)
952 }
953 
954 static void test_pack_LPGOPHER_LOCATION_ATTRIBUTE_TYPEA(void)
955 {
956     /* LPGOPHER_LOCATION_ATTRIBUTE_TYPEA */
957     TEST_TYPE_SIZE   (LPGOPHER_LOCATION_ATTRIBUTE_TYPEA, 8)
958     TEST_TYPE_ALIGN  (LPGOPHER_LOCATION_ATTRIBUTE_TYPEA, 8)
959     TEST_TARGET_SIZE (LPGOPHER_LOCATION_ATTRIBUTE_TYPEA, 8)
960     TEST_TARGET_ALIGN(LPGOPHER_LOCATION_ATTRIBUTE_TYPEA, 8)
961 }
962 
963 static void test_pack_LPGOPHER_LOCATION_ATTRIBUTE_TYPEW(void)
964 {
965     /* LPGOPHER_LOCATION_ATTRIBUTE_TYPEW */
966     TEST_TYPE_SIZE   (LPGOPHER_LOCATION_ATTRIBUTE_TYPEW, 8)
967     TEST_TYPE_ALIGN  (LPGOPHER_LOCATION_ATTRIBUTE_TYPEW, 8)
968     TEST_TARGET_SIZE (LPGOPHER_LOCATION_ATTRIBUTE_TYPEW, 8)
969     TEST_TARGET_ALIGN(LPGOPHER_LOCATION_ATTRIBUTE_TYPEW, 8)
970 }
971 
972 static void test_pack_LPGOPHER_MOD_DATE_ATTRIBUTE_TYPE(void)
973 {
974     /* LPGOPHER_MOD_DATE_ATTRIBUTE_TYPE */
975     TEST_TYPE_SIZE   (LPGOPHER_MOD_DATE_ATTRIBUTE_TYPE, 8)
976     TEST_TYPE_ALIGN  (LPGOPHER_MOD_DATE_ATTRIBUTE_TYPE, 8)
977     TEST_TARGET_SIZE (LPGOPHER_MOD_DATE_ATTRIBUTE_TYPE, 8)
978     TEST_TARGET_ALIGN(LPGOPHER_MOD_DATE_ATTRIBUTE_TYPE, 4)
979 }
980 
981 static void test_pack_LPGOPHER_ORGANIZATION_ATTRIBUTE_TYPEA(void)
982 {
983     /* LPGOPHER_ORGANIZATION_ATTRIBUTE_TYPEA */
984     TEST_TYPE_SIZE   (LPGOPHER_ORGANIZATION_ATTRIBUTE_TYPEA, 8)
985     TEST_TYPE_ALIGN  (LPGOPHER_ORGANIZATION_ATTRIBUTE_TYPEA, 8)
986     TEST_TARGET_SIZE (LPGOPHER_ORGANIZATION_ATTRIBUTE_TYPEA, 8)
987     TEST_TARGET_ALIGN(LPGOPHER_ORGANIZATION_ATTRIBUTE_TYPEA, 8)
988 }
989 
990 static void test_pack_LPGOPHER_ORGANIZATION_ATTRIBUTE_TYPEW(void)
991 {
992     /* LPGOPHER_ORGANIZATION_ATTRIBUTE_TYPEW */
993     TEST_TYPE_SIZE   (LPGOPHER_ORGANIZATION_ATTRIBUTE_TYPEW, 8)
994     TEST_TYPE_ALIGN  (LPGOPHER_ORGANIZATION_ATTRIBUTE_TYPEW, 8)
995     TEST_TARGET_SIZE (LPGOPHER_ORGANIZATION_ATTRIBUTE_TYPEW, 8)
996     TEST_TARGET_ALIGN(LPGOPHER_ORGANIZATION_ATTRIBUTE_TYPEW, 8)
997 }
998 
999 static void test_pack_LPGOPHER_PROVIDER_ATTRIBUTE_TYPEA(void)
1000 {
1001     /* LPGOPHER_PROVIDER_ATTRIBUTE_TYPEA */
1002     TEST_TYPE_SIZE   (LPGOPHER_PROVIDER_ATTRIBUTE_TYPEA, 8)
1003     TEST_TYPE_ALIGN  (LPGOPHER_PROVIDER_ATTRIBUTE_TYPEA, 8)
1004     TEST_TARGET_SIZE (LPGOPHER_PROVIDER_ATTRIBUTE_TYPEA, 8)
1005     TEST_TARGET_ALIGN(LPGOPHER_PROVIDER_ATTRIBUTE_TYPEA, 8)
1006 }
1007 
1008 static void test_pack_LPGOPHER_PROVIDER_ATTRIBUTE_TYPEW(void)
1009 {
1010     /* LPGOPHER_PROVIDER_ATTRIBUTE_TYPEW */
1011     TEST_TYPE_SIZE   (LPGOPHER_PROVIDER_ATTRIBUTE_TYPEW, 8)
1012     TEST_TYPE_ALIGN  (LPGOPHER_PROVIDER_ATTRIBUTE_TYPEW, 8)
1013     TEST_TARGET_SIZE (LPGOPHER_PROVIDER_ATTRIBUTE_TYPEW, 8)
1014     TEST_TARGET_ALIGN(LPGOPHER_PROVIDER_ATTRIBUTE_TYPEW, 8)
1015 }
1016 
1017 static void test_pack_LPGOPHER_SCORE_ATTRIBUTE_TYPE(void)
1018 {
1019     /* LPGOPHER_SCORE_ATTRIBUTE_TYPE */
1020     TEST_TYPE_SIZE   (LPGOPHER_SCORE_ATTRIBUTE_TYPE, 8)
1021     TEST_TYPE_ALIGN  (LPGOPHER_SCORE_ATTRIBUTE_TYPE, 8)
1022     TEST_TARGET_SIZE (LPGOPHER_SCORE_ATTRIBUTE_TYPE, 4)
1023     TEST_TARGET_ALIGN(LPGOPHER_SCORE_ATTRIBUTE_TYPE, 4)
1024 }
1025 
1026 static void test_pack_LPGOPHER_SCORE_RANGE_ATTRIBUTE_TYPE(void)
1027 {
1028     /* LPGOPHER_SCORE_RANGE_ATTRIBUTE_TYPE */
1029     TEST_TYPE_SIZE   (LPGOPHER_SCORE_RANGE_ATTRIBUTE_TYPE, 8)
1030     TEST_TYPE_ALIGN  (LPGOPHER_SCORE_RANGE_ATTRIBUTE_TYPE, 8)
1031     TEST_TARGET_SIZE (LPGOPHER_SCORE_RANGE_ATTRIBUTE_TYPE, 8)
1032     TEST_TARGET_ALIGN(LPGOPHER_SCORE_RANGE_ATTRIBUTE_TYPE, 4)
1033 }
1034 
1035 static void test_pack_LPGOPHER_SITE_ATTRIBUTE_TYPEA(void)
1036 {
1037     /* LPGOPHER_SITE_ATTRIBUTE_TYPEA */
1038     TEST_TYPE_SIZE   (LPGOPHER_SITE_ATTRIBUTE_TYPEA, 8)
1039     TEST_TYPE_ALIGN  (LPGOPHER_SITE_ATTRIBUTE_TYPEA, 8)
1040     TEST_TARGET_SIZE (LPGOPHER_SITE_ATTRIBUTE_TYPEA, 8)
1041     TEST_TARGET_ALIGN(LPGOPHER_SITE_ATTRIBUTE_TYPEA, 8)
1042 }
1043 
1044 static void test_pack_LPGOPHER_SITE_ATTRIBUTE_TYPEW(void)
1045 {
1046     /* LPGOPHER_SITE_ATTRIBUTE_TYPEW */
1047     TEST_TYPE_SIZE   (LPGOPHER_SITE_ATTRIBUTE_TYPEW, 8)
1048     TEST_TYPE_ALIGN  (LPGOPHER_SITE_ATTRIBUTE_TYPEW, 8)
1049     TEST_TARGET_SIZE (LPGOPHER_SITE_ATTRIBUTE_TYPEW, 8)
1050     TEST_TARGET_ALIGN(LPGOPHER_SITE_ATTRIBUTE_TYPEW, 8)
1051 }
1052 
1053 static void test_pack_LPGOPHER_TIMEZONE_ATTRIBUTE_TYPE(void)
1054 {
1055     /* LPGOPHER_TIMEZONE_ATTRIBUTE_TYPE */
1056     TEST_TYPE_SIZE   (LPGOPHER_TIMEZONE_ATTRIBUTE_TYPE, 8)
1057     TEST_TYPE_ALIGN  (LPGOPHER_TIMEZONE_ATTRIBUTE_TYPE, 8)
1058     TEST_TARGET_SIZE (LPGOPHER_TIMEZONE_ATTRIBUTE_TYPE, 4)
1059     TEST_TARGET_ALIGN(LPGOPHER_TIMEZONE_ATTRIBUTE_TYPE, 4)
1060 }
1061 
1062 static void test_pack_LPGOPHER_TTL_ATTRIBUTE_TYPE(void)
1063 {
1064     /* LPGOPHER_TTL_ATTRIBUTE_TYPE */
1065     TEST_TYPE_SIZE   (LPGOPHER_TTL_ATTRIBUTE_TYPE, 8)
1066     TEST_TYPE_ALIGN  (LPGOPHER_TTL_ATTRIBUTE_TYPE, 8)
1067     TEST_TARGET_SIZE (LPGOPHER_TTL_ATTRIBUTE_TYPE, 4)
1068     TEST_TARGET_ALIGN(LPGOPHER_TTL_ATTRIBUTE_TYPE, 4)
1069 }
1070 
1071 static void test_pack_LPGOPHER_UNKNOWN_ATTRIBUTE_TYPEA(void)
1072 {
1073     /* LPGOPHER_UNKNOWN_ATTRIBUTE_TYPEA */
1074     TEST_TYPE_SIZE   (LPGOPHER_UNKNOWN_ATTRIBUTE_TYPEA, 8)
1075     TEST_TYPE_ALIGN  (LPGOPHER_UNKNOWN_ATTRIBUTE_TYPEA, 8)
1076     TEST_TARGET_SIZE (LPGOPHER_UNKNOWN_ATTRIBUTE_TYPEA, 8)
1077     TEST_TARGET_ALIGN(LPGOPHER_UNKNOWN_ATTRIBUTE_TYPEA, 8)
1078 }
1079 
1080 static void test_pack_LPGOPHER_UNKNOWN_ATTRIBUTE_TYPEW(void)
1081 {
1082     /* LPGOPHER_UNKNOWN_ATTRIBUTE_TYPEW */
1083     TEST_TYPE_SIZE   (LPGOPHER_UNKNOWN_ATTRIBUTE_TYPEW, 8)
1084     TEST_TYPE_ALIGN  (LPGOPHER_UNKNOWN_ATTRIBUTE_TYPEW, 8)
1085     TEST_TARGET_SIZE (LPGOPHER_UNKNOWN_ATTRIBUTE_TYPEW, 8)
1086     TEST_TARGET_ALIGN(LPGOPHER_UNKNOWN_ATTRIBUTE_TYPEW, 8)
1087 }
1088 
1089 static void test_pack_LPGOPHER_VERONICA_ATTRIBUTE_TYPE(void)
1090 {
1091     /* LPGOPHER_VERONICA_ATTRIBUTE_TYPE */
1092     TEST_TYPE_SIZE   (LPGOPHER_VERONICA_ATTRIBUTE_TYPE, 8)
1093     TEST_TYPE_ALIGN  (LPGOPHER_VERONICA_ATTRIBUTE_TYPE, 8)
1094     TEST_TARGET_SIZE (LPGOPHER_VERONICA_ATTRIBUTE_TYPE, 4)
1095     TEST_TARGET_ALIGN(LPGOPHER_VERONICA_ATTRIBUTE_TYPE, 4)
1096 }
1097 
1098 static void test_pack_LPGOPHER_VERSION_ATTRIBUTE_TYPEA(void)
1099 {
1100     /* LPGOPHER_VERSION_ATTRIBUTE_TYPEA */
1101     TEST_TYPE_SIZE   (LPGOPHER_VERSION_ATTRIBUTE_TYPEA, 8)
1102     TEST_TYPE_ALIGN  (LPGOPHER_VERSION_ATTRIBUTE_TYPEA, 8)
1103     TEST_TARGET_SIZE (LPGOPHER_VERSION_ATTRIBUTE_TYPEA, 8)
1104     TEST_TARGET_ALIGN(LPGOPHER_VERSION_ATTRIBUTE_TYPEA, 8)
1105 }
1106 
1107 static void test_pack_LPGOPHER_VERSION_ATTRIBUTE_TYPEW(void)
1108 {
1109     /* LPGOPHER_VERSION_ATTRIBUTE_TYPEW */
1110     TEST_TYPE_SIZE   (LPGOPHER_VERSION_ATTRIBUTE_TYPEW, 8)
1111     TEST_TYPE_ALIGN  (LPGOPHER_VERSION_ATTRIBUTE_TYPEW, 8)
1112     TEST_TARGET_SIZE (LPGOPHER_VERSION_ATTRIBUTE_TYPEW, 8)
1113     TEST_TARGET_ALIGN(LPGOPHER_VERSION_ATTRIBUTE_TYPEW, 8)
1114 }
1115 
1116 static void test_pack_LPGOPHER_VIEW_ATTRIBUTE_TYPEA(void)
1117 {
1118     /* LPGOPHER_VIEW_ATTRIBUTE_TYPEA */
1119     TEST_TYPE_SIZE   (LPGOPHER_VIEW_ATTRIBUTE_TYPEA, 8)
1120     TEST_TYPE_ALIGN  (LPGOPHER_VIEW_ATTRIBUTE_TYPEA, 8)
1121     TEST_TARGET_SIZE (LPGOPHER_VIEW_ATTRIBUTE_TYPEA, 24)
1122     TEST_TARGET_ALIGN(LPGOPHER_VIEW_ATTRIBUTE_TYPEA, 8)
1123 }
1124 
1125 static void test_pack_LPGOPHER_VIEW_ATTRIBUTE_TYPEW(void)
1126 {
1127     /* LPGOPHER_VIEW_ATTRIBUTE_TYPEW */
1128     TEST_TYPE_SIZE   (LPGOPHER_VIEW_ATTRIBUTE_TYPEW, 8)
1129     TEST_TYPE_ALIGN  (LPGOPHER_VIEW_ATTRIBUTE_TYPEW, 8)
1130     TEST_TARGET_SIZE (LPGOPHER_VIEW_ATTRIBUTE_TYPEW, 24)
1131     TEST_TARGET_ALIGN(LPGOPHER_VIEW_ATTRIBUTE_TYPEW, 8)
1132 }
1133 
1134 static void test_pack_LPHINTERNET(void)
1135 {
1136     /* LPHINTERNET */
1137     TEST_TYPE_SIZE   (LPHINTERNET, 8)
1138     TEST_TYPE_ALIGN  (LPHINTERNET, 8)
1139     TEST_TARGET_SIZE (LPHINTERNET, 8)
1140     TEST_TARGET_ALIGN(LPHINTERNET, 8)
1141 }
1142 
1143 static void test_pack_LPHTTP_VERSION_INFO(void)
1144 {
1145     /* LPHTTP_VERSION_INFO */
1146     TEST_TYPE_SIZE   (LPHTTP_VERSION_INFO, 8)
1147     TEST_TYPE_ALIGN  (LPHTTP_VERSION_INFO, 8)
1148     TEST_TARGET_SIZE (LPHTTP_VERSION_INFO, 8)
1149     TEST_TARGET_ALIGN(LPHTTP_VERSION_INFO, 4)
1150 }
1151 
1152 static void test_pack_LPINTERNET_ASYNC_RESULT(void)
1153 {
1154     /* LPINTERNET_ASYNC_RESULT */
1155     TEST_TYPE_SIZE   (LPINTERNET_ASYNC_RESULT, 8)
1156     TEST_TYPE_ALIGN  (LPINTERNET_ASYNC_RESULT, 8)
1157     TEST_TARGET_SIZE (LPINTERNET_ASYNC_RESULT, 16)
1158     TEST_TARGET_ALIGN(LPINTERNET_ASYNC_RESULT, 8)
1159 }
1160 
1161 static void test_pack_LPINTERNET_BUFFERSA(void)
1162 {
1163     /* LPINTERNET_BUFFERSA */
1164     TEST_TYPE_SIZE   (LPINTERNET_BUFFERSA, 8)
1165     TEST_TYPE_ALIGN  (LPINTERNET_BUFFERSA, 8)
1166     TEST_TARGET_SIZE (LPINTERNET_BUFFERSA, 56)
1167     TEST_TARGET_ALIGN(LPINTERNET_BUFFERSA, 8)
1168 }
1169 
1170 static void test_pack_LPINTERNET_BUFFERSW(void)
1171 {
1172     /* LPINTERNET_BUFFERSW */
1173     TEST_TYPE_SIZE   (LPINTERNET_BUFFERSW, 8)
1174     TEST_TYPE_ALIGN  (LPINTERNET_BUFFERSW, 8)
1175     TEST_TARGET_SIZE (LPINTERNET_BUFFERSW, 56)
1176     TEST_TARGET_ALIGN(LPINTERNET_BUFFERSW, 8)
1177 }
1178 
1179 static void test_pack_LPINTERNET_CACHE_ENTRY_INFOA(void)
1180 {
1181     /* LPINTERNET_CACHE_ENTRY_INFOA */
1182     TEST_TYPE_SIZE   (LPINTERNET_CACHE_ENTRY_INFOA, 8)
1183     TEST_TYPE_ALIGN  (LPINTERNET_CACHE_ENTRY_INFOA, 8)
1184 }
1185 
1186 static void test_pack_LPINTERNET_CACHE_ENTRY_INFOW(void)
1187 {
1188     /* LPINTERNET_CACHE_ENTRY_INFOW */
1189     TEST_TYPE_SIZE   (LPINTERNET_CACHE_ENTRY_INFOW, 8)
1190     TEST_TYPE_ALIGN  (LPINTERNET_CACHE_ENTRY_INFOW, 8)
1191 }
1192 
1193 static void test_pack_LPINTERNET_CERTIFICATE_INFOA(void)
1194 {
1195     /* LPINTERNET_CERTIFICATE_INFOA */
1196     TEST_TYPE_SIZE   (LPINTERNET_CERTIFICATE_INFOA, 8)
1197     TEST_TYPE_ALIGN  (LPINTERNET_CERTIFICATE_INFOA, 8)
1198     TEST_TARGET_SIZE (LPINTERNET_CERTIFICATE_INFOA, 64)
1199     TEST_TARGET_ALIGN(LPINTERNET_CERTIFICATE_INFOA, 8)
1200 }
1201 
1202 static void test_pack_LPINTERNET_CERTIFICATE_INFOW(void)
1203 {
1204     /* LPINTERNET_CERTIFICATE_INFOW */
1205     TEST_TYPE_SIZE   (LPINTERNET_CERTIFICATE_INFOW, 8)
1206     TEST_TYPE_ALIGN  (LPINTERNET_CERTIFICATE_INFOW, 8)
1207     TEST_TARGET_SIZE (LPINTERNET_CERTIFICATE_INFOW, 64)
1208     TEST_TARGET_ALIGN(LPINTERNET_CERTIFICATE_INFOW, 8)
1209 }
1210 
1211 static void test_pack_LPINTERNET_CONNECTED_INFO(void)
1212 {
1213     /* LPINTERNET_CONNECTED_INFO */
1214     TEST_TYPE_SIZE   (LPINTERNET_CONNECTED_INFO, 8)
1215     TEST_TYPE_ALIGN  (LPINTERNET_CONNECTED_INFO, 8)
1216     TEST_TARGET_SIZE (LPINTERNET_CONNECTED_INFO, 8)
1217     TEST_TARGET_ALIGN(LPINTERNET_CONNECTED_INFO, 4)
1218 }
1219 
1220 static void test_pack_LPINTERNET_PORT(void)
1221 {
1222     /* LPINTERNET_PORT */
1223     TEST_TYPE_SIZE   (LPINTERNET_PORT, 8)
1224     TEST_TYPE_ALIGN  (LPINTERNET_PORT, 8)
1225     TEST_TARGET_SIZE (LPINTERNET_PORT, 2)
1226     TEST_TARGET_ALIGN(LPINTERNET_PORT, 2)
1227 }
1228 
1229 static void test_pack_LPINTERNET_PROXY_INFOA(void)
1230 {
1231     /* LPINTERNET_PROXY_INFOA */
1232     TEST_TYPE_SIZE   (LPINTERNET_PROXY_INFOA, 8)
1233     TEST_TYPE_ALIGN  (LPINTERNET_PROXY_INFOA, 8)
1234     TEST_TARGET_SIZE (LPINTERNET_PROXY_INFOA, 24)
1235     TEST_TARGET_ALIGN(LPINTERNET_PROXY_INFOA, 8)
1236 }
1237 
1238 static void test_pack_LPINTERNET_PROXY_INFOW(void)
1239 {
1240     /* LPINTERNET_PROXY_INFOW */
1241     TEST_TYPE_SIZE   (LPINTERNET_PROXY_INFOW, 8)
1242     TEST_TYPE_ALIGN  (LPINTERNET_PROXY_INFOW, 8)
1243     TEST_TARGET_SIZE (LPINTERNET_PROXY_INFOW, 24)
1244     TEST_TARGET_ALIGN(LPINTERNET_PROXY_INFOW, 8)
1245 }
1246 
1247 static void test_pack_LPINTERNET_STATUS_CALLBACK(void)
1248 {
1249     /* LPINTERNET_STATUS_CALLBACK */
1250     TEST_TYPE_SIZE   (LPINTERNET_STATUS_CALLBACK, 8)
1251     TEST_TYPE_ALIGN  (LPINTERNET_STATUS_CALLBACK, 8)
1252     TEST_TARGET_SIZE (LPINTERNET_STATUS_CALLBACK, 8)
1253     TEST_TARGET_ALIGN(LPINTERNET_STATUS_CALLBACK, 8)
1254 }
1255 
1256 static void test_pack_LPINTERNET_VERSION_INFO(void)
1257 {
1258     /* LPINTERNET_VERSION_INFO */
1259     TEST_TYPE_SIZE   (LPINTERNET_VERSION_INFO, 8)
1260     TEST_TYPE_ALIGN  (LPINTERNET_VERSION_INFO, 8)
1261     TEST_TARGET_SIZE (LPINTERNET_VERSION_INFO, 8)
1262     TEST_TARGET_ALIGN(LPINTERNET_VERSION_INFO, 4)
1263 }
1264 
1265 static void test_pack_LPURL_COMPONENTSA(void)
1266 {
1267     /* LPURL_COMPONENTSA */
1268     TEST_TYPE_SIZE   (LPURL_COMPONENTSA, 8)
1269     TEST_TYPE_ALIGN  (LPURL_COMPONENTSA, 8)
1270 }
1271 
1272 static void test_pack_LPURL_COMPONENTSW(void)
1273 {
1274     /* LPURL_COMPONENTSW */
1275     TEST_TYPE_SIZE   (LPURL_COMPONENTSW, 8)
1276     TEST_TYPE_ALIGN  (LPURL_COMPONENTSW, 8)
1277 }
1278 
1279 static void test_pack_PFN_AUTH_NOTIFY(void)
1280 {
1281     /* PFN_AUTH_NOTIFY */
1282     TEST_TYPE_SIZE   (PFN_AUTH_NOTIFY, 8)
1283     TEST_TYPE_ALIGN  (PFN_AUTH_NOTIFY, 8)
1284 }
1285 
1286 static void test_pack_PFN_DIAL_HANDLER(void)
1287 {
1288     /* PFN_DIAL_HANDLER */
1289     TEST_TYPE_SIZE   (PFN_DIAL_HANDLER, 8)
1290     TEST_TYPE_ALIGN  (PFN_DIAL_HANDLER, 8)
1291 }
1292 
1293 static void test_pack_URL_COMPONENTSA(void)
1294 {
1295     /* URL_COMPONENTSA */
1296     TEST_FIELD_SIZE  (URL_COMPONENTSA, dwStructSize, 4)
1297     TEST_FIELD_ALIGN (URL_COMPONENTSA, dwStructSize, 4)
1298     TEST_FIELD_OFFSET(URL_COMPONENTSA, dwStructSize, 0)
1299     TEST_FIELD_SIZE  (URL_COMPONENTSA, lpszScheme, 8)
1300     TEST_FIELD_ALIGN (URL_COMPONENTSA, lpszScheme, 8)
1301     TEST_FIELD_OFFSET(URL_COMPONENTSA, lpszScheme, 8)
1302     TEST_FIELD_SIZE  (URL_COMPONENTSA, dwSchemeLength, 4)
1303     TEST_FIELD_ALIGN (URL_COMPONENTSA, dwSchemeLength, 4)
1304     TEST_FIELD_OFFSET(URL_COMPONENTSA, dwSchemeLength, 16)
1305 }
1306 
1307 static void test_pack_URL_COMPONENTSW(void)
1308 {
1309     /* URL_COMPONENTSW */
1310     TEST_FIELD_SIZE  (URL_COMPONENTSW, dwStructSize, 4)
1311     TEST_FIELD_ALIGN (URL_COMPONENTSW, dwStructSize, 4)
1312     TEST_FIELD_OFFSET(URL_COMPONENTSW, dwStructSize, 0)
1313     TEST_FIELD_SIZE  (URL_COMPONENTSW, lpszScheme, 8)
1314     TEST_FIELD_ALIGN (URL_COMPONENTSW, lpszScheme, 8)
1315     TEST_FIELD_OFFSET(URL_COMPONENTSW, lpszScheme, 8)
1316     TEST_FIELD_SIZE  (URL_COMPONENTSW, dwSchemeLength, 4)
1317     TEST_FIELD_ALIGN (URL_COMPONENTSW, dwSchemeLength, 4)
1318     TEST_FIELD_OFFSET(URL_COMPONENTSW, dwSchemeLength, 16)
1319 }
1320 
1321 #else /* _WIN64 */
1322 
1323 static void test_pack_GOPHER_ABSTRACT_ATTRIBUTE_TYPEA(void)
1324 {
1325     /* GOPHER_ABSTRACT_ATTRIBUTE_TYPEA */
1326     TEST_TYPE_SIZE   (GOPHER_ABSTRACT_ATTRIBUTE_TYPEA, 8)
1327     TEST_TYPE_ALIGN  (GOPHER_ABSTRACT_ATTRIBUTE_TYPEA, 4)
1328     TEST_FIELD_SIZE  (GOPHER_ABSTRACT_ATTRIBUTE_TYPEA, ShortAbstract, 4)
1329     TEST_FIELD_ALIGN (GOPHER_ABSTRACT_ATTRIBUTE_TYPEA, ShortAbstract, 4)
1330     TEST_FIELD_OFFSET(GOPHER_ABSTRACT_ATTRIBUTE_TYPEA, ShortAbstract, 0)
1331     TEST_FIELD_SIZE  (GOPHER_ABSTRACT_ATTRIBUTE_TYPEA, AbstractFile, 4)
1332     TEST_FIELD_ALIGN (GOPHER_ABSTRACT_ATTRIBUTE_TYPEA, AbstractFile, 4)
1333     TEST_FIELD_OFFSET(GOPHER_ABSTRACT_ATTRIBUTE_TYPEA, AbstractFile, 4)
1334 }
1335 
1336 static void test_pack_GOPHER_ABSTRACT_ATTRIBUTE_TYPEW(void)
1337 {
1338     /* GOPHER_ABSTRACT_ATTRIBUTE_TYPEW */
1339     TEST_TYPE_SIZE   (GOPHER_ABSTRACT_ATTRIBUTE_TYPEW, 8)
1340     TEST_TYPE_ALIGN  (GOPHER_ABSTRACT_ATTRIBUTE_TYPEW, 4)
1341     TEST_FIELD_SIZE  (GOPHER_ABSTRACT_ATTRIBUTE_TYPEW, ShortAbstract, 4)
1342     TEST_FIELD_ALIGN (GOPHER_ABSTRACT_ATTRIBUTE_TYPEW, ShortAbstract, 4)
1343     TEST_FIELD_OFFSET(GOPHER_ABSTRACT_ATTRIBUTE_TYPEW, ShortAbstract, 0)
1344     TEST_FIELD_SIZE  (GOPHER_ABSTRACT_ATTRIBUTE_TYPEW, AbstractFile, 4)
1345     TEST_FIELD_ALIGN (GOPHER_ABSTRACT_ATTRIBUTE_TYPEW, AbstractFile, 4)
1346     TEST_FIELD_OFFSET(GOPHER_ABSTRACT_ATTRIBUTE_TYPEW, AbstractFile, 4)
1347 }
1348 
1349 static void test_pack_GOPHER_ADMIN_ATTRIBUTE_TYPEA(void)
1350 {
1351     /* GOPHER_ADMIN_ATTRIBUTE_TYPEA */
1352     TEST_TYPE_SIZE   (GOPHER_ADMIN_ATTRIBUTE_TYPEA, 8)
1353     TEST_TYPE_ALIGN  (GOPHER_ADMIN_ATTRIBUTE_TYPEA, 4)
1354     TEST_FIELD_SIZE  (GOPHER_ADMIN_ATTRIBUTE_TYPEA, Comment, 4)
1355     TEST_FIELD_ALIGN (GOPHER_ADMIN_ATTRIBUTE_TYPEA, Comment, 4)
1356     TEST_FIELD_OFFSET(GOPHER_ADMIN_ATTRIBUTE_TYPEA, Comment, 0)
1357     TEST_FIELD_SIZE  (GOPHER_ADMIN_ATTRIBUTE_TYPEA, EmailAddress, 4)
1358     TEST_FIELD_ALIGN (GOPHER_ADMIN_ATTRIBUTE_TYPEA, EmailAddress, 4)
1359     TEST_FIELD_OFFSET(GOPHER_ADMIN_ATTRIBUTE_TYPEA, EmailAddress, 4)
1360 }
1361 
1362 static void test_pack_GOPHER_ADMIN_ATTRIBUTE_TYPEW(void)
1363 {
1364     /* GOPHER_ADMIN_ATTRIBUTE_TYPEW */
1365     TEST_TYPE_SIZE   (GOPHER_ADMIN_ATTRIBUTE_TYPEW, 8)
1366     TEST_TYPE_ALIGN  (GOPHER_ADMIN_ATTRIBUTE_TYPEW, 4)
1367     TEST_FIELD_SIZE  (GOPHER_ADMIN_ATTRIBUTE_TYPEW, Comment, 4)
1368     TEST_FIELD_ALIGN (GOPHER_ADMIN_ATTRIBUTE_TYPEW, Comment, 4)
1369     TEST_FIELD_OFFSET(GOPHER_ADMIN_ATTRIBUTE_TYPEW, Comment, 0)
1370     TEST_FIELD_SIZE  (GOPHER_ADMIN_ATTRIBUTE_TYPEW, EmailAddress, 4)
1371     TEST_FIELD_ALIGN (GOPHER_ADMIN_ATTRIBUTE_TYPEW, EmailAddress, 4)
1372     TEST_FIELD_OFFSET(GOPHER_ADMIN_ATTRIBUTE_TYPEW, EmailAddress, 4)
1373 }
1374 
1375 static void test_pack_GOPHER_ASK_ATTRIBUTE_TYPEA(void)
1376 {
1377     /* GOPHER_ASK_ATTRIBUTE_TYPEA */
1378     TEST_TYPE_SIZE   (GOPHER_ASK_ATTRIBUTE_TYPEA, 8)
1379     TEST_TYPE_ALIGN  (GOPHER_ASK_ATTRIBUTE_TYPEA, 4)
1380     TEST_FIELD_SIZE  (GOPHER_ASK_ATTRIBUTE_TYPEA, QuestionType, 4)
1381     TEST_FIELD_ALIGN (GOPHER_ASK_ATTRIBUTE_TYPEA, QuestionType, 4)
1382     TEST_FIELD_OFFSET(GOPHER_ASK_ATTRIBUTE_TYPEA, QuestionType, 0)
1383     TEST_FIELD_SIZE  (GOPHER_ASK_ATTRIBUTE_TYPEA, QuestionText, 4)
1384     TEST_FIELD_ALIGN (GOPHER_ASK_ATTRIBUTE_TYPEA, QuestionText, 4)
1385     TEST_FIELD_OFFSET(GOPHER_ASK_ATTRIBUTE_TYPEA, QuestionText, 4)
1386 }
1387 
1388 static void test_pack_GOPHER_ASK_ATTRIBUTE_TYPEW(void)
1389 {
1390     /* GOPHER_ASK_ATTRIBUTE_TYPEW */
1391     TEST_TYPE_SIZE   (GOPHER_ASK_ATTRIBUTE_TYPEW, 8)
1392     TEST_TYPE_ALIGN  (GOPHER_ASK_ATTRIBUTE_TYPEW, 4)
1393     TEST_FIELD_SIZE  (GOPHER_ASK_ATTRIBUTE_TYPEW, QuestionType, 4)
1394     TEST_FIELD_ALIGN (GOPHER_ASK_ATTRIBUTE_TYPEW, QuestionType, 4)
1395     TEST_FIELD_OFFSET(GOPHER_ASK_ATTRIBUTE_TYPEW, QuestionType, 0)
1396     TEST_FIELD_SIZE  (GOPHER_ASK_ATTRIBUTE_TYPEW, QuestionText, 4)
1397     TEST_FIELD_ALIGN (GOPHER_ASK_ATTRIBUTE_TYPEW, QuestionText, 4)
1398     TEST_FIELD_OFFSET(GOPHER_ASK_ATTRIBUTE_TYPEW, QuestionText, 4)
1399 }
1400 
1401 static void test_pack_GOPHER_ATTRIBUTE_ENUMERATORA(void)
1402 {
1403     /* GOPHER_ATTRIBUTE_ENUMERATORA */
1404     TEST_TYPE_SIZE   (GOPHER_ATTRIBUTE_ENUMERATORA, 4)
1405     TEST_TYPE_ALIGN  (GOPHER_ATTRIBUTE_ENUMERATORA, 4)
1406 }
1407 
1408 static void test_pack_GOPHER_ATTRIBUTE_ENUMERATORW(void)
1409 {
1410     /* GOPHER_ATTRIBUTE_ENUMERATORW */
1411     TEST_TYPE_SIZE   (GOPHER_ATTRIBUTE_ENUMERATORW, 4)
1412     TEST_TYPE_ALIGN  (GOPHER_ATTRIBUTE_ENUMERATORW, 4)
1413 }
1414 
1415 static void test_pack_GOPHER_ATTRIBUTE_TYPEA(void)
1416 {
1417     /* GOPHER_ATTRIBUTE_TYPEA */
1418     TEST_FIELD_SIZE  (GOPHER_ATTRIBUTE_TYPEA, CategoryId, 4)
1419     TEST_FIELD_ALIGN (GOPHER_ATTRIBUTE_TYPEA, CategoryId, 4)
1420     TEST_FIELD_OFFSET(GOPHER_ATTRIBUTE_TYPEA, CategoryId, 0)
1421     TEST_FIELD_SIZE  (GOPHER_ATTRIBUTE_TYPEA, AttributeId, 4)
1422     TEST_FIELD_ALIGN (GOPHER_ATTRIBUTE_TYPEA, AttributeId, 4)
1423     TEST_FIELD_OFFSET(GOPHER_ATTRIBUTE_TYPEA, AttributeId, 4)
1424 }
1425 
1426 static void test_pack_GOPHER_ATTRIBUTE_TYPEW(void)
1427 {
1428     /* GOPHER_ATTRIBUTE_TYPEW */
1429     TEST_FIELD_SIZE  (GOPHER_ATTRIBUTE_TYPEW, CategoryId, 4)
1430     TEST_FIELD_ALIGN (GOPHER_ATTRIBUTE_TYPEW, CategoryId, 4)
1431     TEST_FIELD_OFFSET(GOPHER_ATTRIBUTE_TYPEW, CategoryId, 0)
1432     TEST_FIELD_SIZE  (GOPHER_ATTRIBUTE_TYPEW, AttributeId, 4)
1433     TEST_FIELD_ALIGN (GOPHER_ATTRIBUTE_TYPEW, AttributeId, 4)
1434     TEST_FIELD_OFFSET(GOPHER_ATTRIBUTE_TYPEW, AttributeId, 4)
1435 }
1436 
1437 static void test_pack_GOPHER_FIND_DATAA(void)
1438 {
1439     /* GOPHER_FIND_DATAA */
1440     TEST_TYPE_SIZE   (GOPHER_FIND_DATAA, 808)
1441     TEST_TYPE_ALIGN  (GOPHER_FIND_DATAA, 4)
1442     TEST_FIELD_SIZE  (GOPHER_FIND_DATAA, DisplayString, 129)
1443     TEST_FIELD_ALIGN (GOPHER_FIND_DATAA, DisplayString, 1)
1444     TEST_FIELD_OFFSET(GOPHER_FIND_DATAA, DisplayString, 0)
1445     TEST_FIELD_SIZE  (GOPHER_FIND_DATAA, GopherType, 4)
1446     TEST_FIELD_ALIGN (GOPHER_FIND_DATAA, GopherType, 4)
1447     TEST_FIELD_OFFSET(GOPHER_FIND_DATAA, GopherType, 132)
1448     TEST_FIELD_SIZE  (GOPHER_FIND_DATAA, SizeLow, 4)
1449     TEST_FIELD_ALIGN (GOPHER_FIND_DATAA, SizeLow, 4)
1450     TEST_FIELD_OFFSET(GOPHER_FIND_DATAA, SizeLow, 136)
1451     TEST_FIELD_SIZE  (GOPHER_FIND_DATAA, SizeHigh, 4)
1452     TEST_FIELD_ALIGN (GOPHER_FIND_DATAA, SizeHigh, 4)
1453     TEST_FIELD_OFFSET(GOPHER_FIND_DATAA, SizeHigh, 140)
1454     TEST_FIELD_SIZE  (GOPHER_FIND_DATAA, LastModificationTime, 8)
1455     TEST_FIELD_ALIGN (GOPHER_FIND_DATAA, LastModificationTime, 4)
1456     TEST_FIELD_OFFSET(GOPHER_FIND_DATAA, LastModificationTime, 144)
1457     TEST_FIELD_SIZE  (GOPHER_FIND_DATAA, Locator, 654)
1458     TEST_FIELD_ALIGN (GOPHER_FIND_DATAA, Locator, 1)
1459     TEST_FIELD_OFFSET(GOPHER_FIND_DATAA, Locator, 152)
1460 }
1461 
1462 static void test_pack_GOPHER_FIND_DATAW(void)
1463 {
1464     /* GOPHER_FIND_DATAW */
1465     TEST_TYPE_SIZE   (GOPHER_FIND_DATAW, 1588)
1466     TEST_TYPE_ALIGN  (GOPHER_FIND_DATAW, 4)
1467     TEST_FIELD_SIZE  (GOPHER_FIND_DATAW, DisplayString, 258)
1468     TEST_FIELD_ALIGN (GOPHER_FIND_DATAW, DisplayString, 2)
1469     TEST_FIELD_OFFSET(GOPHER_FIND_DATAW, DisplayString, 0)
1470     TEST_FIELD_SIZE  (GOPHER_FIND_DATAW, GopherType, 4)
1471     TEST_FIELD_ALIGN (GOPHER_FIND_DATAW, GopherType, 4)
1472     TEST_FIELD_OFFSET(GOPHER_FIND_DATAW, GopherType, 260)
1473     TEST_FIELD_SIZE  (GOPHER_FIND_DATAW, SizeLow, 4)
1474     TEST_FIELD_ALIGN (GOPHER_FIND_DATAW, SizeLow, 4)
1475     TEST_FIELD_OFFSET(GOPHER_FIND_DATAW, SizeLow, 264)
1476     TEST_FIELD_SIZE  (GOPHER_FIND_DATAW, SizeHigh, 4)
1477     TEST_FIELD_ALIGN (GOPHER_FIND_DATAW, SizeHigh, 4)
1478     TEST_FIELD_OFFSET(GOPHER_FIND_DATAW, SizeHigh, 268)
1479     TEST_FIELD_SIZE  (GOPHER_FIND_DATAW, LastModificationTime, 8)
1480     TEST_FIELD_ALIGN (GOPHER_FIND_DATAW, LastModificationTime, 4)
1481     TEST_FIELD_OFFSET(GOPHER_FIND_DATAW, LastModificationTime, 272)
1482     TEST_FIELD_SIZE  (GOPHER_FIND_DATAW, Locator, 1308)
1483     TEST_FIELD_ALIGN (GOPHER_FIND_DATAW, Locator, 2)
1484     TEST_FIELD_OFFSET(GOPHER_FIND_DATAW, Locator, 280)
1485 }
1486 
1487 static void test_pack_GOPHER_GEOGRAPHICAL_LOCATION_ATTRIBUTE_TYPE(void)
1488 {
1489     /* GOPHER_GEOGRAPHICAL_LOCATION_ATTRIBUTE_TYPE */
1490     TEST_TYPE_SIZE   (GOPHER_GEOGRAPHICAL_LOCATION_ATTRIBUTE_TYPE, 24)
1491     TEST_TYPE_ALIGN  (GOPHER_GEOGRAPHICAL_LOCATION_ATTRIBUTE_TYPE, 4)
1492     TEST_FIELD_SIZE  (GOPHER_GEOGRAPHICAL_LOCATION_ATTRIBUTE_TYPE, DegreesNorth, 4)
1493     TEST_FIELD_ALIGN (GOPHER_GEOGRAPHICAL_LOCATION_ATTRIBUTE_TYPE, DegreesNorth, 4)
1494     TEST_FIELD_OFFSET(GOPHER_GEOGRAPHICAL_LOCATION_ATTRIBUTE_TYPE, DegreesNorth, 0)
1495     TEST_FIELD_SIZE  (GOPHER_GEOGRAPHICAL_LOCATION_ATTRIBUTE_TYPE, MinutesNorth, 4)
1496     TEST_FIELD_ALIGN (GOPHER_GEOGRAPHICAL_LOCATION_ATTRIBUTE_TYPE, MinutesNorth, 4)
1497     TEST_FIELD_OFFSET(GOPHER_GEOGRAPHICAL_LOCATION_ATTRIBUTE_TYPE, MinutesNorth, 4)
1498     TEST_FIELD_SIZE  (GOPHER_GEOGRAPHICAL_LOCATION_ATTRIBUTE_TYPE, SecondsNorth, 4)
1499     TEST_FIELD_ALIGN (GOPHER_GEOGRAPHICAL_LOCATION_ATTRIBUTE_TYPE, SecondsNorth, 4)
1500     TEST_FIELD_OFFSET(GOPHER_GEOGRAPHICAL_LOCATION_ATTRIBUTE_TYPE, SecondsNorth, 8)
1501     TEST_FIELD_SIZE  (GOPHER_GEOGRAPHICAL_LOCATION_ATTRIBUTE_TYPE, DegreesEast, 4)
1502     TEST_FIELD_ALIGN (GOPHER_GEOGRAPHICAL_LOCATION_ATTRIBUTE_TYPE, DegreesEast, 4)
1503     TEST_FIELD_OFFSET(GOPHER_GEOGRAPHICAL_LOCATION_ATTRIBUTE_TYPE, DegreesEast, 12)
1504     TEST_FIELD_SIZE  (GOPHER_GEOGRAPHICAL_LOCATION_ATTRIBUTE_TYPE, MinutesEast, 4)
1505     TEST_FIELD_ALIGN (GOPHER_GEOGRAPHICAL_LOCATION_ATTRIBUTE_TYPE, MinutesEast, 4)
1506     TEST_FIELD_OFFSET(GOPHER_GEOGRAPHICAL_LOCATION_ATTRIBUTE_TYPE, MinutesEast, 16)
1507     TEST_FIELD_SIZE  (GOPHER_GEOGRAPHICAL_LOCATION_ATTRIBUTE_TYPE, SecondsEast, 4)
1508     TEST_FIELD_ALIGN (GOPHER_GEOGRAPHICAL_LOCATION_ATTRIBUTE_TYPE, SecondsEast, 4)
1509     TEST_FIELD_OFFSET(GOPHER_GEOGRAPHICAL_LOCATION_ATTRIBUTE_TYPE, SecondsEast, 20)
1510 }
1511 
1512 static void test_pack_GOPHER_LOCATION_ATTRIBUTE_TYPEA(void)
1513 {
1514     /* GOPHER_LOCATION_ATTRIBUTE_TYPEA */
1515     TEST_TYPE_SIZE   (GOPHER_LOCATION_ATTRIBUTE_TYPEA, 4)
1516     TEST_TYPE_ALIGN  (GOPHER_LOCATION_ATTRIBUTE_TYPEA, 4)
1517     TEST_FIELD_SIZE  (GOPHER_LOCATION_ATTRIBUTE_TYPEA, Location, 4)
1518     TEST_FIELD_ALIGN (GOPHER_LOCATION_ATTRIBUTE_TYPEA, Location, 4)
1519     TEST_FIELD_OFFSET(GOPHER_LOCATION_ATTRIBUTE_TYPEA, Location, 0)
1520 }
1521 
1522 static void test_pack_GOPHER_LOCATION_ATTRIBUTE_TYPEW(void)
1523 {
1524     /* GOPHER_LOCATION_ATTRIBUTE_TYPEW */
1525     TEST_TYPE_SIZE   (GOPHER_LOCATION_ATTRIBUTE_TYPEW, 4)
1526     TEST_TYPE_ALIGN  (GOPHER_LOCATION_ATTRIBUTE_TYPEW, 4)
1527     TEST_FIELD_SIZE  (GOPHER_LOCATION_ATTRIBUTE_TYPEW, Location, 4)
1528     TEST_FIELD_ALIGN (GOPHER_LOCATION_ATTRIBUTE_TYPEW, Location, 4)
1529     TEST_FIELD_OFFSET(GOPHER_LOCATION_ATTRIBUTE_TYPEW, Location, 0)
1530 }
1531 
1532 static void test_pack_GOPHER_MOD_DATE_ATTRIBUTE_TYPE(void)
1533 {
1534     /* GOPHER_MOD_DATE_ATTRIBUTE_TYPE */
1535     TEST_TYPE_SIZE   (GOPHER_MOD_DATE_ATTRIBUTE_TYPE, 8)
1536     TEST_TYPE_ALIGN  (GOPHER_MOD_DATE_ATTRIBUTE_TYPE, 4)
1537     TEST_FIELD_SIZE  (GOPHER_MOD_DATE_ATTRIBUTE_TYPE, DateAndTime, 8)
1538     TEST_FIELD_ALIGN (GOPHER_MOD_DATE_ATTRIBUTE_TYPE, DateAndTime, 4)
1539     TEST_FIELD_OFFSET(GOPHER_MOD_DATE_ATTRIBUTE_TYPE, DateAndTime, 0)
1540 }
1541 
1542 static void test_pack_GOPHER_ORGANIZATION_ATTRIBUTE_TYPEA(void)
1543 {
1544     /* GOPHER_ORGANIZATION_ATTRIBUTE_TYPEA */
1545     TEST_TYPE_SIZE   (GOPHER_ORGANIZATION_ATTRIBUTE_TYPEA, 4)
1546     TEST_TYPE_ALIGN  (GOPHER_ORGANIZATION_ATTRIBUTE_TYPEA, 4)
1547     TEST_FIELD_SIZE  (GOPHER_ORGANIZATION_ATTRIBUTE_TYPEA, Organization, 4)
1548     TEST_FIELD_ALIGN (GOPHER_ORGANIZATION_ATTRIBUTE_TYPEA, Organization, 4)
1549     TEST_FIELD_OFFSET(GOPHER_ORGANIZATION_ATTRIBUTE_TYPEA, Organization, 0)
1550 }
1551 
1552 static void test_pack_GOPHER_ORGANIZATION_ATTRIBUTE_TYPEW(void)
1553 {
1554     /* GOPHER_ORGANIZATION_ATTRIBUTE_TYPEW */
1555     TEST_TYPE_SIZE   (GOPHER_ORGANIZATION_ATTRIBUTE_TYPEW, 4)
1556     TEST_TYPE_ALIGN  (GOPHER_ORGANIZATION_ATTRIBUTE_TYPEW, 4)
1557     TEST_FIELD_SIZE  (GOPHER_ORGANIZATION_ATTRIBUTE_TYPEW, Organization, 4)
1558     TEST_FIELD_ALIGN (GOPHER_ORGANIZATION_ATTRIBUTE_TYPEW, Organization, 4)
1559     TEST_FIELD_OFFSET(GOPHER_ORGANIZATION_ATTRIBUTE_TYPEW, Organization, 0)
1560 }
1561 
1562 static void test_pack_GOPHER_PROVIDER_ATTRIBUTE_TYPEA(void)
1563 {
1564     /* GOPHER_PROVIDER_ATTRIBUTE_TYPEA */
1565     TEST_TYPE_SIZE   (GOPHER_PROVIDER_ATTRIBUTE_TYPEA, 4)
1566     TEST_TYPE_ALIGN  (GOPHER_PROVIDER_ATTRIBUTE_TYPEA, 4)
1567     TEST_FIELD_SIZE  (GOPHER_PROVIDER_ATTRIBUTE_TYPEA, Provider, 4)
1568     TEST_FIELD_ALIGN (GOPHER_PROVIDER_ATTRIBUTE_TYPEA, Provider, 4)
1569     TEST_FIELD_OFFSET(GOPHER_PROVIDER_ATTRIBUTE_TYPEA, Provider, 0)
1570 }
1571 
1572 static void test_pack_GOPHER_PROVIDER_ATTRIBUTE_TYPEW(void)
1573 {
1574     /* GOPHER_PROVIDER_ATTRIBUTE_TYPEW */
1575     TEST_TYPE_SIZE   (GOPHER_PROVIDER_ATTRIBUTE_TYPEW, 4)
1576     TEST_TYPE_ALIGN  (GOPHER_PROVIDER_ATTRIBUTE_TYPEW, 4)
1577     TEST_FIELD_SIZE  (GOPHER_PROVIDER_ATTRIBUTE_TYPEW, Provider, 4)
1578     TEST_FIELD_ALIGN (GOPHER_PROVIDER_ATTRIBUTE_TYPEW, Provider, 4)
1579     TEST_FIELD_OFFSET(GOPHER_PROVIDER_ATTRIBUTE_TYPEW, Provider, 0)
1580 }
1581 
1582 static void test_pack_GOPHER_SCORE_ATTRIBUTE_TYPE(void)
1583 {
1584     /* GOPHER_SCORE_ATTRIBUTE_TYPE */
1585     TEST_TYPE_SIZE   (GOPHER_SCORE_ATTRIBUTE_TYPE, 4)
1586     TEST_TYPE_ALIGN  (GOPHER_SCORE_ATTRIBUTE_TYPE, 4)
1587     TEST_FIELD_SIZE  (GOPHER_SCORE_ATTRIBUTE_TYPE, Score, 4)
1588     TEST_FIELD_ALIGN (GOPHER_SCORE_ATTRIBUTE_TYPE, Score, 4)
1589     TEST_FIELD_OFFSET(GOPHER_SCORE_ATTRIBUTE_TYPE, Score, 0)
1590 }
1591 
1592 static void test_pack_GOPHER_SCORE_RANGE_ATTRIBUTE_TYPE(void)
1593 {
1594     /* GOPHER_SCORE_RANGE_ATTRIBUTE_TYPE */
1595     TEST_TYPE_SIZE   (GOPHER_SCORE_RANGE_ATTRIBUTE_TYPE, 8)
1596     TEST_TYPE_ALIGN  (GOPHER_SCORE_RANGE_ATTRIBUTE_TYPE, 4)
1597     TEST_FIELD_SIZE  (GOPHER_SCORE_RANGE_ATTRIBUTE_TYPE, LowerBound, 4)
1598     TEST_FIELD_ALIGN (GOPHER_SCORE_RANGE_ATTRIBUTE_TYPE, LowerBound, 4)
1599     TEST_FIELD_OFFSET(GOPHER_SCORE_RANGE_ATTRIBUTE_TYPE, LowerBound, 0)
1600     TEST_FIELD_SIZE  (GOPHER_SCORE_RANGE_ATTRIBUTE_TYPE, UpperBound, 4)
1601     TEST_FIELD_ALIGN (GOPHER_SCORE_RANGE_ATTRIBUTE_TYPE, UpperBound, 4)
1602     TEST_FIELD_OFFSET(GOPHER_SCORE_RANGE_ATTRIBUTE_TYPE, UpperBound, 4)
1603 }
1604 
1605 static void test_pack_GOPHER_SITE_ATTRIBUTE_TYPEA(void)
1606 {
1607     /* GOPHER_SITE_ATTRIBUTE_TYPEA */
1608     TEST_TYPE_SIZE   (GOPHER_SITE_ATTRIBUTE_TYPEA, 4)
1609     TEST_TYPE_ALIGN  (GOPHER_SITE_ATTRIBUTE_TYPEA, 4)
1610     TEST_FIELD_SIZE  (GOPHER_SITE_ATTRIBUTE_TYPEA, Site, 4)
1611     TEST_FIELD_ALIGN (GOPHER_SITE_ATTRIBUTE_TYPEA, Site, 4)
1612     TEST_FIELD_OFFSET(GOPHER_SITE_ATTRIBUTE_TYPEA, Site, 0)
1613 }
1614 
1615 static void test_pack_GOPHER_SITE_ATTRIBUTE_TYPEW(void)
1616 {
1617     /* GOPHER_SITE_ATTRIBUTE_TYPEW */
1618     TEST_TYPE_SIZE   (GOPHER_SITE_ATTRIBUTE_TYPEW, 4)
1619     TEST_TYPE_ALIGN  (GOPHER_SITE_ATTRIBUTE_TYPEW, 4)
1620     TEST_FIELD_SIZE  (GOPHER_SITE_ATTRIBUTE_TYPEW, Site, 4)
1621     TEST_FIELD_ALIGN (GOPHER_SITE_ATTRIBUTE_TYPEW, Site, 4)
1622     TEST_FIELD_OFFSET(GOPHER_SITE_ATTRIBUTE_TYPEW, Site, 0)
1623 }
1624 
1625 static void test_pack_GOPHER_TIMEZONE_ATTRIBUTE_TYPE(void)
1626 {
1627     /* GOPHER_TIMEZONE_ATTRIBUTE_TYPE */
1628     TEST_TYPE_SIZE   (GOPHER_TIMEZONE_ATTRIBUTE_TYPE, 4)
1629     TEST_TYPE_ALIGN  (GOPHER_TIMEZONE_ATTRIBUTE_TYPE, 4)
1630     TEST_FIELD_SIZE  (GOPHER_TIMEZONE_ATTRIBUTE_TYPE, Zone, 4)
1631     TEST_FIELD_ALIGN (GOPHER_TIMEZONE_ATTRIBUTE_TYPE, Zone, 4)
1632     TEST_FIELD_OFFSET(GOPHER_TIMEZONE_ATTRIBUTE_TYPE, Zone, 0)
1633 }
1634 
1635 static void test_pack_GOPHER_TTL_ATTRIBUTE_TYPE(void)
1636 {
1637     /* GOPHER_TTL_ATTRIBUTE_TYPE */
1638     TEST_TYPE_SIZE   (GOPHER_TTL_ATTRIBUTE_TYPE, 4)
1639     TEST_TYPE_ALIGN  (GOPHER_TTL_ATTRIBUTE_TYPE, 4)
1640     TEST_FIELD_SIZE  (GOPHER_TTL_ATTRIBUTE_TYPE, Ttl, 4)
1641     TEST_FIELD_ALIGN (GOPHER_TTL_ATTRIBUTE_TYPE, Ttl, 4)
1642     TEST_FIELD_OFFSET(GOPHER_TTL_ATTRIBUTE_TYPE, Ttl, 0)
1643 }
1644 
1645 static void test_pack_GOPHER_UNKNOWN_ATTRIBUTE_TYPEA(void)
1646 {
1647     /* GOPHER_UNKNOWN_ATTRIBUTE_TYPEA */
1648     TEST_TYPE_SIZE   (GOPHER_UNKNOWN_ATTRIBUTE_TYPEA, 4)
1649     TEST_TYPE_ALIGN  (GOPHER_UNKNOWN_ATTRIBUTE_TYPEA, 4)
1650     TEST_FIELD_SIZE  (GOPHER_UNKNOWN_ATTRIBUTE_TYPEA, Text, 4)
1651     TEST_FIELD_ALIGN (GOPHER_UNKNOWN_ATTRIBUTE_TYPEA, Text, 4)
1652     TEST_FIELD_OFFSET(GOPHER_UNKNOWN_ATTRIBUTE_TYPEA, Text, 0)
1653 }
1654 
1655 static void test_pack_GOPHER_UNKNOWN_ATTRIBUTE_TYPEW(void)
1656 {
1657     /* GOPHER_UNKNOWN_ATTRIBUTE_TYPEW */
1658     TEST_TYPE_SIZE   (GOPHER_UNKNOWN_ATTRIBUTE_TYPEW, 4)
1659     TEST_TYPE_ALIGN  (GOPHER_UNKNOWN_ATTRIBUTE_TYPEW, 4)
1660     TEST_FIELD_SIZE  (GOPHER_UNKNOWN_ATTRIBUTE_TYPEW, Text, 4)
1661     TEST_FIELD_ALIGN (GOPHER_UNKNOWN_ATTRIBUTE_TYPEW, Text, 4)
1662     TEST_FIELD_OFFSET(GOPHER_UNKNOWN_ATTRIBUTE_TYPEW, Text, 0)
1663 }
1664 
1665 static void test_pack_GOPHER_VERONICA_ATTRIBUTE_TYPE(void)
1666 {
1667     /* GOPHER_VERONICA_ATTRIBUTE_TYPE */
1668     TEST_TYPE_SIZE   (GOPHER_VERONICA_ATTRIBUTE_TYPE, 4)
1669     TEST_TYPE_ALIGN  (GOPHER_VERONICA_ATTRIBUTE_TYPE, 4)
1670     TEST_FIELD_SIZE  (GOPHER_VERONICA_ATTRIBUTE_TYPE, TreeWalk, 4)
1671     TEST_FIELD_ALIGN (GOPHER_VERONICA_ATTRIBUTE_TYPE, TreeWalk, 4)
1672     TEST_FIELD_OFFSET(GOPHER_VERONICA_ATTRIBUTE_TYPE, TreeWalk, 0)
1673 }
1674 
1675 static void test_pack_GOPHER_VERSION_ATTRIBUTE_TYPEA(void)
1676 {
1677     /* GOPHER_VERSION_ATTRIBUTE_TYPEA */
1678     TEST_TYPE_SIZE   (GOPHER_VERSION_ATTRIBUTE_TYPEA, 4)
1679     TEST_TYPE_ALIGN  (GOPHER_VERSION_ATTRIBUTE_TYPEA, 4)
1680     TEST_FIELD_SIZE  (GOPHER_VERSION_ATTRIBUTE_TYPEA, Version, 4)
1681     TEST_FIELD_ALIGN (GOPHER_VERSION_ATTRIBUTE_TYPEA, Version, 4)
1682     TEST_FIELD_OFFSET(GOPHER_VERSION_ATTRIBUTE_TYPEA, Version, 0)
1683 }
1684 
1685 static void test_pack_GOPHER_VERSION_ATTRIBUTE_TYPEW(void)
1686 {
1687     /* GOPHER_VERSION_ATTRIBUTE_TYPEW */
1688     TEST_TYPE_SIZE   (GOPHER_VERSION_ATTRIBUTE_TYPEW, 4)
1689     TEST_TYPE_ALIGN  (GOPHER_VERSION_ATTRIBUTE_TYPEW, 4)
1690     TEST_FIELD_SIZE  (GOPHER_VERSION_ATTRIBUTE_TYPEW, Version, 4)
1691     TEST_FIELD_ALIGN (GOPHER_VERSION_ATTRIBUTE_TYPEW, Version, 4)
1692     TEST_FIELD_OFFSET(GOPHER_VERSION_ATTRIBUTE_TYPEW, Version, 0)
1693 }
1694 
1695 static void test_pack_GOPHER_VIEW_ATTRIBUTE_TYPEA(void)
1696 {
1697     /* GOPHER_VIEW_ATTRIBUTE_TYPEA */
1698     TEST_TYPE_SIZE   (GOPHER_VIEW_ATTRIBUTE_TYPEA, 12)
1699     TEST_TYPE_ALIGN  (GOPHER_VIEW_ATTRIBUTE_TYPEA, 4)
1700     TEST_FIELD_SIZE  (GOPHER_VIEW_ATTRIBUTE_TYPEA, ContentType, 4)
1701     TEST_FIELD_ALIGN (GOPHER_VIEW_ATTRIBUTE_TYPEA, ContentType, 4)
1702     TEST_FIELD_OFFSET(GOPHER_VIEW_ATTRIBUTE_TYPEA, ContentType, 0)
1703     TEST_FIELD_SIZE  (GOPHER_VIEW_ATTRIBUTE_TYPEA, Language, 4)
1704     TEST_FIELD_ALIGN (GOPHER_VIEW_ATTRIBUTE_TYPEA, Language, 4)
1705     TEST_FIELD_OFFSET(GOPHER_VIEW_ATTRIBUTE_TYPEA, Language, 4)
1706     TEST_FIELD_SIZE  (GOPHER_VIEW_ATTRIBUTE_TYPEA, Size, 4)
1707     TEST_FIELD_ALIGN (GOPHER_VIEW_ATTRIBUTE_TYPEA, Size, 4)
1708     TEST_FIELD_OFFSET(GOPHER_VIEW_ATTRIBUTE_TYPEA, Size, 8)
1709 }
1710 
1711 static void test_pack_GOPHER_VIEW_ATTRIBUTE_TYPEW(void)
1712 {
1713     /* GOPHER_VIEW_ATTRIBUTE_TYPEW */
1714     TEST_TYPE_SIZE   (GOPHER_VIEW_ATTRIBUTE_TYPEW, 12)
1715     TEST_TYPE_ALIGN  (GOPHER_VIEW_ATTRIBUTE_TYPEW, 4)
1716     TEST_FIELD_SIZE  (GOPHER_VIEW_ATTRIBUTE_TYPEW, ContentType, 4)
1717     TEST_FIELD_ALIGN (GOPHER_VIEW_ATTRIBUTE_TYPEW, ContentType, 4)
1718     TEST_FIELD_OFFSET(GOPHER_VIEW_ATTRIBUTE_TYPEW, ContentType, 0)
1719     TEST_FIELD_SIZE  (GOPHER_VIEW_ATTRIBUTE_TYPEW, Language, 4)
1720     TEST_FIELD_ALIGN (GOPHER_VIEW_ATTRIBUTE_TYPEW, Language, 4)
1721     TEST_FIELD_OFFSET(GOPHER_VIEW_ATTRIBUTE_TYPEW, Language, 4)
1722     TEST_FIELD_SIZE  (GOPHER_VIEW_ATTRIBUTE_TYPEW, Size, 4)
1723     TEST_FIELD_ALIGN (GOPHER_VIEW_ATTRIBUTE_TYPEW, Size, 4)
1724     TEST_FIELD_OFFSET(GOPHER_VIEW_ATTRIBUTE_TYPEW, Size, 8)
1725 }
1726 
1727 static void test_pack_GROUPID(void)
1728 {
1729     /* GROUPID */
1730     TEST_TYPE_SIZE   (GROUPID, 8)
1731     TEST_TYPE_ALIGN  (GROUPID, 8)
1732     TEST_TYPE_SIGNED(GROUPID)
1733 }
1734 
1735 static void test_pack_HINTERNET(void)
1736 {
1737     /* HINTERNET */
1738     TEST_TYPE_SIZE   (HINTERNET, 4)
1739     TEST_TYPE_ALIGN  (HINTERNET, 4)
1740 }
1741 
1742 static void test_pack_HTTP_VERSION_INFO(void)
1743 {
1744     /* HTTP_VERSION_INFO */
1745     TEST_TYPE_SIZE   (HTTP_VERSION_INFO, 8)
1746     TEST_TYPE_ALIGN  (HTTP_VERSION_INFO, 4)
1747     TEST_FIELD_SIZE  (HTTP_VERSION_INFO, dwMajorVersion, 4)
1748     TEST_FIELD_ALIGN (HTTP_VERSION_INFO, dwMajorVersion, 4)
1749     TEST_FIELD_OFFSET(HTTP_VERSION_INFO, dwMajorVersion, 0)
1750     TEST_FIELD_SIZE  (HTTP_VERSION_INFO, dwMinorVersion, 4)
1751     TEST_FIELD_ALIGN (HTTP_VERSION_INFO, dwMinorVersion, 4)
1752     TEST_FIELD_OFFSET(HTTP_VERSION_INFO, dwMinorVersion, 4)
1753 }
1754 
1755 static void test_pack_INTERNET_ASYNC_RESULT(void)
1756 {
1757     /* INTERNET_ASYNC_RESULT */
1758     TEST_TYPE_SIZE   (INTERNET_ASYNC_RESULT, 8)
1759     TEST_TYPE_ALIGN  (INTERNET_ASYNC_RESULT, 4)
1760     TEST_FIELD_SIZE  (INTERNET_ASYNC_RESULT, dwResult, 4)
1761     TEST_FIELD_ALIGN (INTERNET_ASYNC_RESULT, dwResult, 4)
1762     TEST_FIELD_OFFSET(INTERNET_ASYNC_RESULT, dwResult, 0)
1763     TEST_FIELD_SIZE  (INTERNET_ASYNC_RESULT, dwError, 4)
1764     TEST_FIELD_ALIGN (INTERNET_ASYNC_RESULT, dwError, 4)
1765     TEST_FIELD_OFFSET(INTERNET_ASYNC_RESULT, dwError, 4)
1766 }
1767 
1768 static void test_pack_INTERNET_AUTH_NOTIFY_DATA(void)
1769 {
1770     /* INTERNET_AUTH_NOTIFY_DATA */
1771     TEST_TYPE_SIZE   (INTERNET_AUTH_NOTIFY_DATA, 16)
1772     TEST_TYPE_ALIGN  (INTERNET_AUTH_NOTIFY_DATA, 4)
1773     TEST_FIELD_SIZE  (INTERNET_AUTH_NOTIFY_DATA, cbStruct, 4)
1774     TEST_FIELD_ALIGN (INTERNET_AUTH_NOTIFY_DATA, cbStruct, 4)
1775     TEST_FIELD_OFFSET(INTERNET_AUTH_NOTIFY_DATA, cbStruct, 0)
1776     TEST_FIELD_SIZE  (INTERNET_AUTH_NOTIFY_DATA, dwOptions, 4)
1777     TEST_FIELD_ALIGN (INTERNET_AUTH_NOTIFY_DATA, dwOptions, 4)
1778     TEST_FIELD_OFFSET(INTERNET_AUTH_NOTIFY_DATA, dwOptions, 4)
1779     TEST_FIELD_SIZE  (INTERNET_AUTH_NOTIFY_DATA, pfnNotify, 4)
1780     TEST_FIELD_ALIGN (INTERNET_AUTH_NOTIFY_DATA, pfnNotify, 4)
1781     TEST_FIELD_OFFSET(INTERNET_AUTH_NOTIFY_DATA, pfnNotify, 8)
1782     TEST_FIELD_SIZE  (INTERNET_AUTH_NOTIFY_DATA, dwContext, 4)
1783     TEST_FIELD_ALIGN (INTERNET_AUTH_NOTIFY_DATA, dwContext, 4)
1784     TEST_FIELD_OFFSET(INTERNET_AUTH_NOTIFY_DATA, dwContext, 12)
1785 }
1786 
1787 static void test_pack_INTERNET_BUFFERSA(void)
1788 {
1789     /* INTERNET_BUFFERSA */
1790     TEST_TYPE_SIZE   (INTERNET_BUFFERSA, 40)
1791     TEST_TYPE_ALIGN  (INTERNET_BUFFERSA, 4)
1792     TEST_FIELD_SIZE  (INTERNET_BUFFERSA, dwStructSize, 4)
1793     TEST_FIELD_ALIGN (INTERNET_BUFFERSA, dwStructSize, 4)
1794     TEST_FIELD_OFFSET(INTERNET_BUFFERSA, dwStructSize, 0)
1795     TEST_FIELD_SIZE  (INTERNET_BUFFERSA, Next, 4)
1796     TEST_FIELD_ALIGN (INTERNET_BUFFERSA, Next, 4)
1797     TEST_FIELD_OFFSET(INTERNET_BUFFERSA, Next, 4)
1798     TEST_FIELD_SIZE  (INTERNET_BUFFERSA, lpcszHeader, 4)
1799     TEST_FIELD_ALIGN (INTERNET_BUFFERSA, lpcszHeader, 4)
1800     TEST_FIELD_OFFSET(INTERNET_BUFFERSA, lpcszHeader, 8)
1801     TEST_FIELD_SIZE  (INTERNET_BUFFERSA, dwHeadersLength, 4)
1802     TEST_FIELD_ALIGN (INTERNET_BUFFERSA, dwHeadersLength, 4)
1803     TEST_FIELD_OFFSET(INTERNET_BUFFERSA, dwHeadersLength, 12)
1804     TEST_FIELD_SIZE  (INTERNET_BUFFERSA, dwHeadersTotal, 4)
1805     TEST_FIELD_ALIGN (INTERNET_BUFFERSA, dwHeadersTotal, 4)
1806     TEST_FIELD_OFFSET(INTERNET_BUFFERSA, dwHeadersTotal, 16)
1807     TEST_FIELD_SIZE  (INTERNET_BUFFERSA, lpvBuffer, 4)
1808     TEST_FIELD_ALIGN (INTERNET_BUFFERSA, lpvBuffer, 4)
1809     TEST_FIELD_OFFSET(INTERNET_BUFFERSA, lpvBuffer, 20)
1810     TEST_FIELD_SIZE  (INTERNET_BUFFERSA, dwBufferLength, 4)
1811     TEST_FIELD_ALIGN (INTERNET_BUFFERSA, dwBufferLength, 4)
1812     TEST_FIELD_OFFSET(INTERNET_BUFFERSA, dwBufferLength, 24)
1813     TEST_FIELD_SIZE  (INTERNET_BUFFERSA, dwBufferTotal, 4)
1814     TEST_FIELD_ALIGN (INTERNET_BUFFERSA, dwBufferTotal, 4)
1815     TEST_FIELD_OFFSET(INTERNET_BUFFERSA, dwBufferTotal, 28)
1816     TEST_FIELD_SIZE  (INTERNET_BUFFERSA, dwOffsetLow, 4)
1817     TEST_FIELD_ALIGN (INTERNET_BUFFERSA, dwOffsetLow, 4)
1818     TEST_FIELD_OFFSET(INTERNET_BUFFERSA, dwOffsetLow, 32)
1819     TEST_FIELD_SIZE  (INTERNET_BUFFERSA, dwOffsetHigh, 4)
1820     TEST_FIELD_ALIGN (INTERNET_BUFFERSA, dwOffsetHigh, 4)
1821     TEST_FIELD_OFFSET(INTERNET_BUFFERSA, dwOffsetHigh, 36)
1822 }
1823 
1824 static void test_pack_INTERNET_BUFFERSW(void)
1825 {
1826     /* INTERNET_BUFFERSW */
1827     TEST_TYPE_SIZE   (INTERNET_BUFFERSW, 40)
1828     TEST_TYPE_ALIGN  (INTERNET_BUFFERSW, 4)
1829     TEST_FIELD_SIZE  (INTERNET_BUFFERSW, dwStructSize, 4)
1830     TEST_FIELD_ALIGN (INTERNET_BUFFERSW, dwStructSize, 4)
1831     TEST_FIELD_OFFSET(INTERNET_BUFFERSW, dwStructSize, 0)
1832     TEST_FIELD_SIZE  (INTERNET_BUFFERSW, Next, 4)
1833     TEST_FIELD_ALIGN (INTERNET_BUFFERSW, Next, 4)
1834     TEST_FIELD_OFFSET(INTERNET_BUFFERSW, Next, 4)
1835     TEST_FIELD_SIZE  (INTERNET_BUFFERSW, lpcszHeader, 4)
1836     TEST_FIELD_ALIGN (INTERNET_BUFFERSW, lpcszHeader, 4)
1837     TEST_FIELD_OFFSET(INTERNET_BUFFERSW, lpcszHeader, 8)
1838     TEST_FIELD_SIZE  (INTERNET_BUFFERSW, dwHeadersLength, 4)
1839     TEST_FIELD_ALIGN (INTERNET_BUFFERSW, dwHeadersLength, 4)
1840     TEST_FIELD_OFFSET(INTERNET_BUFFERSW, dwHeadersLength, 12)
1841     TEST_FIELD_SIZE  (INTERNET_BUFFERSW, dwHeadersTotal, 4)
1842     TEST_FIELD_ALIGN (INTERNET_BUFFERSW, dwHeadersTotal, 4)
1843     TEST_FIELD_OFFSET(INTERNET_BUFFERSW, dwHeadersTotal, 16)
1844     TEST_FIELD_SIZE  (INTERNET_BUFFERSW, lpvBuffer, 4)
1845     TEST_FIELD_ALIGN (INTERNET_BUFFERSW, lpvBuffer, 4)
1846     TEST_FIELD_OFFSET(INTERNET_BUFFERSW, lpvBuffer, 20)
1847     TEST_FIELD_SIZE  (INTERNET_BUFFERSW, dwBufferLength, 4)
1848     TEST_FIELD_ALIGN (INTERNET_BUFFERSW, dwBufferLength, 4)
1849     TEST_FIELD_OFFSET(INTERNET_BUFFERSW, dwBufferLength, 24)
1850     TEST_FIELD_SIZE  (INTERNET_BUFFERSW, dwBufferTotal, 4)
1851     TEST_FIELD_ALIGN (INTERNET_BUFFERSW, dwBufferTotal, 4)
1852     TEST_FIELD_OFFSET(INTERNET_BUFFERSW, dwBufferTotal, 28)
1853     TEST_FIELD_SIZE  (INTERNET_BUFFERSW, dwOffsetLow, 4)
1854     TEST_FIELD_ALIGN (INTERNET_BUFFERSW, dwOffsetLow, 4)
1855     TEST_FIELD_OFFSET(INTERNET_BUFFERSW, dwOffsetLow, 32)
1856     TEST_FIELD_SIZE  (INTERNET_BUFFERSW, dwOffsetHigh, 4)
1857     TEST_FIELD_ALIGN (INTERNET_BUFFERSW, dwOffsetHigh, 4)
1858     TEST_FIELD_OFFSET(INTERNET_BUFFERSW, dwOffsetHigh, 36)
1859 }
1860 
1861 static void test_pack_INTERNET_CACHE_ENTRY_INFOA(void)
1862 {
1863     /* INTERNET_CACHE_ENTRY_INFOA */
1864     TEST_FIELD_SIZE  (INTERNET_CACHE_ENTRY_INFOA, dwStructSize, 4)
1865     TEST_FIELD_ALIGN (INTERNET_CACHE_ENTRY_INFOA, dwStructSize, 4)
1866     TEST_FIELD_OFFSET(INTERNET_CACHE_ENTRY_INFOA, dwStructSize, 0)
1867     TEST_FIELD_SIZE  (INTERNET_CACHE_ENTRY_INFOA, lpszSourceUrlName, 4)
1868     TEST_FIELD_ALIGN (INTERNET_CACHE_ENTRY_INFOA, lpszSourceUrlName, 4)
1869     TEST_FIELD_OFFSET(INTERNET_CACHE_ENTRY_INFOA, lpszSourceUrlName, 4)
1870     TEST_FIELD_SIZE  (INTERNET_CACHE_ENTRY_INFOA, lpszLocalFileName, 4)
1871     TEST_FIELD_ALIGN (INTERNET_CACHE_ENTRY_INFOA, lpszLocalFileName, 4)
1872     TEST_FIELD_OFFSET(INTERNET_CACHE_ENTRY_INFOA, lpszLocalFileName, 8)
1873     TEST_FIELD_SIZE  (INTERNET_CACHE_ENTRY_INFOA, CacheEntryType, 4)
1874     TEST_FIELD_ALIGN (INTERNET_CACHE_ENTRY_INFOA, CacheEntryType, 4)
1875     TEST_FIELD_OFFSET(INTERNET_CACHE_ENTRY_INFOA, CacheEntryType, 12)
1876     TEST_FIELD_SIZE  (INTERNET_CACHE_ENTRY_INFOA, dwUseCount, 4)
1877     TEST_FIELD_ALIGN (INTERNET_CACHE_ENTRY_INFOA, dwUseCount, 4)
1878     TEST_FIELD_OFFSET(INTERNET_CACHE_ENTRY_INFOA, dwUseCount, 16)
1879     TEST_FIELD_SIZE  (INTERNET_CACHE_ENTRY_INFOA, dwHitRate, 4)
1880     TEST_FIELD_ALIGN (INTERNET_CACHE_ENTRY_INFOA, dwHitRate, 4)
1881     TEST_FIELD_OFFSET(INTERNET_CACHE_ENTRY_INFOA, dwHitRate, 20)
1882     TEST_FIELD_SIZE  (INTERNET_CACHE_ENTRY_INFOA, dwSizeLow, 4)
1883     TEST_FIELD_ALIGN (INTERNET_CACHE_ENTRY_INFOA, dwSizeLow, 4)
1884     TEST_FIELD_OFFSET(INTERNET_CACHE_ENTRY_INFOA, dwSizeLow, 24)
1885     TEST_FIELD_SIZE  (INTERNET_CACHE_ENTRY_INFOA, dwSizeHigh, 4)
1886     TEST_FIELD_ALIGN (INTERNET_CACHE_ENTRY_INFOA, dwSizeHigh, 4)
1887     TEST_FIELD_OFFSET(INTERNET_CACHE_ENTRY_INFOA, dwSizeHigh, 28)
1888     TEST_FIELD_SIZE  (INTERNET_CACHE_ENTRY_INFOA, LastModifiedTime, 8)
1889     TEST_FIELD_ALIGN (INTERNET_CACHE_ENTRY_INFOA, LastModifiedTime, 4)
1890     TEST_FIELD_OFFSET(INTERNET_CACHE_ENTRY_INFOA, LastModifiedTime, 32)
1891     TEST_FIELD_SIZE  (INTERNET_CACHE_ENTRY_INFOA, ExpireTime, 8)
1892     TEST_FIELD_ALIGN (INTERNET_CACHE_ENTRY_INFOA, ExpireTime, 4)
1893     TEST_FIELD_OFFSET(INTERNET_CACHE_ENTRY_INFOA, ExpireTime, 40)
1894     TEST_FIELD_SIZE  (INTERNET_CACHE_ENTRY_INFOA, LastAccessTime, 8)
1895     TEST_FIELD_ALIGN (INTERNET_CACHE_ENTRY_INFOA, LastAccessTime, 4)
1896     TEST_FIELD_OFFSET(INTERNET_CACHE_ENTRY_INFOA, LastAccessTime, 48)
1897     TEST_FIELD_SIZE  (INTERNET_CACHE_ENTRY_INFOA, LastSyncTime, 8)
1898     TEST_FIELD_ALIGN (INTERNET_CACHE_ENTRY_INFOA, LastSyncTime, 4)
1899     TEST_FIELD_OFFSET(INTERNET_CACHE_ENTRY_INFOA, LastSyncTime, 56)
1900     TEST_FIELD_SIZE  (INTERNET_CACHE_ENTRY_INFOA, lpHeaderInfo, 4)
1901     TEST_FIELD_ALIGN (INTERNET_CACHE_ENTRY_INFOA, lpHeaderInfo, 4)
1902     TEST_FIELD_OFFSET(INTERNET_CACHE_ENTRY_INFOA, lpHeaderInfo, 64)
1903     TEST_FIELD_SIZE  (INTERNET_CACHE_ENTRY_INFOA, dwHeaderInfoSize, 4)
1904     TEST_FIELD_ALIGN (INTERNET_CACHE_ENTRY_INFOA, dwHeaderInfoSize, 4)
1905     TEST_FIELD_OFFSET(INTERNET_CACHE_ENTRY_INFOA, dwHeaderInfoSize, 68)
1906     TEST_FIELD_SIZE  (INTERNET_CACHE_ENTRY_INFOA, lpszFileExtension, 4)
1907     TEST_FIELD_ALIGN (INTERNET_CACHE_ENTRY_INFOA, lpszFileExtension, 4)
1908     TEST_FIELD_OFFSET(INTERNET_CACHE_ENTRY_INFOA, lpszFileExtension, 72)
1909 }
1910 
1911 static void test_pack_INTERNET_CACHE_ENTRY_INFOW(void)
1912 {
1913     /* INTERNET_CACHE_ENTRY_INFOW */
1914     TEST_FIELD_SIZE  (INTERNET_CACHE_ENTRY_INFOW, dwStructSize, 4)
1915     TEST_FIELD_ALIGN (INTERNET_CACHE_ENTRY_INFOW, dwStructSize, 4)
1916     TEST_FIELD_OFFSET(INTERNET_CACHE_ENTRY_INFOW, dwStructSize, 0)
1917     TEST_FIELD_SIZE  (INTERNET_CACHE_ENTRY_INFOW, lpszSourceUrlName, 4)
1918     TEST_FIELD_ALIGN (INTERNET_CACHE_ENTRY_INFOW, lpszSourceUrlName, 4)
1919     TEST_FIELD_OFFSET(INTERNET_CACHE_ENTRY_INFOW, lpszSourceUrlName, 4)
1920     TEST_FIELD_SIZE  (INTERNET_CACHE_ENTRY_INFOW, lpszLocalFileName, 4)
1921     TEST_FIELD_ALIGN (INTERNET_CACHE_ENTRY_INFOW, lpszLocalFileName, 4)
1922     TEST_FIELD_OFFSET(INTERNET_CACHE_ENTRY_INFOW, lpszLocalFileName, 8)
1923     TEST_FIELD_SIZE  (INTERNET_CACHE_ENTRY_INFOW, CacheEntryType, 4)
1924     TEST_FIELD_ALIGN (INTERNET_CACHE_ENTRY_INFOW, CacheEntryType, 4)
1925     TEST_FIELD_OFFSET(INTERNET_CACHE_ENTRY_INFOW, CacheEntryType, 12)
1926     TEST_FIELD_SIZE  (INTERNET_CACHE_ENTRY_INFOW, dwUseCount, 4)
1927     TEST_FIELD_ALIGN (INTERNET_CACHE_ENTRY_INFOW, dwUseCount, 4)
1928     TEST_FIELD_OFFSET(INTERNET_CACHE_ENTRY_INFOW, dwUseCount, 16)
1929     TEST_FIELD_SIZE  (INTERNET_CACHE_ENTRY_INFOW, dwHitRate, 4)
1930     TEST_FIELD_ALIGN (INTERNET_CACHE_ENTRY_INFOW, dwHitRate, 4)
1931     TEST_FIELD_OFFSET(INTERNET_CACHE_ENTRY_INFOW, dwHitRate, 20)
1932     TEST_FIELD_SIZE  (INTERNET_CACHE_ENTRY_INFOW, dwSizeLow, 4)
1933     TEST_FIELD_ALIGN (INTERNET_CACHE_ENTRY_INFOW, dwSizeLow, 4)
1934     TEST_FIELD_OFFSET(INTERNET_CACHE_ENTRY_INFOW, dwSizeLow, 24)
1935     TEST_FIELD_SIZE  (INTERNET_CACHE_ENTRY_INFOW, dwSizeHigh, 4)
1936     TEST_FIELD_ALIGN (INTERNET_CACHE_ENTRY_INFOW, dwSizeHigh, 4)
1937     TEST_FIELD_OFFSET(INTERNET_CACHE_ENTRY_INFOW, dwSizeHigh, 28)
1938     TEST_FIELD_SIZE  (INTERNET_CACHE_ENTRY_INFOW, LastModifiedTime, 8)
1939     TEST_FIELD_ALIGN (INTERNET_CACHE_ENTRY_INFOW, LastModifiedTime, 4)
1940     TEST_FIELD_OFFSET(INTERNET_CACHE_ENTRY_INFOW, LastModifiedTime, 32)
1941     TEST_FIELD_SIZE  (INTERNET_CACHE_ENTRY_INFOW, ExpireTime, 8)
1942     TEST_FIELD_ALIGN (INTERNET_CACHE_ENTRY_INFOW, ExpireTime, 4)
1943     TEST_FIELD_OFFSET(INTERNET_CACHE_ENTRY_INFOW, ExpireTime, 40)
1944     TEST_FIELD_SIZE  (INTERNET_CACHE_ENTRY_INFOW, LastAccessTime, 8)
1945     TEST_FIELD_ALIGN (INTERNET_CACHE_ENTRY_INFOW, LastAccessTime, 4)
1946     TEST_FIELD_OFFSET(INTERNET_CACHE_ENTRY_INFOW, LastAccessTime, 48)
1947     TEST_FIELD_SIZE  (INTERNET_CACHE_ENTRY_INFOW, LastSyncTime, 8)
1948     TEST_FIELD_ALIGN (INTERNET_CACHE_ENTRY_INFOW, LastSyncTime, 4)
1949     TEST_FIELD_OFFSET(INTERNET_CACHE_ENTRY_INFOW, LastSyncTime, 56)
1950     TEST_FIELD_SIZE  (INTERNET_CACHE_ENTRY_INFOW, lpHeaderInfo, 4)
1951     TEST_FIELD_ALIGN (INTERNET_CACHE_ENTRY_INFOW, lpHeaderInfo, 4)
1952     TEST_FIELD_OFFSET(INTERNET_CACHE_ENTRY_INFOW, lpHeaderInfo, 64)
1953     TEST_FIELD_SIZE  (INTERNET_CACHE_ENTRY_INFOW, dwHeaderInfoSize, 4)
1954     TEST_FIELD_ALIGN (INTERNET_CACHE_ENTRY_INFOW, dwHeaderInfoSize, 4)
1955     TEST_FIELD_OFFSET(INTERNET_CACHE_ENTRY_INFOW, dwHeaderInfoSize, 68)
1956     TEST_FIELD_SIZE  (INTERNET_CACHE_ENTRY_INFOW, lpszFileExtension, 4)
1957     TEST_FIELD_ALIGN (INTERNET_CACHE_ENTRY_INFOW, lpszFileExtension, 4)
1958     TEST_FIELD_OFFSET(INTERNET_CACHE_ENTRY_INFOW, lpszFileExtension, 72)
1959 }
1960 
1961 static void test_pack_INTERNET_CERTIFICATE_INFOA(void)
1962 {
1963     /* INTERNET_CERTIFICATE_INFOA */
1964     TEST_TYPE_SIZE   (INTERNET_CERTIFICATE_INFOA, 40)
1965     TEST_TYPE_ALIGN  (INTERNET_CERTIFICATE_INFOA, 4)
1966     TEST_FIELD_SIZE  (INTERNET_CERTIFICATE_INFOA, ftExpiry, 8)
1967     TEST_FIELD_ALIGN (INTERNET_CERTIFICATE_INFOA, ftExpiry, 4)
1968     TEST_FIELD_OFFSET(INTERNET_CERTIFICATE_INFOA, ftExpiry, 0)
1969     TEST_FIELD_SIZE  (INTERNET_CERTIFICATE_INFOA, ftStart, 8)
1970     TEST_FIELD_ALIGN (INTERNET_CERTIFICATE_INFOA, ftStart, 4)
1971     TEST_FIELD_OFFSET(INTERNET_CERTIFICATE_INFOA, ftStart, 8)
1972     TEST_FIELD_SIZE  (INTERNET_CERTIFICATE_INFOA, lpszSubjectInfo, 4)
1973     TEST_FIELD_ALIGN (INTERNET_CERTIFICATE_INFOA, lpszSubjectInfo, 4)
1974     TEST_FIELD_OFFSET(INTERNET_CERTIFICATE_INFOA, lpszSubjectInfo, 16)
1975     TEST_FIELD_SIZE  (INTERNET_CERTIFICATE_INFOA, lpszIssuerInfo, 4)
1976     TEST_FIELD_ALIGN (INTERNET_CERTIFICATE_INFOA, lpszIssuerInfo, 4)
1977     TEST_FIELD_OFFSET(INTERNET_CERTIFICATE_INFOA, lpszIssuerInfo, 20)
1978     TEST_FIELD_SIZE  (INTERNET_CERTIFICATE_INFOA, lpszProtocolName, 4)
1979     TEST_FIELD_ALIGN (INTERNET_CERTIFICATE_INFOA, lpszProtocolName, 4)
1980     TEST_FIELD_OFFSET(INTERNET_CERTIFICATE_INFOA, lpszProtocolName, 24)
1981     TEST_FIELD_SIZE  (INTERNET_CERTIFICATE_INFOA, lpszSignatureAlgName, 4)
1982     TEST_FIELD_ALIGN (INTERNET_CERTIFICATE_INFOA, lpszSignatureAlgName, 4)
1983     TEST_FIELD_OFFSET(INTERNET_CERTIFICATE_INFOA, lpszSignatureAlgName, 28)
1984     TEST_FIELD_SIZE  (INTERNET_CERTIFICATE_INFOA, lpszEncryptionAlgName, 4)
1985     TEST_FIELD_ALIGN (INTERNET_CERTIFICATE_INFOA, lpszEncryptionAlgName, 4)
1986     TEST_FIELD_OFFSET(INTERNET_CERTIFICATE_INFOA, lpszEncryptionAlgName, 32)
1987     TEST_FIELD_SIZE  (INTERNET_CERTIFICATE_INFOA, dwKeySize, 4)
1988     TEST_FIELD_ALIGN (INTERNET_CERTIFICATE_INFOA, dwKeySize, 4)
1989     TEST_FIELD_OFFSET(INTERNET_CERTIFICATE_INFOA, dwKeySize, 36)
1990 }
1991 
1992 static void test_pack_INTERNET_CERTIFICATE_INFOW(void)
1993 {
1994     /* INTERNET_CERTIFICATE_INFOW */
1995     TEST_TYPE_SIZE   (INTERNET_CERTIFICATE_INFOW, 40)
1996     TEST_TYPE_ALIGN  (INTERNET_CERTIFICATE_INFOW, 4)
1997     TEST_FIELD_SIZE  (INTERNET_CERTIFICATE_INFOW, ftExpiry, 8)
1998     TEST_FIELD_ALIGN (INTERNET_CERTIFICATE_INFOW, ftExpiry, 4)
1999     TEST_FIELD_OFFSET(INTERNET_CERTIFICATE_INFOW, ftExpiry, 0)
2000     TEST_FIELD_SIZE  (INTERNET_CERTIFICATE_INFOW, ftStart, 8)
2001     TEST_FIELD_ALIGN (INTERNET_CERTIFICATE_INFOW, ftStart, 4)
2002     TEST_FIELD_OFFSET(INTERNET_CERTIFICATE_INFOW, ftStart, 8)
2003     TEST_FIELD_SIZE  (INTERNET_CERTIFICATE_INFOW, lpszSubjectInfo, 4)
2004     TEST_FIELD_ALIGN (INTERNET_CERTIFICATE_INFOW, lpszSubjectInfo, 4)
2005     TEST_FIELD_OFFSET(INTERNET_CERTIFICATE_INFOW, lpszSubjectInfo, 16)
2006     TEST_FIELD_SIZE  (INTERNET_CERTIFICATE_INFOW, lpszIssuerInfo, 4)
2007     TEST_FIELD_ALIGN (INTERNET_CERTIFICATE_INFOW, lpszIssuerInfo, 4)
2008     TEST_FIELD_OFFSET(INTERNET_CERTIFICATE_INFOW, lpszIssuerInfo, 20)
2009     TEST_FIELD_SIZE  (INTERNET_CERTIFICATE_INFOW, lpszProtocolName, 4)
2010     TEST_FIELD_ALIGN (INTERNET_CERTIFICATE_INFOW, lpszProtocolName, 4)
2011     TEST_FIELD_OFFSET(INTERNET_CERTIFICATE_INFOW, lpszProtocolName, 24)
2012     TEST_FIELD_SIZE  (INTERNET_CERTIFICATE_INFOW, lpszSignatureAlgName, 4)
2013     TEST_FIELD_ALIGN (INTERNET_CERTIFICATE_INFOW, lpszSignatureAlgName, 4)
2014     TEST_FIELD_OFFSET(INTERNET_CERTIFICATE_INFOW, lpszSignatureAlgName, 28)
2015     TEST_FIELD_SIZE  (INTERNET_CERTIFICATE_INFOW, lpszEncryptionAlgName, 4)
2016     TEST_FIELD_ALIGN (INTERNET_CERTIFICATE_INFOW, lpszEncryptionAlgName, 4)
2017     TEST_FIELD_OFFSET(INTERNET_CERTIFICATE_INFOW, lpszEncryptionAlgName, 32)
2018     TEST_FIELD_SIZE  (INTERNET_CERTIFICATE_INFOW, dwKeySize, 4)
2019     TEST_FIELD_ALIGN (INTERNET_CERTIFICATE_INFOW, dwKeySize, 4)
2020     TEST_FIELD_OFFSET(INTERNET_CERTIFICATE_INFOW, dwKeySize, 36)
2021 }
2022 
2023 static void test_pack_INTERNET_CONNECTED_INFO(void)
2024 {
2025     /* INTERNET_CONNECTED_INFO */
2026     TEST_TYPE_SIZE   (INTERNET_CONNECTED_INFO, 8)
2027     TEST_TYPE_ALIGN  (INTERNET_CONNECTED_INFO, 4)
2028     TEST_FIELD_SIZE  (INTERNET_CONNECTED_INFO, dwConnectedState, 4)
2029     TEST_FIELD_ALIGN (INTERNET_CONNECTED_INFO, dwConnectedState, 4)
2030     TEST_FIELD_OFFSET(INTERNET_CONNECTED_INFO, dwConnectedState, 0)
2031     TEST_FIELD_SIZE  (INTERNET_CONNECTED_INFO, dwFlags, 4)
2032     TEST_FIELD_ALIGN (INTERNET_CONNECTED_INFO, dwFlags, 4)
2033     TEST_FIELD_OFFSET(INTERNET_CONNECTED_INFO, dwFlags, 4)
2034 }
2035 
2036 static void test_pack_INTERNET_PORT(void)
2037 {
2038     /* INTERNET_PORT */
2039     TEST_TYPE_SIZE   (INTERNET_PORT, 2)
2040     TEST_TYPE_ALIGN  (INTERNET_PORT, 2)
2041     TEST_TYPE_UNSIGNED(INTERNET_PORT)
2042 }
2043 
2044 static void test_pack_INTERNET_PROXY_INFOA(void)
2045 {
2046     /* INTERNET_PROXY_INFOA */
2047     TEST_TYPE_SIZE   (INTERNET_PROXY_INFOA, 12)
2048     TEST_TYPE_ALIGN  (INTERNET_PROXY_INFOA, 4)
2049     TEST_FIELD_SIZE  (INTERNET_PROXY_INFOA, dwAccessType, 4)
2050     TEST_FIELD_ALIGN (INTERNET_PROXY_INFOA, dwAccessType, 4)
2051     TEST_FIELD_OFFSET(INTERNET_PROXY_INFOA, dwAccessType, 0)
2052     TEST_FIELD_SIZE  (INTERNET_PROXY_INFOA, lpszProxy, 4)
2053     TEST_FIELD_ALIGN (INTERNET_PROXY_INFOA, lpszProxy, 4)
2054     TEST_FIELD_OFFSET(INTERNET_PROXY_INFOA, lpszProxy, 4)
2055     TEST_FIELD_SIZE  (INTERNET_PROXY_INFOA, lpszProxyBypass, 4)
2056     TEST_FIELD_ALIGN (INTERNET_PROXY_INFOA, lpszProxyBypass, 4)
2057     TEST_FIELD_OFFSET(INTERNET_PROXY_INFOA, lpszProxyBypass, 8)
2058 }
2059 
2060 static void test_pack_INTERNET_PROXY_INFOW(void)
2061 {
2062     /* INTERNET_PROXY_INFOW */
2063     TEST_TYPE_SIZE   (INTERNET_PROXY_INFOW, 12)
2064     TEST_TYPE_ALIGN  (INTERNET_PROXY_INFOW, 4)
2065     TEST_FIELD_SIZE  (INTERNET_PROXY_INFOW, dwAccessType, 4)
2066     TEST_FIELD_ALIGN (INTERNET_PROXY_INFOW, dwAccessType, 4)
2067     TEST_FIELD_OFFSET(INTERNET_PROXY_INFOW, dwAccessType, 0)
2068     TEST_FIELD_SIZE  (INTERNET_PROXY_INFOW, lpszProxy, 4)
2069     TEST_FIELD_ALIGN (INTERNET_PROXY_INFOW, lpszProxy, 4)
2070     TEST_FIELD_OFFSET(INTERNET_PROXY_INFOW, lpszProxy, 4)
2071     TEST_FIELD_SIZE  (INTERNET_PROXY_INFOW, lpszProxyBypass, 4)
2072     TEST_FIELD_ALIGN (INTERNET_PROXY_INFOW, lpszProxyBypass, 4)
2073     TEST_FIELD_OFFSET(INTERNET_PROXY_INFOW, lpszProxyBypass, 8)
2074 }
2075 
2076 static void test_pack_INTERNET_STATUS_CALLBACK(void)
2077 {
2078     /* INTERNET_STATUS_CALLBACK */
2079     TEST_TYPE_SIZE   (INTERNET_STATUS_CALLBACK, 4)
2080     TEST_TYPE_ALIGN  (INTERNET_STATUS_CALLBACK, 4)
2081 }
2082 
2083 static void test_pack_INTERNET_VERSION_INFO(void)
2084 {
2085     /* INTERNET_VERSION_INFO */
2086     TEST_TYPE_SIZE   (INTERNET_VERSION_INFO, 8)
2087     TEST_TYPE_ALIGN  (INTERNET_VERSION_INFO, 4)
2088     TEST_FIELD_SIZE  (INTERNET_VERSION_INFO, dwMajorVersion, 4)
2089     TEST_FIELD_ALIGN (INTERNET_VERSION_INFO, dwMajorVersion, 4)
2090     TEST_FIELD_OFFSET(INTERNET_VERSION_INFO, dwMajorVersion, 0)
2091     TEST_FIELD_SIZE  (INTERNET_VERSION_INFO, dwMinorVersion, 4)
2092     TEST_FIELD_ALIGN (INTERNET_VERSION_INFO, dwMinorVersion, 4)
2093     TEST_FIELD_OFFSET(INTERNET_VERSION_INFO, dwMinorVersion, 4)
2094 }
2095 
2096 static void test_pack_LPGOPHER_ABSTRACT_ATTRIBUTE_TYPEA(void)
2097 {
2098     /* LPGOPHER_ABSTRACT_ATTRIBUTE_TYPEA */
2099     TEST_TYPE_SIZE   (LPGOPHER_ABSTRACT_ATTRIBUTE_TYPEA, 4)
2100     TEST_TYPE_ALIGN  (LPGOPHER_ABSTRACT_ATTRIBUTE_TYPEA, 4)
2101     TEST_TARGET_SIZE (LPGOPHER_ABSTRACT_ATTRIBUTE_TYPEA, 8)
2102     TEST_TARGET_ALIGN(LPGOPHER_ABSTRACT_ATTRIBUTE_TYPEA, 4)
2103 }
2104 
2105 static void test_pack_LPGOPHER_ABSTRACT_ATTRIBUTE_TYPEW(void)
2106 {
2107     /* LPGOPHER_ABSTRACT_ATTRIBUTE_TYPEW */
2108     TEST_TYPE_SIZE   (LPGOPHER_ABSTRACT_ATTRIBUTE_TYPEW, 4)
2109     TEST_TYPE_ALIGN  (LPGOPHER_ABSTRACT_ATTRIBUTE_TYPEW, 4)
2110     TEST_TARGET_SIZE (LPGOPHER_ABSTRACT_ATTRIBUTE_TYPEW, 8)
2111     TEST_TARGET_ALIGN(LPGOPHER_ABSTRACT_ATTRIBUTE_TYPEW, 4)
2112 }
2113 
2114 static void test_pack_LPGOPHER_ADMIN_ATTRIBUTE_TYPEA(void)
2115 {
2116     /* LPGOPHER_ADMIN_ATTRIBUTE_TYPEA */
2117     TEST_TYPE_SIZE   (LPGOPHER_ADMIN_ATTRIBUTE_TYPEA, 4)
2118     TEST_TYPE_ALIGN  (LPGOPHER_ADMIN_ATTRIBUTE_TYPEA, 4)
2119     TEST_TARGET_SIZE (LPGOPHER_ADMIN_ATTRIBUTE_TYPEA, 8)
2120     TEST_TARGET_ALIGN(LPGOPHER_ADMIN_ATTRIBUTE_TYPEA, 4)
2121 }
2122 
2123 static void test_pack_LPGOPHER_ADMIN_ATTRIBUTE_TYPEW(void)
2124 {
2125     /* LPGOPHER_ADMIN_ATTRIBUTE_TYPEW */
2126     TEST_TYPE_SIZE   (LPGOPHER_ADMIN_ATTRIBUTE_TYPEW, 4)
2127     TEST_TYPE_ALIGN  (LPGOPHER_ADMIN_ATTRIBUTE_TYPEW, 4)
2128     TEST_TARGET_SIZE (LPGOPHER_ADMIN_ATTRIBUTE_TYPEW, 8)
2129     TEST_TARGET_ALIGN(LPGOPHER_ADMIN_ATTRIBUTE_TYPEW, 4)
2130 }
2131 
2132 static void test_pack_LPGOPHER_ASK_ATTRIBUTE_TYPEA(void)
2133 {
2134     /* LPGOPHER_ASK_ATTRIBUTE_TYPEA */
2135     TEST_TYPE_SIZE   (LPGOPHER_ASK_ATTRIBUTE_TYPEA, 4)
2136     TEST_TYPE_ALIGN  (LPGOPHER_ASK_ATTRIBUTE_TYPEA, 4)
2137     TEST_TARGET_SIZE (LPGOPHER_ASK_ATTRIBUTE_TYPEA, 8)
2138     TEST_TARGET_ALIGN(LPGOPHER_ASK_ATTRIBUTE_TYPEA, 4)
2139 }
2140 
2141 static void test_pack_LPGOPHER_ASK_ATTRIBUTE_TYPEW(void)
2142 {
2143     /* LPGOPHER_ASK_ATTRIBUTE_TYPEW */
2144     TEST_TYPE_SIZE   (LPGOPHER_ASK_ATTRIBUTE_TYPEW, 4)
2145     TEST_TYPE_ALIGN  (LPGOPHER_ASK_ATTRIBUTE_TYPEW, 4)
2146     TEST_TARGET_SIZE (LPGOPHER_ASK_ATTRIBUTE_TYPEW, 8)
2147     TEST_TARGET_ALIGN(LPGOPHER_ASK_ATTRIBUTE_TYPEW, 4)
2148 }
2149 
2150 static void test_pack_LPGOPHER_ATTRIBUTE_TYPEA(void)
2151 {
2152     /* LPGOPHER_ATTRIBUTE_TYPEA */
2153     TEST_TYPE_SIZE   (LPGOPHER_ATTRIBUTE_TYPEA, 4)
2154     TEST_TYPE_ALIGN  (LPGOPHER_ATTRIBUTE_TYPEA, 4)
2155 }
2156 
2157 static void test_pack_LPGOPHER_ATTRIBUTE_TYPEW(void)
2158 {
2159     /* LPGOPHER_ATTRIBUTE_TYPEW */
2160     TEST_TYPE_SIZE   (LPGOPHER_ATTRIBUTE_TYPEW, 4)
2161     TEST_TYPE_ALIGN  (LPGOPHER_ATTRIBUTE_TYPEW, 4)
2162 }
2163 
2164 static void test_pack_LPGOPHER_FIND_DATAA(void)
2165 {
2166     /* LPGOPHER_FIND_DATAA */
2167     TEST_TYPE_SIZE   (LPGOPHER_FIND_DATAA, 4)
2168     TEST_TYPE_ALIGN  (LPGOPHER_FIND_DATAA, 4)
2169     TEST_TARGET_SIZE (LPGOPHER_FIND_DATAA, 808)
2170     TEST_TARGET_ALIGN(LPGOPHER_FIND_DATAA, 4)
2171 }
2172 
2173 static void test_pack_LPGOPHER_FIND_DATAW(void)
2174 {
2175     /* LPGOPHER_FIND_DATAW */
2176     TEST_TYPE_SIZE   (LPGOPHER_FIND_DATAW, 4)
2177     TEST_TYPE_ALIGN  (LPGOPHER_FIND_DATAW, 4)
2178     TEST_TARGET_SIZE (LPGOPHER_FIND_DATAW, 1588)
2179     TEST_TARGET_ALIGN(LPGOPHER_FIND_DATAW, 4)
2180 }
2181 
2182 static void test_pack_LPGOPHER_GEOGRAPHICAL_LOCATION_ATTRIBUTE_TYPE(void)
2183 {
2184     /* LPGOPHER_GEOGRAPHICAL_LOCATION_ATTRIBUTE_TYPE */
2185     TEST_TYPE_SIZE   (LPGOPHER_GEOGRAPHICAL_LOCATION_ATTRIBUTE_TYPE, 4)
2186     TEST_TYPE_ALIGN  (LPGOPHER_GEOGRAPHICAL_LOCATION_ATTRIBUTE_TYPE, 4)
2187     TEST_TARGET_SIZE (LPGOPHER_GEOGRAPHICAL_LOCATION_ATTRIBUTE_TYPE, 24)
2188     TEST_TARGET_ALIGN(LPGOPHER_GEOGRAPHICAL_LOCATION_ATTRIBUTE_TYPE, 4)
2189 }
2190 
2191 static void test_pack_LPGOPHER_LOCATION_ATTRIBUTE_TYPEA(void)
2192 {
2193     /* LPGOPHER_LOCATION_ATTRIBUTE_TYPEA */
2194     TEST_TYPE_SIZE   (LPGOPHER_LOCATION_ATTRIBUTE_TYPEA, 4)
2195     TEST_TYPE_ALIGN  (LPGOPHER_LOCATION_ATTRIBUTE_TYPEA, 4)
2196     TEST_TARGET_SIZE (LPGOPHER_LOCATION_ATTRIBUTE_TYPEA, 4)
2197     TEST_TARGET_ALIGN(LPGOPHER_LOCATION_ATTRIBUTE_TYPEA, 4)
2198 }
2199 
2200 static void test_pack_LPGOPHER_LOCATION_ATTRIBUTE_TYPEW(void)
2201 {
2202     /* LPGOPHER_LOCATION_ATTRIBUTE_TYPEW */
2203     TEST_TYPE_SIZE   (LPGOPHER_LOCATION_ATTRIBUTE_TYPEW, 4)
2204     TEST_TYPE_ALIGN  (LPGOPHER_LOCATION_ATTRIBUTE_TYPEW, 4)
2205     TEST_TARGET_SIZE (LPGOPHER_LOCATION_ATTRIBUTE_TYPEW, 4)
2206     TEST_TARGET_ALIGN(LPGOPHER_LOCATION_ATTRIBUTE_TYPEW, 4)
2207 }
2208 
2209 static void test_pack_LPGOPHER_MOD_DATE_ATTRIBUTE_TYPE(void)
2210 {
2211     /* LPGOPHER_MOD_DATE_ATTRIBUTE_TYPE */
2212     TEST_TYPE_SIZE   (LPGOPHER_MOD_DATE_ATTRIBUTE_TYPE, 4)
2213     TEST_TYPE_ALIGN  (LPGOPHER_MOD_DATE_ATTRIBUTE_TYPE, 4)
2214     TEST_TARGET_SIZE (LPGOPHER_MOD_DATE_ATTRIBUTE_TYPE, 8)
2215     TEST_TARGET_ALIGN(LPGOPHER_MOD_DATE_ATTRIBUTE_TYPE, 4)
2216 }
2217 
2218 static void test_pack_LPGOPHER_ORGANIZATION_ATTRIBUTE_TYPEA(void)
2219 {
2220     /* LPGOPHER_ORGANIZATION_ATTRIBUTE_TYPEA */
2221     TEST_TYPE_SIZE   (LPGOPHER_ORGANIZATION_ATTRIBUTE_TYPEA, 4)
2222     TEST_TYPE_ALIGN  (LPGOPHER_ORGANIZATION_ATTRIBUTE_TYPEA, 4)
2223     TEST_TARGET_SIZE (LPGOPHER_ORGANIZATION_ATTRIBUTE_TYPEA, 4)
2224     TEST_TARGET_ALIGN(LPGOPHER_ORGANIZATION_ATTRIBUTE_TYPEA, 4)
2225 }
2226 
2227 static void test_pack_LPGOPHER_ORGANIZATION_ATTRIBUTE_TYPEW(void)
2228 {
2229     /* LPGOPHER_ORGANIZATION_ATTRIBUTE_TYPEW */
2230     TEST_TYPE_SIZE   (LPGOPHER_ORGANIZATION_ATTRIBUTE_TYPEW, 4)
2231     TEST_TYPE_ALIGN  (LPGOPHER_ORGANIZATION_ATTRIBUTE_TYPEW, 4)
2232     TEST_TARGET_SIZE (LPGOPHER_ORGANIZATION_ATTRIBUTE_TYPEW, 4)
2233     TEST_TARGET_ALIGN(LPGOPHER_ORGANIZATION_ATTRIBUTE_TYPEW, 4)
2234 }
2235 
2236 static void test_pack_LPGOPHER_PROVIDER_ATTRIBUTE_TYPEA(void)
2237 {
2238     /* LPGOPHER_PROVIDER_ATTRIBUTE_TYPEA */
2239     TEST_TYPE_SIZE   (LPGOPHER_PROVIDER_ATTRIBUTE_TYPEA, 4)
2240     TEST_TYPE_ALIGN  (LPGOPHER_PROVIDER_ATTRIBUTE_TYPEA, 4)
2241     TEST_TARGET_SIZE (LPGOPHER_PROVIDER_ATTRIBUTE_TYPEA, 4)
2242     TEST_TARGET_ALIGN(LPGOPHER_PROVIDER_ATTRIBUTE_TYPEA, 4)
2243 }
2244 
2245 static void test_pack_LPGOPHER_PROVIDER_ATTRIBUTE_TYPEW(void)
2246 {
2247     /* LPGOPHER_PROVIDER_ATTRIBUTE_TYPEW */
2248     TEST_TYPE_SIZE   (LPGOPHER_PROVIDER_ATTRIBUTE_TYPEW, 4)
2249     TEST_TYPE_ALIGN  (LPGOPHER_PROVIDER_ATTRIBUTE_TYPEW, 4)
2250     TEST_TARGET_SIZE (LPGOPHER_PROVIDER_ATTRIBUTE_TYPEW, 4)
2251     TEST_TARGET_ALIGN(LPGOPHER_PROVIDER_ATTRIBUTE_TYPEW, 4)
2252 }
2253 
2254 static void test_pack_LPGOPHER_SCORE_ATTRIBUTE_TYPE(void)
2255 {
2256     /* LPGOPHER_SCORE_ATTRIBUTE_TYPE */
2257     TEST_TYPE_SIZE   (LPGOPHER_SCORE_ATTRIBUTE_TYPE, 4)
2258     TEST_TYPE_ALIGN  (LPGOPHER_SCORE_ATTRIBUTE_TYPE, 4)
2259     TEST_TARGET_SIZE (LPGOPHER_SCORE_ATTRIBUTE_TYPE, 4)
2260     TEST_TARGET_ALIGN(LPGOPHER_SCORE_ATTRIBUTE_TYPE, 4)
2261 }
2262 
2263 static void test_pack_LPGOPHER_SCORE_RANGE_ATTRIBUTE_TYPE(void)
2264 {
2265     /* LPGOPHER_SCORE_RANGE_ATTRIBUTE_TYPE */
2266     TEST_TYPE_SIZE   (LPGOPHER_SCORE_RANGE_ATTRIBUTE_TYPE, 4)
2267     TEST_TYPE_ALIGN  (LPGOPHER_SCORE_RANGE_ATTRIBUTE_TYPE, 4)
2268     TEST_TARGET_SIZE (LPGOPHER_SCORE_RANGE_ATTRIBUTE_TYPE, 8)
2269     TEST_TARGET_ALIGN(LPGOPHER_SCORE_RANGE_ATTRIBUTE_TYPE, 4)
2270 }
2271 
2272 static void test_pack_LPGOPHER_SITE_ATTRIBUTE_TYPEA(void)
2273 {
2274     /* LPGOPHER_SITE_ATTRIBUTE_TYPEA */
2275     TEST_TYPE_SIZE   (LPGOPHER_SITE_ATTRIBUTE_TYPEA, 4)
2276     TEST_TYPE_ALIGN  (LPGOPHER_SITE_ATTRIBUTE_TYPEA, 4)
2277     TEST_TARGET_SIZE (LPGOPHER_SITE_ATTRIBUTE_TYPEA, 4)
2278     TEST_TARGET_ALIGN(LPGOPHER_SITE_ATTRIBUTE_TYPEA, 4)
2279 }
2280 
2281 static void test_pack_LPGOPHER_SITE_ATTRIBUTE_TYPEW(void)
2282 {
2283     /* LPGOPHER_SITE_ATTRIBUTE_TYPEW */
2284     TEST_TYPE_SIZE   (LPGOPHER_SITE_ATTRIBUTE_TYPEW, 4)
2285     TEST_TYPE_ALIGN  (LPGOPHER_SITE_ATTRIBUTE_TYPEW, 4)
2286     TEST_TARGET_SIZE (LPGOPHER_SITE_ATTRIBUTE_TYPEW, 4)
2287     TEST_TARGET_ALIGN(LPGOPHER_SITE_ATTRIBUTE_TYPEW, 4)
2288 }
2289 
2290 static void test_pack_LPGOPHER_TIMEZONE_ATTRIBUTE_TYPE(void)
2291 {
2292     /* LPGOPHER_TIMEZONE_ATTRIBUTE_TYPE */
2293     TEST_TYPE_SIZE   (LPGOPHER_TIMEZONE_ATTRIBUTE_TYPE, 4)
2294     TEST_TYPE_ALIGN  (LPGOPHER_TIMEZONE_ATTRIBUTE_TYPE, 4)
2295     TEST_TARGET_SIZE (LPGOPHER_TIMEZONE_ATTRIBUTE_TYPE, 4)
2296     TEST_TARGET_ALIGN(LPGOPHER_TIMEZONE_ATTRIBUTE_TYPE, 4)
2297 }
2298 
2299 static void test_pack_LPGOPHER_TTL_ATTRIBUTE_TYPE(void)
2300 {
2301     /* LPGOPHER_TTL_ATTRIBUTE_TYPE */
2302     TEST_TYPE_SIZE   (LPGOPHER_TTL_ATTRIBUTE_TYPE, 4)
2303     TEST_TYPE_ALIGN  (LPGOPHER_TTL_ATTRIBUTE_TYPE, 4)
2304     TEST_TARGET_SIZE (LPGOPHER_TTL_ATTRIBUTE_TYPE, 4)
2305     TEST_TARGET_ALIGN(LPGOPHER_TTL_ATTRIBUTE_TYPE, 4)
2306 }
2307 
2308 static void test_pack_LPGOPHER_UNKNOWN_ATTRIBUTE_TYPEA(void)
2309 {
2310     /* LPGOPHER_UNKNOWN_ATTRIBUTE_TYPEA */
2311     TEST_TYPE_SIZE   (LPGOPHER_UNKNOWN_ATTRIBUTE_TYPEA, 4)
2312     TEST_TYPE_ALIGN  (LPGOPHER_UNKNOWN_ATTRIBUTE_TYPEA, 4)
2313     TEST_TARGET_SIZE (LPGOPHER_UNKNOWN_ATTRIBUTE_TYPEA, 4)
2314     TEST_TARGET_ALIGN(LPGOPHER_UNKNOWN_ATTRIBUTE_TYPEA, 4)
2315 }
2316 
2317 static void test_pack_LPGOPHER_UNKNOWN_ATTRIBUTE_TYPEW(void)
2318 {
2319     /* LPGOPHER_UNKNOWN_ATTRIBUTE_TYPEW */
2320     TEST_TYPE_SIZE   (LPGOPHER_UNKNOWN_ATTRIBUTE_TYPEW, 4)
2321     TEST_TYPE_ALIGN  (LPGOPHER_UNKNOWN_ATTRIBUTE_TYPEW, 4)
2322     TEST_TARGET_SIZE (LPGOPHER_UNKNOWN_ATTRIBUTE_TYPEW, 4)
2323     TEST_TARGET_ALIGN(LPGOPHER_UNKNOWN_ATTRIBUTE_TYPEW, 4)
2324 }
2325 
2326 static void test_pack_LPGOPHER_VERONICA_ATTRIBUTE_TYPE(void)
2327 {
2328     /* LPGOPHER_VERONICA_ATTRIBUTE_TYPE */
2329     TEST_TYPE_SIZE   (LPGOPHER_VERONICA_ATTRIBUTE_TYPE, 4)
2330     TEST_TYPE_ALIGN  (LPGOPHER_VERONICA_ATTRIBUTE_TYPE, 4)
2331     TEST_TARGET_SIZE (LPGOPHER_VERONICA_ATTRIBUTE_TYPE, 4)
2332     TEST_TARGET_ALIGN(LPGOPHER_VERONICA_ATTRIBUTE_TYPE, 4)
2333 }
2334 
2335 static void test_pack_LPGOPHER_VERSION_ATTRIBUTE_TYPEA(void)
2336 {
2337     /* LPGOPHER_VERSION_ATTRIBUTE_TYPEA */
2338     TEST_TYPE_SIZE   (LPGOPHER_VERSION_ATTRIBUTE_TYPEA, 4)
2339     TEST_TYPE_ALIGN  (LPGOPHER_VERSION_ATTRIBUTE_TYPEA, 4)
2340     TEST_TARGET_SIZE (LPGOPHER_VERSION_ATTRIBUTE_TYPEA, 4)
2341     TEST_TARGET_ALIGN(LPGOPHER_VERSION_ATTRIBUTE_TYPEA, 4)
2342 }
2343 
2344 static void test_pack_LPGOPHER_VERSION_ATTRIBUTE_TYPEW(void)
2345 {
2346     /* LPGOPHER_VERSION_ATTRIBUTE_TYPEW */
2347     TEST_TYPE_SIZE   (LPGOPHER_VERSION_ATTRIBUTE_TYPEW, 4)
2348     TEST_TYPE_ALIGN  (LPGOPHER_VERSION_ATTRIBUTE_TYPEW, 4)
2349     TEST_TARGET_SIZE (LPGOPHER_VERSION_ATTRIBUTE_TYPEW, 4)
2350     TEST_TARGET_ALIGN(LPGOPHER_VERSION_ATTRIBUTE_TYPEW, 4)
2351 }
2352 
2353 static void test_pack_LPGOPHER_VIEW_ATTRIBUTE_TYPEA(void)
2354 {
2355     /* LPGOPHER_VIEW_ATTRIBUTE_TYPEA */
2356     TEST_TYPE_SIZE   (LPGOPHER_VIEW_ATTRIBUTE_TYPEA, 4)
2357     TEST_TYPE_ALIGN  (LPGOPHER_VIEW_ATTRIBUTE_TYPEA, 4)
2358     TEST_TARGET_SIZE (LPGOPHER_VIEW_ATTRIBUTE_TYPEA, 12)
2359     TEST_TARGET_ALIGN(LPGOPHER_VIEW_ATTRIBUTE_TYPEA, 4)
2360 }
2361 
2362 static void test_pack_LPGOPHER_VIEW_ATTRIBUTE_TYPEW(void)
2363 {
2364     /* LPGOPHER_VIEW_ATTRIBUTE_TYPEW */
2365     TEST_TYPE_SIZE   (LPGOPHER_VIEW_ATTRIBUTE_TYPEW, 4)
2366     TEST_TYPE_ALIGN  (LPGOPHER_VIEW_ATTRIBUTE_TYPEW, 4)
2367     TEST_TARGET_SIZE (LPGOPHER_VIEW_ATTRIBUTE_TYPEW, 12)
2368     TEST_TARGET_ALIGN(LPGOPHER_VIEW_ATTRIBUTE_TYPEW, 4)
2369 }
2370 
2371 static void test_pack_LPHINTERNET(void)
2372 {
2373     /* LPHINTERNET */
2374     TEST_TYPE_SIZE   (LPHINTERNET, 4)
2375     TEST_TYPE_ALIGN  (LPHINTERNET, 4)
2376     TEST_TARGET_SIZE (LPHINTERNET, 4)
2377     TEST_TARGET_ALIGN(LPHINTERNET, 4)
2378 }
2379 
2380 static void test_pack_LPHTTP_VERSION_INFO(void)
2381 {
2382     /* LPHTTP_VERSION_INFO */
2383     TEST_TYPE_SIZE   (LPHTTP_VERSION_INFO, 4)
2384     TEST_TYPE_ALIGN  (LPHTTP_VERSION_INFO, 4)
2385     TEST_TARGET_SIZE (LPHTTP_VERSION_INFO, 8)
2386     TEST_TARGET_ALIGN(LPHTTP_VERSION_INFO, 4)
2387 }
2388 
2389 static void test_pack_LPINTERNET_ASYNC_RESULT(void)
2390 {
2391     /* LPINTERNET_ASYNC_RESULT */
2392     TEST_TYPE_SIZE   (LPINTERNET_ASYNC_RESULT, 4)
2393     TEST_TYPE_ALIGN  (LPINTERNET_ASYNC_RESULT, 4)
2394     TEST_TARGET_SIZE (LPINTERNET_ASYNC_RESULT, 8)
2395     TEST_TARGET_ALIGN(LPINTERNET_ASYNC_RESULT, 4)
2396 }
2397 
2398 static void test_pack_LPINTERNET_BUFFERSA(void)
2399 {
2400     /* LPINTERNET_BUFFERSA */
2401     TEST_TYPE_SIZE   (LPINTERNET_BUFFERSA, 4)
2402     TEST_TYPE_ALIGN  (LPINTERNET_BUFFERSA, 4)
2403     TEST_TARGET_SIZE (LPINTERNET_BUFFERSA, 40)
2404     TEST_TARGET_ALIGN(LPINTERNET_BUFFERSA, 4)
2405 }
2406 
2407 static void test_pack_LPINTERNET_BUFFERSW(void)
2408 {
2409     /* LPINTERNET_BUFFERSW */
2410     TEST_TYPE_SIZE   (LPINTERNET_BUFFERSW, 4)
2411     TEST_TYPE_ALIGN  (LPINTERNET_BUFFERSW, 4)
2412     TEST_TARGET_SIZE (LPINTERNET_BUFFERSW, 40)
2413     TEST_TARGET_ALIGN(LPINTERNET_BUFFERSW, 4)
2414 }
2415 
2416 static void test_pack_LPINTERNET_CACHE_ENTRY_INFOA(void)
2417 {
2418     /* LPINTERNET_CACHE_ENTRY_INFOA */
2419     TEST_TYPE_SIZE   (LPINTERNET_CACHE_ENTRY_INFOA, 4)
2420     TEST_TYPE_ALIGN  (LPINTERNET_CACHE_ENTRY_INFOA, 4)
2421 }
2422 
2423 static void test_pack_LPINTERNET_CACHE_ENTRY_INFOW(void)
2424 {
2425     /* LPINTERNET_CACHE_ENTRY_INFOW */
2426     TEST_TYPE_SIZE   (LPINTERNET_CACHE_ENTRY_INFOW, 4)
2427     TEST_TYPE_ALIGN  (LPINTERNET_CACHE_ENTRY_INFOW, 4)
2428 }
2429 
2430 static void test_pack_LPINTERNET_CERTIFICATE_INFOA(void)
2431 {
2432     /* LPINTERNET_CERTIFICATE_INFOA */
2433     TEST_TYPE_SIZE   (LPINTERNET_CERTIFICATE_INFOA, 4)
2434     TEST_TYPE_ALIGN  (LPINTERNET_CERTIFICATE_INFOA, 4)
2435     TEST_TARGET_SIZE (LPINTERNET_CERTIFICATE_INFOA, 40)
2436     TEST_TARGET_ALIGN(LPINTERNET_CERTIFICATE_INFOA, 4)
2437 }
2438 
2439 static void test_pack_LPINTERNET_CERTIFICATE_INFOW(void)
2440 {
2441     /* LPINTERNET_CERTIFICATE_INFOW */
2442     TEST_TYPE_SIZE   (LPINTERNET_CERTIFICATE_INFOW, 4)
2443     TEST_TYPE_ALIGN  (LPINTERNET_CERTIFICATE_INFOW, 4)
2444     TEST_TARGET_SIZE (LPINTERNET_CERTIFICATE_INFOW, 40)
2445     TEST_TARGET_ALIGN(LPINTERNET_CERTIFICATE_INFOW, 4)
2446 }
2447 
2448 static void test_pack_LPINTERNET_CONNECTED_INFO(void)
2449 {
2450     /* LPINTERNET_CONNECTED_INFO */
2451     TEST_TYPE_SIZE   (LPINTERNET_CONNECTED_INFO, 4)
2452     TEST_TYPE_ALIGN  (LPINTERNET_CONNECTED_INFO, 4)
2453     TEST_TARGET_SIZE (LPINTERNET_CONNECTED_INFO, 8)
2454     TEST_TARGET_ALIGN(LPINTERNET_CONNECTED_INFO, 4)
2455 }
2456 
2457 static void test_pack_LPINTERNET_PORT(void)
2458 {
2459     /* LPINTERNET_PORT */
2460     TEST_TYPE_SIZE   (LPINTERNET_PORT, 4)
2461     TEST_TYPE_ALIGN  (LPINTERNET_PORT, 4)
2462     TEST_TARGET_SIZE (LPINTERNET_PORT, 2)
2463     TEST_TARGET_ALIGN(LPINTERNET_PORT, 2)
2464 }
2465 
2466 static void test_pack_LPINTERNET_PROXY_INFOA(void)
2467 {
2468     /* LPINTERNET_PROXY_INFOA */
2469     TEST_TYPE_SIZE   (LPINTERNET_PROXY_INFOA, 4)
2470     TEST_TYPE_ALIGN  (LPINTERNET_PROXY_INFOA, 4)
2471     TEST_TARGET_SIZE (LPINTERNET_PROXY_INFOA, 12)
2472     TEST_TARGET_ALIGN(LPINTERNET_PROXY_INFOA, 4)
2473 }
2474 
2475 static void test_pack_LPINTERNET_PROXY_INFOW(void)
2476 {
2477     /* LPINTERNET_PROXY_INFOW */
2478     TEST_TYPE_SIZE   (LPINTERNET_PROXY_INFOW, 4)
2479     TEST_TYPE_ALIGN  (LPINTERNET_PROXY_INFOW, 4)
2480     TEST_TARGET_SIZE (LPINTERNET_PROXY_INFOW, 12)
2481     TEST_TARGET_ALIGN(LPINTERNET_PROXY_INFOW, 4)
2482 }
2483 
2484 static void test_pack_LPINTERNET_STATUS_CALLBACK(void)
2485 {
2486     /* LPINTERNET_STATUS_CALLBACK */
2487     TEST_TYPE_SIZE   (LPINTERNET_STATUS_CALLBACK, 4)
2488     TEST_TYPE_ALIGN  (LPINTERNET_STATUS_CALLBACK, 4)
2489     TEST_TARGET_SIZE (LPINTERNET_STATUS_CALLBACK, 4)
2490     TEST_TARGET_ALIGN(LPINTERNET_STATUS_CALLBACK, 4)
2491 }
2492 
2493 static void test_pack_LPINTERNET_VERSION_INFO(void)
2494 {
2495     /* LPINTERNET_VERSION_INFO */
2496     TEST_TYPE_SIZE   (LPINTERNET_VERSION_INFO, 4)
2497     TEST_TYPE_ALIGN  (LPINTERNET_VERSION_INFO, 4)
2498     TEST_TARGET_SIZE (LPINTERNET_VERSION_INFO, 8)
2499     TEST_TARGET_ALIGN(LPINTERNET_VERSION_INFO, 4)
2500 }
2501 
2502 static void test_pack_LPURL_COMPONENTSA(void)
2503 {
2504     /* LPURL_COMPONENTSA */
2505     TEST_TYPE_SIZE   (LPURL_COMPONENTSA, 4)
2506     TEST_TYPE_ALIGN  (LPURL_COMPONENTSA, 4)
2507 }
2508 
2509 static void test_pack_LPURL_COMPONENTSW(void)
2510 {
2511     /* LPURL_COMPONENTSW */
2512     TEST_TYPE_SIZE   (LPURL_COMPONENTSW, 4)
2513     TEST_TYPE_ALIGN  (LPURL_COMPONENTSW, 4)
2514 }
2515 
2516 static void test_pack_PFN_AUTH_NOTIFY(void)
2517 {
2518     /* PFN_AUTH_NOTIFY */
2519     TEST_TYPE_SIZE   (PFN_AUTH_NOTIFY, 4)
2520     TEST_TYPE_ALIGN  (PFN_AUTH_NOTIFY, 4)
2521 }
2522 
2523 static void test_pack_PFN_DIAL_HANDLER(void)
2524 {
2525     /* PFN_DIAL_HANDLER */
2526     TEST_TYPE_SIZE   (PFN_DIAL_HANDLER, 4)
2527     TEST_TYPE_ALIGN  (PFN_DIAL_HANDLER, 4)
2528 }
2529 
2530 static void test_pack_URL_COMPONENTSA(void)
2531 {
2532     /* URL_COMPONENTSA */
2533     TEST_FIELD_SIZE  (URL_COMPONENTSA, dwStructSize, 4)
2534     TEST_FIELD_ALIGN (URL_COMPONENTSA, dwStructSize, 4)
2535     TEST_FIELD_OFFSET(URL_COMPONENTSA, dwStructSize, 0)
2536     TEST_FIELD_SIZE  (URL_COMPONENTSA, lpszScheme, 4)
2537     TEST_FIELD_ALIGN (URL_COMPONENTSA, lpszScheme, 4)
2538     TEST_FIELD_OFFSET(URL_COMPONENTSA, lpszScheme, 4)
2539     TEST_FIELD_SIZE  (URL_COMPONENTSA, dwSchemeLength, 4)
2540     TEST_FIELD_ALIGN (URL_COMPONENTSA, dwSchemeLength, 4)
2541     TEST_FIELD_OFFSET(URL_COMPONENTSA, dwSchemeLength, 8)
2542 }
2543 
2544 static void test_pack_URL_COMPONENTSW(void)
2545 {
2546     /* URL_COMPONENTSW */
2547     TEST_FIELD_SIZE  (URL_COMPONENTSW, dwStructSize, 4)
2548     TEST_FIELD_ALIGN (URL_COMPONENTSW, dwStructSize, 4)
2549     TEST_FIELD_OFFSET(URL_COMPONENTSW, dwStructSize, 0)
2550     TEST_FIELD_SIZE  (URL_COMPONENTSW, lpszScheme, 4)
2551     TEST_FIELD_ALIGN (URL_COMPONENTSW, lpszScheme, 4)
2552     TEST_FIELD_OFFSET(URL_COMPONENTSW, lpszScheme, 4)
2553     TEST_FIELD_SIZE  (URL_COMPONENTSW, dwSchemeLength, 4)
2554     TEST_FIELD_ALIGN (URL_COMPONENTSW, dwSchemeLength, 4)
2555     TEST_FIELD_OFFSET(URL_COMPONENTSW, dwSchemeLength, 8)
2556 }
2557 
2558 #endif /* _WIN64 */
2559 
2560 static void test_pack(void)
2561 {
2562     test_pack_GOPHER_ABSTRACT_ATTRIBUTE_TYPEA();
2563     test_pack_GOPHER_ABSTRACT_ATTRIBUTE_TYPEW();
2564     test_pack_GOPHER_ADMIN_ATTRIBUTE_TYPEA();
2565     test_pack_GOPHER_ADMIN_ATTRIBUTE_TYPEW();
2566     test_pack_GOPHER_ASK_ATTRIBUTE_TYPEA();
2567     test_pack_GOPHER_ASK_ATTRIBUTE_TYPEW();
2568     test_pack_GOPHER_ATTRIBUTE_ENUMERATORA();
2569     test_pack_GOPHER_ATTRIBUTE_ENUMERATORW();
2570     test_pack_GOPHER_ATTRIBUTE_TYPEA();
2571     test_pack_GOPHER_ATTRIBUTE_TYPEW();
2572     test_pack_GOPHER_FIND_DATAA();
2573     test_pack_GOPHER_FIND_DATAW();
2574     test_pack_GOPHER_GEOGRAPHICAL_LOCATION_ATTRIBUTE_TYPE();
2575     test_pack_GOPHER_LOCATION_ATTRIBUTE_TYPEA();
2576     test_pack_GOPHER_LOCATION_ATTRIBUTE_TYPEW();
2577     test_pack_GOPHER_MOD_DATE_ATTRIBUTE_TYPE();
2578     test_pack_GOPHER_ORGANIZATION_ATTRIBUTE_TYPEA();
2579     test_pack_GOPHER_ORGANIZATION_ATTRIBUTE_TYPEW();
2580     test_pack_GOPHER_PROVIDER_ATTRIBUTE_TYPEA();
2581     test_pack_GOPHER_PROVIDER_ATTRIBUTE_TYPEW();
2582     test_pack_GOPHER_SCORE_ATTRIBUTE_TYPE();
2583     test_pack_GOPHER_SCORE_RANGE_ATTRIBUTE_TYPE();
2584     test_pack_GOPHER_SITE_ATTRIBUTE_TYPEA();
2585     test_pack_GOPHER_SITE_ATTRIBUTE_TYPEW();
2586     test_pack_GOPHER_TIMEZONE_ATTRIBUTE_TYPE();
2587     test_pack_GOPHER_TTL_ATTRIBUTE_TYPE();
2588     test_pack_GOPHER_UNKNOWN_ATTRIBUTE_TYPEA();
2589     test_pack_GOPHER_UNKNOWN_ATTRIBUTE_TYPEW();
2590     test_pack_GOPHER_VERONICA_ATTRIBUTE_TYPE();
2591     test_pack_GOPHER_VERSION_ATTRIBUTE_TYPEA();
2592     test_pack_GOPHER_VERSION_ATTRIBUTE_TYPEW();
2593     test_pack_GOPHER_VIEW_ATTRIBUTE_TYPEA();
2594     test_pack_GOPHER_VIEW_ATTRIBUTE_TYPEW();
2595     test_pack_GROUPID();
2596     test_pack_HINTERNET();
2597     test_pack_HTTP_VERSION_INFO();
2598     test_pack_INTERNET_ASYNC_RESULT();
2599     test_pack_INTERNET_AUTH_NOTIFY_DATA();
2600     test_pack_INTERNET_BUFFERSA();
2601     test_pack_INTERNET_BUFFERSW();
2602     test_pack_INTERNET_CACHE_ENTRY_INFOA();
2603     test_pack_INTERNET_CACHE_ENTRY_INFOW();
2604     test_pack_INTERNET_CERTIFICATE_INFOA();
2605     test_pack_INTERNET_CERTIFICATE_INFOW();
2606     test_pack_INTERNET_CONNECTED_INFO();
2607     test_pack_INTERNET_PORT();
2608     test_pack_INTERNET_PROXY_INFOA();
2609     test_pack_INTERNET_PROXY_INFOW();
2610     test_pack_INTERNET_STATUS_CALLBACK();
2611     test_pack_INTERNET_VERSION_INFO();
2612     test_pack_LPGOPHER_ABSTRACT_ATTRIBUTE_TYPEA();
2613     test_pack_LPGOPHER_ABSTRACT_ATTRIBUTE_TYPEW();
2614     test_pack_LPGOPHER_ADMIN_ATTRIBUTE_TYPEA();
2615     test_pack_LPGOPHER_ADMIN_ATTRIBUTE_TYPEW();
2616     test_pack_LPGOPHER_ASK_ATTRIBUTE_TYPEA();
2617     test_pack_LPGOPHER_ASK_ATTRIBUTE_TYPEW();
2618     test_pack_LPGOPHER_ATTRIBUTE_TYPEA();
2619     test_pack_LPGOPHER_ATTRIBUTE_TYPEW();
2620     test_pack_LPGOPHER_FIND_DATAA();
2621     test_pack_LPGOPHER_FIND_DATAW();
2622     test_pack_LPGOPHER_GEOGRAPHICAL_LOCATION_ATTRIBUTE_TYPE();
2623     test_pack_LPGOPHER_LOCATION_ATTRIBUTE_TYPEA();
2624     test_pack_LPGOPHER_LOCATION_ATTRIBUTE_TYPEW();
2625     test_pack_LPGOPHER_MOD_DATE_ATTRIBUTE_TYPE();
2626     test_pack_LPGOPHER_ORGANIZATION_ATTRIBUTE_TYPEA();
2627     test_pack_LPGOPHER_ORGANIZATION_ATTRIBUTE_TYPEW();
2628     test_pack_LPGOPHER_PROVIDER_ATTRIBUTE_TYPEA();
2629     test_pack_LPGOPHER_PROVIDER_ATTRIBUTE_TYPEW();
2630     test_pack_LPGOPHER_SCORE_ATTRIBUTE_TYPE();
2631     test_pack_LPGOPHER_SCORE_RANGE_ATTRIBUTE_TYPE();
2632     test_pack_LPGOPHER_SITE_ATTRIBUTE_TYPEA();
2633     test_pack_LPGOPHER_SITE_ATTRIBUTE_TYPEW();
2634     test_pack_LPGOPHER_TIMEZONE_ATTRIBUTE_TYPE();
2635     test_pack_LPGOPHER_TTL_ATTRIBUTE_TYPE();
2636     test_pack_LPGOPHER_UNKNOWN_ATTRIBUTE_TYPEA();
2637     test_pack_LPGOPHER_UNKNOWN_ATTRIBUTE_TYPEW();
2638     test_pack_LPGOPHER_VERONICA_ATTRIBUTE_TYPE();
2639     test_pack_LPGOPHER_VERSION_ATTRIBUTE_TYPEA();
2640     test_pack_LPGOPHER_VERSION_ATTRIBUTE_TYPEW();
2641     test_pack_LPGOPHER_VIEW_ATTRIBUTE_TYPEA();
2642     test_pack_LPGOPHER_VIEW_ATTRIBUTE_TYPEW();
2643     test_pack_LPHINTERNET();
2644     test_pack_LPHTTP_VERSION_INFO();
2645     test_pack_LPINTERNET_ASYNC_RESULT();
2646     test_pack_LPINTERNET_BUFFERSA();
2647     test_pack_LPINTERNET_BUFFERSW();
2648     test_pack_LPINTERNET_CACHE_ENTRY_INFOA();
2649     test_pack_LPINTERNET_CACHE_ENTRY_INFOW();
2650     test_pack_LPINTERNET_CERTIFICATE_INFOA();
2651     test_pack_LPINTERNET_CERTIFICATE_INFOW();
2652     test_pack_LPINTERNET_CONNECTED_INFO();
2653     test_pack_LPINTERNET_PORT();
2654     test_pack_LPINTERNET_PROXY_INFOA();
2655     test_pack_LPINTERNET_PROXY_INFOW();
2656     test_pack_LPINTERNET_STATUS_CALLBACK();
2657     test_pack_LPINTERNET_VERSION_INFO();
2658     test_pack_LPURL_COMPONENTSA();
2659     test_pack_LPURL_COMPONENTSW();
2660     test_pack_PFN_AUTH_NOTIFY();
2661     test_pack_PFN_DIAL_HANDLER();
2662     test_pack_URL_COMPONENTSA();
2663     test_pack_URL_COMPONENTSW();
2664 }
2665 
2666 START_TEST(generated)
2667 {
2668     test_pack();
2669 }
2670