1 /* ************************************************** *
2 * *
3 * Request, Reply, Event, Error Printing *
4 * *
5 * James Peterson, 1988 *
6 * (c) Copyright MCC, 1988 *
7 * *
8 * ************************************************** */
9
10 #include "scope.h"
11 #include "nas.h"
12
13
14 /* ************************************************************ */
15 /* */
16 /* */
17 /* ************************************************************ */
18
19 /*
20 In printing the contents of the fields of the X11 packets, some
21 fields are of obvious value, and others are of lesser value. To
22 control the amount of output, we generate our output according
23 to the level of Verbose-ness that was selected by the user.
24
25 NasVerbose = 0 == Headers only, time and request/reply/... names.
26
27 NasVerbose = 1 == Very useful content fields.
28
29 NasVerbose = 2 == Almost everything.
30
31 NasVerbose = 3 == Every single bit and byte.
32
33 */
34
35 /*
36 To aid in making the choice between level 1 and level 2, we
37 define the following define, which does not print relatively
38 unimportant fields.
39 */
40
41 #define printfield(a,b,c,d,e) if (NasVerbose > 1) PrintField(a,b,c,d,e)
42
43 static void PrintFailedAudioSetUpReply(const unsigned char *buf);
44 static void PrintSuccessfulAudioSetUpReply(const unsigned char *buf);
45
46 /* ************************************************************ */
47 /* */
48 /* */
49 /* ************************************************************ */
50
51 void
PrintAudioSetUpMessage(const unsigned char * buf)52 PrintAudioSetUpMessage(const unsigned char *buf)
53 {
54 short n;
55 short d;
56
57 enterprocedure("PrintSetUpMessage");
58 if (NasVerbose < 1)
59 return;
60 SetIndentLevel(PRINTCLIENT);
61 PrintField(buf, 0, 1, BYTEMODE, "byte-order");
62 PrintField(buf, 2, 2, CARD16, "major-version");
63 PrintField(buf, 4, 2, CARD16, "minor-version");
64 printfield(buf, 6, 2, DVALUE2(n), "length of name");
65 n = IShort(&buf[6]);
66 printfield(buf, 8, 2, DVALUE2(d), "length of data");
67 d = IShort(&buf[8]);
68 PrintString8(&buf[12], (long) n, "authorization-protocol-name");
69 PrintString8(&buf[pad((long) (12 + n))], (long) d,
70 "authorization-protocol-data");
71 }
72
73 void
PrintAudioSetUpReply(const unsigned char * buf)74 PrintAudioSetUpReply(const unsigned char *buf)
75 {
76 enterprocedure("PrintSetUpReply");
77 SetIndentLevel(PRINTSERVER);
78 if (IByte(&buf[0]))
79 PrintSuccessfulAudioSetUpReply(buf);
80 else
81 PrintFailedAudioSetUpReply(buf);
82 }
83
84 static void
PrintFailedAudioSetUpReply(const unsigned char * buf)85 PrintFailedAudioSetUpReply(const unsigned char *buf)
86 {
87 short n;
88
89 PrintField(buf, 0, 1, 0, "SetUp Failed");
90 if (NasVerbose < 1)
91 return;
92 printfield(buf, 1, 1, DVALUE1(n), "length of reason in bytes");
93 n = IByte(&buf[1]);
94 PrintField(buf, 2, 2, CARD16, "major-version");
95 PrintField(buf, 4, 2, CARD16, "minor-version");
96 printfield(buf, 6, 2, DVALUE2((n + p) / 4), "length of data");
97 PrintString8(&buf[8], (long) n, "reason");
98 }
99
100 static void
PrintSuccessfulAudioSetUpReply(const unsigned char * buf)101 PrintSuccessfulAudioSetUpReply(const unsigned char *buf)
102 {
103 short v;
104 short n;
105 short m;
106
107 if (NasVerbose < 1)
108 return;
109 PrintField(buf, 2, 2, CARD16, "protocol-major-version");
110 PrintField(buf, 4, 2, CARD16, "protocol-minor-version");
111 printfield(buf, 6, 2, DVALUE2(8 + 2 * n + (v + p + m) / 4),
112 "length of data");
113 PrintField(buf, 8, 4, CARD32, "release-number");
114 PrintField(buf, 12, 4, CARD32, "resource-id-base");
115 PrintField(buf, 16, 4, CARD32, "resource-id-mask");
116 PrintField(buf, 20, 2, CARD16, "min-sample-rate");
117 PrintField(buf, 22, 2, CARD16, "max-sample-rate");
118 printfield(buf, 24, 2, DVALUE2(v), "length of vendor");
119 v = IShort(&buf[24]);
120 printfield(buf, 26, 2, CARD16, "maximum-request-length");
121 printfield(buf, 28, 1, CARD8, "max-tracks");
122 m = IByte(&buf[28]);
123 printfield(buf, 29, 1, DVALUE1(n), "number of audio formats");
124 n = IByte(&buf[29]);
125 PrintField(buf, 30, 1, CARD8, "number of element-types");
126 PrintField(buf, 31, 1, CARD8, "number of wave-forms");
127 PrintField(buf, 32, 1, CARD8, "number of actions");
128 PrintField(buf, 33, 1, CARD8, "number of devices");
129 PrintField(buf, 34, 1, CARD8, "number of buckets");
130 PrintField(buf, 35, 1, CARD8, "number of radios");
131 PrintString8(&buf[36], (long) v, "vendor");
132 }
133
134 /* ************************************************************ */
135 /* */
136 /* */
137 /* ************************************************************ */
138
139 /* Error Printing procedures */
140
141 static void
AudioRequestError(const unsigned char * buf)142 AudioRequestError(const unsigned char *buf)
143 {
144 PrintField(buf, 1, 1, ERROR, ERRORHEADER); /* Request */
145 if (NasVerbose < 1)
146 return;
147 printfield(buf, 2, 2, CARD16, "sequence number");
148 PrintField(buf, 8, 2, CARD16, "minor opcode");
149 PrintField(buf, 10, 1, CARD8, "major opcode");
150 }
151
152 static void
AudioValueError(const unsigned char * buf)153 AudioValueError(const unsigned char *buf)
154 {
155 PrintField(buf, 1, 1, ERROR, ERRORHEADER); /* Value */
156 if (NasVerbose < 1)
157 return;
158 printfield(buf, 2, 2, CARD16, "sequence number");
159 PrintField(buf, 4, 4, INT32, "bad value");
160 PrintField(buf, 8, 2, CARD16, "minor opcode");
161 PrintField(buf, 10, 1, CARD8, "major opcode");
162 }
163
164 static void
AudioMatchError(const unsigned char * buf)165 AudioMatchError(const unsigned char *buf)
166 {
167 PrintField(buf, 1, 1, ERROR, ERRORHEADER); /* Match */
168 if (NasVerbose < 1)
169 return;
170 printfield(buf, 2, 2, CARD16, "sequence number");
171 PrintField(buf, 8, 2, CARD16, "minor opcode");
172 PrintField(buf, 10, 1, CARD8, "major opcode");
173 }
174
175 static void
AudioAccessError(const unsigned char * buf)176 AudioAccessError(const unsigned char *buf)
177 {
178 PrintField(buf, 1, 1, ERROR, ERRORHEADER); /* Access */
179 if (NasVerbose < 1)
180 return;
181 printfield(buf, 2, 2, CARD16, "sequence number");
182 PrintField(buf, 8, 2, CARD16, "minor opcode");
183 PrintField(buf, 10, 1, CARD8, "major opcode");
184 }
185
186 static void
AudioAllocError(const unsigned char * buf)187 AudioAllocError(const unsigned char *buf)
188 {
189 PrintField(buf, 1, 1, ERROR, ERRORHEADER); /* Alloc */
190 if (NasVerbose < 1)
191 return;
192 printfield(buf, 2, 2, CARD16, "sequence number");
193 PrintField(buf, 8, 2, CARD16, "minor opcode");
194 PrintField(buf, 10, 1, CARD8, "major opcode");
195 }
196
197 static void
AudioIDChoiceError(const unsigned char * buf)198 AudioIDChoiceError(const unsigned char *buf)
199 {
200 PrintField(buf, 1, 1, ERROR, ERRORHEADER); /* IDChoice */
201 if (NasVerbose < 1)
202 return;
203 printfield(buf, 2, 2, CARD16, "sequence number");
204 PrintField(buf, 4, 4, CARD32, "bad resource id");
205 PrintField(buf, 8, 2, CARD16, "minor opcode");
206 PrintField(buf, 10, 1, CARD8, "major opcode");
207 }
208
209 static void
AudioLengthError(const unsigned char * buf)210 AudioLengthError(const unsigned char *buf)
211 {
212 PrintField(buf, 1, 1, ERROR, ERRORHEADER); /* Length */
213 if (NasVerbose < 1)
214 return;
215 printfield(buf, 2, 2, CARD16, "sequence number");
216 PrintField(buf, 8, 2, CARD16, "minor opcode");
217 PrintField(buf, 10, 1, CARD8, "major opcode");
218 }
219
220 static void
AudioImplementationError(const unsigned char * buf)221 AudioImplementationError(const unsigned char *buf)
222 {
223 PrintField(buf, 1, 1, ERROR, ERRORHEADER); /* Implementation */
224 if (NasVerbose < 1)
225 return;
226 printfield(buf, 2, 2, CARD16, "sequence number");
227 PrintField(buf, 8, 2, CARD16, "minor opcode");
228 PrintField(buf, 10, 1, CARD8, "major opcode");
229 }
230
231 /* ************************************************************ */
232 /* */
233 /* */
234 /* ************************************************************ */
235
236 /* Event Printing procedures */
237
238 void
AudioElementNotify(const unsigned char * buf)239 AudioElementNotify(const unsigned char *buf)
240 {
241 PrintField(buf, 0, 1, NASEVENT, EVENTHEADER);
242 if (NasVerbose < 1)
243 return;
244 printfield(buf, 1, 1, CARD8, "detail");
245 printfield(buf, 2, 2, CARD16, "sequence number");
246 PrintField(buf, 4, 4, TIMESTAMP, "time");
247 PrintField(buf, 8, 4, CARD32, "flow");
248 printfield(buf, 12, 2, CARD16, "element num");
249 printfield(buf, 14, 2, CARD16, "kind");
250 printfield(buf, 16, 2, CARD16, "prev state");
251 printfield(buf, 18, 2, CARD16, "cur state");
252 printfield(buf, 20, 2, CARD16, "reason");
253 printfield(buf, 24, 4, CARD32, "num bytes");
254 }
255
256 void
AudioGrabNotify(const unsigned char * buf)257 AudioGrabNotify(const unsigned char *buf)
258 {
259 }
260
261 void
AudioMonitorNotify(const unsigned char * buf)262 AudioMonitorNotify(const unsigned char *buf)
263 {
264 PrintField(buf, 0, 1, NASEVENT, EVENTHEADER);
265 if (NasVerbose < 1)
266 return;
267 printfield(buf, 1, 1, CARD8, "detail");
268 printfield(buf, 2, 2, CARD16, "sequence number");
269 PrintField(buf, 4, 4, TIMESTAMP, "time");
270 PrintField(buf, 8, 4, CARD32, "flow");
271 printfield(buf, 12, 2, CARD16, "element num");
272 printfield(buf, 14, 1, CARD8, "format");
273 printfield(buf, 15, 1, CARD8, "num tracks");
274 printfield(buf, 16, 2, CARD16, "count");
275 printfield(buf, 18, 2, CARD16, "num fields");
276 PrintField(buf, 20, 4, CARD32, "data");
277 PrintField(buf, 24, 4, CARD32, "date1");
278 PrintField(buf, 28, 4, CARD32, "data2");
279 }
280
281 void
AudioBucketNotify(const unsigned char * buf)282 AudioBucketNotify(const unsigned char *buf)
283 {
284 }
285
286 void
AudioDeviceNotify(const unsigned char * buf)287 AudioDeviceNotify(const unsigned char *buf)
288 {
289 }
290
291 /* ************************************************************ */
292 /* */
293 /* */
294 /* ************************************************************ */
295
296 /* Request and Reply Printing procedures */
297
298 void
UnknownAudioReply(const unsigned char * buf)299 UnknownAudioReply(const unsigned char *buf)
300 {
301 long n;
302
303 PrintField(RBf, 0, 1, NASREPLY, REPLYHEADER);
304 PrintField(buf, 1, 1, CARD8, "data");
305 printfield(buf, 2, 2, CARD16, "sequence number");
306 printfield(buf, 4, 4, DVALUE4(n), "reply length");
307 n = ILong(&buf[4]) + 6;
308 (void) PrintList(&buf[8], n, CARD32, "data");
309 }
310
311 void
AudioListDevices(const unsigned char * buf)312 AudioListDevices(const unsigned char *buf)
313 {
314 PrintField(buf, 0, 1, NASREQUEST, REQUESTHEADER); /* ListDevices */
315 if (NasVerbose < 1)
316 return;
317 if (NasVerbose > 1)
318 PrintField(SBf, 0, 4, CARD32, "sequence number");
319
320 printfield(buf, 2, 2, DVALUE2(8 + n), "request length");
321 }
322
323 void
AudioListDevicesReply(const unsigned char * buf)324 AudioListDevicesReply(const unsigned char *buf)
325 {
326 long n;
327
328 PrintField(RBf, 0, 1, REPLY, REPLYHEADER); /* GetWindowAttributes */
329 if (NasVerbose < 1)
330 return;
331 printfield(buf, 2, 2, CARD16, "sequence number");
332 printfield(buf, 4, 4, CARD32, "reply length");
333 printfield(buf, 8, 4, CARD32, "num devices");
334
335 n = ILong(&buf[8]);
336 }
337
338 static long
AuString(const unsigned char * buf)339 AuString(const unsigned char *buf)
340 {
341 long n;
342
343 printfield(buf, 0, 1, CARD8, "type");
344 printfield(buf, 4, 4, CARD32, "length");
345
346 n = ILong(&buf[8]);
347 PrintString8(&buf[8], n, "string");
348 return 8 + pad(n);
349 }
350
351 static void
AuDeviceAttributes(const unsigned char * buf)352 AuDeviceAttributes(const unsigned char *buf)
353 {
354 int l;
355
356 printfield(buf, 0, 4, CARD32, "value mask");
357 printfield(buf, 4, 4, CARD32, "changable mask");
358 printfield(buf, 8, 4, CARD32, "id");
359 printfield(buf, 12, 1, CARD8, "kind");
360 printfield(buf, 13, 1, CARD8, "use");
361 printfield(buf, 14, 1, CARD8, "format");
362 printfield(buf, 15, 1, CARD8, "num tracks");
363 printfield(buf, 16, 4, CARD32, "access");
364
365 l = 20 + AuString(&buf[20]);
366 }
367
368 void
AudioGetDeviceAttributes(const unsigned char * buf)369 AudioGetDeviceAttributes(const unsigned char *buf)
370 {
371 PrintField(buf, 0, 1, NASREQUEST, REQUESTHEADER);
372 if (NasVerbose < 1)
373 return;
374 if (NasVerbose > 1)
375 PrintField(SBf, 0, 4, CARD32, "sequence number");
376
377 printfield(buf, 2, 2, DVALUE2(8 + n), "request length");
378 }
379
380 void
AudioGetDeviceAttributesReply(const unsigned char * buf)381 AudioGetDeviceAttributesReply(const unsigned char *buf)
382 {
383 PrintField(RBf, 0, 1, NASREPLY, REPLYHEADER);
384 if (NasVerbose < 1)
385 return;
386 printfield(buf, 2, 2, CARD16, "sequence number");
387 printfield(buf, 4, 4, DVALUE4((n + p) / 4), "reply length");
388 AuDeviceAttributes(&buf[32]);
389 }
390
391 void
AudioSetDeviceAttributes(const unsigned char * buf)392 AudioSetDeviceAttributes(const unsigned char *buf)
393 {
394 PrintField(buf, 0, 1, NASREQUEST, REQUESTHEADER);
395 if (NasVerbose < 1)
396 return;
397 if (NasVerbose > 1)
398 PrintField(SBf, 0, 4, CARD32, "sequence number");
399
400 printfield(buf, 2, 2, DVALUE2(8 + n), "request length");
401 printfield(buf, 4, 4, CARD32, "device");
402
403 AuDeviceAttributes(&buf[8]);
404 }
405
406 void
AudioCreateBucket(const unsigned char * buf)407 AudioCreateBucket(const unsigned char *buf)
408 {
409 PrintField(buf, 0, 1, NASREQUEST, REQUESTHEADER);
410 if (NasVerbose < 1)
411 return;
412 if (NasVerbose > 1)
413 PrintField(SBf, 0, 4, CARD32, "sequence number");
414
415 printfield(buf, 2, 2, DVALUE2(8 + n), "request length");
416 }
417
418 void
AudioDestroyBucket(const unsigned char * buf)419 AudioDestroyBucket(const unsigned char *buf)
420 {
421 PrintField(buf, 0, 1, NASREQUEST, REQUESTHEADER);
422 if (NasVerbose < 1)
423 return;
424 if (NasVerbose > 1)
425 PrintField(SBf, 0, 4, CARD32, "sequence number");
426
427 printfield(buf, 2, 2, DVALUE2(8 + n), "request length");
428 }
429
430 void
AudioListBuckets(const unsigned char * buf)431 AudioListBuckets(const unsigned char *buf)
432 {
433 PrintField(buf, 0, 1, NASREQUEST, REQUESTHEADER);
434 if (NasVerbose < 1)
435 return;
436 if (NasVerbose > 1)
437 PrintField(SBf, 0, 4, CARD32, "sequence number");
438
439 printfield(buf, 2, 2, DVALUE2(8 + n), "request length");
440 }
441
442 void
AudioListBucketsReply(const unsigned char * buf)443 AudioListBucketsReply(const unsigned char *buf)
444 {
445 PrintField(RBf, 0, 1, NASREPLY, REPLYHEADER);
446 if (NasVerbose < 1)
447 return;
448 printfield(buf, 2, 2, CARD16, "sequence number");
449 printfield(buf, 4, 4, DVALUE4((n + p) / 4), "reply length");
450 }
451
452 void
AudioGetBucketAttributes(const unsigned char * buf)453 AudioGetBucketAttributes(const unsigned char *buf)
454 {
455 PrintField(buf, 0, 1, NASREQUEST, REQUESTHEADER);
456 if (NasVerbose < 1)
457 return;
458 if (NasVerbose > 1)
459 PrintField(SBf, 0, 4, CARD32, "sequence number");
460
461 printfield(buf, 2, 2, DVALUE2(8 + n), "request length");
462 }
463
464 void
AudioGetBucketAttributesReply(const unsigned char * buf)465 AudioGetBucketAttributesReply(const unsigned char *buf)
466 {
467 PrintField(RBf, 0, 1, NASREPLY, REPLYHEADER);
468 if (NasVerbose < 1)
469 return;
470 printfield(buf, 2, 2, CARD16, "sequence number");
471 printfield(buf, 4, 4, DVALUE4((n + p) / 4), "reply length");
472 }
473
474 void
AudioSetBucketAttributes(const unsigned char * buf)475 AudioSetBucketAttributes(const unsigned char *buf)
476 {
477 PrintField(buf, 0, 1, NASREQUEST, REQUESTHEADER);
478 if (NasVerbose < 1)
479 return;
480 if (NasVerbose > 1)
481 PrintField(SBf, 0, 4, CARD32, "sequence number");
482
483 printfield(buf, 2, 2, DVALUE2(8 + n), "request length");
484 }
485
486 void
AudioCreateRadio(const unsigned char * buf)487 AudioCreateRadio(const unsigned char *buf)
488 {
489 PrintField(buf, 0, 1, NASREQUEST, REQUESTHEADER);
490 if (NasVerbose < 1)
491 return;
492 if (NasVerbose > 1)
493 PrintField(SBf, 0, 4, CARD32, "sequence number");
494
495 printfield(buf, 2, 2, DVALUE2(8 + n), "request length");
496 }
497
498 void
AudioDestroyRadio(const unsigned char * buf)499 AudioDestroyRadio(const unsigned char *buf)
500 {
501 PrintField(buf, 0, 1, NASREQUEST, REQUESTHEADER);
502 if (NasVerbose < 1)
503 return;
504 if (NasVerbose > 1)
505 PrintField(SBf, 0, 4, CARD32, "sequence number");
506
507 printfield(buf, 2, 2, DVALUE2(8 + n), "request length");
508 }
509
510 void
AudioListRadios(const unsigned char * buf)511 AudioListRadios(const unsigned char *buf)
512 {
513 PrintField(buf, 0, 1, NASREQUEST, REQUESTHEADER);
514 if (NasVerbose < 1)
515 return;
516 if (NasVerbose > 1)
517 PrintField(SBf, 0, 4, CARD32, "sequence number");
518
519 printfield(buf, 2, 2, DVALUE2(8 + n), "request length");
520 }
521
522 void
AudioListRadiosReply(const unsigned char * buf)523 AudioListRadiosReply(const unsigned char *buf)
524 {
525 PrintField(RBf, 0, 1, NASREPLY, REPLYHEADER);
526 if (NasVerbose < 1)
527 return;
528 printfield(buf, 2, 2, CARD16, "sequence number");
529 printfield(buf, 4, 4, DVALUE4((n + p) / 4), "reply length");
530 }
531
532 void
AudioGetRadioAttributes(const unsigned char * buf)533 AudioGetRadioAttributes(const unsigned char *buf)
534 {
535 PrintField(buf, 0, 1, NASREQUEST, REQUESTHEADER);
536 if (NasVerbose < 1)
537 return;
538 if (NasVerbose > 1)
539 PrintField(SBf, 0, 4, CARD32, "sequence number");
540
541 printfield(buf, 2, 2, DVALUE2(8 + n), "request length");
542 }
543
544 void
AudioGetRadioAttributesReply(const unsigned char * buf)545 AudioGetRadioAttributesReply(const unsigned char *buf)
546 {
547 PrintField(RBf, 0, 1, NASREPLY, REPLYHEADER);
548 if (NasVerbose < 1)
549 return;
550 printfield(buf, 2, 2, CARD16, "sequence number");
551 printfield(buf, 4, 4, DVALUE4((n + p) / 4), "reply length");
552 }
553
554 void
AudioSetRadioAttributes(const unsigned char * buf)555 AudioSetRadioAttributes(const unsigned char *buf)
556 {
557 PrintField(buf, 0, 1, NASREQUEST, REQUESTHEADER);
558 if (NasVerbose < 1)
559 return;
560 if (NasVerbose > 1)
561 PrintField(SBf, 0, 4, CARD32, "sequence number");
562
563 printfield(buf, 2, 2, DVALUE2(8 + n), "request length");
564 }
565
566 void
AudioCreateFlow(const unsigned char * buf)567 AudioCreateFlow(const unsigned char *buf)
568 {
569 PrintField(buf, 0, 1, NASREQUEST, REQUESTHEADER);
570 if (NasVerbose < 1)
571 return;
572 if (NasVerbose > 1)
573 PrintField(SBf, 0, 4, CARD32, "sequence number");
574
575 printfield(buf, 2, 2, DVALUE2(8 + n), "request length");
576 }
577
578 void
AudioDestroyFlow(const unsigned char * buf)579 AudioDestroyFlow(const unsigned char *buf)
580 {
581 PrintField(buf, 0, 1, NASREQUEST, REQUESTHEADER);
582 if (NasVerbose < 1)
583 return;
584 if (NasVerbose > 1)
585 PrintField(SBf, 0, 4, CARD32, "sequence number");
586
587 printfield(buf, 2, 2, DVALUE2(8 + n), "request length");
588 }
589
590 void
AudioGetFlowAttributes(const unsigned char * buf)591 AudioGetFlowAttributes(const unsigned char *buf)
592 {
593 PrintField(buf, 0, 1, NASREQUEST, REQUESTHEADER);
594 if (NasVerbose < 1)
595 return;
596 if (NasVerbose > 1)
597 PrintField(SBf, 0, 4, CARD32, "sequence number");
598
599 printfield(buf, 2, 2, DVALUE2(8 + n), "request length");
600 }
601
602 void
AudioGetFlowAttributesReply(const unsigned char * buf)603 AudioGetFlowAttributesReply(const unsigned char *buf)
604 {
605 PrintField(RBf, 0, 1, NASREPLY, REPLYHEADER);
606 if (NasVerbose < 1)
607 return;
608 printfield(buf, 2, 2, CARD16, "sequence number");
609 printfield(buf, 4, 4, DVALUE4((n + p) / 4), "reply length");
610 }
611
612 void
AudioSetFlowAttributes(const unsigned char * buf)613 AudioSetFlowAttributes(const unsigned char *buf)
614 {
615 PrintField(buf, 0, 1, NASREQUEST, REQUESTHEADER);
616 if (NasVerbose < 1)
617 return;
618 if (NasVerbose > 1)
619 PrintField(SBf, 0, 4, CARD32, "sequence number");
620
621 printfield(buf, 2, 2, DVALUE2(8 + n), "request length");
622 }
623
624 void
AudioGetElements(const unsigned char * buf)625 AudioGetElements(const unsigned char *buf)
626 {
627 PrintField(buf, 0, 1, NASREQUEST, REQUESTHEADER);
628 if (NasVerbose < 1)
629 return;
630 if (NasVerbose > 1)
631 PrintField(SBf, 0, 4, CARD32, "sequence number");
632
633 printfield(buf, 2, 2, DVALUE2(8 + n), "request length");
634 }
635
636 void
AudioGetElementsReply(const unsigned char * buf)637 AudioGetElementsReply(const unsigned char *buf)
638 {
639 PrintField(RBf, 0, 1, NASREPLY, REPLYHEADER);
640 if (NasVerbose < 1)
641 return;
642 printfield(buf, 2, 2, CARD16, "sequence number");
643 printfield(buf, 4, 4, DVALUE4((n + p) / 4), "reply length");
644 }
645
646 void
AudioSetElements(const unsigned char * buf)647 AudioSetElements(const unsigned char *buf)
648 {
649 PrintField(buf, 0, 1, NASREQUEST, REQUESTHEADER);
650 if (NasVerbose < 1)
651 return;
652 if (NasVerbose > 1)
653 PrintField(SBf, 0, 4, CARD32, "sequence number");
654
655 printfield(buf, 2, 2, DVALUE2(8 + n), "request length");
656 }
657
658 void
AudioGetElementStates(const unsigned char * buf)659 AudioGetElementStates(const unsigned char *buf)
660 {
661 PrintField(buf, 0, 1, NASREQUEST, REQUESTHEADER);
662 if (NasVerbose < 1)
663 return;
664 if (NasVerbose > 1)
665 PrintField(SBf, 0, 4, CARD32, "sequence number");
666
667 printfield(buf, 2, 2, DVALUE2(8 + n), "request length");
668 }
669
670 void
AudioElementState(const unsigned char * buf)671 AudioElementState(const unsigned char *buf)
672 {
673 printfield(buf, 0, 4, CARD32, "flow");
674 printfield(buf, 4, 1, CARD8, "element number");
675 printfield(buf, 5, 1, CARD8, "state");
676 }
677
678 void
AudioGetElementStatesReply(const unsigned char * buf)679 AudioGetElementStatesReply(const unsigned char *buf)
680 {
681 int n, i;
682
683 int o;
684
685 PrintField(RBf, 0, 1, NASREPLY, REPLYHEADER);
686 if (NasVerbose < 1)
687 return;
688 printfield(buf, 2, 2, CARD16, "sequence number");
689 printfield(buf, 4, 4, DVALUE4((n + p) / 4), "reply length");
690 n = ILong(&buf[8]);
691 o = 32;
692 for (i = 0; i < n; i++) {
693 AudioElementState(buf + o);
694 o += 8;
695 }
696 }
697
698 void
AudioSetElementStates(const unsigned char * buf)699 AudioSetElementStates(const unsigned char *buf)
700 {
701 int nstates, i;
702 int o;
703
704 PrintField(buf, 0, 1, NASREQUEST, REQUESTHEADER);
705 if (NasVerbose < 1)
706 return;
707 if (NasVerbose > 1)
708 PrintField(SBf, 0, 4, CARD32, "sequence number");
709
710 printfield(buf, 2, 2, DVALUE2(8 + n), "request length");
711 printfield(buf, 4, 4, CARD32, "number states");
712
713 nstates = ILong(&buf[4]);
714 o = 8;
715 for (i = 0; i < nstates; i++) {
716 AudioElementState(buf + o);
717 o += 8;
718 }
719 }
720
721 void
AudioGetElementParameters(const unsigned char * buf)722 AudioGetElementParameters(const unsigned char *buf)
723 {
724 PrintField(buf, 0, 1, NASREQUEST, REQUESTHEADER);
725 if (NasVerbose < 1)
726 return;
727 if (NasVerbose > 1)
728 PrintField(SBf, 0, 4, CARD32, "sequence number");
729
730 printfield(buf, 2, 2, DVALUE2(8 + n), "request length");
731 }
732
733 void
AudioGetElementParametersReply(const unsigned char * buf)734 AudioGetElementParametersReply(const unsigned char *buf)
735 {
736 PrintField(RBf, 0, 1, NASREPLY, REPLYHEADER);
737 if (NasVerbose < 1)
738 return;
739 printfield(buf, 2, 2, CARD16, "sequence number");
740 printfield(buf, 4, 4, DVALUE4((n + p) / 4), "reply length");
741 }
742
743 void
AudioSetElementParameters(const unsigned char * buf)744 AudioSetElementParameters(const unsigned char *buf)
745 {
746 PrintField(buf, 0, 1, NASREQUEST, REQUESTHEADER);
747 if (NasVerbose < 1)
748 return;
749 if (NasVerbose > 1)
750 PrintField(SBf, 0, 4, CARD32, "sequence number");
751
752 printfield(buf, 2, 2, DVALUE2(8 + n), "request length");
753 }
754
755 void
AudioWriteElement(const unsigned char * buf)756 AudioWriteElement(const unsigned char *buf)
757 {
758 PrintField(buf, 0, 1, NASREQUEST, REQUESTHEADER);
759 if (NasVerbose < 1)
760 return;
761 if (NasVerbose > 1)
762 PrintField(SBf, 0, 4, CARD32, "sequence number");
763
764 printfield(buf, 2, 2, DVALUE2(8 + n), "request length");
765 printfield(buf, 4, 4, CARD32, "flow");
766 printfield(buf, 8, 4, CARD32, "num bytes");
767 printfield(buf, 12, 1, CARD8, "state");
768 }
769
770 void
AudioReadElement(const unsigned char * buf)771 AudioReadElement(const unsigned char *buf)
772 {
773 PrintField(buf, 0, 1, NASREQUEST, REQUESTHEADER);
774 if (NasVerbose < 1)
775 return;
776 if (NasVerbose > 1)
777 PrintField(SBf, 0, 4, CARD32, "sequence number");
778
779 printfield(buf, 2, 2, DVALUE2(8 + n), "request length");
780 }
781
782 void
AudioReadElementReply(const unsigned char * buf)783 AudioReadElementReply(const unsigned char *buf)
784 {
785 PrintField(RBf, 0, 1, NASREPLY, REPLYHEADER);
786 if (NasVerbose < 1)
787 return;
788 printfield(buf, 2, 2, CARD16, "sequence number");
789 printfield(buf, 4, 4, DVALUE4((n + p) / 4), "reply length");
790 }
791
792 void
AudioGrabComponent(const unsigned char * buf)793 AudioGrabComponent(const unsigned char *buf)
794 {
795 PrintField(buf, 0, 1, NASREQUEST, REQUESTHEADER);
796 if (NasVerbose < 1)
797 return;
798 if (NasVerbose > 1)
799 PrintField(SBf, 0, 4, CARD32, "sequence number");
800
801 printfield(buf, 2, 2, DVALUE2(8 + n), "request length");
802 }
803
804 void
AudioUngrabComponent(const unsigned char * buf)805 AudioUngrabComponent(const unsigned char *buf)
806 {
807 PrintField(buf, 0, 1, NASREQUEST, REQUESTHEADER);
808 if (NasVerbose < 1)
809 return;
810 if (NasVerbose > 1)
811 PrintField(SBf, 0, 4, CARD32, "sequence number");
812
813 printfield(buf, 2, 2, DVALUE2(8 + n), "request length");
814 }
815
816 void
AudioSendEvent(const unsigned char * buf)817 AudioSendEvent(const unsigned char *buf)
818 {
819 PrintField(buf, 0, 1, NASREQUEST, REQUESTHEADER);
820 if (NasVerbose < 1)
821 return;
822 if (NasVerbose > 1)
823 PrintField(SBf, 0, 4, CARD32, "sequence number");
824
825 printfield(buf, 2, 2, DVALUE2(8 + n), "request length");
826 }
827
828 void
AudioGetAllowedUsers(const unsigned char * buf)829 AudioGetAllowedUsers(const unsigned char *buf)
830 {
831 PrintField(buf, 0, 1, NASREQUEST, REQUESTHEADER);
832 if (NasVerbose < 1)
833 return;
834 if (NasVerbose > 1)
835 PrintField(SBf, 0, 4, CARD32, "sequence number");
836
837 printfield(buf, 2, 2, DVALUE2(8 + n), "request length");
838 }
839
840 void
AudioGetAllowedUsersReply(const unsigned char * buf)841 AudioGetAllowedUsersReply(const unsigned char *buf)
842 {
843 PrintField(RBf, 0, 1, NASREPLY, REPLYHEADER);
844 if (NasVerbose < 1)
845 return;
846 printfield(buf, 2, 2, CARD16, "sequence number");
847 printfield(buf, 4, 4, DVALUE4((n + p) / 4), "reply length");
848 }
849
850 void
AudioSetAllowedUsers(const unsigned char * buf)851 AudioSetAllowedUsers(const unsigned char *buf)
852 {
853 PrintField(buf, 0, 1, NASREQUEST, REQUESTHEADER);
854 if (NasVerbose < 1)
855 return;
856 if (NasVerbose > 1)
857 PrintField(SBf, 0, 4, CARD32, "sequence number");
858
859 printfield(buf, 2, 2, DVALUE2(8 + n), "request length");
860 }
861
862 void
AudioListExtensions(const unsigned char * buf)863 AudioListExtensions(const unsigned char *buf)
864 {
865 PrintField(buf, 0, 1, NASREQUEST, REQUESTHEADER);
866 if (NasVerbose < 1)
867 return;
868 if (NasVerbose > 1)
869 PrintField(SBf, 0, 4, CARD32, "sequence number");
870
871 printfield(buf, 2, 2, DVALUE2(8 + n), "request length");
872 }
873
874 void
AudioListExtensionsReply(const unsigned char * buf)875 AudioListExtensionsReply(const unsigned char *buf)
876 {
877 PrintField(RBf, 0, 1, NASREPLY, REPLYHEADER);
878 if (NasVerbose < 1)
879 return;
880 printfield(buf, 2, 2, CARD16, "sequence number");
881 printfield(buf, 4, 4, DVALUE4((n + p) / 4), "reply length");
882 }
883
884 void
AudioQueryExtension(const unsigned char * buf)885 AudioQueryExtension(const unsigned char *buf)
886 {
887 PrintField(buf, 0, 1, NASREQUEST, REQUESTHEADER);
888 if (NasVerbose < 1)
889 return;
890 if (NasVerbose > 1)
891 PrintField(SBf, 0, 4, CARD32, "sequence number");
892
893 printfield(buf, 2, 2, DVALUE2(8 + n), "request length");
894 }
895
896 void
AudioQueryExtensionReply(const unsigned char * buf)897 AudioQueryExtensionReply(const unsigned char *buf)
898 {
899 PrintField(RBf, 0, 1, NASREPLY, REPLYHEADER);
900 if (NasVerbose < 1)
901 return;
902 printfield(buf, 2, 2, CARD16, "sequence number");
903 printfield(buf, 4, 4, DVALUE4((n + p) / 4), "reply length");
904 }
905
906 void
AudioGetCloseDownMode(const unsigned char * buf)907 AudioGetCloseDownMode(const unsigned char *buf)
908 {
909 PrintField(buf, 0, 1, NASREQUEST, REQUESTHEADER);
910 if (NasVerbose < 1)
911 return;
912 if (NasVerbose > 1)
913 PrintField(SBf, 0, 4, CARD32, "sequence number");
914
915 printfield(buf, 2, 2, DVALUE2(8 + n), "request length");
916 }
917
918 void
AudioGetCloseDownModeReply(const unsigned char * buf)919 AudioGetCloseDownModeReply(const unsigned char *buf)
920 {
921 PrintField(RBf, 0, 1, NASREPLY, REPLYHEADER);
922 if (NasVerbose < 1)
923 return;
924 printfield(buf, 2, 2, CARD16, "sequence number");
925 printfield(buf, 4, 4, DVALUE4((n + p) / 4), "reply length");
926 }
927
928 void
AudioSetCloseDownMode(const unsigned char * buf)929 AudioSetCloseDownMode(const unsigned char *buf)
930 {
931 PrintField(buf, 0, 1, NASREQUEST, REQUESTHEADER);
932 if (NasVerbose < 1)
933 return;
934 if (NasVerbose > 1)
935 PrintField(SBf, 0, 4, CARD32, "sequence number");
936
937 printfield(buf, 2, 2, DVALUE2(8 + n), "request length");
938 }
939
940 void
AudioKillClient(const unsigned char * buf)941 AudioKillClient(const unsigned char *buf)
942 {
943 PrintField(buf, 0, 1, NASREQUEST, REQUESTHEADER);
944 if (NasVerbose < 1)
945 return;
946 if (NasVerbose > 1)
947 PrintField(SBf, 0, 4, CARD32, "sequence number");
948
949 printfield(buf, 2, 2, DVALUE2(8 + n), "request length");
950 }
951
952 void
AudioGetServerTime(const unsigned char * buf)953 AudioGetServerTime(const unsigned char *buf)
954 {
955 PrintField(buf, 0, 1, NASREQUEST, REQUESTHEADER);
956 if (NasVerbose < 1)
957 return;
958 if (NasVerbose > 1)
959 PrintField(SBf, 0, 4, CARD32, "sequence number");
960
961 printfield(buf, 2, 2, DVALUE2(8 + n), "request length");
962 }
963
964 void
AudioGetServerTimeReply(const unsigned char * buf)965 AudioGetServerTimeReply(const unsigned char *buf)
966 {
967 PrintField(RBf, 0, 1, NASREPLY, REPLYHEADER);
968 if (NasVerbose < 1)
969 return;
970 printfield(buf, 2, 2, CARD16, "sequence number");
971 printfield(buf, 4, 4, DVALUE4((n + p) / 4), "reply length");
972 }
973
974 void
AudioNoOperation(const unsigned char * buf)975 AudioNoOperation(const unsigned char *buf)
976 {
977 PrintField(buf, 0, 1, NASREQUEST, REQUESTHEADER);
978 if (NasVerbose < 1)
979 return;
980 if (NasVerbose > 1)
981 PrintField(SBf, 0, 4, CARD32, "sequence number");
982
983 printfield(buf, 2, 2, DVALUE2(8 + n), "request length");
984 }
985