1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
|
/***************************************************************************/
/* Copyright (c) 2024 Microsoft Corporation */
/* Copyright (c) 2026 Eclipse ThreadX contributors */
/* */
/* This program and the accompanying materials are made available under */
/* the terms of the MIT License which is available at */
/* https://opensource.org/licenses/MIT. */
/* */
/* SPDX-License-Identifier: MIT */
/***************************************************************************/
#include "nx_api.h"
#ifdef __PRODUCT_NETXDUO__
#include "netx_mdns_test.h"
/* Frame (88 bytes) */
static const unsigned char pkt1[88] = {
0x01, 0x00, 0x5e, 0x00, 0x00, 0xfb, 0x18, 0x03, /* ..^..... */
0x73, 0x29, 0x5f, 0x66, 0x08, 0x00, 0x45, 0x00, /* s)_f..E. */
0x00, 0x4a, 0x58, 0x5c, 0x00, 0x00, 0xff, 0x11, /* .JX\.... */
0xc1, 0x3e, 0xc0, 0xa8, 0x00, 0x64, 0xe0, 0x00, /* .>...d.. */
0x00, 0xfb, 0x14, 0xe9, 0x14, 0xe9, 0x00, 0x36, /* .......6 */
0xa2, 0x4f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, /* .O...... */
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x09, 0x5f, /* ......._ */
0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x73, /* services */
0x07, 0x5f, 0x64, 0x6e, 0x73, 0x2d, 0x73, 0x64, /* ._dns-sd */
0x04, 0x5f, 0x75, 0x64, 0x70, 0x05, 0x6c, 0x6f, /* ._udp.lo */
0x63, 0x61, 0x6c, 0x00, 0x00, 0x0c, 0x00, 0x01 /* cal..... */
};
/* Frame (88 bytes) */
static const unsigned char pkt2[88] = {
0x01, 0x00, 0x5e, 0x00, 0x00, 0xfb, 0xec, 0x17, /* ..^..... */
0x2f, 0xbd, 0xa4, 0xb1, 0x08, 0x00, 0x45, 0x00, /* /.....E. */
0x00, 0x4a, 0x02, 0xe1, 0x00, 0x00, 0xff, 0x11, /* .J...... */
0xcd, 0xc4, 0x0a, 0x00, 0x00, 0x02, 0xe0, 0x00, /* ........ */
0x00, 0xfb, 0x14, 0xe9, 0x14, 0xe9, 0x00, 0x36, /* .......6 */
0xb4, 0x99, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, /* ........ */
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x09, 0x5f, /* ......._ */
0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x73, /* services */
0x07, 0x5f, 0x64, 0x6e, 0x73, 0x2d, 0x73, 0x64, /* ._dns-sd */
0x04, 0x5f, 0x75, 0x64, 0x70, 0x05, 0x6c, 0x6f, /* ._udp.lo */
0x63, 0x61, 0x6c, 0x00, 0x00, 0x0c, 0x00, 0x01 /* cal..... */
};
/* Frame (106 bytes) */
static const unsigned char pkt3[106] = {
0x01, 0x00, 0x5e, 0x00, 0x00, 0xfb, 0x18, 0x03, /* ..^..... */
0x73, 0x33, 0xc1, 0xbd, 0x08, 0x00, 0x45, 0x00, /* s3....E. */
0x00, 0x5c, 0x1e, 0xf3, 0x00, 0x00, 0xff, 0x11, /* .\...... */
0xfa, 0x92, 0xc0, 0xa8, 0x00, 0x67, 0xe0, 0x00, /* .....g.. */
0x00, 0xfb, 0x14, 0xe9, 0x14, 0xe9, 0x00, 0x48, /* .......H */
0x0a, 0xee, 0x00, 0x00, 0x84, 0x00, 0x00, 0x00, /* ........ */
0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x09, 0x5f, /* ......._ */
0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x73, /* services */
0x07, 0x5f, 0x64, 0x6e, 0x73, 0x2d, 0x73, 0x64, /* ._dns-sd */
0x04, 0x5f, 0x75, 0x64, 0x70, 0x05, 0x6c, 0x6f, /* ._udp.lo */
0x63, 0x61, 0x6c, 0x00, 0x00, 0x0c, 0x00, 0x01, /* cal..... */
0x00, 0x00, 0x11, 0x94, 0x00, 0x0c, 0x04, 0x5f, /* ......._ */
0x73, 0x6d, 0x62, 0x04, 0x5f, 0x74, 0x63, 0x70, /* smb._tcp */
0xc0, 0x23 /* .# */
};
/* Frame (114 bytes) */
static const unsigned char pkt4[114] = {
0x01, 0x00, 0x5e, 0x00, 0x00, 0xfb, 0xe8, 0x39, /* ..^....9 */
0x35, 0x44, 0xfe, 0xd4, 0x08, 0x00, 0x45, 0x00, /* 5D....E. */
0x00, 0x64, 0x00, 0x00, 0x40, 0x00, 0xff, 0x11, /* .d..@... */
0xd9, 0xe2, 0xc0, 0xa8, 0x00, 0x02, 0xe0, 0x00, /* ........ */
0x00, 0xfb, 0x14, 0xe9, 0x14, 0xe9, 0x00, 0x50, /* .......P */
0x42, 0x75, 0x00, 0x00, 0x84, 0x00, 0x00, 0x00, /* Bu...... */
0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x09, 0x5f, /* ......._ */
0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x73, /* services */
0x07, 0x5f, 0x64, 0x6e, 0x73, 0x2d, 0x73, 0x64, /* ._dns-sd */
0x04, 0x5f, 0x75, 0x64, 0x70, 0x05, 0x6c, 0x6f, /* ._udp.lo */
0x63, 0x61, 0x6c, 0x00, 0x00, 0x0c, 0x00, 0x01, /* cal..... */
0x00, 0x00, 0x11, 0x94, 0x00, 0x14, 0x0c, 0x5f, /* ......._ */
0x77, 0x6f, 0x72, 0x6b, 0x73, 0x74, 0x61, 0x74, /* workstat */
0x69, 0x6f, 0x6e, 0x04, 0x5f, 0x74, 0x63, 0x70, /* ion._tcp */
0xc0, 0x23 /* .# */
};
/* Frame (160 bytes) */
static const unsigned char pkt5[160] = {
0x01, 0x00, 0x5e, 0x00, 0x00, 0xfb, 0x00, 0x1e, /* ..^..... */
0x8f, 0xb1, 0x7a, 0xd4, 0x08, 0x00, 0x45, 0x00, /* ..z...E. */
0x00, 0x92, 0x17, 0x39, 0x00, 0x00, 0xff, 0x11, /* ...9.... */
0x02, 0x7a, 0xc0, 0xa8, 0x00, 0x04, 0xe0, 0x00, /* .z...... */
0x00, 0xfb, 0x14, 0xe9, 0x14, 0xe9, 0x00, 0x7e, /* .......~ */
0xbc, 0x15, 0x00, 0x00, 0x84, 0x00, 0x00, 0x00, /* ........ */
0x00, 0x03, 0x00, 0x00, 0x00, 0x00, 0x09, 0x5f, /* ......._ */
0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x73, /* services */
0x07, 0x5f, 0x64, 0x6e, 0x73, 0x2d, 0x73, 0x64, /* ._dns-sd */
0x04, 0x5f, 0x75, 0x64, 0x70, 0x05, 0x6c, 0x6f, /* ._udp.lo */
0x63, 0x61, 0x6c, 0x00, 0x00, 0x0c, 0x00, 0x01, /* cal..... */
0x00, 0x00, 0x11, 0x94, 0x00, 0x17, 0x0f, 0x5f, /* ......._ */
0x70, 0x64, 0x6c, 0x2d, 0x64, 0x61, 0x74, 0x61, /* pdl-data */
0x73, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x04, 0x5f, /* stream._ */
0x74, 0x63, 0x70, 0xc0, 0x23, 0xc0, 0x0c, 0x00, /* tcp.#... */
0x0c, 0x00, 0x01, 0x00, 0x00, 0x11, 0x94, 0x00, /* ........ */
0x0b, 0x08, 0x5f, 0x70, 0x72, 0x69, 0x6e, 0x74, /* .._print */
0x65, 0x72, 0xc0, 0x44, 0xc0, 0x0c, 0x00, 0x0c, /* er.D.... */
0x00, 0x01, 0x00, 0x00, 0x11, 0x94, 0x00, 0x08, /* ........ */
0x05, 0x5f, 0x68, 0x74, 0x74, 0x70, 0xc0, 0x44 /* ._http.D */
};
/* Frame (219 bytes) */
static const unsigned char pkt6[219] = {
0x01, 0x00, 0x5e, 0x00, 0x00, 0xfb, 0x00, 0x0c, /* ..^..... */
0x29, 0x01, 0xd4, 0x8d, 0x08, 0x00, 0x45, 0x00, /* ).....E. */
0x00, 0xcd, 0x00, 0x00, 0x40, 0x00, 0xff, 0x11, /* ....@... */
0x90, 0x23, 0x0a, 0x00, 0x00, 0x01, 0xe0, 0x00, /* .#...... */
0x00, 0xfb, 0x14, 0xe9, 0x14, 0xe9, 0x00, 0xb9, /* ........ */
0x69, 0x6d, 0x00, 0x00, 0x84, 0x00, 0x00, 0x00, /* im...... */
0x00, 0x06, 0x00, 0x00, 0x00, 0x00, 0x09, 0x5f, /* ......._ */
0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x73, /* services */
0x07, 0x5f, 0x64, 0x6e, 0x73, 0x2d, 0x73, 0x64, /* ._dns-sd */
0x04, 0x5f, 0x75, 0x64, 0x70, 0x05, 0x6c, 0x6f, /* ._udp.lo */
0x63, 0x61, 0x6c, 0x00, 0x00, 0x0c, 0x00, 0x01, /* cal..... */
0x00, 0x00, 0x11, 0x94, 0x00, 0x14, 0x0c, 0x5f, /* ......._ */
0x77, 0x6f, 0x72, 0x6b, 0x73, 0x74, 0x61, 0x74, /* workstat */
0x69, 0x6f, 0x6e, 0x04, 0x5f, 0x74, 0x63, 0x70, /* ion._tcp */
0xc0, 0x23, 0xc0, 0x0c, 0x00, 0x0c, 0x00, 0x01, /* .#...... */
0x00, 0x00, 0x11, 0x94, 0x00, 0x09, 0x06, 0x5f, /* ......._ */
0x74, 0x65, 0x73, 0x74, 0x65, 0xc0, 0x41, 0xc0, /* teste.A. */
0x0c, 0x00, 0x0c, 0x00, 0x01, 0x00, 0x00, 0x11, /* ........ */
0x94, 0x00, 0x09, 0x06, 0x5f, 0x74, 0x65, 0x73, /* ...._tes */
0x74, 0x64, 0xc0, 0x41, 0xc0, 0x0c, 0x00, 0x0c, /* td.A.... */
0x00, 0x01, 0x00, 0x00, 0x11, 0x94, 0x00, 0x09, /* ........ */
0x06, 0x5f, 0x74, 0x65, 0x73, 0x74, 0x63, 0xc0, /* ._testc. */
0x41, 0xc0, 0x0c, 0x00, 0x0c, 0x00, 0x01, 0x00, /* A....... */
0x00, 0x11, 0x94, 0x00, 0x09, 0x06, 0x5f, 0x74, /* ......_t */
0x65, 0x73, 0x74, 0x62, 0xc0, 0x41, 0xc0, 0x0c, /* estb.A.. */
0x00, 0x0c, 0x00, 0x01, 0x00, 0x00, 0x11, 0x94, /* ........ */
0x00, 0x09, 0x06, 0x5f, 0x74, 0x65, 0x73, 0x74, /* ..._test */
0x61, 0xc0, 0x41 /* a.A */
};
/* Frame (212 bytes) */
static const unsigned char pkt7[212] = {
0x01, 0x00, 0x5e, 0x00, 0x00, 0xfb, 0x18, 0x03, /* ..^..... */
0x73, 0x29, 0x5f, 0x66, 0x08, 0x00, 0x45, 0x00, /* s)_f..E. */
0x00, 0xc6, 0x58, 0x8e, 0x00, 0x00, 0xff, 0x11, /* ..X..... */
0xc0, 0x90, 0xc0, 0xa8, 0x00, 0x64, 0xe0, 0x00, /* .....d.. */
0x00, 0xfb, 0x14, 0xe9, 0x14, 0xe9, 0x00, 0xb2, /* ........ */
0xa2, 0xcb, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, /* ........ */
0x00, 0x05, 0x00, 0x00, 0x00, 0x00, 0x09, 0x5f, /* ......._ */
0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x73, /* services */
0x07, 0x5f, 0x64, 0x6e, 0x73, 0x2d, 0x73, 0x64, /* ._dns-sd */
0x04, 0x5f, 0x75, 0x64, 0x70, 0x05, 0x6c, 0x6f, /* ._udp.lo */
0x63, 0x61, 0x6c, 0x00, 0x00, 0x0c, 0x00, 0x01, /* cal..... */
0xc0, 0x0c, 0x00, 0x0c, 0x00, 0x01, 0x00, 0x00, /* ........ */
0x11, 0x93, 0x00, 0x0c, 0x04, 0x5f, 0x73, 0x6d, /* ....._sm */
0x62, 0x04, 0x5f, 0x74, 0x63, 0x70, 0xc0, 0x23, /* b._tcp.# */
0xc0, 0x0c, 0x00, 0x0c, 0x00, 0x01, 0x00, 0x00, /* ........ */
0x11, 0x94, 0x00, 0x0f, 0x0c, 0x5f, 0x77, 0x6f, /* ....._wo */
0x72, 0x6b, 0x73, 0x74, 0x61, 0x74, 0x69, 0x6f, /* rkstatio */
0x6e, 0xc0, 0x3f, 0xc0, 0x0c, 0x00, 0x0c, 0x00, /* n.?..... */
0x01, 0x00, 0x00, 0x11, 0x94, 0x00, 0x12, 0x0f, /* ........ */
0x5f, 0x70, 0x64, 0x6c, 0x2d, 0x64, 0x61, 0x74, /* _pdl-dat */
0x61, 0x73, 0x74, 0x72, 0x65, 0x61, 0x6d, 0xc0, /* astream. */
0x3f, 0xc0, 0x0c, 0x00, 0x0c, 0x00, 0x01, 0x00, /* ?....... */
0x00, 0x11, 0x94, 0x00, 0x0b, 0x08, 0x5f, 0x70, /* ......_p */
0x72, 0x69, 0x6e, 0x74, 0x65, 0x72, 0xc0, 0x3f, /* rinter.? */
0xc0, 0x0c, 0x00, 0x0c, 0x00, 0x01, 0x00, 0x00, /* ........ */
0x11, 0x94, 0x00, 0x08, 0x05, 0x5f, 0x68, 0x74, /* ....._ht */
0x74, 0x70, 0xc0, 0x3f /* tp.? */
};
/* Frame (225 bytes) */
static const unsigned char pkt8[225] = {
0x01, 0x00, 0x5e, 0x00, 0x00, 0xfb, 0xec, 0x17, /* ..^..... */
0x2f, 0xbd, 0xa4, 0xb1, 0x08, 0x00, 0x45, 0x00, /* /.....E. */
0x00, 0xd3, 0x02, 0xe2, 0x00, 0x00, 0xff, 0x11, /* ........ */
0xcd, 0x3a, 0x0a, 0x00, 0x00, 0x02, 0xe0, 0x00, /* .:...... */
0x00, 0xfb, 0x14, 0xe9, 0x14, 0xe9, 0x00, 0xbf, /* ........ */
0x1b, 0x3a, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, /* .:...... */
0x00, 0x06, 0x00, 0x00, 0x00, 0x00, 0x09, 0x5f, /* ......._ */
0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x73, /* services */
0x07, 0x5f, 0x64, 0x6e, 0x73, 0x2d, 0x73, 0x64, /* ._dns-sd */
0x04, 0x5f, 0x75, 0x64, 0x70, 0x05, 0x6c, 0x6f, /* ._udp.lo */
0x63, 0x61, 0x6c, 0x00, 0x00, 0x0c, 0x00, 0x01, /* cal..... */
0xc0, 0x0c, 0x00, 0x0c, 0x00, 0x01, 0x00, 0x00, /* ........ */
0x11, 0x94, 0x00, 0x14, 0x0c, 0x5f, 0x77, 0x6f, /* ....._wo */
0x72, 0x6b, 0x73, 0x74, 0x61, 0x74, 0x69, 0x6f, /* rkstatio */
0x6e, 0x04, 0x5f, 0x74, 0x63, 0x70, 0xc0, 0x23, /* n._tcp.# */
0xc0, 0x0c, 0x00, 0x0c, 0x00, 0x01, 0x00, 0x00, /* ........ */
0x11, 0x94, 0x00, 0x09, 0x06, 0x5f, 0x74, 0x65, /* ....._te */
0x73, 0x74, 0x65, 0xc0, 0x47, 0xc0, 0x0c, 0x00, /* ste.G... */
0x0c, 0x00, 0x01, 0x00, 0x00, 0x11, 0x94, 0x00, /* ........ */
0x09, 0x06, 0x5f, 0x74, 0x65, 0x73, 0x74, 0x64, /* .._testd */
0xc0, 0x47, 0xc0, 0x0c, 0x00, 0x0c, 0x00, 0x01, /* .G...... */
0x00, 0x00, 0x11, 0x94, 0x00, 0x09, 0x06, 0x5f, /* ......._ */
0x74, 0x65, 0x73, 0x74, 0x63, 0xc0, 0x47, 0xc0, /* testc.G. */
0x0c, 0x00, 0x0c, 0x00, 0x01, 0x00, 0x00, 0x11, /* ........ */
0x94, 0x00, 0x09, 0x06, 0x5f, 0x74, 0x65, 0x73, /* ...._tes */
0x74, 0x62, 0xc0, 0x47, 0xc0, 0x0c, 0x00, 0x0c, /* tb.G.... */
0x00, 0x01, 0x00, 0x00, 0x11, 0x94, 0x00, 0x09, /* ........ */
0x06, 0x5f, 0x74, 0x65, 0x73, 0x74, 0x61, 0xc0, /* ._testa. */
0x47 /* G */
};
/* Frame (212 bytes) */
static const unsigned char pkt9[212] = {
0x01, 0x00, 0x5e, 0x00, 0x00, 0xfb, 0x18, 0x03, /* ..^..... */
0x73, 0x29, 0x5f, 0x66, 0x08, 0x00, 0x45, 0x00, /* s)_f..E. */
0x00, 0xc6, 0x58, 0xcf, 0x00, 0x00, 0xff, 0x11, /* ..X..... */
0xc0, 0x4f, 0xc0, 0xa8, 0x00, 0x64, 0xe0, 0x00, /* .O...d.. */
0x00, 0xfb, 0x14, 0xe9, 0x14, 0xe9, 0x00, 0xb2, /* ........ */
0xa2, 0xcb, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, /* ........ */
0x00, 0x05, 0x00, 0x00, 0x00, 0x00, 0x09, 0x5f, /* ......._ */
0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x73, /* services */
0x07, 0x5f, 0x64, 0x6e, 0x73, 0x2d, 0x73, 0x64, /* ._dns-sd */
0x04, 0x5f, 0x75, 0x64, 0x70, 0x05, 0x6c, 0x6f, /* ._udp.lo */
0x63, 0x61, 0x6c, 0x00, 0x00, 0x0c, 0x00, 0x01, /* cal..... */
0xc0, 0x0c, 0x00, 0x0c, 0x00, 0x01, 0x00, 0x00, /* ........ */
0x11, 0x90, 0x00, 0x0c, 0x04, 0x5f, 0x73, 0x6d, /* ....._sm */
0x62, 0x04, 0x5f, 0x74, 0x63, 0x70, 0xc0, 0x23, /* b._tcp.# */
0xc0, 0x0c, 0x00, 0x0c, 0x00, 0x01, 0x00, 0x00, /* ........ */
0x11, 0x91, 0x00, 0x0f, 0x0c, 0x5f, 0x77, 0x6f, /* ....._wo */
0x72, 0x6b, 0x73, 0x74, 0x61, 0x74, 0x69, 0x6f, /* rkstatio */
0x6e, 0xc0, 0x3f, 0xc0, 0x0c, 0x00, 0x0c, 0x00, /* n.?..... */
0x01, 0x00, 0x00, 0x11, 0x91, 0x00, 0x12, 0x0f, /* ........ */
0x5f, 0x70, 0x64, 0x6c, 0x2d, 0x64, 0x61, 0x74, /* _pdl-dat */
0x61, 0x73, 0x74, 0x72, 0x65, 0x61, 0x6d, 0xc0, /* astream. */
0x3f, 0xc0, 0x0c, 0x00, 0x0c, 0x00, 0x01, 0x00, /* ?....... */
0x00, 0x11, 0x91, 0x00, 0x0b, 0x08, 0x5f, 0x70, /* ......_p */
0x72, 0x69, 0x6e, 0x74, 0x65, 0x72, 0xc0, 0x3f, /* rinter.? */
0xc0, 0x0c, 0x00, 0x0c, 0x00, 0x01, 0x00, 0x00, /* ........ */
0x11, 0x91, 0x00, 0x08, 0x05, 0x5f, 0x68, 0x74, /* ....._ht */
0x74, 0x70, 0xc0, 0x3f /* tp.? */
};
/* Frame (225 bytes) */
static const unsigned char pkt10[225] = {
0x01, 0x00, 0x5e, 0x00, 0x00, 0xfb, 0xec, 0x17, /* ..^..... */
0x2f, 0xbd, 0xa4, 0xb1, 0x08, 0x00, 0x45, 0x00, /* /.....E. */
0x00, 0xd3, 0x02, 0xe3, 0x00, 0x00, 0xff, 0x11, /* ........ */
0xcd, 0x39, 0x0a, 0x00, 0x00, 0x02, 0xe0, 0x00, /* .9...... */
0x00, 0xfb, 0x14, 0xe9, 0x14, 0xe9, 0x00, 0xbf, /* ........ */
0x21, 0x46, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, /* !F...... */
0x00, 0x06, 0x00, 0x00, 0x00, 0x00, 0x09, 0x5f, /* ......._ */
0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x73, /* services */
0x07, 0x5f, 0x64, 0x6e, 0x73, 0x2d, 0x73, 0x64, /* ._dns-sd */
0x04, 0x5f, 0x75, 0x64, 0x70, 0x05, 0x6c, 0x6f, /* ._udp.lo */
0x63, 0x61, 0x6c, 0x00, 0x00, 0x0c, 0x00, 0x01, /* cal..... */
0xc0, 0x0c, 0x00, 0x0c, 0x00, 0x01, 0x00, 0x00, /* ........ */
0x11, 0x91, 0x00, 0x14, 0x0c, 0x5f, 0x77, 0x6f, /* ....._wo */
0x72, 0x6b, 0x73, 0x74, 0x61, 0x74, 0x69, 0x6f, /* rkstatio */
0x6e, 0x04, 0x5f, 0x74, 0x63, 0x70, 0xc0, 0x23, /* n._tcp.# */
0xc0, 0x0c, 0x00, 0x0c, 0x00, 0x01, 0x00, 0x00, /* ........ */
0x11, 0x91, 0x00, 0x09, 0x06, 0x5f, 0x74, 0x65, /* ....._te */
0x73, 0x74, 0x65, 0xc0, 0x47, 0xc0, 0x0c, 0x00, /* ste.G... */
0x0c, 0x00, 0x01, 0x00, 0x00, 0x11, 0x91, 0x00, /* ........ */
0x09, 0x06, 0x5f, 0x74, 0x65, 0x73, 0x74, 0x64, /* .._testd */
0xc0, 0x47, 0xc0, 0x0c, 0x00, 0x0c, 0x00, 0x01, /* .G...... */
0x00, 0x00, 0x11, 0x91, 0x00, 0x09, 0x06, 0x5f, /* ......._ */
0x74, 0x65, 0x73, 0x74, 0x63, 0xc0, 0x47, 0xc0, /* testc.G. */
0x0c, 0x00, 0x0c, 0x00, 0x01, 0x00, 0x00, 0x11, /* ........ */
0x91, 0x00, 0x09, 0x06, 0x5f, 0x74, 0x65, 0x73, /* ...._tes */
0x74, 0x62, 0xc0, 0x47, 0xc0, 0x0c, 0x00, 0x0c, /* tb.G.... */
0x00, 0x01, 0x00, 0x00, 0x11, 0x91, 0x00, 0x09, /* ........ */
0x06, 0x5f, 0x74, 0x65, 0x73, 0x74, 0x61, 0xc0, /* ._testa. */
0x47 /* G */
};
/* Frame (360 bytes) */
static const unsigned char pkt11[360] = {
0x01, 0x00, 0x5e, 0x00, 0x00, 0xfb, 0x18, 0x03, /* ..^..... */
0x73, 0x29, 0x5f, 0x66, 0x08, 0x00, 0x45, 0x00, /* s)_f..E. */
0x01, 0x5a, 0x59, 0x32, 0x00, 0x00, 0xff, 0x11, /* .ZY2.... */
0xbf, 0x58, 0xc0, 0xa8, 0x00, 0x64, 0xe0, 0x00, /* .X...d.. */
0x00, 0xfb, 0x14, 0xe9, 0x14, 0xe9, 0x01, 0x46, /* .......F */
0xa3, 0x5f, 0x00, 0x00, 0x84, 0x00, 0x00, 0x00, /* ._...... */
0x00, 0x06, 0x00, 0x00, 0x00, 0x01, 0x08, 0x43, /* .......C */
0x61, 0x74, 0x72, 0x6f, 0x2d, 0x50, 0x43, 0x05, /* atro-PC. */
0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x00, 0x00, 0x01, /* local... */
0x80, 0x01, 0x00, 0x00, 0x00, 0x78, 0x00, 0x04, /* .....x.. */
0xc0, 0xa8, 0x00, 0x64, 0x03, 0x31, 0x30, 0x30, /* ...d.100 */
0x01, 0x30, 0x03, 0x31, 0x36, 0x38, 0x03, 0x31, /* .0.168.1 */
0x39, 0x32, 0x07, 0x69, 0x6e, 0x2d, 0x61, 0x64, /* 92.in-ad */
0x64, 0x72, 0x04, 0x61, 0x72, 0x70, 0x61, 0x00, /* dr.arpa. */
0x00, 0x0c, 0x80, 0x01, 0x00, 0x00, 0x00, 0x78, /* .......x */
0x00, 0x02, 0xc0, 0x0c, 0xc0, 0x0c, 0x00, 0x1c, /* ........ */
0x80, 0x01, 0x00, 0x00, 0x00, 0x78, 0x00, 0x10, /* .....x.. */
0x40, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* @....... */
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, /* ........ */
0x01, 0x32, 0x01, 0x30, 0x01, 0x30, 0x01, 0x30, /* .2.0.0.0 */
0x01, 0x30, 0x01, 0x30, 0x01, 0x30, 0x01, 0x30, /* .0.0.0.0 */
0x01, 0x30, 0x01, 0x30, 0x01, 0x30, 0x01, 0x30, /* .0.0.0.0 */
0x01, 0x30, 0x01, 0x30, 0x01, 0x30, 0x01, 0x30, /* .0.0.0.0 */
0x01, 0x30, 0x01, 0x30, 0x01, 0x30, 0x01, 0x30, /* .0.0.0.0 */
0x01, 0x30, 0x01, 0x30, 0x01, 0x30, 0x01, 0x30, /* .0.0.0.0 */
0x01, 0x30, 0x01, 0x30, 0x01, 0x30, 0x01, 0x30, /* .0.0.0.0 */
0x01, 0x31, 0x01, 0x30, 0x01, 0x30, 0x01, 0x34, /* .1.0.0.4 */
0x03, 0x69, 0x70, 0x36, 0xc0, 0x40, 0x00, 0x0c, /* .ip6.@.. */
0x80, 0x01, 0x00, 0x00, 0x00, 0x78, 0x00, 0x02, /* .....x.. */
0xc0, 0x0c, 0xc0, 0x0c, 0x00, 0x1c, 0x80, 0x01, /* ........ */
0x00, 0x00, 0x00, 0x78, 0x00, 0x10, 0xfe, 0x80, /* ...x.... */
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x9d, 0x70, /* .......p */
0x49, 0x3f, 0x59, 0x89, 0x7e, 0xba, 0x01, 0x41, /* I?Y.~..A */
0x01, 0x42, 0x01, 0x45, 0x01, 0x37, 0x01, 0x39, /* .B.E.7.9 */
0x01, 0x38, 0x01, 0x39, 0x01, 0x35, 0x01, 0x46, /* .8.9.5.F */
0x01, 0x33, 0x01, 0x39, 0x01, 0x34, 0x01, 0x30, /* .3.9.4.0 */
0x01, 0x37, 0x01, 0x44, 0x01, 0x39, 0x01, 0x30, /* .7.D.9.0 */
0x01, 0x30, 0x01, 0x30, 0x01, 0x30, 0x01, 0x30, /* .0.0.0.0 */
0x01, 0x30, 0x01, 0x30, 0x01, 0x30, 0x01, 0x30, /* .0.0.0.0 */
0x01, 0x30, 0x01, 0x30, 0x01, 0x30, 0x01, 0x30, /* .0.0.0.0 */
0x01, 0x38, 0x01, 0x45, 0x01, 0x46, 0xc0, 0xae, /* .8.E.F.. */
0x00, 0x0c, 0x80, 0x01, 0x00, 0x00, 0x00, 0x78, /* .......x */
0x00, 0x02, 0xc0, 0x0c, 0xc0, 0x0c, 0x00, 0x2f, /* ......./ */
0x80, 0x01, 0x00, 0x00, 0x00, 0x78, 0x00, 0x08, /* .....x.. */
0xc0, 0x0c, 0x00, 0x04, 0x40, 0x00, 0x00, 0x08 /* ....@... */
};
/* Frame (136 bytes) */
static const unsigned char pkt12[136] = {
0x01, 0x00, 0x5e, 0x00, 0x00, 0xfb, 0xec, 0x17, /* ..^..... */
0x2f, 0xbd, 0xa4, 0xb1, 0x08, 0x00, 0x45, 0x00, /* /.....E. */
0x00, 0x7a, 0x02, 0xe4, 0x00, 0x00, 0xff, 0x11, /* .z...... */
0xcd, 0x91, 0x0a, 0x00, 0x00, 0x02, 0xe0, 0x00, /* ........ */
0x00, 0xfb, 0x14, 0xe9, 0x14, 0xe9, 0x00, 0x66, /* .......f */
0x82, 0x29, 0x00, 0x00, 0x84, 0x00, 0x00, 0x00, /* .)...... */
0x00, 0x02, 0x00, 0x00, 0x00, 0x01, 0x08, 0x43, /* .......C */
0x61, 0x74, 0x72, 0x6f, 0x2d, 0x50, 0x43, 0x05, /* atro-PC. */
0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x00, 0x00, 0x01, /* local... */
0x80, 0x01, 0x00, 0x00, 0x00, 0x78, 0x00, 0x04, /* .....x.. */
0x0a, 0x00, 0x00, 0x02, 0x01, 0x32, 0x01, 0x30, /* .....2.0 */
0x01, 0x30, 0x02, 0x31, 0x30, 0x07, 0x69, 0x6e, /* .0.10.in */
0x2d, 0x61, 0x64, 0x64, 0x72, 0x04, 0x61, 0x72, /* -addr.ar */
0x70, 0x61, 0x00, 0x00, 0x0c, 0x80, 0x01, 0x00, /* pa...... */
0x00, 0x00, 0x78, 0x00, 0x02, 0xc0, 0x0c, 0xc0, /* ..x..... */
0x0c, 0x00, 0x2f, 0x80, 0x01, 0x00, 0x00, 0x00, /* ../..... */
0x78, 0x00, 0x05, 0xc0, 0x0c, 0x00, 0x01, 0x40 /* x......@ */
};
/* Frame (83 bytes) */
static const unsigned char pkt13[83] = {
0x01, 0x00, 0x5e, 0x00, 0x00, 0xfb, 0x18, 0x03, /* ..^..... */
0x73, 0x29, 0x5f, 0x66, 0x08, 0x00, 0x45, 0x00, /* s)_f..E. */
0x00, 0x45, 0x59, 0xc5, 0x00, 0x00, 0xff, 0x11, /* .EY..... */
0xbf, 0xda, 0xc0, 0xa8, 0x00, 0x64, 0xe0, 0x00, /* .....d.. */
0x00, 0xfb, 0x14, 0xe9, 0x14, 0xe9, 0x00, 0x31, /* .......1 */
0xa2, 0x4a, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, /* .J...... */
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0c, 0x5f, /* ......._ */
0x73, 0x6c, 0x65, 0x65, 0x70, 0x2d, 0x70, 0x72, /* sleep-pr */
0x6f, 0x78, 0x79, 0x04, 0x5f, 0x75, 0x64, 0x70, /* oxy._udp */
0x05, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x00, 0x00, /* .local.. */
0x0c, 0x00, 0x01 /* ... */
};
/* Frame (83 bytes) */
static const unsigned char pkt14[83] = {
0x01, 0x00, 0x5e, 0x00, 0x00, 0xfb, 0xec, 0x17, /* ..^..... */
0x2f, 0xbd, 0xa4, 0xb1, 0x08, 0x00, 0x45, 0x00, /* /.....E. */
0x00, 0x45, 0x02, 0xe5, 0x00, 0x00, 0xff, 0x11, /* .E...... */
0xcd, 0xc5, 0x0a, 0x00, 0x00, 0x02, 0xe0, 0x00, /* ........ */
0x00, 0xfb, 0x14, 0xe9, 0x14, 0xe9, 0x00, 0x31, /* .......1 */
0x95, 0x4c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, /* .L...... */
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0c, 0x5f, /* ......._ */
0x73, 0x6c, 0x65, 0x65, 0x70, 0x2d, 0x70, 0x72, /* sleep-pr */
0x6f, 0x78, 0x79, 0x04, 0x5f, 0x75, 0x64, 0x70, /* oxy._udp */
0x05, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x00, 0x00, /* .local.. */
0x0c, 0x00, 0x01 /* ... */
};
static MDNS_QUERY_INFO mdns_query = {NX_NULL, NX_NULL, NX_NULL};
MDNS_TEST_SEQ mdns_dns_sd_query[] = {
{TITLE, "DNS-SD query", 12, 0},
/* Wait 5 seconds. */
{WAIT, NX_NULL, 0, 5},
{DUMP, NX_NULL, 0, 0},
/* Add query. */
{MDNS_QUERY, (char*)&mdns_query, 0, 0},
/* Check query. */
{MDNS_CHECK_DATA_V4, (char*)&pkt1[0], sizeof(pkt1), 3},
/* Inject response. */
{INJECT, (char*)&pkt3[0], sizeof(pkt3), 0},
{INJECT, (char*)&pkt4[0], sizeof(pkt4), 0},
{INJECT, (char*)&pkt5[0], sizeof(pkt5), 0},
{INJECT, (char*)&pkt6[0], sizeof(pkt6), 0},
/* Check RR count. */
{MDNS_CHECK_RR_COUNT_REMOTE, NX_NULL, 10, 0},
};
int mdns_dns_sd_query_size = sizeof(mdns_dns_sd_query) / sizeof(MDNS_TEST_SEQ);
#endif /* __PRODUCT_NETXDUO__ */
|