nexmon – Blame information for rev 1
?pathlinks?
Rev | Author | Line No. | Line |
---|---|---|---|
1 | office | 1 | #!/usr/bin/env python |
2 | |||
3 | """ |
||
4 | Creates C code from a table of NCP type 0x2222 packet types. |
||
5 | (And 0x3333, which are the replies, but the packets are more commonly |
||
6 | refered to as type 0x2222; the 0x3333 replies are understood to be |
||
7 | part of the 0x2222 "family") |
||
8 | |||
9 | The data-munging code was written by Gilbert Ramirez. |
||
10 | The NCP data comes from Greg Morris <GMORRIS@novell.com>. |
||
11 | Many thanks to Novell for letting him work on this. |
||
12 | |||
13 | Additional data sources: |
||
14 | "Programmer's Guide to the NetWare Core Protocol" by Steve Conner and Dianne Conner. |
||
15 | |||
16 | Novell provides info at: |
||
17 | |||
18 | http://developer.novell.com/ndk/ncp.htm (where you can download an |
||
19 | *.exe file which installs a PDF, although you may have to create a login |
||
20 | to do this) |
||
21 | |||
22 | or |
||
23 | |||
24 | http://developer.novell.com/ndk/doc/ncp/ |
||
25 | for a badly-formatted HTML version of the same PDF. |
||
26 | |||
27 | |||
28 | Portions Copyright (c) 2000-2002 by Gilbert Ramirez <gram@alumni.rice.edu>. |
||
29 | Portions Copyright (c) Novell, Inc. 2000-2003. |
||
30 | |||
31 | This program is free software; you can redistribute it and/or |
||
32 | modify it under the terms of the GNU General Public License |
||
33 | as published by the Free Software Foundation; either version 2 |
||
34 | of the License, or (at your option) any later version. |
||
35 | |||
36 | This program is distributed in the hope that it will be useful, |
||
37 | but WITHOUT ANY WARRANTY; without even the implied warranty of |
||
38 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
||
39 | GNU General Public License for more details. |
||
40 | |||
41 | You should have received a copy of the GNU General Public License |
||
42 | along with this program; if not, write to the Free Software |
||
43 | Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. |
||
44 | """ |
||
45 | |||
46 | import os |
||
47 | import sys |
||
48 | import string |
||
49 | import getopt |
||
50 | import traceback |
||
51 | |||
52 | errors = {} |
||
53 | groups = {} |
||
54 | packets = [] |
||
55 | compcode_lists = None |
||
56 | ptvc_lists = None |
||
57 | msg = None |
||
58 | reply_var = None |
||
59 | #ensure unique expert function declarations |
||
60 | expert_hash = {} |
||
61 | |||
62 | REC_START = 0 |
||
63 | REC_LENGTH = 1 |
||
64 | REC_FIELD = 2 |
||
65 | REC_ENDIANNESS = 3 |
||
66 | REC_VAR = 4 |
||
67 | REC_REPEAT = 5 |
||
68 | REC_REQ_COND = 6 |
||
69 | REC_INFO_STR = 7 |
||
70 | |||
71 | NO_VAR = -1 |
||
72 | NO_REPEAT = -1 |
||
73 | NO_REQ_COND = -1 |
||
74 | NO_LENGTH_CHECK = -2 |
||
75 | |||
76 | |||
77 | PROTO_LENGTH_UNKNOWN = -1 |
||
78 | |||
79 | global_highest_var = -1 |
||
80 | global_req_cond = {} |
||
81 | |||
82 | |||
83 | REQ_COND_SIZE_VARIABLE = "REQ_COND_SIZE_VARIABLE" |
||
84 | REQ_COND_SIZE_CONSTANT = "REQ_COND_SIZE_CONSTANT" |
||
85 | |||
86 | ############################################################################## |
||
87 | # Global containers |
||
88 | ############################################################################## |
||
89 | |||
90 | class UniqueCollection: |
||
91 | """The UniqueCollection class stores objects which can be compared to other |
||
92 | objects of the same class. If two objects in the collection are equivalent, |
||
93 | only one is stored.""" |
||
94 | |||
95 | def __init__(self, name): |
||
96 | "Constructor" |
||
97 | self.name = name |
||
98 | self.members = [] |
||
99 | self.member_reprs = {} |
||
100 | |||
101 | def Add(self, object): |
||
102 | """Add an object to the members lists, if a comparable object |
||
103 | doesn't already exist. The object that is in the member list, that is |
||
104 | either the object that was added or the comparable object that was |
||
105 | already in the member list, is returned.""" |
||
106 | |||
107 | r = repr(object) |
||
108 | # Is 'object' a duplicate of some other member? |
||
109 | if r in self.member_reprs: |
||
110 | return self.member_reprs[r] |
||
111 | else: |
||
112 | self.member_reprs[r] = object |
||
113 | self.members.append(object) |
||
114 | return object |
||
115 | |||
116 | def Members(self): |
||
117 | "Returns the list of members." |
||
118 | return self.members |
||
119 | |||
120 | def HasMember(self, object): |
||
121 | "Does the list of members contain the object?" |
||
122 | if repr(object) in self.member_reprs: |
||
123 | return 1 |
||
124 | else: |
||
125 | return 0 |
||
126 | |||
127 | # This list needs to be defined before the NCP types are defined, |
||
128 | # because the NCP types are defined in the global scope, not inside |
||
129 | # a function's scope. |
||
130 | ptvc_lists = UniqueCollection('PTVC Lists') |
||
131 | |||
132 | ############################################################################## |
||
133 | |||
134 | class NamedList: |
||
135 | "NamedList's keep track of PTVC's and Completion Codes" |
||
136 | def __init__(self, name, list): |
||
137 | "Constructor" |
||
138 | self.name = name |
||
139 | self.list = list |
||
140 | |||
141 | def __cmp__(self, other): |
||
142 | "Compare this NamedList to another" |
||
143 | |||
144 | if isinstance(other, NamedList): |
||
145 | return cmp(self.list, other.list) |
||
146 | else: |
||
147 | return 0 |
||
148 | |||
149 | |||
150 | def Name(self, new_name = None): |
||
151 | "Get/Set name of list" |
||
152 | if new_name != None: |
||
153 | self.name = new_name |
||
154 | return self.name |
||
155 | |||
156 | def Records(self): |
||
157 | "Returns record lists" |
||
158 | return self.list |
||
159 | |||
160 | def Null(self): |
||
161 | "Is there no list (different from an empty list)?" |
||
162 | return self.list == None |
||
163 | |||
164 | def Empty(self): |
||
165 | "It the list empty (different from a null list)?" |
||
166 | assert(not self.Null()) |
||
167 | |||
168 | if self.list: |
||
169 | return 0 |
||
170 | else: |
||
171 | return 1 |
||
172 | |||
173 | def __repr__(self): |
||
174 | return repr(self.list) |
||
175 | |||
176 | class PTVC(NamedList): |
||
177 | """ProtoTree TVBuff Cursor List ("PTVC List") Class""" |
||
178 | |||
179 | def __init__(self, name, records, code): |
||
180 | "Constructor" |
||
181 | NamedList.__init__(self, name, []) |
||
182 | |||
183 | global global_highest_var |
||
184 | |||
185 | expected_offset = None |
||
186 | highest_var = -1 |
||
187 | |||
188 | named_vars = {} |
||
189 | |||
190 | # Make a PTVCRecord object for each list in 'records' |
||
191 | for record in records: |
||
192 | offset = record[REC_START] |
||
193 | length = record[REC_LENGTH] |
||
194 | field = record[REC_FIELD] |
||
195 | endianness = record[REC_ENDIANNESS] |
||
196 | info_str = record[REC_INFO_STR] |
||
197 | |||
198 | # Variable |
||
199 | var_name = record[REC_VAR] |
||
200 | if var_name: |
||
201 | # Did we already define this var? |
||
202 | if var_name in named_vars: |
||
203 | sys.exit("%s has multiple %s vars." % \ |
||
204 | (name, var_name)) |
||
205 | |||
206 | highest_var = highest_var + 1 |
||
207 | var = highest_var |
||
208 | if highest_var > global_highest_var: |
||
209 | global_highest_var = highest_var |
||
210 | named_vars[var_name] = var |
||
211 | else: |
||
212 | var = NO_VAR |
||
213 | |||
214 | # Repeat |
||
215 | repeat_name = record[REC_REPEAT] |
||
216 | if repeat_name: |
||
217 | # Do we have this var? |
||
218 | if repeat_name not in named_vars: |
||
219 | sys.exit("%s does not have %s var defined." % \ |
||
220 | (name, repeat_name)) |
||
221 | repeat = named_vars[repeat_name] |
||
222 | else: |
||
223 | repeat = NO_REPEAT |
||
224 | |||
225 | # Request Condition |
||
226 | req_cond = record[REC_REQ_COND] |
||
227 | if req_cond != NO_REQ_COND: |
||
228 | global_req_cond[req_cond] = None |
||
229 | |||
230 | ptvc_rec = PTVCRecord(field, length, endianness, var, repeat, req_cond, info_str, code) |
||
231 | |||
232 | if expected_offset == None: |
||
233 | expected_offset = offset |
||
234 | |||
235 | elif expected_offset == -1: |
||
236 | pass |
||
237 | |||
238 | elif expected_offset != offset and offset != -1: |
||
239 | msg.write("Expected offset in %s for %s to be %d\n" % \ |
||
240 | (name, field.HFName(), expected_offset)) |
||
241 | sys.exit(1) |
||
242 | |||
243 | # We can't make a PTVC list from a variable-length |
||
244 | # packet, unless the fields can tell us at run time |
||
245 | # how long the packet is. That is, nstring8 is fine, since |
||
246 | # the field has an integer telling us how long the string is. |
||
247 | # Fields that don't have a length determinable at run-time |
||
248 | # cannot be variable-length. |
||
249 | if type(ptvc_rec.Length()) == type(()): |
||
250 | if isinstance(ptvc_rec.Field(), nstring): |
||
251 | expected_offset = -1 |
||
252 | pass |
||
253 | elif isinstance(ptvc_rec.Field(), nbytes): |
||
254 | expected_offset = -1 |
||
255 | pass |
||
256 | elif isinstance(ptvc_rec.Field(), struct): |
||
257 | expected_offset = -1 |
||
258 | pass |
||
259 | else: |
||
260 | field = ptvc_rec.Field() |
||
261 | assert 0, "Cannot make PTVC from %s, type %s" % \ |
||
262 | (field.HFName(), field) |
||
263 | |||
264 | elif expected_offset > -1: |
||
265 | if ptvc_rec.Length() < 0: |
||
266 | expected_offset = -1 |
||
267 | else: |
||
268 | expected_offset = expected_offset + ptvc_rec.Length() |
||
269 | |||
270 | |||
271 | self.list.append(ptvc_rec) |
||
272 | |||
273 | def ETTName(self): |
||
274 | return "ett_%s" % (self.Name(),) |
||
275 | |||
276 | |||
277 | def Code(self): |
||
278 | x = "static const ptvc_record %s[] = {\n" % (self.Name()) |
||
279 | for ptvc_rec in self.list: |
||
280 | x = x + " %s,\n" % (ptvc_rec.Code()) |
||
281 | x = x + " { NULL, 0, NULL, NULL, NO_ENDIANNESS, NO_VAR, NO_REPEAT, NO_REQ_COND }\n" |
||
282 | x = x + "};\n" |
||
283 | return x |
||
284 | |||
285 | def __repr__(self): |
||
286 | x = "" |
||
287 | for ptvc_rec in self.list: |
||
288 | x = x + repr(ptvc_rec) |
||
289 | return x |
||
290 | |||
291 | |||
292 | class PTVCBitfield(PTVC): |
||
293 | def __init__(self, name, vars): |
||
294 | NamedList.__init__(self, name, []) |
||
295 | |||
296 | for var in vars: |
||
297 | ptvc_rec = PTVCRecord(var, var.Length(), var.Endianness(), |
||
298 | NO_VAR, NO_REPEAT, NO_REQ_COND, None, 0) |
||
299 | self.list.append(ptvc_rec) |
||
300 | |||
301 | def Code(self): |
||
302 | ett_name = self.ETTName() |
||
303 | x = "static gint %s = -1;\n" % (ett_name,) |
||
304 | |||
305 | x = x + "static const ptvc_record ptvc_%s[] = {\n" % (self.Name()) |
||
306 | for ptvc_rec in self.list: |
||
307 | x = x + " %s,\n" % (ptvc_rec.Code()) |
||
308 | x = x + " { NULL, 0, NULL, NULL, NO_ENDIANNESS, NO_VAR, NO_REPEAT, NO_REQ_COND }\n" |
||
309 | x = x + "};\n" |
||
310 | |||
311 | x = x + "static const sub_ptvc_record %s = {\n" % (self.Name(),) |
||
312 | x = x + " &%s,\n" % (ett_name,) |
||
313 | x = x + " NULL,\n" |
||
314 | x = x + " ptvc_%s,\n" % (self.Name(),) |
||
315 | x = x + "};\n" |
||
316 | return x |
||
317 | |||
318 | |||
319 | class PTVCRecord: |
||
320 | def __init__(self, field, length, endianness, var, repeat, req_cond, info_str, code): |
||
321 | "Constructor" |
||
322 | self.field = field |
||
323 | self.length = length |
||
324 | self.endianness = endianness |
||
325 | self.var = var |
||
326 | self.repeat = repeat |
||
327 | self.req_cond = req_cond |
||
328 | self.req_info_str = info_str |
||
329 | self.__code__ = code |
||
330 | |||
331 | def __cmp__(self, other): |
||
332 | "Comparison operator" |
||
333 | if self.field != other.field: |
||
334 | return 1 |
||
335 | elif self.length < other.length: |
||
336 | return -1 |
||
337 | elif self.length > other.length: |
||
338 | return 1 |
||
339 | elif self.endianness != other.endianness: |
||
340 | return 1 |
||
341 | else: |
||
342 | return 0 |
||
343 | |||
344 | def Code(self): |
||
345 | # Nice textual representations |
||
346 | if self.var == NO_VAR: |
||
347 | var = "NO_VAR" |
||
348 | else: |
||
349 | var = self.var |
||
350 | |||
351 | if self.repeat == NO_REPEAT: |
||
352 | repeat = "NO_REPEAT" |
||
353 | else: |
||
354 | repeat = self.repeat |
||
355 | |||
356 | if self.req_cond == NO_REQ_COND: |
||
357 | req_cond = "NO_REQ_COND" |
||
358 | else: |
||
359 | req_cond = global_req_cond[self.req_cond] |
||
360 | assert req_cond != None |
||
361 | |||
362 | if isinstance(self.field, struct): |
||
363 | return self.field.ReferenceString(var, repeat, req_cond) |
||
364 | else: |
||
365 | return self.RegularCode(var, repeat, req_cond) |
||
366 | |||
367 | def InfoStrName(self): |
||
368 | "Returns a C symbol based on the NCP function code, for the info_str" |
||
369 | return "info_str_0x%x" % (self.__code__) |
||
370 | |||
371 | def RegularCode(self, var, repeat, req_cond): |
||
372 | "String representation" |
||
373 | endianness = 'ENC_BIG_ENDIAN' |
||
374 | if self.endianness == ENC_LITTLE_ENDIAN: |
||
375 | endianness = 'ENC_LITTLE_ENDIAN' |
||
376 | |||
377 | length = None |
||
378 | |||
379 | if type(self.length) == type(0): |
||
380 | length = self.length |
||
381 | else: |
||
382 | # This is for cases where a length is needed |
||
383 | # in order to determine a following variable-length, |
||
384 | # like nstring8, where 1 byte is needed in order |
||
385 | # to determine the variable length. |
||
386 | var_length = self.field.Length() |
||
387 | if var_length > 0: |
||
388 | length = var_length |
||
389 | |||
390 | if length == PROTO_LENGTH_UNKNOWN: |
||
391 | # XXX length = "PROTO_LENGTH_UNKNOWN" |
||
392 | pass |
||
393 | |||
394 | assert length, "Length not handled for %s" % (self.field.HFName(),) |
||
395 | |||
396 | sub_ptvc_name = self.field.PTVCName() |
||
397 | if sub_ptvc_name != "NULL": |
||
398 | sub_ptvc_name = "&%s" % (sub_ptvc_name,) |
||
399 | |||
400 | if self.req_info_str: |
||
401 | req_info_str = "&" + self.InfoStrName() + "_req" |
||
402 | else: |
||
403 | req_info_str = "NULL" |
||
404 | |||
405 | return "{ &%s, %s, %s, %s, %s, %s, %s, %s }" % \ |
||
406 | (self.field.HFName(), length, sub_ptvc_name, |
||
407 | req_info_str, endianness, var, repeat, req_cond) |
||
408 | |||
409 | def Offset(self): |
||
410 | return self.offset |
||
411 | |||
412 | def Length(self): |
||
413 | return self.length |
||
414 | |||
415 | def Field(self): |
||
416 | return self.field |
||
417 | |||
418 | def __repr__(self): |
||
419 | if self.req_info_str: |
||
420 | return "{%s len=%s end=%s var=%s rpt=%s rqc=%s info=%s}" % \ |
||
421 | (self.field.HFName(), self.length, |
||
422 | self.endianness, self.var, self.repeat, self.req_cond, self.req_info_str[1]) |
||
423 | else: |
||
424 | return "{%s len=%s end=%s var=%s rpt=%s rqc=%s}" % \ |
||
425 | (self.field.HFName(), self.length, |
||
426 | self.endianness, self.var, self.repeat, self.req_cond) |
||
427 | |||
428 | ############################################################################## |
||
429 | |||
430 | class NCP: |
||
431 | "NCP Packet class" |
||
432 | def __init__(self, func_code, description, group, has_length=1): |
||
433 | "Constructor" |
||
434 | self.__code__ = func_code |
||
435 | self.description = description |
||
436 | self.group = group |
||
437 | self.codes = None |
||
438 | self.request_records = None |
||
439 | self.reply_records = None |
||
440 | self.has_length = has_length |
||
441 | self.req_cond_size = None |
||
442 | self.req_info_str = None |
||
443 | self.expert_func = None |
||
444 | |||
445 | if group not in groups: |
||
446 | msg.write("NCP 0x%x has invalid group '%s'\n" % \ |
||
447 | (self.__code__, group)) |
||
448 | sys.exit(1) |
||
449 | |||
450 | if self.HasSubFunction(): |
||
451 | # NCP Function with SubFunction |
||
452 | self.start_offset = 10 |
||
453 | else: |
||
454 | # Simple NCP Function |
||
455 | self.start_offset = 7 |
||
456 | |||
457 | def ReqCondSize(self): |
||
458 | return self.req_cond_size |
||
459 | |||
460 | def ReqCondSizeVariable(self): |
||
461 | self.req_cond_size = REQ_COND_SIZE_VARIABLE |
||
462 | |||
463 | def ReqCondSizeConstant(self): |
||
464 | self.req_cond_size = REQ_COND_SIZE_CONSTANT |
||
465 | |||
466 | def FunctionCode(self, part=None): |
||
467 | "Returns the function code for this NCP packet." |
||
468 | if part == None: |
||
469 | return self.__code__ |
||
470 | elif part == 'high': |
||
471 | if self.HasSubFunction(): |
||
472 | return (self.__code__ & 0xff00) >> 8 |
||
473 | else: |
||
474 | return self.__code__ |
||
475 | elif part == 'low': |
||
476 | if self.HasSubFunction(): |
||
477 | return self.__code__ & 0x00ff |
||
478 | else: |
||
479 | return 0x00 |
||
480 | else: |
||
481 | msg.write("Unknown directive '%s' for function_code()\n" % (part)) |
||
482 | sys.exit(1) |
||
483 | |||
484 | def HasSubFunction(self): |
||
485 | "Does this NPC packet require a subfunction field?" |
||
486 | if self.__code__ <= 0xff: |
||
487 | return 0 |
||
488 | else: |
||
489 | return 1 |
||
490 | |||
491 | def HasLength(self): |
||
492 | return self.has_length |
||
493 | |||
494 | def Description(self): |
||
495 | return self.description |
||
496 | |||
497 | def Group(self): |
||
498 | return self.group |
||
499 | |||
500 | def PTVCRequest(self): |
||
501 | return self.ptvc_request |
||
502 | |||
503 | def PTVCReply(self): |
||
504 | return self.ptvc_reply |
||
505 | |||
506 | def Request(self, size, records=[], **kwargs): |
||
507 | self.request_size = size |
||
508 | self.request_records = records |
||
509 | if self.HasSubFunction(): |
||
510 | if self.HasLength(): |
||
511 | self.CheckRecords(size, records, "Request", 10) |
||
512 | else: |
||
513 | self.CheckRecords(size, records, "Request", 8) |
||
514 | else: |
||
515 | self.CheckRecords(size, records, "Request", 7) |
||
516 | self.ptvc_request = self.MakePTVC(records, "request", self.__code__) |
||
517 | |||
518 | if "info_str" in kwargs: |
||
519 | self.req_info_str = kwargs["info_str"] |
||
520 | |||
521 | def Reply(self, size, records=[]): |
||
522 | self.reply_size = size |
||
523 | self.reply_records = records |
||
524 | self.CheckRecords(size, records, "Reply", 8) |
||
525 | self.ptvc_reply = self.MakePTVC(records, "reply", self.__code__) |
||
526 | |||
527 | def CheckRecords(self, size, records, descr, min_hdr_length): |
||
528 | "Simple sanity check" |
||
529 | if size == NO_LENGTH_CHECK: |
||
530 | return |
||
531 | min = size |
||
532 | max = size |
||
533 | if type(size) == type(()): |
||
534 | min = size[0] |
||
535 | max = size[1] |
||
536 | |||
537 | lower = min_hdr_length |
||
538 | upper = min_hdr_length |
||
539 | |||
540 | for record in records: |
||
541 | rec_size = record[REC_LENGTH] |
||
542 | rec_lower = rec_size |
||
543 | rec_upper = rec_size |
||
544 | if type(rec_size) == type(()): |
||
545 | rec_lower = rec_size[0] |
||
546 | rec_upper = rec_size[1] |
||
547 | |||
548 | lower = lower + rec_lower |
||
549 | upper = upper + rec_upper |
||
550 | |||
551 | error = 0 |
||
552 | if min != lower: |
||
553 | msg.write("%s records for 2222/0x%x sum to %d bytes minimum, but param1 shows %d\n" \ |
||
554 | % (descr, self.FunctionCode(), lower, min)) |
||
555 | error = 1 |
||
556 | if max != upper: |
||
557 | msg.write("%s records for 2222/0x%x sum to %d bytes maximum, but param1 shows %d\n" \ |
||
558 | % (descr, self.FunctionCode(), upper, max)) |
||
559 | error = 1 |
||
560 | |||
561 | if error == 1: |
||
562 | sys.exit(1) |
||
563 | |||
564 | |||
565 | def MakePTVC(self, records, name_suffix, code): |
||
566 | """Makes a PTVC out of a request or reply record list. Possibly adds |
||
567 | it to the global list of PTVCs (the global list is a UniqueCollection, |
||
568 | so an equivalent PTVC may already be in the global list).""" |
||
569 | |||
570 | name = "%s_%s" % (self.CName(), name_suffix) |
||
571 | #if any individual record has an info_str, bubble it up to the top |
||
572 | #so an info_string_t can be created for it |
||
573 | for record in records: |
||
574 | if record[REC_INFO_STR]: |
||
575 | self.req_info_str = record[REC_INFO_STR] |
||
576 | |||
577 | ptvc = PTVC(name, records, code) |
||
578 | |||
579 | #if the record is a duplicate, remove the req_info_str so |
||
580 | #that an unused info_string isn't generated |
||
581 | remove_info = 0 |
||
582 | if ptvc_lists.HasMember(ptvc): |
||
583 | if 'info' in repr(ptvc): |
||
584 | remove_info = 1 |
||
585 | |||
586 | ptvc_test = ptvc_lists.Add(ptvc) |
||
587 | |||
588 | if remove_info: |
||
589 | self.req_info_str = None |
||
590 | |||
591 | return ptvc_test |
||
592 | |||
593 | def CName(self): |
||
594 | "Returns a C symbol based on the NCP function code" |
||
595 | return "ncp_0x%x" % (self.__code__) |
||
596 | |||
597 | def InfoStrName(self): |
||
598 | "Returns a C symbol based on the NCP function code, for the info_str" |
||
599 | return "info_str_0x%x" % (self.__code__) |
||
600 | |||
601 | def MakeExpert(self, func): |
||
602 | self.expert_func = func |
||
603 | expert_hash[func] = func |
||
604 | |||
605 | def Variables(self): |
||
606 | """Returns a list of variables used in the request and reply records. |
||
607 | A variable is listed only once, even if it is used twice (once in |
||
608 | the request, once in the reply).""" |
||
609 | |||
610 | variables = {} |
||
611 | if self.request_records: |
||
612 | for record in self.request_records: |
||
613 | var = record[REC_FIELD] |
||
614 | variables[var.HFName()] = var |
||
615 | |||
616 | sub_vars = var.SubVariables() |
||
617 | for sv in sub_vars: |
||
618 | variables[sv.HFName()] = sv |
||
619 | |||
620 | if self.reply_records: |
||
621 | for record in self.reply_records: |
||
622 | var = record[REC_FIELD] |
||
623 | variables[var.HFName()] = var |
||
624 | |||
625 | sub_vars = var.SubVariables() |
||
626 | for sv in sub_vars: |
||
627 | variables[sv.HFName()] = sv |
||
628 | |||
629 | return list(variables.values()) |
||
630 | |||
631 | def CalculateReqConds(self): |
||
632 | """Returns a list of request conditions (dfilter text) used |
||
633 | in the reply records. A request condition is listed only once,""" |
||
634 | texts = {} |
||
635 | if self.reply_records: |
||
636 | for record in self.reply_records: |
||
637 | text = record[REC_REQ_COND] |
||
638 | if text != NO_REQ_COND: |
||
639 | texts[text] = None |
||
640 | |||
641 | if len(texts) == 0: |
||
642 | self.req_conds = None |
||
643 | return None |
||
644 | |||
645 | dfilter_texts = list(texts.keys()) |
||
646 | dfilter_texts.sort() |
||
647 | name = "%s_req_cond_indexes" % (self.CName(),) |
||
648 | return NamedList(name, dfilter_texts) |
||
649 | |||
650 | def GetReqConds(self): |
||
651 | return self.req_conds |
||
652 | |||
653 | def SetReqConds(self, new_val): |
||
654 | self.req_conds = new_val |
||
655 | |||
656 | |||
657 | def CompletionCodes(self, codes=None): |
||
658 | """Sets or returns the list of completion |
||
659 | codes. Internally, a NamedList is used to store the |
||
660 | completion codes, but the caller of this function never |
||
661 | realizes that because Python lists are the input and |
||
662 | output.""" |
||
663 | |||
664 | if codes == None: |
||
665 | return self.codes |
||
666 | |||
667 | # Sanity check |
||
668 | okay = 1 |
||
669 | for code in codes: |
||
670 | if code not in errors: |
||
671 | msg.write("Errors table does not have key 0x%04x for NCP=0x%x\n" % (code, |
||
672 | self.__code__)) |
||
673 | okay = 0 |
||
674 | |||
675 | # Delay the exit until here so that the programmer can get |
||
676 | # the complete list of missing error codes |
||
677 | if not okay: |
||
678 | sys.exit(1) |
||
679 | |||
680 | # Create CompletionCode (NamedList) object and possible |
||
681 | # add it to the global list of completion code lists. |
||
682 | name = "%s_errors" % (self.CName(),) |
||
683 | codes.sort() |
||
684 | codes_list = NamedList(name, codes) |
||
685 | self.codes = compcode_lists.Add(codes_list) |
||
686 | |||
687 | self.Finalize() |
||
688 | |||
689 | def Finalize(self): |
||
690 | """Adds the NCP object to the global collection of NCP |
||
691 | objects. This is done automatically after setting the |
||
692 | CompletionCode list. Yes, this is a shortcut, but it makes |
||
693 | our list of NCP packet definitions look neater, since an |
||
694 | explicit "add to global list of packets" is not needed.""" |
||
695 | |||
696 | # Add packet to global collection of packets |
||
697 | packets.append(self) |
||
698 | |||
699 | def rec(start, length, field, endianness=None, **kw): |
||
700 | return _rec(start, length, field, endianness, kw) |
||
701 | |||
702 | def srec(field, endianness=None, **kw): |
||
703 | return _rec(-1, -1, field, endianness, kw) |
||
704 | |||
705 | def _rec(start, length, field, endianness, kw): |
||
706 | # If endianness not explicitly given, use the field's |
||
707 | # default endiannes. |
||
708 | if endianness == None: |
||
709 | endianness = field.Endianness() |
||
710 | |||
711 | # Setting a var? |
||
712 | if "var" in kw: |
||
713 | # Is the field an INT ? |
||
714 | if not isinstance(field, CountingNumber): |
||
715 | sys.exit("Field %s used as count variable, but not integer." \ |
||
716 | % (field.HFName())) |
||
717 | var = kw["var"] |
||
718 | else: |
||
719 | var = None |
||
720 | |||
721 | # If 'var' not used, 'repeat' can be used. |
||
722 | if not var and "repeat" in kw: |
||
723 | repeat = kw["repeat"] |
||
724 | else: |
||
725 | repeat = None |
||
726 | |||
727 | # Request-condition ? |
||
728 | if "req_cond" in kw: |
||
729 | req_cond = kw["req_cond"] |
||
730 | else: |
||
731 | req_cond = NO_REQ_COND |
||
732 | |||
733 | if "info_str" in kw: |
||
734 | req_info_str = kw["info_str"] |
||
735 | else: |
||
736 | req_info_str = None |
||
737 | |||
738 | return [start, length, field, endianness, var, repeat, req_cond, req_info_str] |
||
739 | |||
740 | |||
741 | |||
742 | ############################################################################## |
||
743 | |||
744 | ENC_LITTLE_ENDIAN = 1 # Little-Endian |
||
745 | ENC_BIG_ENDIAN = 0 # Big-Endian |
||
746 | NA = -1 # Not Applicable |
||
747 | |||
748 | class Type: |
||
749 | " Virtual class for NCP field types" |
||
750 | type = "Type" |
||
751 | ftype = None |
||
752 | disp = "BASE_DEC" |
||
753 | custom_func = None |
||
754 | endianness = NA |
||
755 | values = [] |
||
756 | |||
757 | def __init__(self, abbrev, descr, bytes, endianness = NA): |
||
758 | self.abbrev = abbrev |
||
759 | self.descr = descr |
||
760 | self.bytes = bytes |
||
761 | self.endianness = endianness |
||
762 | self.hfname = "hf_ncp_" + self.abbrev |
||
763 | |||
764 | def Length(self): |
||
765 | return self.bytes |
||
766 | |||
767 | def Abbreviation(self): |
||
768 | return self.abbrev |
||
769 | |||
770 | def Description(self): |
||
771 | return self.descr |
||
772 | |||
773 | def HFName(self): |
||
774 | return self.hfname |
||
775 | |||
776 | def DFilter(self): |
||
777 | return "ncp." + self.abbrev |
||
778 | |||
779 | def WiresharkFType(self): |
||
780 | return self.ftype |
||
781 | |||
782 | def Display(self, newval=None): |
||
783 | if newval != None: |
||
784 | self.disp = newval |
||
785 | return self.disp |
||
786 | |||
787 | def ValuesName(self): |
||
788 | if self.custom_func: |
||
789 | return "CF_FUNC(" + self.custom_func + ")" |
||
790 | else: |
||
791 | return "NULL" |
||
792 | |||
793 | def Mask(self): |
||
794 | return 0 |
||
795 | |||
796 | def Endianness(self): |
||
797 | return self.endianness |
||
798 | |||
799 | def SubVariables(self): |
||
800 | return [] |
||
801 | |||
802 | def PTVCName(self): |
||
803 | return "NULL" |
||
804 | |||
805 | def NWDate(self): |
||
806 | self.disp = "BASE_CUSTOM" |
||
807 | self.custom_func = "padd_date" |
||
808 | |||
809 | def NWTime(self): |
||
810 | self.disp = "BASE_CUSTOM" |
||
811 | self.custom_func = "padd_time" |
||
812 | |||
813 | #def __cmp__(self, other): |
||
814 | # return cmp(self.hfname, other.hfname) |
||
815 | |||
816 | def __lt__(self, other): |
||
817 | return (self.hfname < other.hfname) |
||
818 | |||
819 | class struct(PTVC, Type): |
||
820 | def __init__(self, name, items, descr=None): |
||
821 | name = "struct_%s" % (name,) |
||
822 | NamedList.__init__(self, name, []) |
||
823 | |||
824 | self.bytes = 0 |
||
825 | self.descr = descr |
||
826 | for item in items: |
||
827 | if isinstance(item, Type): |
||
828 | field = item |
||
829 | length = field.Length() |
||
830 | endianness = field.Endianness() |
||
831 | var = NO_VAR |
||
832 | repeat = NO_REPEAT |
||
833 | req_cond = NO_REQ_COND |
||
834 | elif type(item) == type([]): |
||
835 | field = item[REC_FIELD] |
||
836 | length = item[REC_LENGTH] |
||
837 | endianness = item[REC_ENDIANNESS] |
||
838 | var = item[REC_VAR] |
||
839 | repeat = item[REC_REPEAT] |
||
840 | req_cond = item[REC_REQ_COND] |
||
841 | else: |
||
842 | assert 0, "Item %s item not handled." % (item,) |
||
843 | |||
844 | ptvc_rec = PTVCRecord(field, length, endianness, var, |
||
845 | repeat, req_cond, None, 0) |
||
846 | self.list.append(ptvc_rec) |
||
847 | self.bytes = self.bytes + field.Length() |
||
848 | |||
849 | self.hfname = self.name |
||
850 | |||
851 | def Variables(self): |
||
852 | vars = [] |
||
853 | for ptvc_rec in self.list: |
||
854 | vars.append(ptvc_rec.Field()) |
||
855 | return vars |
||
856 | |||
857 | def ReferenceString(self, var, repeat, req_cond): |
||
858 | return "{ PTVC_STRUCT, NO_LENGTH, &%s, NULL, NO_ENDIANNESS, %s, %s, %s }" % \ |
||
859 | (self.name, var, repeat, req_cond) |
||
860 | |||
861 | def Code(self): |
||
862 | ett_name = self.ETTName() |
||
863 | x = "static gint %s = -1;\n" % (ett_name,) |
||
864 | x = x + "static const ptvc_record ptvc_%s[] = {\n" % (self.name,) |
||
865 | for ptvc_rec in self.list: |
||
866 | x = x + " %s,\n" % (ptvc_rec.Code()) |
||
867 | x = x + " { NULL, NO_LENGTH, NULL, NULL, NO_ENDIANNESS, NO_VAR, NO_REPEAT, NO_REQ_COND }\n" |
||
868 | x = x + "};\n" |
||
869 | |||
870 | x = x + "static const sub_ptvc_record %s = {\n" % (self.name,) |
||
871 | x = x + " &%s,\n" % (ett_name,) |
||
872 | if self.descr: |
||
873 | x = x + ' "%s",\n' % (self.descr,) |
||
874 | else: |
||
875 | x = x + " NULL,\n" |
||
876 | x = x + " ptvc_%s,\n" % (self.Name(),) |
||
877 | x = x + "};\n" |
||
878 | return x |
||
879 | |||
880 | def __cmp__(self, other): |
||
881 | return cmp(self.HFName(), other.HFName()) |
||
882 | |||
883 | |||
884 | class byte(Type): |
||
885 | type = "byte" |
||
886 | ftype = "FT_UINT8" |
||
887 | def __init__(self, abbrev, descr): |
||
888 | Type.__init__(self, abbrev, descr, 1) |
||
889 | |||
890 | class CountingNumber: |
||
891 | pass |
||
892 | |||
893 | # Same as above. Both are provided for convenience |
||
894 | class uint8(Type, CountingNumber): |
||
895 | type = "uint8" |
||
896 | ftype = "FT_UINT8" |
||
897 | bytes = 1 |
||
898 | def __init__(self, abbrev, descr): |
||
899 | Type.__init__(self, abbrev, descr, 1) |
||
900 | |||
901 | class uint16(Type, CountingNumber): |
||
902 | type = "uint16" |
||
903 | ftype = "FT_UINT16" |
||
904 | def __init__(self, abbrev, descr, endianness = ENC_LITTLE_ENDIAN): |
||
905 | Type.__init__(self, abbrev, descr, 2, endianness) |
||
906 | |||
907 | class uint24(Type, CountingNumber): |
||
908 | type = "uint24" |
||
909 | ftype = "FT_UINT24" |
||
910 | def __init__(self, abbrev, descr, endianness = ENC_LITTLE_ENDIAN): |
||
911 | Type.__init__(self, abbrev, descr, 3, endianness) |
||
912 | |||
913 | class uint32(Type, CountingNumber): |
||
914 | type = "uint32" |
||
915 | ftype = "FT_UINT32" |
||
916 | def __init__(self, abbrev, descr, endianness = ENC_LITTLE_ENDIAN): |
||
917 | Type.__init__(self, abbrev, descr, 4, endianness) |
||
918 | |||
919 | class uint64(Type, CountingNumber): |
||
920 | type = "uint64" |
||
921 | ftype = "FT_UINT64" |
||
922 | def __init__(self, abbrev, descr, endianness = ENC_LITTLE_ENDIAN): |
||
923 | Type.__init__(self, abbrev, descr, 8, endianness) |
||
924 | |||
925 | class eptime(Type, CountingNumber): |
||
926 | type = "eptime" |
||
927 | ftype = "FT_ABSOLUTE_TIME" |
||
928 | disp = "ABSOLUTE_TIME_LOCAL" |
||
929 | def __init__(self, abbrev, descr, endianness = ENC_LITTLE_ENDIAN): |
||
930 | Type.__init__(self, abbrev, descr, 4, endianness) |
||
931 | |||
932 | class boolean8(uint8): |
||
933 | type = "boolean8" |
||
934 | ftype = "FT_BOOLEAN" |
||
935 | disp = "BASE_NONE" |
||
936 | |||
937 | class boolean16(uint16): |
||
938 | type = "boolean16" |
||
939 | ftype = "FT_BOOLEAN" |
||
940 | disp = "BASE_NONE" |
||
941 | |||
942 | class boolean24(uint24): |
||
943 | type = "boolean24" |
||
944 | ftype = "FT_BOOLEAN" |
||
945 | disp = "BASE_NONE" |
||
946 | |||
947 | class boolean32(uint32): |
||
948 | type = "boolean32" |
||
949 | ftype = "FT_BOOLEAN" |
||
950 | disp = "BASE_NONE" |
||
951 | |||
952 | class nstring: |
||
953 | pass |
||
954 | |||
955 | class nstring8(Type, nstring): |
||
956 | """A string of up to (2^8)-1 characters. The first byte |
||
957 | gives the string length.""" |
||
958 | |||
959 | type = "nstring8" |
||
960 | ftype = "FT_UINT_STRING" |
||
961 | disp = "BASE_NONE" |
||
962 | def __init__(self, abbrev, descr): |
||
963 | Type.__init__(self, abbrev, descr, 1) |
||
964 | |||
965 | class nstring16(Type, nstring): |
||
966 | """A string of up to (2^16)-2 characters. The first 2 bytes |
||
967 | gives the string length.""" |
||
968 | |||
969 | type = "nstring16" |
||
970 | ftype = "FT_UINT_STRING" |
||
971 | disp = "BASE_NONE" |
||
972 | def __init__(self, abbrev, descr, endianness = ENC_LITTLE_ENDIAN): |
||
973 | Type.__init__(self, abbrev, descr, 2, endianness) |
||
974 | |||
975 | class nstring32(Type, nstring): |
||
976 | """A string of up to (2^32)-4 characters. The first 4 bytes |
||
977 | gives the string length.""" |
||
978 | |||
979 | type = "nstring32" |
||
980 | ftype = "FT_UINT_STRING" |
||
981 | disp = "BASE_NONE" |
||
982 | def __init__(self, abbrev, descr, endianness = ENC_LITTLE_ENDIAN): |
||
983 | Type.__init__(self, abbrev, descr, 4, endianness) |
||
984 | |||
985 | class fw_string(Type): |
||
986 | """A fixed-width string of n bytes.""" |
||
987 | |||
988 | type = "fw_string" |
||
989 | disp = "BASE_NONE" |
||
990 | ftype = "FT_STRING" |
||
991 | |||
992 | def __init__(self, abbrev, descr, bytes): |
||
993 | Type.__init__(self, abbrev, descr, bytes) |
||
994 | |||
995 | |||
996 | class stringz(Type): |
||
997 | "NUL-terminated string, with a maximum length" |
||
998 | |||
999 | type = "stringz" |
||
1000 | disp = "BASE_NONE" |
||
1001 | ftype = "FT_STRINGZ" |
||
1002 | def __init__(self, abbrev, descr): |
||
1003 | Type.__init__(self, abbrev, descr, PROTO_LENGTH_UNKNOWN) |
||
1004 | |||
1005 | class val_string(Type): |
||
1006 | """Abstract class for val_stringN, where N is number |
||
1007 | of bits that key takes up.""" |
||
1008 | |||
1009 | type = "val_string" |
||
1010 | disp = 'BASE_HEX' |
||
1011 | |||
1012 | def __init__(self, abbrev, descr, val_string_array, endianness = ENC_LITTLE_ENDIAN): |
||
1013 | Type.__init__(self, abbrev, descr, self.bytes, endianness) |
||
1014 | self.values = val_string_array |
||
1015 | |||
1016 | def Code(self): |
||
1017 | result = "static const value_string %s[] = {\n" \ |
||
1018 | % (self.ValuesCName()) |
||
1019 | for val_record in self.values: |
||
1020 | value = val_record[0] |
||
1021 | text = val_record[1] |
||
1022 | value_repr = self.value_format % value |
||
1023 | result = result + ' { %s, "%s" },\n' \ |
||
1024 | % (value_repr, text) |
||
1025 | |||
1026 | value_repr = self.value_format % 0 |
||
1027 | result = result + " { %s, NULL },\n" % (value_repr) |
||
1028 | result = result + "};\n" |
||
1029 | REC_VAL_STRING_RES = self.value_format % value |
||
1030 | return result |
||
1031 | |||
1032 | def ValuesCName(self): |
||
1033 | return "ncp_%s_vals" % (self.abbrev) |
||
1034 | |||
1035 | def ValuesName(self): |
||
1036 | return "VALS(%s)" % (self.ValuesCName()) |
||
1037 | |||
1038 | class val_string8(val_string): |
||
1039 | type = "val_string8" |
||
1040 | ftype = "FT_UINT8" |
||
1041 | bytes = 1 |
||
1042 | value_format = "0x%02x" |
||
1043 | |||
1044 | class val_string16(val_string): |
||
1045 | type = "val_string16" |
||
1046 | ftype = "FT_UINT16" |
||
1047 | bytes = 2 |
||
1048 | value_format = "0x%04x" |
||
1049 | |||
1050 | class val_string32(val_string): |
||
1051 | type = "val_string32" |
||
1052 | ftype = "FT_UINT32" |
||
1053 | bytes = 4 |
||
1054 | value_format = "0x%08x" |
||
1055 | |||
1056 | class bytes(Type): |
||
1057 | type = 'bytes' |
||
1058 | disp = "BASE_NONE" |
||
1059 | ftype = 'FT_BYTES' |
||
1060 | |||
1061 | def __init__(self, abbrev, descr, bytes): |
||
1062 | Type.__init__(self, abbrev, descr, bytes, NA) |
||
1063 | |||
1064 | class nbytes: |
||
1065 | pass |
||
1066 | |||
1067 | class nbytes8(Type, nbytes): |
||
1068 | """A series of up to (2^8)-1 bytes. The first byte |
||
1069 | gives the byte-string length.""" |
||
1070 | |||
1071 | type = "nbytes8" |
||
1072 | ftype = "FT_UINT_BYTES" |
||
1073 | disp = "BASE_NONE" |
||
1074 | def __init__(self, abbrev, descr, endianness = ENC_LITTLE_ENDIAN): |
||
1075 | Type.__init__(self, abbrev, descr, 1, endianness) |
||
1076 | |||
1077 | class nbytes16(Type, nbytes): |
||
1078 | """A series of up to (2^16)-2 bytes. The first 2 bytes |
||
1079 | gives the byte-string length.""" |
||
1080 | |||
1081 | type = "nbytes16" |
||
1082 | ftype = "FT_UINT_BYTES" |
||
1083 | disp = "BASE_NONE" |
||
1084 | def __init__(self, abbrev, descr, endianness = ENC_LITTLE_ENDIAN): |
||
1085 | Type.__init__(self, abbrev, descr, 2, endianness) |
||
1086 | |||
1087 | class nbytes32(Type, nbytes): |
||
1088 | """A series of up to (2^32)-4 bytes. The first 4 bytes |
||
1089 | gives the byte-string length.""" |
||
1090 | |||
1091 | type = "nbytes32" |
||
1092 | ftype = "FT_UINT_BYTES" |
||
1093 | disp = "BASE_NONE" |
||
1094 | def __init__(self, abbrev, descr, endianness = ENC_LITTLE_ENDIAN): |
||
1095 | Type.__init__(self, abbrev, descr, 4, endianness) |
||
1096 | |||
1097 | class bf_uint(Type): |
||
1098 | type = "bf_uint" |
||
1099 | disp = None |
||
1100 | |||
1101 | def __init__(self, bitmask, abbrev, descr, endianness=ENC_LITTLE_ENDIAN): |
||
1102 | Type.__init__(self, abbrev, descr, self.bytes, endianness) |
||
1103 | self.bitmask = bitmask |
||
1104 | |||
1105 | def Mask(self): |
||
1106 | return self.bitmask |
||
1107 | |||
1108 | class bf_val_str(bf_uint): |
||
1109 | type = "bf_uint" |
||
1110 | disp = None |
||
1111 | |||
1112 | def __init__(self, bitmask, abbrev, descr, val_string_array, endiannes=ENC_LITTLE_ENDIAN): |
||
1113 | bf_uint.__init__(self, bitmask, abbrev, descr, endiannes) |
||
1114 | self.values = val_string_array |
||
1115 | |||
1116 | def ValuesName(self): |
||
1117 | return "VALS(%s)" % (self.ValuesCName()) |
||
1118 | |||
1119 | class bf_val_str8(bf_val_str, val_string8): |
||
1120 | type = "bf_val_str8" |
||
1121 | ftype = "FT_UINT8" |
||
1122 | disp = "BASE_HEX" |
||
1123 | bytes = 1 |
||
1124 | |||
1125 | class bf_val_str16(bf_val_str, val_string16): |
||
1126 | type = "bf_val_str16" |
||
1127 | ftype = "FT_UINT16" |
||
1128 | disp = "BASE_HEX" |
||
1129 | bytes = 2 |
||
1130 | |||
1131 | class bf_val_str32(bf_val_str, val_string32): |
||
1132 | type = "bf_val_str32" |
||
1133 | ftype = "FT_UINT32" |
||
1134 | disp = "BASE_HEX" |
||
1135 | bytes = 4 |
||
1136 | |||
1137 | class bf_boolean: |
||
1138 | disp = "BASE_NONE" |
||
1139 | |||
1140 | class bf_boolean8(bf_uint, boolean8, bf_boolean): |
||
1141 | type = "bf_boolean8" |
||
1142 | ftype = "FT_BOOLEAN" |
||
1143 | disp = "8" |
||
1144 | bytes = 1 |
||
1145 | |||
1146 | class bf_boolean16(bf_uint, boolean16, bf_boolean): |
||
1147 | type = "bf_boolean16" |
||
1148 | ftype = "FT_BOOLEAN" |
||
1149 | disp = "16" |
||
1150 | bytes = 2 |
||
1151 | |||
1152 | class bf_boolean24(bf_uint, boolean24, bf_boolean): |
||
1153 | type = "bf_boolean24" |
||
1154 | ftype = "FT_BOOLEAN" |
||
1155 | disp = "24" |
||
1156 | bytes = 3 |
||
1157 | |||
1158 | class bf_boolean32(bf_uint, boolean32, bf_boolean): |
||
1159 | type = "bf_boolean32" |
||
1160 | ftype = "FT_BOOLEAN" |
||
1161 | disp = "32" |
||
1162 | bytes = 4 |
||
1163 | |||
1164 | class bitfield(Type): |
||
1165 | type = "bitfield" |
||
1166 | disp = 'BASE_HEX' |
||
1167 | |||
1168 | def __init__(self, vars): |
||
1169 | var_hash = {} |
||
1170 | for var in vars: |
||
1171 | if isinstance(var, bf_boolean): |
||
1172 | if not isinstance(var, self.bf_type): |
||
1173 | print("%s must be of type %s" % \ |
||
1174 | (var.Abbreviation(), |
||
1175 | self.bf_type)) |
||
1176 | sys.exit(1) |
||
1177 | var_hash[var.bitmask] = var |
||
1178 | |||
1179 | bitmasks = list(var_hash.keys()) |
||
1180 | bitmasks.sort() |
||
1181 | bitmasks.reverse() |
||
1182 | |||
1183 | ordered_vars = [] |
||
1184 | for bitmask in bitmasks: |
||
1185 | var = var_hash[bitmask] |
||
1186 | ordered_vars.append(var) |
||
1187 | |||
1188 | self.vars = ordered_vars |
||
1189 | self.ptvcname = "ncp_%s_bitfield" % (self.abbrev,) |
||
1190 | self.hfname = "hf_ncp_%s" % (self.abbrev,) |
||
1191 | self.sub_ptvc = PTVCBitfield(self.PTVCName(), self.vars) |
||
1192 | |||
1193 | def SubVariables(self): |
||
1194 | return self.vars |
||
1195 | |||
1196 | def SubVariablesPTVC(self): |
||
1197 | return self.sub_ptvc |
||
1198 | |||
1199 | def PTVCName(self): |
||
1200 | return self.ptvcname |
||
1201 | |||
1202 | |||
1203 | class bitfield8(bitfield, uint8): |
||
1204 | type = "bitfield8" |
||
1205 | ftype = "FT_UINT8" |
||
1206 | bf_type = bf_boolean8 |
||
1207 | |||
1208 | def __init__(self, abbrev, descr, vars): |
||
1209 | uint8.__init__(self, abbrev, descr) |
||
1210 | bitfield.__init__(self, vars) |
||
1211 | |||
1212 | class bitfield16(bitfield, uint16): |
||
1213 | type = "bitfield16" |
||
1214 | ftype = "FT_UINT16" |
||
1215 | bf_type = bf_boolean16 |
||
1216 | |||
1217 | def __init__(self, abbrev, descr, vars, endianness=ENC_LITTLE_ENDIAN): |
||
1218 | uint16.__init__(self, abbrev, descr, endianness) |
||
1219 | bitfield.__init__(self, vars) |
||
1220 | |||
1221 | class bitfield24(bitfield, uint24): |
||
1222 | type = "bitfield24" |
||
1223 | ftype = "FT_UINT24" |
||
1224 | bf_type = bf_boolean24 |
||
1225 | |||
1226 | def __init__(self, abbrev, descr, vars, endianness=ENC_LITTLE_ENDIAN): |
||
1227 | uint24.__init__(self, abbrev, descr, endianness) |
||
1228 | bitfield.__init__(self, vars) |
||
1229 | |||
1230 | class bitfield32(bitfield, uint32): |
||
1231 | type = "bitfield32" |
||
1232 | ftype = "FT_UINT32" |
||
1233 | bf_type = bf_boolean32 |
||
1234 | |||
1235 | def __init__(self, abbrev, descr, vars, endianness=ENC_LITTLE_ENDIAN): |
||
1236 | uint32.__init__(self, abbrev, descr, endianness) |
||
1237 | bitfield.__init__(self, vars) |
||
1238 | |||
1239 | # |
||
1240 | # Force the endianness of a field to a non-default value; used in |
||
1241 | # the list of fields of a structure. |
||
1242 | # |
||
1243 | def endian(field, endianness): |
||
1244 | return [-1, field.Length(), field, endianness, NO_VAR, NO_REPEAT, NO_REQ_COND] |
||
1245 | |||
1246 | ############################################################################## |
||
1247 | # NCP Field Types. Defined in Appendix A of "Programmer's Guide..." |
||
1248 | ############################################################################## |
||
1249 | |||
1250 | AbortQueueFlag = val_string8("abort_q_flag", "Abort Queue Flag", [ |
||
1251 | [ 0x00, "Place at End of Queue" ], |
||
1252 | [ 0x01, "Do Not Place Spool File, Examine Flags" ], |
||
1253 | ]) |
||
1254 | AcceptedMaxSize = uint16("accepted_max_size", "Accepted Max Size") |
||
1255 | AccessControl = val_string8("access_control", "Access Control", [ |
||
1256 | [ 0x00, "Open for read by this client" ], |
||
1257 | [ 0x01, "Open for write by this client" ], |
||
1258 | [ 0x02, "Deny read requests from other stations" ], |
||
1259 | [ 0x03, "Deny write requests from other stations" ], |
||
1260 | [ 0x04, "File detached" ], |
||
1261 | [ 0x05, "TTS holding detach" ], |
||
1262 | [ 0x06, "TTS holding open" ], |
||
1263 | ]) |
||
1264 | AccessDate = uint16("access_date", "Access Date") |
||
1265 | AccessDate.NWDate() |
||
1266 | AccessMode = bitfield8("access_mode", "Access Mode", [ |
||
1267 | bf_boolean8(0x01, "acc_mode_read", "Read Access"), |
||
1268 | bf_boolean8(0x02, "acc_mode_write", "Write Access"), |
||
1269 | bf_boolean8(0x04, "acc_mode_deny_read", "Deny Read Access"), |
||
1270 | bf_boolean8(0x08, "acc_mode_deny_write", "Deny Write Access"), |
||
1271 | bf_boolean8(0x10, "acc_mode_comp", "Compatibility Mode"), |
||
1272 | ]) |
||
1273 | AccessPrivileges = bitfield8("access_privileges", "Access Privileges", [ |
||
1274 | bf_boolean8(0x01, "acc_priv_read", "Read Privileges (files only)"), |
||
1275 | bf_boolean8(0x02, "acc_priv_write", "Write Privileges (files only)"), |
||
1276 | bf_boolean8(0x04, "acc_priv_open", "Open Privileges (files only)"), |
||
1277 | bf_boolean8(0x08, "acc_priv_create", "Create Privileges (files only)"), |
||
1278 | bf_boolean8(0x10, "acc_priv_delete", "Delete Privileges (files only)"), |
||
1279 | bf_boolean8(0x20, "acc_priv_parent", "Parental Privileges (directories only for creating, deleting, and renaming)"), |
||
1280 | bf_boolean8(0x40, "acc_priv_search", "Search Privileges (directories only)"), |
||
1281 | bf_boolean8(0x80, "acc_priv_modify", "Modify File Status Flags Privileges (files and directories)"), |
||
1282 | ]) |
||
1283 | AccessRightsMask = bitfield8("access_rights_mask", "Access Rights", [ |
||
1284 | bf_boolean8(0x0001, "acc_rights_read", "Read Rights"), |
||
1285 | bf_boolean8(0x0002, "acc_rights_write", "Write Rights"), |
||
1286 | bf_boolean8(0x0004, "acc_rights_open", "Open Rights"), |
||
1287 | bf_boolean8(0x0008, "acc_rights_create", "Create Rights"), |
||
1288 | bf_boolean8(0x0010, "acc_rights_delete", "Delete Rights"), |
||
1289 | bf_boolean8(0x0020, "acc_rights_parent", "Parental Rights"), |
||
1290 | bf_boolean8(0x0040, "acc_rights_search", "Search Rights"), |
||
1291 | bf_boolean8(0x0080, "acc_rights_modify", "Modify Rights"), |
||
1292 | ]) |
||
1293 | AccessRightsMaskWord = bitfield16("access_rights_mask_word", "Access Rights", [ |
||
1294 | bf_boolean16(0x0001, "acc_rights1_read", "Read Rights"), |
||
1295 | bf_boolean16(0x0002, "acc_rights1_write", "Write Rights"), |
||
1296 | bf_boolean16(0x0004, "acc_rights1_open", "Open Rights"), |
||
1297 | bf_boolean16(0x0008, "acc_rights1_create", "Create Rights"), |
||
1298 | bf_boolean16(0x0010, "acc_rights1_delete", "Delete Rights"), |
||
1299 | bf_boolean16(0x0020, "acc_rights1_parent", "Parental Rights"), |
||
1300 | bf_boolean16(0x0040, "acc_rights1_search", "Search Rights"), |
||
1301 | bf_boolean16(0x0080, "acc_rights1_modify", "Modify Rights"), |
||
1302 | bf_boolean16(0x0100, "acc_rights1_supervisor", "Supervisor Access Rights"), |
||
1303 | ]) |
||
1304 | AccountBalance = uint32("account_balance", "Account Balance") |
||
1305 | AccountVersion = uint8("acct_version", "Acct Version") |
||
1306 | ActionFlag = bitfield8("action_flag", "Action Flag", [ |
||
1307 | bf_boolean8(0x01, "act_flag_open", "Open"), |
||
1308 | bf_boolean8(0x02, "act_flag_replace", "Replace"), |
||
1309 | bf_boolean8(0x10, "act_flag_create", "Create"), |
||
1310 | ]) |
||
1311 | ActiveConnBitList = fw_string("active_conn_bit_list", "Active Connection List", 512) |
||
1312 | ActiveIndexedFiles = uint16("active_indexed_files", "Active Indexed Files") |
||
1313 | ActualMaxBinderyObjects = uint16("actual_max_bindery_objects", "Actual Max Bindery Objects") |
||
1314 | ActualMaxIndexedFiles = uint16("actual_max_indexed_files", "Actual Max Indexed Files") |
||
1315 | ActualMaxOpenFiles = uint16("actual_max_open_files", "Actual Max Open Files") |
||
1316 | ActualMaxSimultaneousTransactions = uint16("actual_max_sim_trans", "Actual Max Simultaneous Transactions") |
||
1317 | ActualMaxUsedDirectoryEntries = uint16("actual_max_used_directory_entries", "Actual Max Used Directory Entries") |
||
1318 | ActualMaxUsedRoutingBuffers = uint16("actual_max_used_routing_buffers", "Actual Max Used Routing Buffers") |
||
1319 | ActualResponseCount = uint16("actual_response_count", "Actual Response Count") |
||
1320 | AddNameSpaceAndVol = stringz("add_nm_spc_and_vol", "Add Name Space and Volume") |
||
1321 | AFPEntryID = uint32("afp_entry_id", "AFP Entry ID", ENC_BIG_ENDIAN) |
||
1322 | AFPEntryID.Display("BASE_HEX") |
||
1323 | AllocAvailByte = uint32("alloc_avail_byte", "Bytes Available for Allocation") |
||
1324 | AllocateMode = bitfield16("alloc_mode", "Allocate Mode", [ |
||
1325 | bf_val_str16(0x0001, "alloc_dir_hdl", "Dir Handle Type",[ |
||
1326 | [0x00, "Permanent"], |
||
1327 | [0x01, "Temporary"], |
||
1328 | ]), |
||
1329 | bf_boolean16(0x0002, "alloc_spec_temp_dir_hdl","Special Temporary Directory Handle"), |
||
1330 | bf_boolean16(0x4000, "alloc_reply_lvl2","Reply Level 2"), |
||
1331 | bf_boolean16(0x8000, "alloc_dst_name_spc","Destination Name Space Input Parameter"), |
||
1332 | ]) |
||
1333 | AllocationBlockSize = uint32("allocation_block_size", "Allocation Block Size") |
||
1334 | AllocFreeCount = uint32("alloc_free_count", "Reclaimable Free Bytes") |
||
1335 | ApplicationNumber = uint16("application_number", "Application Number") |
||
1336 | ArchivedTime = uint16("archived_time", "Archived Time") |
||
1337 | ArchivedTime.NWTime() |
||
1338 | ArchivedDate = uint16("archived_date", "Archived Date") |
||
1339 | ArchivedDate.NWDate() |
||
1340 | ArchiverID = uint32("archiver_id", "Archiver ID", ENC_BIG_ENDIAN) |
||
1341 | ArchiverID.Display("BASE_HEX") |
||
1342 | AssociatedNameSpace = uint8("associated_name_space", "Associated Name Space") |
||
1343 | AttachDuringProcessing = uint16("attach_during_processing", "Attach During Processing") |
||
1344 | AttachedIndexedFiles = uint8("attached_indexed_files", "Attached Indexed Files") |
||
1345 | AttachWhileProcessingAttach = uint16("attach_while_processing_attach", "Attach While Processing Attach") |
||
1346 | Attributes = uint32("attributes", "Attributes") |
||
1347 | AttributesDef = bitfield8("attr_def", "Attributes", [ |
||
1348 | bf_boolean8(0x01, "att_def_ro", "Read Only"), |
||
1349 | bf_boolean8(0x02, "att_def_hidden", "Hidden"), |
||
1350 | bf_boolean8(0x04, "att_def_system", "System"), |
||
1351 | bf_boolean8(0x08, "att_def_execute", "Execute"), |
||
1352 | bf_boolean8(0x10, "att_def_sub_only", "Subdirectory"), |
||
1353 | bf_boolean8(0x20, "att_def_archive", "Archive"), |
||
1354 | bf_boolean8(0x80, "att_def_shareable", "Shareable"), |
||
1355 | ]) |
||
1356 | AttributesDef16 = bitfield16("attr_def_16", "Attributes", [ |
||
1357 | bf_boolean16(0x0001, "att_def16_ro", "Read Only"), |
||
1358 | bf_boolean16(0x0002, "att_def16_hidden", "Hidden"), |
||
1359 | bf_boolean16(0x0004, "att_def16_system", "System"), |
||
1360 | bf_boolean16(0x0008, "att_def16_execute", "Execute"), |
||
1361 | bf_boolean16(0x0010, "att_def16_sub_only", "Subdirectory"), |
||
1362 | bf_boolean16(0x0020, "att_def16_archive", "Archive"), |
||
1363 | bf_boolean16(0x0080, "att_def16_shareable", "Shareable"), |
||
1364 | bf_boolean16(0x1000, "att_def16_transaction", "Transactional"), |
||
1365 | bf_boolean16(0x4000, "att_def16_read_audit", "Read Audit"), |
||
1366 | bf_boolean16(0x8000, "att_def16_write_audit", "Write Audit"), |
||
1367 | ]) |
||
1368 | AttributesDef32 = bitfield32("attr_def_32", "Attributes", [ |
||
1369 | bf_boolean32(0x00000001, "att_def32_ro", "Read Only"), |
||
1370 | bf_boolean32(0x00000002, "att_def32_hidden", "Hidden"), |
||
1371 | bf_boolean32(0x00000004, "att_def32_system", "System"), |
||
1372 | bf_boolean32(0x00000008, "att_def32_execute", "Execute"), |
||
1373 | bf_boolean32(0x00000010, "att_def32_sub_only", "Subdirectory"), |
||
1374 | bf_boolean32(0x00000020, "att_def32_archive", "Archive"), |
||
1375 | bf_boolean32(0x00000040, "att_def32_execute_confirm", "Execute Confirm"), |
||
1376 | bf_boolean32(0x00000080, "att_def32_shareable", "Shareable"), |
||
1377 | bf_val_str32(0x00000700, "att_def32_search", "Search Mode",[ |
||
1378 | [0, "Search on all Read Only Opens"], |
||
1379 | [1, "Search on Read Only Opens with no Path"], |
||
1380 | [2, "Shell Default Search Mode"], |
||
1381 | [3, "Search on all Opens with no Path"], |
||
1382 | [4, "Do not Search"], |
||
1383 | [5, "Reserved - Do not Use"], |
||
1384 | [6, "Search on All Opens"], |
||
1385 | [7, "Reserved - Do not Use"], |
||
1386 | ]), |
||
1387 | bf_boolean32(0x00000800, "att_def32_no_suballoc", "No Suballoc"), |
||
1388 | bf_boolean32(0x00001000, "att_def32_transaction", "Transactional"), |
||
1389 | bf_boolean32(0x00004000, "att_def32_read_audit", "Read Audit"), |
||
1390 | bf_boolean32(0x00008000, "att_def32_write_audit", "Write Audit"), |
||
1391 | bf_boolean32(0x00010000, "att_def32_purge", "Immediate Purge"), |
||
1392 | bf_boolean32(0x00020000, "att_def32_reninhibit", "Rename Inhibit"), |
||
1393 | bf_boolean32(0x00040000, "att_def32_delinhibit", "Delete Inhibit"), |
||
1394 | bf_boolean32(0x00080000, "att_def32_cpyinhibit", "Copy Inhibit"), |
||
1395 | bf_boolean32(0x00100000, "att_def32_file_audit", "File Audit"), |
||
1396 | bf_boolean32(0x00200000, "att_def32_reserved", "Reserved"), |
||
1397 | bf_boolean32(0x00400000, "att_def32_data_migrate", "Data Migrated"), |
||
1398 | bf_boolean32(0x00800000, "att_def32_inhibit_dm", "Inhibit Data Migration"), |
||
1399 | bf_boolean32(0x01000000, "att_def32_dm_save_key", "Data Migration Save Key"), |
||
1400 | bf_boolean32(0x02000000, "att_def32_im_comp", "Immediate Compress"), |
||
1401 | bf_boolean32(0x04000000, "att_def32_comp", "Compressed"), |
||
1402 | bf_boolean32(0x08000000, "att_def32_comp_inhibit", "Inhibit Compression"), |
||
1403 | bf_boolean32(0x10000000, "att_def32_reserved2", "Reserved"), |
||
1404 | bf_boolean32(0x20000000, "att_def32_cant_compress", "Can't Compress"), |
||
1405 | bf_boolean32(0x40000000, "att_def32_attr_archive", "Archive Attributes"), |
||
1406 | bf_boolean32(0x80000000, "att_def32_reserved3", "Reserved"), |
||
1407 | ]) |
||
1408 | AttributeValidFlag = uint32("attribute_valid_flag", "Attribute Valid Flag") |
||
1409 | AuditFileVersionDate = uint16("audit_file_ver_date", "Audit File Version Date") |
||
1410 | AuditFileVersionDate.NWDate() |
||
1411 | AuditFlag = val_string8("audit_flag", "Audit Flag", [ |
||
1412 | [ 0x00, "Do NOT audit object" ], |
||
1413 | [ 0x01, "Audit object" ], |
||
1414 | ]) |
||
1415 | AuditHandle = uint32("audit_handle", "Audit File Handle") |
||
1416 | AuditHandle.Display("BASE_HEX") |
||
1417 | AuditID = uint32("audit_id", "Audit ID", ENC_BIG_ENDIAN) |
||
1418 | AuditID.Display("BASE_HEX") |
||
1419 | AuditIDType = val_string16("audit_id_type", "Audit ID Type", [ |
||
1420 | [ 0x0000, "Volume" ], |
||
1421 | [ 0x0001, "Container" ], |
||
1422 | ]) |
||
1423 | AuditVersionDate = uint16("audit_ver_date", "Auditing Version Date") |
||
1424 | AuditVersionDate.NWDate() |
||
1425 | AvailableBlocks = uint32("available_blocks", "Available Blocks") |
||
1426 | AvailableBlocks64 = uint64("available_blocks64", "Available Blocks") |
||
1427 | AvailableClusters = uint16("available_clusters", "Available Clusters") |
||
1428 | AvailableDirectorySlots = uint16("available_directory_slots", "Available Directory Slots") |
||
1429 | AvailableDirEntries = uint32("available_dir_entries", "Available Directory Entries") |
||
1430 | AvailableDirEntries64 = uint64("available_dir_entries64", "Available Directory Entries") |
||
1431 | AvailableIndexedFiles = uint16("available_indexed_files", "Available Indexed Files") |
||
1432 | |||
1433 | BackgroundAgedWrites = uint32("background_aged_writes", "Background Aged Writes") |
||
1434 | BackgroundDirtyWrites = uint32("background_dirty_writes", "Background Dirty Writes") |
||
1435 | BadLogicalConnectionCount = uint16("bad_logical_connection_count", "Bad Logical Connection Count") |
||
1436 | BannerName = fw_string("banner_name", "Banner Name", 14) |
||
1437 | BaseDirectoryID = uint32("base_directory_id", "Base Directory ID", ENC_BIG_ENDIAN) |
||
1438 | BaseDirectoryID.Display("BASE_HEX") |
||
1439 | binderyContext = nstring8("bindery_context", "Bindery Context") |
||
1440 | BitMap = bytes("bit_map", "Bit Map", 512) |
||
1441 | BlockNumber = uint32("block_number", "Block Number") |
||
1442 | BlockSize = uint16("block_size", "Block Size") |
||
1443 | BlockSizeInSectors = uint32("block_size_in_sectors", "Block Size in Sectors") |
||
1444 | BoardInstalled = uint8("board_installed", "Board Installed") |
||
1445 | BoardNumber = uint32("board_number", "Board Number") |
||
1446 | BoardNumbers = uint32("board_numbers", "Board Numbers") |
||
1447 | BufferSize = uint16("buffer_size", "Buffer Size") |
||
1448 | BusString = stringz("bus_string", "Bus String") |
||
1449 | BusType = val_string8("bus_type", "Bus Type", [ |
||
1450 | [0x00, "ISA"], |
||
1451 | [0x01, "Micro Channel" ], |
||
1452 | [0x02, "EISA"], |
||
1453 | [0x04, "PCI"], |
||
1454 | [0x08, "PCMCIA"], |
||
1455 | [0x10, "ISA"], |
||
1456 | [0x14, "ISA/PCI"], |
||
1457 | ]) |
||
1458 | BytesActuallyTransferred = uint32("bytes_actually_transferred", "Bytes Actually Transferred") |
||
1459 | BytesActuallyTransferred64bit = uint64("bytes_actually_transferred_64", "Bytes Actually Transferred", ENC_LITTLE_ENDIAN) |
||
1460 | BytesActuallyTransferred64bit.Display("BASE_DEC") |
||
1461 | BytesRead = fw_string("bytes_read", "Bytes Read", 6) |
||
1462 | BytesToCopy = uint32("bytes_to_copy", "Bytes to Copy") |
||
1463 | BytesToCopy64bit = uint64("bytes_to_copy_64", "Bytes to Copy") |
||
1464 | BytesToCopy64bit.Display("BASE_DEC") |
||
1465 | BytesWritten = fw_string("bytes_written", "Bytes Written", 6) |
||
1466 | |||
1467 | CacheAllocations = uint32("cache_allocations", "Cache Allocations") |
||
1468 | CacheBlockScrapped = uint16("cache_block_scrapped", "Cache Block Scrapped") |
||
1469 | CacheBufferCount = uint16("cache_buffer_count", "Cache Buffer Count") |
||
1470 | CacheBufferSize = uint16("cache_buffer_size", "Cache Buffer Size") |
||
1471 | CacheFullWriteRequests = uint32("cache_full_write_requests", "Cache Full Write Requests") |
||
1472 | CacheGetRequests = uint32("cache_get_requests", "Cache Get Requests") |
||
1473 | CacheHitOnUnavailableBlock = uint16("cache_hit_on_unavailable_block", "Cache Hit On Unavailable Block") |
||
1474 | CacheHits = uint32("cache_hits", "Cache Hits") |
||
1475 | CacheMisses = uint32("cache_misses", "Cache Misses") |
||
1476 | CachePartialWriteRequests = uint32("cache_partial_write_requests", "Cache Partial Write Requests") |
||
1477 | CacheReadRequests = uint32("cache_read_requests", "Cache Read Requests") |
||
1478 | CacheWriteRequests = uint32("cache_write_requests", "Cache Write Requests") |
||
1479 | CategoryName = stringz("category_name", "Category Name") |
||
1480 | CCFileHandle = uint32("cc_file_handle", "File Handle") |
||
1481 | CCFileHandle.Display("BASE_HEX") |
||
1482 | CCFunction = val_string8("cc_function", "OP-Lock Flag", [ |
||
1483 | [ 0x01, "Clear OP-Lock" ], |
||
1484 | [ 0x02, "Acknowledge Callback" ], |
||
1485 | [ 0x03, "Decline Callback" ], |
||
1486 | [ 0x04, "Level 2" ], |
||
1487 | ]) |
||
1488 | ChangeBits = bitfield16("change_bits", "Change Bits", [ |
||
1489 | bf_boolean16(0x0001, "change_bits_modify", "Modify Name"), |
||
1490 | bf_boolean16(0x0002, "change_bits_fatt", "File Attributes"), |
||
1491 | bf_boolean16(0x0004, "change_bits_cdate", "Creation Date"), |
||
1492 | bf_boolean16(0x0008, "change_bits_ctime", "Creation Time"), |
||
1493 | bf_boolean16(0x0010, "change_bits_owner", "Owner ID"), |
||
1494 | bf_boolean16(0x0020, "change_bits_adate", "Archive Date"), |
||
1495 | bf_boolean16(0x0040, "change_bits_atime", "Archive Time"), |
||
1496 | bf_boolean16(0x0080, "change_bits_aid", "Archiver ID"), |
||
1497 | bf_boolean16(0x0100, "change_bits_udate", "Update Date"), |
||
1498 | bf_boolean16(0x0200, "change_bits_utime", "Update Time"), |
||
1499 | bf_boolean16(0x0400, "change_bits_uid", "Update ID"), |
||
1500 | bf_boolean16(0x0800, "change_bits_acc_date", "Access Date"), |
||
1501 | bf_boolean16(0x1000, "change_bits_max_acc_mask", "Maximum Access Mask"), |
||
1502 | bf_boolean16(0x2000, "change_bits_max_space", "Maximum Space"), |
||
1503 | ]) |
||
1504 | ChannelState = val_string8("channel_state", "Channel State", [ |
||
1505 | [ 0x00, "Channel is running" ], |
||
1506 | [ 0x01, "Channel is stopping" ], |
||
1507 | [ 0x02, "Channel is stopped" ], |
||
1508 | [ 0x03, "Channel is not functional" ], |
||
1509 | ]) |
||
1510 | ChannelSynchronizationState = val_string8("channel_synchronization_state", "Channel Synchronization State", [ |
||
1511 | [ 0x00, "Channel is not being used" ], |
||
1512 | [ 0x02, "NetWare is using the channel; no one else wants it" ], |
||
1513 | [ 0x04, "NetWare is using the channel; someone else wants it" ], |
||
1514 | [ 0x06, "Someone else is using the channel; NetWare does not need it" ], |
||
1515 | [ 0x08, "Someone else is using the channel; NetWare needs it" ], |
||
1516 | [ 0x0A, "Someone else has released the channel; NetWare should use it" ], |
||
1517 | ]) |
||
1518 | ChargeAmount = uint32("charge_amount", "Charge Amount") |
||
1519 | ChargeInformation = uint32("charge_information", "Charge Information") |
||
1520 | ClientCompFlag = val_string16("client_comp_flag", "Completion Flag", [ |
||
1521 | [ 0x0000, "Successful" ], |
||
1522 | [ 0x0001, "Illegal Station Number" ], |
||
1523 | [ 0x0002, "Client Not Logged In" ], |
||
1524 | [ 0x0003, "Client Not Accepting Messages" ], |
||
1525 | [ 0x0004, "Client Already has a Message" ], |
||
1526 | [ 0x0096, "No Alloc Space for the Message" ], |
||
1527 | [ 0x00fd, "Bad Station Number" ], |
||
1528 | [ 0x00ff, "Failure" ], |
||
1529 | ]) |
||
1530 | ClientIDNumber = uint32("client_id_number", "Client ID Number", ENC_BIG_ENDIAN) |
||
1531 | ClientIDNumber.Display("BASE_HEX") |
||
1532 | ClientList = uint32("client_list", "Client List") |
||
1533 | ClientListCount = uint16("client_list_cnt", "Client List Count") |
||
1534 | ClientListLen = uint8("client_list_len", "Client List Length") |
||
1535 | ClientName = nstring8("client_name", "Client Name") |
||
1536 | ClientRecordArea = fw_string("client_record_area", "Client Record Area", 152) |
||
1537 | ClientStation = uint8("client_station", "Client Station") |
||
1538 | ClientStationLong = uint32("client_station_long", "Client Station") |
||
1539 | ClientTaskNumber = uint8("client_task_number", "Client Task Number") |
||
1540 | ClientTaskNumberLong = uint32("client_task_number_long", "Client Task Number") |
||
1541 | ClusterCount = uint16("cluster_count", "Cluster Count") |
||
1542 | ClustersUsedByDirectories = uint32("clusters_used_by_directories", "Clusters Used by Directories") |
||
1543 | ClustersUsedByExtendedDirectories = uint32("clusters_used_by_extended_dirs", "Clusters Used by Extended Directories") |
||
1544 | ClustersUsedByFAT = uint32("clusters_used_by_fat", "Clusters Used by FAT") |
||
1545 | CodePage = uint32("code_page", "Code Page") |
||
1546 | ComCnts = uint16("com_cnts", "Communication Counters") |
||
1547 | Comment = nstring8("comment", "Comment") |
||
1548 | CommentType = uint16("comment_type", "Comment Type") |
||
1549 | CompletionCode = uint32("ncompletion_code", "Completion Code") |
||
1550 | CompressedDataStreamsCount = uint32("compressed_data_streams_count", "Compressed Data Streams Count") |
||
1551 | CompressedLimboDataStreamsCount = uint32("compressed_limbo_data_streams_count", "Compressed Limbo Data Streams Count") |
||
1552 | CompressedSectors = uint32("compressed_sectors", "Compressed Sectors") |
||
1553 | compressionStage = uint32("compression_stage", "Compression Stage") |
||
1554 | compressVolume = uint32("compress_volume", "Volume Compression") |
||
1555 | ConfigMajorVN = uint8("config_major_vn", "Configuration Major Version Number") |
||
1556 | ConfigMinorVN = uint8("config_minor_vn", "Configuration Minor Version Number") |
||
1557 | ConfigurationDescription = fw_string("configuration_description", "Configuration Description", 80) |
||
1558 | ConfigurationText = fw_string("configuration_text", "Configuration Text", 160) |
||
1559 | ConfiguredMaxBinderyObjects = uint16("configured_max_bindery_objects", "Configured Max Bindery Objects") |
||
1560 | ConfiguredMaxOpenFiles = uint16("configured_max_open_files", "Configured Max Open Files") |
||
1561 | ConfiguredMaxRoutingBuffers = uint16("configured_max_routing_buffers", "Configured Max Routing Buffers") |
||
1562 | ConfiguredMaxSimultaneousTransactions = uint16("cfg_max_simultaneous_transactions", "Configured Max Simultaneous Transactions") |
||
1563 | ConnectedLAN = uint32("connected_lan", "LAN Adapter") |
||
1564 | ConnectionControlBits = bitfield8("conn_ctrl_bits", "Connection Control", [ |
||
1565 | bf_boolean8(0x01, "enable_brdcasts", "Enable Broadcasts"), |
||
1566 | bf_boolean8(0x02, "enable_personal_brdcasts", "Enable Personal Broadcasts"), |
||
1567 | bf_boolean8(0x04, "enable_wdog_messages", "Enable Watchdog Message"), |
||
1568 | bf_boolean8(0x10, "disable_brdcasts", "Disable Broadcasts"), |
||
1569 | bf_boolean8(0x20, "disable_personal_brdcasts", "Disable Personal Broadcasts"), |
||
1570 | bf_boolean8(0x40, "disable_wdog_messages", "Disable Watchdog Message"), |
||
1571 | ]) |
||
1572 | ConnectionListCount = uint32("conn_list_count", "Connection List Count") |
||
1573 | ConnectionList = uint32("connection_list", "Connection List") |
||
1574 | ConnectionNumber = uint32("connection_number", "Connection Number", ENC_BIG_ENDIAN) |
||
1575 | ConnectionNumberList = nstring8("connection_number_list", "Connection Number List") |
||
1576 | ConnectionNumberWord = uint16("conn_number_word", "Connection Number") |
||
1577 | ConnectionNumberByte = uint8("conn_number_byte", "Connection Number") |
||
1578 | ConnectionServiceType = val_string8("connection_service_type","Connection Service Type",[ |
||
1579 | [ 0x01, "CLIB backward Compatibility" ], |
||
1580 | [ 0x02, "NCP Connection" ], |
||
1581 | [ 0x03, "NLM Connection" ], |
||
1582 | [ 0x04, "AFP Connection" ], |
||
1583 | [ 0x05, "FTAM Connection" ], |
||
1584 | [ 0x06, "ANCP Connection" ], |
||
1585 | [ 0x07, "ACP Connection" ], |
||
1586 | [ 0x08, "SMB Connection" ], |
||
1587 | [ 0x09, "Winsock Connection" ], |
||
1588 | ]) |
||
1589 | ConnectionsInUse = uint16("connections_in_use", "Connections In Use") |
||
1590 | ConnectionsMaxUsed = uint16("connections_max_used", "Connections Max Used") |
||
1591 | ConnectionsSupportedMax = uint16("connections_supported_max", "Connections Supported Max") |
||
1592 | ConnectionType = val_string8("connection_type", "Connection Type", [ |
||
1593 | [ 0x00, "Not in use" ], |
||
1594 | [ 0x02, "NCP" ], |
||
1595 | [ 0x0b, "UDP (for IP)" ], |
||
1596 | ]) |
||
1597 | ConnListLen = uint8("conn_list_len", "Connection List Length") |
||
1598 | connList = uint32("conn_list", "Connection List") |
||
1599 | ControlFlags = val_string8("control_flags", "Control Flags", [ |
||
1600 | [ 0x00, "Forced Record Locking is Off" ], |
||
1601 | [ 0x01, "Forced Record Locking is On" ], |
||
1602 | ]) |
||
1603 | ControllerDriveNumber = uint8("controller_drive_number", "Controller Drive Number") |
||
1604 | ControllerNumber = uint8("controller_number", "Controller Number") |
||
1605 | ControllerType = uint8("controller_type", "Controller Type") |
||
1606 | Cookie1 = uint32("cookie_1", "Cookie 1") |
||
1607 | Cookie2 = uint32("cookie_2", "Cookie 2") |
||
1608 | Copies = uint8( "copies", "Copies" ) |
||
1609 | CoprocessorFlag = uint32("co_processor_flag", "CoProcessor Present Flag") |
||
1610 | CoProcessorString = stringz("co_proc_string", "CoProcessor String") |
||
1611 | CounterMask = val_string8("counter_mask", "Counter Mask", [ |
||
1612 | [ 0x00, "Counter is Valid" ], |
||
1613 | [ 0x01, "Counter is not Valid" ], |
||
1614 | ]) |
||
1615 | CPUNumber = uint32("cpu_number", "CPU Number") |
||
1616 | CPUString = stringz("cpu_string", "CPU String") |
||
1617 | CPUType = val_string8("cpu_type", "CPU Type", [ |
||
1618 | [ 0x00, "80386" ], |
||
1619 | [ 0x01, "80486" ], |
||
1620 | [ 0x02, "Pentium" ], |
||
1621 | [ 0x03, "Pentium Pro" ], |
||
1622 | ]) |
||
1623 | CreationDate = uint16("creation_date", "Creation Date") |
||
1624 | CreationDate.NWDate() |
||
1625 | CreationTime = uint16("creation_time", "Creation Time") |
||
1626 | CreationTime.NWTime() |
||
1627 | CreatorID = uint32("creator_id", "Creator ID", ENC_BIG_ENDIAN) |
||
1628 | CreatorID.Display("BASE_HEX") |
||
1629 | CreatorNameSpaceNumber = val_string8("creator_name_space_number", "Creator Name Space Number", [ |
||
1630 | [ 0x00, "DOS Name Space" ], |
||
1631 | [ 0x01, "MAC Name Space" ], |
||
1632 | [ 0x02, "NFS Name Space" ], |
||
1633 | [ 0x04, "Long Name Space" ], |
||
1634 | ]) |
||
1635 | CreditLimit = uint32("credit_limit", "Credit Limit") |
||
1636 | CtrlFlags = val_string16("ctrl_flags", "Control Flags", [ |
||
1637 | [ 0x0000, "Do Not Return File Name" ], |
||
1638 | [ 0x0001, "Return File Name" ], |
||
1639 | ]) |
||
1640 | curCompBlks = uint32("cur_comp_blks", "Current Compression Blocks") |
||
1641 | curInitialBlks = uint32("cur_initial_blks", "Current Initial Blocks") |
||
1642 | curIntermediateBlks = uint32("cur_inter_blks", "Current Intermediate Blocks") |
||
1643 | CurNumOfRTags = uint32("cur_num_of_r_tags", "Current Number of Resource Tags") |
||
1644 | CurrentBlockBeingDecompressed = uint32("cur_blk_being_dcompress", "Current Block Being Decompressed") |
||
1645 | CurrentChangedFATs = uint16("current_changed_fats", "Current Changed FAT Entries") |
||
1646 | CurrentEntries = uint32("current_entries", "Current Entries") |
||
1647 | CurrentFormType = uint8( "current_form_type", "Current Form Type" ) |
||
1648 | CurrentLFSCounters = uint32("current_lfs_counters", "Current LFS Counters") |
||
1649 | CurrentlyUsedRoutingBuffers = uint16("currently_used_routing_buffers", "Currently Used Routing Buffers") |
||
1650 | CurrentOpenFiles = uint16("current_open_files", "Current Open Files") |
||
1651 | CurrentReferenceID = uint16("curr_ref_id", "Current Reference ID") |
||
1652 | CurrentServers = uint32("current_servers", "Current Servers") |
||
1653 | CurrentServerTime = uint32("current_server_time", "Time Elapsed Since Server Was Brought Up") |
||
1654 | CurrentSpace = uint32("current_space", "Current Space") |
||
1655 | CurrentTransactionCount = uint32("current_trans_count", "Current Transaction Count") |
||
1656 | CurrentUsedBinderyObjects = uint16("current_used_bindery_objects", "Current Used Bindery Objects") |
||
1657 | CurrentUsedDynamicSpace = uint32("current_used_dynamic_space", "Current Used Dynamic Space") |
||
1658 | CustomCnts = uint32("custom_cnts", "Custom Counters") |
||
1659 | CustomCount = uint32("custom_count", "Custom Count") |
||
1660 | CustomCounters = uint32("custom_counters", "Custom Counters") |
||
1661 | CustomString = nstring8("custom_string", "Custom String") |
||
1662 | CustomVariableValue = uint32("custom_var_value", "Custom Variable Value") |
||
1663 | |||
1664 | Data = nstring8("data", "Data") |
||
1665 | Data64 = stringz("data64", "Data") |
||
1666 | DataForkFirstFAT = uint32("data_fork_first_fat", "Data Fork First FAT Entry") |
||
1667 | DataForkLen = uint32("data_fork_len", "Data Fork Len") |
||
1668 | DataForkSize = uint32("data_fork_size", "Data Fork Size") |
||
1669 | DataSize = uint32("data_size", "Data Size") |
||
1670 | DataStream = val_string8("data_stream", "Data Stream", [ |
||
1671 | [ 0x00, "Resource Fork or DOS" ], |
||
1672 | [ 0x01, "Data Fork" ], |
||
1673 | ]) |
||
1674 | DataStreamFATBlocks = uint32("data_stream_fat_blks", "Data Stream FAT Blocks") |
||
1675 | DataStreamName = nstring8("data_stream_name", "Data Stream Name") |
||
1676 | DataStreamNumber = uint8("data_stream_number", "Data Stream Number") |
||
1677 | DataStreamNumberLong = uint32("data_stream_num_long", "Data Stream Number") |
||
1678 | DataStreamsCount = uint32("data_streams_count", "Data Streams Count") |
||
1679 | DataStreamSize = uint32("data_stream_size", "Size") |
||
1680 | DataStreamSize64 = uint64("data_stream_size_64", "Size") |
||
1681 | DataStreamSpaceAlloc = uint32( "data_stream_space_alloc", "Space Allocated for Data Stream" ) |
||
1682 | DataTypeFlag = val_string8("data_type_flag", "Data Type Flag", [ |
||
1683 | [ 0x00, "ASCII Data" ], |
||
1684 | [ 0x01, "UTF8 Data" ], |
||
1685 | ]) |
||
1686 | Day = uint8("s_day", "Day") |
||
1687 | DayOfWeek = val_string8("s_day_of_week", "Day of Week", [ |
||
1688 | [ 0x00, "Sunday" ], |
||
1689 | [ 0x01, "Monday" ], |
||
1690 | [ 0x02, "Tuesday" ], |
||
1691 | [ 0x03, "Wednesday" ], |
||
1692 | [ 0x04, "Thursday" ], |
||
1693 | [ 0x05, "Friday" ], |
||
1694 | [ 0x06, "Saturday" ], |
||
1695 | ]) |
||
1696 | DeadMirrorTable = bytes("dead_mirror_table", "Dead Mirror Table", 32) |
||
1697 | DefinedDataStreams = uint8("defined_data_streams", "Defined Data Streams") |
||
1698 | DefinedNameSpaces = uint8("defined_name_spaces", "Defined Name Spaces") |
||
1699 | DeletedDate = uint16("deleted_date", "Deleted Date") |
||
1700 | DeletedDate.NWDate() |
||
1701 | DeletedFileTime = uint32( "deleted_file_time", "Deleted File Time") |
||
1702 | DeletedFileTime.Display("BASE_HEX") |
||
1703 | DeletedTime = uint16("deleted_time", "Deleted Time") |
||
1704 | DeletedTime.NWTime() |
||
1705 | DeletedID = uint32( "delete_id", "Deleted ID", ENC_BIG_ENDIAN) |
||
1706 | DeletedID.Display("BASE_HEX") |
||
1707 | DeleteExistingFileFlag = val_string8("delete_existing_file_flag", "Delete Existing File Flag", [ |
||
1708 | [ 0x00, "Do Not Delete Existing File" ], |
||
1709 | [ 0x01, "Delete Existing File" ], |
||
1710 | ]) |
||
1711 | DenyReadCount = uint16("deny_read_count", "Deny Read Count") |
||
1712 | DenyWriteCount = uint16("deny_write_count", "Deny Write Count") |
||
1713 | DescriptionStrings = fw_string("description_string", "Description", 100) |
||
1714 | DesiredAccessRights = bitfield16("desired_access_rights", "Desired Access Rights", [ |
||
1715 | bf_boolean16(0x0001, "dsired_acc_rights_read_o", "Read Only"), |
||
1716 | bf_boolean16(0x0002, "dsired_acc_rights_write_o", "Write Only"), |
||
1717 | bf_boolean16(0x0004, "dsired_acc_rights_deny_r", "Deny Read"), |
||
1718 | bf_boolean16(0x0008, "dsired_acc_rights_deny_w", "Deny Write"), |
||
1719 | bf_boolean16(0x0010, "dsired_acc_rights_compat", "Compatibility"), |
||
1720 | bf_boolean16(0x0040, "dsired_acc_rights_w_thru", "File Write Through"), |
||
1721 | bf_boolean16(0x0400, "dsired_acc_rights_del_file_cls", "Delete File Close"), |
||
1722 | ]) |
||
1723 | DesiredResponseCount = uint16("desired_response_count", "Desired Response Count") |
||
1724 | DestDirHandle = uint8("dest_dir_handle", "Destination Directory Handle") |
||
1725 | DestNameSpace = val_string8("dest_name_space", "Destination Name Space", [ |
||
1726 | [ 0x00, "DOS Name Space" ], |
||
1727 | [ 0x01, "MAC Name Space" ], |
||
1728 | [ 0x02, "NFS Name Space" ], |
||
1729 | [ 0x04, "Long Name Space" ], |
||
1730 | ]) |
||
1731 | DestPathComponentCount = uint8("dest_component_count", "Destination Path Component Count") |
||
1732 | DestPath = nstring8("dest_path", "Destination Path") |
||
1733 | DestPath16 = nstring16("dest_path_16", "Destination Path") |
||
1734 | DetachDuringProcessing = uint16("detach_during_processing", "Detach During Processing") |
||
1735 | DetachForBadConnectionNumber = uint16("detach_for_bad_connection_number", "Detach For Bad Connection Number") |
||
1736 | DirHandle = uint8("dir_handle", "Directory Handle") |
||
1737 | DirHandleName = uint8("dir_handle_name", "Handle Name") |
||
1738 | DirHandleLong = uint32("dir_handle_long", "Directory Handle") |
||
1739 | DirHandle64 = uint64("dir_handle64", "Directory Handle") |
||
1740 | DirectoryAccessRights = uint8("directory_access_rights", "Directory Access Rights") |
||
1741 | # |
||
1742 | # XXX - what do the bits mean here? |
||
1743 | # |
||
1744 | DirectoryAttributes = uint8("directory_attributes", "Directory Attributes") |
||
1745 | DirectoryBase = uint32("dir_base", "Directory Base") |
||
1746 | DirectoryBase.Display("BASE_HEX") |
||
1747 | DirectoryCount = uint16("dir_count", "Directory Count") |
||
1748 | DirectoryEntryNumber = uint32("directory_entry_number", "Directory Entry Number") |
||
1749 | DirectoryEntryNumber.Display('BASE_HEX') |
||
1750 | DirectoryEntryNumberWord = uint16("directory_entry_number_word", "Directory Entry Number") |
||
1751 | DirectoryID = uint16("directory_id", "Directory ID", ENC_BIG_ENDIAN) |
||
1752 | DirectoryID.Display("BASE_HEX") |
||
1753 | DirectoryName = fw_string("directory_name", "Directory Name",12) |
||
1754 | DirectoryName14 = fw_string("directory_name_14", "Directory Name", 14) |
||
1755 | DirectoryNameLen = uint8("directory_name_len", "Directory Name Length") |
||
1756 | DirectoryNumber = uint32("directory_number", "Directory Number") |
||
1757 | DirectoryNumber.Display("BASE_HEX") |
||
1758 | DirectoryPath = fw_string("directory_path", "Directory Path", 16) |
||
1759 | DirectoryServicesObjectID = uint32("directory_services_object_id", "Directory Services Object ID") |
||
1760 | DirectoryServicesObjectID.Display("BASE_HEX") |
||
1761 | DirectoryStamp = uint16("directory_stamp", "Directory Stamp (0xD1D1)") |
||
1762 | DirtyCacheBuffers = uint16("dirty_cache_buffers", "Dirty Cache Buffers") |
||
1763 | DiskChannelNumber = uint8("disk_channel_number", "Disk Channel Number") |
||
1764 | DiskChannelTable = val_string8("disk_channel_table", "Disk Channel Table", [ |
||
1765 | [ 0x01, "XT" ], |
||
1766 | [ 0x02, "AT" ], |
||
1767 | [ 0x03, "SCSI" ], |
||
1768 | [ 0x04, "Disk Coprocessor" ], |
||
1769 | ]) |
||
1770 | DiskSpaceLimit = uint32("disk_space_limit", "Disk Space Limit") |
||
1771 | DiskSpaceLimit64 = uint64("data_stream_size_64", "Size") |
||
1772 | DMAChannelsUsed = uint32("dma_channels_used", "DMA Channels Used") |
||
1773 | DMInfoEntries = uint32("dm_info_entries", "DM Info Entries") |
||
1774 | DMInfoLevel = val_string8("dm_info_level", "DM Info Level", [ |
||
1775 | [ 0x00, "Return Detailed DM Support Module Information" ], |
||
1776 | [ 0x01, "Return Number of DM Support Modules" ], |
||
1777 | [ 0x02, "Return DM Support Modules Names" ], |
||
1778 | ]) |
||
1779 | DMFlags = val_string8("dm_flags", "DM Flags", [ |
||
1780 | [ 0x00, "OnLine Media" ], |
||
1781 | [ 0x01, "OffLine Media" ], |
||
1782 | ]) |
||
1783 | DMmajorVersion = uint32("dm_major_version", "DM Major Version") |
||
1784 | DMminorVersion = uint32("dm_minor_version", "DM Minor Version") |
||
1785 | DMPresentFlag = val_string8("dm_present_flag", "Data Migration Present Flag", [ |
||
1786 | [ 0x00, "Data Migration NLM is not loaded" ], |
||
1787 | [ 0x01, "Data Migration NLM has been loaded and is running" ], |
||
1788 | ]) |
||
1789 | DOSDirectoryBase = uint32("dos_directory_base", "DOS Directory Base") |
||
1790 | DOSDirectoryBase.Display("BASE_HEX") |
||
1791 | DOSDirectoryEntry = uint32("dos_directory_entry", "DOS Directory Entry") |
||
1792 | DOSDirectoryEntry.Display("BASE_HEX") |
||
1793 | DOSDirectoryEntryNumber = uint32("dos_directory_entry_number", "DOS Directory Entry Number") |
||
1794 | DOSDirectoryEntryNumber.Display('BASE_HEX') |
||
1795 | DOSFileAttributes = uint8("dos_file_attributes", "DOS File Attributes") |
||
1796 | DOSParentDirectoryEntry = uint32("dos_parent_directory_entry", "DOS Parent Directory Entry") |
||
1797 | DOSParentDirectoryEntry.Display('BASE_HEX') |
||
1798 | DOSSequence = uint32("dos_sequence", "DOS Sequence") |
||
1799 | DriveCylinders = uint16("drive_cylinders", "Drive Cylinders") |
||
1800 | DriveDefinitionString = fw_string("drive_definition_string", "Drive Definition", 64) |
||
1801 | DriveHeads = uint8("drive_heads", "Drive Heads") |
||
1802 | DriveMappingTable = bytes("drive_mapping_table", "Drive Mapping Table", 32) |
||
1803 | DriveMirrorTable = bytes("drive_mirror_table", "Drive Mirror Table", 32) |
||
1804 | DriverBoardName = stringz("driver_board_name", "Driver Board Name") |
||
1805 | DriveRemovableFlag = val_string8("drive_removable_flag", "Drive Removable Flag", [ |
||
1806 | [ 0x00, "Nonremovable" ], |
||
1807 | [ 0xff, "Removable" ], |
||
1808 | ]) |
||
1809 | DriverLogicalName = stringz("driver_log_name", "Driver Logical Name") |
||
1810 | DriverShortName = stringz("driver_short_name", "Driver Short Name") |
||
1811 | DriveSize = uint32("drive_size", "Drive Size") |
||
1812 | DstEAFlags = val_string16("dst_ea_flags", "Destination EA Flags", [ |
||
1813 | [ 0x0000, "Return EAHandle,Information Level 0" ], |
||
1814 | [ 0x0001, "Return NetWareHandle,Information Level 0" ], |
||
1815 | [ 0x0002, "Return Volume/Directory Number,Information Level 0" ], |
||
1816 | [ 0x0004, "Return EAHandle,Close Handle on Error,Information Level 0" ], |
||
1817 | [ 0x0005, "Return NetWareHandle,Close Handle on Error,Information Level 0" ], |
||
1818 | [ 0x0006, "Return Volume/Directory Number,Close Handle on Error,Information Level 0" ], |
||
1819 | [ 0x0010, "Return EAHandle,Information Level 1" ], |
||
1820 | [ 0x0011, "Return NetWareHandle,Information Level 1" ], |
||
1821 | [ 0x0012, "Return Volume/Directory Number,Information Level 1" ], |
||
1822 | [ 0x0014, "Return EAHandle,Close Handle on Error,Information Level 1" ], |
||
1823 | [ 0x0015, "Return NetWareHandle,Close Handle on Error,Information Level 1" ], |
||
1824 | [ 0x0016, "Return Volume/Directory Number,Close Handle on Error,Information Level 1" ], |
||
1825 | [ 0x0020, "Return EAHandle,Information Level 2" ], |
||
1826 | [ 0x0021, "Return NetWareHandle,Information Level 2" ], |
||
1827 | [ 0x0022, "Return Volume/Directory Number,Information Level 2" ], |
||
1828 | [ 0x0024, "Return EAHandle,Close Handle on Error,Information Level 2" ], |
||
1829 | [ 0x0025, "Return NetWareHandle,Close Handle on Error,Information Level 2" ], |
||
1830 | [ 0x0026, "Return Volume/Directory Number,Close Handle on Error,Information Level 2" ], |
||
1831 | [ 0x0030, "Return EAHandle,Information Level 3" ], |
||
1832 | [ 0x0031, "Return NetWareHandle,Information Level 3" ], |
||
1833 | [ 0x0032, "Return Volume/Directory Number,Information Level 3" ], |
||
1834 | [ 0x0034, "Return EAHandle,Close Handle on Error,Information Level 3" ], |
||
1835 | [ 0x0035, "Return NetWareHandle,Close Handle on Error,Information Level 3" ], |
||
1836 | [ 0x0036, "Return Volume/Directory Number,Close Handle on Error,Information Level 3" ], |
||
1837 | [ 0x0040, "Return EAHandle,Information Level 4" ], |
||
1838 | [ 0x0041, "Return NetWareHandle,Information Level 4" ], |
||
1839 | [ 0x0042, "Return Volume/Directory Number,Information Level 4" ], |
||
1840 | [ 0x0044, "Return EAHandle,Close Handle on Error,Information Level 4" ], |
||
1841 | [ 0x0045, "Return NetWareHandle,Close Handle on Error,Information Level 4" ], |
||
1842 | [ 0x0046, "Return Volume/Directory Number,Close Handle on Error,Information Level 4" ], |
||
1843 | [ 0x0050, "Return EAHandle,Information Level 5" ], |
||
1844 | [ 0x0051, "Return NetWareHandle,Information Level 5" ], |
||
1845 | [ 0x0052, "Return Volume/Directory Number,Information Level 5" ], |
||
1846 | [ 0x0054, "Return EAHandle,Close Handle on Error,Information Level 5" ], |
||
1847 | [ 0x0055, "Return NetWareHandle,Close Handle on Error,Information Level 5" ], |
||
1848 | [ 0x0056, "Return Volume/Directory Number,Close Handle on Error,Information Level 5" ], |
||
1849 | [ 0x0060, "Return EAHandle,Information Level 6" ], |
||
1850 | [ 0x0061, "Return NetWareHandle,Information Level 6" ], |
||
1851 | [ 0x0062, "Return Volume/Directory Number,Information Level 6" ], |
||
1852 | [ 0x0064, "Return EAHandle,Close Handle on Error,Information Level 6" ], |
||
1853 | [ 0x0065, "Return NetWareHandle,Close Handle on Error,Information Level 6" ], |
||
1854 | [ 0x0066, "Return Volume/Directory Number,Close Handle on Error,Information Level 6" ], |
||
1855 | [ 0x0070, "Return EAHandle,Information Level 7" ], |
||
1856 | [ 0x0071, "Return NetWareHandle,Information Level 7" ], |
||
1857 | [ 0x0072, "Return Volume/Directory Number,Information Level 7" ], |
||
1858 | [ 0x0074, "Return EAHandle,Close Handle on Error,Information Level 7" ], |
||
1859 | [ 0x0075, "Return NetWareHandle,Close Handle on Error,Information Level 7" ], |
||
1860 | [ 0x0076, "Return Volume/Directory Number,Close Handle on Error,Information Level 7" ], |
||
1861 | [ 0x0080, "Return EAHandle,Information Level 0,Immediate Close Handle" ], |
||
1862 | [ 0x0081, "Return NetWareHandle,Information Level 0,Immediate Close Handle" ], |
||
1863 | [ 0x0082, "Return Volume/Directory Number,Information Level 0,Immediate Close Handle" ], |
||
1864 | [ 0x0084, "Return EAHandle,Close Handle on Error,Information Level 0,Immediate Close Handle" ], |
||
1865 | [ 0x0085, "Return NetWareHandle,Close Handle on Error,Information Level 0,Immediate Close Handle" ], |
||
1866 | [ 0x0086, "Return Volume/Directory Number,Close Handle on Error,Information Level 0,Immediate Close Handle" ], |
||
1867 | [ 0x0090, "Return EAHandle,Information Level 1,Immediate Close Handle" ], |
||
1868 | [ 0x0091, "Return NetWareHandle,Information Level 1,Immediate Close Handle" ], |
||
1869 | [ 0x0092, "Return Volume/Directory Number,Information Level 1,Immediate Close Handle" ], |
||
1870 | [ 0x0094, "Return EAHandle,Close Handle on Error,Information Level 1,Immediate Close Handle" ], |
||
1871 | [ 0x0095, "Return NetWareHandle,Close Handle on Error,Information Level 1,Immediate Close Handle" ], |
||
1872 | [ 0x0096, "Return Volume/Directory Number,Close Handle on Error,Information Level 1,Immediate Close Handle" ], |
||
1873 | [ 0x00a0, "Return EAHandle,Information Level 2,Immediate Close Handle" ], |
||
1874 | [ 0x00a1, "Return NetWareHandle,Information Level 2,Immediate Close Handle" ], |
||
1875 | [ 0x00a2, "Return Volume/Directory Number,Information Level 2,Immediate Close Handle" ], |
||
1876 | [ 0x00a4, "Return EAHandle,Close Handle on Error,Information Level 2,Immediate Close Handle" ], |
||
1877 | [ 0x00a5, "Return NetWareHandle,Close Handle on Error,Information Level 2,Immediate Close Handle" ], |
||
1878 | [ 0x00a6, "Return Volume/Directory Number,Close Handle on Error,Information Level 2,Immediate Close Handle" ], |
||
1879 | [ 0x00b0, "Return EAHandle,Information Level 3,Immediate Close Handle" ], |
||
1880 | [ 0x00b1, "Return NetWareHandle,Information Level 3,Immediate Close Handle" ], |
||
1881 | [ 0x00b2, "Return Volume/Directory Number,Information Level 3,Immediate Close Handle" ], |
||
1882 | [ 0x00b4, "Return EAHandle,Close Handle on Error,Information Level 3,Immediate Close Handle" ], |
||
1883 | [ 0x00b5, "Return NetWareHandle,Close Handle on Error,Information Level 3,Immediate Close Handle" ], |
||
1884 | [ 0x00b6, "Return Volume/Directory Number,Close Handle on Error,Information Level 3,Immediate Close Handle" ], |
||
1885 | [ 0x00c0, "Return EAHandle,Information Level 4,Immediate Close Handle" ], |
||
1886 | [ 0x00c1, "Return NetWareHandle,Information Level 4,Immediate Close Handle" ], |
||
1887 | [ 0x00c2, "Return Volume/Directory Number,Information Level 4,Immediate Close Handle" ], |
||
1888 | [ 0x00c4, "Return EAHandle,Close Handle on Error,Information Level 4,Immediate Close Handle" ], |
||
1889 | [ 0x00c5, "Return NetWareHandle,Close Handle on Error,Information Level 4,Immediate Close Handle" ], |
||
1890 | [ 0x00c6, "Return Volume/Directory Number,Close Handle on Error,Information Level 4,Immediate Close Handle" ], |
||
1891 | [ 0x00d0, "Return EAHandle,Information Level 5,Immediate Close Handle" ], |
||
1892 | [ 0x00d1, "Return NetWareHandle,Information Level 5,Immediate Close Handle" ], |
||
1893 | [ 0x00d2, "Return Volume/Directory Number,Information Level 5,Immediate Close Handle" ], |
||
1894 | [ 0x00d4, "Return EAHandle,Close Handle on Error,Information Level 5,Immediate Close Handle" ], |
||
1895 | [ 0x00d5, "Return NetWareHandle,Close Handle on Error,Information Level 5,Immediate Close Handle" ], |
||
1896 | [ 0x00d6, "Return Volume/Directory Number,Close Handle on Error,Information Level 5,Immediate Close Handle" ], |
||
1897 | [ 0x00e0, "Return EAHandle,Information Level 6,Immediate Close Handle" ], |
||
1898 | [ 0x00e1, "Return NetWareHandle,Information Level 6,Immediate Close Handle" ], |
||
1899 | [ 0x00e2, "Return Volume/Directory Number,Information Level 6,Immediate Close Handle" ], |
||
1900 | [ 0x00e4, "Return EAHandle,Close Handle on Error,Information Level 6,Immediate Close Handle" ], |
||
1901 | [ 0x00e5, "Return NetWareHandle,Close Handle on Error,Information Level 6,Immediate Close Handle" ], |
||
1902 | [ 0x00e6, "Return Volume/Directory Number,Close Handle on Error,Information Level 6,Immediate Close Handle" ], |
||
1903 | [ 0x00f0, "Return EAHandle,Information Level 7,Immediate Close Handle" ], |
||
1904 | [ 0x00f1, "Return NetWareHandle,Information Level 7,Immediate Close Handle" ], |
||
1905 | [ 0x00f2, "Return Volume/Directory Number,Information Level 7,Immediate Close Handle" ], |
||
1906 | [ 0x00f4, "Return EAHandle,Close Handle on Error,Information Level 7,Immediate Close Handle" ], |
||
1907 | [ 0x00f5, "Return NetWareHandle,Close Handle on Error,Information Level 7,Immediate Close Handle" ], |
||
1908 | [ 0x00f6, "Return Volume/Directory Number,Close Handle on Error,Information Level 7,Immediate Close Handle" ], |
||
1909 | ]) |
||
1910 | dstNSIndicator = val_string16("dst_ns_indicator", "Destination Name Space Indicator", [ |
||
1911 | [ 0x0000, "Return Source Name Space Information" ], |
||
1912 | [ 0x0001, "Return Destination Name Space Information" ], |
||
1913 | ]) |
||
1914 | DstQueueID = uint32("dst_queue_id", "Destination Queue ID") |
||
1915 | DuplicateRepliesSent = uint16("duplicate_replies_sent", "Duplicate Replies Sent") |
||
1916 | |||
1917 | EAAccessFlag = bitfield16("ea_access_flag", "EA Access Flag", [ |
||
1918 | bf_boolean16(0x0001, "ea_permanent_memory", "Permanent Memory"), |
||
1919 | bf_boolean16(0x0002, "ea_deep_freeze", "Deep Freeze"), |
||
1920 | bf_boolean16(0x0004, "ea_in_progress", "In Progress"), |
||
1921 | bf_boolean16(0x0008, "ea_header_being_enlarged", "Header Being Enlarged"), |
||
1922 | bf_boolean16(0x0010, "ea_new_tally_used", "New Tally Used"), |
||
1923 | bf_boolean16(0x0020, "ea_tally_need_update", "Tally Need Update"), |
||
1924 | bf_boolean16(0x0040, "ea_score_card_present", "Score Card Present"), |
||
1925 | bf_boolean16(0x0080, "ea_need_bit_flag", "EA Need Bit Flag"), |
||
1926 | bf_boolean16(0x0100, "ea_write_privileges", "Write Privileges"), |
||
1927 | bf_boolean16(0x0200, "ea_read_privileges", "Read Privileges"), |
||
1928 | bf_boolean16(0x0400, "ea_delete_privileges", "Delete Privileges"), |
||
1929 | bf_boolean16(0x0800, "ea_system_ea_only", "System EA Only"), |
||
1930 | bf_boolean16(0x1000, "ea_write_in_progress", "Write In Progress"), |
||
1931 | ]) |
||
1932 | EABytesWritten = uint32("ea_bytes_written", "Bytes Written") |
||
1933 | EACount = uint32("ea_count", "Count") |
||
1934 | EADataSize = uint32("ea_data_size", "Data Size") |
||
1935 | EADataSizeDuplicated = uint32("ea_data_size_duplicated", "Data Size Duplicated") |
||
1936 | EADuplicateCount = uint32("ea_duplicate_count", "Duplicate Count") |
||
1937 | EAErrorCodes = val_string16("ea_error_codes", "EA Error Codes", [ |
||
1938 | [ 0x0000, "SUCCESSFUL" ], |
||
1939 | [ 0x00c8, "ERR_MISSING_EA_KEY" ], |
||
1940 | [ 0x00c9, "ERR_EA_NOT_FOUND" ], |
||
1941 | [ 0x00ca, "ERR_INVALID_EA_HANDLE_TYPE" ], |
||
1942 | [ 0x00cb, "ERR_EA_NO_KEY_NO_DATA" ], |
||
1943 | [ 0x00cc, "ERR_EA_NUMBER_MISMATCH" ], |
||
1944 | [ 0x00cd, "ERR_EXTENT_NUMBER_OUT_OF_RANGE" ], |
||
1945 | [ 0x00ce, "ERR_EA_BAD_DIR_NUM" ], |
||
1946 | [ 0x00cf, "ERR_INVALID_EA_HANDLE" ], |
||
1947 | [ 0x00d0, "ERR_EA_POSITION_OUT_OF_RANGE" ], |
||
1948 | [ 0x00d1, "ERR_EA_ACCESS_DENIED" ], |
||
1949 | [ 0x00d2, "ERR_DATA_PAGE_ODD_SIZE" ], |
||
1950 | [ 0x00d3, "ERR_EA_VOLUME_NOT_MOUNTED" ], |
||
1951 | [ 0x00d4, "ERR_BAD_PAGE_BOUNDARY" ], |
||
1952 | [ 0x00d5, "ERR_INSPECT_FAILURE" ], |
||
1953 | [ 0x00d6, "ERR_EA_ALREADY_CLAIMED" ], |
||
1954 | [ 0x00d7, "ERR_ODD_BUFFER_SIZE" ], |
||
1955 | [ 0x00d8, "ERR_NO_SCORECARDS" ], |
||
1956 | [ 0x00d9, "ERR_BAD_EDS_SIGNATURE" ], |
||
1957 | [ 0x00da, "ERR_EA_SPACE_LIMIT" ], |
||
1958 | [ 0x00db, "ERR_EA_KEY_CORRUPT" ], |
||
1959 | [ 0x00dc, "ERR_EA_KEY_LIMIT" ], |
||
1960 | [ 0x00dd, "ERR_TALLY_CORRUPT" ], |
||
1961 | ]) |
||
1962 | EAFlags = val_string16("ea_flags", "EA Flags", [ |
||
1963 | [ 0x0000, "Return EAHandle,Information Level 0" ], |
||
1964 | [ 0x0001, "Return NetWareHandle,Information Level 0" ], |
||
1965 | [ 0x0002, "Return Volume/Directory Number,Information Level 0" ], |
||
1966 | [ 0x0004, "Return EAHandle,Close Handle on Error,Information Level 0" ], |
||
1967 | [ 0x0005, "Return NetWareHandle,Close Handle on Error,Information Level 0" ], |
||
1968 | [ 0x0006, "Return Volume/Directory Number,Close Handle on Error,Information Level 0" ], |
||
1969 | [ 0x0010, "Return EAHandle,Information Level 1" ], |
||
1970 | [ 0x0011, "Return NetWareHandle,Information Level 1" ], |
||
1971 | [ 0x0012, "Return Volume/Directory Number,Information Level 1" ], |
||
1972 | [ 0x0014, "Return EAHandle,Close Handle on Error,Information Level 1" ], |
||
1973 | [ 0x0015, "Return NetWareHandle,Close Handle on Error,Information Level 1" ], |
||
1974 | [ 0x0016, "Return Volume/Directory Number,Close Handle on Error,Information Level 1" ], |
||
1975 | [ 0x0020, "Return EAHandle,Information Level 2" ], |
||
1976 | [ 0x0021, "Return NetWareHandle,Information Level 2" ], |
||
1977 | [ 0x0022, "Return Volume/Directory Number,Information Level 2" ], |
||
1978 | [ 0x0024, "Return EAHandle,Close Handle on Error,Information Level 2" ], |
||
1979 | [ 0x0025, "Return NetWareHandle,Close Handle on Error,Information Level 2" ], |
||
1980 | [ 0x0026, "Return Volume/Directory Number,Close Handle on Error,Information Level 2" ], |
||
1981 | [ 0x0030, "Return EAHandle,Information Level 3" ], |
||
1982 | [ 0x0031, "Return NetWareHandle,Information Level 3" ], |
||
1983 | [ 0x0032, "Return Volume/Directory Number,Information Level 3" ], |
||
1984 | [ 0x0034, "Return EAHandle,Close Handle on Error,Information Level 3" ], |
||
1985 | [ 0x0035, "Return NetWareHandle,Close Handle on Error,Information Level 3" ], |
||
1986 | [ 0x0036, "Return Volume/Directory Number,Close Handle on Error,Information Level 3" ], |
||
1987 | [ 0x0040, "Return EAHandle,Information Level 4" ], |
||
1988 | [ 0x0041, "Return NetWareHandle,Information Level 4" ], |
||
1989 | [ 0x0042, "Return Volume/Directory Number,Information Level 4" ], |
||
1990 | [ 0x0044, "Return EAHandle,Close Handle on Error,Information Level 4" ], |
||
1991 | [ 0x0045, "Return NetWareHandle,Close Handle on Error,Information Level 4" ], |
||
1992 | [ 0x0046, "Return Volume/Directory Number,Close Handle on Error,Information Level 4" ], |
||
1993 | [ 0x0050, "Return EAHandle,Information Level 5" ], |
||
1994 | [ 0x0051, "Return NetWareHandle,Information Level 5" ], |
||
1995 | [ 0x0052, "Return Volume/Directory Number,Information Level 5" ], |
||
1996 | [ 0x0054, "Return EAHandle,Close Handle on Error,Information Level 5" ], |
||
1997 | [ 0x0055, "Return NetWareHandle,Close Handle on Error,Information Level 5" ], |
||
1998 | [ 0x0056, "Return Volume/Directory Number,Close Handle on Error,Information Level 5" ], |
||
1999 | [ 0x0060, "Return EAHandle,Information Level 6" ], |
||
2000 | [ 0x0061, "Return NetWareHandle,Information Level 6" ], |
||
2001 | [ 0x0062, "Return Volume/Directory Number,Information Level 6" ], |
||
2002 | [ 0x0064, "Return EAHandle,Close Handle on Error,Information Level 6" ], |
||
2003 | [ 0x0065, "Return NetWareHandle,Close Handle on Error,Information Level 6" ], |
||
2004 | [ 0x0066, "Return Volume/Directory Number,Close Handle on Error,Information Level 6" ], |
||
2005 | [ 0x0070, "Return EAHandle,Information Level 7" ], |
||
2006 | [ 0x0071, "Return NetWareHandle,Information Level 7" ], |
||
2007 | [ 0x0072, "Return Volume/Directory Number,Information Level 7" ], |
||
2008 | [ 0x0074, "Return EAHandle,Close Handle on Error,Information Level 7" ], |
||
2009 | [ 0x0075, "Return NetWareHandle,Close Handle on Error,Information Level 7" ], |
||
2010 | [ 0x0076, "Return Volume/Directory Number,Close Handle on Error,Information Level 7" ], |
||
2011 | [ 0x0080, "Return EAHandle,Information Level 0,Immediate Close Handle" ], |
||
2012 | [ 0x0081, "Return NetWareHandle,Information Level 0,Immediate Close Handle" ], |
||
2013 | [ 0x0082, "Return Volume/Directory Number,Information Level 0,Immediate Close Handle" ], |
||
2014 | [ 0x0084, "Return EAHandle,Close Handle on Error,Information Level 0,Immediate Close Handle" ], |
||
2015 | [ 0x0085, "Return NetWareHandle,Close Handle on Error,Information Level 0,Immediate Close Handle" ], |
||
2016 | [ 0x0086, "Return Volume/Directory Number,Close Handle on Error,Information Level 0,Immediate Close Handle" ], |
||
2017 | [ 0x0090, "Return EAHandle,Information Level 1,Immediate Close Handle" ], |
||
2018 | [ 0x0091, "Return NetWareHandle,Information Level 1,Immediate Close Handle" ], |
||
2019 | [ 0x0092, "Return Volume/Directory Number,Information Level 1,Immediate Close Handle" ], |
||
2020 | [ 0x0094, "Return EAHandle,Close Handle on Error,Information Level 1,Immediate Close Handle" ], |
||
2021 | [ 0x0095, "Return NetWareHandle,Close Handle on Error,Information Level 1,Immediate Close Handle" ], |
||
2022 | [ 0x0096, "Return Volume/Directory Number,Close Handle on Error,Information Level 1,Immediate Close Handle" ], |
||
2023 | [ 0x00a0, "Return EAHandle,Information Level 2,Immediate Close Handle" ], |
||
2024 | [ 0x00a1, "Return NetWareHandle,Information Level 2,Immediate Close Handle" ], |
||
2025 | [ 0x00a2, "Return Volume/Directory Number,Information Level 2,Immediate Close Handle" ], |
||
2026 | [ 0x00a4, "Return EAHandle,Close Handle on Error,Information Level 2,Immediate Close Handle" ], |
||
2027 | [ 0x00a5, "Return NetWareHandle,Close Handle on Error,Information Level 2,Immediate Close Handle" ], |
||
2028 | [ 0x00a6, "Return Volume/Directory Number,Close Handle on Error,Information Level 2,Immediate Close Handle" ], |
||
2029 | [ 0x00b0, "Return EAHandle,Information Level 3,Immediate Close Handle" ], |
||
2030 | [ 0x00b1, "Return NetWareHandle,Information Level 3,Immediate Close Handle" ], |
||
2031 | [ 0x00b2, "Return Volume/Directory Number,Information Level 3,Immediate Close Handle" ], |
||
2032 | [ 0x00b4, "Return EAHandle,Close Handle on Error,Information Level 3,Immediate Close Handle" ], |
||
2033 | [ 0x00b5, "Return NetWareHandle,Close Handle on Error,Information Level 3,Immediate Close Handle" ], |
||
2034 | [ 0x00b6, "Return Volume/Directory Number,Close Handle on Error,Information Level 3,Immediate Close Handle" ], |
||
2035 | [ 0x00c0, "Return EAHandle,Information Level 4,Immediate Close Handle" ], |
||
2036 | [ 0x00c1, "Return NetWareHandle,Information Level 4,Immediate Close Handle" ], |
||
2037 | [ 0x00c2, "Return Volume/Directory Number,Information Level 4,Immediate Close Handle" ], |
||
2038 | [ 0x00c4, "Return EAHandle,Close Handle on Error,Information Level 4,Immediate Close Handle" ], |
||
2039 | [ 0x00c5, "Return NetWareHandle,Close Handle on Error,Information Level 4,Immediate Close Handle" ], |
||
2040 | [ 0x00c6, "Return Volume/Directory Number,Close Handle on Error,Information Level 4,Immediate Close Handle" ], |
||
2041 | [ 0x00d0, "Return EAHandle,Information Level 5,Immediate Close Handle" ], |
||
2042 | [ 0x00d1, "Return NetWareHandle,Information Level 5,Immediate Close Handle" ], |
||
2043 | [ 0x00d2, "Return Volume/Directory Number,Information Level 5,Immediate Close Handle" ], |
||
2044 | [ 0x00d4, "Return EAHandle,Close Handle on Error,Information Level 5,Immediate Close Handle" ], |
||
2045 | [ 0x00d5, "Return NetWareHandle,Close Handle on Error,Information Level 5,Immediate Close Handle" ], |
||
2046 | [ 0x00d6, "Return Volume/Directory Number,Close Handle on Error,Information Level 5,Immediate Close Handle" ], |
||
2047 | [ 0x00e0, "Return EAHandle,Information Level 6,Immediate Close Handle" ], |
||
2048 | [ 0x00e1, "Return NetWareHandle,Information Level 6,Immediate Close Handle" ], |
||
2049 | [ 0x00e2, "Return Volume/Directory Number,Information Level 6,Immediate Close Handle" ], |
||
2050 | [ 0x00e4, "Return EAHandle,Close Handle on Error,Information Level 6,Immediate Close Handle" ], |
||
2051 | [ 0x00e5, "Return NetWareHandle,Close Handle on Error,Information Level 6,Immediate Close Handle" ], |
||
2052 | [ 0x00e6, "Return Volume/Directory Number,Close Handle on Error,Information Level 6,Immediate Close Handle" ], |
||
2053 | [ 0x00f0, "Return EAHandle,Information Level 7,Immediate Close Handle" ], |
||
2054 | [ 0x00f1, "Return NetWareHandle,Information Level 7,Immediate Close Handle" ], |
||
2055 | [ 0x00f2, "Return Volume/Directory Number,Information Level 7,Immediate Close Handle" ], |
||
2056 | [ 0x00f4, "Return EAHandle,Close Handle on Error,Information Level 7,Immediate Close Handle" ], |
||
2057 | [ 0x00f5, "Return NetWareHandle,Close Handle on Error,Information Level 7,Immediate Close Handle" ], |
||
2058 | [ 0x00f6, "Return Volume/Directory Number,Close Handle on Error,Information Level 7,Immediate Close Handle" ], |
||
2059 | ]) |
||
2060 | EAHandle = uint32("ea_handle", "EA Handle") |
||
2061 | EAHandle.Display("BASE_HEX") |
||
2062 | EAHandleOrNetWareHandleOrVolume = uint32("ea_handle_or_netware_handle_or_volume", "EAHandle or NetWare Handle or Volume (see EAFlags)") |
||
2063 | EAHandleOrNetWareHandleOrVolume.Display("BASE_HEX") |
||
2064 | EAKey = nstring16("ea_key", "EA Key") |
||
2065 | EAKeySize = uint32("ea_key_size", "Key Size") |
||
2066 | EAKeySizeDuplicated = uint32("ea_key_size_duplicated", "Key Size Duplicated") |
||
2067 | EAValue = nstring16("ea_value", "EA Value") |
||
2068 | EAValueRep = fw_string("ea_value_rep", "EA Value", 1) |
||
2069 | EAValueLength = uint16("ea_value_length", "Value Length") |
||
2070 | EchoSocket = uint16("echo_socket", "Echo Socket") |
||
2071 | EchoSocket.Display('BASE_HEX') |
||
2072 | EffectiveRights = bitfield8("effective_rights", "Effective Rights", [ |
||
2073 | bf_boolean8(0x01, "effective_rights_read", "Read Rights"), |
||
2074 | bf_boolean8(0x02, "effective_rights_write", "Write Rights"), |
||
2075 | bf_boolean8(0x04, "effective_rights_open", "Open Rights"), |
||
2076 | bf_boolean8(0x08, "effective_rights_create", "Create Rights"), |
||
2077 | bf_boolean8(0x10, "effective_rights_delete", "Delete Rights"), |
||
2078 | bf_boolean8(0x20, "effective_rights_parental", "Parental Rights"), |
||
2079 | bf_boolean8(0x40, "effective_rights_search", "Search Rights"), |
||
2080 | bf_boolean8(0x80, "effective_rights_modify", "Modify Rights"), |
||
2081 | ]) |
||
2082 | EnumInfoMask = bitfield8("enum_info_mask", "Return Information Mask", [ |
||
2083 | bf_boolean8(0x01, "enum_info_transport", "Transport Information"), |
||
2084 | bf_boolean8(0x02, "enum_info_time", "Time Information"), |
||
2085 | bf_boolean8(0x04, "enum_info_name", "Name Information"), |
||
2086 | bf_boolean8(0x08, "enum_info_lock", "Lock Information"), |
||
2087 | bf_boolean8(0x10, "enum_info_print", "Print Information"), |
||
2088 | bf_boolean8(0x20, "enum_info_stats", "Statistical Information"), |
||
2089 | bf_boolean8(0x40, "enum_info_account", "Accounting Information"), |
||
2090 | bf_boolean8(0x80, "enum_info_auth", "Authentication Information"), |
||
2091 | ]) |
||
2092 | |||
2093 | eventOffset = bytes("event_offset", "Event Offset", 8) |
||
2094 | eventTime = uint32("event_time", "Event Time") |
||
2095 | eventTime.Display("BASE_HEX") |
||
2096 | ExpirationTime = uint32("expiration_time", "Expiration Time") |
||
2097 | ExpirationTime.Display('BASE_HEX') |
||
2098 | ExtAttrDataSize = uint32("ext_attr_data_size", "Extended Attributes Data Size") |
||
2099 | ExtAttrCount = uint32("ext_attr_count", "Extended Attributes Count") |
||
2100 | ExtAttrKeySize = uint32("ext_attr_key_size", "Extended Attributes Key Size") |
||
2101 | ExtendedAttributesDefined = uint32("extended_attributes_defined", "Extended Attributes Defined") |
||
2102 | ExtendedAttributeExtentsUsed = uint32("extended_attribute_extents_used", "Extended Attribute Extents Used") |
||
2103 | ExtendedInfo = bitfield16("ext_info", "Extended Return Information", [ |
||
2104 | bf_boolean16(0x0001, "ext_info_update", "Last Update"), |
||
2105 | bf_boolean16(0x0002, "ext_info_dos_name", "DOS Name"), |
||
2106 | bf_boolean16(0x0004, "ext_info_flush", "Flush Time"), |
||
2107 | bf_boolean16(0x0008, "ext_info_parental", "Parental"), |
||
2108 | bf_boolean16(0x0010, "ext_info_mac_finder", "MAC Finder"), |
||
2109 | bf_boolean16(0x0020, "ext_info_sibling", "Sibling"), |
||
2110 | bf_boolean16(0x0040, "ext_info_effective", "Effective"), |
||
2111 | bf_boolean16(0x0080, "ext_info_mac_date", "MAC Date"), |
||
2112 | bf_boolean16(0x0100, "ext_info_access", "Last Access"), |
||
2113 | bf_boolean16(0x0400, "ext_info_64_bit_fs", "64 Bit File Sizes"), |
||
2114 | bf_boolean16(0x8000, "ext_info_newstyle", "New Style"), |
||
2115 | ]) |
||
2116 | |||
2117 | ExtentListFormat = uint8("ext_lst_format", "Extent List Format") |
||
2118 | RetExtentListCount = uint8("ret_ext_lst_count", "Extent List Count") |
||
2119 | EndingOffset = bytes("end_offset", "Ending Offset", 8) |
||
2120 | #ExtentLength = bytes("extent_length", "Length", 8), |
||
2121 | ExtentList = bytes("ext_lst", "Extent List", 512) |
||
2122 | ExtRouterActiveFlag = boolean8("ext_router_active_flag", "External Router Active Flag") |
||
2123 | |||
2124 | FailedAllocReqCnt = uint32("failed_alloc_req", "Failed Alloc Request Count") |
||
2125 | FatalFATWriteErrors = uint16("fatal_fat_write_errors", "Fatal FAT Write Errors") |
||
2126 | FATScanErrors = uint16("fat_scan_errors", "FAT Scan Errors") |
||
2127 | FATWriteErrors = uint16("fat_write_errors", "FAT Write Errors") |
||
2128 | FieldsLenTable = bytes("fields_len_table", "Fields Len Table", 32) |
||
2129 | FileCount = uint16("file_count", "File Count") |
||
2130 | FileDate = uint16("file_date", "File Date") |
||
2131 | FileDate.NWDate() |
||
2132 | FileDirWindow = uint16("file_dir_win", "File/Dir Window") |
||
2133 | FileDirWindow.Display("BASE_HEX") |
||
2134 | FileExecuteType = uint8("file_execute_type", "File Execute Type") |
||
2135 | FileExtendedAttributes = val_string8("file_ext_attr", "File Extended Attributes", [ |
||
2136 | [ 0x00, "Search On All Read Only Opens" ], |
||
2137 | [ 0x01, "Search On Read Only Opens With No Path" ], |
||
2138 | [ 0x02, "Shell Default Search Mode" ], |
||
2139 | [ 0x03, "Search On All Opens With No Path" ], |
||
2140 | [ 0x04, "Do Not Search" ], |
||
2141 | [ 0x05, "Reserved" ], |
||
2142 | [ 0x06, "Search On All Opens" ], |
||
2143 | [ 0x07, "Reserved" ], |
||
2144 | [ 0x08, "Search On All Read Only Opens/Indexed" ], |
||
2145 | [ 0x09, "Search On Read Only Opens With No Path/Indexed" ], |
||
2146 | [ 0x0a, "Shell Default Search Mode/Indexed" ], |
||
2147 | [ 0x0b, "Search On All Opens With No Path/Indexed" ], |
||
2148 | [ 0x0c, "Do Not Search/Indexed" ], |
||
2149 | [ 0x0d, "Indexed" ], |
||
2150 | [ 0x0e, "Search On All Opens/Indexed" ], |
||
2151 | [ 0x0f, "Indexed" ], |
||
2152 | [ 0x10, "Search On All Read Only Opens/Transactional" ], |
||
2153 | [ 0x11, "Search On Read Only Opens With No Path/Transactional" ], |
||
2154 | [ 0x12, "Shell Default Search Mode/Transactional" ], |
||
2155 | [ 0x13, "Search On All Opens With No Path/Transactional" ], |
||
2156 | [ 0x14, "Do Not Search/Transactional" ], |
||
2157 | [ 0x15, "Transactional" ], |
||
2158 | [ 0x16, "Search On All Opens/Transactional" ], |
||
2159 | [ 0x17, "Transactional" ], |
||
2160 | [ 0x18, "Search On All Read Only Opens/Indexed/Transactional" ], |
||
2161 | [ 0x19, "Search On Read Only Opens With No Path/Indexed/Transactional" ], |
||
2162 | [ 0x1a, "Shell Default Search Mode/Indexed/Transactional" ], |
||
2163 | [ 0x1b, "Search On All Opens With No Path/Indexed/Transactional" ], |
||
2164 | [ 0x1c, "Do Not Search/Indexed/Transactional" ], |
||
2165 | [ 0x1d, "Indexed/Transactional" ], |
||
2166 | [ 0x1e, "Search On All Opens/Indexed/Transactional" ], |
||
2167 | [ 0x1f, "Indexed/Transactional" ], |
||
2168 | [ 0x40, "Search On All Read Only Opens/Read Audit" ], |
||
2169 | [ 0x41, "Search On Read Only Opens With No Path/Read Audit" ], |
||
2170 | [ 0x42, "Shell Default Search Mode/Read Audit" ], |
||
2171 | [ 0x43, "Search On All Opens With No Path/Read Audit" ], |
||
2172 | [ 0x44, "Do Not Search/Read Audit" ], |
||
2173 | [ 0x45, "Read Audit" ], |
||
2174 | [ 0x46, "Search On All Opens/Read Audit" ], |
||
2175 | [ 0x47, "Read Audit" ], |
||
2176 | [ 0x48, "Search On All Read Only Opens/Indexed/Read Audit" ], |
||
2177 | [ 0x49, "Search On Read Only Opens With No Path/Indexed/Read Audit" ], |
||
2178 | [ 0x4a, "Shell Default Search Mode/Indexed/Read Audit" ], |
||
2179 | [ 0x4b, "Search On All Opens With No Path/Indexed/Read Audit" ], |
||
2180 | [ 0x4c, "Do Not Search/Indexed/Read Audit" ], |
||
2181 | [ 0x4d, "Indexed/Read Audit" ], |
||
2182 | [ 0x4e, "Search On All Opens/Indexed/Read Audit" ], |
||
2183 | [ 0x4f, "Indexed/Read Audit" ], |
||
2184 | [ 0x50, "Search On All Read Only Opens/Transactional/Read Audit" ], |
||
2185 | [ 0x51, "Search On Read Only Opens With No Path/Transactional/Read Audit" ], |
||
2186 | [ 0x52, "Shell Default Search Mode/Transactional/Read Audit" ], |
||
2187 | [ 0x53, "Search On All Opens With No Path/Transactional/Read Audit" ], |
||
2188 | [ 0x54, "Do Not Search/Transactional/Read Audit" ], |
||
2189 | [ 0x55, "Transactional/Read Audit" ], |
||
2190 | [ 0x56, "Search On All Opens/Transactional/Read Audit" ], |
||
2191 | [ 0x57, "Transactional/Read Audit" ], |
||
2192 | [ 0x58, "Search On All Read Only Opens/Indexed/Transactional/Read Audit" ], |
||
2193 | [ 0x59, "Search On Read Only Opens With No Path/Indexed/Transactional/Read Audit" ], |
||
2194 | [ 0x5a, "Shell Default Search Mode/Indexed/Transactional/Read Audit" ], |
||
2195 | [ 0x5b, "Search On All Opens With No Path/Indexed/Transactional/Read Audit" ], |
||
2196 | [ 0x5c, "Do Not Search/Indexed/Transactional/Read Audit" ], |
||
2197 | [ 0x5d, "Indexed/Transactional/Read Audit" ], |
||
2198 | [ 0x5e, "Search On All Opens/Indexed/Transactional/Read Audit" ], |
||
2199 | [ 0x5f, "Indexed/Transactional/Read Audit" ], |
||
2200 | [ 0x80, "Search On All Read Only Opens/Write Audit" ], |
||
2201 | [ 0x81, "Search On Read Only Opens With No Path/Write Audit" ], |
||
2202 | [ 0x82, "Shell Default Search Mode/Write Audit" ], |
||
2203 | [ 0x83, "Search On All Opens With No Path/Write Audit" ], |
||
2204 | [ 0x84, "Do Not Search/Write Audit" ], |
||
2205 | [ 0x85, "Write Audit" ], |
||
2206 | [ 0x86, "Search On All Opens/Write Audit" ], |
||
2207 | [ 0x87, "Write Audit" ], |
||
2208 | [ 0x88, "Search On All Read Only Opens/Indexed/Write Audit" ], |
||
2209 | [ 0x89, "Search On Read Only Opens With No Path/Indexed/Write Audit" ], |
||
2210 | [ 0x8a, "Shell Default Search Mode/Indexed/Write Audit" ], |
||
2211 | [ 0x8b, "Search On All Opens With No Path/Indexed/Write Audit" ], |
||
2212 | [ 0x8c, "Do Not Search/Indexed/Write Audit" ], |
||
2213 | [ 0x8d, "Indexed/Write Audit" ], |
||
2214 | [ 0x8e, "Search On All Opens/Indexed/Write Audit" ], |
||
2215 | [ 0x8f, "Indexed/Write Audit" ], |
||
2216 | [ 0x90, "Search On All Read Only Opens/Transactional/Write Audit" ], |
||
2217 | [ 0x91, "Search On Read Only Opens With No Path/Transactional/Write Audit" ], |
||
2218 | [ 0x92, "Shell Default Search Mode/Transactional/Write Audit" ], |
||
2219 | [ 0x93, "Search On All Opens With No Path/Transactional/Write Audit" ], |
||
2220 | [ 0x94, "Do Not Search/Transactional/Write Audit" ], |
||
2221 | [ 0x95, "Transactional/Write Audit" ], |
||
2222 | [ 0x96, "Search On All Opens/Transactional/Write Audit" ], |
||
2223 | [ 0x97, "Transactional/Write Audit" ], |
||
2224 | [ 0x98, "Search On All Read Only Opens/Indexed/Transactional/Write Audit" ], |
||
2225 | [ 0x99, "Search On Read Only Opens With No Path/Indexed/Transactional/Write Audit" ], |
||
2226 | [ 0x9a, "Shell Default Search Mode/Indexed/Transactional/Write Audit" ], |
||
2227 | [ 0x9b, "Search On All Opens With No Path/Indexed/Transactional/Write Audit" ], |
||
2228 | [ 0x9c, "Do Not Search/Indexed/Transactional/Write Audit" ], |
||
2229 | [ 0x9d, "Indexed/Transactional/Write Audit" ], |
||
2230 | [ 0x9e, "Search On All Opens/Indexed/Transactional/Write Audit" ], |
||
2231 | [ 0x9f, "Indexed/Transactional/Write Audit" ], |
||
2232 | [ 0xa0, "Search On All Read Only Opens/Read Audit/Write Audit" ], |
||
2233 | [ 0xa1, "Search On Read Only Opens With No Path/Read Audit/Write Audit" ], |
||
2234 | [ 0xa2, "Shell Default Search Mode/Read Audit/Write Audit" ], |
||
2235 | [ 0xa3, "Search On All Opens With No Path/Read Audit/Write Audit" ], |
||
2236 | [ 0xa4, "Do Not Search/Read Audit/Write Audit" ], |
||
2237 | [ 0xa5, "Read Audit/Write Audit" ], |
||
2238 | [ 0xa6, "Search On All Opens/Read Audit/Write Audit" ], |
||
2239 | [ 0xa7, "Read Audit/Write Audit" ], |
||
2240 | [ 0xa8, "Search On All Read Only Opens/Indexed/Read Audit/Write Audit" ], |
||
2241 | [ 0xa9, "Search On Read Only Opens With No Path/Indexed/Read Audit/Write Audit" ], |
||
2242 | [ 0xaa, "Shell Default Search Mode/Indexed/Read Audit/Write Audit" ], |
||
2243 | [ 0xab, "Search On All Opens With No Path/Indexed/Read Audit/Write Audit" ], |
||
2244 | [ 0xac, "Do Not Search/Indexed/Read Audit/Write Audit" ], |
||
2245 | [ 0xad, "Indexed/Read Audit/Write Audit" ], |
||
2246 | [ 0xae, "Search On All Opens/Indexed/Read Audit/Write Audit" ], |
||
2247 | [ 0xaf, "Indexed/Read Audit/Write Audit" ], |
||
2248 | [ 0xb0, "Search On All Read Only Opens/Transactional/Read Audit/Write Audit" ], |
||
2249 | [ 0xb1, "Search On Read Only Opens With No Path/Transactional/Read Audit/Write Audit" ], |
||
2250 | [ 0xb2, "Shell Default Search Mode/Transactional/Read Audit/Write Audit" ], |
||
2251 | [ 0xb3, "Search On All Opens With No Path/Transactional/Read Audit/Write Audit" ], |
||
2252 | [ 0xb4, "Do Not Search/Transactional/Read Audit/Write Audit" ], |
||
2253 | [ 0xb5, "Transactional/Read Audit/Write Audit" ], |
||
2254 | [ 0xb6, "Search On All Opens/Transactional/Read Audit/Write Audit" ], |
||
2255 | [ 0xb7, "Transactional/Read Audit/Write Audit" ], |
||
2256 | [ 0xb8, "Search On All Read Only Opens/Indexed/Transactional/Read Audit/Write Audit" ], |
||
2257 | [ 0xb9, "Search On Read Only Opens With No Path/Indexed/Transactional/Read Audit/Write Audit" ], |
||
2258 | [ 0xba, "Shell Default Search Mode/Indexed/Transactional/Read Audit/Write Audit" ], |
||
2259 | [ 0xbb, "Search On All Opens With No Path/Indexed/Transactional/Read Audit/Write Audit" ], |
||
2260 | [ 0xbc, "Do Not Search/Indexed/Transactional/Read Audit/Write Audit" ], |
||
2261 | [ 0xbd, "Indexed/Transactional/Read Audit/Write Audit" ], |
||
2262 | [ 0xbe, "Search On All Opens/Indexed/Transactional/Read Audit/Write Audit" ], |
||
2263 | [ 0xbf, "Indexed/Transactional/Read Audit/Write Audit" ], |
||
2264 | ]) |
||
2265 | fileFlags = uint32("file_flags", "File Flags") |
||
2266 | FileHandle = bytes("file_handle", "File Handle", 6) |
||
2267 | FileLimbo = uint32("file_limbo", "File Limbo") |
||
2268 | FileListCount = uint32("file_list_count", "File List Count") |
||
2269 | FileLock = val_string8("file_lock", "File Lock", [ |
||
2270 | [ 0x00, "Not Locked" ], |
||
2271 | [ 0xfe, "Locked by file lock" ], |
||
2272 | [ 0xff, "Unknown" ], |
||
2273 | ]) |
||
2274 | FileLockCount = uint16("file_lock_count", "File Lock Count") |
||
2275 | FileMigrationState = val_string8("file_mig_state", "File Migration State", [ |
||
2276 | [ 0x00, "Mark file ineligible for file migration" ], |
||
2277 | [ 0x01, "Mark file eligible for file migration" ], |
||
2278 | [ 0x02, "Mark file as migrated and delete fat chains" ], |
||
2279 | [ 0x03, "Reset file status back to normal" ], |
||
2280 | [ 0x04, "Get file data back and reset file status back to normal" ], |
||
2281 | ]) |
||
2282 | FileMode = uint8("file_mode", "File Mode") |
||
2283 | FileName = nstring8("file_name", "Filename") |
||
2284 | FileName12 = fw_string("file_name_12", "Filename", 12) |
||
2285 | FileName14 = fw_string("file_name_14", "Filename", 14) |
||
2286 | FileName16 = nstring16("file_name_16", "Filename") |
||
2287 | FileNameLen = uint8("file_name_len", "Filename Length") |
||
2288 | FileOffset = uint32("file_offset", "File Offset") |
||
2289 | FilePath = nstring8("file_path", "File Path") |
||
2290 | FileSize = uint32("file_size", "File Size", ENC_BIG_ENDIAN) |
||
2291 | FileSize64bit = uint64("f_size_64bit", "64bit File Size") |
||
2292 | FileSystemID = uint8("file_system_id", "File System ID") |
||
2293 | FileTime = uint16("file_time", "File Time") |
||
2294 | FileTime.NWTime() |
||
2295 | FileUseCount = uint16("file_use_count", "File Use Count") |
||
2296 | FileWriteFlags = val_string8("file_write_flags", "File Write Flags", [ |
||
2297 | [ 0x01, "Writing" ], |
||
2298 | [ 0x02, "Write aborted" ], |
||
2299 | ]) |
||
2300 | FileWriteState = val_string8("file_write_state", "File Write State", [ |
||
2301 | [ 0x00, "Not Writing" ], |
||
2302 | [ 0x01, "Write in Progress" ], |
||
2303 | [ 0x02, "Write Being Stopped" ], |
||
2304 | ]) |
||
2305 | Filler = uint8("filler", "Filler") |
||
2306 | FinderAttr = bitfield16("finder_attr", "Finder Info Attributes", [ |
||
2307 | bf_boolean16(0x0001, "finder_attr_desktop", "Object on Desktop"), |
||
2308 | bf_boolean16(0x2000, "finder_attr_invisible", "Object is Invisible"), |
||
2309 | bf_boolean16(0x4000, "finder_attr_bundle", "Object Has Bundle"), |
||
2310 | ]) |
||
2311 | FixedBitMask = uint32("fixed_bit_mask", "Fixed Bit Mask") |
||
2312 | FixedBitsDefined = uint16("fixed_bits_defined", "Fixed Bits Defined") |
||
2313 | FlagBits = uint8("flag_bits", "Flag Bits") |
||
2314 | Flags = uint8("flags", "Flags") |
||
2315 | FlagsDef = uint16("flags_def", "Flags") |
||
2316 | FlushTime = uint32("flush_time", "Flush Time") |
||
2317 | FolderFlag = val_string8("folder_flag", "Folder Flag", [ |
||
2318 | [ 0x00, "Not a Folder" ], |
||
2319 | [ 0x01, "Folder" ], |
||
2320 | ]) |
||
2321 | ForkCount = uint8("fork_count", "Fork Count") |
||
2322 | ForkIndicator = val_string8("fork_indicator", "Fork Indicator", [ |
||
2323 | [ 0x00, "Data Fork" ], |
||
2324 | [ 0x01, "Resource Fork" ], |
||
2325 | ]) |
||
2326 | ForceFlag = val_string8("force_flag", "Force Server Down Flag", [ |
||
2327 | [ 0x00, "Down Server if No Files Are Open" ], |
||
2328 | [ 0xff, "Down Server Immediately, Auto-Close Open Files" ], |
||
2329 | ]) |
||
2330 | ForgedDetachedRequests = uint16("forged_detached_requests", "Forged Detached Requests") |
||
2331 | FormType = uint16( "form_type", "Form Type" ) |
||
2332 | FormTypeCnt = uint32("form_type_count", "Form Types Count") |
||
2333 | FoundSomeMem = uint32("found_some_mem", "Found Some Memory") |
||
2334 | FractionalSeconds = eptime("fractional_time", "Fractional Time in Seconds") |
||
2335 | FraggerHandle = uint32("fragger_handle", "Fragment Handle") |
||
2336 | FraggerHandle.Display('BASE_HEX') |
||
2337 | FragmentWriteOccurred = uint16("fragment_write_occurred", "Fragment Write Occurred") |
||
2338 | FragSize = uint32("frag_size", "Fragment Size") |
||
2339 | FreeableLimboSectors = uint32("freeable_limbo_sectors", "Freeable Limbo Sectors") |
||
2340 | FreeBlocks = uint32("free_blocks", "Free Blocks") |
||
2341 | FreedClusters = uint32("freed_clusters", "Freed Clusters") |
||
2342 | FreeDirectoryEntries = uint16("free_directory_entries", "Free Directory Entries") |
||
2343 | FSEngineFlag = boolean8("fs_engine_flag", "FS Engine Flag") |
||
2344 | FullName = fw_string("full_name", "Full Name", 39) |
||
2345 | |||
2346 | GetSetFlag = val_string8("get_set_flag", "Get Set Flag", [ |
||
2347 | [ 0x00, "Get the default support module ID" ], |
||
2348 | [ 0x01, "Set the default support module ID" ], |
||
2349 | ]) |
||
2350 | GUID = bytes("guid", "GUID", 16) |
||
2351 | |||
2352 | HandleFlag = val_string8("handle_flag", "Handle Flag", [ |
||
2353 | [ 0x00, "Short Directory Handle" ], |
||
2354 | [ 0x01, "Directory Base" ], |
||
2355 | [ 0xFF, "No Handle Present" ], |
||
2356 | ]) |
||
2357 | HandleInfoLevel = val_string8("handle_info_level", "Handle Info Level", [ |
||
2358 | [ 0x00, "Get Limited Information from a File Handle" ], |
||
2359 | [ 0x01, "Get Limited Information from a File Handle Using a Name Space" ], |
||
2360 | [ 0x02, "Get Information from a File Handle" ], |
||
2361 | [ 0x03, "Get Information from a Directory Handle" ], |
||
2362 | [ 0x04, "Get Complete Information from a Directory Handle" ], |
||
2363 | [ 0x05, "Get Complete Information from a File Handle" ], |
||
2364 | ]) |
||
2365 | HeldBytesRead = bytes("held_bytes_read", "Held Bytes Read", 6) |
||
2366 | HeldBytesWritten = bytes("held_bytes_write", "Held Bytes Written", 6) |
||
2367 | HeldConnectTimeInMinutes = uint32("held_conn_time", "Held Connect Time in Minutes") |
||
2368 | HeldRequests = uint32("user_info_held_req", "Held Requests") |
||
2369 | HoldAmount = uint32("hold_amount", "Hold Amount") |
||
2370 | HoldCancelAmount = uint32("hold_cancel_amount", "Hold Cancel Amount") |
||
2371 | HolderID = uint32("holder_id", "Holder ID") |
||
2372 | HolderID.Display("BASE_HEX") |
||
2373 | HoldTime = uint32("hold_time", "Hold Time") |
||
2374 | HopsToNet = uint16("hops_to_net", "Hop Count") |
||
2375 | HorizLocation = uint16("horiz_location", "Horizontal Location") |
||
2376 | HostAddress = bytes("host_address", "Host Address", 6) |
||
2377 | HotFixBlocksAvailable = uint16("hot_fix_blocks_available", "Hot Fix Blocks Available") |
||
2378 | HotFixDisabled = val_string8("hot_fix_disabled", "Hot Fix Disabled", [ |
||
2379 | [ 0x00, "Enabled" ], |
||
2380 | [ 0x01, "Disabled" ], |
||
2381 | ]) |
||
2382 | HotFixTableSize = uint16("hot_fix_table_size", "Hot Fix Table Size") |
||
2383 | HotFixTableStart = uint32("hot_fix_table_start", "Hot Fix Table Start") |
||
2384 | Hour = uint8("s_hour", "Hour") |
||
2385 | HugeBitMask = uint32("huge_bit_mask", "Huge Bit Mask") |
||
2386 | HugeBitsDefined = uint16("huge_bits_defined", "Huge Bits Defined") |
||
2387 | HugeData = nstring8("huge_data", "Huge Data") |
||
2388 | HugeDataUsed = uint32("huge_data_used", "Huge Data Used") |
||
2389 | HugeStateInfo = bytes("huge_state_info", "Huge State Info", 16) |
||
2390 | |||
2391 | IdentificationNumber = uint32("identification_number", "Identification Number") |
||
2392 | IgnoredRxPkts = uint32("ignored_rx_pkts", "Ignored Receive Packets") |
||
2393 | IncomingPacketDiscardedNoDGroup = uint16("incoming_packet_discarded_no_dgroup", "Incoming Packet Discarded No DGroup") |
||
2394 | IndexNumber = uint8("index_number", "Index Number") |
||
2395 | InfoCount = uint16("info_count", "Info Count") |
||
2396 | InfoFlags = bitfield32("info_flags", "Info Flags", [ |
||
2397 | bf_boolean32(0x10000000, "info_flags_security", "Return Object Security"), |
||
2398 | bf_boolean32(0x20000000, "info_flags_flags", "Return Object Flags"), |
||
2399 | bf_boolean32(0x40000000, "info_flags_type", "Return Object Type"), |
||
2400 | bf_boolean32(0x80000000, "info_flags_name", "Return Object Name"), |
||
2401 | ]) |
||
2402 | InfoLevelNumber = val_string8("info_level_num", "Information Level Number", [ |
||
2403 | [ 0x0, "Single Directory Quota Information" ], |
||
2404 | [ 0x1, "Multi-Level Directory Quota Information" ], |
||
2405 | ]) |
||
2406 | InfoMask = bitfield32("info_mask", "Information Mask", [ |
||
2407 | bf_boolean32(0x00000001, "info_flags_dos_time", "DOS Time"), |
||
2408 | bf_boolean32(0x00000002, "info_flags_ref_count", "Reference Count"), |
||
2409 | bf_boolean32(0x00000004, "info_flags_dos_attr", "DOS Attributes"), |
||
2410 | bf_boolean32(0x00000008, "info_flags_ids", "ID's"), |
||
2411 | bf_boolean32(0x00000010, "info_flags_ds_sizes", "Data Stream Sizes"), |
||
2412 | bf_boolean32(0x00000020, "info_flags_ns_attr", "Name Space Attributes"), |
||
2413 | bf_boolean32(0x00000040, "info_flags_ea_present", "EA Present Flag"), |
||
2414 | bf_boolean32(0x00000080, "info_flags_all_attr", "All Attributes"), |
||
2415 | bf_boolean32(0x00000100, "info_flags_all_dirbase_num", "All Directory Base Numbers"), |
||
2416 | bf_boolean32(0x00000200, "info_flags_max_access_mask", "Maximum Access Mask"), |
||
2417 | bf_boolean32(0x00000400, "info_flags_flush_time", "Flush Time"), |
||
2418 | bf_boolean32(0x00000800, "info_flags_prnt_base_id", "Parent Base ID"), |
||
2419 | bf_boolean32(0x00001000, "info_flags_mac_finder", "Mac Finder Information"), |
||
2420 | bf_boolean32(0x00002000, "info_flags_sibling_cnt", "Sibling Count"), |
||
2421 | bf_boolean32(0x00004000, "info_flags_effect_rights", "Effective Rights"), |
||
2422 | bf_boolean32(0x00008000, "info_flags_mac_time", "Mac Time"), |
||
2423 | bf_boolean32(0x20000000, "info_mask_dosname", "DOS Name"), |
||
2424 | bf_boolean32(0x40000000, "info_mask_c_name_space", "Creator Name Space & Name"), |
||
2425 | bf_boolean32(0x80000000, "info_mask_name", "Name"), |
||
2426 | ]) |
||
2427 | InheritedRightsMask = bitfield16("inherited_rights_mask", "Inherited Rights Mask", [ |
||
2428 | bf_boolean16(0x0001, "inh_rights_read", "Read Rights"), |
||
2429 | bf_boolean16(0x0002, "inh_rights_write", "Write Rights"), |
||
2430 | bf_boolean16(0x0004, "inh_rights_open", "Open Rights"), |
||
2431 | bf_boolean16(0x0008, "inh_rights_create", "Create Rights"), |
||
2432 | bf_boolean16(0x0010, "inh_rights_delete", "Delete Rights"), |
||
2433 | bf_boolean16(0x0020, "inh_rights_parent", "Change Access"), |
||
2434 | bf_boolean16(0x0040, "inh_rights_search", "See Files Flag"), |
||
2435 | bf_boolean16(0x0080, "inh_rights_modify", "Modify Rights"), |
||
2436 | bf_boolean16(0x0100, "inh_rights_supervisor", "Supervisor"), |
||
2437 | ]) |
||
2438 | InheritanceRevokeMask = bitfield16("inheritance_revoke_mask", "Revoke Rights Mask", [ |
||
2439 | bf_boolean16(0x0001, "inh_revoke_read", "Read Rights"), |
||
2440 | bf_boolean16(0x0002, "inh_revoke_write", "Write Rights"), |
||
2441 | bf_boolean16(0x0004, "inh_revoke_open", "Open Rights"), |
||
2442 | bf_boolean16(0x0008, "inh_revoke_create", "Create Rights"), |
||
2443 | bf_boolean16(0x0010, "inh_revoke_delete", "Delete Rights"), |
||
2444 | bf_boolean16(0x0020, "inh_revoke_parent", "Change Access"), |
||
2445 | bf_boolean16(0x0040, "inh_revoke_search", "See Files Flag"), |
||
2446 | bf_boolean16(0x0080, "inh_revoke_modify", "Modify Rights"), |
||
2447 | bf_boolean16(0x0100, "inh_revoke_supervisor", "Supervisor"), |
||
2448 | ]) |
||
2449 | InitialSemaphoreValue = uint8("initial_semaphore_value", "Initial Semaphore Value") |
||
2450 | InpInfotype = uint32("inp_infotype", "Information Type") |
||
2451 | Inpld = uint32("inp_ld", "Volume Number or Directory Handle") |
||
2452 | InspectSize = uint32("inspect_size", "Inspect Size") |
||
2453 | InternetBridgeVersion = uint8("internet_bridge_version", "Internet Bridge Version") |
||
2454 | InterruptNumbersUsed = uint32("interrupt_numbers_used", "Interrupt Numbers Used") |
||
2455 | InUse = uint32("in_use", "Blocks in Use") |
||
2456 | InUse64 = uint64("in_use64", "Blocks in Use") |
||
2457 | IOAddressesUsed = bytes("io_addresses_used", "IO Addresses Used", 8) |
||
2458 | IOErrorCount = uint16("io_error_count", "IO Error Count") |
||
2459 | IOEngineFlag = boolean8("io_engine_flag", "IO Engine Flag") |
||
2460 | IPXNotMyNetwork = uint16("ipx_not_my_network", "IPX Not My Network") |
||
2461 | ItemsChanged = uint32("items_changed", "Items Changed") |
||
2462 | ItemsChecked = uint32("items_checked", "Items Checked") |
||
2463 | ItemsCount = uint32("items_count", "Items Count") |
||
2464 | itemsInList = uint32("items_in_list", "Items in List") |
||
2465 | ItemsInPacket = uint32("items_in_packet", "Items in Packet") |
||
2466 | |||
2467 | JobControlFlags = bitfield8("job_control_flags", "Job Control Flags", [ |
||
2468 | bf_boolean8(0x08, "job_control_job_recovery", "Job Recovery"), |
||
2469 | bf_boolean8(0x10, "job_control_reservice", "ReService Job"), |
||
2470 | bf_boolean8(0x20, "job_control_file_open", "File Open"), |
||
2471 | bf_boolean8(0x40, "job_control_user_hold", "User Hold"), |
||
2472 | bf_boolean8(0x80, "job_control_operator_hold", "Operator Hold"), |
||
2473 | |||
2474 | ]) |
||
2475 | JobControlFlagsWord = bitfield16("job_control_flags_word", "Job Control Flags", [ |
||
2476 | bf_boolean16(0x0008, "job_control1_job_recovery", "Job Recovery"), |
||
2477 | bf_boolean16(0x0010, "job_control1_reservice", "ReService Job"), |
||
2478 | bf_boolean16(0x0020, "job_control1_file_open", "File Open"), |
||
2479 | bf_boolean16(0x0040, "job_control1_user_hold", "User Hold"), |
||
2480 | bf_boolean16(0x0080, "job_control1_operator_hold", "Operator Hold"), |
||
2481 | |||
2482 | ]) |
||
2483 | JobCount = uint32("job_count", "Job Count") |
||
2484 | JobFileHandle = bytes("job_file_handle", "Job File Handle", 6) |
||
2485 | JobFileHandleLong = uint32("job_file_handle_long", "Job File Handle", ENC_BIG_ENDIAN) |
||
2486 | JobFileHandleLong.Display("BASE_HEX") |
||
2487 | JobFileName = fw_string("job_file_name", "Job File Name", 14) |
||
2488 | JobPosition = uint8("job_position", "Job Position") |
||
2489 | JobPositionWord = uint16("job_position_word", "Job Position") |
||
2490 | JobNumber = uint16("job_number", "Job Number", ENC_BIG_ENDIAN ) |
||
2491 | JobNumberLong = uint32("job_number_long", "Job Number", ENC_BIG_ENDIAN ) |
||
2492 | JobNumberLong.Display("BASE_HEX") |
||
2493 | JobType = uint16("job_type", "Job Type", ENC_BIG_ENDIAN ) |
||
2494 | |||
2495 | LANCustomVariablesCount = uint32("lan_cust_var_count", "LAN Custom Variables Count") |
||
2496 | LANdriverBoardInstance = uint16("lan_drv_bd_inst", "LAN Driver Board Instance") |
||
2497 | LANdriverBoardNumber = uint16("lan_drv_bd_num", "LAN Driver Board Number") |
||
2498 | LANdriverCardID = uint16("lan_drv_card_id", "LAN Driver Card ID") |
||
2499 | LANdriverCardName = fw_string("lan_drv_card_name", "LAN Driver Card Name", 28) |
||
2500 | LANdriverCFG_MajorVersion = uint8("lan_dvr_cfg_major_vrs", "LAN Driver Config - Major Version") |
||
2501 | LANdriverCFG_MinorVersion = uint8("lan_dvr_cfg_minor_vrs", "LAN Driver Config - Minor Version") |
||
2502 | LANdriverDMAUsage1 = uint8("lan_drv_dma_usage1", "Primary DMA Channel") |
||
2503 | LANdriverDMAUsage2 = uint8("lan_drv_dma_usage2", "Secondary DMA Channel") |
||
2504 | LANdriverFlags = uint16("lan_drv_flags", "LAN Driver Flags") |
||
2505 | LANdriverFlags.Display("BASE_HEX") |
||
2506 | LANdriverInterrupt1 = uint8("lan_drv_interrupt1", "Primary Interrupt Vector") |
||
2507 | LANdriverInterrupt2 = uint8("lan_drv_interrupt2", "Secondary Interrupt Vector") |
||
2508 | LANdriverIOPortsAndRanges1 = uint16("lan_drv_io_ports_and_ranges_1", "Primary Base I/O Port") |
||
2509 | LANdriverIOPortsAndRanges2 = uint16("lan_drv_io_ports_and_ranges_2", "Number of I/O Ports") |
||
2510 | LANdriverIOPortsAndRanges3 = uint16("lan_drv_io_ports_and_ranges_3", "Secondary Base I/O Port") |
||
2511 | LANdriverIOPortsAndRanges4 = uint16("lan_drv_io_ports_and_ranges_4", "Number of I/O Ports") |
||
2512 | LANdriverIOReserved = bytes("lan_drv_io_reserved", "LAN Driver IO Reserved", 14) |
||
2513 | LANdriverLineSpeed = uint16("lan_drv_line_speed", "LAN Driver Line Speed") |
||
2514 | LANdriverLink = uint32("lan_drv_link", "LAN Driver Link") |
||
2515 | LANdriverLogicalName = bytes("lan_drv_log_name", "LAN Driver Logical Name", 18) |
||
2516 | LANdriverMajorVersion = uint8("lan_drv_major_ver", "LAN Driver Major Version") |
||
2517 | LANdriverMaximumSize = uint32("lan_drv_max_size", "LAN Driver Maximum Size") |
||
2518 | LANdriverMaxRecvSize = uint32("lan_drv_max_rcv_size", "LAN Driver Maximum Receive Size") |
||
2519 | LANdriverMediaID = uint16("lan_drv_media_id", "LAN Driver Media ID") |
||
2520 | LANdriverMediaType = fw_string("lan_drv_media_type", "LAN Driver Media Type", 40) |
||
2521 | LANdriverMemoryDecode0 = uint32("lan_drv_mem_decode_0", "LAN Driver Memory Decode 0") |
||
2522 | LANdriverMemoryDecode1 = uint32("lan_drv_mem_decode_1", "LAN Driver Memory Decode 1") |
||
2523 | LANdriverMemoryLength0 = uint16("lan_drv_mem_length_0", "LAN Driver Memory Length 0") |
||
2524 | LANdriverMemoryLength1 = uint16("lan_drv_mem_length_1", "LAN Driver Memory Length 1") |
||
2525 | LANdriverMinorVersion = uint8("lan_drv_minor_ver", "LAN Driver Minor Version") |
||
2526 | LANdriverModeFlags = val_string8("lan_dvr_mode_flags", "LAN Driver Mode Flags", [ |
||
2527 | [0x80, "Canonical Address" ], |
||
2528 | [0x81, "Canonical Address" ], |
||
2529 | [0x82, "Canonical Address" ], |
||
2530 | [0x83, "Canonical Address" ], |
||
2531 | [0x84, "Canonical Address" ], |
||
2532 | [0x85, "Canonical Address" ], |
||
2533 | [0x86, "Canonical Address" ], |
||
2534 | [0x87, "Canonical Address" ], |
||
2535 | [0x88, "Canonical Address" ], |
||
2536 | [0x89, "Canonical Address" ], |
||
2537 | [0x8a, "Canonical Address" ], |
||
2538 | [0x8b, "Canonical Address" ], |
||
2539 | [0x8c, "Canonical Address" ], |
||
2540 | [0x8d, "Canonical Address" ], |
||
2541 | [0x8e, "Canonical Address" ], |
||
2542 | [0x8f, "Canonical Address" ], |
||
2543 | [0x90, "Canonical Address" ], |
||
2544 | [0x91, "Canonical Address" ], |
||
2545 | [0x92, "Canonical Address" ], |
||
2546 | [0x93, "Canonical Address" ], |
||
2547 | [0x94, "Canonical Address" ], |
||
2548 | [0x95, "Canonical Address" ], |
||
2549 | [0x96, "Canonical Address" ], |
||
2550 | [0x97, "Canonical Address" ], |
||
2551 | [0x98, "Canonical Address" ], |
||
2552 | [0x99, "Canonical Address" ], |
||
2553 | [0x9a, "Canonical Address" ], |
||
2554 | [0x9b, "Canonical Address" ], |
||
2555 | [0x9c, "Canonical Address" ], |
||
2556 | [0x9d, "Canonical Address" ], |
||
2557 | [0x9e, "Canonical Address" ], |
||
2558 | [0x9f, "Canonical Address" ], |
||
2559 | [0xa0, "Canonical Address" ], |
||
2560 | [0xa1, "Canonical Address" ], |
||
2561 | [0xa2, "Canonical Address" ], |
||
2562 | [0xa3, "Canonical Address" ], |
||
2563 | [0xa4, "Canonical Address" ], |
||
2564 | [0xa5, "Canonical Address" ], |
||
2565 | [0xa6, "Canonical Address" ], |
||
2566 | [0xa7, "Canonical Address" ], |
||
2567 | [0xa8, "Canonical Address" ], |
||
2568 | [0xa9, "Canonical Address" ], |
||
2569 | [0xaa, "Canonical Address" ], |
||
2570 | [0xab, "Canonical Address" ], |
||
2571 | [0xac, "Canonical Address" ], |
||
2572 | [0xad, "Canonical Address" ], |
||
2573 | [0xae, "Canonical Address" ], |
||
2574 | [0xaf, "Canonical Address" ], |
||
2575 | [0xb0, "Canonical Address" ], |
||
2576 | [0xb1, "Canonical Address" ], |
||
2577 | [0xb2, "Canonical Address" ], |
||
2578 | [0xb3, "Canonical Address" ], |
||
2579 | [0xb4, "Canonical Address" ], |
||
2580 | [0xb5, "Canonical Address" ], |
||
2581 | [0xb6, "Canonical Address" ], |
||
2582 | [0xb7, "Canonical Address" ], |
||
2583 | [0xb8, "Canonical Address" ], |
||
2584 | [0xb9, "Canonical Address" ], |
||
2585 | [0xba, "Canonical Address" ], |
||
2586 | [0xbb, "Canonical Address" ], |
||
2587 | [0xbc, "Canonical Address" ], |
||
2588 | [0xbd, "Canonical Address" ], |
||
2589 | [0xbe, "Canonical Address" ], |
||
2590 | [0xbf, "Canonical Address" ], |
||
2591 | [0xc0, "Non-Canonical Address" ], |
||
2592 | [0xc1, "Non-Canonical Address" ], |
||
2593 | [0xc2, "Non-Canonical Address" ], |
||
2594 | [0xc3, "Non-Canonical Address" ], |
||
2595 | [0xc4, "Non-Canonical Address" ], |
||
2596 | [0xc5, "Non-Canonical Address" ], |
||
2597 | [0xc6, "Non-Canonical Address" ], |
||
2598 | [0xc7, "Non-Canonical Address" ], |
||
2599 | [0xc8, "Non-Canonical Address" ], |
||
2600 | [0xc9, "Non-Canonical Address" ], |
||
2601 | [0xca, "Non-Canonical Address" ], |
||
2602 | [0xcb, "Non-Canonical Address" ], |
||
2603 | [0xcc, "Non-Canonical Address" ], |
||
2604 | [0xcd, "Non-Canonical Address" ], |
||
2605 | [0xce, "Non-Canonical Address" ], |
||
2606 | [0xcf, "Non-Canonical Address" ], |
||
2607 | [0xd0, "Non-Canonical Address" ], |
||
2608 | [0xd1, "Non-Canonical Address" ], |
||
2609 | [0xd2, "Non-Canonical Address" ], |
||
2610 | [0xd3, "Non-Canonical Address" ], |
||
2611 | [0xd4, "Non-Canonical Address" ], |
||
2612 | [0xd5, "Non-Canonical Address" ], |
||
2613 | [0xd6, "Non-Canonical Address" ], |
||
2614 | [0xd7, "Non-Canonical Address" ], |
||
2615 | [0xd8, "Non-Canonical Address" ], |
||
2616 | [0xd9, "Non-Canonical Address" ], |
||
2617 | [0xda, "Non-Canonical Address" ], |
||
2618 | [0xdb, "Non-Canonical Address" ], |
||
2619 | [0xdc, "Non-Canonical Address" ], |
||
2620 | [0xdd, "Non-Canonical Address" ], |
||
2621 | [0xde, "Non-Canonical Address" ], |
||
2622 | [0xdf, "Non-Canonical Address" ], |
||
2623 | [0xe0, "Non-Canonical Address" ], |
||
2624 | [0xe1, "Non-Canonical Address" ], |
||
2625 | [0xe2, "Non-Canonical Address" ], |
||
2626 | [0xe3, "Non-Canonical Address" ], |
||
2627 | [0xe4, "Non-Canonical Address" ], |
||
2628 | [0xe5, "Non-Canonical Address" ], |
||
2629 | [0xe6, "Non-Canonical Address" ], |
||
2630 | [0xe7, "Non-Canonical Address" ], |
||
2631 | [0xe8, "Non-Canonical Address" ], |
||
2632 | [0xe9, "Non-Canonical Address" ], |
||
2633 | [0xea, "Non-Canonical Address" ], |
||
2634 | [0xeb, "Non-Canonical Address" ], |
||
2635 | [0xec, "Non-Canonical Address" ], |
||
2636 | [0xed, "Non-Canonical Address" ], |
||
2637 | [0xee, "Non-Canonical Address" ], |
||
2638 | [0xef, "Non-Canonical Address" ], |
||
2639 | [0xf0, "Non-Canonical Address" ], |
||
2640 | [0xf1, "Non-Canonical Address" ], |
||
2641 | [0xf2, "Non-Canonical Address" ], |
||
2642 | [0xf3, "Non-Canonical Address" ], |
||
2643 | [0xf4, "Non-Canonical Address" ], |
||
2644 | [0xf5, "Non-Canonical Address" ], |
||
2645 | [0xf6, "Non-Canonical Address" ], |
||
2646 | [0xf7, "Non-Canonical Address" ], |
||
2647 | [0xf8, "Non-Canonical Address" ], |
||
2648 | [0xf9, "Non-Canonical Address" ], |
||
2649 | [0xfa, "Non-Canonical Address" ], |
||
2650 | [0xfb, "Non-Canonical Address" ], |
||
2651 | [0xfc, "Non-Canonical Address" ], |
||
2652 | [0xfd, "Non-Canonical Address" ], |
||
2653 | [0xfe, "Non-Canonical Address" ], |
||
2654 | [0xff, "Non-Canonical Address" ], |
||
2655 | ]) |
||
2656 | LANDriverNumber = uint8("lan_driver_number", "LAN Driver Number") |
||
2657 | LANdriverNodeAddress = bytes("lan_dvr_node_addr", "LAN Driver Node Address", 6) |
||
2658 | LANdriverRecvSize = uint32("lan_drv_rcv_size", "LAN Driver Receive Size") |
||
2659 | LANdriverReserved = uint16("lan_drv_reserved", "LAN Driver Reserved") |
||
2660 | LANdriverSendRetries = uint16("lan_drv_snd_retries", "LAN Driver Send Retries") |
||
2661 | LANdriverSharingFlags = uint16("lan_drv_share", "LAN Driver Sharing Flags") |
||
2662 | LANdriverShortName = fw_string("lan_drv_short_name", "LAN Driver Short Name", 40) |
||
2663 | LANdriverSlot = uint16("lan_drv_slot", "LAN Driver Slot") |
||
2664 | LANdriverSrcRouting = uint32("lan_drv_src_route", "LAN Driver Source Routing") |
||
2665 | LANdriverTransportTime = uint16("lan_drv_trans_time", "LAN Driver Transport Time") |
||
2666 | LastAccessedDate = uint16("last_access_date", "Last Accessed Date") |
||
2667 | LastAccessedDate.NWDate() |
||
2668 | LastAccessedTime = uint16("last_access_time", "Last Accessed Time") |
||
2669 | LastAccessedTime.NWTime() |
||
2670 | LastGarbCollect = uint32("last_garbage_collect", "Last Garbage Collection") |
||
2671 | LastInstance = uint32("last_instance", "Last Instance") |
||
2672 | LastRecordSeen = uint16("last_record_seen", "Last Record Seen") |
||
2673 | LastSearchIndex = uint16("last_search_index", "Search Index") |
||
2674 | LastSeen = uint32("last_seen", "Last Seen") |
||
2675 | LastSequenceNumber = uint16("last_sequence_number", "Sequence Number") |
||
2676 | Length64bit = bytes("length_64bit", "64bit Length", 64) |
||
2677 | Level = uint8("level", "Level") |
||
2678 | LFSCounters = uint32("lfs_counters", "LFS Counters") |
||
2679 | LimboDataStreamsCount = uint32("limbo_data_streams_count", "Limbo Data Streams Count") |
||
2680 | limbCount = uint32("limb_count", "Limb Count") |
||
2681 | limbFlags = bitfield32("limb_flags", "Limb Flags", [ |
||
2682 | bf_boolean32(0x00000002, "scan_entire_folder", "Wild Search"), |
||
2683 | bf_boolean32(0x00000004, "scan_files_only", "Scan Files Only"), |
||
2684 | bf_boolean32(0x00000008, "scan_folders_only", "Scan Folders Only"), |
||
2685 | bf_boolean32(0x00000010, "allow_system", "Allow System Files and Folders"), |
||
2686 | bf_boolean32(0x00000020, "allow_hidden", "Allow Hidden Files and Folders"), |
||
2687 | ]) |
||
2688 | |||
2689 | limbScanNum = uint32("limb_scan_num", "Limb Scan Number") |
||
2690 | LimboUsed = uint32("limbo_used", "Limbo Used") |
||
2691 | LoadedNameSpaces = uint8("loaded_name_spaces", "Loaded Name Spaces") |
||
2692 | LocalConnectionID = uint32("local_connection_id", "Local Connection ID") |
||
2693 | LocalConnectionID.Display("BASE_HEX") |
||
2694 | LocalMaxPacketSize = uint32("local_max_packet_size", "Local Max Packet Size") |
||
2695 | LocalMaxSendSize = uint32("local_max_send_size", "Local Max Send Size") |
||
2696 | LocalMaxRecvSize = uint32("local_max_recv_size", "Local Max Recv Size") |
||
2697 | LocalLoginInfoCcode = uint8("local_login_info_ccode", "Local Login Info C Code") |
||
2698 | LocalTargetSocket = uint32("local_target_socket", "Local Target Socket") |
||
2699 | LocalTargetSocket.Display("BASE_HEX") |
||
2700 | LockAreaLen = uint32("lock_area_len", "Lock Area Length") |
||
2701 | LockAreasStartOffset = uint32("lock_areas_start_offset", "Lock Areas Start Offset") |
||
2702 | LockTimeout = uint16("lock_timeout", "Lock Timeout") |
||
2703 | Locked = val_string8("locked", "Locked Flag", [ |
||
2704 | [ 0x00, "Not Locked Exclusively" ], |
||
2705 | [ 0x01, "Locked Exclusively" ], |
||
2706 | ]) |
||
2707 | LockFlag = val_string8("lock_flag", "Lock Flag", [ |
||
2708 | [ 0x00, "Not Locked, Log for Future Exclusive Lock" ], |
||
2709 | [ 0x01, "Exclusive Lock (Read/Write)" ], |
||
2710 | [ 0x02, "Log for Future Shared Lock"], |
||
2711 | [ 0x03, "Shareable Lock (Read-Only)" ], |
||
2712 | [ 0xfe, "Locked by a File Lock" ], |
||
2713 | [ 0xff, "Locked by Begin Share File Set" ], |
||
2714 | ]) |
||
2715 | LockName = nstring8("lock_name", "Lock Name") |
||
2716 | LockStatus = val_string8("lock_status", "Lock Status", [ |
||
2717 | [ 0x00, "Locked Exclusive" ], |
||
2718 | [ 0x01, "Locked Shareable" ], |
||
2719 | [ 0x02, "Logged" ], |
||
2720 | [ 0x06, "Lock is Held by TTS"], |
||
2721 | ]) |
||
2722 | ConnLockStatus = val_string8("conn_lock_status", "Lock Status", [ |
||
2723 | [ 0x00, "Normal (connection free to run)" ], |
||
2724 | [ 0x01, "Waiting on physical record lock" ], |
||
2725 | [ 0x02, "Waiting on a file lock" ], |
||
2726 | [ 0x03, "Waiting on a logical record lock"], |
||
2727 | [ 0x04, "Waiting on a semaphore"], |
||
2728 | ]) |
||
2729 | LockType = val_string8("lock_type", "Lock Type", [ |
||
2730 | [ 0x00, "Locked" ], |
||
2731 | [ 0x01, "Open Shareable" ], |
||
2732 | [ 0x02, "Logged" ], |
||
2733 | [ 0x03, "Open Normal" ], |
||
2734 | [ 0x06, "TTS Holding Lock" ], |
||
2735 | [ 0x07, "Transaction Flag Set on This File" ], |
||
2736 | ]) |
||
2737 | LogFileFlagHigh = bitfield8("log_file_flag_high", "Log File Flag (byte 2)", [ |
||
2738 | bf_boolean8(0x80, "log_flag_call_back", "Call Back Requested" ), |
||
2739 | ]) |
||
2740 | LogFileFlagLow = bitfield8("log_file_flag_low", "Log File Flag", [ |
||
2741 | bf_boolean8(0x01, "log_flag_lock_file", "Lock File Immediately" ), |
||
2742 | ]) |
||
2743 | LoggedObjectID = uint32("logged_object_id", "Logged in Object ID") |
||
2744 | LoggedObjectID.Display("BASE_HEX") |
||
2745 | LoggedCount = uint16("logged_count", "Logged Count") |
||
2746 | LogicalConnectionNumber = uint16("logical_connection_number", "Logical Connection Number", ENC_BIG_ENDIAN) |
||
2747 | LogicalDriveCount = uint8("logical_drive_count", "Logical Drive Count") |
||
2748 | LogicalDriveNumber = uint8("logical_drive_number", "Logical Drive Number") |
||
2749 | LogicalLockThreshold = uint8("logical_lock_threshold", "LogicalLockThreshold") |
||
2750 | LogicalRecordName = nstring8("logical_record_name", "Logical Record Name") |
||
2751 | LoginKey = bytes("login_key", "Login Key", 8) |
||
2752 | LogLockType = uint8("log_lock_type", "Log Lock Type") |
||
2753 | LogTtlRxPkts = uint32("log_ttl_rx_pkts", "Total Received Packets") |
||
2754 | LogTtlTxPkts = uint32("log_ttl_tx_pkts", "Total Transmitted Packets") |
||
2755 | LongName = fw_string("long_name", "Long Name", 32) |
||
2756 | LRUBlockWasDirty = uint16("lru_block_was_dirty", "LRU Block Was Dirty") |
||
2757 | |||
2758 | MacAttr = bitfield16("mac_attr", "Attributes", [ |
||
2759 | bf_boolean16(0x0001, "mac_attr_smode1", "Search Mode"), |
||
2760 | bf_boolean16(0x0002, "mac_attr_smode2", "Search Mode"), |
||
2761 | bf_boolean16(0x0004, "mac_attr_smode3", "Search Mode"), |
||
2762 | bf_boolean16(0x0010, "mac_attr_transaction", "Transaction"), |
||
2763 | bf_boolean16(0x0020, "mac_attr_index", "Index"), |
||
2764 | bf_boolean16(0x0040, "mac_attr_r_audit", "Read Audit"), |
||
2765 | bf_boolean16(0x0080, "mac_attr_w_audit", "Write Audit"), |
||
2766 | bf_boolean16(0x0100, "mac_attr_r_only", "Read Only"), |
||
2767 | bf_boolean16(0x0200, "mac_attr_hidden", "Hidden"), |
||
2768 | bf_boolean16(0x0400, "mac_attr_system", "System"), |
||
2769 | bf_boolean16(0x0800, "mac_attr_execute_only", "Execute Only"), |
||
2770 | bf_boolean16(0x1000, "mac_attr_subdirectory", "Subdirectory"), |
||
2771 | bf_boolean16(0x2000, "mac_attr_archive", "Archive"), |
||
2772 | bf_boolean16(0x8000, "mac_attr_share", "Shareable File"), |
||
2773 | ]) |
||
2774 | MACBackupDate = uint16("mac_backup_date", "Mac Backup Date") |
||
2775 | MACBackupDate.NWDate() |
||
2776 | MACBackupTime = uint16("mac_backup_time", "Mac Backup Time") |
||
2777 | MACBackupTime.NWTime() |
||
2778 | MacBaseDirectoryID = uint32("mac_base_directory_id", "Mac Base Directory ID", ENC_BIG_ENDIAN) |
||
2779 | MacBaseDirectoryID.Display("BASE_HEX") |
||
2780 | MACCreateDate = uint16("mac_create_date", "Mac Create Date") |
||
2781 | MACCreateDate.NWDate() |
||
2782 | MACCreateTime = uint16("mac_create_time", "Mac Create Time") |
||
2783 | MACCreateTime.NWTime() |
||
2784 | MacDestinationBaseID = uint32("mac_destination_base_id", "Mac Destination Base ID") |
||
2785 | MacDestinationBaseID.Display("BASE_HEX") |
||
2786 | MacFinderInfo = bytes("mac_finder_info", "Mac Finder Information", 32) |
||
2787 | MacLastSeenID = uint32("mac_last_seen_id", "Mac Last Seen ID") |
||
2788 | MacLastSeenID.Display("BASE_HEX") |
||
2789 | MacSourceBaseID = uint32("mac_source_base_id", "Mac Source Base ID") |
||
2790 | MacSourceBaseID.Display("BASE_HEX") |
||
2791 | MajorVersion = uint32("major_version", "Major Version") |
||
2792 | MaxBytes = uint16("max_bytes", "Maximum Number of Bytes") |
||
2793 | MaxDataStreams = uint32("max_data_streams", "Maximum Data Streams") |
||
2794 | MaxDirDepth = uint32("max_dir_depth", "Maximum Directory Depth") |
||
2795 | MaximumSpace = uint16("max_space", "Maximum Space") |
||
2796 | MaxNumOfConn = uint32("max_num_of_conn", "Maximum Number of Connections") |
||
2797 | MaxNumOfLANS = uint32("max_num_of_lans", "Maximum Number Of LAN's") |
||
2798 | MaxNumOfMedias = uint32("max_num_of_medias", "Maximum Number Of Media's") |
||
2799 | MaxNumOfNmeSps = uint32("max_num_of_nme_sps", "Maximum Number Of Name Spaces") |
||
2800 | MaxNumOfSpoolPr = uint32("max_num_of_spool_pr", "Maximum Number Of Spool Printers") |
||
2801 | MaxNumOfStacks = uint32("max_num_of_stacks", "Maximum Number Of Stacks") |
||
2802 | MaxNumOfUsers = uint32("max_num_of_users", "Maximum Number Of Users") |
||
2803 | MaxNumOfVol = uint32("max_num_of_vol", "Maximum Number of Volumes") |
||
2804 | MaxReadDataReplySize = uint16("max_read_data_reply_size", "Max Read Data Reply Size") |
||
2805 | MaxSpace = uint32("maxspace", "Maximum Space") |
||
2806 | MaxSpace64 = uint64("maxspace64", "Maximum Space") |
||
2807 | MaxUsedDynamicSpace = uint32("max_used_dynamic_space", "Max Used Dynamic Space") |
||
2808 | MediaList = uint32("media_list", "Media List") |
||
2809 | MediaListCount = uint32("media_list_count", "Media List Count") |
||
2810 | MediaName = nstring8("media_name", "Media Name") |
||
2811 | MediaNumber = uint32("media_number", "Media Number") |
||
2812 | MaxReplyObjectIDCount = uint8("max_reply_obj_id_count", "Max Reply Object ID Count") |
||
2813 | MediaObjectType = val_string8("media_object_type", "Object Type", [ |
||
2814 | [ 0x00, "Adapter" ], |
||
2815 | [ 0x01, "Changer" ], |
||
2816 | [ 0x02, "Removable Device" ], |
||
2817 | [ 0x03, "Device" ], |
||
2818 | [ 0x04, "Removable Media" ], |
||
2819 | [ 0x05, "Partition" ], |
||
2820 | [ 0x06, "Slot" ], |
||
2821 | [ 0x07, "Hotfix" ], |
||
2822 | [ 0x08, "Mirror" ], |
||
2823 | [ 0x09, "Parity" ], |
||
2824 | [ 0x0a, "Volume Segment" ], |
||
2825 | [ 0x0b, "Volume" ], |
||
2826 | [ 0x0c, "Clone" ], |
||
2827 | [ 0x0d, "Fixed Media" ], |
||
2828 | [ 0x0e, "Unknown" ], |
||
2829 | ]) |
||
2830 | MemberName = nstring8("member_name", "Member Name") |
||
2831 | MemberType = val_string16("member_type", "Member Type", [ |
||
2832 | [ 0x0000, "Unknown" ], |
||
2833 | [ 0x0001, "User" ], |
||
2834 | [ 0x0002, "User group" ], |
||
2835 | [ 0x0003, "Print queue" ], |
||
2836 | [ 0x0004, "NetWare file server" ], |
||
2837 | [ 0x0005, "Job server" ], |
||
2838 | [ 0x0006, "Gateway" ], |
||
2839 | [ 0x0007, "Print server" ], |
||
2840 | [ 0x0008, "Archive queue" ], |
||
2841 | [ 0x0009, "Archive server" ], |
||
2842 | [ 0x000a, "Job queue" ], |
||
2843 | [ 0x000b, "Administration" ], |
||
2844 | [ 0x0021, "NAS SNA gateway" ], |
||
2845 | [ 0x0026, "Remote bridge server" ], |
||
2846 | [ 0x0027, "TCP/IP gateway" ], |
||
2847 | ]) |
||
2848 | MessageLanguage = uint32("message_language", "NLM Language") |
||
2849 | MigratedFiles = uint32("migrated_files", "Migrated Files") |
||
2850 | MigratedSectors = uint32("migrated_sectors", "Migrated Sectors") |
||
2851 | MinorVersion = uint32("minor_version", "Minor Version") |
||
2852 | MinSpaceLeft64 = uint64("min_space_left64", "Minimum Space Left") |
||
2853 | Minute = uint8("s_minute", "Minutes") |
||
2854 | MixedModePathFlag = val_string8("mixed_mode_path_flag", "Mixed Mode Path Flag", [ |
||
2855 | [ 0x00, "Mixed mode path handling is not available"], |
||
2856 | [ 0x01, "Mixed mode path handling is available"], |
||
2857 | ]) |
||
2858 | ModifiedDate = uint16("modified_date", "Modified Date") |
||
2859 | ModifiedDate.NWDate() |
||
2860 | ModifiedTime = uint16("modified_time", "Modified Time") |
||
2861 | ModifiedTime.NWTime() |
||
2862 | ModifierID = uint32("modifier_id", "Modifier ID", ENC_BIG_ENDIAN) |
||
2863 | ModifierID.Display("BASE_HEX") |
||
2864 | ModifyDOSInfoMask = bitfield16("modify_dos_info_mask", "Modify DOS Info Mask", [ |
||
2865 | bf_boolean16(0x0002, "modify_dos_read", "Attributes"), |
||
2866 | bf_boolean16(0x0004, "modify_dos_write", "Creation Date"), |
||
2867 | bf_boolean16(0x0008, "modify_dos_open", "Creation Time"), |
||
2868 | bf_boolean16(0x0010, "modify_dos_create", "Creator ID"), |
||
2869 | bf_boolean16(0x0020, "modify_dos_delete", "Archive Date"), |
||
2870 | bf_boolean16(0x0040, "modify_dos_parent", "Archive Time"), |
||
2871 | bf_boolean16(0x0080, "modify_dos_search", "Archiver ID"), |
||
2872 | bf_boolean16(0x0100, "modify_dos_mdate", "Modify Date"), |
||
2873 | bf_boolean16(0x0200, "modify_dos_mtime", "Modify Time"), |
||
2874 | bf_boolean16(0x0400, "modify_dos_mid", "Modifier ID"), |
||
2875 | bf_boolean16(0x0800, "modify_dos_laccess", "Last Access"), |
||
2876 | bf_boolean16(0x1000, "modify_dos_inheritance", "Inheritance"), |
||
2877 | bf_boolean16(0x2000, "modify_dos_max_space", "Maximum Space"), |
||
2878 | ]) |
||
2879 | Month = val_string8("s_month", "Month", [ |
||
2880 | [ 0x01, "January"], |
||
2881 | [ 0x02, "February"], |
||
2882 | [ 0x03, "March"], |
||
2883 | [ 0x04, "April"], |
||
2884 | [ 0x05, "May"], |
||
2885 | [ 0x06, "June"], |
||
2886 | [ 0x07, "July"], |
||
2887 | [ 0x08, "August"], |
||
2888 | [ 0x09, "September"], |
||
2889 | [ 0x0a, "October"], |
||
2890 | [ 0x0b, "November"], |
||
2891 | [ 0x0c, "December"], |
||
2892 | ]) |
||
2893 | |||
2894 | MoreFlag = val_string8("more_flag", "More Flag", [ |
||
2895 | [ 0x00, "No More Segments/Entries Available" ], |
||
2896 | [ 0x01, "More Segments/Entries Available" ], |
||
2897 | [ 0xff, "More Segments/Entries Available" ], |
||
2898 | ]) |
||
2899 | MoreProperties = val_string8("more_properties", "More Properties", [ |
||
2900 | [ 0x00, "No More Properties Available" ], |
||
2901 | [ 0x01, "No More Properties Available" ], |
||
2902 | [ 0xff, "More Properties Available" ], |
||
2903 | ]) |
||
2904 | |||
2905 | Name = nstring8("name", "Name") |
||
2906 | Name12 = fw_string("name12", "Name", 12) |
||
2907 | NameLen = uint8("name_len", "Name Space Length") |
||
2908 | NameLength = uint8("name_length", "Name Length") |
||
2909 | NameList = uint32("name_list", "Name List") |
||
2910 | # |
||
2911 | # XXX - should this value be used to interpret the characters in names, |
||
2912 | # search patterns, and the like? |
||
2913 | # |
||
2914 | # We need to handle character sets better, e.g. translating strings |
||
2915 | # from whatever character set they are in the packet (DOS/Windows code |
||
2916 | # pages, ISO character sets, UNIX EUC character sets, UTF-8, UCS-2/Unicode, |
||
2917 | # Mac character sets, etc.) into UCS-4 or UTF-8 and storing them as such |
||
2918 | # in the protocol tree, and displaying them as best we can. |
||
2919 | # |
||
2920 | NameSpace = val_string8("name_space", "Name Space", [ |
||
2921 | [ 0x00, "DOS" ], |
||
2922 | [ 0x01, "MAC" ], |
||
2923 | [ 0x02, "NFS" ], |
||
2924 | [ 0x03, "FTAM" ], |
||
2925 | [ 0x04, "OS/2, Long" ], |
||
2926 | ]) |
||
2927 | NamesSpaceInfoMask = bitfield16("ns_info_mask", "Names Space Info Mask", [ |
||
2928 | bf_boolean16(0x0001, "ns_info_mask_modify", "Modify Name"), |
||
2929 | bf_boolean16(0x0002, "ns_info_mask_fatt", "File Attributes"), |
||
2930 | bf_boolean16(0x0004, "ns_info_mask_cdate", "Creation Date"), |
||
2931 | bf_boolean16(0x0008, "ns_info_mask_ctime", "Creation Time"), |
||
2932 | bf_boolean16(0x0010, "ns_info_mask_owner", "Owner ID"), |
||
2933 | bf_boolean16(0x0020, "ns_info_mask_adate", "Archive Date"), |
||
2934 | bf_boolean16(0x0040, "ns_info_mask_atime", "Archive Time"), |
||
2935 | bf_boolean16(0x0080, "ns_info_mask_aid", "Archiver ID"), |
||
2936 | bf_boolean16(0x0100, "ns_info_mask_udate", "Update Date"), |
||
2937 | bf_boolean16(0x0200, "ns_info_mask_utime", "Update Time"), |
||
2938 | bf_boolean16(0x0400, "ns_info_mask_uid", "Update ID"), |
||
2939 | bf_boolean16(0x0800, "ns_info_mask_acc_date", "Access Date"), |
||
2940 | bf_boolean16(0x1000, "ns_info_mask_max_acc_mask", "Inheritance"), |
||
2941 | bf_boolean16(0x2000, "ns_info_mask_max_space", "Maximum Space"), |
||
2942 | ]) |
||
2943 | NameSpaceName = nstring8("name_space_name", "Name Space Name") |
||
2944 | nameType = uint32("name_type", "nameType") |
||
2945 | NCPdataSize = uint32("ncp_data_size", "NCP Data Size") |
||
2946 | NCPEncodedStringsBits = uint32("ncp_encoded_strings_bits", "NCP Encoded Strings Bits") |
||
2947 | NCPextensionMajorVersion = uint8("ncp_extension_major_version", "NCP Extension Major Version") |
||
2948 | NCPextensionMinorVersion = uint8("ncp_extension_minor_version", "NCP Extension Minor Version") |
||
2949 | NCPextensionName = nstring8("ncp_extension_name", "NCP Extension Name") |
||
2950 | NCPextensionNumber = uint32("ncp_extension_number", "NCP Extension Number") |
||
2951 | NCPextensionNumber.Display("BASE_HEX") |
||
2952 | NCPExtensionNumbers = uint32("ncp_extension_numbers", "NCP Extension Numbers") |
||
2953 | NCPextensionRevisionNumber = uint8("ncp_extension_revision_number", "NCP Extension Revision Number") |
||
2954 | NCPPeakStaInUse = uint32("ncp_peak_sta_in_use", "Peak Number of Connections since Server was brought up") |
||
2955 | NCPStaInUseCnt = uint32("ncp_sta_in_use", "Number of Workstations Connected to Server") |
||
2956 | NDSRequestFlags = bitfield16("nds_request_flags", "NDS Request Flags", [ |
||
2957 | bf_boolean16(0x0001, "nds_request_flags_output", "Output Fields"), |
||
2958 | bf_boolean16(0x0002, "nds_request_flags_no_such_entry", "No Such Entry"), |
||
2959 | bf_boolean16(0x0004, "nds_request_flags_local_entry", "Local Entry"), |
||
2960 | bf_boolean16(0x0008, "nds_request_flags_type_ref", "Type Referral"), |
||
2961 | bf_boolean16(0x0010, "nds_request_flags_alias_ref", "Alias Referral"), |
||
2962 | bf_boolean16(0x0020, "nds_request_flags_req_cnt", "Request Count"), |
||
2963 | bf_boolean16(0x0040, "nds_request_flags_req_data_size", "Request Data Size"), |
||
2964 | bf_boolean16(0x0080, "nds_request_flags_reply_data_size", "Reply Data Size"), |
||
2965 | bf_boolean16(0x0100, "nds_request_flags_trans_ref", "Transport Referral"), |
||
2966 | bf_boolean16(0x0200, "nds_request_flags_trans_ref2", "Transport Referral"), |
||
2967 | bf_boolean16(0x0400, "nds_request_flags_up_ref", "Up Referral"), |
||
2968 | bf_boolean16(0x0800, "nds_request_flags_dn_ref", "Down Referral"), |
||
2969 | ]) |
||
2970 | NDSStatus = uint32("nds_status", "NDS Status") |
||
2971 | NetBIOSBroadcastWasPropogated = uint32("netbios_broadcast_was_propogated", "NetBIOS Broadcast Was Propogated") |
||
2972 | NetIDNumber = uint32("net_id_number", "Net ID Number") |
||
2973 | NetIDNumber.Display("BASE_HEX") |
||
2974 | NetAddress = nbytes32("address", "Address") |
||
2975 | NetStatus = uint16("net_status", "Network Status") |
||
2976 | NetWareAccessHandle = bytes("netware_access_handle", "NetWare Access Handle", 6) |
||
2977 | NetworkAddress = uint32("network_address", "Network Address") |
||
2978 | NetworkAddress.Display("BASE_HEX") |
||
2979 | NetworkNodeAddress = bytes("network_node_address", "Network Node Address", 6) |
||
2980 | NetworkNumber = uint32("network_number", "Network Number") |
||
2981 | NetworkNumber.Display("BASE_HEX") |
||
2982 | # |
||
2983 | # XXX - this should have the "ipx_socket_vals" value_string table |
||
2984 | # from "packet-ipx.c". |
||
2985 | # |
||
2986 | NetworkSocket = uint16("network_socket", "Network Socket") |
||
2987 | NetworkSocket.Display("BASE_HEX") |
||
2988 | NewAccessRights = bitfield16("new_access_rights_mask", "New Access Rights", [ |
||
2989 | bf_boolean16(0x0001, "new_access_rights_read", "Read"), |
||
2990 | bf_boolean16(0x0002, "new_access_rights_write", "Write"), |
||
2991 | bf_boolean16(0x0004, "new_access_rights_open", "Open"), |
||
2992 | bf_boolean16(0x0008, "new_access_rights_create", "Create"), |
||
2993 | bf_boolean16(0x0010, "new_access_rights_delete", "Delete"), |
||
2994 | bf_boolean16(0x0020, "new_access_rights_parental", "Parental"), |
||
2995 | bf_boolean16(0x0040, "new_access_rights_search", "Search"), |
||
2996 | bf_boolean16(0x0080, "new_access_rights_modify", "Modify"), |
||
2997 | bf_boolean16(0x0100, "new_access_rights_supervisor", "Supervisor"), |
||
2998 | ]) |
||
2999 | NewDirectoryID = uint32("new_directory_id", "New Directory ID", ENC_BIG_ENDIAN) |
||
3000 | NewDirectoryID.Display("BASE_HEX") |
||
3001 | NewEAHandle = uint32("new_ea_handle", "New EA Handle") |
||
3002 | NewEAHandle.Display("BASE_HEX") |
||
3003 | NewFileName = fw_string("new_file_name", "New File Name", 14) |
||
3004 | NewFileNameLen = nstring8("new_file_name_len", "New File Name") |
||
3005 | NewFileSize = uint32("new_file_size", "New File Size") |
||
3006 | NewPassword = nstring8("new_password", "New Password") |
||
3007 | NewPath = nstring8("new_path", "New Path") |
||
3008 | NewPosition = uint8("new_position", "New Position") |
||
3009 | NewObjectName = nstring8("new_object_name", "New Object Name") |
||
3010 | NextCntBlock = uint32("next_cnt_block", "Next Count Block") |
||
3011 | NextHugeStateInfo = bytes("next_huge_state_info", "Next Huge State Info", 16) |
||
3012 | nextLimbScanNum = uint32("next_limb_scan_num", "Next Limb Scan Number") |
||
3013 | NextObjectID = uint32("next_object_id", "Next Object ID", ENC_BIG_ENDIAN) |
||
3014 | NextObjectID.Display("BASE_HEX") |
||
3015 | NextRecord = uint32("next_record", "Next Record") |
||
3016 | NextRequestRecord = uint16("next_request_record", "Next Request Record") |
||
3017 | NextSearchIndex = uint16("next_search_index", "Next Search Index") |
||
3018 | NextSearchNumber = uint16("next_search_number", "Next Search Number") |
||
3019 | NextSearchNum = uint32("nxt_search_num", "Next Search Number") |
||
3020 | nextStartingNumber = uint32("next_starting_number", "Next Starting Number") |
||
3021 | NextTrusteeEntry = uint32("next_trustee_entry", "Next Trustee Entry") |
||
3022 | NextVolumeNumber = uint32("next_volume_number", "Next Volume Number") |
||
3023 | NLMBuffer = nstring8("nlm_buffer", "Buffer") |
||
3024 | NLMcount = uint32("nlm_count", "NLM Count") |
||
3025 | NLMFlags = bitfield8("nlm_flags", "Flags", [ |
||
3026 | bf_boolean8(0x01, "nlm_flags_reentrant", "ReEntrant"), |
||
3027 | bf_boolean8(0x02, "nlm_flags_multiple", "Can Load Multiple Times"), |
||
3028 | bf_boolean8(0x04, "nlm_flags_synchronize", "Synchronize Start"), |
||
3029 | bf_boolean8(0x08, "nlm_flags_pseudo", "PseudoPreemption"), |
||
3030 | ]) |
||
3031 | NLMLoadOptions = uint32("nlm_load_options", "NLM Load Options") |
||
3032 | NLMName = stringz("nlm_name_stringz", "NLM Name") |
||
3033 | NLMNumber = uint32("nlm_number", "NLM Number") |
||
3034 | NLMNumbers = uint32("nlm_numbers", "NLM Numbers") |
||
3035 | NLMsInList = uint32("nlms_in_list", "NLM's in List") |
||
3036 | NLMStartNumber = uint32("nlm_start_num", "NLM Start Number") |
||
3037 | NLMType = val_string8("nlm_type", "NLM Type", [ |
||
3038 | [ 0x00, "Generic NLM (.NLM)" ], |
||
3039 | [ 0x01, "LAN Driver (.LAN)" ], |
||
3040 | [ 0x02, "Disk Driver (.DSK)" ], |
||
3041 | [ 0x03, "Name Space Support Module (.NAM)" ], |
||
3042 | [ 0x04, "Utility or Support Program (.NLM)" ], |
||
3043 | [ 0x05, "Mirrored Server Link (.MSL)" ], |
||
3044 | [ 0x06, "OS NLM (.NLM)" ], |
||
3045 | [ 0x07, "Paged High OS NLM (.NLM)" ], |
||
3046 | [ 0x08, "Host Adapter Module (.HAM)" ], |
||
3047 | [ 0x09, "Custom Device Module (.CDM)" ], |
||
3048 | [ 0x0a, "File System Engine (.NLM)" ], |
||
3049 | [ 0x0b, "Real Mode NLM (.NLM)" ], |
||
3050 | [ 0x0c, "Hidden NLM (.NLM)" ], |
||
3051 | [ 0x15, "NICI Support (.NLM)" ], |
||
3052 | [ 0x16, "NICI Support (.NLM)" ], |
||
3053 | [ 0x17, "Cryptography (.NLM)" ], |
||
3054 | [ 0x18, "Encryption (.NLM)" ], |
||
3055 | [ 0x19, "NICI Support (.NLM)" ], |
||
3056 | [ 0x1c, "NICI Support (.NLM)" ], |
||
3057 | ]) |
||
3058 | nodeFlags = uint32("node_flags", "Node Flags") |
||
3059 | nodeFlags.Display("BASE_HEX") |
||
3060 | NoMoreMemAvlCnt = uint32("no_more_mem_avail", "No More Memory Available Count") |
||
3061 | NonDedFlag = boolean8("non_ded_flag", "Non Dedicated Flag") |
||
3062 | NonFreeableAvailableSubAllocSectors = uint32("non_freeable_avail_sub_alloc_sectors", "Non Freeable Available Sub Alloc Sectors") |
||
3063 | NonFreeableLimboSectors = uint32("non_freeable_limbo_sectors", "Non Freeable Limbo Sectors") |
||
3064 | NotUsableSubAllocSectors = uint32("not_usable_sub_alloc_sectors", "Not Usable Sub Alloc Sectors") |
||
3065 | NotYetPurgeableBlocks = uint32("not_yet_purgeable_blocks", "Not Yet Purgeable Blocks") |
||
3066 | NSInfoBitMask = uint32("ns_info_bit_mask", "Name Space Info Bit Mask") |
||
3067 | NSSOAllInFlags = bitfield32("nsso_all_in_flags", "SecretStore All Input Flags",[ |
||
3068 | bf_boolean32(0x00000010, "nsso_all_unicode", "Unicode Data"), |
||
3069 | bf_boolean32(0x00000080, "nsso_set_tree", "Set Tree"), |
||
3070 | bf_boolean32(0x00000200, "nsso_destroy_ctx", "Destroy Context"), |
||
3071 | ]) |
||
3072 | NSSOGetServiceInFlags = bitfield32("nsso_get_svc_in_flags", "SecretStore Get Service Flags",[ |
||
3073 | bf_boolean32(0x00000100, "nsso_get_ctx", "Get Context"), |
||
3074 | ]) |
||
3075 | NSSOReadInFlags = bitfield32("nsso_read_in_flags", "SecretStore Read Flags",[ |
||
3076 | bf_boolean32(0x00000001, "nsso_rw_enh_prot", "Read/Write Enhanced Protection"), |
||
3077 | bf_boolean32(0x00000008, "nsso_repair", "Repair SecretStore"), |
||
3078 | ]) |
||
3079 | NSSOReadOrUnlockInFlags = bitfield32("nsso_read_or_unlock_in_flags", "SecretStore Read or Unlock Flags",[ |
||
3080 | bf_boolean32(0x00000004, "nsso_ep_master_pwd", "Master Password used instead of ENH Password"), |
||
3081 | ]) |
||
3082 | NSSOUnlockInFlags = bitfield32("nsso_unlock_in_flags", "SecretStore Unlock Flags",[ |
||
3083 | bf_boolean32(0x00000004, "nsso_rmv_lock", "Remove Lock from Store"), |
||
3084 | ]) |
||
3085 | NSSOWriteInFlags = bitfield32("nsso_write_in_flags", "SecretStore Write Flags",[ |
||
3086 | bf_boolean32(0x00000001, "nsso_enh_prot", "Enhanced Protection"), |
||
3087 | bf_boolean32(0x00000002, "nsso_create_id", "Create ID"), |
||
3088 | bf_boolean32(0x00000040, "nsso_ep_pwd_used", "Enhanced Protection Password Used"), |
||
3089 | ]) |
||
3090 | NSSOContextOutFlags = bitfield32("nsso_cts_out_flags", "Type of Context",[ |
||
3091 | bf_boolean32(0x00000001, "nsso_ds_ctx", "DSAPI Context"), |
||
3092 | bf_boolean32(0x00000080, "nsso_ldap_ctx", "LDAP Context"), |
||
3093 | bf_boolean32(0x00000200, "nsso_dc_ctx", "Reserved"), |
||
3094 | ]) |
||
3095 | NSSOGetServiceOutFlags = bitfield32("nsso_get_svc_out_flags", "SecretStore Status Flags",[ |
||
3096 | bf_boolean32(0x00400000, "nsso_mstr_pwd", "Master Password Present"), |
||
3097 | ]) |
||
3098 | NSSOGetServiceReadOutFlags = bitfield32("nsso_get_svc_read_out_flags", "SecretStore Status Flags",[ |
||
3099 | bf_boolean32(0x00800000, "nsso_mp_disabled", "Master Password Disabled"), |
||
3100 | ]) |
||
3101 | NSSOReadOutFlags = bitfield32("nsso_read_out_flags", "SecretStore Read Flags",[ |
||
3102 | bf_boolean32(0x00010000, "nsso_secret_locked", "Enhanced Protection Lock on Secret"), |
||
3103 | bf_boolean32(0x00020000, "nsso_secret_not_init", "Secret Not Yet Initialized"), |
||
3104 | bf_boolean32(0x00040000, "nsso_secret_marked", "Secret Marked for Enhanced Protection"), |
||
3105 | bf_boolean32(0x00080000, "nsso_secret_not_sync", "Secret Not Yet Synchronized in NDS"), |
||
3106 | bf_boolean32(0x00200000, "nsso_secret_enh_pwd", "Enhanced Protection Password on Secret"), |
||
3107 | ]) |
||
3108 | NSSOReadOutStatFlags = bitfield32("nsso_read_out_stat_flags", "SecretStore Read Status Flags",[ |
||
3109 | bf_boolean32(0x00100000, "nsso_admin_mod", "Admin Modified Secret Last"), |
||
3110 | ]) |
||
3111 | NSSOVerb = val_string8("nsso_verb", "SecretStore Verb", [ |
||
3112 | [ 0x00, "Query Server" ], |
||
3113 | [ 0x01, "Read App Secrets" ], |
||
3114 | [ 0x02, "Write App Secrets" ], |
||
3115 | [ 0x03, "Add Secret ID" ], |
||
3116 | [ 0x04, "Remove Secret ID" ], |
||
3117 | [ 0x05, "Remove SecretStore" ], |
||
3118 | [ 0x06, "Enumerate SecretID's" ], |
||
3119 | [ 0x07, "Unlock Store" ], |
||
3120 | [ 0x08, "Set Master Password" ], |
||
3121 | [ 0x09, "Get Service Information" ], |
||
3122 | ]) |
||
3123 | NSSpecificInfo = fw_string("ns_specific_info", "Name Space Specific Info", 512) |
||
3124 | NumberOfActiveTasks = uint8("num_of_active_tasks", "Number of Active Tasks") |
||
3125 | NumberOfAllocs = uint32("num_of_allocs", "Number of Allocations") |
||
3126 | NumberOfCPUs = uint32("number_of_cpus", "Number of CPU's") |
||
3127 | NumberOfDataStreams = uint16("number_of_data_streams", "Number of Data Streams") |
||
3128 | NumberOfDataStreamsLong = uint32("number_of_data_streams_long", "Number of Data Streams") |
||
3129 | NumberOfDynamicMemoryAreas = uint16("number_of_dynamic_memory_areas", "Number Of Dynamic Memory Areas") |
||
3130 | NumberOfEntries = uint8("number_of_entries", "Number of Entries") |
||
3131 | NumberOfEntriesLong = uint32("number_of_entries_long", "Number of Entries") |
||
3132 | NumberOfLocks = uint8("number_of_locks", "Number of Locks") |
||
3133 | NumberOfMinutesToDelay = uint32("number_of_minutes_to_delay", "Number of Minutes to Delay") |
||
3134 | NumberOfNCPExtensions = uint32("number_of_ncp_extensions", "Number Of NCP Extensions") |
||
3135 | NumberOfNSLoaded = uint16("number_of_ns_loaded", "Number Of Name Spaces Loaded") |
||
3136 | NumberOfProtocols = uint8("number_of_protocols", "Number of Protocols") |
||
3137 | NumberOfRecords = uint16("number_of_records", "Number of Records") |
||
3138 | NumberOfReferencedPublics = uint32("num_of_ref_publics", "Number of Referenced Public Symbols") |
||
3139 | NumberOfSemaphores = uint16("number_of_semaphores", "Number Of Semaphores") |
||
3140 | NumberOfServiceProcesses = uint8("number_of_service_processes", "Number Of Service Processes") |
||
3141 | NumberOfSetCategories = uint32("number_of_set_categories", "Number Of Set Categories") |
||
3142 | NumberOfSMs = uint32("number_of_sms", "Number Of Storage Medias") |
||
3143 | NumberOfStations = uint8("number_of_stations", "Number of Stations") |
||
3144 | NumBytes = uint16("num_bytes", "Number of Bytes") |
||
3145 | NumBytesLong = uint32("num_bytes_long", "Number of Bytes") |
||
3146 | NumOfCCinPkt = uint32("num_of_cc_in_pkt", "Number of Custom Counters in Packet") |
||
3147 | NumOfChecks = uint32("num_of_checks", "Number of Checks") |
||
3148 | NumOfEntries = uint32("num_of_entries", "Number of Entries") |
||
3149 | NumOfFilesMigrated = uint32("num_of_files_migrated", "Number Of Files Migrated") |
||
3150 | NumOfGarbageColl = uint32("num_of_garb_coll", "Number of Garbage Collections") |
||
3151 | NumOfNCPReqs = uint32("num_of_ncp_reqs", "Number of NCP Requests since Server was brought up") |
||
3152 | NumOfSegments = uint32("num_of_segments", "Number of Segments") |
||
3153 | |||
3154 | ObjectCount = uint32("object_count", "Object Count") |
||
3155 | ObjectFlags = val_string8("object_flags", "Object Flags", [ |
||
3156 | [ 0x00, "Dynamic object" ], |
||
3157 | [ 0x01, "Static object" ], |
||
3158 | ]) |
||
3159 | ObjectHasProperties = val_string8("object_has_properites", "Object Has Properties", [ |
||
3160 | [ 0x00, "No properties" ], |
||
3161 | [ 0xff, "One or more properties" ], |
||
3162 | ]) |
||
3163 | ObjectID = uint32("object_id", "Object ID", ENC_BIG_ENDIAN) |
||
3164 | ObjectID.Display('BASE_HEX') |
||
3165 | ObjectIDCount = uint16("object_id_count", "Object ID Count") |
||
3166 | ObjectIDInfo = uint32("object_id_info", "Object Information") |
||
3167 | ObjectInfoReturnCount = uint32("object_info_rtn_count", "Object Information Count") |
||
3168 | ObjectName = nstring8("object_name", "Object Name") |
||
3169 | ObjectNameLen = fw_string("object_name_len", "Object Name", 48) |
||
3170 | ObjectNameStringz = stringz("object_name_stringz", "Object Name") |
||
3171 | ObjectNumber = uint32("object_number", "Object Number") |
||
3172 | ObjectSecurity = val_string8("object_security", "Object Security", [ |
||
3173 | [ 0x00, "Object Read (Anyone) / Object Write (Anyone)" ], |
||
3174 | [ 0x01, "Object Read (Logged in) / Object Write (Anyone)" ], |
||
3175 | [ 0x02, "Object Read (Logged in as Object) / Object Write (Anyone)" ], |
||
3176 | [ 0x03, "Object Read (Supervisor) / Object Write (Anyone)" ], |
||
3177 | [ 0x04, "Object Read (Operating System Only) / Object Write (Anyone)" ], |
||
3178 | [ 0x10, "Object Read (Anyone) / Object Write (Logged in)" ], |
||
3179 | [ 0x11, "Object Read (Logged in) / Object Write (Logged in)" ], |
||
3180 | [ 0x12, "Object Read (Logged in as Object) / Object Write (Logged in)" ], |
||
3181 | [ 0x13, "Object Read (Supervisor) / Object Write (Logged in)" ], |
||
3182 | [ 0x14, "Object Read (Operating System Only) / Object Write (Logged in)" ], |
||
3183 | [ 0x20, "Object Read (Anyone) / Object Write (Logged in as Object)" ], |
||
3184 | [ 0x21, "Object Read (Logged in) / Object Write (Logged in as Object)" ], |
||
3185 | [ 0x22, "Object Read (Logged in as Object) / Object Write (Logged in as Object)" ], |
||
3186 | [ 0x23, "Object Read (Supervisor) / Object Write (Logged in as Object)" ], |
||
3187 | [ 0x24, "Object Read (Operating System Only) / Object Write (Logged in as Object)" ], |
||
3188 | [ 0x30, "Object Read (Anyone) / Object Write (Supervisor)" ], |
||
3189 | [ 0x31, "Object Read (Logged in) / Object Write (Supervisor)" ], |
||
3190 | [ 0x32, "Object Read (Logged in as Object) / Object Write (Supervisor)" ], |
||
3191 | [ 0x33, "Object Read (Supervisor) / Object Write (Supervisor)" ], |
||
3192 | [ 0x34, "Object Read (Operating System Only) / Object Write (Supervisor)" ], |
||
3193 | [ 0x40, "Object Read (Anyone) / Object Write (Operating System Only)" ], |
||
3194 | [ 0x41, "Object Read (Logged in) / Object Write (Operating System Only)" ], |
||
3195 | [ 0x42, "Object Read (Logged in as Object) / Object Write (Operating System Only)" ], |
||
3196 | [ 0x43, "Object Read (Supervisor) / Object Write (Operating System Only)" ], |
||
3197 | [ 0x44, "Object Read (Operating System Only) / Object Write (Operating System Only)" ], |
||
3198 | ]) |
||
3199 | # |
||
3200 | # XXX - should this use the "server_vals[]" value_string array from |
||
3201 | # "packet-ipx.c"? |
||
3202 | # |
||
3203 | # XXX - should this list be merged with that list? There are some |
||
3204 | # oddities, e.g. this list has 0x03f5 for "Microsoft SQL Server", but |
||
3205 | # the list from "packet-ipx.c" has 0xf503 for that - is that just |
||
3206 | # byte-order confusion? |
||
3207 | # |
||
3208 | ObjectType = val_string16("object_type", "Object Type", [ |
||
3209 | [ 0x0000, "Unknown" ], |
||
3210 | [ 0x0001, "User" ], |
||
3211 | [ 0x0002, "User group" ], |
||
3212 | [ 0x0003, "Print queue" ], |
||
3213 | [ 0x0004, "NetWare file server" ], |
||
3214 | [ 0x0005, "Job server" ], |
||
3215 | [ 0x0006, "Gateway" ], |
||
3216 | [ 0x0007, "Print server" ], |
||
3217 | [ 0x0008, "Archive queue" ], |
||
3218 | [ 0x0009, "Archive server" ], |
||
3219 | [ 0x000a, "Job queue" ], |
||
3220 | [ 0x000b, "Administration" ], |
||
3221 | [ 0x0021, "NAS SNA gateway" ], |
||
3222 | [ 0x0026, "Remote bridge server" ], |
||
3223 | [ 0x0027, "TCP/IP gateway" ], |
||
3224 | [ 0x0047, "Novell Print Server" ], |
||
3225 | [ 0x004b, "Btrieve Server" ], |
||
3226 | [ 0x004c, "NetWare SQL Server" ], |
||
3227 | [ 0x0064, "ARCserve" ], |
||
3228 | [ 0x0066, "ARCserve 3.0" ], |
||
3229 | [ 0x0076, "NetWare SQL" ], |
||
3230 | [ 0x00a0, "Gupta SQL Base Server" ], |
||
3231 | [ 0x00a1, "Powerchute" ], |
||
3232 | [ 0x0107, "NetWare Remote Console" ], |
||
3233 | [ 0x01cb, "Shiva NetModem/E" ], |
||
3234 | [ 0x01cc, "Shiva LanRover/E" ], |
||
3235 | [ 0x01cd, "Shiva LanRover/T" ], |
||
3236 | [ 0x01d8, "Castelle FAXPress Server" ], |
||
3237 | [ 0x01da, "Castelle Print Server" ], |
||
3238 | [ 0x01dc, "Castelle Fax Server" ], |
||
3239 | [ 0x0200, "Novell SQL Server" ], |
||
3240 | [ 0x023a, "NetWare Lanalyzer Agent" ], |
||
3241 | [ 0x023c, "DOS Target Service Agent" ], |
||
3242 | [ 0x023f, "NetWare Server Target Service Agent" ], |
||
3243 | [ 0x024f, "Appletalk Remote Access Service" ], |
||
3244 | [ 0x0263, "NetWare Management Agent" ], |
||
3245 | [ 0x0264, "Global MHS" ], |
||
3246 | [ 0x0265, "SNMP" ], |
||
3247 | [ 0x026a, "NetWare Management/NMS Console" ], |
||
3248 | [ 0x026b, "NetWare Time Synchronization" ], |
||
3249 | [ 0x0273, "Nest Device" ], |
||
3250 | [ 0x0274, "GroupWise Message Multiple Servers" ], |
||
3251 | [ 0x0278, "NDS Replica Server" ], |
||
3252 | [ 0x0282, "NDPS Service Registry Service" ], |
||
3253 | [ 0x028a, "MPR/IPX Address Mapping Gateway" ], |
||
3254 | [ 0x028b, "ManageWise" ], |
||
3255 | [ 0x0293, "NetWare 6" ], |
||
3256 | [ 0x030c, "HP JetDirect" ], |
||
3257 | [ 0x0328, "Watcom SQL Server" ], |
||
3258 | [ 0x0355, "Backup Exec" ], |
||
3259 | [ 0x039b, "Lotus Notes" ], |
||
3260 | [ 0x03e1, "Univel Server" ], |
||
3261 | [ 0x03f5, "Microsoft SQL Server" ], |
||
3262 | [ 0x055e, "Lexmark Print Server" ], |
||
3263 | [ 0x0640, "Microsoft Gateway Services for NetWare" ], |
||
3264 | [ 0x064e, "Microsoft Internet Information Server" ], |
||
3265 | [ 0x077b, "Advantage Database Server" ], |
||
3266 | [ 0x07a7, "Backup Exec Job Queue" ], |
||
3267 | [ 0x07a8, "Backup Exec Job Manager" ], |
||
3268 | [ 0x07a9, "Backup Exec Job Service" ], |
||
3269 | [ 0x5555, "Site Lock" ], |
||
3270 | [ 0x8202, "NDPS Broker" ], |
||
3271 | ]) |
||
3272 | OCRetFlags = val_string8("o_c_ret_flags", "Open Create Return Flags", [ |
||
3273 | [ 0x00, "No CallBack has been registered (No Op-Lock)" ], |
||
3274 | [ 0x01, "Request has been registered for CallBack (Op-Lock)" ], |
||
3275 | ]) |
||
3276 | OESServer = val_string8("oes_server", "Type of Novell Server", [ |
||
3277 | [ 0x00, "NetWare" ], |
||
3278 | [ 0x01, "OES" ], |
||
3279 | [ 0x02, "OES 64bit" ], |
||
3280 | ]) |
||
3281 | |||
3282 | OESLinuxOrNetWare = val_string8("oeslinux_or_netware", "Kernel Type", [ |
||
3283 | [ 0x00, "NetWare" ], |
||
3284 | [ 0x01, "Linux" ], |
||
3285 | ]) |
||
3286 | |||
3287 | OldestDeletedFileAgeInTicks = uint32("oldest_deleted_file_age_in_ticks", "Oldest Deleted File Age in Ticks") |
||
3288 | OldFileName = bytes("old_file_name", "Old File Name", 15) |
||
3289 | OldFileSize = uint32("old_file_size", "Old File Size") |
||
3290 | OpenCount = uint16("open_count", "Open Count") |
||
3291 | OpenCreateAction = bitfield8("open_create_action", "Open Create Action", [ |
||
3292 | bf_boolean8(0x01, "open_create_action_opened", "Opened"), |
||
3293 | bf_boolean8(0x02, "open_create_action_created", "Created"), |
||
3294 | bf_boolean8(0x04, "open_create_action_replaced", "Replaced"), |
||
3295 | bf_boolean8(0x08, "open_create_action_compressed", "Compressed"), |
||
3296 | bf_boolean8(0x80, "open_create_action_read_only", "Read Only"), |
||
3297 | ]) |
||
3298 | OpenCreateMode = bitfield8("open_create_mode", "Open Create Mode", [ |
||
3299 | bf_boolean8(0x01, "open_create_mode_open", "Open existing file (file must exist)"), |
||
3300 | bf_boolean8(0x02, "open_create_mode_replace", "Replace existing file"), |
||
3301 | bf_boolean8(0x08, "open_create_mode_create", "Create new file or subdirectory (file or subdirectory cannot exist)"), |
||
3302 | bf_boolean8(0x20, "open_create_mode_64bit", "Open 64-bit Access"), |
||
3303 | bf_boolean8(0x40, "open_create_mode_ro", "Open with Read Only Access"), |
||
3304 | bf_boolean8(0x80, "open_create_mode_oplock", "Open Callback (Op-Lock)"), |
||
3305 | ]) |
||
3306 | OpenForReadCount = uint16("open_for_read_count", "Open For Read Count") |
||
3307 | OpenForWriteCount = uint16("open_for_write_count", "Open For Write Count") |
||
3308 | OpenRights = bitfield8("open_rights", "Open Rights", [ |
||
3309 | bf_boolean8(0x01, "open_rights_read_only", "Read Only"), |
||
3310 | bf_boolean8(0x02, "open_rights_write_only", "Write Only"), |
||
3311 | bf_boolean8(0x04, "open_rights_deny_read", "Deny Read"), |
||
3312 | bf_boolean8(0x08, "open_rights_deny_write", "Deny Write"), |
||
3313 | bf_boolean8(0x10, "open_rights_compat", "Compatibility"), |
||
3314 | bf_boolean8(0x40, "open_rights_write_thru", "File Write Through"), |
||
3315 | ]) |
||
3316 | OptionNumber = uint8("option_number", "Option Number") |
||
3317 | originalSize = uint32("original_size", "Original Size") |
||
3318 | OSLanguageID = uint8("os_language_id", "OS Language ID") |
||
3319 | OSMajorVersion = uint8("os_major_version", "OS Major Version") |
||
3320 | OSMinorVersion = uint8("os_minor_version", "OS Minor Version") |
||
3321 | OSRevision = uint32("os_revision", "OS Revision") |
||
3322 | OtherFileForkSize = uint32("other_file_fork_size", "Other File Fork Size") |
||
3323 | OtherFileForkFAT = uint32("other_file_fork_fat", "Other File Fork FAT Entry") |
||
3324 | OutgoingPacketDiscardedNoTurboBuffer = uint16("outgoing_packet_discarded_no_turbo_buffer", "Outgoing Packet Discarded No Turbo Buffer") |
||
3325 | |||
3326 | PacketsDiscardedByHopCount = uint16("packets_discarded_by_hop_count", "Packets Discarded By Hop Count") |
||
3327 | PacketsDiscardedUnknownNet = uint16("packets_discarded_unknown_net", "Packets Discarded Unknown Net") |
||
3328 | PacketsFromInvalidConnection = uint16("packets_from_invalid_connection", "Packets From Invalid Connection") |
||
3329 | PacketsReceivedDuringProcessing = uint16("packets_received_during_processing", "Packets Received During Processing") |
||
3330 | PacketsWithBadRequestType = uint16("packets_with_bad_request_type", "Packets With Bad Request Type") |
||
3331 | PacketsWithBadSequenceNumber = uint16("packets_with_bad_sequence_number", "Packets With Bad Sequence Number") |
||
3332 | PageTableOwnerFlag = uint32("page_table_owner_flag", "Page Table Owner") |
||
3333 | ParentID = uint32("parent_id", "Parent ID") |
||
3334 | ParentID.Display("BASE_HEX") |
||
3335 | ParentBaseID = uint32("parent_base_id", "Parent Base ID") |
||
3336 | ParentBaseID.Display("BASE_HEX") |
||
3337 | ParentDirectoryBase = uint32("parent_directory_base", "Parent Directory Base") |
||
3338 | ParentDOSDirectoryBase = uint32("parent_dos_directory_base", "Parent DOS Directory Base") |
||
3339 | ParentObjectNumber = uint32("parent_object_number", "Parent Object Number") |
||
3340 | ParentObjectNumber.Display("BASE_HEX") |
||
3341 | Password = nstring8("password", "Password") |
||
3342 | PathBase = uint8("path_base", "Path Base") |
||
3343 | PathComponentCount = uint16("path_component_count", "Path Component Count") |
||
3344 | PathComponentSize = uint16("path_component_size", "Path Component Size") |
||
3345 | PathCookieFlags = val_string16("path_cookie_flags", "Path Cookie Flags", [ |
||
3346 | [ 0x0000, "Last component is Not a File Name" ], |
||
3347 | [ 0x0001, "Last component is a File Name" ], |
||
3348 | ]) |
||
3349 | PathCount = uint8("path_count", "Path Count") |
||
3350 | Path = nstring8("path", "Path") |
||
3351 | Path16 = nstring16("path16", "Path") |
||
3352 | PathAndName = stringz("path_and_name", "Path and Name") |
||
3353 | PendingIOCommands = uint16("pending_io_commands", "Pending IO Commands") |
||
3354 | PhysicalDiskNumber = uint8("physical_disk_number", "Physical Disk Number") |
||
3355 | PhysicalDriveCount = uint8("physical_drive_count", "Physical Drive Count") |
||
3356 | PhysicalLockThreshold = uint8("physical_lock_threshold", "Physical Lock Threshold") |
||
3357 | PingVersion = uint16("ping_version", "Ping Version") |
||
3358 | PoolName = stringz("pool_name", "Pool Name") |
||
3359 | PositiveAcknowledgesSent = uint16("positive_acknowledges_sent", "Positive Acknowledges Sent") |
||
3360 | PreCompressedSectors = uint32("pre_compressed_sectors", "Precompressed Sectors") |
||
3361 | PreviousRecord = uint32("previous_record", "Previous Record") |
||
3362 | PrimaryEntry = uint32("primary_entry", "Primary Entry") |
||
3363 | PrintFlags = bitfield8("print_flags", "Print Flags", [ |
||
3364 | bf_boolean8(0x08, "print_flags_ff", "Suppress Form Feeds"), |
||
3365 | bf_boolean8(0x10, "print_flags_cr", "Create"), |
||
3366 | bf_boolean8(0x20, "print_flags_del_spool", "Delete Spool File after Printing"), |
||
3367 | bf_boolean8(0x40, "print_flags_exp_tabs", "Expand Tabs in the File"), |
||
3368 | bf_boolean8(0x80, "print_flags_banner", "Print Banner Page"), |
||
3369 | ]) |
||
3370 | PrinterHalted = val_string8("printer_halted", "Printer Halted", [ |
||
3371 | [ 0x00, "Printer is not Halted" ], |
||
3372 | [ 0xff, "Printer is Halted" ], |
||
3373 | ]) |
||
3374 | PrinterOffLine = val_string8( "printer_offline", "Printer Off-Line", [ |
||
3375 | [ 0x00, "Printer is On-Line" ], |
||
3376 | [ 0xff, "Printer is Off-Line" ], |
||
3377 | ]) |
||
3378 | PrintServerVersion = uint8("print_server_version", "Print Server Version") |
||
3379 | Priority = uint32("priority", "Priority") |
||
3380 | Privileges = uint32("privileges", "Login Privileges") |
||
3381 | ProcessorType = val_string8("processor_type", "Processor Type", [ |
||
3382 | [ 0x00, "Motorola 68000" ], |
||
3383 | [ 0x01, "Intel 8088 or 8086" ], |
||
3384 | [ 0x02, "Intel 80286" ], |
||
3385 | ]) |
||
3386 | ProDOSInfo = bytes("pro_dos_info", "Pro DOS Info", 6) |
||
3387 | ProductMajorVersion = uint16("product_major_version", "Product Major Version") |
||
3388 | ProductMinorVersion = uint16("product_minor_version", "Product Minor Version") |
||
3389 | ProductRevisionVersion = uint8("product_revision_version", "Product Revision Version") |
||
3390 | projectedCompSize = uint32("projected_comp_size", "Projected Compression Size") |
||
3391 | PropertyHasMoreSegments = val_string8("property_has_more_segments", |
||
3392 | "Property Has More Segments", [ |
||
3393 | [ 0x00, "Is last segment" ], |
||
3394 | [ 0xff, "More segments are available" ], |
||
3395 | ]) |
||
3396 | PropertyName = nstring8("property_name", "Property Name") |
||
3397 | PropertyName16 = fw_string("property_name_16", "Property Name", 16) |
||
3398 | PropertyData = bytes("property_data", "Property Data", 128) |
||
3399 | PropertySegment = uint8("property_segment", "Property Segment") |
||
3400 | PropertyType = val_string8("property_type", "Property Type", [ |
||
3401 | [ 0x00, "Display Static property" ], |
||
3402 | [ 0x01, "Display Dynamic property" ], |
||
3403 | [ 0x02, "Set Static property" ], |
||
3404 | [ 0x03, "Set Dynamic property" ], |
||
3405 | ]) |
||
3406 | PropertyValue = fw_string("property_value", "Property Value", 128) |
||
3407 | ProposedMaxSize = uint16("proposed_max_size", "Proposed Max Size") |
||
3408 | protocolFlags = uint32("protocol_flags", "Protocol Flags") |
||
3409 | protocolFlags.Display("BASE_HEX") |
||
3410 | PurgeableBlocks = uint32("purgeable_blocks", "Purgeable Blocks") |
||
3411 | PurgeCcode = uint32("purge_c_code", "Purge Completion Code") |
||
3412 | PurgeCount = uint32("purge_count", "Purge Count") |
||
3413 | PurgeFlags = val_string16("purge_flags", "Purge Flags", [ |
||
3414 | [ 0x0000, "Do not Purge All" ], |
||
3415 | [ 0x0001, "Purge All" ], |
||
3416 | [ 0xffff, "Do not Purge All" ], |
||
3417 | ]) |
||
3418 | PurgeList = uint32("purge_list", "Purge List") |
||
3419 | PhysicalDiskChannel = uint8("physical_disk_channel", "Physical Disk Channel") |
||
3420 | PhysicalDriveType = val_string8("physical_drive_type", "Physical Drive Type", [ |
||
3421 | [ 0x01, "XT" ], |
||
3422 | [ 0x02, "AT" ], |
||
3423 | [ 0x03, "SCSI" ], |
||
3424 | [ 0x04, "Disk Coprocessor" ], |
||
3425 | [ 0x05, "PS/2 with MFM Controller" ], |
||
3426 | [ 0x06, "PS/2 with ESDI Controller" ], |
||
3427 | [ 0x07, "Convergent Technology SBIC" ], |
||
3428 | ]) |
||
3429 | PhysicalReadErrors = uint16("physical_read_errors", "Physical Read Errors") |
||
3430 | PhysicalReadRequests = uint32("physical_read_requests", "Physical Read Requests") |
||
3431 | PhysicalWriteErrors = uint16("physical_write_errors", "Physical Write Errors") |
||
3432 | PhysicalWriteRequests = uint32("physical_write_requests", "Physical Write Requests") |
||
3433 | PrintToFileFlag = boolean8("print_to_file_flag", "Print to File Flag") |
||
3434 | |||
3435 | QueueID = uint32("queue_id", "Queue ID") |
||
3436 | QueueID.Display("BASE_HEX") |
||
3437 | QueueName = nstring8("queue_name", "Queue Name") |
||
3438 | QueueStartPosition = uint32("queue_start_position", "Queue Start Position") |
||
3439 | QueueStatus = bitfield8("queue_status", "Queue Status", [ |
||
3440 | bf_boolean8(0x01, "queue_status_new_jobs", "Operator does not want to add jobs to the queue"), |
||
3441 | bf_boolean8(0x02, "queue_status_pserver", "Operator does not want additional servers attaching"), |
||
3442 | bf_boolean8(0x04, "queue_status_svc_jobs", "Operator does not want servers to service jobs"), |
||
3443 | ]) |
||
3444 | QueueType = uint16("queue_type", "Queue Type") |
||
3445 | QueueingVersion = uint8("qms_version", "QMS Version") |
||
3446 | |||
3447 | ReadBeyondWrite = uint16("read_beyond_write", "Read Beyond Write") |
||
3448 | RecordLockCount = uint16("rec_lock_count", "Record Lock Count") |
||
3449 | RecordStart = uint32("record_start", "Record Start") |
||
3450 | RecordEnd = uint32("record_end", "Record End") |
||
3451 | RecordInUseFlag = val_string16("record_in_use", "Record in Use", [ |
||
3452 | [ 0x0000, "Record In Use" ], |
||
3453 | [ 0xffff, "Record Not In Use" ], |
||
3454 | ]) |
||
3455 | RedirectedPrinter = uint8( "redirected_printer", "Redirected Printer" ) |
||
3456 | ReferenceCount = uint32("reference_count", "Reference Count") |
||
3457 | RelationsCount = uint16("relations_count", "Relations Count") |
||
3458 | ReMirrorCurrentOffset = uint32("re_mirror_current_offset", "ReMirror Current Offset") |
||
3459 | ReMirrorDriveNumber = uint8("re_mirror_drive_number", "ReMirror Drive Number") |
||
3460 | RemoteMaxPacketSize = uint32("remote_max_packet_size", "Remote Max Packet Size") |
||
3461 | RemoteTargetID = uint32("remote_target_id", "Remote Target ID") |
||
3462 | RemoteTargetID.Display("BASE_HEX") |
||
3463 | RemovableFlag = uint16("removable_flag", "Removable Flag") |
||
3464 | RemoveOpenRights = bitfield8("remove_open_rights", "Remove Open Rights", [ |
||
3465 | bf_boolean8(0x01, "remove_open_rights_ro", "Read Only"), |
||
3466 | bf_boolean8(0x02, "remove_open_rights_wo", "Write Only"), |
||
3467 | bf_boolean8(0x04, "remove_open_rights_dr", "Deny Read"), |
||
3468 | bf_boolean8(0x08, "remove_open_rights_dw", "Deny Write"), |
||
3469 | bf_boolean8(0x10, "remove_open_rights_comp", "Compatibility"), |
||
3470 | bf_boolean8(0x40, "remove_open_rights_write_thru", "Write Through"), |
||
3471 | ]) |
||
3472 | RenameFlag = bitfield8("rename_flag", "Rename Flag", [ |
||
3473 | bf_boolean8(0x01, "rename_flag_ren", "Rename to Myself allows file to be renamed to its original name"), |
||
3474 | bf_boolean8(0x02, "rename_flag_comp", "Compatibility allows files that are marked read only to be opened with read/write access"), |
||
3475 | bf_boolean8(0x04, "rename_flag_no", "Name Only renames only the specified name space entry name"), |
||
3476 | ]) |
||
3477 | RepliesCancelled = uint16("replies_cancelled", "Replies Cancelled") |
||
3478 | ReplyBuffer = nstring8("reply_buffer", "Reply Buffer") |
||
3479 | ReplyBufferSize = uint32("reply_buffer_size", "Reply Buffer Size") |
||
3480 | ReplyQueueJobNumbers = uint32("reply_queue_job_numbers", "Reply Queue Job Numbers") |
||
3481 | RequestBitMap = bitfield16("request_bit_map", "Request Bit Map", [ |
||
3482 | bf_boolean16(0x0001, "request_bit_map_ret_afp_ent", "AFP Entry ID"), |
||
3483 | bf_boolean16(0x0002, "request_bit_map_ret_data_fork", "Data Fork Length"), |
||
3484 | bf_boolean16(0x0004, "request_bit_map_ret_res_fork", "Resource Fork Length"), |
||
3485 | bf_boolean16(0x0008, "request_bit_map_ret_num_off", "Number of Offspring"), |
||
3486 | bf_boolean16(0x0010, "request_bit_map_ret_owner", "Owner ID"), |
||
3487 | bf_boolean16(0x0020, "request_bit_map_ret_short", "Short Name"), |
||
3488 | bf_boolean16(0x0040, "request_bit_map_ret_acc_priv", "Access Privileges"), |
||
3489 | bf_boolean16(0x0100, "request_bit_map_ratt", "Return Attributes"), |
||
3490 | bf_boolean16(0x0200, "request_bit_map_ret_afp_parent", "AFP Parent Entry ID"), |
||
3491 | bf_boolean16(0x0400, "request_bit_map_ret_cr_date", "Creation Date"), |
||
3492 | bf_boolean16(0x0800, "request_bit_map_ret_acc_date", "Access Date"), |
||
3493 | bf_boolean16(0x1000, "request_bit_map_ret_mod_date", "Modify Date&Time"), |
||
3494 | bf_boolean16(0x2000, "request_bit_map_ret_bak_date", "Backup Date&Time"), |
||
3495 | bf_boolean16(0x4000, "request_bit_map_ret_finder", "Finder Info"), |
||
3496 | bf_boolean16(0x8000, "request_bit_map_ret_long_nm", "Long Name"), |
||
3497 | ]) |
||
3498 | ResourceForkLen = uint32("resource_fork_len", "Resource Fork Len") |
||
3499 | RequestCode = val_string8("request_code", "Request Code", [ |
||
3500 | [ 0x00, "Change Logged in to Temporary Authenticated" ], |
||
3501 | [ 0x01, "Change Temporary Authenticated to Logged in" ], |
||
3502 | ]) |
||
3503 | RequestData = nstring8("request_data", "Request Data") |
||
3504 | RequestsReprocessed = uint16("requests_reprocessed", "Requests Reprocessed") |
||
3505 | Reserved = uint8( "reserved", "Reserved" ) |
||
3506 | Reserved2 = bytes("reserved2", "Reserved", 2) |
||
3507 | Reserved3 = bytes("reserved3", "Reserved", 3) |
||
3508 | Reserved4 = bytes("reserved4", "Reserved", 4) |
||
3509 | Reserved5 = bytes("reserved5", "Reserved", 5) |
||
3510 | Reserved6 = bytes("reserved6", "Reserved", 6) |
||
3511 | Reserved8 = bytes("reserved8", "Reserved", 8) |
||
3512 | Reserved10 = bytes("reserved10", "Reserved", 10) |
||
3513 | Reserved12 = bytes("reserved12", "Reserved", 12) |
||
3514 | Reserved16 = bytes("reserved16", "Reserved", 16) |
||
3515 | Reserved20 = bytes("reserved20", "Reserved", 20) |
||
3516 | Reserved28 = bytes("reserved28", "Reserved", 28) |
||
3517 | Reserved36 = bytes("reserved36", "Reserved", 36) |
||
3518 | Reserved44 = bytes("reserved44", "Reserved", 44) |
||
3519 | Reserved48 = bytes("reserved48", "Reserved", 48) |
||
3520 | Reserved50 = bytes("reserved50", "Reserved", 50) |
||
3521 | Reserved56 = bytes("reserved56", "Reserved", 56) |
||
3522 | Reserved64 = bytes("reserved64", "Reserved", 64) |
||
3523 | Reserved120 = bytes("reserved120", "Reserved", 120) |
||
3524 | ReservedOrDirectoryNumber = uint32("reserved_or_directory_number", "Reserved or Directory Number (see EAFlags)") |
||
3525 | ReservedOrDirectoryNumber.Display("BASE_HEX") |
||
3526 | ResourceCount = uint32("resource_count", "Resource Count") |
||
3527 | ResourceForkSize = uint32("resource_fork_size", "Resource Fork Size") |
||
3528 | ResourceName = stringz("resource_name", "Resource Name") |
||
3529 | ResourceSignature = fw_string("resource_sig", "Resource Signature", 4) |
||
3530 | RestoreTime = eptime("restore_time", "Restore Time") |
||
3531 | Restriction = uint32("restriction", "Disk Space Restriction") |
||
3532 | RestrictionQuad = uint64("restriction_quad", "Restriction") |
||
3533 | RestrictionsEnforced = val_string8("restrictions_enforced", "Disk Restrictions Enforce Flag", [ |
||
3534 | [ 0x00, "Enforced" ], |
||
3535 | [ 0xff, "Not Enforced" ], |
||
3536 | ]) |
||
3537 | ReturnInfoCount = uint32("return_info_count", "Return Information Count") |
||
3538 | ReturnInfoMask = bitfield16("ret_info_mask", "Return Information", [ |
||
3539 | bf_boolean16(0x0001, "ret_info_mask_fname", "Return File Name Information"), |
||
3540 | bf_boolean16(0x0002, "ret_info_mask_alloc", "Return Allocation Space Information"), |
||
3541 | bf_boolean16(0x0004, "ret_info_mask_attr", "Return Attribute Information"), |
||
3542 | bf_boolean16(0x0008, "ret_info_mask_size", "Return Size Information"), |
||
3543 | bf_boolean16(0x0010, "ret_info_mask_tspace", "Return Total Space Information"), |
||
3544 | bf_boolean16(0x0020, "ret_info_mask_eattr", "Return Extended Attributes Information"), |
||
3545 | bf_boolean16(0x0040, "ret_info_mask_arch", "Return Archive Information"), |
||
3546 | bf_boolean16(0x0080, "ret_info_mask_mod", "Return Modify Information"), |
||
3547 | bf_boolean16(0x0100, "ret_info_mask_create", "Return Creation Information"), |
||
3548 | bf_boolean16(0x0200, "ret_info_mask_ns", "Return Name Space Information"), |
||
3549 | bf_boolean16(0x0400, "ret_info_mask_dir", "Return Directory Information"), |
||
3550 | bf_boolean16(0x0800, "ret_info_mask_rights", "Return Rights Information"), |
||
3551 | bf_boolean16(0x1000, "ret_info_mask_id", "Return ID Information"), |
||
3552 | bf_boolean16(0x2000, "ret_info_mask_ns_attr", "Return Name Space Attributes Information"), |
||
3553 | bf_boolean16(0x4000, "ret_info_mask_actual", "Return Actual Information"), |
||
3554 | bf_boolean16(0x8000, "ret_info_mask_logical", "Return Logical Information"), |
||
3555 | ]) |
||
3556 | ReturnedListCount = uint32("returned_list_count", "Returned List Count") |
||
3557 | Revision = uint32("revision", "Revision") |
||
3558 | RevisionNumber = uint8("revision_number", "Revision") |
||
3559 | RevQueryFlag = val_string8("rev_query_flag", "Revoke Rights Query Flag", [ |
||
3560 | [ 0x00, "Do not query the locks engine for access rights" ], |
||
3561 | [ 0x01, "Query the locks engine and return the access rights" ], |
||
3562 | ]) |
||
3563 | RightsGrantMask = bitfield8("rights_grant_mask", "Grant Rights", [ |
||
3564 | bf_boolean8(0x01, "rights_grant_mask_read", "Read"), |
||
3565 | bf_boolean8(0x02, "rights_grant_mask_write", "Write"), |
||
3566 | bf_boolean8(0x04, "rights_grant_mask_open", "Open"), |
||
3567 | bf_boolean8(0x08, "rights_grant_mask_create", "Create"), |
||
3568 | bf_boolean8(0x10, "rights_grant_mask_del", "Delete"), |
||
3569 | bf_boolean8(0x20, "rights_grant_mask_parent", "Parental"), |
||
3570 | bf_boolean8(0x40, "rights_grant_mask_search", "Search"), |
||
3571 | bf_boolean8(0x80, "rights_grant_mask_mod", "Modify"), |
||
3572 | ]) |
||
3573 | RightsRevokeMask = bitfield8("rights_revoke_mask", "Revoke Rights", [ |
||
3574 | bf_boolean8(0x01, "rights_revoke_mask_read", "Read"), |
||
3575 | bf_boolean8(0x02, "rights_revoke_mask_write", "Write"), |
||
3576 | bf_boolean8(0x04, "rights_revoke_mask_open", "Open"), |
||
3577 | bf_boolean8(0x08, "rights_revoke_mask_create", "Create"), |
||
3578 | bf_boolean8(0x10, "rights_revoke_mask_del", "Delete"), |
||
3579 | bf_boolean8(0x20, "rights_revoke_mask_parent", "Parental"), |
||
3580 | bf_boolean8(0x40, "rights_revoke_mask_search", "Search"), |
||
3581 | bf_boolean8(0x80, "rights_revoke_mask_mod", "Modify"), |
||
3582 | ]) |
||
3583 | RIPSocketNumber = uint16("rip_socket_num", "RIP Socket Number") |
||
3584 | RIPSocketNumber.Display("BASE_HEX") |
||
3585 | RouterDownFlag = boolean8("router_dn_flag", "Router Down Flag") |
||
3586 | RPCccode = val_string16("rpc_c_code", "RPC Completion Code", [ |
||
3587 | [ 0x0000, "Successful" ], |
||
3588 | ]) |
||
3589 | RTagNumber = uint32("r_tag_num", "Resource Tag Number") |
||
3590 | RTagNumber.Display("BASE_HEX") |
||
3591 | RpyNearestSrvFlag = boolean8("rpy_nearest_srv_flag", "Reply to Nearest Server Flag") |
||
3592 | |||
3593 | SalvageableFileEntryNumber = uint32("salvageable_file_entry_number", "Salvageable File Entry Number") |
||
3594 | SalvageableFileEntryNumber.Display("BASE_HEX") |
||
3595 | SAPSocketNumber = uint16("sap_socket_number", "SAP Socket Number") |
||
3596 | SAPSocketNumber.Display("BASE_HEX") |
||
3597 | ScanItems = uint32("scan_items", "Number of Items returned from Scan") |
||
3598 | SearchAttributes = bitfield8("sattr", "Search Attributes", [ |
||
3599 | bf_boolean8(0x01, "sattr_ronly", "Read-Only Files Allowed"), |
||
3600 | bf_boolean8(0x02, "sattr_hid", "Hidden Files Allowed"), |
||
3601 | bf_boolean8(0x04, "sattr_sys", "System Files Allowed"), |
||
3602 | bf_boolean8(0x08, "sattr_exonly", "Execute-Only Files Allowed"), |
||
3603 | bf_boolean8(0x10, "sattr_sub", "Subdirectories Only"), |
||
3604 | bf_boolean8(0x20, "sattr_archive", "Archive"), |
||
3605 | bf_boolean8(0x40, "sattr_execute_confirm", "Execute Confirm"), |
||
3606 | bf_boolean8(0x80, "sattr_shareable", "Shareable"), |
||
3607 | ]) |
||
3608 | SearchAttributesLow = bitfield16("search_att_low", "Search Attributes", [ |
||
3609 | bf_boolean16(0x0001, "search_att_read_only", "Read-Only"), |
||
3610 | bf_boolean16(0x0002, "search_att_hidden", "Hidden Files Allowed"), |
||
3611 | bf_boolean16(0x0004, "search_att_system", "System"), |
||
3612 | bf_boolean16(0x0008, "search_att_execute_only", "Execute-Only"), |
||
3613 | bf_boolean16(0x0010, "search_att_sub", "Subdirectories Only"), |
||
3614 | bf_boolean16(0x0020, "search_att_archive", "Archive"), |
||
3615 | bf_boolean16(0x0040, "search_att_execute_confirm", "Execute Confirm"), |
||
3616 | bf_boolean16(0x0080, "search_att_shareable", "Shareable"), |
||
3617 | bf_boolean16(0x8000, "search_attr_all_files", "All Files and Directories"), |
||
3618 | ]) |
||
3619 | SearchBitMap = bitfield8("search_bit_map", "Search Bit Map", [ |
||
3620 | bf_boolean8(0x01, "search_bit_map_hidden", "Hidden"), |
||
3621 | bf_boolean8(0x02, "search_bit_map_sys", "System"), |
||
3622 | bf_boolean8(0x04, "search_bit_map_sub", "Subdirectory"), |
||
3623 | bf_boolean8(0x08, "search_bit_map_files", "Files"), |
||
3624 | ]) |
||
3625 | SearchConnNumber = uint32("search_conn_number", "Search Connection Number") |
||
3626 | SearchInstance = uint32("search_instance", "Search Instance") |
||
3627 | SearchNumber = uint32("search_number", "Search Number") |
||
3628 | SearchPattern = nstring8("search_pattern", "Search Pattern") |
||
3629 | SearchPattern16 = nstring16("search_pattern_16", "Search Pattern") |
||
3630 | SearchSequence = bytes("search_sequence", "Search Sequence", 9) |
||
3631 | SearchSequenceWord = uint16("search_sequence_word", "Search Sequence", ENC_BIG_ENDIAN) |
||
3632 | Second = uint8("s_second", "Seconds") |
||
3633 | SecondsRelativeToTheYear2000 = uint32("sec_rel_to_y2k", "Seconds Relative to the Year 2000") |
||
3634 | SecretStoreVerb = val_string8("ss_verb", "Secret Store Verb",[ |
||
3635 | [ 0x00, "Query Server" ], |
||
3636 | [ 0x01, "Read App Secrets" ], |
||
3637 | [ 0x02, "Write App Secrets" ], |
||
3638 | [ 0x03, "Add Secret ID" ], |
||
3639 | [ 0x04, "Remove Secret ID" ], |
||
3640 | [ 0x05, "Remove SecretStore" ], |
||
3641 | [ 0x06, "Enumerate Secret IDs" ], |
||
3642 | [ 0x07, "Unlock Store" ], |
||
3643 | [ 0x08, "Set Master Password" ], |
||
3644 | [ 0x09, "Get Service Information" ], |
||
3645 | ]) |
||
3646 | SecurityEquivalentList = fw_string("security_equiv_list", "Security Equivalent List", 128) |
||
3647 | SecurityFlag = bitfield8("security_flag", "Security Flag", [ |
||
3648 | bf_boolean8(0x01, "checksumming", "Checksumming"), |
||
3649 | bf_boolean8(0x02, "signature", "Signature"), |
||
3650 | bf_boolean8(0x04, "complete_signatures", "Complete Signatures"), |
||
3651 | bf_boolean8(0x08, "encryption", "Encryption"), |
||
3652 | bf_boolean8(0x80, "large_internet_packets", "Large Internet Packets (LIP) Disabled"), |
||
3653 | ]) |
||
3654 | SecurityRestrictionVersion = uint8("security_restriction_version", "Security Restriction Version") |
||
3655 | SectorsPerBlock = uint8("sectors_per_block", "Sectors Per Block") |
||
3656 | SectorsPerBlockLong = uint32("sectors_per_block_long", "Sectors Per Block") |
||
3657 | SectorsPerCluster = uint16("sectors_per_cluster", "Sectors Per Cluster" ) |
||
3658 | SectorsPerClusterLong = uint32("sectors_per_cluster_long", "Sectors Per Cluster" ) |
||
3659 | SectorsPerTrack = uint8("sectors_per_track", "Sectors Per Track") |
||
3660 | SectorSize = uint32("sector_size", "Sector Size") |
||
3661 | SemaphoreHandle = uint32("semaphore_handle", "Semaphore Handle") |
||
3662 | SemaphoreName = nstring8("semaphore_name", "Semaphore Name") |
||
3663 | SemaphoreOpenCount = uint8("semaphore_open_count", "Semaphore Open Count") |
||
3664 | SemaphoreShareCount = uint8("semaphore_share_count", "Semaphore Share Count") |
||
3665 | SemaphoreTimeOut = uint16("semaphore_time_out", "Semaphore Time Out") |
||
3666 | SemaphoreValue = uint16("semaphore_value", "Semaphore Value") |
||
3667 | SendStatus = val_string8("send_status", "Send Status", [ |
||
3668 | [ 0x00, "Successful" ], |
||
3669 | [ 0x01, "Illegal Station Number" ], |
||
3670 | [ 0x02, "Client Not Logged In" ], |
||
3671 | [ 0x03, "Client Not Accepting Messages" ], |
||
3672 | [ 0x04, "Client Already has a Message" ], |
||
3673 | [ 0x96, "No Alloc Space for the Message" ], |
||
3674 | [ 0xfd, "Bad Station Number" ], |
||
3675 | [ 0xff, "Failure" ], |
||
3676 | ]) |
||
3677 | SequenceByte = uint8("sequence_byte", "Sequence") |
||
3678 | SequenceNumber = uint32("sequence_number", "Sequence Number") |
||
3679 | SequenceNumber.Display("BASE_HEX") |
||
3680 | SequenceNumberLong = uint64("sequence_number64", "Sequence Number") |
||
3681 | SequenceNumberLong.Display("BASE_HEX") |
||
3682 | ServerAddress = bytes("server_address", "Server Address", 12) |
||
3683 | ServerAppNumber = uint16("server_app_num", "Server App Number") |
||
3684 | ServerID = uint32("server_id_number", "Server ID", ENC_BIG_ENDIAN ) |
||
3685 | ServerID.Display("BASE_HEX") |
||
3686 | ServerInfoFlags = val_string16("server_info_flags", "Server Information Flags", [ |
||
3687 | [ 0x0000, "This server is not a member of a Cluster" ], |
||
3688 | [ 0x0001, "This server is a member of a Cluster" ], |
||
3689 | ]) |
||
3690 | serverListFlags = uint32("server_list_flags", "Server List Flags") |
||
3691 | ServerName = fw_string("server_name", "Server Name", 48) |
||
3692 | serverName50 = fw_string("server_name50", "Server Name", 50) |
||
3693 | ServerNameLen = nstring8("server_name_len", "Server Name") |
||
3694 | ServerNameStringz = stringz("server_name_stringz", "Server Name") |
||
3695 | ServerNetworkAddress = bytes("server_network_address", "Server Network Address", 10) |
||
3696 | ServerNode = bytes("server_node", "Server Node", 6) |
||
3697 | ServerSerialNumber = uint32("server_serial_number", "Server Serial Number") |
||
3698 | ServerStation = uint8("server_station", "Server Station") |
||
3699 | ServerStationLong = uint32("server_station_long", "Server Station") |
||
3700 | ServerStationList = uint8("server_station_list", "Server Station List") |
||
3701 | ServerStatusRecord = fw_string("server_status_record", "Server Status Record", 64) |
||
3702 | ServerTaskNumber = uint8("server_task_number", "Server Task Number") |
||
3703 | ServerTaskNumberLong = uint32("server_task_number_long", "Server Task Number") |
||
3704 | ServerType = uint16("server_type", "Server Type") |
||
3705 | ServerType.Display("BASE_HEX") |
||
3706 | ServerUtilization = uint32("server_utilization", "Server Utilization") |
||
3707 | ServerUtilizationPercentage = uint8("server_utilization_percentage", "Server Utilization Percentage") |
||
3708 | ServiceType = val_string16("Service_type", "Service Type", [ |
||
3709 | [ 0x0000, "Unknown" ], |
||
3710 | [ 0x0001, "User" ], |
||
3711 | [ 0x0002, "User group" ], |
||
3712 | [ 0x0003, "Print queue" ], |
||
3713 | [ 0x0004, "NetWare file server" ], |
||
3714 | [ 0x0005, "Job server" ], |
||
3715 | [ 0x0006, "Gateway" ], |
||
3716 | [ 0x0007, "Print server" ], |
||
3717 | [ 0x0008, "Archive queue" ], |
||
3718 | [ 0x0009, "Archive server" ], |
||
3719 | [ 0x000a, "Job queue" ], |
||
3720 | [ 0x000b, "Administration" ], |
||
3721 | [ 0x0021, "NAS SNA gateway" ], |
||
3722 | [ 0x0026, "Remote bridge server" ], |
||
3723 | [ 0x0027, "TCP/IP gateway" ], |
||
3724 | [ 0xffff, "All Types" ], |
||
3725 | ]) |
||
3726 | SetCmdCategory = val_string8("set_cmd_category", "Set Command Category", [ |
||
3727 | [ 0x00, "Communications" ], |
||
3728 | [ 0x01, "Memory" ], |
||
3729 | [ 0x02, "File Cache" ], |
||
3730 | [ 0x03, "Directory Cache" ], |
||
3731 | [ 0x04, "File System" ], |
||
3732 | [ 0x05, "Locks" ], |
||
3733 | [ 0x06, "Transaction Tracking" ], |
||
3734 | [ 0x07, "Disk" ], |
||
3735 | [ 0x08, "Time" ], |
||
3736 | [ 0x09, "NCP" ], |
||
3737 | [ 0x0a, "Miscellaneous" ], |
||
3738 | [ 0x0b, "Error Handling" ], |
||
3739 | [ 0x0c, "Directory Services" ], |
||
3740 | [ 0x0d, "MultiProcessor" ], |
||
3741 | [ 0x0e, "Service Location Protocol" ], |
||
3742 | [ 0x0f, "Licensing Services" ], |
||
3743 | ]) |
||
3744 | SetCmdFlags = bitfield8("set_cmd_flags", "Set Command Flags", [ |
||
3745 | bf_boolean8(0x01, "cmd_flags_startup_only", "Startup.ncf Only"), |
||
3746 | bf_boolean8(0x02, "cmd_flags_hidden", "Hidden"), |
||
3747 | bf_boolean8(0x04, "cmd_flags_advanced", "Advanced"), |
||
3748 | bf_boolean8(0x08, "cmd_flags_later", "Restart Server Required to Take Effect"), |
||
3749 | bf_boolean8(0x80, "cmd_flags_secure", "Console Secured"), |
||
3750 | ]) |
||
3751 | SetCmdName = stringz("set_cmd_name", "Set Command Name") |
||
3752 | SetCmdType = val_string8("set_cmd_type", "Set Command Type", [ |
||
3753 | [ 0x00, "Numeric Value" ], |
||
3754 | [ 0x01, "Boolean Value" ], |
||
3755 | [ 0x02, "Ticks Value" ], |
||
3756 | [ 0x04, "Time Value" ], |
||
3757 | [ 0x05, "String Value" ], |
||
3758 | [ 0x06, "Trigger Value" ], |
||
3759 | [ 0x07, "Numeric Value" ], |
||
3760 | ]) |
||
3761 | SetCmdValueNum = uint32("set_cmd_value_num", "Set Command Value") |
||
3762 | SetCmdValueString = stringz("set_cmd_value_string", "Set Command Value") |
||
3763 | SetMask = bitfield32("set_mask", "Set Mask", [ |
||
3764 | bf_boolean32(0x00000001, "ncp_encoded_strings", "NCP Encoded Strings"), |
||
3765 | bf_boolean32(0x00000002, "connection_code_page", "Connection Code Page"), |
||
3766 | ]) |
||
3767 | SetParmName = stringz("set_parm_name", "Set Parameter Name") |
||
3768 | SFTErrorTable = bytes("sft_error_table", "SFT Error Table", 60) |
||
3769 | SFTSupportLevel = val_string8("sft_support_level", "SFT Support Level", [ |
||
3770 | [ 0x01, "Server Offers Hot Disk Error Fixing" ], |
||
3771 | [ 0x02, "Server Offers Disk Mirroring and Transaction Tracking" ], |
||
3772 | [ 0x03, "Server Offers Physical Server Mirroring" ], |
||
3773 | ]) |
||
3774 | ShareableLockCount = uint16("shareable_lock_count", "Shareable Lock Count") |
||
3775 | SharedMemoryAddresses = bytes("shared_memory_addresses", "Shared Memory Addresses", 10) |
||
3776 | ShortName = fw_string("short_name", "Short Name", 12) |
||
3777 | ShortStkName = fw_string("short_stack_name", "Short Stack Name", 16) |
||
3778 | SiblingCount = uint32("sibling_count", "Sibling Count") |
||
3779 | SixtyFourBitOffsetsSupportedFlag = val_string8("64_bit_flag", "64 Bit Support", [ |
||
3780 | [ 0x00, "No support for 64 bit offsets" ], |
||
3781 | [ 0x01, "64 bit offsets supported" ], |
||
3782 | [ 0x02, "Use 64 bit file transfer NCP's" ], |
||
3783 | ]) |
||
3784 | SMIDs = uint32("smids", "Storage Media ID's") |
||
3785 | SoftwareDescription = fw_string("software_description", "Software Description", 65) |
||
3786 | SoftwareDriverType = uint8("software_driver_type", "Software Driver Type") |
||
3787 | SoftwareMajorVersionNumber = uint8("software_major_version_number", "Software Major Version Number") |
||
3788 | SoftwareMinorVersionNumber = uint8("software_minor_version_number", "Software Minor Version Number") |
||
3789 | SourceDirHandle = uint8("source_dir_handle", "Source Directory Handle") |
||
3790 | SourceFileHandle = bytes("s_fhandle_64bit", "Source File Handle", 6) |
||
3791 | SourceFileOffset = bytes("s_foffset", "Source File Offset", 8) |
||
3792 | sourceOriginateTime = bytes("source_originate_time", "Source Originate Time", 8) |
||
3793 | SourcePath = nstring8("source_path", "Source Path") |
||
3794 | SourcePathComponentCount = uint8("source_component_count", "Source Path Component Count") |
||
3795 | sourceReturnTime = bytes("source_return_time", "Source Return Time", 8) |
||
3796 | SpaceUsed = uint32("space_used", "Space Used") |
||
3797 | SpaceMigrated = uint32("space_migrated", "Space Migrated") |
||
3798 | SrcNameSpace = val_string8("src_name_space", "Source Name Space", [ |
||
3799 | [ 0x00, "DOS Name Space" ], |
||
3800 | [ 0x01, "MAC Name Space" ], |
||
3801 | [ 0x02, "NFS Name Space" ], |
||
3802 | [ 0x04, "Long Name Space" ], |
||
3803 | ]) |
||
3804 | SubFuncStrucLen = uint16("sub_func_struc_len", "Structure Length") |
||
3805 | SupModID = uint32("sup_mod_id", "Sup Mod ID") |
||
3806 | StackCount = uint32("stack_count", "Stack Count") |
||
3807 | StackFullNameStr = nstring8("stack_full_name_str", "Stack Full Name") |
||
3808 | StackMajorVN = uint8("stack_major_vn", "Stack Major Version Number") |
||
3809 | StackMinorVN = uint8("stack_minor_vn", "Stack Minor Version Number") |
||
3810 | StackNumber = uint32("stack_number", "Stack Number") |
||
3811 | StartConnNumber = uint32("start_conn_num", "Starting Connection Number") |
||
3812 | StartingBlock = uint16("starting_block", "Starting Block") |
||
3813 | StartingNumber = uint32("starting_number", "Starting Number") |
||
3814 | StartingSearchNumber = uint16("start_search_number", "Start Search Number") |
||
3815 | StartNumber = uint32("start_number", "Start Number") |
||
3816 | startNumberFlag = uint16("start_number_flag", "Start Number Flag") |
||
3817 | StartOffset64bit = bytes("s_offset_64bit", "64bit Starting Offset", 64) |
||
3818 | StartVolumeNumber = uint32("start_volume_number", "Starting Volume Number") |
||
3819 | StationList = uint32("station_list", "Station List") |
||
3820 | StationNumber = bytes("station_number", "Station Number", 3) |
||
3821 | StatMajorVersion = uint8("stat_major_version", "Statistics Table Major Version") |
||
3822 | StatMinorVersion = uint8("stat_minor_version", "Statistics Table Minor Version") |
||
3823 | Status = bitfield16("status", "Status", [ |
||
3824 | bf_boolean16(0x0001, "user_info_logged_in", "Logged In"), |
||
3825 | bf_boolean16(0x0002, "user_info_being_abort", "Being Aborted"), |
||
3826 | bf_boolean16(0x0004, "user_info_audited", "Audited"), |
||
3827 | bf_boolean16(0x0008, "user_info_need_sec", "Needs Security Change"), |
||
3828 | bf_boolean16(0x0010, "user_info_mac_station", "MAC Station"), |
||
3829 | bf_boolean16(0x0020, "user_info_temp_authen", "Temporary Authenticated"), |
||
3830 | bf_boolean16(0x0040, "user_info_audit_conn", "Audit Connection Recorded"), |
||
3831 | bf_boolean16(0x0080, "user_info_dsaudit_conn", "DS Audit Connection Recorded"), |
||
3832 | bf_boolean16(0x0100, "user_info_logout", "Logout in Progress"), |
||
3833 | bf_boolean16(0x0200, "user_info_int_login", "Internal Login"), |
||
3834 | bf_boolean16(0x0400, "user_info_bindery", "Bindery Connection"), |
||
3835 | ]) |
||
3836 | StatusFlagBits = bitfield32("status_flag_bits", "Status Flag", [ |
||
3837 | bf_boolean32(0x00000001, "status_flag_bits_suballoc", "Sub Allocation"), |
||
3838 | bf_boolean32(0x00000002, "status_flag_bits_comp", "Compression"), |
||
3839 | bf_boolean32(0x00000004, "status_flag_bits_migrate", "Migration"), |
||
3840 | bf_boolean32(0x00000008, "status_flag_bits_audit", "Audit"), |
||
3841 | bf_boolean32(0x00000010, "status_flag_bits_ro", "Read Only"), |
||
3842 | bf_boolean32(0x00000020, "status_flag_bits_im_purge", "Immediate Purge"), |
||
3843 | bf_boolean32(0x00000040, "status_flag_bits_64bit", "64Bit File Offsets"), |
||
3844 | bf_boolean32(0x00000080, "status_flag_bits_utf8", "UTF8 NCP Strings"), |
||
3845 | bf_boolean32(0x80000000, "status_flag_bits_nss", "NSS Volume"), |
||
3846 | ]) |
||
3847 | SubAllocClusters = uint32("sub_alloc_clusters", "Sub Alloc Clusters") |
||
3848 | SubAllocFreeableClusters = uint32("sub_alloc_freeable_clusters", "Sub Alloc Freeable Clusters") |
||
3849 | Subdirectory = uint32("sub_directory", "Subdirectory") |
||
3850 | Subdirectory.Display("BASE_HEX") |
||
3851 | SuggestedFileSize = uint32("suggested_file_size", "Suggested File Size") |
||
3852 | SupportModuleID = uint32("support_module_id", "Support Module ID") |
||
3853 | SynchName = nstring8("synch_name", "Synch Name") |
||
3854 | SystemIntervalMarker = uint32("system_interval_marker", "System Interval Marker") |
||
3855 | |||
3856 | TabSize = uint8( "tab_size", "Tab Size" ) |
||
3857 | TargetClientList = uint8("target_client_list", "Target Client List") |
||
3858 | TargetConnectionNumber = uint16("target_connection_number", "Target Connection Number") |
||
3859 | TargetDirectoryBase = uint32("target_directory_base", "Target Directory Base") |
||
3860 | TargetDirHandle = uint8("target_dir_handle", "Target Directory Handle") |
||
3861 | TargetEntryID = uint32("target_entry_id", "Target Entry ID") |
||
3862 | TargetEntryID.Display("BASE_HEX") |
||
3863 | TargetExecutionTime = bytes("target_execution_time", "Target Execution Time", 6) |
||
3864 | TargetFileHandle = bytes("target_file_handle", "Target File Handle", 6) |
||
3865 | TargetFileOffset = uint32("target_file_offset", "Target File Offset") |
||
3866 | TargetFileOffset64bit = bytes("t_foffset", "Target File Offset", 8) |
||
3867 | TargetMessage = nstring8("target_message", "Message") |
||
3868 | TargetPrinter = uint8( "target_ptr", "Target Printer" ) |
||
3869 | targetReceiveTime = bytes("target_receive_time", "Target Receive Time", 8) |
||
3870 | TargetServerIDNumber = uint32("target_server_id_number", "Target Server ID Number", ENC_BIG_ENDIAN ) |
||
3871 | TargetServerIDNumber.Display("BASE_HEX") |
||
3872 | targetTransmitTime = bytes("target_transmit_time", "Target Transmit Time", 8) |
||
3873 | TaskNumByte = uint8("task_num_byte", "Task Number") |
||
3874 | TaskNumber = uint32("task_number", "Task Number") |
||
3875 | TaskNumberWord = uint16("task_number_word", "Task Number") |
||
3876 | TaskState = val_string8("task_state", "Task State", [ |
||
3877 | [ 0x00, "Normal" ], |
||
3878 | [ 0x01, "TTS explicit transaction in progress" ], |
||
3879 | [ 0x02, "TTS implicit transaction in progress" ], |
||
3880 | [ 0x04, "Shared file set lock in progress" ], |
||
3881 | ]) |
||
3882 | TextJobDescription = fw_string("text_job_description", "Text Job Description", 50) |
||
3883 | ThrashingCount = uint16("thrashing_count", "Thrashing Count") |
||
3884 | TimeoutLimit = uint16("timeout_limit", "Timeout Limit") |
||
3885 | TimesyncStatus = bitfield32("timesync_status_flags", "Timesync Status", [ |
||
3886 | bf_boolean32(0x00000001, "timesync_status_sync", "Time is Synchronized"), |
||
3887 | bf_boolean32(0x00000002, "timesync_status_net_sync", "Time is Synchronized to the Network"), |
||
3888 | bf_boolean32(0x00000004, "timesync_status_active", "Time Synchronization is Active"), |
||
3889 | bf_boolean32(0x00000008, "timesync_status_external", "External Time Synchronization Active"), |
||
3890 | bf_val_str32(0x00000700, "timesync_status_server_type", "Time Server Type", [ |
||
3891 | [ 0x01, "Client Time Server" ], |
||
3892 | [ 0x02, "Secondary Time Server" ], |
||
3893 | [ 0x03, "Primary Time Server" ], |
||
3894 | [ 0x04, "Reference Time Server" ], |
||
3895 | [ 0x05, "Single Reference Time Server" ], |
||
3896 | ]), |
||
3897 | bf_boolean32(0x000f0000, "timesync_status_ext_sync", "External Clock Status"), |
||
3898 | ]) |
||
3899 | TimeToNet = uint16("time_to_net", "Time To Net") |
||
3900 | TotalBlocks = uint32("total_blocks", "Total Blocks") |
||
3901 | TotalBlocks64 = uint64("total_blocks64", "Total Blocks") |
||
3902 | TotalBlocksToDecompress = uint32("total_blks_to_dcompress", "Total Blocks To Decompress") |
||
3903 | TotalBytesRead = bytes("user_info_ttl_bytes_rd", "Total Bytes Read", 6) |
||
3904 | TotalBytesWritten = bytes("user_info_ttl_bytes_wrt", "Total Bytes Written", 6) |
||
3905 | TotalCacheWrites = uint32("total_cache_writes", "Total Cache Writes") |
||
3906 | TotalChangedFATs = uint32("total_changed_fats", "Total Changed FAT Entries") |
||
3907 | TotalCommonCnts = uint32("total_common_cnts", "Total Common Counts") |
||
3908 | TotalCntBlocks = uint32("total_cnt_blocks", "Total Count Blocks") |
||
3909 | TotalDataStreamDiskSpaceAlloc = uint32("ttl_data_str_size_space_alloc", "Total Data Stream Disk Space Alloc") |
||
3910 | TotalDirectorySlots = uint16("total_directory_slots", "Total Directory Slots") |
||
3911 | TotalDirectoryEntries = uint32("total_dir_entries", "Total Directory Entries") |
||
3912 | TotalDirEntries64 = uint64("total_dir_entries64", "Total Directory Entries") |
||
3913 | TotalDynamicSpace = uint32("total_dynamic_space", "Total Dynamic Space") |
||
3914 | TotalExtendedDirectoryExtents = uint32("total_extended_directory_extents", "Total Extended Directory Extents") |
||
3915 | TotalFileServicePackets = uint32("total_file_service_packets", "Total File Service Packets") |
||
3916 | TotalFilesOpened = uint32("total_files_opened", "Total Files Opened") |
||
3917 | TotalLFSCounters = uint32("total_lfs_counters", "Total LFS Counters") |
||
3918 | TotalOffspring = uint16("total_offspring", "Total Offspring") |
||
3919 | TotalOtherPackets = uint32("total_other_packets", "Total Other Packets") |
||
3920 | TotalQueueJobs = uint32("total_queue_jobs", "Total Queue Jobs") |
||
3921 | TotalReadRequests = uint32("total_read_requests", "Total Read Requests") |
||
3922 | TotalRequest = uint32("total_request", "Total Requests") |
||
3923 | TotalRequestPackets = uint32("total_request_packets", "Total Request Packets") |
||
3924 | TotalRoutedPackets = uint32("total_routed_packets", "Total Routed Packets") |
||
3925 | TotalRxPkts = uint32("total_rx_pkts", "Total Receive Packets") |
||
3926 | TotalServerMemory = uint16("total_server_memory", "Total Server Memory", ENC_BIG_ENDIAN) |
||
3927 | TotalTransactionsBackedOut = uint32("total_trans_backed_out", "Total Transactions Backed Out") |
||
3928 | TotalTransactionsPerformed = uint32("total_trans_performed", "Total Transactions Performed") |
||
3929 | TotalTxPkts = uint32("total_tx_pkts", "Total Transmit Packets") |
||
3930 | TotalUnfilledBackoutRequests = uint16("total_unfilled_backout_requests", "Total Unfilled Backout Requests") |
||
3931 | TotalVolumeClusters = uint16("total_volume_clusters", "Total Volume Clusters") |
||
3932 | TotalWriteRequests = uint32("total_write_requests", "Total Write Requests") |
||
3933 | TotalWriteTransactionsPerformed = uint32("total_write_trans_performed", "Total Write Transactions Performed") |
||
3934 | TrackOnFlag = boolean8("track_on_flag", "Track On Flag") |
||
3935 | TransactionDiskSpace = uint16("transaction_disk_space", "Transaction Disk Space") |
||
3936 | TransactionFATAllocations = uint32("transaction_fat_allocations", "Transaction FAT Allocations") |
||
3937 | TransactionFileSizeChanges = uint32("transaction_file_size_changes", "Transaction File Size Changes") |
||
3938 | TransactionFilesTruncated = uint32("transaction_files_truncated", "Transaction Files Truncated") |
||
3939 | TransactionNumber = uint32("transaction_number", "Transaction Number") |
||
3940 | TransactionTrackingEnabled = uint8("transaction_tracking_enabled", "Transaction Tracking Enabled") |
||
3941 | TransactionTrackingFlag = uint16("tts_flag", "Transaction Tracking Flag") |
||
3942 | TransactionTrackingSupported = uint8("transaction_tracking_supported", "Transaction Tracking Supported") |
||
3943 | TransactionVolumeNumber = uint16("transaction_volume_number", "Transaction Volume Number") |
||
3944 | TransportType = val_string8("transport_type", "Communications Type", [ |
||
3945 | [ 0x01, "Internet Packet Exchange (IPX)" ], |
||
3946 | [ 0x05, "User Datagram Protocol (UDP)" ], |
||
3947 | [ 0x06, "Transmission Control Protocol (TCP)" ], |
||
3948 | ]) |
||
3949 | TreeLength = uint32("tree_length", "Tree Length") |
||
3950 | TreeName = nstring32("tree_name", "Tree Name") |
||
3951 | TrusteeAccessMask = uint8("trustee_acc_mask", "Trustee Access Mask") |
||
3952 | TrusteeRights = bitfield16("trustee_rights_low", "Trustee Rights", [ |
||
3953 | bf_boolean16(0x0001, "trustee_rights_read", "Read"), |
||
3954 | bf_boolean16(0x0002, "trustee_rights_write", "Write"), |
||
3955 | bf_boolean16(0x0004, "trustee_rights_open", "Open"), |
||
3956 | bf_boolean16(0x0008, "trustee_rights_create", "Create"), |
||
3957 | bf_boolean16(0x0010, "trustee_rights_del", "Delete"), |
||
3958 | bf_boolean16(0x0020, "trustee_rights_parent", "Parental"), |
||
3959 | bf_boolean16(0x0040, "trustee_rights_search", "Search"), |
||
3960 | bf_boolean16(0x0080, "trustee_rights_modify", "Modify"), |
||
3961 | bf_boolean16(0x0100, "trustee_rights_super", "Supervisor"), |
||
3962 | ]) |
||
3963 | TTSLevel = uint8("tts_level", "TTS Level") |
||
3964 | TrusteeSetNumber = uint8("trustee_set_number", "Trustee Set Number") |
||
3965 | TrusteeID = uint32("trustee_id_set", "Trustee ID") |
||
3966 | TrusteeID.Display("BASE_HEX") |
||
3967 | ttlCompBlks = uint32("ttl_comp_blks", "Total Compression Blocks") |
||
3968 | TtlDSDskSpaceAlloc = uint32("ttl_ds_disk_space_alloc", "Total Streams Space Allocated") |
||
3969 | TtlEAs = uint32("ttl_eas", "Total EA's") |
||
3970 | TtlEAsDataSize = uint32("ttl_eas_data_size", "Total EA's Data Size") |
||
3971 | TtlEAsKeySize = uint32("ttl_eas_key_size", "Total EA's Key Size") |
||
3972 | ttlIntermediateBlks = uint32("ttl_inter_blks", "Total Intermediate Blocks") |
||
3973 | TtlMigratedSize = uint32("ttl_migrated_size", "Total Migrated Size") |
||
3974 | TtlNumOfRTags = uint32("ttl_num_of_r_tags", "Total Number of Resource Tags") |
||
3975 | TtlNumOfSetCmds = uint32("ttl_num_of_set_cmds", "Total Number of Set Commands") |
||
3976 | TtlValuesLength = uint32("ttl_values_length", "Total Values Length") |
||
3977 | TtlWriteDataSize = uint32("ttl_write_data_size", "Total Write Data Size") |
||
3978 | TurboUsedForFileService = uint16("turbo_used_for_file_service", "Turbo Used For File Service") |
||
3979 | |||
3980 | UnclaimedPkts = uint32("un_claimed_packets", "Unclaimed Packets") |
||
3981 | UnCompressableDataStreamsCount = uint32("un_compressable_data_streams_count", "Uncompressable Data Streams Count") |
||
3982 | Undefined8 = bytes("undefined_8", "Undefined", 8) |
||
3983 | Undefined28 = bytes("undefined_28", "Undefined", 28) |
||
3984 | UndefinedWord = uint16("undefined_word", "Undefined") |
||
3985 | UniqueID = uint8("unique_id", "Unique ID") |
||
3986 | UnknownByte = uint8("unknown_byte", "Unknown Byte") |
||
3987 | Unused = uint8("un_used", "Unused") |
||
3988 | UnusedBlocks = uint32("unused_blocks", "Unused Blocks") |
||
3989 | UnUsedDirectoryEntries = uint32("un_used_directory_entries", "Unused Directory Entries") |
||
3990 | UnusedDiskBlocks = uint32("unused_disk_blocks", "Unused Disk Blocks") |
||
3991 | UnUsedExtendedDirectoryExtents = uint32("un_used_extended_directory_extents", "Unused Extended Directory Extents") |
||
3992 | UpdateDate = uint16("update_date", "Update Date") |
||
3993 | UpdateDate.NWDate() |
||
3994 | UpdateID = uint32("update_id", "Update ID", ENC_BIG_ENDIAN) |
||
3995 | UpdateID.Display("BASE_HEX") |
||
3996 | UpdateTime = uint16("update_time", "Update Time") |
||
3997 | UpdateTime.NWTime() |
||
3998 | UseCount = val_string16("user_info_use_count", "Use Count", [ |
||
3999 | [ 0x0000, "Connection is not in use" ], |
||
4000 | [ 0x0001, "Connection is in use" ], |
||
4001 | ]) |
||
4002 | UsedBlocks = uint32("used_blocks", "Used Blocks") |
||
4003 | UserID = uint32("user_id", "User ID", ENC_BIG_ENDIAN) |
||
4004 | UserID.Display("BASE_HEX") |
||
4005 | UserLoginAllowed = val_string8("user_login_allowed", "Login Status", [ |
||
4006 | [ 0x00, "Client Login Disabled" ], |
||
4007 | [ 0x01, "Client Login Enabled" ], |
||
4008 | ]) |
||
4009 | |||
4010 | UserName = nstring8("user_name", "User Name") |
||
4011 | UserName16 = fw_string("user_name_16", "User Name", 16) |
||
4012 | UserName48 = fw_string("user_name_48", "User Name", 48) |
||
4013 | UserType = uint16("user_type", "User Type") |
||
4014 | UTCTimeInSeconds = eptime("uts_time_in_seconds", "UTC Time in Seconds") |
||
4015 | |||
4016 | ValueAvailable = val_string8("value_available", "Value Available", [ |
||
4017 | [ 0x00, "Has No Value" ], |
||
4018 | [ 0xff, "Has Value" ], |
||
4019 | ]) |
||
4020 | VAPVersion = uint8("vap_version", "VAP Version") |
||
4021 | VariableBitMask = uint32("variable_bit_mask", "Variable Bit Mask") |
||
4022 | VariableBitsDefined = uint16("variable_bits_defined", "Variable Bits Defined") |
||
4023 | VConsoleRevision = uint8("vconsole_rev", "Console Revision") |
||
4024 | VConsoleVersion = uint8("vconsole_ver", "Console Version") |
||
4025 | Verb = uint32("verb", "Verb") |
||
4026 | VerbData = uint8("verb_data", "Verb Data") |
||
4027 | version = uint32("version", "Version") |
||
4028 | VersionNumber = uint8("version_number", "Version") |
||
4029 | VersionNumberLong = uint32("version_num_long", "Version") |
||
4030 | VertLocation = uint16("vert_location", "Vertical Location") |
||
4031 | VirtualConsoleVersion = uint8("virtual_console_version", "Virtual Console Version") |
||
4032 | VolumeID = uint32("volume_id", "Volume ID") |
||
4033 | VolumeID.Display("BASE_HEX") |
||
4034 | VolInfoReplyLen = uint16("vol_info_reply_len", "Volume Information Reply Length") |
||
4035 | VolInfoReturnInfoMask = bitfield32("vol_info_ret_info_mask", "Return Information Mask", [ |
||
4036 | bf_boolean32(0x00000001, "vinfo_info64", "Return 64 bit Volume Information"), |
||
4037 | bf_boolean32(0x00000002, "vinfo_volname", "Return Volume Name Details"), |
||
4038 | ]) |
||
4039 | VolumeCapabilities = bitfield32("volume_capabilities", "Volume Capabilities", [ |
||
4040 | bf_boolean32(0x00000001, "vol_cap_user_space", "NetWare User Space Restrictions Supported"), |
||
4041 | bf_boolean32(0x00000002, "vol_cap_dir_quota", "NetWare Directory Quotas Supported"), |
||
4042 | bf_boolean32(0x00000004, "vol_cap_dfs", "DFS is Active on Volume"), |
||
4043 | bf_boolean32(0x00000008, "vol_cap_sal_purge", "NetWare Salvage and Purge Operations Supported"), |
||
4044 | bf_boolean32(0x00000010, "vol_cap_comp", "NetWare Compression Supported"), |
||
4045 | bf_boolean32(0x00000020, "vol_cap_cluster", "Volume is a Cluster Resource"), |
||
4046 | bf_boolean32(0x00000040, "vol_cap_nss_admin", "Volume is the NSS Admin Volume"), |
||
4047 | bf_boolean32(0x00000080, "vol_cap_nss", "Volume is Mounted by NSS"), |
||
4048 | bf_boolean32(0x00000100, "vol_cap_ea", "OS2 style EA's Supported"), |
||
4049 | bf_boolean32(0x00000200, "vol_cap_archive", "NetWare Archive bit Supported"), |
||
4050 | bf_boolean32(0x00000400, "vol_cap_file_attr", "Full NetWare file Attributes Supported"), |
||
4051 | ]) |
||
4052 | VolumeCachedFlag = val_string8("volume_cached_flag", "Volume Cached Flag", [ |
||
4053 | [ 0x00, "Volume is Not Cached" ], |
||
4054 | [ 0xff, "Volume is Cached" ], |
||
4055 | ]) |
||
4056 | VolumeDataStreams = uint8("volume_data_streams", "Volume Data Streams") |
||
4057 | VolumeEpochTime = eptime("epoch_time", "Last Modified Timestamp") |
||
4058 | VolumeGUID = stringz("volume_guid", "Volume GUID") |
||
4059 | VolumeHashedFlag = val_string8("volume_hashed_flag", "Volume Hashed Flag", [ |
||
4060 | [ 0x00, "Volume is Not Hashed" ], |
||
4061 | [ 0xff, "Volume is Hashed" ], |
||
4062 | ]) |
||
4063 | VolumeMountedFlag = val_string8("volume_mounted_flag", "Volume Mounted Flag", [ |
||
4064 | [ 0x00, "Volume is Not Mounted" ], |
||
4065 | [ 0xff, "Volume is Mounted" ], |
||
4066 | ]) |
||
4067 | VolumeMountPoint = stringz("volume_mnt_point", "Volume Mount Point") |
||
4068 | VolumeName = fw_string("volume_name", "Volume Name", 16) |
||
4069 | VolumeNameLen = nstring8("volume_name_len", "Volume Name") |
||
4070 | VolumeNameSpaces = uint8("volume_name_spaces", "Volume Name Spaces") |
||
4071 | VolumeNameStringz = stringz("vol_name_stringz", "Volume Name") |
||
4072 | VolumeNumber = uint8("volume_number", "Volume Number") |
||
4073 | VolumeNumberLong = uint32("volume_number_long", "Volume Number") |
||
4074 | VolumeRemovableFlag = val_string8("volume_removable_flag", "Volume Removable Flag", [ |
||
4075 | [ 0x00, "Disk Cannot be Removed from Server" ], |
||
4076 | [ 0xff, "Disk Can be Removed from Server" ], |
||
4077 | ]) |
||
4078 | VolumeRequestFlags = val_string16("volume_request_flags", "Volume Request Flags", [ |
||
4079 | [ 0x0000, "Do not return name with volume number" ], |
||
4080 | [ 0x0001, "Return name with volume number" ], |
||
4081 | ]) |
||
4082 | VolumeSizeInClusters = uint32("volume_size_in_clusters", "Volume Size in Clusters") |
||
4083 | VolumesSupportedMax = uint16("volumes_supported_max", "Volumes Supported Max") |
||
4084 | VolumeType = val_string16("volume_type", "Volume Type", [ |
||
4085 | [ 0x0000, "NetWare 386" ], |
||
4086 | [ 0x0001, "NetWare 286" ], |
||
4087 | [ 0x0002, "NetWare 386 Version 30" ], |
||
4088 | [ 0x0003, "NetWare 386 Version 31" ], |
||
4089 | ]) |
||
4090 | VolumeTypeLong = val_string32("volume_type_long", "Volume Type", [ |
||
4091 | [ 0x00000000, "NetWare 386" ], |
||
4092 | [ 0x00000001, "NetWare 286" ], |
||
4093 | [ 0x00000002, "NetWare 386 Version 30" ], |
||
4094 | [ 0x00000003, "NetWare 386 Version 31" ], |
||
4095 | ]) |
||
4096 | WastedServerMemory = uint16("wasted_server_memory", "Wasted Server Memory", ENC_BIG_ENDIAN) |
||
4097 | WaitTime = uint32("wait_time", "Wait Time") |
||
4098 | |||
4099 | Year = val_string8("year", "Year",[ |
||
4100 | [ 0x50, "1980" ], |
||
4101 | [ 0x51, "1981" ], |
||
4102 | [ 0x52, "1982" ], |
||
4103 | [ 0x53, "1983" ], |
||
4104 | [ 0x54, "1984" ], |
||
4105 | [ 0x55, "1985" ], |
||
4106 | [ 0x56, "1986" ], |
||
4107 | [ 0x57, "1987" ], |
||
4108 | [ 0x58, "1988" ], |
||
4109 | [ 0x59, "1989" ], |
||
4110 | [ 0x5a, "1990" ], |
||
4111 | [ 0x5b, "1991" ], |
||
4112 | [ 0x5c, "1992" ], |
||
4113 | [ 0x5d, "1993" ], |
||
4114 | [ 0x5e, "1994" ], |
||
4115 | [ 0x5f, "1995" ], |
||
4116 | [ 0x60, "1996" ], |
||
4117 | [ 0x61, "1997" ], |
||
4118 | [ 0x62, "1998" ], |
||
4119 | [ 0x63, "1999" ], |
||
4120 | [ 0x64, "2000" ], |
||
4121 | [ 0x65, "2001" ], |
||
4122 | [ 0x66, "2002" ], |
||
4123 | [ 0x67, "2003" ], |
||
4124 | [ 0x68, "2004" ], |
||
4125 | [ 0x69, "2005" ], |
||
4126 | [ 0x6a, "2006" ], |
||
4127 | [ 0x6b, "2007" ], |
||
4128 | [ 0x6c, "2008" ], |
||
4129 | [ 0x6d, "2009" ], |
||
4130 | [ 0x6e, "2010" ], |
||
4131 | [ 0x6f, "2011" ], |
||
4132 | [ 0x70, "2012" ], |
||
4133 | [ 0x71, "2013" ], |
||
4134 | [ 0x72, "2014" ], |
||
4135 | [ 0x73, "2015" ], |
||
4136 | [ 0x74, "2016" ], |
||
4137 | [ 0x75, "2017" ], |
||
4138 | [ 0x76, "2018" ], |
||
4139 | [ 0x77, "2019" ], |
||
4140 | [ 0x78, "2020" ], |
||
4141 | [ 0x79, "2021" ], |
||
4142 | [ 0x7a, "2022" ], |
||
4143 | [ 0x7b, "2023" ], |
||
4144 | [ 0x7c, "2024" ], |
||
4145 | [ 0x7d, "2025" ], |
||
4146 | [ 0x7e, "2026" ], |
||
4147 | [ 0x7f, "2027" ], |
||
4148 | [ 0xc0, "1984" ], |
||
4149 | [ 0xc1, "1985" ], |
||
4150 | [ 0xc2, "1986" ], |
||
4151 | [ 0xc3, "1987" ], |
||
4152 | [ 0xc4, "1988" ], |
||
4153 | [ 0xc5, "1989" ], |
||
4154 | [ 0xc6, "1990" ], |
||
4155 | [ 0xc7, "1991" ], |
||
4156 | [ 0xc8, "1992" ], |
||
4157 | [ 0xc9, "1993" ], |
||
4158 | [ 0xca, "1994" ], |
||
4159 | [ 0xcb, "1995" ], |
||
4160 | [ 0xcc, "1996" ], |
||
4161 | [ 0xcd, "1997" ], |
||
4162 | [ 0xce, "1998" ], |
||
4163 | [ 0xcf, "1999" ], |
||
4164 | [ 0xd0, "2000" ], |
||
4165 | [ 0xd1, "2001" ], |
||
4166 | [ 0xd2, "2002" ], |
||
4167 | [ 0xd3, "2003" ], |
||
4168 | [ 0xd4, "2004" ], |
||
4169 | [ 0xd5, "2005" ], |
||
4170 | [ 0xd6, "2006" ], |
||
4171 | [ 0xd7, "2007" ], |
||
4172 | [ 0xd8, "2008" ], |
||
4173 | [ 0xd9, "2009" ], |
||
4174 | [ 0xda, "2010" ], |
||
4175 | [ 0xdb, "2011" ], |
||
4176 | [ 0xdc, "2012" ], |
||
4177 | [ 0xdd, "2013" ], |
||
4178 | [ 0xde, "2014" ], |
||
4179 | [ 0xdf, "2015" ], |
||
4180 | ]) |
||
4181 | ############################################################################## |
||
4182 | # Structs |
||
4183 | ############################################################################## |
||
4184 | |||
4185 | |||
4186 | acctngInfo = struct("acctng_info_struct", [ |
||
4187 | HoldTime, |
||
4188 | HoldAmount, |
||
4189 | ChargeAmount, |
||
4190 | HeldConnectTimeInMinutes, |
||
4191 | HeldRequests, |
||
4192 | HeldBytesRead, |
||
4193 | HeldBytesWritten, |
||
4194 | ],"Accounting Information") |
||
4195 | AFP10Struct = struct("afp_10_struct", [ |
||
4196 | AFPEntryID, |
||
4197 | ParentID, |
||
4198 | AttributesDef16, |
||
4199 | DataForkLen, |
||
4200 | ResourceForkLen, |
||
4201 | TotalOffspring, |
||
4202 | CreationDate, |
||
4203 | LastAccessedDate, |
||
4204 | ModifiedDate, |
||
4205 | ModifiedTime, |
||
4206 | ArchivedDate, |
||
4207 | ArchivedTime, |
||
4208 | CreatorID, |
||
4209 | Reserved4, |
||
4210 | FinderAttr, |
||
4211 | HorizLocation, |
||
4212 | VertLocation, |
||
4213 | FileDirWindow, |
||
4214 | Reserved16, |
||
4215 | LongName, |
||
4216 | CreatorID, |
||
4217 | ShortName, |
||
4218 | AccessPrivileges, |
||
4219 | ], "AFP Information" ) |
||
4220 | AFP20Struct = struct("afp_20_struct", [ |
||
4221 | AFPEntryID, |
||
4222 | ParentID, |
||
4223 | AttributesDef16, |
||
4224 | DataForkLen, |
||
4225 | ResourceForkLen, |
||
4226 | TotalOffspring, |
||
4227 | CreationDate, |
||
4228 | LastAccessedDate, |
||
4229 | ModifiedDate, |
||
4230 | ModifiedTime, |
||
4231 | ArchivedDate, |
||
4232 | ArchivedTime, |
||
4233 | CreatorID, |
||
4234 | Reserved4, |
||
4235 | FinderAttr, |
||
4236 | HorizLocation, |
||
4237 | VertLocation, |
||
4238 | FileDirWindow, |
||
4239 | Reserved16, |
||
4240 | LongName, |
||
4241 | CreatorID, |
||
4242 | ShortName, |
||
4243 | AccessPrivileges, |
||
4244 | Reserved, |
||
4245 | ProDOSInfo, |
||
4246 | ], "AFP Information" ) |
||
4247 | ArchiveDateStruct = struct("archive_date_struct", [ |
||
4248 | ArchivedDate, |
||
4249 | ]) |
||
4250 | ArchiveIdStruct = struct("archive_id_struct", [ |
||
4251 | ArchiverID, |
||
4252 | ]) |
||
4253 | ArchiveInfoStruct = struct("archive_info_struct", [ |
||
4254 | ArchivedTime, |
||
4255 | ArchivedDate, |
||
4256 | ArchiverID, |
||
4257 | ], "Archive Information") |
||
4258 | ArchiveTimeStruct = struct("archive_time_struct", [ |
||
4259 | ArchivedTime, |
||
4260 | ]) |
||
4261 | AttributesStruct = struct("attributes_struct", [ |
||
4262 | AttributesDef32, |
||
4263 | FlagsDef, |
||
4264 | ], "Attributes") |
||
4265 | authInfo = struct("auth_info_struct", [ |
||
4266 | Status, |
||
4267 | Reserved2, |
||
4268 | Privileges, |
||
4269 | ]) |
||
4270 | BoardNameStruct = struct("board_name_struct", [ |
||
4271 | DriverBoardName, |
||
4272 | DriverShortName, |
||
4273 | DriverLogicalName, |
||
4274 | ], "Board Name") |
||
4275 | CacheInfo = struct("cache_info", [ |
||
4276 | uint32("max_byte_cnt", "Maximum Byte Count"), |
||
4277 | uint32("min_num_of_cache_buff", "Minimum Number Of Cache Buffers"), |
||
4278 | uint32("min_cache_report_thresh", "Minimum Cache Report Threshold"), |
||
4279 | uint32("alloc_waiting", "Allocate Waiting Count"), |
||
4280 | uint32("ndirty_blocks", "Number of Dirty Blocks"), |
||
4281 | uint32("cache_dirty_wait_time", "Cache Dirty Wait Time"), |
||
4282 | uint32("cache_max_concur_writes", "Cache Maximum Concurrent Writes"), |
||
4283 | uint32("max_dirty_time", "Maximum Dirty Time"), |
||
4284 | uint32("num_dir_cache_buff", "Number Of Directory Cache Buffers"), |
||
4285 | uint32("cache_byte_to_block", "Cache Byte To Block Shift Factor"), |
||
4286 | ], "Cache Information") |
||
4287 | CommonLanStruc = struct("common_lan_struct", [ |
||
4288 | boolean8("not_supported_mask", "Bit Counter Supported"), |
||
4289 | Reserved3, |
||
4290 | uint32("total_tx_packet_count", "Total Transmit Packet Count"), |
||
4291 | uint32("total_rx_packet_count", "Total Receive Packet Count"), |
||
4292 | uint32("no_ecb_available_count", "No ECB Available Count"), |
||
4293 | uint32("packet_tx_too_big_count", "Transmit Packet Too Big Count"), |
||
4294 | uint32("packet_tx_too_small_count", "Transmit Packet Too Small Count"), |
||
4295 | uint32("packet_rx_overflow_count", "Receive Packet Overflow Count"), |
||
4296 | uint32("packet_rx_too_big_count", "Receive Packet Too Big Count"), |
||
4297 | uint32("packet_rs_too_small_count", "Receive Packet Too Small Count"), |
||
4298 | uint32("packet_tx_misc_error_count", "Transmit Packet Misc Error Count"), |
||
4299 | uint32("packet_rx_misc_error_count", "Receive Packet Misc Error Count"), |
||
4300 | uint32("retry_tx_count", "Transmit Retry Count"), |
||
4301 | uint32("checksum_error_count", "Checksum Error Count"), |
||
4302 | uint32("hardware_rx_mismatch_count", "Hardware Receive Mismatch Count"), |
||
4303 | ], "Common LAN Information") |
||
4304 | CompDeCompStat = struct("comp_d_comp_stat", [ |
||
4305 | uint32("cmphitickhigh", "Compress High Tick"), |
||
4306 | uint32("cmphitickcnt", "Compress High Tick Count"), |
||
4307 | uint32("cmpbyteincount", "Compress Byte In Count"), |
||
4308 | uint32("cmpbyteoutcnt", "Compress Byte Out Count"), |
||
4309 | uint32("cmphibyteincnt", "Compress High Byte In Count"), |
||
4310 | uint32("cmphibyteoutcnt", "Compress High Byte Out Count"), |
||
4311 | uint32("decphitickhigh", "DeCompress High Tick"), |
||
4312 | uint32("decphitickcnt", "DeCompress High Tick Count"), |
||
4313 | uint32("decpbyteincount", "DeCompress Byte In Count"), |
||
4314 | uint32("decpbyteoutcnt", "DeCompress Byte Out Count"), |
||
4315 | uint32("decphibyteincnt", "DeCompress High Byte In Count"), |
||
4316 | uint32("decphibyteoutcnt", "DeCompress High Byte Out Count"), |
||
4317 | ], "Compression/Decompression Information") |
||
4318 | ConnFileStruct = struct("conn_file_struct", [ |
||
4319 | ConnectionNumberWord, |
||
4320 | TaskNumberWord, |
||
4321 | LockType, |
||
4322 | AccessControl, |
||
4323 | LockFlag, |
||
4324 | ], "File Connection Information") |
||
4325 | ConnStruct = struct("conn_struct", [ |
||
4326 | TaskNumByte, |
||
4327 | LockType, |
||
4328 | AccessControl, |
||
4329 | LockFlag, |
||
4330 | VolumeNumber, |
||
4331 | DirectoryEntryNumberWord, |
||
4332 | FileName14, |
||
4333 | ], "Connection Information") |
||
4334 | ConnTaskStruct = struct("conn_task_struct", [ |
||
4335 | ConnectionNumberByte, |
||
4336 | TaskNumByte, |
||
4337 | ], "Task Information") |
||
4338 | Counters = struct("counters_struct", [ |
||
4339 | uint32("read_exist_blck", "Read Existing Block Count"), |
||
4340 | uint32("read_exist_write_wait", "Read Existing Write Wait Count"), |
||
4341 | uint32("read_exist_part_read", "Read Existing Partial Read Count"), |
||
4342 | uint32("read_exist_read_err", "Read Existing Read Error Count"), |
||
4343 | uint32("wrt_blck_cnt", "Write Block Count"), |
||
4344 | uint32("wrt_entire_blck", "Write Entire Block Count"), |
||
4345 | uint32("internl_dsk_get", "Internal Disk Get Count"), |
||
4346 | uint32("internl_dsk_get_need_to_alloc", "Internal Disk Get Need To Allocate Count"), |
||
4347 | uint32("internl_dsk_get_someone_beat", "Internal Disk Get Someone Beat My Count"), |
||
4348 | uint32("internl_dsk_get_part_read", "Internal Disk Get Partial Read Count"), |
||
4349 | uint32("internl_dsk_get_read_err", "Internal Disk Get Read Error Count"), |
||
4350 | uint32("async_internl_dsk_get", "Async Internal Disk Get Count"), |
||
4351 | uint32("async_internl_dsk_get_need_to_alloc", "Async Internal Disk Get Need To Alloc"), |
||
4352 | uint32("async_internl_dsk_get_someone_beat", "Async Internal Disk Get Someone Beat Me"), |
||
4353 | uint32("err_doing_async_read", "Error Doing Async Read Count"), |
||
4354 | uint32("internl_dsk_get_no_read", "Internal Disk Get No Read Count"), |
||
4355 | uint32("internl_dsk_get_no_read_alloc", "Internal Disk Get No Read Allocate Count"), |
||
4356 | uint32("internl_dsk_get_no_read_someone_beat", "Internal Disk Get No Read Someone Beat Me Count"), |
||
4357 | uint32("internl_dsk_write", "Internal Disk Write Count"), |
||
4358 | uint32("internl_dsk_write_alloc", "Internal Disk Write Allocate Count"), |
||
4359 | uint32("internl_dsk_write_someone_beat", "Internal Disk Write Someone Beat Me Count"), |
||
4360 | uint32("write_err", "Write Error Count"), |
||
4361 | uint32("wait_on_sema", "Wait On Semaphore Count"), |
||
4362 | uint32("alloc_blck_i_had_to_wait_for", "Allocate Block I Had To Wait For Someone Count"), |
||
4363 | uint32("alloc_blck", "Allocate Block Count"), |
||
4364 | uint32("alloc_blck_i_had_to_wait", "Allocate Block I Had To Wait Count"), |
||
4365 | ], "Disk Counter Information") |
||
4366 | CPUInformation = struct("cpu_information", [ |
||
4367 | PageTableOwnerFlag, |
||
4368 | CPUType, |
||
4369 | Reserved3, |
||
4370 | CoprocessorFlag, |
||
4371 | BusType, |
||
4372 | Reserved3, |
||
4373 | IOEngineFlag, |
||
4374 | Reserved3, |
||
4375 | FSEngineFlag, |
||
4376 | Reserved3, |
||
4377 | NonDedFlag, |
||
4378 | Reserved3, |
||
4379 | CPUString, |
||
4380 | CoProcessorString, |
||
4381 | BusString, |
||
4382 | ], "CPU Information") |
||
4383 | CreationDateStruct = struct("creation_date_struct", [ |
||
4384 | CreationDate, |
||
4385 | ]) |
||
4386 | CreationInfoStruct = struct("creation_info_struct", [ |
||
4387 | CreationTime, |
||
4388 | CreationDate, |
||
4389 | endian(CreatorID, ENC_LITTLE_ENDIAN), |
||
4390 | ], "Creation Information") |
||
4391 | CreationTimeStruct = struct("creation_time_struct", [ |
||
4392 | CreationTime, |
||
4393 | ]) |
||
4394 | CustomCntsInfo = struct("custom_cnts_info", [ |
||
4395 | CustomVariableValue, |
||
4396 | CustomString, |
||
4397 | ], "Custom Counters" ) |
||
4398 | DataStreamInfo = struct("data_stream_info", [ |
||
4399 | AssociatedNameSpace, |
||
4400 | DataStreamName |
||
4401 | ]) |
||
4402 | DataStreamSizeStruct = struct("data_stream_size_struct", [ |
||
4403 | DataStreamSize, |
||
4404 | ]) |
||
4405 | DirCacheInfo = struct("dir_cache_info", [ |
||
4406 | uint32("min_time_since_file_delete", "Minimum Time Since File Delete"), |
||
4407 | uint32("abs_min_time_since_file_delete", "Absolute Minimum Time Since File Delete"), |
||
4408 | uint32("min_num_of_dir_cache_buff", "Minimum Number Of Directory Cache Buffers"), |
||
4409 | uint32("max_num_of_dir_cache_buff", "Maximum Number Of Directory Cache Buffers"), |
||
4410 | uint32("num_of_dir_cache_buff", "Number Of Directory Cache Buffers"), |
||
4411 | uint32("dc_min_non_ref_time", "DC Minimum Non-Referenced Time"), |
||
4412 | uint32("dc_wait_time_before_new_buff", "DC Wait Time Before New Buffer"), |
||
4413 | uint32("dc_max_concurrent_writes", "DC Maximum Concurrent Writes"), |
||
4414 | uint32("dc_dirty_wait_time", "DC Dirty Wait Time"), |
||
4415 | uint32("dc_double_read_flag", "DC Double Read Flag"), |
||
4416 | uint32("map_hash_node_count", "Map Hash Node Count"), |
||
4417 | uint32("space_restriction_node_count", "Space Restriction Node Count"), |
||
4418 | uint32("trustee_list_node_count", "Trustee List Node Count"), |
||
4419 | uint32("percent_of_vol_used_by_dirs", "Percent Of Volume Used By Directories"), |
||
4420 | ], "Directory Cache Information") |
||
4421 | DirDiskSpaceRest64bit = struct("dir_disk_space_rest_64bit", [ |
||
4422 | Level, |
||
4423 | MaxSpace64, |
||
4424 | MinSpaceLeft64 |
||
4425 | ], "Directory Disk Space Restriction 64 bit") |
||
4426 | DirEntryStruct = struct("dir_entry_struct", [ |
||
4427 | DirectoryEntryNumber, |
||
4428 | DOSDirectoryEntryNumber, |
||
4429 | VolumeNumberLong, |
||
4430 | ], "Directory Entry Information") |
||
4431 | DirectoryInstance = struct("directory_instance", [ |
||
4432 | SearchSequenceWord, |
||
4433 | DirectoryID, |
||
4434 | DirectoryName14, |
||
4435 | DirectoryAttributes, |
||
4436 | DirectoryAccessRights, |
||
4437 | endian(CreationDate, ENC_BIG_ENDIAN), |
||
4438 | endian(AccessDate, ENC_BIG_ENDIAN), |
||
4439 | CreatorID, |
||
4440 | Reserved2, |
||
4441 | DirectoryStamp, |
||
4442 | ], "Directory Information") |
||
4443 | DMInfoLevel0 = struct("dm_info_level_0", [ |
||
4444 | uint32("io_flag", "IO Flag"), |
||
4445 | uint32("sm_info_size", "Storage Module Information Size"), |
||
4446 | uint32("avail_space", "Available Space"), |
||
4447 | uint32("used_space", "Used Space"), |
||
4448 | stringz("s_module_name", "Storage Module Name"), |
||
4449 | uint8("s_m_info", "Storage Media Information"), |
||
4450 | ]) |
||
4451 | DMInfoLevel1 = struct("dm_info_level_1", [ |
||
4452 | NumberOfSMs, |
||
4453 | SMIDs, |
||
4454 | ]) |
||
4455 | DMInfoLevel2 = struct("dm_info_level_2", [ |
||
4456 | Name, |
||
4457 | ]) |
||
4458 | DOSDirectoryEntryStruct = struct("dos_directory_entry_struct", [ |
||
4459 | AttributesDef32, |
||
4460 | UniqueID, |
||
4461 | PurgeFlags, |
||
4462 | DestNameSpace, |
||
4463 | DirectoryNameLen, |
||
4464 | DirectoryName, |
||
4465 | CreationTime, |
||
4466 | CreationDate, |
||
4467 | CreatorID, |
||
4468 | ArchivedTime, |
||
4469 | ArchivedDate, |
||
4470 | ArchiverID, |
||
4471 | UpdateTime, |
||
4472 | UpdateDate, |
||
4473 | NextTrusteeEntry, |
||
4474 | Reserved48, |
||
4475 | InheritedRightsMask, |
||
4476 | ], "DOS Directory Information") |
||
4477 | DOSFileEntryStruct = struct("dos_file_entry_struct", [ |
||
4478 | AttributesDef32, |
||
4479 | UniqueID, |
||
4480 | PurgeFlags, |
||
4481 | DestNameSpace, |
||
4482 | NameLen, |
||
4483 | Name12, |
||
4484 | CreationTime, |
||
4485 | CreationDate, |
||
4486 | CreatorID, |
||
4487 | ArchivedTime, |
||
4488 | ArchivedDate, |
||
4489 | ArchiverID, |
||
4490 | UpdateTime, |
||
4491 | UpdateDate, |
||
4492 | UpdateID, |
||
4493 | FileSize, |
||
4494 | DataForkFirstFAT, |
||
4495 | NextTrusteeEntry, |
||
4496 | Reserved36, |
||
4497 | InheritedRightsMask, |
||
4498 | LastAccessedDate, |
||
4499 | Reserved20, |
||
4500 | PrimaryEntry, |
||
4501 | NameList, |
||
4502 | ], "DOS File Information") |
||
4503 | DSSpaceAllocateStruct = struct("ds_space_alloc_struct", [ |
||
4504 | DataStreamSpaceAlloc, |
||
4505 | ]) |
||
4506 | DynMemStruct = struct("dyn_mem_struct", [ |
||
4507 | uint32("dyn_mem_struct_total", "Total Dynamic Space" ), |
||
4508 | uint32("dyn_mem_struct_max", "Max Used Dynamic Space" ), |
||
4509 | uint32("dyn_mem_struct_cur", "Current Used Dynamic Space" ), |
||
4510 | ], "Dynamic Memory Information") |
||
4511 | EAInfoStruct = struct("ea_info_struct", [ |
||
4512 | EADataSize, |
||
4513 | EACount, |
||
4514 | EAKeySize, |
||
4515 | ], "Extended Attribute Information") |
||
4516 | ExtraCacheCntrs = struct("extra_cache_cntrs", [ |
||
4517 | uint32("internl_dsk_get_no_wait", "Internal Disk Get No Wait Count"), |
||
4518 | uint32("internl_dsk_get_no_wait_need", "Internal Disk Get No Wait Need To Allocate Count"), |
||
4519 | uint32("internl_dsk_get_no_wait_no_blk", "Internal Disk Get No Wait No Block Count"), |
||
4520 | uint32("id_get_no_read_no_wait", "ID Get No Read No Wait Count"), |
||
4521 | uint32("id_get_no_read_no_wait_sema", "ID Get No Read No Wait Semaphored Count"), |
||
4522 | uint32("id_get_no_read_no_wait_buffer", "ID Get No Read No Wait No Buffer Count"), |
||
4523 | uint32("id_get_no_read_no_wait_alloc", "ID Get No Read No Wait Allocate Count"), |
||
4524 | uint32("id_get_no_read_no_wait_no_alloc", "ID Get No Read No Wait No Alloc Count"), |
||
4525 | uint32("id_get_no_read_no_wait_no_alloc_sema", "ID Get No Read No Wait No Alloc Semaphored Count"), |
||
4526 | uint32("id_get_no_read_no_wait_no_alloc_alloc", "ID Get No Read No Wait No Alloc Allocate Count"), |
||
4527 | ], "Extra Cache Counters Information") |
||
4528 | |||
4529 | FileSize64bitStruct = struct("file_sz_64bit_struct", [ |
||
4530 | FileSize64bit, |
||
4531 | ]) |
||
4532 | |||
4533 | ReferenceIDStruct = struct("ref_id_struct", [ |
||
4534 | CurrentReferenceID, |
||
4535 | ]) |
||
4536 | NSAttributeStruct = struct("ns_attrib_struct", [ |
||
4537 | AttributesDef32, |
||
4538 | ]) |
||
4539 | DStreamActual = struct("d_stream_actual", [ |
||
4540 | DataStreamNumberLong, |
||
4541 | DataStreamFATBlocks, |
||
4542 | ], "Actual Stream") |
||
4543 | DStreamLogical = struct("d_string_logical", [ |
||
4544 | DataStreamNumberLong, |
||
4545 | DataStreamSize, |
||
4546 | ], "Logical Stream") |
||
4547 | LastUpdatedInSecondsStruct = struct("last_update_in_seconds_struct", [ |
||
4548 | SecondsRelativeToTheYear2000, |
||
4549 | ]) |
||
4550 | DOSNameStruct = struct("dos_name_struct", [ |
||
4551 | FileName, |
||
4552 | ], "DOS File Name") |
||
4553 | DOSName16Struct = struct("dos_name_16_struct", [ |
||
4554 | FileName16, |
||
4555 | ], "DOS File Name") |
||
4556 | FlushTimeStruct = struct("flush_time_struct", [ |
||
4557 | FlushTime, |
||
4558 | ]) |
||
4559 | ParentBaseIDStruct = struct("parent_base_id_struct", [ |
||
4560 | ParentBaseID, |
||
4561 | ]) |
||
4562 | MacFinderInfoStruct = struct("mac_finder_info_struct", [ |
||
4563 | MacFinderInfo, |
||
4564 | ]) |
||
4565 | SiblingCountStruct = struct("sibling_count_struct", [ |
||
4566 | SiblingCount, |
||
4567 | ]) |
||
4568 | EffectiveRightsStruct = struct("eff_rights_struct", [ |
||
4569 | EffectiveRights, |
||
4570 | Reserved3, |
||
4571 | ]) |
||
4572 | MacTimeStruct = struct("mac_time_struct", [ |
||
4573 | MACCreateDate, |
||
4574 | MACCreateTime, |
||
4575 | MACBackupDate, |
||
4576 | MACBackupTime, |
||
4577 | ]) |
||
4578 | LastAccessedTimeStruct = struct("last_access_time_struct", [ |
||
4579 | LastAccessedTime, |
||
4580 | ]) |
||
4581 | FileAttributesStruct = struct("file_attributes_struct", [ |
||
4582 | AttributesDef32, |
||
4583 | ]) |
||
4584 | FileInfoStruct = struct("file_info_struct", [ |
||
4585 | ParentID, |
||
4586 | DirectoryEntryNumber, |
||
4587 | TotalBlocksToDecompress, |
||
4588 | #CurrentBlockBeingDecompressed, |
||
4589 | ], "File Information") |
||
4590 | FileInstance = struct("file_instance", [ |
||
4591 | SearchSequenceWord, |
||
4592 | DirectoryID, |
||
4593 | FileName14, |
||
4594 | AttributesDef, |
||
4595 | FileMode, |
||
4596 | FileSize, |
||
4597 | endian(CreationDate, ENC_BIG_ENDIAN), |
||
4598 | endian(AccessDate, ENC_BIG_ENDIAN), |
||
4599 | endian(UpdateDate, ENC_BIG_ENDIAN), |
||
4600 | endian(UpdateTime, ENC_BIG_ENDIAN), |
||
4601 | ], "File Instance") |
||
4602 | FileNameStruct = struct("file_name_struct", [ |
||
4603 | FileName, |
||
4604 | ], "File Name") |
||
4605 | FileName16Struct = struct("file_name16_struct", [ |
||
4606 | FileName16, |
||
4607 | ], "File Name") |
||
4608 | FileServerCounters = struct("file_server_counters", [ |
||
4609 | uint16("too_many_hops", "Too Many Hops"), |
||
4610 | uint16("unknown_network", "Unknown Network"), |
||
4611 | uint16("no_space_for_service", "No Space For Service"), |
||
4612 | uint16("no_receive_buff", "No Receive Buffers"), |
||
4613 | uint16("not_my_network", "Not My Network"), |
||
4614 | uint32("netbios_progated", "NetBIOS Propagated Count"), |
||
4615 | uint32("ttl_pckts_srvcd", "Total Packets Serviced"), |
||
4616 | uint32("ttl_pckts_routed", "Total Packets Routed"), |
||
4617 | ], "File Server Counters") |
||
4618 | FileSystemInfo = struct("file_system_info", [ |
||
4619 | uint32("fat_moved", "Number of times the OS has move the location of FAT"), |
||
4620 | uint32("fat_write_err", "Number of write errors in both original and mirrored copies of FAT"), |
||
4621 | uint32("someone_else_did_it_0", "Someone Else Did It Count 0"), |
||
4622 | uint32("someone_else_did_it_1", "Someone Else Did It Count 1"), |
||
4623 | uint32("someone_else_did_it_2", "Someone Else Did It Count 2"), |
||
4624 | uint32("i_ran_out_someone_else_did_it_0", "I Ran Out Someone Else Did It Count 0"), |
||
4625 | uint32("i_ran_out_someone_else_did_it_1", "I Ran Out Someone Else Did It Count 1"), |
||
4626 | uint32("i_ran_out_someone_else_did_it_2", "I Ran Out Someone Else Did It Count 2"), |
||
4627 | uint32("turbo_fat_build_failed", "Turbo FAT Build Failed Count"), |
||
4628 | uint32("extra_use_count_node_count", "Errors allocating a use count node for TTS"), |
||
4629 | uint32("extra_extra_use_count_node_count", "Errors allocating an additional use count node for TTS"), |
||
4630 | uint32("error_read_last_fat", "Error Reading Last FAT Count"), |
||
4631 | uint32("someone_else_using_this_file", "Someone Else Using This File Count"), |
||
4632 | ], "File System Information") |
||
4633 | GenericInfoDef = struct("generic_info_def", [ |
||
4634 | fw_string("generic_label", "Label", 64), |
||
4635 | uint32("generic_ident_type", "Identification Type"), |
||
4636 | uint32("generic_ident_time", "Identification Time"), |
||
4637 | uint32("generic_media_type", "Media Type"), |
||
4638 | uint32("generic_cartridge_type", "Cartridge Type"), |
||
4639 | uint32("generic_unit_size", "Unit Size"), |
||
4640 | uint32("generic_block_size", "Block Size"), |
||
4641 | uint32("generic_capacity", "Capacity"), |
||
4642 | uint32("generic_pref_unit_size", "Preferred Unit Size"), |
||
4643 | fw_string("generic_name", "Name",64), |
||
4644 | uint32("generic_type", "Type"), |
||
4645 | uint32("generic_status", "Status"), |
||
4646 | uint32("generic_func_mask", "Function Mask"), |
||
4647 | uint32("generic_ctl_mask", "Control Mask"), |
||
4648 | uint32("generic_parent_count", "Parent Count"), |
||
4649 | uint32("generic_sib_count", "Sibling Count"), |
||
4650 | uint32("generic_child_count", "Child Count"), |
||
4651 | uint32("generic_spec_info_sz", "Specific Information Size"), |
||
4652 | uint32("generic_object_uniq_id", "Unique Object ID"), |
||
4653 | uint32("generic_media_slot", "Media Slot"), |
||
4654 | ], "Generic Information") |
||
4655 | HandleInfoLevel0 = struct("handle_info_level_0", [ |
||
4656 | # DataStream, |
||
4657 | ]) |
||
4658 | HandleInfoLevel1 = struct("handle_info_level_1", [ |
||
4659 | DataStream, |
||
4660 | ]) |
||
4661 | HandleInfoLevel2 = struct("handle_info_level_2", [ |
||
4662 | DOSDirectoryBase, |
||
4663 | NameSpace, |
||
4664 | DataStream, |
||
4665 | ]) |
||
4666 | HandleInfoLevel3 = struct("handle_info_level_3", [ |
||
4667 | DOSDirectoryBase, |
||
4668 | NameSpace, |
||
4669 | ]) |
||
4670 | HandleInfoLevel4 = struct("handle_info_level_4", [ |
||
4671 | DOSDirectoryBase, |
||
4672 | NameSpace, |
||
4673 | ParentDirectoryBase, |
||
4674 | ParentDOSDirectoryBase, |
||
4675 | ]) |
||
4676 | HandleInfoLevel5 = struct("handle_info_level_5", [ |
||
4677 | DOSDirectoryBase, |
||
4678 | NameSpace, |
||
4679 | DataStream, |
||
4680 | ParentDirectoryBase, |
||
4681 | ParentDOSDirectoryBase, |
||
4682 | ]) |
||
4683 | IPXInformation = struct("ipx_information", [ |
||
4684 | uint32("ipx_send_pkt", "IPX Send Packet Count"), |
||
4685 | uint16("ipx_malform_pkt", "IPX Malformed Packet Count"), |
||
4686 | uint32("ipx_get_ecb_req", "IPX Get ECB Request Count"), |
||
4687 | uint32("ipx_get_ecb_fail", "IPX Get ECB Fail Count"), |
||
4688 | uint32("ipx_aes_event", "IPX AES Event Count"), |
||
4689 | uint16("ipx_postponed_aes", "IPX Postponed AES Count"), |
||
4690 | uint16("ipx_max_conf_sock", "IPX Max Configured Socket Count"), |
||
4691 | uint16("ipx_max_open_sock", "IPX Max Open Socket Count"), |
||
4692 | uint16("ipx_open_sock_fail", "IPX Open Socket Fail Count"), |
||
4693 | uint32("ipx_listen_ecb", "IPX Listen ECB Count"), |
||
4694 | uint16("ipx_ecb_cancel_fail", "IPX ECB Cancel Fail Count"), |
||
4695 | uint16("ipx_get_lcl_targ_fail", "IPX Get Local Target Fail Count"), |
||
4696 | ], "IPX Information") |
||
4697 | JobEntryTime = struct("job_entry_time", [ |
||
4698 | Year, |
||
4699 | Month, |
||
4700 | Day, |
||
4701 | Hour, |
||
4702 | Minute, |
||
4703 | Second, |
||
4704 | ], "Job Entry Time") |
||
4705 | JobStruct3x = struct("job_struct_3x", [ |
||
4706 | RecordInUseFlag, |
||
4707 | PreviousRecord, |
||
4708 | NextRecord, |
||
4709 | ClientStationLong, |
||
4710 | ClientTaskNumberLong, |
||
4711 | ClientIDNumber, |
||
4712 | TargetServerIDNumber, |
||
4713 | TargetExecutionTime, |
||
4714 | JobEntryTime, |
||
4715 | JobNumberLong, |
||
4716 | JobType, |
||
4717 | JobPositionWord, |
||
4718 | JobControlFlagsWord, |
||
4719 | JobFileName, |
||
4720 | JobFileHandleLong, |
||
4721 | ServerStationLong, |
||
4722 | ServerTaskNumberLong, |
||
4723 | ServerID, |
||
4724 | TextJobDescription, |
||
4725 | ClientRecordArea, |
||
4726 | ], "Job Information") |
||
4727 | JobStruct = struct("job_struct", [ |
||
4728 | ClientStation, |
||
4729 | ClientTaskNumber, |
||
4730 | ClientIDNumber, |
||
4731 | TargetServerIDNumber, |
||
4732 | TargetExecutionTime, |
||
4733 | JobEntryTime, |
||
4734 | JobNumber, |
||
4735 | JobType, |
||
4736 | JobPosition, |
||
4737 | JobControlFlags, |
||
4738 | JobFileName, |
||
4739 | JobFileHandle, |
||
4740 | ServerStation, |
||
4741 | ServerTaskNumber, |
||
4742 | ServerID, |
||
4743 | TextJobDescription, |
||
4744 | ClientRecordArea, |
||
4745 | ], "Job Information") |
||
4746 | JobStructNew = struct("job_struct_new", [ |
||
4747 | RecordInUseFlag, |
||
4748 | PreviousRecord, |
||
4749 | NextRecord, |
||
4750 | ClientStationLong, |
||
4751 | ClientTaskNumberLong, |
||
4752 | ClientIDNumber, |
||
4753 | TargetServerIDNumber, |
||
4754 | TargetExecutionTime, |
||
4755 | JobEntryTime, |
||
4756 | JobNumberLong, |
||
4757 | JobType, |
||
4758 | JobPositionWord, |
||
4759 | JobControlFlagsWord, |
||
4760 | JobFileName, |
||
4761 | JobFileHandleLong, |
||
4762 | ServerStationLong, |
||
4763 | ServerTaskNumberLong, |
||
4764 | ServerID, |
||
4765 | ], "Job Information") |
||
4766 | KnownRoutes = struct("known_routes", [ |
||
4767 | NetIDNumber, |
||
4768 | HopsToNet, |
||
4769 | NetStatus, |
||
4770 | TimeToNet, |
||
4771 | ], "Known Routes") |
||
4772 | SrcEnhNWHandlePathS1 = struct("source_nwhandle", [ |
||
4773 | DirectoryBase, |
||
4774 | VolumeNumber, |
||
4775 | HandleFlag, |
||
4776 | DataTypeFlag, |
||
4777 | Reserved5, |
||
4778 | ], "Source Information") |
||
4779 | DstEnhNWHandlePathS1 = struct("destination_nwhandle", [ |
||
4780 | DirectoryBase, |
||
4781 | VolumeNumber, |
||
4782 | HandleFlag, |
||
4783 | DataTypeFlag, |
||
4784 | Reserved5, |
||
4785 | ], "Destination Information") |
||
4786 | KnownServStruc = struct("known_server_struct", [ |
||
4787 | ServerAddress, |
||
4788 | HopsToNet, |
||
4789 | ServerNameStringz, |
||
4790 | ], "Known Servers") |
||
4791 | LANConfigInfo = struct("lan_cfg_info", [ |
||
4792 | LANdriverCFG_MajorVersion, |
||
4793 | LANdriverCFG_MinorVersion, |
||
4794 | LANdriverNodeAddress, |
||
4795 | Reserved, |
||
4796 | LANdriverModeFlags, |
||
4797 | LANdriverBoardNumber, |
||
4798 | LANdriverBoardInstance, |
||
4799 | LANdriverMaximumSize, |
||
4800 | LANdriverMaxRecvSize, |
||
4801 | LANdriverRecvSize, |
||
4802 | LANdriverCardID, |
||
4803 | LANdriverMediaID, |
||
4804 | LANdriverTransportTime, |
||
4805 | LANdriverSrcRouting, |
||
4806 | LANdriverLineSpeed, |
||
4807 | LANdriverReserved, |
||
4808 | LANdriverMajorVersion, |
||
4809 | LANdriverMinorVersion, |
||
4810 | LANdriverFlags, |
||
4811 | LANdriverSendRetries, |
||
4812 | LANdriverLink, |
||
4813 | LANdriverSharingFlags, |
||
4814 | LANdriverSlot, |
||
4815 | LANdriverIOPortsAndRanges1, |
||
4816 | LANdriverIOPortsAndRanges2, |
||
4817 | LANdriverIOPortsAndRanges3, |
||
4818 | LANdriverIOPortsAndRanges4, |
||
4819 | LANdriverMemoryDecode0, |
||
4820 | LANdriverMemoryLength0, |
||
4821 | LANdriverMemoryDecode1, |
||
4822 | LANdriverMemoryLength1, |
||
4823 | LANdriverInterrupt1, |
||
4824 | LANdriverInterrupt2, |
||
4825 | LANdriverDMAUsage1, |
||
4826 | LANdriverDMAUsage2, |
||
4827 | LANdriverLogicalName, |
||
4828 | LANdriverIOReserved, |
||
4829 | LANdriverCardName, |
||
4830 | ], "LAN Configuration Information") |
||
4831 | LastAccessStruct = struct("last_access_struct", [ |
||
4832 | LastAccessedDate, |
||
4833 | ]) |
||
4834 | lockInfo = struct("lock_info_struct", [ |
||
4835 | LogicalLockThreshold, |
||
4836 | PhysicalLockThreshold, |
||
4837 | FileLockCount, |
||
4838 | RecordLockCount, |
||
4839 | ], "Lock Information") |
||
4840 | LockStruct = struct("lock_struct", [ |
||
4841 | TaskNumByte, |
||
4842 | LockType, |
||
4843 | RecordStart, |
||
4844 | RecordEnd, |
||
4845 | ], "Locks") |
||
4846 | LoginTime = struct("login_time", [ |
||
4847 | Year, |
||
4848 | Month, |
||
4849 | Day, |
||
4850 | Hour, |
||
4851 | Minute, |
||
4852 | Second, |
||
4853 | DayOfWeek, |
||
4854 | ], "Login Time") |
||
4855 | LogLockStruct = struct("log_lock_struct", [ |
||
4856 | TaskNumberWord, |
||
4857 | LockStatus, |
||
4858 | LockName, |
||
4859 | ], "Logical Locks") |
||
4860 | LogRecStruct = struct("log_rec_struct", [ |
||
4861 | ConnectionNumberWord, |
||
4862 | TaskNumByte, |
||
4863 | LockStatus, |
||
4864 | ], "Logical Record Locks") |
||
4865 | LSLInformation = struct("lsl_information", [ |
||
4866 | uint32("rx_buffers", "Receive Buffers"), |
||
4867 | uint32("rx_buffers_75", "Receive Buffers Warning Level"), |
||
4868 | uint32("rx_buffers_checked_out", "Receive Buffers Checked Out Count"), |
||
4869 | uint32("rx_buffer_size", "Receive Buffer Size"), |
||
4870 | uint32("max_phy_packet_size", "Maximum Physical Packet Size"), |
||
4871 | uint32("last_time_rx_buff_was_alloc", "Last Time a Receive Buffer was Allocated"), |
||
4872 | uint32("max_num_of_protocols", "Maximum Number of Protocols"), |
||
4873 | uint32("max_num_of_media_types", "Maximum Number of Media Types"), |
||
4874 | uint32("total_tx_packets", "Total Transmit Packets"), |
||
4875 | uint32("get_ecb_buf", "Get ECB Buffers"), |
||
4876 | uint32("get_ecb_fails", "Get ECB Failures"), |
||
4877 | uint32("aes_event_count", "AES Event Count"), |
||
4878 | uint32("post_poned_events", "Postponed Events"), |
||
4879 | uint32("ecb_cxl_fails", "ECB Cancel Failures"), |
||
4880 | uint32("valid_bfrs_reused", "Valid Buffers Reused"), |
||
4881 | uint32("enqueued_send_cnt", "Enqueued Send Count"), |
||
4882 | uint32("total_rx_packets", "Total Receive Packets"), |
||
4883 | uint32("unclaimed_packets", "Unclaimed Packets"), |
||
4884 | uint8("stat_table_major_version", "Statistics Table Major Version"), |
||
4885 | uint8("stat_table_minor_version", "Statistics Table Minor Version"), |
||
4886 | ], "LSL Information") |
||
4887 | MaximumSpaceStruct = struct("max_space_struct", [ |
||
4888 | MaxSpace, |
||
4889 | ]) |
||
4890 | MemoryCounters = struct("memory_counters", [ |
||
4891 | uint32("orig_num_cache_buff", "Original Number Of Cache Buffers"), |
||
4892 | uint32("curr_num_cache_buff", "Current Number Of Cache Buffers"), |
||
4893 | uint32("cache_dirty_block_thresh", "Cache Dirty Block Threshold"), |
||
4894 | uint32("wait_node", "Wait Node Count"), |
||
4895 | uint32("wait_node_alloc_fail", "Wait Node Alloc Failure Count"), |
||
4896 | uint32("move_cache_node", "Move Cache Node Count"), |
||
4897 | uint32("move_cache_node_from_avai", "Move Cache Node From Avail Count"), |
||
4898 | uint32("accel_cache_node_write", "Accelerate Cache Node Write Count"), |
||
4899 | uint32("rem_cache_node", "Remove Cache Node Count"), |
||
4900 | uint32("rem_cache_node_from_avail", "Remove Cache Node From Avail Count"), |
||
4901 | ], "Memory Counters") |
||
4902 | MLIDBoardInfo = struct("mlid_board_info", [ |
||
4903 | uint32("protocol_board_num", "Protocol Board Number"), |
||
4904 | uint16("protocol_number", "Protocol Number"), |
||
4905 | bytes("protocol_id", "Protocol ID", 6), |
||
4906 | nstring8("protocol_name", "Protocol Name"), |
||
4907 | ], "MLID Board Information") |
||
4908 | ModifyInfoStruct = struct("modify_info_struct", [ |
||
4909 | ModifiedTime, |
||
4910 | ModifiedDate, |
||
4911 | endian(ModifierID, ENC_LITTLE_ENDIAN), |
||
4912 | LastAccessedDate, |
||
4913 | ], "Modification Information") |
||
4914 | nameInfo = struct("name_info_struct", [ |
||
4915 | ObjectType, |
||
4916 | nstring8("login_name", "Login Name"), |
||
4917 | ], "Name Information") |
||
4918 | NCPNetworkAddress = struct("ncp_network_address_struct", [ |
||
4919 | TransportType, |
||
4920 | Reserved3, |
||
4921 | NetAddress, |
||
4922 | ], "Network Address") |
||
4923 | |||
4924 | netAddr = struct("net_addr_struct", [ |
||
4925 | TransportType, |
||
4926 | nbytes32("transport_addr", "Transport Address"), |
||
4927 | ], "Network Address") |
||
4928 | |||
4929 | NetWareInformationStruct = struct("netware_information_struct", [ |
||
4930 | DataStreamSpaceAlloc, # (Data Stream Alloc Bit) |
||
4931 | AttributesDef32, # (Attributes Bit) |
||
4932 | FlagsDef, |
||
4933 | DataStreamSize, # (Data Stream Size Bit) |
||
4934 | TotalDataStreamDiskSpaceAlloc, # (Total Stream Size Bit) |
||
4935 | NumberOfDataStreams, |
||
4936 | CreationTime, # (Creation Bit) |
||
4937 | CreationDate, |
||
4938 | CreatorID, |
||
4939 | ModifiedTime, # (Modify Bit) |
||
4940 | ModifiedDate, |
||
4941 | ModifierID, |
||
4942 | LastAccessedDate, |
||
4943 | ArchivedTime, # (Archive Bit) |
||
4944 | ArchivedDate, |
||
4945 | ArchiverID, |
||
4946 | InheritedRightsMask, # (Rights Bit) |
||
4947 | DirectoryEntryNumber, # (Directory Entry Bit) |
||
4948 | DOSDirectoryEntryNumber, |
||
4949 | VolumeNumberLong, |
||
4950 | EADataSize, # (Extended Attribute Bit) |
||
4951 | EACount, |
||
4952 | EAKeySize, |
||
4953 | CreatorNameSpaceNumber, # (Name Space Bit) |
||
4954 | Reserved3, |
||
4955 | ], "NetWare Information") |
||
4956 | NLMInformation = struct("nlm_information", [ |
||
4957 | IdentificationNumber, |
||
4958 | NLMFlags, |
||
4959 | Reserved3, |
||
4960 | NLMType, |
||
4961 | Reserved3, |
||
4962 | ParentID, |
||
4963 | MajorVersion, |
||
4964 | MinorVersion, |
||
4965 | Revision, |
||
4966 | Year, |
||
4967 | Reserved3, |
||
4968 | Month, |
||
4969 | Reserved3, |
||
4970 | Day, |
||
4971 | Reserved3, |
||
4972 | AllocAvailByte, |
||
4973 | AllocFreeCount, |
||
4974 | LastGarbCollect, |
||
4975 | MessageLanguage, |
||
4976 | NumberOfReferencedPublics, |
||
4977 | ], "NLM Information") |
||
4978 | NSInfoStruct = struct("ns_info_struct", [ |
||
4979 | CreatorNameSpaceNumber, |
||
4980 | Reserved3, |
||
4981 | ]) |
||
4982 | NWAuditStatus = struct("nw_audit_status", [ |
||
4983 | AuditVersionDate, |
||
4984 | AuditFileVersionDate, |
||
4985 | val_string16("audit_enable_flag", "Auditing Enabled Flag", [ |
||
4986 | [ 0x0000, "Auditing Disabled" ], |
||
4987 | [ 0x0001, "Auditing Enabled" ], |
||
4988 | ]), |
||
4989 | Reserved2, |
||
4990 | uint32("audit_file_size", "Audit File Size"), |
||
4991 | uint32("modified_counter", "Modified Counter"), |
||
4992 | uint32("audit_file_max_size", "Audit File Maximum Size"), |
||
4993 | uint32("audit_file_size_threshold", "Audit File Size Threshold"), |
||
4994 | uint32("audit_record_count", "Audit Record Count"), |
||
4995 | uint32("auditing_flags", "Auditing Flags"), |
||
4996 | ], "NetWare Audit Status") |
||
4997 | ObjectSecurityStruct = struct("object_security_struct", [ |
||
4998 | ObjectSecurity, |
||
4999 | ]) |
||
5000 | ObjectFlagsStruct = struct("object_flags_struct", [ |
||
5001 | ObjectFlags, |
||
5002 | ]) |
||
5003 | ObjectTypeStruct = struct("object_type_struct", [ |
||
5004 | endian(ObjectType, ENC_BIG_ENDIAN), |
||
5005 | Reserved2, |
||
5006 | ]) |
||
5007 | ObjectNameStruct = struct("object_name_struct", [ |
||
5008 | ObjectNameStringz, |
||
5009 | ]) |
||
5010 | ObjectIDStruct = struct("object_id_struct", [ |
||
5011 | ObjectID, |
||
5012 | Restriction, |
||
5013 | ]) |
||
5014 | ObjectIDStruct64 = struct("object_id_struct64", [ |
||
5015 | endian(ObjectID, ENC_LITTLE_ENDIAN), |
||
5016 | endian(RestrictionQuad, ENC_LITTLE_ENDIAN), |
||
5017 | ]) |
||
5018 | OpnFilesStruct = struct("opn_files_struct", [ |
||
5019 | TaskNumberWord, |
||
5020 | LockType, |
||
5021 | AccessControl, |
||
5022 | LockFlag, |
||
5023 | VolumeNumber, |
||
5024 | DOSParentDirectoryEntry, |
||
5025 | DOSDirectoryEntry, |
||
5026 | ForkCount, |
||
5027 | NameSpace, |
||
5028 | FileName, |
||
5029 | ], "Open Files Information") |
||
5030 | OwnerIDStruct = struct("owner_id_struct", [ |
||
5031 | CreatorID, |
||
5032 | ]) |
||
5033 | PacketBurstInformation = struct("packet_burst_information", [ |
||
5034 | uint32("big_invalid_slot", "Big Invalid Slot Count"), |
||
5035 | uint32("big_forged_packet", "Big Forged Packet Count"), |
||
5036 | uint32("big_invalid_packet", "Big Invalid Packet Count"), |
||
5037 | uint32("big_still_transmitting", "Big Still Transmitting Count"), |
||
5038 | uint32("still_doing_the_last_req", "Still Doing The Last Request Count"), |
||
5039 | uint32("invalid_control_req", "Invalid Control Request Count"), |
||
5040 | uint32("control_invalid_message_number", "Control Invalid Message Number Count"), |
||
5041 | uint32("control_being_torn_down", "Control Being Torn Down Count"), |
||
5042 | uint32("big_repeat_the_file_read", "Big Repeat the File Read Count"), |
||
5043 | uint32("big_send_extra_cc_count", "Big Send Extra CC Count"), |
||
5044 | uint32("big_return_abort_mess", "Big Return Abort Message Count"), |
||
5045 | uint32("big_read_invalid_mess", "Big Read Invalid Message Number Count"), |
||
5046 | uint32("big_read_do_it_over", "Big Read Do It Over Count"), |
||
5047 | uint32("big_read_being_torn_down", "Big Read Being Torn Down Count"), |
||
5048 | uint32("previous_control_packet", "Previous Control Packet Count"), |
||
5049 | uint32("send_hold_off_message", "Send Hold Off Message Count"), |
||
5050 | uint32("big_read_no_data_avail", "Big Read No Data Available Count"), |
||
5051 | uint32("big_read_trying_to_read", "Big Read Trying To Read Too Much Count"), |
||
5052 | uint32("async_read_error", "Async Read Error Count"), |
||
5053 | uint32("big_read_phy_read_err", "Big Read Physical Read Error Count"), |
||
5054 | uint32("ctl_bad_ack_frag_list", "Control Bad ACK Fragment List Count"), |
||
5055 | uint32("ctl_no_data_read", "Control No Data Read Count"), |
||
5056 | uint32("write_dup_req", "Write Duplicate Request Count"), |
||
5057 | uint32("shouldnt_be_ack_here", "Shouldn't Be ACKing Here Count"), |
||
5058 | uint32("write_incon_packet_len", "Write Inconsistent Packet Lengths Count"), |
||
5059 | uint32("first_packet_isnt_a_write", "First Packet Isn't A Write Count"), |
||
5060 | uint32("write_trash_dup_req", "Write Trashed Duplicate Request Count"), |
||
5061 | uint32("big_write_inv_message_num", "Big Write Invalid Message Number Count"), |
||
5062 | uint32("big_write_being_torn_down", "Big Write Being Torn Down Count"), |
||
5063 | uint32("big_write_being_abort", "Big Write Being Aborted Count"), |
||
5064 | uint32("zero_ack_frag", "Zero ACK Fragment Count"), |
||
5065 | uint32("write_curr_trans", "Write Currently Transmitting Count"), |
||
5066 | uint32("try_to_write_too_much", "Trying To Write Too Much Count"), |
||
5067 | uint32("write_out_of_mem_for_ctl_nodes", "Write Out Of Memory For Control Nodes Count"), |
||
5068 | uint32("write_didnt_need_this_frag", "Write Didn't Need This Fragment Count"), |
||
5069 | uint32("write_too_many_buf_check", "Write Too Many Buffers Checked Out Count"), |
||
5070 | uint32("write_timeout", "Write Time Out Count"), |
||
5071 | uint32("write_got_an_ack0", "Write Got An ACK Count 0"), |
||
5072 | uint32("write_got_an_ack1", "Write Got An ACK Count 1"), |
||
5073 | uint32("poll_abort_conn", "Poller Aborted The Connection Count"), |
||
5074 | uint32("may_had_out_of_order", "Maybe Had Out Of Order Writes Count"), |
||
5075 | uint32("had_an_out_of_order", "Had An Out Of Order Write Count"), |
||
5076 | uint32("moved_the_ack_bit_dn", "Moved The ACK Bit Down Count"), |
||
5077 | uint32("bumped_out_of_order", "Bumped Out Of Order Write Count"), |
||
5078 | uint32("poll_rem_old_out_of_order", "Poller Removed Old Out Of Order Count"), |
||
5079 | uint32("write_didnt_need_but_req_ack", "Write Didn't Need But Requested ACK Count"), |
||
5080 | uint32("write_trash_packet", "Write Trashed Packet Count"), |
||
5081 | uint32("too_many_ack_frag", "Too Many ACK Fragments Count"), |
||
5082 | uint32("saved_an_out_of_order_packet", "Saved An Out Of Order Packet Count"), |
||
5083 | uint32("conn_being_aborted", "Connection Being Aborted Count"), |
||
5084 | ], "Packet Burst Information") |
||
5085 | |||
5086 | PadDSSpaceAllocate = struct("pad_ds_space_alloc", [ |
||
5087 | Reserved4, |
||
5088 | ]) |
||
5089 | PadAttributes = struct("pad_attributes", [ |
||
5090 | Reserved6, |
||
5091 | ]) |
||
5092 | PadDataStreamSize = struct("pad_data_stream_size", [ |
||
5093 | Reserved4, |
||
5094 | ]) |
||
5095 | PadTotalStreamSize = struct("pad_total_stream_size", [ |
||
5096 | Reserved6, |
||
5097 | ]) |
||
5098 | PadCreationInfo = struct("pad_creation_info", [ |
||
5099 | Reserved8, |
||
5100 | ]) |
||
5101 | PadModifyInfo = struct("pad_modify_info", [ |
||
5102 | Reserved10, |
||
5103 | ]) |
||
5104 | PadArchiveInfo = struct("pad_archive_info", [ |
||
5105 | Reserved8, |
||
5106 | ]) |
||
5107 | PadRightsInfo = struct("pad_rights_info", [ |
||
5108 | Reserved2, |
||
5109 | ]) |
||
5110 | PadDirEntry = struct("pad_dir_entry", [ |
||
5111 | Reserved12, |
||
5112 | ]) |
||
5113 | PadEAInfo = struct("pad_ea_info", [ |
||
5114 | Reserved12, |
||
5115 | ]) |
||
5116 | PadNSInfo = struct("pad_ns_info", [ |
||
5117 | Reserved4, |
||
5118 | ]) |
||
5119 | PhyLockStruct = struct("phy_lock_struct", [ |
||
5120 | LoggedCount, |
||
5121 | ShareableLockCount, |
||
5122 | RecordStart, |
||
5123 | RecordEnd, |
||
5124 | LogicalConnectionNumber, |
||
5125 | TaskNumByte, |
||
5126 | LockType, |
||
5127 | ], "Physical Locks") |
||
5128 | printInfo = struct("print_info_struct", [ |
||
5129 | PrintFlags, |
||
5130 | TabSize, |
||
5131 | Copies, |
||
5132 | PrintToFileFlag, |
||
5133 | BannerName, |
||
5134 | TargetPrinter, |
||
5135 | FormType, |
||
5136 | ], "Print Information") |
||
5137 | ReplyLevel1Struct = struct("reply_lvl_1_struct", [ |
||
5138 | DirHandle, |
||
5139 | VolumeNumber, |
||
5140 | Reserved4, |
||
5141 | ], "Reply Level 1") |
||
5142 | ReplyLevel2Struct = struct("reply_lvl_2_struct", [ |
||
5143 | VolumeNumberLong, |
||
5144 | DirectoryBase, |
||
5145 | DOSDirectoryBase, |
||
5146 | NameSpace, |
||
5147 | DirHandle, |
||
5148 | ], "Reply Level 2") |
||
5149 | RightsInfoStruct = struct("rights_info_struct", [ |
||
5150 | InheritedRightsMask, |
||
5151 | ]) |
||
5152 | RoutersInfo = struct("routers_info", [ |
||
5153 | bytes("node", "Node", 6), |
||
5154 | ConnectedLAN, |
||
5155 | uint16("route_hops", "Hop Count"), |
||
5156 | uint16("route_time", "Route Time"), |
||
5157 | ], "Router Information") |
||
5158 | RTagStructure = struct("r_tag_struct", [ |
||
5159 | RTagNumber, |
||
5160 | ResourceSignature, |
||
5161 | ResourceCount, |
||
5162 | ResourceName, |
||
5163 | ], "Resource Tag") |
||
5164 | ScanInfoFileName = struct("scan_info_file_name", [ |
||
5165 | SalvageableFileEntryNumber, |
||
5166 | FileName, |
||
5167 | ]) |
||
5168 | ScanInfoFileNoName = struct("scan_info_file_no_name", [ |
||
5169 | SalvageableFileEntryNumber, |
||
5170 | ]) |
||
5171 | SeachSequenceStruct = struct("search_seq", [ |
||
5172 | VolumeNumber, |
||
5173 | DirectoryEntryNumber, |
||
5174 | SequenceNumber, |
||
5175 | ], "Search Sequence") |
||
5176 | Segments = struct("segments", [ |
||
5177 | uint32("volume_segment_dev_num", "Volume Segment Device Number"), |
||
5178 | uint32("volume_segment_offset", "Volume Segment Offset"), |
||
5179 | uint32("volume_segment_size", "Volume Segment Size"), |
||
5180 | ], "Volume Segment Information") |
||
5181 | SemaInfoStruct = struct("sema_info_struct", [ |
||
5182 | LogicalConnectionNumber, |
||
5183 | TaskNumByte, |
||
5184 | ]) |
||
5185 | SemaStruct = struct("sema_struct", [ |
||
5186 | OpenCount, |
||
5187 | SemaphoreValue, |
||
5188 | TaskNumberWord, |
||
5189 | SemaphoreName, |
||
5190 | ], "Semaphore Information") |
||
5191 | ServerInfo = struct("server_info", [ |
||
5192 | uint32("reply_canceled", "Reply Canceled Count"), |
||
5193 | uint32("write_held_off", "Write Held Off Count"), |
||
5194 | uint32("write_held_off_with_dup", "Write Held Off With Duplicate Request"), |
||
5195 | uint32("invalid_req_type", "Invalid Request Type Count"), |
||
5196 | uint32("being_aborted", "Being Aborted Count"), |
||
5197 | uint32("already_doing_realloc", "Already Doing Re-Allocate Count"), |
||
5198 | uint32("dealloc_invalid_slot", "De-Allocate Invalid Slot Count"), |
||
5199 | uint32("dealloc_being_proc", "De-Allocate Being Processed Count"), |
||
5200 | uint32("dealloc_forged_packet", "De-Allocate Forged Packet Count"), |
||
5201 | uint32("dealloc_still_transmit", "De-Allocate Still Transmitting Count"), |
||
5202 | uint32("start_station_error", "Start Station Error Count"), |
||
5203 | uint32("invalid_slot", "Invalid Slot Count"), |
||
5204 | uint32("being_processed", "Being Processed Count"), |
||
5205 | uint32("forged_packet", "Forged Packet Count"), |
||
5206 | uint32("still_transmitting", "Still Transmitting Count"), |
||
5207 | uint32("reexecute_request", "Re-Execute Request Count"), |
||
5208 | uint32("invalid_sequence_number", "Invalid Sequence Number Count"), |
||
5209 | uint32("dup_is_being_sent", "Duplicate Is Being Sent Already Count"), |
||
5210 | uint32("sent_pos_ack", "Sent Positive Acknowledge Count"), |
||
5211 | uint32("sent_a_dup_reply", "Sent A Duplicate Reply Count"), |
||
5212 | uint32("no_mem_for_station", "No Memory For Station Control Count"), |
||
5213 | uint32("no_avail_conns", "No Available Connections Count"), |
||
5214 | uint32("realloc_slot", "Re-Allocate Slot Count"), |
||
5215 | uint32("realloc_slot_came_too_soon", "Re-Allocate Slot Came Too Soon Count"), |
||
5216 | ], "Server Information") |
||
5217 | ServersSrcInfo = struct("servers_src_info", [ |
||
5218 | ServerNode, |
||
5219 | ConnectedLAN, |
||
5220 | HopsToNet, |
||
5221 | ], "Source Server Information") |
||
5222 | SpaceStruct = struct("space_struct", [ |
||
5223 | Level, |
||
5224 | MaxSpace, |
||
5225 | CurrentSpace, |
||
5226 | ], "Space Information") |
||
5227 | SPXInformation = struct("spx_information", [ |
||
5228 | uint16("spx_max_conn", "SPX Max Connections Count"), |
||
5229 | uint16("spx_max_used_conn", "SPX Max Used Connections"), |
||
5230 | uint16("spx_est_conn_req", "SPX Establish Connection Requests"), |
||
5231 | uint16("spx_est_conn_fail", "SPX Establish Connection Fail"), |
||
5232 | uint16("spx_listen_con_req", "SPX Listen Connect Request"), |
||
5233 | uint16("spx_listen_con_fail", "SPX Listen Connect Fail"), |
||
5234 | uint32("spx_send", "SPX Send Count"), |
||
5235 | uint32("spx_window_choke", "SPX Window Choke Count"), |
||
5236 | uint16("spx_bad_send", "SPX Bad Send Count"), |
||
5237 | uint16("spx_send_fail", "SPX Send Fail Count"), |
||
5238 | uint16("spx_abort_conn", "SPX Aborted Connection"), |
||
5239 | uint32("spx_listen_pkt", "SPX Listen Packet Count"), |
||
5240 | uint16("spx_bad_listen", "SPX Bad Listen Count"), |
||
5241 | uint32("spx_incoming_pkt", "SPX Incoming Packet Count"), |
||
5242 | uint16("spx_bad_in_pkt", "SPX Bad In Packet Count"), |
||
5243 | uint16("spx_supp_pkt", "SPX Suppressed Packet Count"), |
||
5244 | uint16("spx_no_ses_listen", "SPX No Session Listen ECB Count"), |
||
5245 | uint16("spx_watch_dog", "SPX Watch Dog Destination Session Count"), |
||
5246 | ], "SPX Information") |
||
5247 | StackInfo = struct("stack_info", [ |
||
5248 | StackNumber, |
||
5249 | fw_string("stack_short_name", "Stack Short Name", 16), |
||
5250 | ], "Stack Information") |
||
5251 | statsInfo = struct("stats_info_struct", [ |
||
5252 | TotalBytesRead, |
||
5253 | TotalBytesWritten, |
||
5254 | TotalRequest, |
||
5255 | ], "Statistics") |
||
5256 | TaskStruct = struct("task_struct", [ |
||
5257 | TaskNumberWord, |
||
5258 | TaskState, |
||
5259 | ], "Task Information") |
||
5260 | theTimeStruct = struct("the_time_struct", [ |
||
5261 | UTCTimeInSeconds, |
||
5262 | FractionalSeconds, |
||
5263 | TimesyncStatus, |
||
5264 | ]) |
||
5265 | timeInfo = struct("time_info", [ |
||
5266 | Year, |
||
5267 | Month, |
||
5268 | Day, |
||
5269 | Hour, |
||
5270 | Minute, |
||
5271 | Second, |
||
5272 | DayOfWeek, |
||
5273 | uint32("login_expiration_time", "Login Expiration Time"), |
||
5274 | ]) |
||
5275 | TotalStreamSizeStruct = struct("total_stream_size_struct", [ |
||
5276 | TtlDSDskSpaceAlloc, |
||
5277 | NumberOfDataStreams, |
||
5278 | ]) |
||
5279 | TrendCounters = struct("trend_counters", [ |
||
5280 | uint32("num_of_cache_checks", "Number Of Cache Checks"), |
||
5281 | uint32("num_of_cache_hits", "Number Of Cache Hits"), |
||
5282 | uint32("num_of_dirty_cache_checks", "Number Of Dirty Cache Checks"), |
||
5283 | uint32("num_of_cache_dirty_checks", "Number Of Cache Dirty Checks"), |
||
5284 | uint32("cache_used_while_check", "Cache Used While Checking"), |
||
5285 | uint32("wait_till_dirty_blcks_dec", "Wait Till Dirty Blocks Decrease Count"), |
||
5286 | uint32("alloc_blck_frm_avail", "Allocate Block From Available Count"), |
||
5287 | uint32("alloc_blck_frm_lru", "Allocate Block From LRU Count"), |
||
5288 | uint32("alloc_blck_already_wait", "Allocate Block Already Waiting"), |
||
5289 | uint32("lru_sit_time", "LRU Sitting Time"), |
||
5290 | uint32("num_of_cache_check_no_wait", "Number Of Cache Check No Wait"), |
||
5291 | uint32("num_of_cache_hits_no_wait", "Number Of Cache Hits No Wait"), |
||
5292 | ], "Trend Counters") |
||
5293 | TrusteeStruct = struct("trustee_struct", [ |
||
5294 | endian(ObjectID, ENC_LITTLE_ENDIAN), |
||
5295 | AccessRightsMaskWord, |
||
5296 | ]) |
||
5297 | UpdateDateStruct = struct("update_date_struct", [ |
||
5298 | UpdateDate, |
||
5299 | ]) |
||
5300 | UpdateIDStruct = struct("update_id_struct", [ |
||
5301 | UpdateID, |
||
5302 | ]) |
||
5303 | UpdateTimeStruct = struct("update_time_struct", [ |
||
5304 | UpdateTime, |
||
5305 | ]) |
||
5306 | UserInformation = struct("user_info", [ |
||
5307 | endian(ConnectionNumber, ENC_LITTLE_ENDIAN), |
||
5308 | UseCount, |
||
5309 | Reserved2, |
||
5310 | ConnectionServiceType, |
||
5311 | Year, |
||
5312 | Month, |
||
5313 | Day, |
||
5314 | Hour, |
||
5315 | Minute, |
||
5316 | Second, |
||
5317 | DayOfWeek, |
||
5318 | Status, |
||
5319 | Reserved2, |
||
5320 | ExpirationTime, |
||
5321 | ObjectType, |
||
5322 | Reserved2, |
||
5323 | TransactionTrackingFlag, |
||
5324 | LogicalLockThreshold, |
||
5325 | FileWriteFlags, |
||
5326 | FileWriteState, |
||
5327 | Reserved, |
||
5328 | FileLockCount, |
||
5329 | RecordLockCount, |
||
5330 | TotalBytesRead, |
||
5331 | TotalBytesWritten, |
||
5332 | TotalRequest, |
||
5333 | HeldRequests, |
||
5334 | HeldBytesRead, |
||
5335 | HeldBytesWritten, |
||
5336 | ], "User Information") |
||
5337 | VolInfoStructure = struct("vol_info_struct", [ |
||
5338 | VolumeType, |
||
5339 | Reserved2, |
||
5340 | StatusFlagBits, |
||
5341 | SectorSize, |
||
5342 | SectorsPerClusterLong, |
||
5343 | VolumeSizeInClusters, |
||
5344 | FreedClusters, |
||
5345 | SubAllocFreeableClusters, |
||
5346 | FreeableLimboSectors, |
||
5347 | NonFreeableLimboSectors, |
||
5348 | NonFreeableAvailableSubAllocSectors, |
||
5349 | NotUsableSubAllocSectors, |
||
5350 | SubAllocClusters, |
||
5351 | DataStreamsCount, |
||
5352 | LimboDataStreamsCount, |
||
5353 | OldestDeletedFileAgeInTicks, |
||
5354 | CompressedDataStreamsCount, |
||
5355 | CompressedLimboDataStreamsCount, |
||
5356 | UnCompressableDataStreamsCount, |
||
5357 | PreCompressedSectors, |
||
5358 | CompressedSectors, |
||
5359 | MigratedFiles, |
||
5360 | MigratedSectors, |
||
5361 | ClustersUsedByFAT, |
||
5362 | ClustersUsedByDirectories, |
||
5363 | ClustersUsedByExtendedDirectories, |
||
5364 | TotalDirectoryEntries, |
||
5365 | UnUsedDirectoryEntries, |
||
5366 | TotalExtendedDirectoryExtents, |
||
5367 | UnUsedExtendedDirectoryExtents, |
||
5368 | ExtendedAttributesDefined, |
||
5369 | ExtendedAttributeExtentsUsed, |
||
5370 | DirectoryServicesObjectID, |
||
5371 | VolumeEpochTime, |
||
5372 | |||
5373 | ], "Volume Information") |
||
5374 | VolInfoStructure64 = struct("vol_info_struct64", [ |
||
5375 | VolumeTypeLong, |
||
5376 | StatusFlagBits, |
||
5377 | uint64("sectoresize64", "Sector Size"), |
||
5378 | uint64("sectorspercluster64", "Sectors Per Cluster"), |
||
5379 | uint64("volumesizeinclusters64", "Volume Size in Clusters"), |
||
5380 | uint64("freedclusters64", "Freed Clusters"), |
||
5381 | uint64("suballocfreeableclusters64", "Sub Alloc Freeable Clusters"), |
||
5382 | uint64("freeablelimbosectors64", "Freeable Limbo Sectors"), |
||
5383 | uint64("nonfreeablelimbosectors64", "Non-Freeable Limbo Sectors"), |
||
5384 | uint64("nonfreeableavailalesuballocsectors64", "Non-Freeable Available Sub Alloc Sectors"), |
||
5385 | uint64("notusablesuballocsectors64", "Not Usable Sub Alloc Sectors"), |
||
5386 | uint64("suballocclusters64", "Sub Alloc Clusters"), |
||
5387 | uint64("datastreamscount64", "Data Streams Count"), |
||
5388 | uint64("limbodatastreamscount64", "Limbo Data Streams Count"), |
||
5389 | uint64("oldestdeletedfileageinticks64", "Oldest Deleted File Age in Ticks"), |
||
5390 | uint64("compressdatastreamscount64", "Compressed Data Streams Count"), |
||
5391 | uint64("compressedlimbodatastreamscount64", "Compressed Limbo Data Streams Count"), |
||
5392 | uint64("uncompressabledatastreamscount64", "Uncompressable Data Streams Count"), |
||
5393 | uint64("precompressedsectors64", "Precompressed Sectors"), |
||
5394 | uint64("compressedsectors64", "Compressed Sectors"), |
||
5395 | uint64("migratedfiles64", "Migrated Files"), |
||
5396 | uint64("migratedsectors64", "Migrated Sectors"), |
||
5397 | uint64("clustersusedbyfat64", "Clusters Used by FAT"), |
||
5398 | uint64("clustersusedbydirectories64", "Clusters Used by Directories"), |
||
5399 | uint64("clustersusedbyextendeddirectories64", "Clusters Used by Extended Directories"), |
||
5400 | uint64("totaldirectoryentries64", "Total Directory Entries"), |
||
5401 | uint64("unuseddirectoryentries64", "Unused Directory Entries"), |
||
5402 | uint64("totalextendeddirectoryextents64", "Total Extended Directory Extents"), |
||
5403 | uint64("unusedextendeddirectoryextents64", "Unused Total Extended Directory Extents"), |
||
5404 | uint64("extendedattributesdefined64", "Extended Attributes Defined"), |
||
5405 | uint64("extendedattributeextentsused64", "Extended Attribute Extents Used"), |
||
5406 | uint64("directoryservicesobjectid64", "Directory Services Object ID"), |
||
5407 | VolumeEpochTime, |
||
5408 | |||
5409 | ], "Volume Information") |
||
5410 | VolInfo2Struct = struct("vol_info_struct_2", [ |
||
5411 | uint32("volume_active_count", "Volume Active Count"), |
||
5412 | uint32("volume_use_count", "Volume Use Count"), |
||
5413 | uint32("mac_root_ids", "MAC Root IDs"), |
||
5414 | VolumeEpochTime, |
||
5415 | uint32("volume_reference_count", "Volume Reference Count"), |
||
5416 | uint32("compression_lower_limit", "Compression Lower Limit"), |
||
5417 | uint32("outstanding_ios", "Outstanding IOs"), |
||
5418 | uint32("outstanding_compression_ios", "Outstanding Compression IOs"), |
||
5419 | uint32("compression_ios_limit", "Compression IOs Limit"), |
||
5420 | ], "Extended Volume Information") |
||
5421 | VolumeWithNameStruct = struct("volume_with_name_struct", [ |
||
5422 | VolumeNumberLong, |
||
5423 | VolumeNameLen, |
||
5424 | ]) |
||
5425 | VolumeStruct = struct("volume_struct", [ |
||
5426 | VolumeNumberLong, |
||
5427 | ]) |
||
5428 | |||
5429 | zFileMap_Allocation = struct("zfilemap_allocation_struct", [ |
||
5430 | uint64("extent_byte_offset", "Byte Offset"), |
||
5431 | endian(uint64("extent_length_alloc", "Length"), ENC_LITTLE_ENDIAN), |
||
5432 | #ExtentLength, |
||
5433 | ], "File Map Allocation") |
||
5434 | zFileMap_Logical = struct("zfilemap_logical_struct", [ |
||
5435 | uint64("extent_block_number", "Block Number"), |
||
5436 | uint64("extent_number_of_blocks", "Number of Blocks"), |
||
5437 | ], "File Map Logical") |
||
5438 | zFileMap_Physical = struct("zfilemap_physical_struct", [ |
||
5439 | uint64("extent_length_physical", "Length"), |
||
5440 | uint64("extent_logical_offset", "Logical Offset"), |
||
5441 | uint64("extent_pool_offset", "Pool Offset"), |
||
5442 | uint64("extent_physical_offset", "Physical Offset"), |
||
5443 | fw_string("extent_device_id", "Device ID", 8), |
||
5444 | ], "File Map Physical") |
||
5445 | |||
5446 | ############################################################################## |
||
5447 | # NCP Groups |
||
5448 | ############################################################################## |
||
5449 | def define_groups(): |
||
5450 | groups['accounting'] = "Accounting" |
||
5451 | groups['afp'] = "AFP" |
||
5452 | groups['auditing'] = "Auditing" |
||
5453 | groups['bindery'] = "Bindery" |
||
5454 | groups['connection'] = "Connection" |
||
5455 | groups['enhanced'] = "Enhanced File System" |
||
5456 | groups['extended'] = "Extended Attribute" |
||
5457 | groups['extension'] = "NCP Extension" |
||
5458 | groups['file'] = "File System" |
||
5459 | groups['fileserver'] = "File Server Environment" |
||
5460 | groups['message'] = "Message" |
||
5461 | groups['migration'] = "Data Migration" |
||
5462 | groups['nds'] = "Novell Directory Services" |
||
5463 | groups['pburst'] = "Packet Burst" |
||
5464 | groups['print'] = "Print" |
||
5465 | groups['remote'] = "Remote" |
||
5466 | groups['sync'] = "Synchronization" |
||
5467 | groups['tsync'] = "Time Synchronization" |
||
5468 | groups['tts'] = "Transaction Tracking" |
||
5469 | groups['qms'] = "Queue Management System (QMS)" |
||
5470 | groups['stats'] = "Server Statistics" |
||
5471 | groups['nmas'] = "Novell Modular Authentication Service" |
||
5472 | groups['sss'] = "SecretStore Services" |
||
5473 | |||
5474 | ############################################################################## |
||
5475 | # NCP Errors |
||
5476 | ############################################################################## |
||
5477 | def define_errors(): |
||
5478 | errors[0x0000] = "Ok" |
||
5479 | errors[0x0001] = "Transaction tracking is available" |
||
5480 | errors[0x0002] = "Ok. The data has been written" |
||
5481 | errors[0x0003] = "Calling Station is a Manager" |
||
5482 | |||
5483 | errors[0x0100] = "One or more of the Connection Numbers in the send list are invalid" |
||
5484 | errors[0x0101] = "Invalid space limit" |
||
5485 | errors[0x0102] = "Insufficient disk space" |
||
5486 | errors[0x0103] = "Queue server cannot add jobs" |
||
5487 | errors[0x0104] = "Out of disk space" |
||
5488 | errors[0x0105] = "Semaphore overflow" |
||
5489 | errors[0x0106] = "Invalid Parameter" |
||
5490 | errors[0x0107] = "Invalid Number of Minutes to Delay" |
||
5491 | errors[0x0108] = "Invalid Start or Network Number" |
||
5492 | errors[0x0109] = "Cannot Obtain License" |
||
5493 | errors[0x010a] = "No Purgeable Files Available" |
||
5494 | |||
5495 | errors[0x0200] = "One or more clients in the send list are not logged in" |
||
5496 | errors[0x0201] = "Queue server cannot attach" |
||
5497 | |||
5498 | errors[0x0300] = "One or more clients in the send list are not accepting messages" |
||
5499 | |||
5500 | errors[0x0400] = "Client already has message" |
||
5501 | errors[0x0401] = "Queue server cannot service job" |
||
5502 | |||
5503 | errors[0x7300] = "Revoke Handle Rights Not Found" |
||
5504 | errors[0x7700] = "Buffer Too Small" |
||
5505 | errors[0x7900] = "Invalid Parameter in Request Packet" |
||
5506 | errors[0x7901] = "Nothing being Compressed" |
||
5507 | errors[0x7902] = "No Items Found" |
||
5508 | errors[0x7a00] = "Connection Already Temporary" |
||
5509 | errors[0x7b00] = "Connection Already Logged in" |
||
5510 | errors[0x7c00] = "Connection Not Authenticated" |
||
5511 | errors[0x7d00] = "Connection Not Logged In" |
||
5512 | |||
5513 | errors[0x7e00] = "NCP failed boundary check" |
||
5514 | errors[0x7e01] = "Invalid Length" |
||
5515 | |||
5516 | errors[0x7f00] = "Lock Waiting" |
||
5517 | errors[0x8000] = "Lock fail" |
||
5518 | errors[0x8001] = "File in Use" |
||
5519 | |||
5520 | errors[0x8100] = "A file handle could not be allocated by the file server" |
||
5521 | errors[0x8101] = "Out of File Handles" |
||
5522 | |||
5523 | errors[0x8200] = "Unauthorized to open the file" |
||
5524 | errors[0x8300] = "Unable to read/write the volume. Possible bad sector on the file server" |
||
5525 | errors[0x8301] = "Hard I/O Error" |
||
5526 | |||
5527 | errors[0x8400] = "Unauthorized to create the directory" |
||
5528 | errors[0x8401] = "Unauthorized to create the file" |
||
5529 | |||
5530 | errors[0x8500] = "Unauthorized to delete the specified file" |
||
5531 | errors[0x8501] = "Unauthorized to overwrite an existing file in this directory" |
||
5532 | |||
5533 | errors[0x8700] = "An unexpected character was encountered in the filename" |
||
5534 | errors[0x8701] = "Create Filename Error" |
||
5535 | |||
5536 | errors[0x8800] = "Invalid file handle" |
||
5537 | errors[0x8900] = "Unauthorized to search this file/directory" |
||
5538 | errors[0x8a00] = "Unauthorized to delete this file/directory" |
||
5539 | errors[0x8b00] = "Unauthorized to rename a file in this directory" |
||
5540 | |||
5541 | errors[0x8c00] = "No set privileges" |
||
5542 | errors[0x8c01] = "Unauthorized to modify a file in this directory" |
||
5543 | errors[0x8c02] = "Unauthorized to change the restriction on this volume" |
||
5544 | |||
5545 | errors[0x8d00] = "Some of the affected files are in use by another client" |
||
5546 | errors[0x8d01] = "The affected file is in use" |
||
5547 | |||
5548 | errors[0x8e00] = "All of the affected files are in use by another client" |
||
5549 | errors[0x8f00] = "Some of the affected files are read-only" |
||
5550 | |||
5551 | errors[0x9000] = "An attempt to modify a read-only volume occurred" |
||
5552 | errors[0x9001] = "All of the affected files are read-only" |
||
5553 | errors[0x9002] = "Read Only Access to Volume" |
||
5554 | |||
5555 | errors[0x9100] = "Some of the affected files already exist" |
||
5556 | errors[0x9101] = "Some Names Exist" |
||
5557 | |||
5558 | errors[0x9200] = "Directory with the new name already exists" |
||
5559 | errors[0x9201] = "All of the affected files already exist" |
||
5560 | |||
5561 | errors[0x9300] = "Unauthorized to read from this file" |
||
5562 | errors[0x9400] = "Unauthorized to write to this file" |
||
5563 | errors[0x9500] = "The affected file is detached" |
||
5564 | |||
5565 | errors[0x9600] = "The file server has run out of memory to service this request" |
||
5566 | errors[0x9601] = "No alloc space for message" |
||
5567 | errors[0x9602] = "Server Out of Space" |
||
5568 | |||
5569 | errors[0x9800] = "The affected volume is not mounted" |
||
5570 | errors[0x9801] = "The volume associated with Volume Number is not mounted" |
||
5571 | errors[0x9802] = "The resulting volume does not exist" |
||
5572 | errors[0x9803] = "The destination volume is not mounted" |
||
5573 | errors[0x9804] = "Disk Map Error" |
||
5574 | |||
5575 | errors[0x9900] = "The file server has run out of directory space on the affected volume" |
||
5576 | errors[0x9a00] = "Invalid request to rename the affected file to another volume" |
||
5577 | |||
5578 | errors[0x9b00] = "DirHandle is not associated with a valid directory path" |
||
5579 | errors[0x9b01] = "A resulting directory handle is not associated with a valid directory path" |
||
5580 | errors[0x9b02] = "The directory associated with DirHandle does not exist" |
||
5581 | errors[0x9b03] = "Bad directory handle" |
||
5582 | |||
5583 | errors[0x9c00] = "The resulting path is not valid" |
||
5584 | errors[0x9c01] = "The resulting file path is not valid" |
||
5585 | errors[0x9c02] = "The resulting directory path is not valid" |
||
5586 | errors[0x9c03] = "Invalid path" |
||
5587 | errors[0x9c04] = "No more trustees found, based on requested search sequence number" |
||
5588 | |||
5589 | errors[0x9d00] = "A directory handle was not available for allocation" |
||
5590 | |||
5591 | errors[0x9e00] = "The name of the directory does not conform to a legal name for this name space" |
||
5592 | errors[0x9e01] = "The new directory name does not conform to a legal name for this name space" |
||
5593 | errors[0x9e02] = "Bad File Name" |
||
5594 | |||
5595 | errors[0x9f00] = "The request attempted to delete a directory that is in use by another client" |
||
5596 | |||
5597 | errors[0xa000] = "The request attempted to delete a directory that is not empty" |
||
5598 | errors[0xa100] = "An unrecoverable error occurred on the affected directory" |
||
5599 | |||
5600 | errors[0xa200] = "The request attempted to read from a file region that is physically locked" |
||
5601 | errors[0xa201] = "I/O Lock Error" |
||
5602 | |||
5603 | errors[0xa400] = "Invalid directory rename attempted" |
||
5604 | errors[0xa500] = "Invalid open create mode" |
||
5605 | errors[0xa600] = "Auditor Access has been Removed" |
||
5606 | errors[0xa700] = "Error Auditing Version" |
||
5607 | |||
5608 | errors[0xa800] = "Invalid Support Module ID" |
||
5609 | errors[0xa801] = "No Auditing Access Rights" |
||
5610 | errors[0xa802] = "No Access Rights" |
||
5611 | |||
5612 | errors[0xa900] = "Error Link in Path" |
||
5613 | errors[0xa901] = "Invalid Path With Junction Present" |
||
5614 | |||
5615 | errors[0xaa00] = "Invalid Data Type Flag" |
||
5616 | |||
5617 | errors[0xac00] = "Packet Signature Required" |
||
5618 | |||
5619 | errors[0xbe00] = "Invalid Data Stream" |
||
5620 | errors[0xbf00] = "Requests for this name space are not valid on this volume" |
||
5621 | |||
5622 | errors[0xc000] = "Unauthorized to retrieve accounting data" |
||
5623 | |||
5624 | errors[0xc100] = "The ACCOUNT_BALANCE property does not exist" |
||
5625 | errors[0xc101] = "No Account Balance" |
||
5626 | |||
5627 | errors[0xc200] = "The object has exceeded its credit limit" |
||
5628 | errors[0xc300] = "Too many holds have been placed against this account" |
||
5629 | errors[0xc400] = "The client account has been disabled" |
||
5630 | |||
5631 | errors[0xc500] = "Access to the account has been denied because of intruder detection" |
||
5632 | errors[0xc501] = "Login lockout" |
||
5633 | errors[0xc502] = "Server Login Locked" |
||
5634 | |||
5635 | errors[0xc600] = "The caller does not have operator privileges" |
||
5636 | errors[0xc601] = "The client does not have operator privileges" |
||
5637 | |||
5638 | errors[0xc800] = "Missing EA Key" |
||
5639 | errors[0xc900] = "EA Not Found" |
||
5640 | errors[0xca00] = "Invalid EA Handle Type" |
||
5641 | errors[0xcb00] = "EA No Key No Data" |
||
5642 | errors[0xcc00] = "EA Number Mismatch" |
||
5643 | errors[0xcd00] = "Extent Number Out of Range" |
||
5644 | errors[0xce00] = "EA Bad Directory Number" |
||
5645 | errors[0xcf00] = "Invalid EA Handle" |
||
5646 | |||
5647 | errors[0xd000] = "Queue error" |
||
5648 | errors[0xd001] = "EA Position Out of Range" |
||
5649 | |||
5650 | errors[0xd100] = "The queue does not exist" |
||
5651 | errors[0xd101] = "EA Access Denied" |
||
5652 | |||
5653 | errors[0xd200] = "A queue server is not associated with this queue" |
||
5654 | errors[0xd201] = "A queue server is not associated with the selected queue" |
||
5655 | errors[0xd202] = "No queue server" |
||
5656 | errors[0xd203] = "Data Page Odd Size" |
||
5657 | |||
5658 | errors[0xd300] = "No queue rights" |
||
5659 | errors[0xd301] = "EA Volume Not Mounted" |
||
5660 | |||
5661 | errors[0xd400] = "The queue is full and cannot accept another request" |
||
5662 | errors[0xd401] = "The queue associated with ObjectId is full and cannot accept another request" |
||
5663 | errors[0xd402] = "Bad Page Boundary" |
||
5664 | |||
5665 | errors[0xd500] = "A job does not exist in this queue" |
||
5666 | errors[0xd501] = "No queue job" |
||
5667 | errors[0xd502] = "The job associated with JobNumber does not exist in this queue" |
||
5668 | errors[0xd503] = "Inspect Failure" |
||
5669 | errors[0xd504] = "Unknown NCP Extension Number" |
||
5670 | |||
5671 | errors[0xd600] = "The file server does not allow unencrypted passwords" |
||
5672 | errors[0xd601] = "No job right" |
||
5673 | errors[0xd602] = "EA Already Claimed" |
||
5674 | |||
5675 | errors[0xd700] = "Bad account" |
||
5676 | errors[0xd701] = "The old and new password strings are identical" |
||
5677 | errors[0xd702] = "The job is currently being serviced" |
||
5678 | errors[0xd703] = "The queue is currently servicing a job" |
||
5679 | errors[0xd704] = "Queue servicing" |
||
5680 | errors[0xd705] = "Odd Buffer Size" |
||
5681 | |||
5682 | errors[0xd800] = "Queue not active" |
||
5683 | errors[0xd801] = "No Scorecards" |
||
5684 | |||
5685 | errors[0xd900] = "The file server cannot accept another connection as it has reached its limit" |
||
5686 | errors[0xd901] = "The client is not security equivalent to one of the objects in the Q_SERVERS group property of the target queue" |
||
5687 | errors[0xd902] = "Queue Station is not a server" |
||
5688 | errors[0xd903] = "Bad EDS Signature" |
||
5689 | errors[0xd904] = "Attempt to log in using an account which has limits on the number of concurrent connections and that number has been reached." |
||
5690 | |||
5691 | errors[0xda00] = "Attempted to login to the file server during a restricted time period" |
||
5692 | errors[0xda01] = "Queue halted" |
||
5693 | errors[0xda02] = "EA Space Limit" |
||
5694 | |||
5695 | errors[0xdb00] = "Attempted to login to the file server from an unauthorized workstation or network" |
||
5696 | errors[0xdb01] = "The queue cannot attach another queue server" |
||
5697 | errors[0xdb02] = "Maximum queue servers" |
||
5698 | errors[0xdb03] = "EA Key Corrupt" |
||
5699 | |||
5700 | errors[0xdc00] = "Account Expired" |
||
5701 | errors[0xdc01] = "EA Key Limit" |
||
5702 | |||
5703 | errors[0xdd00] = "Tally Corrupt" |
||
5704 | errors[0xde00] = "Attempted to login to the file server with an incorrect password" |
||
5705 | errors[0xdf00] = "Attempted to login to the file server with a password that has expired" |
||
5706 | |||
5707 | errors[0xe000] = "No Login Connections Available" |
||
5708 | errors[0xe700] = "No disk track" |
||
5709 | errors[0xe800] = "Write to group" |
||
5710 | errors[0xe900] = "The object is already a member of the group property" |
||
5711 | |||
5712 | errors[0xea00] = "No such member" |
||
5713 | errors[0xea01] = "The bindery object is not a member of the set" |
||
5714 | errors[0xea02] = "Non-existent member" |
||
5715 | |||
5716 | errors[0xeb00] = "The property is not a set property" |
||
5717 | |||
5718 | errors[0xec00] = "No such set" |
||
5719 | errors[0xec01] = "The set property does not exist" |
||
5720 | |||
5721 | errors[0xed00] = "Property exists" |
||
5722 | errors[0xed01] = "The property already exists" |
||
5723 | errors[0xed02] = "An attempt was made to create a bindery object property that already exists" |
||
5724 | |||
5725 | errors[0xee00] = "The object already exists" |
||
5726 | errors[0xee01] = "The bindery object already exists" |
||
5727 | |||
5728 | errors[0xef00] = "Illegal name" |
||
5729 | errors[0xef01] = "Illegal characters in ObjectName field" |
||
5730 | errors[0xef02] = "Invalid name" |
||
5731 | |||
5732 | errors[0xf000] = "A wildcard was detected in a field that does not support wildcards" |
||
5733 | errors[0xf001] = "An illegal wildcard was detected in ObjectName" |
||
5734 | |||
5735 | errors[0xf100] = "The client does not have the rights to access this bindery object" |
||
5736 | errors[0xf101] = "Bindery security" |
||
5737 | errors[0xf102] = "Invalid bindery security" |
||
5738 | |||
5739 | errors[0xf200] = "Unauthorized to read from this object" |
||
5740 | errors[0xf300] = "Unauthorized to rename this object" |
||
5741 | |||
5742 | errors[0xf400] = "Unauthorized to delete this object" |
||
5743 | errors[0xf401] = "No object delete privileges" |
||
5744 | errors[0xf402] = "Unauthorized to delete this queue" |
||
5745 | |||
5746 | errors[0xf500] = "Unauthorized to create this object" |
||
5747 | errors[0xf501] = "No object create" |
||
5748 | |||
5749 | errors[0xf600] = "No property delete" |
||
5750 | errors[0xf601] = "Unauthorized to delete the property of this object" |
||
5751 | errors[0xf602] = "Unauthorized to delete this property" |
||
5752 | |||
5753 | errors[0xf700] = "Unauthorized to create this property" |
||
5754 | errors[0xf701] = "No property create privilege" |
||
5755 | |||
5756 | errors[0xf800] = "Unauthorized to write to this property" |
||
5757 | errors[0xf900] = "Unauthorized to read this property" |
||
5758 | errors[0xfa00] = "Temporary remap error" |
||
5759 | |||
5760 | errors[0xfb00] = "No such property" |
||
5761 | errors[0xfb01] = "The file server does not support this request" |
||
5762 | errors[0xfb02] = "The specified property does not exist" |
||
5763 | errors[0xfb03] = "The PASSWORD property does not exist for this bindery object" |
||
5764 | errors[0xfb04] = "NDS NCP not available" |
||
5765 | errors[0xfb05] = "Bad Directory Handle" |
||
5766 | errors[0xfb06] = "Unknown Request" |
||
5767 | errors[0xfb07] = "Invalid Subfunction Request" |
||
5768 | errors[0xfb08] = "Attempt to use an invalid parameter (drive number, path, or flag value) during a set drive path call" |
||
5769 | errors[0xfb09] = "NMAS not running on this server, NCP NOT Supported" |
||
5770 | errors[0xfb0a] = "Station Not Logged In" |
||
5771 | errors[0xfb0b] = "Secret Store not running on this server, NCP Not supported" |
||
5772 | |||
5773 | errors[0xfc00] = "The message queue cannot accept another message" |
||
5774 | errors[0xfc01] = "The trustee associated with ObjectId does not exist" |
||
5775 | errors[0xfc02] = "The specified bindery object does not exist" |
||
5776 | errors[0xfc03] = "The bindery object associated with ObjectID does not exist" |
||
5777 | errors[0xfc04] = "A bindery object does not exist that matches" |
||
5778 | errors[0xfc05] = "The specified queue does not exist" |
||
5779 | errors[0xfc06] = "No such object" |
||
5780 | errors[0xfc07] = "The queue associated with ObjectID does not exist" |
||
5781 | |||
5782 | errors[0xfd00] = "Bad station number" |
||
5783 | errors[0xfd01] = "The connection associated with ConnectionNumber is not active" |
||
5784 | errors[0xfd02] = "Lock collision" |
||
5785 | errors[0xfd03] = "Transaction tracking is disabled" |
||
5786 | |||
5787 | errors[0xfe00] = "I/O failure" |
||
5788 | errors[0xfe01] = "The files containing the bindery on the file server are locked" |
||
5789 | errors[0xfe02] = "A file with the specified name already exists in this directory" |
||
5790 | errors[0xfe03] = "No more restrictions were found" |
||
5791 | errors[0xfe04] = "The file server was unable to lock the file within the specified time limit" |
||
5792 | errors[0xfe05] = "The file server was unable to lock all files within the specified time limit" |
||
5793 | errors[0xfe06] = "The bindery object associated with ObjectID is not a valid trustee" |
||
5794 | errors[0xfe07] = "Directory locked" |
||
5795 | errors[0xfe08] = "Bindery locked" |
||
5796 | errors[0xfe09] = "Invalid semaphore name length" |
||
5797 | errors[0xfe0a] = "The file server was unable to complete the operation within the specified time limit" |
||
5798 | errors[0xfe0b] = "Transaction restart" |
||
5799 | errors[0xfe0c] = "Bad packet" |
||
5800 | errors[0xfe0d] = "Timeout" |
||
5801 | errors[0xfe0e] = "User Not Found" |
||
5802 | errors[0xfe0f] = "Trustee Not Found" |
||
5803 | |||
5804 | errors[0xff00] = "Failure" |
||
5805 | errors[0xff01] = "Lock error" |
||
5806 | errors[0xff02] = "File not found" |
||
5807 | errors[0xff03] = "The file not found or cannot be unlocked" |
||
5808 | errors[0xff04] = "Record not found" |
||
5809 | errors[0xff05] = "The logical record was not found" |
||
5810 | errors[0xff06] = "The printer associated with Printer Number does not exist" |
||
5811 | errors[0xff07] = "No such printer" |
||
5812 | errors[0xff08] = "Unable to complete the request" |
||
5813 | errors[0xff09] = "Unauthorized to change privileges of this trustee" |
||
5814 | errors[0xff0a] = "No files matching the search criteria were found" |
||
5815 | errors[0xff0b] = "A file matching the search criteria was not found" |
||
5816 | errors[0xff0c] = "Verification failed" |
||
5817 | errors[0xff0d] = "Object associated with ObjectID is not a manager" |
||
5818 | errors[0xff0e] = "Invalid initial semaphore value" |
||
5819 | errors[0xff0f] = "The semaphore handle is not valid" |
||
5820 | errors[0xff10] = "SemaphoreHandle is not associated with a valid sempahore" |
||
5821 | errors[0xff11] = "Invalid semaphore handle" |
||
5822 | errors[0xff12] = "Transaction tracking is not available" |
||
5823 | errors[0xff13] = "The transaction has not yet been written to disk" |
||
5824 | errors[0xff14] = "Directory already exists" |
||
5825 | errors[0xff15] = "The file already exists and the deletion flag was not set" |
||
5826 | errors[0xff16] = "No matching files or directories were found" |
||
5827 | errors[0xff17] = "A file or directory matching the search criteria was not found" |
||
5828 | errors[0xff18] = "The file already exists" |
||
5829 | errors[0xff19] = "Failure, No files found" |
||
5830 | errors[0xff1a] = "Unlock Error" |
||
5831 | errors[0xff1b] = "I/O Bound Error" |
||
5832 | errors[0xff1c] = "Not Accepting Messages" |
||
5833 | errors[0xff1d] = "No More Salvageable Files in Directory" |
||
5834 | errors[0xff1e] = "Calling Station is Not a Manager" |
||
5835 | errors[0xff1f] = "Bindery Failure" |
||
5836 | errors[0xff20] = "NCP Extension Not Found" |
||
5837 | errors[0xff21] = "Audit Property Not Found" |
||
5838 | errors[0xff22] = "Server Set Parameter Not Found" |
||
5839 | |||
5840 | ############################################################################## |
||
5841 | # Produce C code |
||
5842 | ############################################################################## |
||
5843 | def ExamineVars(vars, structs_hash, vars_hash): |
||
5844 | for var in vars: |
||
5845 | if isinstance(var, struct): |
||
5846 | structs_hash[var.HFName()] = var |
||
5847 | struct_vars = var.Variables() |
||
5848 | ExamineVars(struct_vars, structs_hash, vars_hash) |
||
5849 | else: |
||
5850 | vars_hash[repr(var)] = var |
||
5851 | if isinstance(var, bitfield): |
||
5852 | sub_vars = var.SubVariables() |
||
5853 | ExamineVars(sub_vars, structs_hash, vars_hash) |
||
5854 | |||
5855 | def produce_code(): |
||
5856 | |||
5857 | global errors |
||
5858 | |||
5859 | print("/*") |
||
5860 | print(" * Do not modify this file. Changes will be overwritten.") |
||
5861 | print(" * Generated automatically from %s" % (sys.argv[0])) |
||
5862 | print(" */\n") |
||
5863 | |||
5864 | print(""" |
||
5865 | /* |
||
5866 | * Portions Copyright (c) Gilbert Ramirez 2000-2002 |
||
5867 | * Portions Copyright (c) Novell, Inc. 2000-2005 |
||
5868 | * |
||
5869 | * This program is free software; you can redistribute it and/or |
||
5870 | * modify it under the terms of the GNU General Public License |
||
5871 | * as published by the Free Software Foundation; either version 2 |
||
5872 | * of the License, or (at your option) any later version. |
||
5873 | * |
||
5874 | * This program is distributed in the hope that it will be useful, |
||
5875 | * but WITHOUT ANY WARRANTY; without even the implied warranty of |
||
5876 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
||
5877 | * GNU General Public License for more details. |
||
5878 | * |
||
5879 | * You should have received a copy of the GNU General Public License |
||
5880 | * along with this program; if not, write to the Free Software |
||
5881 | * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. |
||
5882 | */ |
||
5883 | |||
5884 | #include "config.h" |
||
5885 | |||
5886 | #include <string.h> |
||
5887 | #include <glib.h> |
||
5888 | #include <epan/packet.h> |
||
5889 | #include <epan/dfilter/dfilter.h> |
||
5890 | #include <epan/exceptions.h> |
||
5891 | #include <ftypes/ftypes-int.h> |
||
5892 | #include <epan/to_str.h> |
||
5893 | #include <epan/conversation.h> |
||
5894 | #include <epan/ptvcursor.h> |
||
5895 | #include <epan/strutil.h> |
||
5896 | #include <epan/reassemble.h> |
||
5897 | #include <epan/tap.h> |
||
5898 | #include <epan/proto_data.h> |
||
5899 | #include "packet-ncp-int.h" |
||
5900 | #include "packet-ncp-nmas.h" |
||
5901 | #include "packet-ncp-sss.h" |
||
5902 | |||
5903 | /* Function declarations for functions used in proto_register_ncp2222() */ |
||
5904 | void proto_register_ncp2222(void); |
||
5905 | static void ncp_init_protocol(void); |
||
5906 | static void ncp_postseq_cleanup(void); |
||
5907 | |||
5908 | /* Endianness macros */ |
||
5909 | #define NO_ENDIANNESS 0 |
||
5910 | |||
5911 | #define NO_LENGTH -1 |
||
5912 | |||
5913 | /* We use this int-pointer as a special flag in ptvc_record's */ |
||
5914 | static int ptvc_struct_int_storage; |
||
5915 | #define PTVC_STRUCT (&ptvc_struct_int_storage) |
||
5916 | |||
5917 | /* Values used in the count-variable ("var"/"repeat") logic. */""") |
||
5918 | |||
5919 | |||
5920 | if global_highest_var > -1: |
||
5921 | print("#define NUM_REPEAT_VARS %d" % (global_highest_var + 1)) |
||
5922 | print("static guint repeat_vars[NUM_REPEAT_VARS];") |
||
5923 | else: |
||
5924 | print("#define NUM_REPEAT_VARS 0") |
||
5925 | print("static guint *repeat_vars = NULL;") |
||
5926 | |||
5927 | print(""" |
||
5928 | #define NO_VAR NUM_REPEAT_VARS |
||
5929 | #define NO_REPEAT NUM_REPEAT_VARS |
||
5930 | |||
5931 | #define REQ_COND_SIZE_CONSTANT 0 |
||
5932 | #define REQ_COND_SIZE_VARIABLE 1 |
||
5933 | #define NO_REQ_COND_SIZE 0 |
||
5934 | |||
5935 | |||
5936 | #define NTREE 0x00020000 |
||
5937 | #define NDEPTH 0x00000002 |
||
5938 | #define NREV 0x00000004 |
||
5939 | #define NFLAGS 0x00000008 |
||
5940 | |||
5941 | static int hf_ncp_number_of_data_streams_long = -1; |
||
5942 | static int hf_ncp_func = -1; |
||
5943 | static int hf_ncp_length = -1; |
||
5944 | static int hf_ncp_subfunc = -1; |
||
5945 | static int hf_ncp_group = -1; |
||
5946 | static int hf_ncp_fragment_handle = -1; |
||
5947 | static int hf_ncp_completion_code = -1; |
||
5948 | static int hf_ncp_connection_status = -1; |
||
5949 | static int hf_ncp_req_frame_num = -1; |
||
5950 | static int hf_ncp_req_frame_time = -1; |
||
5951 | static int hf_ncp_fragment_size = -1; |
||
5952 | static int hf_ncp_message_size = -1; |
||
5953 | static int hf_ncp_nds_flag = -1; |
||
5954 | static int hf_ncp_nds_verb = -1; |
||
5955 | static int hf_ping_version = -1; |
||
5956 | /* static int hf_nds_version = -1; */ |
||
5957 | /* static int hf_nds_flags = -1; */ |
||
5958 | static int hf_nds_reply_depth = -1; |
||
5959 | static int hf_nds_reply_rev = -1; |
||
5960 | static int hf_nds_reply_flags = -1; |
||
5961 | static int hf_nds_p1type = -1; |
||
5962 | static int hf_nds_uint32value = -1; |
||
5963 | static int hf_nds_bit1 = -1; |
||
5964 | static int hf_nds_bit2 = -1; |
||
5965 | static int hf_nds_bit3 = -1; |
||
5966 | static int hf_nds_bit4 = -1; |
||
5967 | static int hf_nds_bit5 = -1; |
||
5968 | static int hf_nds_bit6 = -1; |
||
5969 | static int hf_nds_bit7 = -1; |
||
5970 | static int hf_nds_bit8 = -1; |
||
5971 | static int hf_nds_bit9 = -1; |
||
5972 | static int hf_nds_bit10 = -1; |
||
5973 | static int hf_nds_bit11 = -1; |
||
5974 | static int hf_nds_bit12 = -1; |
||
5975 | static int hf_nds_bit13 = -1; |
||
5976 | static int hf_nds_bit14 = -1; |
||
5977 | static int hf_nds_bit15 = -1; |
||
5978 | static int hf_nds_bit16 = -1; |
||
5979 | static int hf_outflags = -1; |
||
5980 | static int hf_bit1outflags = -1; |
||
5981 | static int hf_bit2outflags = -1; |
||
5982 | static int hf_bit3outflags = -1; |
||
5983 | static int hf_bit4outflags = -1; |
||
5984 | static int hf_bit5outflags = -1; |
||
5985 | static int hf_bit6outflags = -1; |
||
5986 | static int hf_bit7outflags = -1; |
||
5987 | static int hf_bit8outflags = -1; |
||
5988 | static int hf_bit9outflags = -1; |
||
5989 | static int hf_bit10outflags = -1; |
||
5990 | static int hf_bit11outflags = -1; |
||
5991 | static int hf_bit12outflags = -1; |
||
5992 | static int hf_bit13outflags = -1; |
||
5993 | static int hf_bit14outflags = -1; |
||
5994 | static int hf_bit15outflags = -1; |
||
5995 | static int hf_bit16outflags = -1; |
||
5996 | static int hf_bit1nflags = -1; |
||
5997 | static int hf_bit2nflags = -1; |
||
5998 | static int hf_bit3nflags = -1; |
||
5999 | static int hf_bit4nflags = -1; |
||
6000 | static int hf_bit5nflags = -1; |
||
6001 | static int hf_bit6nflags = -1; |
||
6002 | static int hf_bit7nflags = -1; |
||
6003 | static int hf_bit8nflags = -1; |
||
6004 | static int hf_bit9nflags = -1; |
||
6005 | static int hf_bit10nflags = -1; |
||
6006 | static int hf_bit11nflags = -1; |
||
6007 | static int hf_bit12nflags = -1; |
||
6008 | static int hf_bit13nflags = -1; |
||
6009 | static int hf_bit14nflags = -1; |
||
6010 | static int hf_bit15nflags = -1; |
||
6011 | static int hf_bit16nflags = -1; |
||
6012 | static int hf_bit1rflags = -1; |
||
6013 | static int hf_bit2rflags = -1; |
||
6014 | static int hf_bit3rflags = -1; |
||
6015 | static int hf_bit4rflags = -1; |
||
6016 | static int hf_bit5rflags = -1; |
||
6017 | static int hf_bit6rflags = -1; |
||
6018 | static int hf_bit7rflags = -1; |
||
6019 | static int hf_bit8rflags = -1; |
||
6020 | static int hf_bit9rflags = -1; |
||
6021 | static int hf_bit10rflags = -1; |
||
6022 | static int hf_bit11rflags = -1; |
||
6023 | static int hf_bit12rflags = -1; |
||
6024 | static int hf_bit13rflags = -1; |
||
6025 | static int hf_bit14rflags = -1; |
||
6026 | static int hf_bit15rflags = -1; |
||
6027 | static int hf_bit16rflags = -1; |
||
6028 | static int hf_cflags = -1; |
||
6029 | static int hf_bit1cflags = -1; |
||
6030 | static int hf_bit2cflags = -1; |
||
6031 | static int hf_bit3cflags = -1; |
||
6032 | static int hf_bit4cflags = -1; |
||
6033 | static int hf_bit5cflags = -1; |
||
6034 | static int hf_bit6cflags = -1; |
||
6035 | static int hf_bit7cflags = -1; |
||
6036 | static int hf_bit8cflags = -1; |
||
6037 | static int hf_bit9cflags = -1; |
||
6038 | static int hf_bit10cflags = -1; |
||
6039 | static int hf_bit11cflags = -1; |
||
6040 | static int hf_bit12cflags = -1; |
||
6041 | static int hf_bit13cflags = -1; |
||
6042 | static int hf_bit14cflags = -1; |
||
6043 | static int hf_bit15cflags = -1; |
||
6044 | static int hf_bit16cflags = -1; |
||
6045 | static int hf_bit1acflags = -1; |
||
6046 | static int hf_bit2acflags = -1; |
||
6047 | static int hf_bit3acflags = -1; |
||
6048 | static int hf_bit4acflags = -1; |
||
6049 | static int hf_bit5acflags = -1; |
||
6050 | static int hf_bit6acflags = -1; |
||
6051 | static int hf_bit7acflags = -1; |
||
6052 | static int hf_bit8acflags = -1; |
||
6053 | static int hf_bit9acflags = -1; |
||
6054 | static int hf_bit10acflags = -1; |
||
6055 | static int hf_bit11acflags = -1; |
||
6056 | static int hf_bit12acflags = -1; |
||
6057 | static int hf_bit13acflags = -1; |
||
6058 | static int hf_bit14acflags = -1; |
||
6059 | static int hf_bit15acflags = -1; |
||
6060 | static int hf_bit16acflags = -1; |
||
6061 | static int hf_vflags = -1; |
||
6062 | static int hf_bit1vflags = -1; |
||
6063 | static int hf_bit2vflags = -1; |
||
6064 | static int hf_bit3vflags = -1; |
||
6065 | static int hf_bit4vflags = -1; |
||
6066 | static int hf_bit5vflags = -1; |
||
6067 | static int hf_bit6vflags = -1; |
||
6068 | static int hf_bit7vflags = -1; |
||
6069 | static int hf_bit8vflags = -1; |
||
6070 | static int hf_bit9vflags = -1; |
||
6071 | static int hf_bit10vflags = -1; |
||
6072 | static int hf_bit11vflags = -1; |
||
6073 | static int hf_bit12vflags = -1; |
||
6074 | static int hf_bit13vflags = -1; |
||
6075 | static int hf_bit14vflags = -1; |
||
6076 | static int hf_bit15vflags = -1; |
||
6077 | static int hf_bit16vflags = -1; |
||
6078 | static int hf_eflags = -1; |
||
6079 | static int hf_bit1eflags = -1; |
||
6080 | static int hf_bit2eflags = -1; |
||
6081 | static int hf_bit3eflags = -1; |
||
6082 | static int hf_bit4eflags = -1; |
||
6083 | static int hf_bit5eflags = -1; |
||
6084 | static int hf_bit6eflags = -1; |
||
6085 | static int hf_bit7eflags = -1; |
||
6086 | static int hf_bit8eflags = -1; |
||
6087 | static int hf_bit9eflags = -1; |
||
6088 | static int hf_bit10eflags = -1; |
||
6089 | static int hf_bit11eflags = -1; |
||
6090 | static int hf_bit12eflags = -1; |
||
6091 | static int hf_bit13eflags = -1; |
||
6092 | static int hf_bit14eflags = -1; |
||
6093 | static int hf_bit15eflags = -1; |
||
6094 | static int hf_bit16eflags = -1; |
||
6095 | static int hf_infoflagsl = -1; |
||
6096 | static int hf_retinfoflagsl = -1; |
||
6097 | static int hf_bit1infoflagsl = -1; |
||
6098 | static int hf_bit2infoflagsl = -1; |
||
6099 | static int hf_bit3infoflagsl = -1; |
||
6100 | static int hf_bit4infoflagsl = -1; |
||
6101 | static int hf_bit5infoflagsl = -1; |
||
6102 | static int hf_bit6infoflagsl = -1; |
||
6103 | static int hf_bit7infoflagsl = -1; |
||
6104 | static int hf_bit8infoflagsl = -1; |
||
6105 | static int hf_bit9infoflagsl = -1; |
||
6106 | static int hf_bit10infoflagsl = -1; |
||
6107 | static int hf_bit11infoflagsl = -1; |
||
6108 | static int hf_bit12infoflagsl = -1; |
||
6109 | static int hf_bit13infoflagsl = -1; |
||
6110 | static int hf_bit14infoflagsl = -1; |
||
6111 | static int hf_bit15infoflagsl = -1; |
||
6112 | static int hf_bit16infoflagsl = -1; |
||
6113 | static int hf_infoflagsh = -1; |
||
6114 | static int hf_bit1infoflagsh = -1; |
||
6115 | static int hf_bit2infoflagsh = -1; |
||
6116 | static int hf_bit3infoflagsh = -1; |
||
6117 | static int hf_bit4infoflagsh = -1; |
||
6118 | static int hf_bit5infoflagsh = -1; |
||
6119 | static int hf_bit6infoflagsh = -1; |
||
6120 | static int hf_bit7infoflagsh = -1; |
||
6121 | static int hf_bit8infoflagsh = -1; |
||
6122 | static int hf_bit9infoflagsh = -1; |
||
6123 | static int hf_bit10infoflagsh = -1; |
||
6124 | static int hf_bit11infoflagsh = -1; |
||
6125 | static int hf_bit12infoflagsh = -1; |
||
6126 | static int hf_bit13infoflagsh = -1; |
||
6127 | static int hf_bit14infoflagsh = -1; |
||
6128 | static int hf_bit15infoflagsh = -1; |
||
6129 | static int hf_bit16infoflagsh = -1; |
||
6130 | static int hf_retinfoflagsh = -1; |
||
6131 | static int hf_bit1retinfoflagsh = -1; |
||
6132 | static int hf_bit2retinfoflagsh = -1; |
||
6133 | static int hf_bit3retinfoflagsh = -1; |
||
6134 | static int hf_bit4retinfoflagsh = -1; |
||
6135 | static int hf_bit5retinfoflagsh = -1; |
||
6136 | static int hf_bit6retinfoflagsh = -1; |
||
6137 | static int hf_bit7retinfoflagsh = -1; |
||
6138 | static int hf_bit8retinfoflagsh = -1; |
||
6139 | static int hf_bit9retinfoflagsh = -1; |
||
6140 | static int hf_bit10retinfoflagsh = -1; |
||
6141 | static int hf_bit11retinfoflagsh = -1; |
||
6142 | static int hf_bit12retinfoflagsh = -1; |
||
6143 | static int hf_bit13retinfoflagsh = -1; |
||
6144 | static int hf_bit14retinfoflagsh = -1; |
||
6145 | static int hf_bit15retinfoflagsh = -1; |
||
6146 | static int hf_bit16retinfoflagsh = -1; |
||
6147 | static int hf_bit1lflags = -1; |
||
6148 | static int hf_bit2lflags = -1; |
||
6149 | static int hf_bit3lflags = -1; |
||
6150 | static int hf_bit4lflags = -1; |
||
6151 | static int hf_bit5lflags = -1; |
||
6152 | static int hf_bit6lflags = -1; |
||
6153 | static int hf_bit7lflags = -1; |
||
6154 | static int hf_bit8lflags = -1; |
||
6155 | static int hf_bit9lflags = -1; |
||
6156 | static int hf_bit10lflags = -1; |
||
6157 | static int hf_bit11lflags = -1; |
||
6158 | static int hf_bit12lflags = -1; |
||
6159 | static int hf_bit13lflags = -1; |
||
6160 | static int hf_bit14lflags = -1; |
||
6161 | static int hf_bit15lflags = -1; |
||
6162 | static int hf_bit16lflags = -1; |
||
6163 | static int hf_l1flagsl = -1; |
||
6164 | static int hf_l1flagsh = -1; |
||
6165 | static int hf_bit1l1flagsl = -1; |
||
6166 | static int hf_bit2l1flagsl = -1; |
||
6167 | static int hf_bit3l1flagsl = -1; |
||
6168 | static int hf_bit4l1flagsl = -1; |
||
6169 | static int hf_bit5l1flagsl = -1; |
||
6170 | static int hf_bit6l1flagsl = -1; |
||
6171 | static int hf_bit7l1flagsl = -1; |
||
6172 | static int hf_bit8l1flagsl = -1; |
||
6173 | static int hf_bit9l1flagsl = -1; |
||
6174 | static int hf_bit10l1flagsl = -1; |
||
6175 | static int hf_bit11l1flagsl = -1; |
||
6176 | static int hf_bit12l1flagsl = -1; |
||
6177 | static int hf_bit13l1flagsl = -1; |
||
6178 | static int hf_bit14l1flagsl = -1; |
||
6179 | static int hf_bit15l1flagsl = -1; |
||
6180 | static int hf_bit16l1flagsl = -1; |
||
6181 | static int hf_bit1l1flagsh = -1; |
||
6182 | static int hf_bit2l1flagsh = -1; |
||
6183 | static int hf_bit3l1flagsh = -1; |
||
6184 | static int hf_bit4l1flagsh = -1; |
||
6185 | static int hf_bit5l1flagsh = -1; |
||
6186 | static int hf_bit6l1flagsh = -1; |
||
6187 | static int hf_bit7l1flagsh = -1; |
||
6188 | static int hf_bit8l1flagsh = -1; |
||
6189 | static int hf_bit9l1flagsh = -1; |
||
6190 | static int hf_bit10l1flagsh = -1; |
||
6191 | static int hf_bit11l1flagsh = -1; |
||
6192 | static int hf_bit12l1flagsh = -1; |
||
6193 | static int hf_bit13l1flagsh = -1; |
||
6194 | static int hf_bit14l1flagsh = -1; |
||
6195 | static int hf_bit15l1flagsh = -1; |
||
6196 | static int hf_bit16l1flagsh = -1; |
||
6197 | static int hf_nds_tree_name = -1; |
||
6198 | static int hf_nds_reply_error = -1; |
||
6199 | static int hf_nds_net = -1; |
||
6200 | static int hf_nds_node = -1; |
||
6201 | static int hf_nds_socket = -1; |
||
6202 | static int hf_add_ref_ip = -1; |
||
6203 | static int hf_add_ref_udp = -1; |
||
6204 | static int hf_add_ref_tcp = -1; |
||
6205 | static int hf_referral_record = -1; |
||
6206 | static int hf_referral_addcount = -1; |
||
6207 | static int hf_nds_port = -1; |
||
6208 | static int hf_mv_string = -1; |
||
6209 | static int hf_nds_syntax = -1; |
||
6210 | static int hf_value_string = -1; |
||
6211 | static int hf_nds_buffer_size = -1; |
||
6212 | static int hf_nds_ver = -1; |
||
6213 | static int hf_nds_nflags = -1; |
||
6214 | static int hf_nds_scope = -1; |
||
6215 | static int hf_nds_name = -1; |
||
6216 | static int hf_nds_comm_trans = -1; |
||
6217 | static int hf_nds_tree_trans = -1; |
||
6218 | static int hf_nds_iteration = -1; |
||
6219 | static int hf_nds_eid = -1; |
||
6220 | static int hf_nds_info_type = -1; |
||
6221 | static int hf_nds_all_attr = -1; |
||
6222 | static int hf_nds_req_flags = -1; |
||
6223 | static int hf_nds_attr = -1; |
||
6224 | static int hf_nds_crc = -1; |
||
6225 | static int hf_nds_referrals = -1; |
||
6226 | static int hf_nds_result_flags = -1; |
||
6227 | static int hf_nds_tag_string = -1; |
||
6228 | static int hf_value_bytes = -1; |
||
6229 | static int hf_replica_type = -1; |
||
6230 | static int hf_replica_state = -1; |
||
6231 | static int hf_replica_number = -1; |
||
6232 | static int hf_min_nds_ver = -1; |
||
6233 | static int hf_nds_ver_include = -1; |
||
6234 | static int hf_nds_ver_exclude = -1; |
||
6235 | /* static int hf_nds_es = -1; */ |
||
6236 | static int hf_es_type = -1; |
||
6237 | /* static int hf_delim_string = -1; */ |
||
6238 | static int hf_rdn_string = -1; |
||
6239 | static int hf_nds_revent = -1; |
||
6240 | static int hf_nds_rnum = -1; |
||
6241 | static int hf_nds_name_type = -1; |
||
6242 | static int hf_nds_rflags = -1; |
||
6243 | static int hf_nds_eflags = -1; |
||
6244 | static int hf_nds_depth = -1; |
||
6245 | static int hf_nds_class_def_type = -1; |
||
6246 | static int hf_nds_classes = -1; |
||
6247 | static int hf_nds_return_all_classes = -1; |
||
6248 | static int hf_nds_stream_flags = -1; |
||
6249 | static int hf_nds_stream_name = -1; |
||
6250 | static int hf_nds_file_handle = -1; |
||
6251 | static int hf_nds_file_size = -1; |
||
6252 | static int hf_nds_dn_output_type = -1; |
||
6253 | static int hf_nds_nested_output_type = -1; |
||
6254 | static int hf_nds_output_delimiter = -1; |
||
6255 | static int hf_nds_output_entry_specifier = -1; |
||
6256 | static int hf_es_value = -1; |
||
6257 | static int hf_es_rdn_count = -1; |
||
6258 | static int hf_nds_replica_num = -1; |
||
6259 | static int hf_nds_event_num = -1; |
||
6260 | static int hf_es_seconds = -1; |
||
6261 | static int hf_nds_compare_results = -1; |
||
6262 | static int hf_nds_parent = -1; |
||
6263 | static int hf_nds_name_filter = -1; |
||
6264 | static int hf_nds_class_filter = -1; |
||
6265 | static int hf_nds_time_filter = -1; |
||
6266 | static int hf_nds_partition_root_id = -1; |
||
6267 | static int hf_nds_replicas = -1; |
||
6268 | static int hf_nds_purge = -1; |
||
6269 | static int hf_nds_local_partition = -1; |
||
6270 | static int hf_partition_busy = -1; |
||
6271 | static int hf_nds_number_of_changes = -1; |
||
6272 | static int hf_sub_count = -1; |
||
6273 | static int hf_nds_revision = -1; |
||
6274 | static int hf_nds_base_class = -1; |
||
6275 | static int hf_nds_relative_dn = -1; |
||
6276 | /* static int hf_nds_root_dn = -1; */ |
||
6277 | /* static int hf_nds_parent_dn = -1; */ |
||
6278 | static int hf_deref_base = -1; |
||
6279 | /* static int hf_nds_entry_info = -1; */ |
||
6280 | static int hf_nds_base = -1; |
||
6281 | static int hf_nds_privileges = -1; |
||
6282 | static int hf_nds_vflags = -1; |
||
6283 | static int hf_nds_value_len = -1; |
||
6284 | static int hf_nds_cflags = -1; |
||
6285 | static int hf_nds_acflags = -1; |
||
6286 | static int hf_nds_asn1 = -1; |
||
6287 | static int hf_nds_upper = -1; |
||
6288 | static int hf_nds_lower = -1; |
||
6289 | static int hf_nds_trustee_dn = -1; |
||
6290 | static int hf_nds_attribute_dn = -1; |
||
6291 | static int hf_nds_acl_add = -1; |
||
6292 | static int hf_nds_acl_del = -1; |
||
6293 | static int hf_nds_att_add = -1; |
||
6294 | static int hf_nds_att_del = -1; |
||
6295 | static int hf_nds_keep = -1; |
||
6296 | static int hf_nds_new_rdn = -1; |
||
6297 | static int hf_nds_time_delay = -1; |
||
6298 | static int hf_nds_root_name = -1; |
||
6299 | static int hf_nds_new_part_id = -1; |
||
6300 | static int hf_nds_child_part_id = -1; |
||
6301 | static int hf_nds_master_part_id = -1; |
||
6302 | static int hf_nds_target_name = -1; |
||
6303 | static int hf_nds_super = -1; |
||
6304 | static int hf_pingflags2 = -1; |
||
6305 | static int hf_bit1pingflags2 = -1; |
||
6306 | static int hf_bit2pingflags2 = -1; |
||
6307 | static int hf_bit3pingflags2 = -1; |
||
6308 | static int hf_bit4pingflags2 = -1; |
||
6309 | static int hf_bit5pingflags2 = -1; |
||
6310 | static int hf_bit6pingflags2 = -1; |
||
6311 | static int hf_bit7pingflags2 = -1; |
||
6312 | static int hf_bit8pingflags2 = -1; |
||
6313 | static int hf_bit9pingflags2 = -1; |
||
6314 | static int hf_bit10pingflags2 = -1; |
||
6315 | static int hf_bit11pingflags2 = -1; |
||
6316 | static int hf_bit12pingflags2 = -1; |
||
6317 | static int hf_bit13pingflags2 = -1; |
||
6318 | static int hf_bit14pingflags2 = -1; |
||
6319 | static int hf_bit15pingflags2 = -1; |
||
6320 | static int hf_bit16pingflags2 = -1; |
||
6321 | static int hf_pingflags1 = -1; |
||
6322 | static int hf_bit1pingflags1 = -1; |
||
6323 | static int hf_bit2pingflags1 = -1; |
||
6324 | static int hf_bit3pingflags1 = -1; |
||
6325 | static int hf_bit4pingflags1 = -1; |
||
6326 | static int hf_bit5pingflags1 = -1; |
||
6327 | static int hf_bit6pingflags1 = -1; |
||
6328 | static int hf_bit7pingflags1 = -1; |
||
6329 | static int hf_bit8pingflags1 = -1; |
||
6330 | static int hf_bit9pingflags1 = -1; |
||
6331 | static int hf_bit10pingflags1 = -1; |
||
6332 | static int hf_bit11pingflags1 = -1; |
||
6333 | static int hf_bit12pingflags1 = -1; |
||
6334 | static int hf_bit13pingflags1 = -1; |
||
6335 | static int hf_bit14pingflags1 = -1; |
||
6336 | static int hf_bit15pingflags1 = -1; |
||
6337 | static int hf_bit16pingflags1 = -1; |
||
6338 | static int hf_pingpflags1 = -1; |
||
6339 | static int hf_bit1pingpflags1 = -1; |
||
6340 | static int hf_bit2pingpflags1 = -1; |
||
6341 | static int hf_bit3pingpflags1 = -1; |
||
6342 | static int hf_bit4pingpflags1 = -1; |
||
6343 | static int hf_bit5pingpflags1 = -1; |
||
6344 | static int hf_bit6pingpflags1 = -1; |
||
6345 | static int hf_bit7pingpflags1 = -1; |
||
6346 | static int hf_bit8pingpflags1 = -1; |
||
6347 | static int hf_bit9pingpflags1 = -1; |
||
6348 | static int hf_bit10pingpflags1 = -1; |
||
6349 | static int hf_bit11pingpflags1 = -1; |
||
6350 | static int hf_bit12pingpflags1 = -1; |
||
6351 | static int hf_bit13pingpflags1 = -1; |
||
6352 | static int hf_bit14pingpflags1 = -1; |
||
6353 | static int hf_bit15pingpflags1 = -1; |
||
6354 | static int hf_bit16pingpflags1 = -1; |
||
6355 | static int hf_pingvflags1 = -1; |
||
6356 | static int hf_bit1pingvflags1 = -1; |
||
6357 | static int hf_bit2pingvflags1 = -1; |
||
6358 | static int hf_bit3pingvflags1 = -1; |
||
6359 | static int hf_bit4pingvflags1 = -1; |
||
6360 | static int hf_bit5pingvflags1 = -1; |
||
6361 | static int hf_bit6pingvflags1 = -1; |
||
6362 | static int hf_bit7pingvflags1 = -1; |
||
6363 | static int hf_bit8pingvflags1 = -1; |
||
6364 | static int hf_bit9pingvflags1 = -1; |
||
6365 | static int hf_bit10pingvflags1 = -1; |
||
6366 | static int hf_bit11pingvflags1 = -1; |
||
6367 | static int hf_bit12pingvflags1 = -1; |
||
6368 | static int hf_bit13pingvflags1 = -1; |
||
6369 | static int hf_bit14pingvflags1 = -1; |
||
6370 | static int hf_bit15pingvflags1 = -1; |
||
6371 | static int hf_bit16pingvflags1 = -1; |
||
6372 | static int hf_nds_letter_ver = -1; |
||
6373 | static int hf_nds_os_majver = -1; |
||
6374 | static int hf_nds_os_minver = -1; |
||
6375 | static int hf_nds_lic_flags = -1; |
||
6376 | static int hf_nds_ds_time = -1; |
||
6377 | static int hf_nds_ping_version = -1; |
||
6378 | static int hf_nds_search_scope = -1; |
||
6379 | static int hf_nds_num_objects = -1; |
||
6380 | static int hf_siflags = -1; |
||
6381 | static int hf_bit1siflags = -1; |
||
6382 | static int hf_bit2siflags = -1; |
||
6383 | static int hf_bit3siflags = -1; |
||
6384 | static int hf_bit4siflags = -1; |
||
6385 | static int hf_bit5siflags = -1; |
||
6386 | static int hf_bit6siflags = -1; |
||
6387 | static int hf_bit7siflags = -1; |
||
6388 | static int hf_bit8siflags = -1; |
||
6389 | static int hf_bit9siflags = -1; |
||
6390 | static int hf_bit10siflags = -1; |
||
6391 | static int hf_bit11siflags = -1; |
||
6392 | static int hf_bit12siflags = -1; |
||
6393 | static int hf_bit13siflags = -1; |
||
6394 | static int hf_bit14siflags = -1; |
||
6395 | static int hf_bit15siflags = -1; |
||
6396 | static int hf_bit16siflags = -1; |
||
6397 | static int hf_nds_segments = -1; |
||
6398 | static int hf_nds_segment = -1; |
||
6399 | static int hf_nds_segment_overlap = -1; |
||
6400 | static int hf_nds_segment_overlap_conflict = -1; |
||
6401 | static int hf_nds_segment_multiple_tails = -1; |
||
6402 | static int hf_nds_segment_too_long_segment = -1; |
||
6403 | static int hf_nds_segment_error = -1; |
||
6404 | static int hf_nds_segment_count = -1; |
||
6405 | static int hf_nds_reassembled_length = -1; |
||
6406 | static int hf_nds_verb2b_req_flags = -1; |
||
6407 | static int hf_ncp_ip_address = -1; |
||
6408 | static int hf_ncp_copyright = -1; |
||
6409 | static int hf_ndsprot1flag = -1; |
||
6410 | static int hf_ndsprot2flag = -1; |
||
6411 | static int hf_ndsprot3flag = -1; |
||
6412 | static int hf_ndsprot4flag = -1; |
||
6413 | static int hf_ndsprot5flag = -1; |
||
6414 | static int hf_ndsprot6flag = -1; |
||
6415 | static int hf_ndsprot7flag = -1; |
||
6416 | static int hf_ndsprot8flag = -1; |
||
6417 | static int hf_ndsprot9flag = -1; |
||
6418 | static int hf_ndsprot10flag = -1; |
||
6419 | static int hf_ndsprot11flag = -1; |
||
6420 | static int hf_ndsprot12flag = -1; |
||
6421 | static int hf_ndsprot13flag = -1; |
||
6422 | static int hf_ndsprot14flag = -1; |
||
6423 | static int hf_ndsprot15flag = -1; |
||
6424 | static int hf_ndsprot16flag = -1; |
||
6425 | static int hf_nds_svr_dst_name = -1; |
||
6426 | static int hf_nds_tune_mark = -1; |
||
6427 | /* static int hf_nds_create_time = -1; */ |
||
6428 | static int hf_srvr_param_number = -1; |
||
6429 | static int hf_srvr_param_boolean = -1; |
||
6430 | static int hf_srvr_param_string = -1; |
||
6431 | static int hf_nds_svr_time = -1; |
||
6432 | static int hf_nds_crt_time = -1; |
||
6433 | static int hf_nds_number_of_items = -1; |
||
6434 | static int hf_nds_compare_attributes = -1; |
||
6435 | static int hf_nds_read_attribute = -1; |
||
6436 | static int hf_nds_write_add_delete_attribute = -1; |
||
6437 | static int hf_nds_add_delete_self = -1; |
||
6438 | static int hf_nds_privilege_not_defined = -1; |
||
6439 | static int hf_nds_supervisor = -1; |
||
6440 | static int hf_nds_inheritance_control = -1; |
||
6441 | static int hf_nds_browse_entry = -1; |
||
6442 | static int hf_nds_add_entry = -1; |
||
6443 | static int hf_nds_delete_entry = -1; |
||
6444 | static int hf_nds_rename_entry = -1; |
||
6445 | static int hf_nds_supervisor_entry = -1; |
||
6446 | static int hf_nds_entry_privilege_not_defined = -1; |
||
6447 | static int hf_nds_iterator = -1; |
||
6448 | static int hf_ncp_nds_iterverb = -1; |
||
6449 | static int hf_iter_completion_code = -1; |
||
6450 | /* static int hf_nds_iterobj = -1; */ |
||
6451 | static int hf_iter_verb_completion_code = -1; |
||
6452 | static int hf_iter_ans = -1; |
||
6453 | static int hf_positionable = -1; |
||
6454 | static int hf_num_skipped = -1; |
||
6455 | static int hf_num_to_skip = -1; |
||
6456 | static int hf_timelimit = -1; |
||
6457 | static int hf_iter_index = -1; |
||
6458 | static int hf_num_to_get = -1; |
||
6459 | /* static int hf_ret_info_type = -1; */ |
||
6460 | static int hf_data_size = -1; |
||
6461 | static int hf_this_count = -1; |
||
6462 | static int hf_max_entries = -1; |
||
6463 | static int hf_move_position = -1; |
||
6464 | static int hf_iter_copy = -1; |
||
6465 | static int hf_iter_position = -1; |
||
6466 | static int hf_iter_search = -1; |
||
6467 | static int hf_iter_other = -1; |
||
6468 | static int hf_nds_oid = -1; |
||
6469 | static int hf_ncp_bytes_actually_trans_64 = -1; |
||
6470 | static int hf_sap_name = -1; |
||
6471 | static int hf_os_name = -1; |
||
6472 | static int hf_vendor_name = -1; |
||
6473 | static int hf_hardware_name = -1; |
||
6474 | static int hf_no_request_record_found = -1; |
||
6475 | static int hf_search_modifier = -1; |
||
6476 | static int hf_search_pattern = -1; |
||
6477 | |||
6478 | static expert_field ei_ncp_file_rights_change = EI_INIT; |
||
6479 | static expert_field ei_ncp_completion_code = EI_INIT; |
||
6480 | static expert_field ei_nds_reply_error = EI_INIT; |
||
6481 | static expert_field ei_ncp_destroy_connection = EI_INIT; |
||
6482 | static expert_field ei_nds_iteration = EI_INIT; |
||
6483 | static expert_field ei_ncp_eid = EI_INIT; |
||
6484 | static expert_field ei_ncp_file_handle = EI_INIT; |
||
6485 | static expert_field ei_ncp_connection_destroyed = EI_INIT; |
||
6486 | static expert_field ei_ncp_no_request_record_found = EI_INIT; |
||
6487 | static expert_field ei_ncp_file_rights = EI_INIT; |
||
6488 | static expert_field ei_iter_verb_completion_code = EI_INIT; |
||
6489 | static expert_field ei_ncp_connection_request = EI_INIT; |
||
6490 | static expert_field ei_ncp_connection_status = EI_INIT; |
||
6491 | static expert_field ei_ncp_op_lock_handle = EI_INIT; |
||
6492 | static expert_field ei_ncp_effective_rights = EI_INIT; |
||
6493 | static expert_field ei_ncp_server = EI_INIT; |
||
6494 | static expert_field ei_ncp_invalid_offset = EI_INIT; |
||
6495 | static expert_field ei_ncp_address_type = EI_INIT; |
||
6496 | """) |
||
6497 | |||
6498 | # Look at all packet types in the packets collection, and cull information |
||
6499 | # from them. |
||
6500 | errors_used_list = [] |
||
6501 | errors_used_hash = {} |
||
6502 | groups_used_list = [] |
||
6503 | groups_used_hash = {} |
||
6504 | variables_used_hash = {} |
||
6505 | structs_used_hash = {} |
||
6506 | |||
6507 | for pkt in packets: |
||
6508 | # Determine which error codes are used. |
||
6509 | codes = pkt.CompletionCodes() |
||
6510 | for code in codes.Records(): |
||
6511 | if code not in errors_used_hash: |
||
6512 | errors_used_hash[code] = len(errors_used_list) |
||
6513 | errors_used_list.append(code) |
||
6514 | |||
6515 | # Determine which groups are used. |
||
6516 | group = pkt.Group() |
||
6517 | if group not in groups_used_hash: |
||
6518 | groups_used_hash[group] = len(groups_used_list) |
||
6519 | groups_used_list.append(group) |
||
6520 | |||
6521 | |||
6522 | |||
6523 | |||
6524 | # Determine which variables are used. |
||
6525 | vars = pkt.Variables() |
||
6526 | ExamineVars(vars, structs_used_hash, variables_used_hash) |
||
6527 | |||
6528 | |||
6529 | # Print the hf variable declarations |
||
6530 | sorted_vars = list(variables_used_hash.values()) |
||
6531 | sorted_vars.sort() |
||
6532 | for var in sorted_vars: |
||
6533 | print("static int " + var.HFName() + " = -1;") |
||
6534 | |||
6535 | |||
6536 | # Print the value_string's |
||
6537 | for var in sorted_vars: |
||
6538 | if isinstance(var, val_string): |
||
6539 | print("") |
||
6540 | print(var.Code()) |
||
6541 | |||
6542 | # Determine which error codes are not used |
||
6543 | errors_not_used = {} |
||
6544 | # Copy the keys from the error list... |
||
6545 | for code in list(errors.keys()): |
||
6546 | errors_not_used[code] = 1 |
||
6547 | # ... and remove the ones that *were* used. |
||
6548 | for code in errors_used_list: |
||
6549 | del errors_not_used[code] |
||
6550 | |||
6551 | # Print a remark showing errors not used |
||
6552 | list_errors_not_used = list(errors_not_used.keys()) |
||
6553 | list_errors_not_used.sort() |
||
6554 | for code in list_errors_not_used: |
||
6555 | print("/* Error 0x%04x not used: %s */" % (code, errors[code])) |
||
6556 | print("\n") |
||
6557 | |||
6558 | # Print the errors table |
||
6559 | print("/* Error strings. */") |
||
6560 | print("static const char *ncp_errors[] = {") |
||
6561 | for code in errors_used_list: |
||
6562 | print(' /* %02d (0x%04x) */ "%s",' % (errors_used_hash[code], code, errors[code])) |
||
6563 | print("};\n") |
||
6564 | |||
6565 | |||
6566 | |||
6567 | |||
6568 | # Determine which groups are not used |
||
6569 | groups_not_used = {} |
||
6570 | # Copy the keys from the group list... |
||
6571 | for group in list(groups.keys()): |
||
6572 | groups_not_used[group] = 1 |
||
6573 | # ... and remove the ones that *were* used. |
||
6574 | for group in groups_used_list: |
||
6575 | del groups_not_used[group] |
||
6576 | |||
6577 | # Print a remark showing groups not used |
||
6578 | list_groups_not_used = list(groups_not_used.keys()) |
||
6579 | list_groups_not_used.sort() |
||
6580 | for group in list_groups_not_used: |
||
6581 | print("/* Group not used: %s = %s */" % (group, groups[group])) |
||
6582 | print("\n") |
||
6583 | |||
6584 | # Print the groups table |
||
6585 | print("/* Group strings. */") |
||
6586 | print("static const char *ncp_groups[] = {") |
||
6587 | for group in groups_used_list: |
||
6588 | print(' /* %02d (%s) */ "%s",' % (groups_used_hash[group], group, groups[group])) |
||
6589 | print("};\n") |
||
6590 | |||
6591 | # Print the group macros |
||
6592 | for group in groups_used_list: |
||
6593 | name = str.upper(group) |
||
6594 | print("#define NCP_GROUP_%s %d" % (name, groups_used_hash[group])) |
||
6595 | print("\n") |
||
6596 | |||
6597 | |||
6598 | # Print the conditional_records for all Request Conditions. |
||
6599 | num = 0 |
||
6600 | print("/* Request-Condition dfilter records. The NULL pointer") |
||
6601 | print(" is replaced by a pointer to the created dfilter_t. */") |
||
6602 | if len(global_req_cond) == 0: |
||
6603 | print("static conditional_record req_conds = NULL;") |
||
6604 | else: |
||
6605 | print("static conditional_record req_conds[] = {") |
||
6606 | req_cond_l = list(global_req_cond.keys()) |
||
6607 | req_cond_l.sort() |
||
6608 | for req_cond in req_cond_l: |
||
6609 | print(" { \"%s\", NULL }," % (req_cond,)) |
||
6610 | global_req_cond[req_cond] = num |
||
6611 | num = num + 1 |
||
6612 | print("};") |
||
6613 | print("#define NUM_REQ_CONDS %d" % (num,)) |
||
6614 | print("#define NO_REQ_COND NUM_REQ_CONDS\n\n") |
||
6615 | |||
6616 | |||
6617 | |||
6618 | # Print PTVC's for bitfields |
||
6619 | ett_list = [] |
||
6620 | print("/* PTVC records for bit-fields. */") |
||
6621 | for var in sorted_vars: |
||
6622 | if isinstance(var, bitfield): |
||
6623 | sub_vars_ptvc = var.SubVariablesPTVC() |
||
6624 | print("/* %s */" % (sub_vars_ptvc.Name())) |
||
6625 | print(sub_vars_ptvc.Code()) |
||
6626 | ett_list.append(sub_vars_ptvc.ETTName()) |
||
6627 | |||
6628 | |||
6629 | # Print the PTVC's for structures |
||
6630 | print("/* PTVC records for structs. */") |
||
6631 | # Sort them |
||
6632 | svhash = {} |
||
6633 | for svar in list(structs_used_hash.values()): |
||
6634 | svhash[svar.HFName()] = svar |
||
6635 | if svar.descr: |
||
6636 | ett_list.append(svar.ETTName()) |
||
6637 | |||
6638 | struct_vars = list(svhash.keys()) |
||
6639 | struct_vars.sort() |
||
6640 | for varname in struct_vars: |
||
6641 | var = svhash[varname] |
||
6642 | print(var.Code()) |
||
6643 | |||
6644 | ett_list.sort() |
||
6645 | |||
6646 | # Print info string structures |
||
6647 | print("/* Info Strings */") |
||
6648 | for pkt in packets: |
||
6649 | if pkt.req_info_str: |
||
6650 | name = pkt.InfoStrName() + "_req" |
||
6651 | var = pkt.req_info_str[0] |
||
6652 | print("static const info_string_t %s = {" % (name,)) |
||
6653 | print(" &%s," % (var.HFName(),)) |
||
6654 | print(' "%s",' % (pkt.req_info_str[1],)) |
||
6655 | print(' "%s"' % (pkt.req_info_str[2],)) |
||
6656 | print("};\n") |
||
6657 | |||
6658 | # Print regular PTVC's |
||
6659 | print("/* PTVC records. These are re-used to save space. */") |
||
6660 | for ptvc in ptvc_lists.Members(): |
||
6661 | if not ptvc.Null() and not ptvc.Empty(): |
||
6662 | print(ptvc.Code()) |
||
6663 | |||
6664 | # Print error_equivalency tables |
||
6665 | print("/* Error-Equivalency Tables. These are re-used to save space. */") |
||
6666 | for compcodes in compcode_lists.Members(): |
||
6667 | errors = compcodes.Records() |
||
6668 | # Make sure the record for error = 0x00 comes last. |
||
6669 | print("static const error_equivalency %s[] = {" % (compcodes.Name())) |
||
6670 | for error in errors: |
||
6671 | error_in_packet = error >> 8; |
||
6672 | ncp_error_index = errors_used_hash[error] |
||
6673 | print(" { 0x%02x, %d }, /* 0x%04x */" % (error_in_packet, |
||
6674 | ncp_error_index, error)) |
||
6675 | print(" { 0x00, -1 }\n};\n") |
||
6676 | |||
6677 | |||
6678 | |||
6679 | # Print integer arrays for all ncp_records that need |
||
6680 | # a list of req_cond_indexes. Do it "uniquely" to save space; |
||
6681 | # if multiple packets share the same set of req_cond's, |
||
6682 | # then they'll share the same integer array |
||
6683 | print("/* Request Condition Indexes */") |
||
6684 | # First, make them unique |
||
6685 | req_cond_collection = UniqueCollection("req_cond_collection") |
||
6686 | for pkt in packets: |
||
6687 | req_conds = pkt.CalculateReqConds() |
||
6688 | if req_conds: |
||
6689 | unique_list = req_cond_collection.Add(req_conds) |
||
6690 | pkt.SetReqConds(unique_list) |
||
6691 | else: |
||
6692 | pkt.SetReqConds(None) |
||
6693 | |||
6694 | # Print them |
||
6695 | for req_cond in req_cond_collection.Members(): |
||
6696 | sys.stdout.write("static const int %s[] = {" % (req_cond.Name())) |
||
6697 | sys.stdout.write(" ") |
||
6698 | vals = [] |
||
6699 | for text in req_cond.Records(): |
||
6700 | vals.append(global_req_cond[text]) |
||
6701 | vals.sort() |
||
6702 | for val in vals: |
||
6703 | sys.stdout.write("%s, " % (val,)) |
||
6704 | |||
6705 | print("-1 };") |
||
6706 | print("") |
||
6707 | |||
6708 | |||
6709 | |||
6710 | # Functions without length parameter |
||
6711 | funcs_without_length = {} |
||
6712 | |||
6713 | print("/* Forward declaration of expert info functions defined in ncp2222.inc */") |
||
6714 | for expert in expert_hash: |
||
6715 | print("static void %s_expert_func(ptvcursor_t *ptvc, packet_info *pinfo, const ncp_record *ncp_rec, gboolean request);" % expert) |
||
6716 | |||
6717 | # Print ncp_record packet records |
||
6718 | print("#define SUBFUNC_WITH_LENGTH 0x02") |
||
6719 | print("#define SUBFUNC_NO_LENGTH 0x01") |
||
6720 | print("#define NO_SUBFUNC 0x00") |
||
6721 | |||
6722 | print("/* ncp_record structs for packets */") |
||
6723 | print("static const ncp_record ncp_packets[] = {") |
||
6724 | for pkt in packets: |
||
6725 | if pkt.HasSubFunction(): |
||
6726 | func = pkt.FunctionCode('high') |
||
6727 | if pkt.HasLength(): |
||
6728 | subfunc_string = "SUBFUNC_WITH_LENGTH" |
||
6729 | # Ensure that the function either has a length param or not |
||
6730 | if func in funcs_without_length: |
||
6731 | sys.exit("Function 0x%04x sometimes has length param, sometimes not." \ |
||
6732 | % (pkt.FunctionCode(),)) |
||
6733 | else: |
||
6734 | subfunc_string = "SUBFUNC_NO_LENGTH" |
||
6735 | funcs_without_length[func] = 1 |
||
6736 | else: |
||
6737 | subfunc_string = "NO_SUBFUNC" |
||
6738 | sys.stdout.write(' { 0x%02x, 0x%02x, %s, "%s",' % (pkt.FunctionCode('high'), |
||
6739 | pkt.FunctionCode('low'), subfunc_string, pkt.Description())) |
||
6740 | |||
6741 | print(' %d /* %s */,' % (groups_used_hash[pkt.Group()], pkt.Group())) |
||
6742 | |||
6743 | ptvc = pkt.PTVCRequest() |
||
6744 | if not ptvc.Null() and not ptvc.Empty(): |
||
6745 | ptvc_request = ptvc.Name() |
||
6746 | else: |
||
6747 | ptvc_request = 'NULL' |
||
6748 | |||
6749 | ptvc = pkt.PTVCReply() |
||
6750 | if not ptvc.Null() and not ptvc.Empty(): |
||
6751 | ptvc_reply = ptvc.Name() |
||
6752 | else: |
||
6753 | ptvc_reply = 'NULL' |
||
6754 | |||
6755 | errors = pkt.CompletionCodes() |
||
6756 | |||
6757 | req_conds_obj = pkt.GetReqConds() |
||
6758 | if req_conds_obj: |
||
6759 | req_conds = req_conds_obj.Name() |
||
6760 | else: |
||
6761 | req_conds = "NULL" |
||
6762 | |||
6763 | if not req_conds_obj: |
||
6764 | req_cond_size = "NO_REQ_COND_SIZE" |
||
6765 | else: |
||
6766 | req_cond_size = pkt.ReqCondSize() |
||
6767 | if req_cond_size == None: |
||
6768 | msg.write("NCP packet %s needs a ReqCondSize*() call\n" \ |
||
6769 | % (pkt.CName(),)) |
||
6770 | sys.exit(1) |
||
6771 | |||
6772 | if pkt.expert_func: |
||
6773 | expert_func = "&" + pkt.expert_func + "_expert_func" |
||
6774 | else: |
||
6775 | expert_func = "NULL" |
||
6776 | |||
6777 | print(' %s, %s, %s, %s, %s, %s },\n' % \ |
||
6778 | (ptvc_request, ptvc_reply, errors.Name(), req_conds, |
||
6779 | req_cond_size, expert_func)) |
||
6780 | |||
6781 | print(' { 0, 0, 0, NULL, 0, NULL, NULL, NULL, NULL, NO_REQ_COND_SIZE, NULL }') |
||
6782 | print("};\n") |
||
6783 | |||
6784 | print("/* ncp funcs that require a subfunc */") |
||
6785 | print("static const guint8 ncp_func_requires_subfunc[] = {") |
||
6786 | hi_seen = {} |
||
6787 | for pkt in packets: |
||
6788 | if pkt.HasSubFunction(): |
||
6789 | hi_func = pkt.FunctionCode('high') |
||
6790 | if hi_func not in hi_seen: |
||
6791 | print(" 0x%02x," % (hi_func)) |
||
6792 | hi_seen[hi_func] = 1 |
||
6793 | print(" 0") |
||
6794 | print("};\n") |
||
6795 | |||
6796 | |||
6797 | print("/* ncp funcs that have no length parameter */") |
||
6798 | print("static const guint8 ncp_func_has_no_length_parameter[] = {") |
||
6799 | funcs = list(funcs_without_length.keys()) |
||
6800 | funcs.sort() |
||
6801 | for func in funcs: |
||
6802 | print(" 0x%02x," % (func,)) |
||
6803 | print(" 0") |
||
6804 | print("};\n") |
||
6805 | |||
6806 | print("") |
||
6807 | |||
6808 | # proto_register_ncp2222() |
||
6809 | print(""" |
||
6810 | static const value_string connection_status_vals[] = { |
||
6811 | { 0x00, "Ok" }, |
||
6812 | { 0x01, "Bad Service Connection" }, |
||
6813 | { 0x10, "File Server is Down" }, |
||
6814 | { 0x40, "Broadcast Message Pending" }, |
||
6815 | { 0, NULL } |
||
6816 | }; |
||
6817 | |||
6818 | #include "packet-ncp2222.inc" |
||
6819 | |||
6820 | void |
||
6821 | proto_register_ncp2222(void) |
||
6822 | { |
||
6823 | |||
6824 | static hf_register_info hf[] = { |
||
6825 | { &hf_ncp_number_of_data_streams_long, |
||
6826 | { "Number of Data Streams", "ncp.number_of_data_streams_long", FT_UINT32, BASE_DEC, NULL, 0x0, NULL, HFILL }}, |
||
6827 | |||
6828 | { &hf_ncp_func, |
||
6829 | { "Function", "ncp.func", FT_UINT8, BASE_HEX, NULL, 0x0, NULL, HFILL }}, |
||
6830 | |||
6831 | { &hf_ncp_length, |
||
6832 | { "Packet Length", "ncp.length", FT_UINT16, BASE_DEC, NULL, 0x0, NULL, HFILL }}, |
||
6833 | |||
6834 | { &hf_ncp_subfunc, |
||
6835 | { "SubFunction", "ncp.subfunc", FT_UINT8, BASE_DEC_HEX, NULL, 0x0, NULL, HFILL }}, |
||
6836 | |||
6837 | { &hf_ncp_completion_code, |
||
6838 | { "Completion Code", "ncp.completion_code", FT_UINT8, BASE_HEX, NULL, 0x0, NULL, HFILL }}, |
||
6839 | |||
6840 | { &hf_ncp_group, |
||
6841 | { "NCP Group Type", "ncp.group", FT_UINT8, BASE_DEC, NULL, 0x0, NULL, HFILL }}, |
||
6842 | |||
6843 | { &hf_ncp_fragment_handle, |
||
6844 | { "NDS Fragment Handle", "ncp.ndsfrag", FT_UINT32, BASE_HEX, NULL, 0x0, NULL, HFILL }}, |
||
6845 | |||
6846 | { &hf_ncp_fragment_size, |
||
6847 | { "NDS Fragment Size", "ncp.ndsfragsize", FT_UINT32, BASE_DEC, NULL, 0x0, NULL, HFILL }}, |
||
6848 | |||
6849 | { &hf_ncp_message_size, |
||
6850 | { "Message Size", "ncp.ndsmessagesize", FT_UINT32, BASE_DEC, NULL, 0x0, NULL, HFILL }}, |
||
6851 | |||
6852 | { &hf_ncp_nds_flag, |
||
6853 | { "NDS Protocol Flags", "ncp.ndsflag", FT_UINT16, BASE_HEX, NULL, 0x0, NULL, HFILL }}, |
||
6854 | |||
6855 | { &hf_ncp_nds_verb, |
||
6856 | { "NDS Verb", "ncp.ndsverb", FT_UINT8, BASE_HEX, VALS(ncp_nds_verb_vals), 0x0, NULL, HFILL }}, |
||
6857 | |||
6858 | { &hf_ping_version, |
||
6859 | { "NDS Version", "ncp.ping_version", FT_UINT16, BASE_DEC, NULL, 0x0, NULL, HFILL }}, |
||
6860 | |||
6861 | #if 0 /* Unused ? */ |
||
6862 | { &hf_nds_version, |
||
6863 | { "NDS Version", "ncp.nds_version", FT_UINT32, BASE_DEC, NULL, 0x0, NULL, HFILL }}, |
||
6864 | #endif |
||
6865 | |||
6866 | { &hf_nds_tree_name, |
||
6867 | { "NDS Tree Name", "ncp.nds_tree_name", FT_STRING, BASE_NONE, NULL, 0x0, NULL, HFILL }}, |
||
6868 | |||
6869 | /* |
||
6870 | * XXX - the page at |
||
6871 | * |
||
6872 | * http://www.odyssea.com/whats_new/tcpipnet/tcpipnet.html |
||
6873 | * |
||
6874 | * says of the connection status "The Connection Code field may |
||
6875 | * contain values that indicate the status of the client host to |
||
6876 | * server connection. A value of 1 in the fourth bit of this data |
||
6877 | * byte indicates that the server is unavailable (server was |
||
6878 | * downed). |
||
6879 | * |
||
6880 | * The page at |
||
6881 | * |
||
6882 | * http://www.unm.edu/~network/presentations/course/appendix/appendix_f/tsld088.htm |
||
6883 | * |
||
6884 | * says that bit 0 is "bad service", bit 2 is "no connection |
||
6885 | * available", bit 4 is "service down", and bit 6 is "server |
||
6886 | * has a broadcast message waiting for the client". |
||
6887 | * |
||
6888 | * Should it be displayed in hex, and should those bits (and any |
||
6889 | * other bits with significance) be displayed as bitfields |
||
6890 | * underneath it? |
||
6891 | */ |
||
6892 | { &hf_ncp_connection_status, |
||
6893 | { "Connection Status", "ncp.connection_status", FT_UINT8, BASE_DEC, VALS(connection_status_vals), 0x0, NULL, HFILL }}, |
||
6894 | |||
6895 | { &hf_ncp_req_frame_num, |
||
6896 | { "Response to Request in Frame Number", "ncp.req_frame_num", FT_FRAMENUM, BASE_NONE, NULL, 0x0, NULL, HFILL }}, |
||
6897 | |||
6898 | { &hf_ncp_req_frame_time, |
||
6899 | { "Time from Request", "ncp.time", FT_RELATIVE_TIME, BASE_NONE, NULL, 0x0, "Time between request and response in seconds", HFILL }}, |
||
6900 | |||
6901 | #if 0 /* Unused ? */ |
||
6902 | { &hf_nds_flags, |
||
6903 | { "NDS Return Flags", "ncp.nds_flags", FT_UINT32, BASE_HEX, NULL, 0x0, NULL, HFILL }}, |
||
6904 | #endif |
||
6905 | |||
6906 | { &hf_nds_reply_depth, |
||
6907 | { "Distance from Root", "ncp.ndsdepth", FT_UINT32, BASE_DEC, NULL, 0x0, NULL, HFILL }}, |
||
6908 | |||
6909 | { &hf_nds_reply_rev, |
||
6910 | { "NDS Revision", "ncp.ndsrev", FT_UINT32, BASE_HEX, NULL, 0x0, NULL, HFILL }}, |
||
6911 | |||
6912 | { &hf_nds_reply_flags, |
||
6913 | { "Flags", "ncp.ndsflags", FT_UINT32, BASE_HEX, NULL, 0x0, NULL, HFILL }}, |
||
6914 | |||
6915 | { &hf_nds_p1type, |
||
6916 | { "NDS Parameter Type", "ncp.p1type", FT_UINT8, BASE_DEC, NULL, 0x0, NULL, HFILL }}, |
||
6917 | |||
6918 | { &hf_nds_uint32value, |
||
6919 | { "NDS Value", "ncp.uint32value", FT_UINT32, BASE_DEC, NULL, 0x0, NULL, HFILL }}, |
||
6920 | |||
6921 | { &hf_nds_bit1, |
||
6922 | { "Typeless", "ncp.nds_bit1", FT_BOOLEAN, 16, NULL, 0x00000001, NULL, HFILL }}, |
||
6923 | |||
6924 | { &hf_nds_bit2, |
||
6925 | { "All Containers", "ncp.nds_bit2", FT_BOOLEAN, 16, NULL, 0x00000002, NULL, HFILL }}, |
||
6926 | |||
6927 | { &hf_nds_bit3, |
||
6928 | { "Slashed", "ncp.nds_bit3", FT_BOOLEAN, 16, NULL, 0x00000004, NULL, HFILL }}, |
||
6929 | |||
6930 | { &hf_nds_bit4, |
||
6931 | { "Dotted", "ncp.nds_bit4", FT_BOOLEAN, 16, NULL, 0x00000008, NULL, HFILL }}, |
||
6932 | |||
6933 | { &hf_nds_bit5, |
||
6934 | { "Tuned", "ncp.nds_bit5", FT_BOOLEAN, 16, NULL, 0x00000010, NULL, HFILL }}, |
||
6935 | |||
6936 | { &hf_nds_bit6, |
||
6937 | { "Not Defined", "ncp.nds_bit6", FT_BOOLEAN, 16, NULL, 0x00000020, NULL, HFILL }}, |
||
6938 | |||
6939 | { &hf_nds_bit7, |
||
6940 | { "Not Defined", "ncp.nds_bit7", FT_BOOLEAN, 16, NULL, 0x00000040, NULL, HFILL }}, |
||
6941 | |||
6942 | { &hf_nds_bit8, |
||
6943 | { "Not Defined", "ncp.nds_bit8", FT_BOOLEAN, 16, NULL, 0x00000080, NULL, HFILL }}, |
||
6944 | |||
6945 | { &hf_nds_bit9, |
||
6946 | { "Not Defined", "ncp.nds_bit9", FT_BOOLEAN, 16, NULL, 0x00000100, NULL, HFILL }}, |
||
6947 | |||
6948 | { &hf_nds_bit10, |
||
6949 | { "Not Defined", "ncp.nds_bit10", FT_BOOLEAN, 16, NULL, 0x00000200, NULL, HFILL }}, |
||
6950 | |||
6951 | { &hf_nds_bit11, |
||
6952 | { "Not Defined", "ncp.nds_bit11", FT_BOOLEAN, 16, NULL, 0x00000400, NULL, HFILL }}, |
||
6953 | |||
6954 | { &hf_nds_bit12, |
||
6955 | { "Not Defined", "ncp.nds_bit12", FT_BOOLEAN, 16, NULL, 0x00000800, NULL, HFILL }}, |
||
6956 | |||
6957 | { &hf_nds_bit13, |
||
6958 | { "Not Defined", "ncp.nds_bit13", FT_BOOLEAN, 16, NULL, 0x00001000, NULL, HFILL }}, |
||
6959 | |||
6960 | { &hf_nds_bit14, |
||
6961 | { "Not Defined", "ncp.nds_bit14", FT_BOOLEAN, 16, NULL, 0x00002000, NULL, HFILL }}, |
||
6962 | |||
6963 | { &hf_nds_bit15, |
||
6964 | { "Not Defined", "ncp.nds_bit15", FT_BOOLEAN, 16, NULL, 0x00004000, NULL, HFILL }}, |
||
6965 | |||
6966 | { &hf_nds_bit16, |
||
6967 | { "Not Defined", "ncp.nds_bit16", FT_BOOLEAN, 16, NULL, 0x00008000, NULL, HFILL }}, |
||
6968 | |||
6969 | { &hf_outflags, |
||
6970 | { "Output Flags", "ncp.outflags", FT_UINT32, BASE_HEX, NULL, 0x0, NULL, HFILL }}, |
||
6971 | |||
6972 | { &hf_bit1outflags, |
||
6973 | { "Output Flags", "ncp.bit1outflags", FT_BOOLEAN, 16, NULL, 0x00000001, NULL, HFILL }}, |
||
6974 | |||
6975 | { &hf_bit2outflags, |
||
6976 | { "Entry ID", "ncp.bit2outflags", FT_BOOLEAN, 16, NULL, 0x00000002, NULL, HFILL }}, |
||
6977 | |||
6978 | { &hf_bit3outflags, |
||
6979 | { "Replica State", "ncp.bit3outflags", FT_BOOLEAN, 16, NULL, 0x00000004, NULL, HFILL }}, |
||
6980 | |||
6981 | { &hf_bit4outflags, |
||
6982 | { "Modification Timestamp", "ncp.bit4outflags", FT_BOOLEAN, 16, NULL, 0x00000008, NULL, HFILL }}, |
||
6983 | |||
6984 | { &hf_bit5outflags, |
||
6985 | { "Purge Time", "ncp.bit5outflags", FT_BOOLEAN, 16, NULL, 0x00000010, NULL, HFILL }}, |
||
6986 | |||
6987 | { &hf_bit6outflags, |
||
6988 | { "Local Partition ID", "ncp.bit6outflags", FT_BOOLEAN, 16, NULL, 0x00000020, NULL, HFILL }}, |
||
6989 | |||
6990 | { &hf_bit7outflags, |
||
6991 | { "Distinguished Name", "ncp.bit7outflags", FT_BOOLEAN, 16, NULL, 0x00000040, NULL, HFILL }}, |
||
6992 | |||
6993 | { &hf_bit8outflags, |
||
6994 | { "Replica Type", "ncp.bit8outflags", FT_BOOLEAN, 16, NULL, 0x00000080, NULL, HFILL }}, |
||
6995 | |||
6996 | { &hf_bit9outflags, |
||
6997 | { "Partition Busy", "ncp.bit9outflags", FT_BOOLEAN, 16, NULL, 0x00000100, NULL, HFILL }}, |
||
6998 | |||
6999 | { &hf_bit10outflags, |
||
7000 | { "Not Defined", "ncp.bit10outflags", FT_BOOLEAN, 16, NULL, 0x00000200, NULL, HFILL }}, |
||
7001 | |||
7002 | { &hf_bit11outflags, |
||
7003 | { "Not Defined", "ncp.bit11outflags", FT_BOOLEAN, 16, NULL, 0x00000400, NULL, HFILL }}, |
||
7004 | |||
7005 | { &hf_bit12outflags, |
||
7006 | { "Not Defined", "ncp.bit12outflags", FT_BOOLEAN, 16, NULL, 0x00000800, NULL, HFILL }}, |
||
7007 | |||
7008 | { &hf_bit13outflags, |
||
7009 | { "Not Defined", "ncp.bit13outflags", FT_BOOLEAN, 16, NULL, 0x00001000, NULL, HFILL }}, |
||
7010 | |||
7011 | { &hf_bit14outflags, |
||
7012 | { "Not Defined", "ncp.bit14outflags", FT_BOOLEAN, 16, NULL, 0x00002000, NULL, HFILL }}, |
||
7013 | |||
7014 | { &hf_bit15outflags, |
||
7015 | { "Not Defined", "ncp.bit15outflags", FT_BOOLEAN, 16, NULL, 0x00004000, NULL, HFILL }}, |
||
7016 | |||
7017 | { &hf_bit16outflags, |
||
7018 | { "Not Defined", "ncp.bit16outflags", FT_BOOLEAN, 16, NULL, 0x00008000, NULL, HFILL }}, |
||
7019 | |||
7020 | { &hf_bit1nflags, |
||
7021 | { "Entry ID", "ncp.bit1nflags", FT_BOOLEAN, 16, NULL, 0x00000001, NULL, HFILL }}, |
||
7022 | |||
7023 | { &hf_bit2nflags, |
||
7024 | { "Readable", "ncp.bit2nflags", FT_BOOLEAN, 16, NULL, 0x00000002, NULL, HFILL }}, |
||
7025 | |||
7026 | { &hf_bit3nflags, |
||
7027 | { "Writeable", "ncp.bit3nflags", FT_BOOLEAN, 16, NULL, 0x00000004, NULL, HFILL }}, |
||
7028 | |||
7029 | { &hf_bit4nflags, |
||
7030 | { "Master", "ncp.bit4nflags", FT_BOOLEAN, 16, NULL, 0x00000008, NULL, HFILL }}, |
||
7031 | |||
7032 | { &hf_bit5nflags, |
||
7033 | { "Create ID", "ncp.bit5nflags", FT_BOOLEAN, 16, NULL, 0x00000010, NULL, HFILL }}, |
||
7034 | |||
7035 | { &hf_bit6nflags, |
||
7036 | { "Walk Tree", "ncp.bit6nflags", FT_BOOLEAN, 16, NULL, 0x00000020, NULL, HFILL }}, |
||
7037 | |||
7038 | { &hf_bit7nflags, |
||
7039 | { "Dereference Alias", "ncp.bit7nflags", FT_BOOLEAN, 16, NULL, 0x00000040, NULL, HFILL }}, |
||
7040 | |||
7041 | { &hf_bit8nflags, |
||
7042 | { "Not Defined", "ncp.bit8nflags", FT_BOOLEAN, 16, NULL, 0x00000080, NULL, HFILL }}, |
||
7043 | |||
7044 | { &hf_bit9nflags, |
||
7045 | { "Not Defined", "ncp.bit9nflags", FT_BOOLEAN, 16, NULL, 0x00000100, NULL, HFILL }}, |
||
7046 | |||
7047 | { &hf_bit10nflags, |
||
7048 | { "Not Defined", "ncp.bit10nflags", FT_BOOLEAN, 16, NULL, 0x00000200, NULL, HFILL }}, |
||
7049 | |||
7050 | { &hf_bit11nflags, |
||
7051 | { "Not Defined", "ncp.bit11nflags", FT_BOOLEAN, 16, NULL, 0x00000400, NULL, HFILL }}, |
||
7052 | |||
7053 | { &hf_bit12nflags, |
||
7054 | { "Not Defined", "ncp.bit12nflags", FT_BOOLEAN, 16, NULL, 0x00000800, NULL, HFILL }}, |
||
7055 | |||
7056 | { &hf_bit13nflags, |
||
7057 | { "Not Defined", "ncp.bit13nflags", FT_BOOLEAN, 16, NULL, 0x00001000, NULL, HFILL }}, |
||
7058 | |||
7059 | { &hf_bit14nflags, |
||
7060 | { "Prefer Referrals", "ncp.bit14nflags", FT_BOOLEAN, 16, NULL, 0x00002000, NULL, HFILL }}, |
||
7061 | |||
7062 | { &hf_bit15nflags, |
||
7063 | { "Prefer Only Referrals", "ncp.bit15nflags", FT_BOOLEAN, 16, NULL, 0x00004000, NULL, HFILL }}, |
||
7064 | |||
7065 | { &hf_bit16nflags, |
||
7066 | { "Not Defined", "ncp.bit16nflags", FT_BOOLEAN, 16, NULL, 0x00008000, NULL, HFILL }}, |
||
7067 | |||
7068 | { &hf_bit1rflags, |
||
7069 | { "Typeless", "ncp.bit1rflags", FT_BOOLEAN, 16, NULL, 0x00000001, NULL, HFILL }}, |
||
7070 | |||
7071 | { &hf_bit2rflags, |
||
7072 | { "Slashed", "ncp.bit2rflags", FT_BOOLEAN, 16, NULL, 0x00000002, NULL, HFILL }}, |
||
7073 | |||
7074 | { &hf_bit3rflags, |
||
7075 | { "Dotted", "ncp.bit3rflags", FT_BOOLEAN, 16, NULL, 0x00000004, NULL, HFILL }}, |
||
7076 | |||
7077 | { &hf_bit4rflags, |
||
7078 | { "Tuned", "ncp.bit4rflags", FT_BOOLEAN, 16, NULL, 0x00000008, NULL, HFILL }}, |
||
7079 | |||
7080 | { &hf_bit5rflags, |
||
7081 | { "Not Defined", "ncp.bit5rflags", FT_BOOLEAN, 16, NULL, 0x00000010, NULL, HFILL }}, |
||
7082 | |||
7083 | { &hf_bit6rflags, |
||
7084 | { "Not Defined", "ncp.bit6rflags", FT_BOOLEAN, 16, NULL, 0x00000020, NULL, HFILL }}, |
||
7085 | |||
7086 | { &hf_bit7rflags, |
||
7087 | { "Not Defined", "ncp.bit7rflags", FT_BOOLEAN, 16, NULL, 0x00000040, NULL, HFILL }}, |
||
7088 | |||
7089 | { &hf_bit8rflags, |
||
7090 | { "Not Defined", "ncp.bit8rflags", FT_BOOLEAN, 16, NULL, 0x00000080, NULL, HFILL }}, |
||
7091 | |||
7092 | { &hf_bit9rflags, |
||
7093 | { "Not Defined", "ncp.bit9rflags", FT_BOOLEAN, 16, NULL, 0x00000100, NULL, HFILL }}, |
||
7094 | |||
7095 | { &hf_bit10rflags, |
||
7096 | { "Not Defined", "ncp.bit10rflags", FT_BOOLEAN, 16, NULL, 0x00000200, NULL, HFILL }}, |
||
7097 | |||
7098 | { &hf_bit11rflags, |
||
7099 | { "Not Defined", "ncp.bit11rflags", FT_BOOLEAN, 16, NULL, 0x00000400, NULL, HFILL }}, |
||
7100 | |||
7101 | { &hf_bit12rflags, |
||
7102 | { "Not Defined", "ncp.bit12rflags", FT_BOOLEAN, 16, NULL, 0x00000800, NULL, HFILL }}, |
||
7103 | |||
7104 | { &hf_bit13rflags, |
||
7105 | { "Not Defined", "ncp.bit13rflags", FT_BOOLEAN, 16, NULL, 0x00001000, NULL, HFILL }}, |
||
7106 | |||
7107 | { &hf_bit14rflags, |
||
7108 | { "Not Defined", "ncp.bit14rflags", FT_BOOLEAN, 16, NULL, 0x00002000, NULL, HFILL }}, |
||
7109 | |||
7110 | { &hf_bit15rflags, |
||
7111 | { "Not Defined", "ncp.bit15rflags", FT_BOOLEAN, 16, NULL, 0x00004000, NULL, HFILL }}, |
||
7112 | |||
7113 | { &hf_bit16rflags, |
||
7114 | { "Not Defined", "ncp.bit16rflags", FT_BOOLEAN, 16, NULL, 0x00008000, NULL, HFILL }}, |
||
7115 | |||
7116 | { &hf_eflags, |
||
7117 | { "Entry Flags", "ncp.eflags", FT_UINT32, BASE_HEX, NULL, 0x0, NULL, HFILL }}, |
||
7118 | |||
7119 | { &hf_bit1eflags, |
||
7120 | { "Alias Entry", "ncp.bit1eflags", FT_BOOLEAN, 16, NULL, 0x00000001, NULL, HFILL }}, |
||
7121 | |||
7122 | { &hf_bit2eflags, |
||
7123 | { "Partition Root", "ncp.bit2eflags", FT_BOOLEAN, 16, NULL, 0x00000002, NULL, HFILL }}, |
||
7124 | |||
7125 | { &hf_bit3eflags, |
||
7126 | { "Container Entry", "ncp.bit3eflags", FT_BOOLEAN, 16, NULL, 0x00000004, NULL, HFILL }}, |
||
7127 | |||
7128 | { &hf_bit4eflags, |
||
7129 | { "Container Alias", "ncp.bit4eflags", FT_BOOLEAN, 16, NULL, 0x00000008, NULL, HFILL }}, |
||
7130 | |||
7131 | { &hf_bit5eflags, |
||
7132 | { "Matches List Filter", "ncp.bit5eflags", FT_BOOLEAN, 16, NULL, 0x00000010, NULL, HFILL }}, |
||
7133 | |||
7134 | { &hf_bit6eflags, |
||
7135 | { "Reference Entry", "ncp.bit6eflags", FT_BOOLEAN, 16, NULL, 0x00000020, NULL, HFILL }}, |
||
7136 | |||
7137 | { &hf_bit7eflags, |
||
7138 | { "40x Reference Entry", "ncp.bit7eflags", FT_BOOLEAN, 16, NULL, 0x00000040, NULL, HFILL }}, |
||
7139 | |||
7140 | { &hf_bit8eflags, |
||
7141 | { "Back Linked", "ncp.bit8eflags", FT_BOOLEAN, 16, NULL, 0x00000080, NULL, HFILL }}, |
||
7142 | |||
7143 | { &hf_bit9eflags, |
||
7144 | { "New Entry", "ncp.bit9eflags", FT_BOOLEAN, 16, NULL, 0x00000100, NULL, HFILL }}, |
||
7145 | |||
7146 | { &hf_bit10eflags, |
||
7147 | { "Temporary Reference", "ncp.bit10eflags", FT_BOOLEAN, 16, NULL, 0x00000200, NULL, HFILL }}, |
||
7148 | |||
7149 | { &hf_bit11eflags, |
||
7150 | { "Audited", "ncp.bit11eflags", FT_BOOLEAN, 16, NULL, 0x00000400, NULL, HFILL }}, |
||
7151 | |||
7152 | { &hf_bit12eflags, |
||
7153 | { "Entry Not Present", "ncp.bit12eflags", FT_BOOLEAN, 16, NULL, 0x00000800, NULL, HFILL }}, |
||
7154 | |||
7155 | { &hf_bit13eflags, |
||
7156 | { "Entry Verify CTS", "ncp.bit13eflags", FT_BOOLEAN, 16, NULL, 0x00001000, NULL, HFILL }}, |
||
7157 | |||
7158 | { &hf_bit14eflags, |
||
7159 | { "Entry Damaged", "ncp.bit14eflags", FT_BOOLEAN, 16, NULL, 0x00002000, NULL, HFILL }}, |
||
7160 | |||
7161 | { &hf_bit15eflags, |
||
7162 | { "Not Defined", "ncp.bit15rflags", FT_BOOLEAN, 16, NULL, 0x00004000, NULL, HFILL }}, |
||
7163 | |||
7164 | { &hf_bit16eflags, |
||
7165 | { "Not Defined", "ncp.bit16rflags", FT_BOOLEAN, 16, NULL, 0x00008000, NULL, HFILL }}, |
||
7166 | |||
7167 | { &hf_infoflagsl, |
||
7168 | { "Information Flags (low) Byte", "ncp.infoflagsl", FT_UINT16, BASE_HEX, NULL, 0x0, NULL, HFILL }}, |
||
7169 | |||
7170 | { &hf_retinfoflagsl, |
||
7171 | { "Return Information Flags (low) Byte", "ncp.retinfoflagsl", FT_UINT16, BASE_HEX, NULL, 0x0, NULL, HFILL }}, |
||
7172 | |||
7173 | { &hf_bit1infoflagsl, |
||
7174 | { "Output Flags", "ncp.bit1infoflagsl", FT_BOOLEAN, 16, NULL, 0x00000001, NULL, HFILL }}, |
||
7175 | |||
7176 | { &hf_bit2infoflagsl, |
||
7177 | { "Entry ID", "ncp.bit2infoflagsl", FT_BOOLEAN, 16, NULL, 0x00000002, NULL, HFILL }}, |
||
7178 | |||
7179 | { &hf_bit3infoflagsl, |
||
7180 | { "Entry Flags", "ncp.bit3infoflagsl", FT_BOOLEAN, 16, NULL, 0x00000004, NULL, HFILL }}, |
||
7181 | |||
7182 | { &hf_bit4infoflagsl, |
||
7183 | { "Subordinate Count", "ncp.bit4infoflagsl", FT_BOOLEAN, 16, NULL, 0x00000008, NULL, HFILL }}, |
||
7184 | |||
7185 | { &hf_bit5infoflagsl, |
||
7186 | { "Modification Time", "ncp.bit5infoflagsl", FT_BOOLEAN, 16, NULL, 0x00000010, NULL, HFILL }}, |
||
7187 | |||
7188 | { &hf_bit6infoflagsl, |
||
7189 | { "Modification Timestamp", "ncp.bit6infoflagsl", FT_BOOLEAN, 16, NULL, 0x00000020, NULL, HFILL }}, |
||
7190 | |||
7191 | { &hf_bit7infoflagsl, |
||
7192 | { "Creation Timestamp", "ncp.bit7infoflagsl", FT_BOOLEAN, 16, NULL, 0x00000040, NULL, HFILL }}, |
||
7193 | |||
7194 | { &hf_bit8infoflagsl, |
||
7195 | { "Partition Root ID", "ncp.bit8infoflagsl", FT_BOOLEAN, 16, NULL, 0x00000080, NULL, HFILL }}, |
||
7196 | |||
7197 | { &hf_bit9infoflagsl, |
||
7198 | { "Parent ID", "ncp.bit9infoflagsl", FT_BOOLEAN, 16, NULL, 0x00000100, NULL, HFILL }}, |
||
7199 | |||
7200 | { &hf_bit10infoflagsl, |
||
7201 | { "Revision Count", "ncp.bit10infoflagsl", FT_BOOLEAN, 16, NULL, 0x00000200, NULL, HFILL }}, |
||
7202 | |||
7203 | { &hf_bit11infoflagsl, |
||
7204 | { "Replica Type", "ncp.bit11infoflagsl", FT_BOOLEAN, 16, NULL, 0x00000400, NULL, HFILL }}, |
||
7205 | |||
7206 | { &hf_bit12infoflagsl, |
||
7207 | { "Base Class", "ncp.bit12infoflagsl", FT_BOOLEAN, 16, NULL, 0x00000800, NULL, HFILL }}, |
||
7208 | |||
7209 | { &hf_bit13infoflagsl, |
||
7210 | { "Relative Distinguished Name", "ncp.bit13infoflagsl", FT_BOOLEAN, 16, NULL, 0x00001000, NULL, HFILL }}, |
||
7211 | |||
7212 | { &hf_bit14infoflagsl, |
||
7213 | { "Distinguished Name", "ncp.bit14infoflagsl", FT_BOOLEAN, 16, NULL, 0x00002000, NULL, HFILL }}, |
||
7214 | |||
7215 | { &hf_bit15infoflagsl, |
||
7216 | { "Root Distinguished Name", "ncp.bit15infoflagsl", FT_BOOLEAN, 16, NULL, 0x00004000, NULL, HFILL }}, |
||
7217 | |||
7218 | { &hf_bit16infoflagsl, |
||
7219 | { "Parent Distinguished Name", "ncp.bit16infoflagsl", FT_BOOLEAN, 16, NULL, 0x00008000, NULL, HFILL }}, |
||
7220 | |||
7221 | { &hf_infoflagsh, |
||
7222 | { "Information Flags (high) Byte", "ncp.infoflagsh", FT_UINT16, BASE_HEX, NULL, 0x0, NULL, HFILL }}, |
||
7223 | |||
7224 | { &hf_bit1infoflagsh, |
||
7225 | { "Purge Time", "ncp.bit1infoflagsh", FT_BOOLEAN, 16, NULL, 0x00000001, NULL, HFILL }}, |
||
7226 | |||
7227 | { &hf_bit2infoflagsh, |
||
7228 | { "Dereference Base Class", "ncp.bit2infoflagsh", FT_BOOLEAN, 16, NULL, 0x00000002, NULL, HFILL }}, |
||
7229 | |||
7230 | { &hf_bit3infoflagsh, |
||
7231 | { "Not Defined", "ncp.bit3infoflagsh", FT_BOOLEAN, 16, NULL, 0x00000004, NULL, HFILL }}, |
||
7232 | |||
7233 | { &hf_bit4infoflagsh, |
||
7234 | { "Not Defined", "ncp.bit4infoflagsh", FT_BOOLEAN, 16, NULL, 0x00000008, NULL, HFILL }}, |
||
7235 | |||
7236 | { &hf_bit5infoflagsh, |
||
7237 | { "Not Defined", "ncp.bit5infoflagsh", FT_BOOLEAN, 16, NULL, 0x00000010, NULL, HFILL }}, |
||
7238 | |||
7239 | { &hf_bit6infoflagsh, |
||
7240 | { "Not Defined", "ncp.bit6infoflagsh", FT_BOOLEAN, 16, NULL, 0x00000020, NULL, HFILL }}, |
||
7241 | |||
7242 | { &hf_bit7infoflagsh, |
||
7243 | { "Not Defined", "ncp.bit7infoflagsh", FT_BOOLEAN, 16, NULL, 0x00000040, NULL, HFILL }}, |
||
7244 | |||
7245 | { &hf_bit8infoflagsh, |
||
7246 | { "Not Defined", "ncp.bit8infoflagsh", FT_BOOLEAN, 16, NULL, 0x00000080, NULL, HFILL }}, |
||
7247 | |||
7248 | { &hf_bit9infoflagsh, |
||
7249 | { "Not Defined", "ncp.bit9infoflagsh", FT_BOOLEAN, 16, NULL, 0x00000100, NULL, HFILL }}, |
||
7250 | |||
7251 | { &hf_bit10infoflagsh, |
||
7252 | { "Not Defined", "ncp.bit10infoflagsh", FT_BOOLEAN, 16, NULL, 0x00000200, NULL, HFILL }}, |
||
7253 | |||
7254 | { &hf_bit11infoflagsh, |
||
7255 | { "Not Defined", "ncp.bit11infoflagsh", FT_BOOLEAN, 16, NULL, 0x00000400, NULL, HFILL }}, |
||
7256 | |||
7257 | { &hf_bit12infoflagsh, |
||
7258 | { "Not Defined", "ncp.bit12infoflagshs", FT_BOOLEAN, 16, NULL, 0x00000800, NULL, HFILL }}, |
||
7259 | |||
7260 | { &hf_bit13infoflagsh, |
||
7261 | { "Not Defined", "ncp.bit13infoflagsh", FT_BOOLEAN, 16, NULL, 0x00001000, NULL, HFILL }}, |
||
7262 | |||
7263 | { &hf_bit14infoflagsh, |
||
7264 | { "Not Defined", "ncp.bit14infoflagsh", FT_BOOLEAN, 16, NULL, 0x00002000, NULL, HFILL }}, |
||
7265 | |||
7266 | { &hf_bit15infoflagsh, |
||
7267 | { "Not Defined", "ncp.bit15infoflagsh", FT_BOOLEAN, 16, NULL, 0x00004000, NULL, HFILL }}, |
||
7268 | |||
7269 | { &hf_bit16infoflagsh, |
||
7270 | { "Not Defined", "ncp.bit16infoflagsh", FT_BOOLEAN, 16, NULL, 0x00008000, NULL, HFILL }}, |
||
7271 | |||
7272 | { &hf_retinfoflagsh, |
||
7273 | { "Return Information Flags (high) Byte", "ncp.retinfoflagsh", FT_UINT16, BASE_HEX, NULL, 0x0, NULL, HFILL }}, |
||
7274 | |||
7275 | { &hf_bit1retinfoflagsh, |
||
7276 | { "Purge Time", "ncp.bit1retinfoflagsh", FT_BOOLEAN, 16, NULL, 0x00000001, NULL, HFILL }}, |
||
7277 | |||
7278 | { &hf_bit2retinfoflagsh, |
||
7279 | { "Dereference Base Class", "ncp.bit2retinfoflagsh", FT_BOOLEAN, 16, NULL, 0x00000002, NULL, HFILL }}, |
||
7280 | |||
7281 | { &hf_bit3retinfoflagsh, |
||
7282 | { "Replica Number", "ncp.bit3retinfoflagsh", FT_BOOLEAN, 16, NULL, 0x00000004, NULL, HFILL }}, |
||
7283 | |||
7284 | { &hf_bit4retinfoflagsh, |
||
7285 | { "Replica State", "ncp.bit4retinfoflagsh", FT_BOOLEAN, 16, NULL, 0x00000008, NULL, HFILL }}, |
||
7286 | |||
7287 | { &hf_bit5retinfoflagsh, |
||
7288 | { "Federation Boundary", "ncp.bit5retinfoflagsh", FT_BOOLEAN, 16, NULL, 0x00000010, NULL, HFILL }}, |
||
7289 | |||
7290 | { &hf_bit6retinfoflagsh, |
||
7291 | { "Schema Boundary", "ncp.bit6retinfoflagsh", FT_BOOLEAN, 16, NULL, 0x00000020, NULL, HFILL }}, |
||
7292 | |||
7293 | { &hf_bit7retinfoflagsh, |
||
7294 | { "Federation Boundary ID", "ncp.bit7retinfoflagsh", FT_BOOLEAN, 16, NULL, 0x00000040, NULL, HFILL }}, |
||
7295 | |||
7296 | { &hf_bit8retinfoflagsh, |
||
7297 | { "Schema Boundary ID", "ncp.bit8retinfoflagsh", FT_BOOLEAN, 16, NULL, 0x00000080, NULL, HFILL }}, |
||
7298 | |||
7299 | { &hf_bit9retinfoflagsh, |
||
7300 | { "Current Subcount", "ncp.bit9retinfoflagsh", FT_BOOLEAN, 16, NULL, 0x00000100, NULL, HFILL }}, |
||
7301 | |||
7302 | { &hf_bit10retinfoflagsh, |
||
7303 | { "Local Entry Flags", "ncp.bit10retinfoflagsh", FT_BOOLEAN, 16, NULL, 0x00000200, NULL, HFILL }}, |
||
7304 | |||
7305 | { &hf_bit11retinfoflagsh, |
||
7306 | { "Not Defined", "ncp.bit11retinfoflagsh", FT_BOOLEAN, 16, NULL, 0x00000400, NULL, HFILL }}, |
||
7307 | |||
7308 | { &hf_bit12retinfoflagsh, |
||
7309 | { "Not Defined", "ncp.bit12retinfoflagshs", FT_BOOLEAN, 16, NULL, 0x00000800, NULL, HFILL }}, |
||
7310 | |||
7311 | { &hf_bit13retinfoflagsh, |
||
7312 | { "Not Defined", "ncp.bit13retinfoflagsh", FT_BOOLEAN, 16, NULL, 0x00001000, NULL, HFILL }}, |
||
7313 | |||
7314 | { &hf_bit14retinfoflagsh, |
||
7315 | { "Not Defined", "ncp.bit14retinfoflagsh", FT_BOOLEAN, 16, NULL, 0x00002000, NULL, HFILL }}, |
||
7316 | |||
7317 | { &hf_bit15retinfoflagsh, |
||
7318 | { "Not Defined", "ncp.bit15retinfoflagsh", FT_BOOLEAN, 16, NULL, 0x00004000, NULL, HFILL }}, |
||
7319 | |||
7320 | { &hf_bit16retinfoflagsh, |
||
7321 | { "Not Defined", "ncp.bit16retinfoflagsh", FT_BOOLEAN, 16, NULL, 0x00008000, NULL, HFILL }}, |
||
7322 | |||
7323 | { &hf_bit1lflags, |
||
7324 | { "List Typeless", "ncp.bit1lflags", FT_BOOLEAN, 16, NULL, 0x00000001, NULL, HFILL }}, |
||
7325 | |||
7326 | { &hf_bit2lflags, |
||
7327 | { "List Containers", "ncp.bit2lflags", FT_BOOLEAN, 16, NULL, 0x00000002, NULL, HFILL }}, |
||
7328 | |||
7329 | { &hf_bit3lflags, |
||
7330 | { "List Slashed", "ncp.bit3lflags", FT_BOOLEAN, 16, NULL, 0x00000004, NULL, HFILL }}, |
||
7331 | |||
7332 | { &hf_bit4lflags, |
||
7333 | { "List Dotted", "ncp.bit4lflags", FT_BOOLEAN, 16, NULL, 0x00000008, NULL, HFILL }}, |
||
7334 | |||
7335 | { &hf_bit5lflags, |
||
7336 | { "Dereference Alias", "ncp.bit5lflags", FT_BOOLEAN, 16, NULL, 0x00000010, NULL, HFILL }}, |
||
7337 | |||
7338 | { &hf_bit6lflags, |
||
7339 | { "List All Containers", "ncp.bit6lflags", FT_BOOLEAN, 16, NULL, 0x00000020, NULL, HFILL }}, |
||
7340 | |||
7341 | { &hf_bit7lflags, |
||
7342 | { "List Obsolete", "ncp.bit7lflags", FT_BOOLEAN, 16, NULL, 0x00000040, NULL, HFILL }}, |
||
7343 | |||
7344 | { &hf_bit8lflags, |
||
7345 | { "List Tuned Output", "ncp.bit8lflags", FT_BOOLEAN, 16, NULL, 0x00000080, NULL, HFILL }}, |
||
7346 | |||
7347 | { &hf_bit9lflags, |
||
7348 | { "List External Reference", "ncp.bit9lflags", FT_BOOLEAN, 16, NULL, 0x00000100, NULL, HFILL }}, |
||
7349 | |||
7350 | { &hf_bit10lflags, |
||
7351 | { "Not Defined", "ncp.bit10lflags", FT_BOOLEAN, 16, NULL, 0x00000200, NULL, HFILL }}, |
||
7352 | |||
7353 | { &hf_bit11lflags, |
||
7354 | { "Not Defined", "ncp.bit11lflags", FT_BOOLEAN, 16, NULL, 0x00000400, NULL, HFILL }}, |
||
7355 | |||
7356 | { &hf_bit12lflags, |
||
7357 | { "Not Defined", "ncp.bit12lflags", FT_BOOLEAN, 16, NULL, 0x00000800, NULL, HFILL }}, |
||
7358 | |||
7359 | { &hf_bit13lflags, |
||
7360 | { "Not Defined", "ncp.bit13lflags", FT_BOOLEAN, 16, NULL, 0x00001000, NULL, HFILL }}, |
||
7361 | |||
7362 | { &hf_bit14lflags, |
||
7363 | { "Not Defined", "ncp.bit14lflags", FT_BOOLEAN, 16, NULL, 0x00002000, NULL, HFILL }}, |
||
7364 | |||
7365 | { &hf_bit15lflags, |
||
7366 | { "Not Defined", "ncp.bit15lflags", FT_BOOLEAN, 16, NULL, 0x00004000, NULL, HFILL }}, |
||
7367 | |||
7368 | { &hf_bit16lflags, |
||
7369 | { "Not Defined", "ncp.bit16lflags", FT_BOOLEAN, 16, NULL, 0x00008000, NULL, HFILL }}, |
||
7370 | |||
7371 | { &hf_l1flagsl, |
||
7372 | { "Information Flags (low) Byte", "ncp.l1flagsl", FT_UINT16, BASE_HEX, NULL, 0x0, NULL, HFILL }}, |
||
7373 | |||
7374 | { &hf_l1flagsh, |
||
7375 | { "Information Flags (high) Byte", "ncp.l1flagsh", FT_UINT16, BASE_HEX, NULL, 0x0, NULL, HFILL }}, |
||
7376 | |||
7377 | { &hf_bit1l1flagsl, |
||
7378 | { "Output Flags", "ncp.bit1l1flagsl", FT_BOOLEAN, 16, NULL, 0x00000001, NULL, HFILL }}, |
||
7379 | |||
7380 | { &hf_bit2l1flagsl, |
||
7381 | { "Entry ID", "ncp.bit2l1flagsl", FT_BOOLEAN, 16, NULL, 0x00000002, NULL, HFILL }}, |
||
7382 | |||
7383 | { &hf_bit3l1flagsl, |
||
7384 | { "Replica State", "ncp.bit3l1flagsl", FT_BOOLEAN, 16, NULL, 0x00000004, NULL, HFILL }}, |
||
7385 | |||
7386 | { &hf_bit4l1flagsl, |
||
7387 | { "Modification Timestamp", "ncp.bit4l1flagsl", FT_BOOLEAN, 16, NULL, 0x00000008, NULL, HFILL }}, |
||
7388 | |||
7389 | { &hf_bit5l1flagsl, |
||
7390 | { "Purge Time", "ncp.bit5l1flagsl", FT_BOOLEAN, 16, NULL, 0x00000010, NULL, HFILL }}, |
||
7391 | |||
7392 | { &hf_bit6l1flagsl, |
||
7393 | { "Local Partition ID", "ncp.bit6l1flagsl", FT_BOOLEAN, 16, NULL, 0x00000020, NULL, HFILL }}, |
||
7394 | |||
7395 | { &hf_bit7l1flagsl, |
||
7396 | { "Distinguished Name", "ncp.bit7l1flagsl", FT_BOOLEAN, 16, NULL, 0x00000040, NULL, HFILL }}, |
||
7397 | |||
7398 | { &hf_bit8l1flagsl, |
||
7399 | { "Replica Type", "ncp.bit8l1flagsl", FT_BOOLEAN, 16, NULL, 0x00000080, NULL, HFILL }}, |
||
7400 | |||
7401 | { &hf_bit9l1flagsl, |
||
7402 | { "Partition Busy", "ncp.bit9l1flagsl", FT_BOOLEAN, 16, NULL, 0x00000100, NULL, HFILL }}, |
||
7403 | |||
7404 | { &hf_bit10l1flagsl, |
||
7405 | { "Not Defined", "ncp.bit10l1flagsl", FT_BOOLEAN, 16, NULL, 0x00000200, NULL, HFILL }}, |
||
7406 | |||
7407 | { &hf_bit11l1flagsl, |
||
7408 | { "Not Defined", "ncp.bit11l1flagsl", FT_BOOLEAN, 16, NULL, 0x00000400, NULL, HFILL }}, |
||
7409 | |||
7410 | { &hf_bit12l1flagsl, |
||
7411 | { "Not Defined", "ncp.bit12l1flagsl", FT_BOOLEAN, 16, NULL, 0x00000800, NULL, HFILL }}, |
||
7412 | |||
7413 | { &hf_bit13l1flagsl, |
||
7414 | { "Not Defined", "ncp.bit13l1flagsl", FT_BOOLEAN, 16, NULL, 0x00001000, NULL, HFILL }}, |
||
7415 | |||
7416 | { &hf_bit14l1flagsl, |
||
7417 | { "Not Defined", "ncp.bit14l1flagsl", FT_BOOLEAN, 16, NULL, 0x00002000, NULL, HFILL }}, |
||
7418 | |||
7419 | { &hf_bit15l1flagsl, |
||
7420 | { "Not Defined", "ncp.bit15l1flagsl", FT_BOOLEAN, 16, NULL, 0x00004000, NULL, HFILL }}, |
||
7421 | |||
7422 | { &hf_bit16l1flagsl, |
||
7423 | { "Not Defined", "ncp.bit16l1flagsl", FT_BOOLEAN, 16, NULL, 0x00008000, NULL, HFILL }}, |
||
7424 | |||
7425 | { &hf_bit1l1flagsh, |
||
7426 | { "Not Defined", "ncp.bit1l1flagsh", FT_BOOLEAN, 16, NULL, 0x00000001, NULL, HFILL }}, |
||
7427 | |||
7428 | { &hf_bit2l1flagsh, |
||
7429 | { "Not Defined", "ncp.bit2l1flagsh", FT_BOOLEAN, 16, NULL, 0x00000002, NULL, HFILL }}, |
||
7430 | |||
7431 | { &hf_bit3l1flagsh, |
||
7432 | { "Not Defined", "ncp.bit3l1flagsh", FT_BOOLEAN, 16, NULL, 0x00000004, NULL, HFILL }}, |
||
7433 | |||
7434 | { &hf_bit4l1flagsh, |
||
7435 | { "Not Defined", "ncp.bit4l1flagsh", FT_BOOLEAN, 16, NULL, 0x00000008, NULL, HFILL }}, |
||
7436 | |||
7437 | { &hf_bit5l1flagsh, |
||
7438 | { "Not Defined", "ncp.bit5l1flagsh", FT_BOOLEAN, 16, NULL, 0x00000010, NULL, HFILL }}, |
||
7439 | |||
7440 | { &hf_bit6l1flagsh, |
||
7441 | { "Not Defined", "ncp.bit6l1flagsh", FT_BOOLEAN, 16, NULL, 0x00000020, NULL, HFILL }}, |
||
7442 | |||
7443 | { &hf_bit7l1flagsh, |
||
7444 | { "Not Defined", "ncp.bit7l1flagsh", FT_BOOLEAN, 16, NULL, 0x00000040, NULL, HFILL }}, |
||
7445 | |||
7446 | { &hf_bit8l1flagsh, |
||
7447 | { "Not Defined", "ncp.bit8l1flagsh", FT_BOOLEAN, 16, NULL, 0x00000080, NULL, HFILL }}, |
||
7448 | |||
7449 | { &hf_bit9l1flagsh, |
||
7450 | { "Not Defined", "ncp.bit9l1flagsh", FT_BOOLEAN, 16, NULL, 0x00000100, NULL, HFILL }}, |
||
7451 | |||
7452 | { &hf_bit10l1flagsh, |
||
7453 | { "Not Defined", "ncp.bit10l1flagsh", FT_BOOLEAN, 16, NULL, 0x00000200, NULL, HFILL }}, |
||
7454 | |||
7455 | { &hf_bit11l1flagsh, |
||
7456 | { "Not Defined", "ncp.bit11l1flagsh", FT_BOOLEAN, 16, NULL, 0x00000400, NULL, HFILL }}, |
||
7457 | |||
7458 | { &hf_bit12l1flagsh, |
||
7459 | { "Not Defined", "ncp.bit12l1flagsh", FT_BOOLEAN, 16, NULL, 0x00000800, NULL, HFILL }}, |
||
7460 | |||
7461 | { &hf_bit13l1flagsh, |
||
7462 | { "Not Defined", "ncp.bit13l1flagsh", FT_BOOLEAN, 16, NULL, 0x00001000, NULL, HFILL }}, |
||
7463 | |||
7464 | { &hf_bit14l1flagsh, |
||
7465 | { "Not Defined", "ncp.bit14l1flagsh", FT_BOOLEAN, 16, NULL, 0x00002000, NULL, HFILL }}, |
||
7466 | |||
7467 | { &hf_bit15l1flagsh, |
||
7468 | { "Not Defined", "ncp.bit15l1flagsh", FT_BOOLEAN, 16, NULL, 0x00004000, NULL, HFILL }}, |
||
7469 | |||
7470 | { &hf_bit16l1flagsh, |
||
7471 | { "Not Defined", "ncp.bit16l1flagsh", FT_BOOLEAN, 16, NULL, 0x00008000, NULL, HFILL }}, |
||
7472 | |||
7473 | { &hf_vflags, |
||
7474 | { "Value Flags", "ncp.vflags", FT_UINT32, BASE_HEX, NULL, 0x0, NULL, HFILL }}, |
||
7475 | |||
7476 | { &hf_bit1vflags, |
||
7477 | { "Naming", "ncp.bit1vflags", FT_BOOLEAN, 16, NULL, 0x00000001, NULL, HFILL }}, |
||
7478 | |||
7479 | { &hf_bit2vflags, |
||
7480 | { "Base Class", "ncp.bit2vflags", FT_BOOLEAN, 16, NULL, 0x00000002, NULL, HFILL }}, |
||
7481 | |||
7482 | { &hf_bit3vflags, |
||
7483 | { "Present", "ncp.bit3vflags", FT_BOOLEAN, 16, NULL, 0x00000004, NULL, HFILL }}, |
||
7484 | |||
7485 | { &hf_bit4vflags, |
||
7486 | { "Value Damaged", "ncp.bit4vflags", FT_BOOLEAN, 16, NULL, 0x00000008, NULL, HFILL }}, |
||
7487 | |||
7488 | { &hf_bit5vflags, |
||
7489 | { "Not Defined", "ncp.bit5vflags", FT_BOOLEAN, 16, NULL, 0x00000010, NULL, HFILL }}, |
||
7490 | |||
7491 | { &hf_bit6vflags, |
||
7492 | { "Not Defined", "ncp.bit6vflags", FT_BOOLEAN, 16, NULL, 0x00000020, NULL, HFILL }}, |
||
7493 | |||
7494 | { &hf_bit7vflags, |
||
7495 | { "Not Defined", "ncp.bit7vflags", FT_BOOLEAN, 16, NULL, 0x00000040, NULL, HFILL }}, |
||
7496 | |||
7497 | { &hf_bit8vflags, |
||
7498 | { "Not Defined", "ncp.bit8vflags", FT_BOOLEAN, 16, NULL, 0x00000080, NULL, HFILL }}, |
||
7499 | |||
7500 | { &hf_bit9vflags, |
||
7501 | { "Not Defined", "ncp.bit9vflags", FT_BOOLEAN, 16, NULL, 0x00000100, NULL, HFILL }}, |
||
7502 | |||
7503 | { &hf_bit10vflags, |
||
7504 | { "Not Defined", "ncp.bit10vflags", FT_BOOLEAN, 16, NULL, 0x00000200, NULL, HFILL }}, |
||
7505 | |||
7506 | { &hf_bit11vflags, |
||
7507 | { "Not Defined", "ncp.bit11vflags", FT_BOOLEAN, 16, NULL, 0x00000400, NULL, HFILL }}, |
||
7508 | |||
7509 | { &hf_bit12vflags, |
||
7510 | { "Not Defined", "ncp.bit12vflags", FT_BOOLEAN, 16, NULL, 0x00000800, NULL, HFILL }}, |
||
7511 | |||
7512 | { &hf_bit13vflags, |
||
7513 | { "Not Defined", "ncp.bit13vflags", FT_BOOLEAN, 16, NULL, 0x00001000, NULL, HFILL }}, |
||
7514 | |||
7515 | { &hf_bit14vflags, |
||
7516 | { "Not Defined", "ncp.bit14vflags", FT_BOOLEAN, 16, NULL, 0x00002000, NULL, HFILL }}, |
||
7517 | |||
7518 | { &hf_bit15vflags, |
||
7519 | { "Not Defined", "ncp.bit15vflags", FT_BOOLEAN, 16, NULL, 0x00004000, NULL, HFILL }}, |
||
7520 | |||
7521 | { &hf_bit16vflags, |
||
7522 | { "Not Defined", "ncp.bit16vflags", FT_BOOLEAN, 16, NULL, 0x00008000, NULL, HFILL }}, |
||
7523 | |||
7524 | { &hf_cflags, |
||
7525 | { "Class Flags", "ncp.cflags", FT_UINT32, BASE_HEX, NULL, 0x0, NULL, HFILL }}, |
||
7526 | |||
7527 | { &hf_bit1cflags, |
||
7528 | { "Container", "ncp.bit1cflags", FT_BOOLEAN, 16, NULL, 0x00000001, NULL, HFILL }}, |
||
7529 | |||
7530 | { &hf_bit2cflags, |
||
7531 | { "Effective", "ncp.bit2cflags", FT_BOOLEAN, 16, NULL, 0x00000002, NULL, HFILL }}, |
||
7532 | |||
7533 | { &hf_bit3cflags, |
||
7534 | { "Class Definition Cannot be Removed", "ncp.bit3cflags", FT_BOOLEAN, 16, NULL, 0x00000004, NULL, HFILL }}, |
||
7535 | |||
7536 | { &hf_bit4cflags, |
||
7537 | { "Ambiguous Naming", "ncp.bit4cflags", FT_BOOLEAN, 16, NULL, 0x00000008, NULL, HFILL }}, |
||
7538 | |||
7539 | { &hf_bit5cflags, |
||
7540 | { "Ambiguous Containment", "ncp.bit5cflags", FT_BOOLEAN, 16, NULL, 0x00000010, NULL, HFILL }}, |
||
7541 | |||
7542 | { &hf_bit6cflags, |
||
7543 | { "Auxiliary", "ncp.bit6cflags", FT_BOOLEAN, 16, NULL, 0x00000020, NULL, HFILL }}, |
||
7544 | |||
7545 | { &hf_bit7cflags, |
||
7546 | { "Operational", "ncp.bit7cflags", FT_BOOLEAN, 16, NULL, 0x00000040, NULL, HFILL }}, |
||
7547 | |||
7548 | { &hf_bit8cflags, |
||
7549 | { "Sparse Required", "ncp.bit8cflags", FT_BOOLEAN, 16, NULL, 0x00000080, NULL, HFILL }}, |
||
7550 | |||
7551 | { &hf_bit9cflags, |
||
7552 | { "Sparse Operational", "ncp.bit9cflags", FT_BOOLEAN, 16, NULL, 0x00000100, NULL, HFILL }}, |
||
7553 | |||
7554 | { &hf_bit10cflags, |
||
7555 | { "Not Defined", "ncp.bit10cflags", FT_BOOLEAN, 16, NULL, 0x00000200, NULL, HFILL }}, |
||
7556 | |||
7557 | { &hf_bit11cflags, |
||
7558 | { "Not Defined", "ncp.bit11cflags", FT_BOOLEAN, 16, NULL, 0x00000400, NULL, HFILL }}, |
||
7559 | |||
7560 | { &hf_bit12cflags, |
||
7561 | { "Not Defined", "ncp.bit12cflags", FT_BOOLEAN, 16, NULL, 0x00000800, NULL, HFILL }}, |
||
7562 | |||
7563 | { &hf_bit13cflags, |
||
7564 | { "Not Defined", "ncp.bit13cflags", FT_BOOLEAN, 16, NULL, 0x00001000, NULL, HFILL }}, |
||
7565 | |||
7566 | { &hf_bit14cflags, |
||
7567 | { "Not Defined", "ncp.bit14cflags", FT_BOOLEAN, 16, NULL, 0x00002000, NULL, HFILL }}, |
||
7568 | |||
7569 | { &hf_bit15cflags, |
||
7570 | { "Not Defined", "ncp.bit15cflags", FT_BOOLEAN, 16, NULL, 0x00004000, NULL, HFILL }}, |
||
7571 | |||
7572 | { &hf_bit16cflags, |
||
7573 | { "Not Defined", "ncp.bit16cflags", FT_BOOLEAN, 16, NULL, 0x00008000, NULL, HFILL }}, |
||
7574 | |||
7575 | { &hf_bit1acflags, |
||
7576 | { "Single Valued", "ncp.bit1acflags", FT_BOOLEAN, 16, NULL, 0x00000001, NULL, HFILL }}, |
||
7577 | |||
7578 | { &hf_bit2acflags, |
||
7579 | { "Sized", "ncp.bit2acflags", FT_BOOLEAN, 16, NULL, 0x00000002, NULL, HFILL }}, |
||
7580 | |||
7581 | { &hf_bit3acflags, |
||
7582 | { "Non-Removable", "ncp.bit3acflags", FT_BOOLEAN, 16, NULL, 0x00000004, NULL, HFILL }}, |
||
7583 | |||
7584 | { &hf_bit4acflags, |
||
7585 | { "Read Only", "ncp.bit4acflags", FT_BOOLEAN, 16, NULL, 0x00000008, NULL, HFILL }}, |
||
7586 | |||
7587 | { &hf_bit5acflags, |
||
7588 | { "Hidden", "ncp.bit5acflags", FT_BOOLEAN, 16, NULL, 0x00000010, NULL, HFILL }}, |
||
7589 | |||
7590 | { &hf_bit6acflags, |
||
7591 | { "String", "ncp.bit6acflags", FT_BOOLEAN, 16, NULL, 0x00000020, NULL, HFILL }}, |
||
7592 | |||
7593 | { &hf_bit7acflags, |
||
7594 | { "Synchronize Immediate", "ncp.bit7acflags", FT_BOOLEAN, 16, NULL, 0x00000040, NULL, HFILL }}, |
||
7595 | |||
7596 | { &hf_bit8acflags, |
||
7597 | { "Public Read", "ncp.bit8acflags", FT_BOOLEAN, 16, NULL, 0x00000080, NULL, HFILL }}, |
||
7598 | |||
7599 | { &hf_bit9acflags, |
||
7600 | { "Server Read", "ncp.bit9acflags", FT_BOOLEAN, 16, NULL, 0x00000100, NULL, HFILL }}, |
||
7601 | |||
7602 | { &hf_bit10acflags, |
||
7603 | { "Write Managed", "ncp.bit10acflags", FT_BOOLEAN, 16, NULL, 0x00000200, NULL, HFILL }}, |
||
7604 | |||
7605 | { &hf_bit11acflags, |
||
7606 | { "Per Replica", "ncp.bit11acflags", FT_BOOLEAN, 16, NULL, 0x00000400, NULL, HFILL }}, |
||
7607 | |||
7608 | { &hf_bit12acflags, |
||
7609 | { "Never Schedule Synchronization", "ncp.bit12acflags", FT_BOOLEAN, 16, NULL, 0x00000800, NULL, HFILL }}, |
||
7610 | |||
7611 | { &hf_bit13acflags, |
||
7612 | { "Operational", "ncp.bit13acflags", FT_BOOLEAN, 16, NULL, 0x00001000, NULL, HFILL }}, |
||
7613 | |||
7614 | { &hf_bit14acflags, |
||
7615 | { "Not Defined", "ncp.bit14acflags", FT_BOOLEAN, 16, NULL, 0x00002000, NULL, HFILL }}, |
||
7616 | |||
7617 | { &hf_bit15acflags, |
||
7618 | { "Not Defined", "ncp.bit15acflags", FT_BOOLEAN, 16, NULL, 0x00004000, NULL, HFILL }}, |
||
7619 | |||
7620 | { &hf_bit16acflags, |
||
7621 | { "Not Defined", "ncp.bit16acflags", FT_BOOLEAN, 16, NULL, 0x00008000, NULL, HFILL }}, |
||
7622 | |||
7623 | |||
7624 | { &hf_nds_reply_error, |
||
7625 | { "NDS Error", "ncp.ndsreplyerror", FT_UINT32, BASE_HEX, NULL, 0x0, NULL, HFILL }}, |
||
7626 | |||
7627 | { &hf_nds_net, |
||
7628 | { "Network","ncp.ndsnet", FT_IPXNET, BASE_NONE, NULL, 0x0, NULL, HFILL }}, |
||
7629 | |||
7630 | { &hf_nds_node, |
||
7631 | { "Node", "ncp.ndsnode", FT_ETHER, BASE_NONE, NULL, 0x0, NULL, HFILL }}, |
||
7632 | |||
7633 | { &hf_nds_socket, |
||
7634 | { "Socket", "ncp.ndssocket", FT_UINT16, BASE_HEX, NULL, 0x0, NULL, HFILL }}, |
||
7635 | |||
7636 | { &hf_add_ref_ip, |
||
7637 | { "Address Referral", "ncp.ipref", FT_IPv4, BASE_NONE, NULL, 0x0, NULL, HFILL }}, |
||
7638 | |||
7639 | { &hf_add_ref_udp, |
||
7640 | { "Address Referral", "ncp.udpref", FT_IPv4, BASE_NONE, NULL, 0x0, NULL, HFILL }}, |
||
7641 | |||
7642 | { &hf_add_ref_tcp, |
||
7643 | { "Address Referral", "ncp.tcpref", FT_IPv4, BASE_NONE, NULL, 0x0, NULL, HFILL }}, |
||
7644 | |||
7645 | { &hf_referral_record, |
||
7646 | { "Referral Record", "ncp.ref_rec", FT_UINT32, BASE_DEC, NULL, 0x0, NULL, HFILL }}, |
||
7647 | |||
7648 | { &hf_referral_addcount, |
||
7649 | { "Number of Addresses in Referral", "ncp.ref_addcount", FT_UINT32, BASE_DEC, NULL, 0x0, NULL, HFILL }}, |
||
7650 | |||
7651 | { &hf_nds_port, |
||
7652 | { "Port", "ncp.ndsport", FT_UINT16, BASE_DEC, NULL, 0x0, NULL, HFILL }}, |
||
7653 | |||
7654 | { &hf_mv_string, |
||
7655 | { "Attribute Name", "ncp.mv_string", FT_STRING, BASE_NONE, NULL, 0x0, NULL, HFILL }}, |
||
7656 | |||
7657 | { &hf_nds_syntax, |
||
7658 | { "Attribute Syntax", "ncp.nds_syntax", FT_UINT32, BASE_DEC, VALS(nds_syntax), 0x0, NULL, HFILL }}, |
||
7659 | |||
7660 | { &hf_value_string, |
||
7661 | { "Value", "ncp.value_string", FT_STRING, BASE_NONE, NULL, 0x0, NULL, HFILL }}, |
||
7662 | |||
7663 | { &hf_nds_stream_name, |
||
7664 | { "Stream Name", "ncp.nds_stream_name", FT_STRING, BASE_NONE, NULL, 0x0, NULL, HFILL }}, |
||
7665 | |||
7666 | { &hf_nds_buffer_size, |
||
7667 | { "NDS Reply Buffer Size", "ncp.nds_reply_buf", FT_UINT32, BASE_DEC, NULL, 0x0, NULL, HFILL }}, |
||
7668 | |||
7669 | { &hf_nds_ver, |
||
7670 | { "NDS Version", "ncp.nds_ver", FT_UINT32, BASE_DEC, NULL, 0x0, NULL, HFILL }}, |
||
7671 | |||
7672 | { &hf_nds_nflags, |
||
7673 | { "Flags", "ncp.nds_nflags", FT_UINT32, BASE_DEC, NULL, 0x0, NULL, HFILL }}, |
||
7674 | |||
7675 | { &hf_nds_rflags, |
||
7676 | { "Request Flags", "ncp.nds_rflags", FT_UINT16, BASE_DEC, NULL, 0x0, NULL, HFILL }}, |
||
7677 | |||
7678 | { &hf_nds_eflags, |
||
7679 | { "Entry Flags", "ncp.nds_eflags", FT_UINT32, BASE_HEX, NULL, 0x0, NULL, HFILL }}, |
||
7680 | |||
7681 | { &hf_nds_scope, |
||
7682 | { "Scope", "ncp.nds_scope", FT_UINT32, BASE_DEC, NULL, 0x0, NULL, HFILL }}, |
||
7683 | |||
7684 | { &hf_nds_name, |
||
7685 | { "Name", "ncp.nds_name", FT_STRING, BASE_NONE, NULL, 0x0, NULL, HFILL }}, |
||
7686 | |||
7687 | { &hf_nds_name_type, |
||
7688 | { "Name Type", "ncp.nds_name_type", FT_STRING, BASE_NONE, NULL, 0x0, NULL, HFILL }}, |
||
7689 | |||
7690 | { &hf_nds_comm_trans, |
||
7691 | { "Communications Transport", "ncp.nds_comm_trans", FT_UINT32, BASE_DEC, NULL, 0x0, NULL, HFILL }}, |
||
7692 | |||
7693 | { &hf_nds_tree_trans, |
||
7694 | { "Tree Walker Transport", "ncp.nds_tree_trans", FT_UINT32, BASE_DEC, NULL, 0x0, NULL, HFILL }}, |
||
7695 | |||
7696 | { &hf_nds_iteration, |
||
7697 | { "Iteration Handle", "ncp.nds_iteration", FT_UINT32, BASE_HEX, NULL, 0x0, NULL, HFILL }}, |
||
7698 | |||
7699 | { &hf_nds_iterator, |
||
7700 | { "Iterator", "ncp.nds_iterator", FT_UINT32, BASE_HEX, NULL, 0x0, NULL, HFILL }}, |
||
7701 | |||
7702 | { &hf_nds_file_handle, |
||
7703 | { "File Handle", "ncp.nds_file_handle", FT_UINT32, BASE_HEX, NULL, 0x0, NULL, HFILL }}, |
||
7704 | |||
7705 | { &hf_nds_file_size, |
||
7706 | { "File Size", "ncp.nds_file_size", FT_UINT32, BASE_DEC, NULL, 0x0, NULL, HFILL }}, |
||
7707 | |||
7708 | { &hf_nds_eid, |
||
7709 | { "NDS EID", "ncp.nds_eid", FT_UINT32, BASE_HEX, NULL, 0x0, NULL, HFILL }}, |
||
7710 | |||
7711 | { &hf_nds_depth, |
||
7712 | { "Distance object is from Root", "ncp.nds_depth", FT_UINT32, BASE_DEC, NULL, 0x0, NULL, HFILL }}, |
||
7713 | |||
7714 | { &hf_nds_info_type, |
||
7715 | { "Info Type", "ncp.nds_info_type", FT_UINT32, BASE_RANGE_STRING|BASE_DEC, RVALS(nds_info_type), 0x0, NULL, HFILL }}, |
||
7716 | |||
7717 | { &hf_nds_class_def_type, |
||
7718 | { "Class Definition Type", "ncp.nds_class_def_type", FT_UINT32, BASE_DEC, VALS(class_def_type), 0x0, NULL, HFILL }}, |
||
7719 | |||
7720 | { &hf_nds_all_attr, |
||
7721 | { "All Attributes", "ncp.nds_all_attr", FT_UINT32, BASE_DEC, NULL, 0x0, "Return all Attributes?", HFILL }}, |
||
7722 | |||
7723 | { &hf_nds_return_all_classes, |
||
7724 | { "All Classes", "ncp.nds_return_all_classes", FT_UINT32, BASE_DEC, NULL, 0x0, "Return all Classes?", HFILL }}, |
||
7725 | |||
7726 | { &hf_nds_req_flags, |
||
7727 | { "Request Flags", "ncp.nds_req_flags", FT_UINT32, BASE_DEC, NULL, 0x0, NULL, HFILL }}, |
||
7728 | |||
7729 | { &hf_nds_attr, |
||
7730 | { "Attributes", "ncp.nds_attributes", FT_UINT32, BASE_DEC, NULL, 0x0, NULL, HFILL }}, |
||
7731 | |||
7732 | { &hf_nds_classes, |
||
7733 | { "Classes", "ncp.nds_classes", FT_UINT32, BASE_DEC, NULL, 0x0, NULL, HFILL }}, |
||
7734 | |||
7735 | { &hf_nds_crc, |
||
7736 | { "CRC", "ncp.nds_crc", FT_UINT32, BASE_HEX, NULL, 0x0, NULL, HFILL }}, |
||
7737 | |||
7738 | { &hf_nds_referrals, |
||
7739 | { "Referrals", "ncp.nds_referrals", FT_UINT32, BASE_DEC, NULL, 0x0, NULL, HFILL }}, |
||
7740 | |||
7741 | { &hf_nds_result_flags, |
||
7742 | { "Result Flags", "ncp.nds_result_flags", FT_UINT32, BASE_DEC, NULL, 0x0, NULL, HFILL }}, |
||
7743 | |||
7744 | { &hf_nds_stream_flags, |
||
7745 | { "Streams Flags", "ncp.nds_stream_flags", FT_UINT32, BASE_HEX, NULL, 0x0, NULL, HFILL }}, |
||
7746 | |||
7747 | { &hf_nds_tag_string, |
||
7748 | { "Tags", "ncp.nds_tags", FT_UINT32, BASE_DEC, VALS(nds_tags), 0x0, NULL, HFILL }}, |
||
7749 | |||
7750 | { &hf_value_bytes, |
||
7751 | { "Bytes", "ncp.value_bytes", FT_BYTES, BASE_NONE, NULL, 0x0, NULL, HFILL }}, |
||
7752 | |||
7753 | { &hf_replica_type, |
||
7754 | { "Replica Type", "ncp.rtype", FT_UINT32, BASE_DEC, VALS(nds_replica_type), 0x0, NULL, HFILL }}, |
||
7755 | |||
7756 | { &hf_replica_state, |
||
7757 | { "Replica State", "ncp.rstate", FT_UINT16, BASE_DEC, VALS(nds_replica_state), 0x0, NULL, HFILL }}, |
||
7758 | |||
7759 | { &hf_nds_rnum, |
||
7760 | { "Replica Number", "ncp.rnum", FT_UINT16, BASE_DEC, NULL, 0x0, NULL, HFILL }}, |
||
7761 | |||
7762 | { &hf_nds_revent, |
||
7763 | { "Event", "ncp.revent", FT_UINT16, BASE_DEC, NULL, 0x0, NULL, HFILL }}, |
||
7764 | |||
7765 | { &hf_replica_number, |
||
7766 | { "Replica Number", "ncp.rnum", FT_UINT32, BASE_DEC, NULL, 0x0, NULL, HFILL }}, |
||
7767 | |||
7768 | { &hf_min_nds_ver, |
||
7769 | { "Minimum NDS Version", "ncp.min_nds_version", FT_UINT32, BASE_DEC, NULL, 0x0, NULL, HFILL }}, |
||
7770 | |||
7771 | { &hf_nds_ver_include, |
||
7772 | { "Include NDS Version", "ncp.inc_nds_ver", FT_UINT32, BASE_HEX, NULL, 0x0, NULL, HFILL }}, |
||
7773 | |||
7774 | { &hf_nds_ver_exclude, |
||
7775 | { "Exclude NDS Version", "ncp.exc_nds_ver", FT_UINT32, BASE_HEX, NULL, 0x0, NULL, HFILL }}, |
||
7776 | |||
7777 | #if 0 /* Unused ? */ |
||
7778 | { &hf_nds_es, |
||
7779 | { "Input Entry Specifier", "ncp.nds_es", FT_UINT32, BASE_HEX, NULL, 0x0, NULL, HFILL }}, |
||
7780 | #endif |
||
7781 | |||
7782 | { &hf_es_type, |
||
7783 | { "Entry Specifier Type", "ncp.nds_es_type", FT_STRING, BASE_NONE, NULL, 0x0, NULL, HFILL }}, |
||
7784 | |||
7785 | { &hf_rdn_string, |
||
7786 | { "RDN", "ncp.nds_rdn", FT_STRING, BASE_NONE, NULL, 0x0, NULL, HFILL }}, |
||
7787 | |||
7788 | #if 0 /* Unused ? */ |
||
7789 | { &hf_delim_string, |
||
7790 | { "Delimiter", "ncp.nds_delim", FT_STRING, BASE_NONE, NULL, 0x0, NULL, HFILL }}, |
||
7791 | #endif |
||
7792 | |||
7793 | { &hf_nds_dn_output_type, |
||
7794 | { "Output Entry Specifier Type", "ncp.nds_out_es_type", FT_UINT32, BASE_DEC, NULL, 0x0, NULL, HFILL }}, |
||
7795 | |||
7796 | { &hf_nds_nested_output_type, |
||
7797 | { "Nested Output Entry Specifier Type", "ncp.nds_nested_out_es", FT_UINT32, BASE_DEC, NULL, 0x0, NULL, HFILL }}, |
||
7798 | |||
7799 | { &hf_nds_output_delimiter, |
||
7800 | { "Output Delimiter", "ncp.nds_out_delimiter", FT_STRING, BASE_NONE, NULL, 0x0, NULL, HFILL }}, |
||
7801 | |||
7802 | { &hf_nds_output_entry_specifier, |
||
7803 | { "Output Entry Specifier", "ncp.nds_out_es", FT_UINT32, BASE_HEX, NULL, 0x0, NULL, HFILL }}, |
||
7804 | |||
7805 | { &hf_es_value, |
||
7806 | { "Entry Specifier Value", "ncp.nds_es_value", FT_UINT32, BASE_HEX, NULL, 0x0, NULL, HFILL }}, |
||
7807 | |||
7808 | { &hf_es_rdn_count, |
||
7809 | { "RDN Count", "ncp.nds_es_rdn_count", FT_UINT32, BASE_HEX, NULL, 0x0, NULL, HFILL }}, |
||
7810 | |||
7811 | { &hf_nds_replica_num, |
||
7812 | { "Replica Number", "ncp.nds_replica_num", FT_UINT16, BASE_DEC, NULL, 0x0, NULL, HFILL }}, |
||
7813 | |||
7814 | { &hf_es_seconds, |
||
7815 | { "Seconds", "ncp.nds_es_seconds", FT_ABSOLUTE_TIME, ABSOLUTE_TIME_LOCAL, NULL, 0x0, NULL, HFILL }}, |
||
7816 | |||
7817 | { &hf_nds_event_num, |
||
7818 | { "Event Number", "ncp.nds_event_num", FT_UINT16, BASE_DEC, NULL, 0x0, NULL, HFILL }}, |
||
7819 | |||
7820 | { &hf_nds_compare_results, |
||
7821 | { "Compare Values Returned", "ncp.nds_compare_results", FT_UINT8, BASE_DEC, NULL, 0x0, NULL, HFILL }}, |
||
7822 | |||
7823 | { &hf_nds_parent, |
||
7824 | { "Parent ID", "ncp.nds_parent", FT_UINT32, BASE_HEX, NULL, 0x0, NULL, HFILL }}, |
||
7825 | |||
7826 | { &hf_nds_name_filter, |
||
7827 | { "Name Filter", "ncp.nds_name_filter", FT_STRING, BASE_NONE, NULL, 0x0, NULL, HFILL }}, |
||
7828 | |||
7829 | { &hf_nds_class_filter, |
||
7830 | { "Class Filter", "ncp.nds_class_filter", FT_STRING, BASE_NONE, NULL, 0x0, NULL, HFILL }}, |
||
7831 | |||
7832 | { &hf_nds_time_filter, |
||
7833 | { "Time Filter", "ncp.nds_time_filter", FT_UINT32, BASE_DEC, NULL, 0x0, NULL, HFILL }}, |
||
7834 | |||
7835 | { &hf_nds_partition_root_id, |
||
7836 | { "Partition Root ID", "ncp.nds_partition_root_id", FT_UINT32, BASE_HEX, NULL, 0x0, NULL, HFILL }}, |
||
7837 | |||
7838 | { &hf_nds_replicas, |
||
7839 | { "Replicas", "ncp.nds_replicas", FT_UINT32, BASE_HEX, NULL, 0x0, NULL, HFILL }}, |
||
7840 | |||
7841 | { &hf_nds_purge, |
||
7842 | { "Purge Time", "ncp.nds_purge", FT_ABSOLUTE_TIME, ABSOLUTE_TIME_LOCAL, NULL, 0x0, NULL, HFILL }}, |
||
7843 | |||
7844 | { &hf_nds_local_partition, |
||
7845 | { "Local Partition ID", "ncp.nds_local_partition", FT_UINT32, BASE_HEX, NULL, 0x0, NULL, HFILL }}, |
||
7846 | |||
7847 | { &hf_partition_busy, |
||
7848 | { "Partition Busy", "ncp.nds_partition_busy", FT_BOOLEAN, BASE_NONE, NULL, 0x0, NULL, HFILL }}, |
||
7849 | |||
7850 | { &hf_nds_number_of_changes, |
||
7851 | { "Number of Attribute Changes", "ncp.nds_number_of_changes", FT_UINT32, BASE_DEC, NULL, 0x0, NULL, HFILL }}, |
||
7852 | |||
7853 | { &hf_sub_count, |
||
7854 | { "Subordinate Count", "ncp.sub_count", FT_UINT32, BASE_DEC, NULL, 0x0, NULL, HFILL }}, |
||
7855 | |||
7856 | { &hf_nds_revision, |
||
7857 | { "Revision Count", "ncp.nds_rev_count", FT_UINT32, BASE_DEC, NULL, 0x0, NULL, HFILL }}, |
||
7858 | |||
7859 | { &hf_nds_base_class, |
||
7860 | { "Base Class", "ncp.nds_base_class", FT_STRING, BASE_NONE, NULL, 0x0, NULL, HFILL }}, |
||
7861 | |||
7862 | { &hf_nds_relative_dn, |
||
7863 | { "Relative Distinguished Name", "ncp.nds_relative_dn", FT_STRING, BASE_NONE, NULL, 0x0, NULL, HFILL }}, |
||
7864 | |||
7865 | #if 0 /* Unused ? */ |
||
7866 | { &hf_nds_root_dn, |
||
7867 | { "Root Distinguished Name", "ncp.nds_root_dn", FT_STRING, BASE_NONE, NULL, 0x0, NULL, HFILL }}, |
||
7868 | #endif |
||
7869 | |||
7870 | #if 0 /* Unused ? */ |
||
7871 | { &hf_nds_parent_dn, |
||
7872 | { "Parent Distinguished Name", "ncp.nds_parent_dn", FT_STRING, BASE_NONE, NULL, 0x0, NULL, HFILL }}, |
||
7873 | #endif |
||
7874 | |||
7875 | { &hf_deref_base, |
||
7876 | { "Dereference Base Class", "ncp.nds_deref_base", FT_STRING, BASE_NONE, NULL, 0x0, NULL, HFILL }}, |
||
7877 | |||
7878 | { &hf_nds_base, |
||
7879 | { "Base Class", "ncp.nds_base", FT_STRING, BASE_NONE, NULL, 0x0, NULL, HFILL }}, |
||
7880 | |||
7881 | { &hf_nds_super, |
||
7882 | { "Super Class", "ncp.nds_super", FT_STRING, BASE_NONE, NULL, 0x0, NULL, HFILL }}, |
||
7883 | |||
7884 | #if 0 /* Unused ? */ |
||
7885 | { &hf_nds_entry_info, |
||
7886 | { "Entry Information", "ncp.nds_entry_info", FT_UINT32, BASE_DEC, NULL, 0x0, NULL, HFILL }}, |
||
7887 | #endif |
||
7888 | |||
7889 | { &hf_nds_privileges, |
||
7890 | { "Privileges", "ncp.nds_privileges", FT_UINT32, BASE_HEX, NULL, 0x0, NULL, HFILL }}, |
||
7891 | |||
7892 | { &hf_nds_compare_attributes, |
||
7893 | { "Compare Attributes?", "ncp.nds_compare_attributes", FT_BOOLEAN, 16, NULL, 0x00000001, NULL, HFILL }}, |
||
7894 | |||
7895 | { &hf_nds_read_attribute, |
||
7896 | { "Read Attribute?", "ncp.nds_read_attribute", FT_BOOLEAN, 16, NULL, 0x00000002, NULL, HFILL }}, |
||
7897 | |||
7898 | { &hf_nds_write_add_delete_attribute, |
||
7899 | { "Write, Add, Delete Attribute?", "ncp.nds_write_add_delete_attribute", FT_BOOLEAN, 16, NULL, 0x00000004, NULL, HFILL }}, |
||
7900 | |||
7901 | { &hf_nds_add_delete_self, |
||
7902 | { "Add/Delete Self?", "ncp.nds_add_delete_self", FT_BOOLEAN, 16, NULL, 0x00000008, NULL, HFILL }}, |
||
7903 | |||
7904 | { &hf_nds_privilege_not_defined, |
||
7905 | { "Privilege Not defined", "ncp.nds_privilege_not_defined", FT_BOOLEAN, 16, NULL, 0x00000010, NULL, HFILL }}, |
||
7906 | |||
7907 | { &hf_nds_supervisor, |
||
7908 | { "Supervisor?", "ncp.nds_supervisor", FT_BOOLEAN, 16, NULL, 0x00000020, NULL, HFILL }}, |
||
7909 | |||
7910 | { &hf_nds_inheritance_control, |
||
7911 | { "Inheritance?", "ncp.nds_inheritance_control", FT_BOOLEAN, 16, NULL, 0x00000040, NULL, HFILL }}, |
||
7912 | |||
7913 | { &hf_nds_browse_entry, |
||
7914 | { "Browse Entry?", "ncp.nds_browse_entry", FT_BOOLEAN, 16, NULL, 0x00000001, NULL, HFILL }}, |
||
7915 | |||
7916 | { &hf_nds_add_entry, |
||
7917 | { "Add Entry?", "ncp.nds_add_entry", FT_BOOLEAN, 16, NULL, 0x00000002, NULL, HFILL }}, |
||
7918 | |||
7919 | { &hf_nds_delete_entry, |
||
7920 | { "Delete Entry?", "ncp.nds_delete_entry", FT_BOOLEAN, 16, NULL, 0x00000004, NULL, HFILL }}, |
||
7921 | |||
7922 | { &hf_nds_rename_entry, |
||
7923 | { "Rename Entry?", "ncp.nds_rename_entry", FT_BOOLEAN, 16, NULL, 0x00000008, NULL, HFILL }}, |
||
7924 | |||
7925 | { &hf_nds_supervisor_entry, |
||
7926 | { "Supervisor?", "ncp.nds_supervisor_entry", FT_BOOLEAN, 16, NULL, 0x00000010, NULL, HFILL }}, |
||
7927 | |||
7928 | { &hf_nds_entry_privilege_not_defined, |
||
7929 | { "Privilege Not Defined", "ncp.nds_entry_privilege_not_defined", FT_BOOLEAN, 16, NULL, 0x00000020, NULL, HFILL }}, |
||
7930 | |||
7931 | { &hf_nds_vflags, |
||
7932 | { "Value Flags", "ncp.nds_vflags", FT_UINT32, BASE_HEX, NULL, 0x0, NULL, HFILL }}, |
||
7933 | |||
7934 | { &hf_nds_value_len, |
||
7935 | { "Value Length", "ncp.nds_vlength", FT_UINT32, BASE_DEC, NULL, 0x0, NULL, HFILL }}, |
||
7936 | |||
7937 | { &hf_nds_cflags, |
||
7938 | { "Class Flags", "ncp.nds_cflags", FT_UINT32, BASE_HEX, NULL, 0x0, NULL, HFILL }}, |
||
7939 | |||
7940 | { &hf_nds_asn1, |
||
7941 | { "ASN.1 ID", "ncp.nds_asn1", FT_BYTES, BASE_NONE, NULL, 0x0, NULL, HFILL }}, |
||
7942 | |||
7943 | { &hf_nds_acflags, |
||
7944 | { "Attribute Constraint Flags", "ncp.nds_acflags", FT_UINT16, BASE_HEX, NULL, 0x0, NULL, HFILL }}, |
||
7945 | |||
7946 | { &hf_nds_upper, |
||
7947 | { "Upper Limit Value", "ncp.nds_upper", FT_UINT32, BASE_DEC, NULL, 0x0, NULL, HFILL }}, |
||
7948 | |||
7949 | { &hf_nds_lower, |
||
7950 | { "Lower Limit Value", "ncp.nds_lower", FT_UINT32, BASE_DEC, NULL, 0x0, NULL, HFILL }}, |
||
7951 | |||
7952 | { &hf_nds_trustee_dn, |
||
7953 | { "Trustee Distinguished Name", "ncp.nds_trustee_dn", FT_STRING, BASE_NONE, NULL, 0x0, NULL, HFILL }}, |
||
7954 | |||
7955 | { &hf_nds_attribute_dn, |
||
7956 | { "Attribute Name", "ncp.nds_attribute_dn", FT_STRING, BASE_NONE, NULL, 0x0, NULL, HFILL }}, |
||
7957 | |||
7958 | { &hf_nds_acl_add, |
||
7959 | { "ACL Templates to Add", "ncp.nds_acl_add", FT_UINT32, BASE_DEC, NULL, 0x0, NULL, HFILL }}, |
||
7960 | |||
7961 | { &hf_nds_acl_del, |
||
7962 | { "Access Control Lists to Delete", "ncp.nds_acl_del", FT_UINT32, BASE_DEC, NULL, 0x0, NULL, HFILL }}, |
||
7963 | |||
7964 | { &hf_nds_att_add, |
||
7965 | { "Attribute to Add", "ncp.nds_att_add", FT_UINT32, BASE_DEC, NULL, 0x0, NULL, HFILL }}, |
||
7966 | |||
7967 | { &hf_nds_att_del, |
||
7968 | { "Attribute Names to Delete", "ncp.nds_att_del", FT_UINT32, BASE_DEC, NULL, 0x0, NULL, HFILL }}, |
||
7969 | |||
7970 | { &hf_nds_keep, |
||
7971 | { "Delete Original RDN", "ncp.nds_keep", FT_BOOLEAN, BASE_NONE, NULL, 0x0, NULL, HFILL }}, |
||
7972 | |||
7973 | { &hf_nds_new_rdn, |
||
7974 | { "New Relative Distinguished Name", "ncp.nds_new_rdn", FT_STRING, BASE_NONE, NULL, 0x0, NULL, HFILL }}, |
||
7975 | |||
7976 | { &hf_nds_time_delay, |
||
7977 | { "Time Delay", "ncp.nds_time_delay", FT_UINT32, BASE_DEC, NULL, 0x0, NULL, HFILL }}, |
||
7978 | |||
7979 | { &hf_nds_root_name, |
||
7980 | { "Root Most Object Name", "ncp.nds_root_name", FT_STRING, BASE_NONE, NULL, 0x0, NULL, HFILL }}, |
||
7981 | |||
7982 | { &hf_nds_new_part_id, |
||
7983 | { "New Partition Root ID", "ncp.nds_new_part_id", FT_UINT32, BASE_HEX, NULL, 0x0, NULL, HFILL }}, |
||
7984 | |||
7985 | { &hf_nds_child_part_id, |
||
7986 | { "Child Partition Root ID", "ncp.nds_child_part_id", FT_UINT32, BASE_HEX, NULL, 0x0, NULL, HFILL }}, |
||
7987 | |||
7988 | { &hf_nds_master_part_id, |
||
7989 | { "Master Partition Root ID", "ncp.nds_master_part_id", FT_UINT32, BASE_HEX, NULL, 0x0, NULL, HFILL }}, |
||
7990 | |||
7991 | { &hf_nds_target_name, |
||
7992 | { "Target Server Name", "ncp.nds_target_dn", FT_STRING, BASE_NONE, NULL, 0x0, NULL, HFILL }}, |
||
7993 | |||
7994 | { &hf_pingflags1, |
||
7995 | { "Ping (low) Request Flags", "ncp.pingflags1", FT_UINT16, BASE_HEX, NULL, 0x0, NULL, HFILL }}, |
||
7996 | |||
7997 | { &hf_bit1pingflags1, |
||
7998 | { "Supported Fields", "ncp.bit1pingflags1", FT_BOOLEAN, 16, NULL, 0x00000001, NULL, HFILL }}, |
||
7999 | |||
8000 | { &hf_bit2pingflags1, |
||
8001 | { "Depth", "ncp.bit2pingflags1", FT_BOOLEAN, 16, NULL, 0x00000002, NULL, HFILL }}, |
||
8002 | |||
8003 | { &hf_bit3pingflags1, |
||
8004 | { "Build Number", "ncp.bit3pingflags1", FT_BOOLEAN, 16, NULL, 0x00000004, NULL, HFILL }}, |
||
8005 | |||
8006 | { &hf_bit4pingflags1, |
||
8007 | { "Flags", "ncp.bit4pingflags1", FT_BOOLEAN, 16, NULL, 0x00000008, NULL, HFILL }}, |
||
8008 | |||
8009 | { &hf_bit5pingflags1, |
||
8010 | { "Verification Flags", "ncp.bit5pingflags1", FT_BOOLEAN, 16, NULL, 0x00000010, NULL, HFILL }}, |
||
8011 | |||
8012 | { &hf_bit6pingflags1, |
||
8013 | { "Letter Version", "ncp.bit6pingflags1", FT_BOOLEAN, 16, NULL, 0x00000020, NULL, HFILL }}, |
||
8014 | |||
8015 | { &hf_bit7pingflags1, |
||
8016 | { "OS Version", "ncp.bit7pingflags1", FT_BOOLEAN, 16, NULL, 0x00000040, NULL, HFILL }}, |
||
8017 | |||
8018 | { &hf_bit8pingflags1, |
||
8019 | { "Not Defined", "ncp.bit8pingflags1", FT_BOOLEAN, 16, NULL, 0x00000080, NULL, HFILL }}, |
||
8020 | |||
8021 | { &hf_bit9pingflags1, |
||
8022 | { "License Flags", "ncp.bit9pingflags1", FT_BOOLEAN, 16, NULL, 0x00000100, NULL, HFILL }}, |
||
8023 | |||
8024 | { &hf_bit10pingflags1, |
||
8025 | { "DS Time", "ncp.bit10pingflags1", FT_BOOLEAN, 16, NULL, 0x00000200, NULL, HFILL }}, |
||
8026 | |||
8027 | { &hf_bit11pingflags1, |
||
8028 | { "Server Time", "ncp.bit11pingflags1", FT_BOOLEAN, 16, NULL, 0x00000400, NULL, HFILL }}, |
||
8029 | |||
8030 | { &hf_bit12pingflags1, |
||
8031 | { "Create Time", "ncp.bit12pingflags1", FT_BOOLEAN, 16, NULL, 0x00000800, NULL, HFILL }}, |
||
8032 | |||
8033 | { &hf_bit13pingflags1, |
||
8034 | { "Not Defined", "ncp.bit13pingflags1", FT_BOOLEAN, 16, NULL, 0x00001000, NULL, HFILL }}, |
||
8035 | |||
8036 | { &hf_bit14pingflags1, |
||
8037 | { "Not Defined", "ncp.bit14pingflags1", FT_BOOLEAN, 16, NULL, 0x00002000, NULL, HFILL }}, |
||
8038 | |||
8039 | { &hf_bit15pingflags1, |
||
8040 | { "Not Defined", "ncp.bit15pingflags1", FT_BOOLEAN, 16, NULL, 0x00004000, NULL, HFILL }}, |
||
8041 | |||
8042 | { &hf_bit16pingflags1, |
||
8043 | { "Not Defined", "ncp.bit16pingflags1", FT_BOOLEAN, 16, NULL, 0x00008000, NULL, HFILL }}, |
||
8044 | |||
8045 | { &hf_pingflags2, |
||
8046 | { "Ping (high) Request Flags", "ncp.pingflags2", FT_UINT16, BASE_HEX, NULL, 0x0, NULL, HFILL }}, |
||
8047 | |||
8048 | { &hf_bit1pingflags2, |
||
8049 | { "Sap Name", "ncp.bit1pingflags2", FT_BOOLEAN, 16, NULL, 0x00000001, NULL, HFILL }}, |
||
8050 | |||
8051 | { &hf_bit2pingflags2, |
||
8052 | { "Tree Name", "ncp.bit2pingflags2", FT_BOOLEAN, 16, NULL, 0x00000002, NULL, HFILL }}, |
||
8053 | |||
8054 | { &hf_bit3pingflags2, |
||
8055 | { "OS Name", "ncp.bit3pingflags2", FT_BOOLEAN, 16, NULL, 0x00000004, NULL, HFILL }}, |
||
8056 | |||
8057 | { &hf_bit4pingflags2, |
||
8058 | { "Hardware Name", "ncp.bit4pingflags2", FT_BOOLEAN, 16, NULL, 0x00000008, NULL, HFILL }}, |
||
8059 | |||
8060 | { &hf_bit5pingflags2, |
||
8061 | { "Vendor Name", "ncp.bit5pingflags2", FT_BOOLEAN, 16, NULL, 0x00000010, NULL, HFILL }}, |
||
8062 | |||
8063 | { &hf_bit6pingflags2, |
||
8064 | { "Not Defined", "ncp.bit6pingflags2", FT_BOOLEAN, 16, NULL, 0x00000020, NULL, HFILL }}, |
||
8065 | |||
8066 | { &hf_bit7pingflags2, |
||
8067 | { "Not Defined", "ncp.bit7pingflags2", FT_BOOLEAN, 16, NULL, 0x00000040, NULL, HFILL }}, |
||
8068 | |||
8069 | { &hf_bit8pingflags2, |
||
8070 | { "Not Defined", "ncp.bit8pingflags2", FT_BOOLEAN, 16, NULL, 0x00000080, NULL, HFILL }}, |
||
8071 | |||
8072 | { &hf_bit9pingflags2, |
||
8073 | { "Not Defined", "ncp.bit9pingflags2", FT_BOOLEAN, 16, NULL, 0x00000100, NULL, HFILL }}, |
||
8074 | |||
8075 | { &hf_bit10pingflags2, |
||
8076 | { "Not Defined", "ncp.bit10pingflags2", FT_BOOLEAN, 16, NULL, 0x00000200, NULL, HFILL }}, |
||
8077 | |||
8078 | { &hf_bit11pingflags2, |
||
8079 | { "Not Defined", "ncp.bit11pingflags2", FT_BOOLEAN, 16, NULL, 0x00000400, NULL, HFILL }}, |
||
8080 | |||
8081 | { &hf_bit12pingflags2, |
||
8082 | { "Not Defined", "ncp.bit12pingflags2", FT_BOOLEAN, 16, NULL, 0x00000800, NULL, HFILL }}, |
||
8083 | |||
8084 | { &hf_bit13pingflags2, |
||
8085 | { "Not Defined", "ncp.bit13pingflags2", FT_BOOLEAN, 16, NULL, 0x00001000, NULL, HFILL }}, |
||
8086 | |||
8087 | { &hf_bit14pingflags2, |
||
8088 | { "Not Defined", "ncp.bit14pingflags2", FT_BOOLEAN, 16, NULL, 0x00002000, NULL, HFILL }}, |
||
8089 | |||
8090 | { &hf_bit15pingflags2, |
||
8091 | { "Not Defined", "ncp.bit15pingflags2", FT_BOOLEAN, 16, NULL, 0x00004000, NULL, HFILL }}, |
||
8092 | |||
8093 | { &hf_bit16pingflags2, |
||
8094 | { "Not Defined", "ncp.bit16pingflags2", FT_BOOLEAN, 16, NULL, 0x00008000, NULL, HFILL }}, |
||
8095 | |||
8096 | { &hf_pingpflags1, |
||
8097 | { "Ping Data Flags", "ncp.pingpflags1", FT_UINT16, BASE_HEX, NULL, 0x0, NULL, HFILL }}, |
||
8098 | |||
8099 | { &hf_bit1pingpflags1, |
||
8100 | { "Root Most Master Replica", "ncp.bit1pingpflags1", FT_BOOLEAN, 16, NULL, 0x00000001, NULL, HFILL }}, |
||
8101 | |||
8102 | { &hf_bit2pingpflags1, |
||
8103 | { "Is Time Synchronized?", "ncp.bit2pingpflags1", FT_BOOLEAN, 16, NULL, 0x00000002, NULL, HFILL }}, |
||
8104 | |||
8105 | { &hf_bit3pingpflags1, |
||
8106 | { "Is Time Valid?", "ncp.bit3pingpflags1", FT_BOOLEAN, 16, NULL, 0x00000004, NULL, HFILL }}, |
||
8107 | |||
8108 | { &hf_bit4pingpflags1, |
||
8109 | { "Is DS Time Synchronized?", "ncp.bit4pingpflags1", FT_BOOLEAN, 16, NULL, 0x00000008, NULL, HFILL }}, |
||
8110 | |||
8111 | { &hf_bit5pingpflags1, |
||
8112 | { "Does Agent Have All Replicas?", "ncp.bit5pingpflags1", FT_BOOLEAN, 16, NULL, 0x00000010, NULL, HFILL }}, |
||
8113 | |||
8114 | { &hf_bit6pingpflags1, |
||
8115 | { "Not Defined", "ncp.bit6pingpflags1", FT_BOOLEAN, 16, NULL, 0x00000020, NULL, HFILL }}, |
||
8116 | |||
8117 | { &hf_bit7pingpflags1, |
||
8118 | { "Not Defined", "ncp.bit7pingpflags1", FT_BOOLEAN, 16, NULL, 0x00000040, NULL, HFILL }}, |
||
8119 | |||
8120 | { &hf_bit8pingpflags1, |
||
8121 | { "Not Defined", "ncp.bit8pingpflags1", FT_BOOLEAN, 16, NULL, 0x00000080, NULL, HFILL }}, |
||
8122 | |||
8123 | { &hf_bit9pingpflags1, |
||
8124 | { "Not Defined", "ncp.bit9pingpflags1", FT_BOOLEAN, 16, NULL, 0x00000100, NULL, HFILL }}, |
||
8125 | |||
8126 | { &hf_bit10pingpflags1, |
||
8127 | { "Not Defined", "ncp.bit10pingpflags1", FT_BOOLEAN, 16, NULL, 0x00000200, NULL, HFILL }}, |
||
8128 | |||
8129 | { &hf_bit11pingpflags1, |
||
8130 | { "Not Defined", "ncp.bit11pingpflags1", FT_BOOLEAN, 16, NULL, 0x00000400, NULL, HFILL }}, |
||
8131 | |||
8132 | { &hf_bit12pingpflags1, |
||
8133 | { "Not Defined", "ncp.bit12pingpflags1", FT_BOOLEAN, 16, NULL, 0x00000800, NULL, HFILL }}, |
||
8134 | |||
8135 | { &hf_bit13pingpflags1, |
||
8136 | { "Not Defined", "ncp.bit13pingpflags1", FT_BOOLEAN, 16, NULL, 0x00001000, NULL, HFILL }}, |
||
8137 | |||
8138 | { &hf_bit14pingpflags1, |
||
8139 | { "Not Defined", "ncp.bit14pingpflags1", FT_BOOLEAN, 16, NULL, 0x00002000, NULL, HFILL }}, |
||
8140 | |||
8141 | { &hf_bit15pingpflags1, |
||
8142 | { "Not Defined", "ncp.bit15pingpflags1", FT_BOOLEAN, 16, NULL, 0x00004000, NULL, HFILL }}, |
||
8143 | |||
8144 | { &hf_bit16pingpflags1, |
||
8145 | { "Not Defined", "ncp.bit16pingpflags1", FT_BOOLEAN, 16, NULL, 0x00008000, NULL, HFILL }}, |
||
8146 | |||
8147 | { &hf_pingvflags1, |
||
8148 | { "Verification Flags", "ncp.pingvflags1", FT_UINT16, BASE_HEX, NULL, 0x0, NULL, HFILL }}, |
||
8149 | |||
8150 | { &hf_bit1pingvflags1, |
||
8151 | { "Checksum", "ncp.bit1pingvflags1", FT_BOOLEAN, 16, NULL, 0x00000001, NULL, HFILL }}, |
||
8152 | |||
8153 | { &hf_bit2pingvflags1, |
||
8154 | { "CRC32", "ncp.bit2pingvflags1", FT_BOOLEAN, 16, NULL, 0x00000002, NULL, HFILL }}, |
||
8155 | |||
8156 | { &hf_bit3pingvflags1, |
||
8157 | { "Not Defined", "ncp.bit3pingvflags1", FT_BOOLEAN, 16, NULL, 0x00000004, NULL, HFILL }}, |
||
8158 | |||
8159 | { &hf_bit4pingvflags1, |
||
8160 | { "Not Defined", "ncp.bit4pingvflags1", FT_BOOLEAN, 16, NULL, 0x00000008, NULL, HFILL }}, |
||
8161 | |||
8162 | { &hf_bit5pingvflags1, |
||
8163 | { "Not Defined", "ncp.bit5pingvflags1", FT_BOOLEAN, 16, NULL, 0x00000010, NULL, HFILL }}, |
||
8164 | |||
8165 | { &hf_bit6pingvflags1, |
||
8166 | { "Not Defined", "ncp.bit6pingvflags1", FT_BOOLEAN, 16, NULL, 0x00000020, NULL, HFILL }}, |
||
8167 | |||
8168 | { &hf_bit7pingvflags1, |
||
8169 | { "Not Defined", "ncp.bit7pingvflags1", FT_BOOLEAN, 16, NULL, 0x00000040, NULL, HFILL }}, |
||
8170 | |||
8171 | { &hf_bit8pingvflags1, |
||
8172 | { "Not Defined", "ncp.bit8pingvflags1", FT_BOOLEAN, 16, NULL, 0x00000080, NULL, HFILL }}, |
||
8173 | |||
8174 | { &hf_bit9pingvflags1, |
||
8175 | { "Not Defined", "ncp.bit9pingvflags1", FT_BOOLEAN, 16, NULL, 0x00000100, NULL, HFILL }}, |
||
8176 | |||
8177 | { &hf_bit10pingvflags1, |
||
8178 | { "Not Defined", "ncp.bit10pingvflags1", FT_BOOLEAN, 16, NULL, 0x00000200, NULL, HFILL }}, |
||
8179 | |||
8180 | { &hf_bit11pingvflags1, |
||
8181 | { "Not Defined", "ncp.bit11pingvflags1", FT_BOOLEAN, 16, NULL, 0x00000400, NULL, HFILL }}, |
||
8182 | |||
8183 | { &hf_bit12pingvflags1, |
||
8184 | { "Not Defined", "ncp.bit12pingvflags1", FT_BOOLEAN, 16, NULL, 0x00000800, NULL, HFILL }}, |
||
8185 | |||
8186 | { &hf_bit13pingvflags1, |
||
8187 | { "Not Defined", "ncp.bit13pingvflags1", FT_BOOLEAN, 16, NULL, 0x00001000, NULL, HFILL }}, |
||
8188 | |||
8189 | { &hf_bit14pingvflags1, |
||
8190 | { "Not Defined", "ncp.bit14pingvflags1", FT_BOOLEAN, 16, NULL, 0x00002000, NULL, HFILL }}, |
||
8191 | |||
8192 | { &hf_bit15pingvflags1, |
||
8193 | { "Not Defined", "ncp.bit15pingvflags1", FT_BOOLEAN, 16, NULL, 0x00004000, NULL, HFILL }}, |
||
8194 | |||
8195 | { &hf_bit16pingvflags1, |
||
8196 | { "Not Defined", "ncp.bit16pingvflags1", FT_BOOLEAN, 16, NULL, 0x00008000, NULL, HFILL }}, |
||
8197 | |||
8198 | { &hf_nds_letter_ver, |
||
8199 | { "Letter Version", "ncp.nds_letter_ver", FT_UINT32, BASE_HEX, NULL, 0x0, NULL, HFILL }}, |
||
8200 | |||
8201 | { &hf_nds_os_majver, |
||
8202 | { "OS Major Version", "ncp.nds_os_majver", FT_UINT32, BASE_DEC, NULL, 0x0, NULL, HFILL }}, |
||
8203 | |||
8204 | { &hf_nds_os_minver, |
||
8205 | { "OS Minor Version", "ncp.nds_os_minver", FT_UINT32, BASE_DEC, NULL, 0x0, NULL, HFILL }}, |
||
8206 | |||
8207 | { &hf_nds_lic_flags, |
||
8208 | { "License Flags", "ncp.nds_lic_flags", FT_UINT32, BASE_HEX, NULL, 0x0, NULL, HFILL }}, |
||
8209 | |||
8210 | { &hf_nds_ds_time, |
||
8211 | { "DS Time", "ncp.nds_ds_time", FT_ABSOLUTE_TIME, ABSOLUTE_TIME_LOCAL, NULL, 0x0, NULL, HFILL }}, |
||
8212 | |||
8213 | { &hf_nds_svr_time, |
||
8214 | { "Server Time", "ncp.nds_svr_time", FT_ABSOLUTE_TIME, ABSOLUTE_TIME_LOCAL, NULL, 0x0, NULL, HFILL }}, |
||
8215 | |||
8216 | { &hf_nds_crt_time, |
||
8217 | { "Agent Create Time", "ncp.nds_crt_time", FT_ABSOLUTE_TIME, ABSOLUTE_TIME_LOCAL, NULL, 0x0, NULL, HFILL }}, |
||
8218 | |||
8219 | { &hf_nds_ping_version, |
||
8220 | { "Ping Version", "ncp.nds_ping_version", FT_UINT32, BASE_DEC, NULL, 0x0, NULL, HFILL }}, |
||
8221 | |||
8222 | { &hf_nds_search_scope, |
||
8223 | { "Search Scope", "ncp.nds_search_scope", FT_UINT32, BASE_DEC|BASE_RANGE_STRING, RVALS(nds_search_scope), 0x0, NULL, HFILL }}, |
||
8224 | |||
8225 | { &hf_nds_num_objects, |
||
8226 | { "Number of Objects to Search", "ncp.nds_num_objects", FT_UINT32, BASE_HEX, NULL, 0x0, NULL, HFILL }}, |
||
8227 | |||
8228 | { &hf_siflags, |
||
8229 | { "Information Types", "ncp.siflags", FT_UINT16, BASE_HEX, NULL, 0x0, NULL, HFILL }}, |
||
8230 | |||
8231 | { &hf_bit1siflags, |
||
8232 | { "Names", "ncp.bit1siflags", FT_BOOLEAN, 16, NULL, 0x00000001, NULL, HFILL }}, |
||
8233 | |||
8234 | { &hf_bit2siflags, |
||
8235 | { "Names and Values", "ncp.bit2siflags", FT_BOOLEAN, 16, NULL, 0x00000002, NULL, HFILL }}, |
||
8236 | |||
8237 | { &hf_bit3siflags, |
||
8238 | { "Effective Privileges", "ncp.bit3siflags", FT_BOOLEAN, 16, NULL, 0x00000004, NULL, HFILL }}, |
||
8239 | |||
8240 | { &hf_bit4siflags, |
||
8241 | { "Value Info", "ncp.bit4siflags", FT_BOOLEAN, 16, NULL, 0x00000008, NULL, HFILL }}, |
||
8242 | |||
8243 | { &hf_bit5siflags, |
||
8244 | { "Abbreviated Value", "ncp.bit5siflags", FT_BOOLEAN, 16, NULL, 0x00000010, NULL, HFILL }}, |
||
8245 | |||
8246 | { &hf_bit6siflags, |
||
8247 | { "Not Defined", "ncp.bit6siflags", FT_BOOLEAN, 16, NULL, 0x00000020, NULL, HFILL }}, |
||
8248 | |||
8249 | { &hf_bit7siflags, |
||
8250 | { "Not Defined", "ncp.bit7siflags", FT_BOOLEAN, 16, NULL, 0x00000040, NULL, HFILL }}, |
||
8251 | |||
8252 | { &hf_bit8siflags, |
||
8253 | { "Not Defined", "ncp.bit8siflags", FT_BOOLEAN, 16, NULL, 0x00000080, NULL, HFILL }}, |
||
8254 | |||
8255 | { &hf_bit9siflags, |
||
8256 | { "Expanded Class", "ncp.bit9siflags", FT_BOOLEAN, 16, NULL, 0x00000100, NULL, HFILL }}, |
||
8257 | |||
8258 | { &hf_bit10siflags, |
||
8259 | { "Not Defined", "ncp.bit10siflags", FT_BOOLEAN, 16, NULL, 0x00000200, NULL, HFILL }}, |
||
8260 | |||
8261 | { &hf_bit11siflags, |
||
8262 | { "Not Defined", "ncp.bit11siflags", FT_BOOLEAN, 16, NULL, 0x00000400, NULL, HFILL }}, |
||
8263 | |||
8264 | { &hf_bit12siflags, |
||
8265 | { "Not Defined", "ncp.bit12siflags", FT_BOOLEAN, 16, NULL, 0x00000800, NULL, HFILL }}, |
||
8266 | |||
8267 | { &hf_bit13siflags, |
||
8268 | { "Not Defined", "ncp.bit13siflags", FT_BOOLEAN, 16, NULL, 0x00001000, NULL, HFILL }}, |
||
8269 | |||
8270 | { &hf_bit14siflags, |
||
8271 | { "Not Defined", "ncp.bit14siflags", FT_BOOLEAN, 16, NULL, 0x00002000, NULL, HFILL }}, |
||
8272 | |||
8273 | { &hf_bit15siflags, |
||
8274 | { "Not Defined", "ncp.bit15siflags", FT_BOOLEAN, 16, NULL, 0x00004000, NULL, HFILL }}, |
||
8275 | |||
8276 | { &hf_bit16siflags, |
||
8277 | { "Not Defined", "ncp.bit16siflags", FT_BOOLEAN, 16, NULL, 0x00008000, NULL, HFILL }}, |
||
8278 | |||
8279 | { &hf_nds_segment_overlap, |
||
8280 | { "Segment overlap", "nds.segment.overlap", FT_BOOLEAN, BASE_NONE, NULL, 0x0, "Segment overlaps with other segments", HFILL }}, |
||
8281 | |||
8282 | { &hf_nds_segment_overlap_conflict, |
||
8283 | { "Conflicting data in segment overlap", "nds.segment.overlap.conflict", FT_BOOLEAN, BASE_NONE, NULL, 0x0, "Overlapping segments contained conflicting data", HFILL }}, |
||
8284 | |||
8285 | { &hf_nds_segment_multiple_tails, |
||
8286 | { "Multiple tail segments found", "nds.segment.multipletails", FT_BOOLEAN, BASE_NONE, NULL, 0x0, "Several tails were found when desegmenting the packet", HFILL }}, |
||
8287 | |||
8288 | { &hf_nds_segment_too_long_segment, |
||
8289 | { "Segment too long", "nds.segment.toolongsegment", FT_BOOLEAN, BASE_NONE, NULL, 0x0, "Segment contained data past end of packet", HFILL }}, |
||
8290 | |||
8291 | { &hf_nds_segment_error, |
||
8292 | { "Desegmentation error", "nds.segment.error", FT_FRAMENUM, BASE_NONE, NULL, 0x0, "Desegmentation error due to illegal segments", HFILL }}, |
||
8293 | |||
8294 | { &hf_nds_segment_count, |
||
8295 | { "Segment count", "nds.segment.count", FT_UINT32, BASE_DEC, NULL, 0x0, NULL, HFILL }}, |
||
8296 | |||
8297 | { &hf_nds_reassembled_length, |
||
8298 | { "Reassembled NDS length", "nds.reassembled.length", FT_UINT32, BASE_DEC, NULL, 0x0, "The total length of the reassembled payload", HFILL }}, |
||
8299 | |||
8300 | { &hf_nds_segment, |
||
8301 | { "NDS Fragment", "nds.fragment", FT_FRAMENUM, BASE_NONE, NULL, 0x0, "NDPS Fragment", HFILL }}, |
||
8302 | |||
8303 | { &hf_nds_segments, |
||
8304 | { "NDS Fragments", "nds.fragments", FT_NONE, BASE_NONE, NULL, 0x0, "NDPS Fragments", HFILL }}, |
||
8305 | |||
8306 | { &hf_nds_verb2b_req_flags, |
||
8307 | { "Flags", "ncp.nds_verb2b_flags", FT_UINT32, BASE_HEX, VALS(nds_verb2b_flag_vals), 0x0, NULL, HFILL }}, |
||
8308 | |||
8309 | { &hf_ncp_ip_address, |
||
8310 | { "IP Address", "ncp.ip_addr", FT_IPv4, BASE_NONE, NULL, 0x0, NULL, HFILL }}, |
||
8311 | |||
8312 | { &hf_ncp_copyright, |
||
8313 | { "Copyright", "ncp.copyright", FT_STRING, BASE_NONE, NULL, 0x0, NULL, HFILL }}, |
||
8314 | |||
8315 | { &hf_ndsprot1flag, |
||
8316 | { "Not Defined", "ncp.nds_prot_bit1", FT_BOOLEAN, 16, NULL, 0x00000001, NULL, HFILL }}, |
||
8317 | |||
8318 | { &hf_ndsprot2flag, |
||
8319 | { "Not Defined", "ncp.nds_prot_bit2", FT_BOOLEAN, 16, NULL, 0x00000002, NULL, HFILL }}, |
||
8320 | |||
8321 | { &hf_ndsprot3flag, |
||
8322 | { "Not Defined", "ncp.nds_prot_bit3", FT_BOOLEAN, 16, NULL, 0x00000004, NULL, HFILL }}, |
||
8323 | |||
8324 | { &hf_ndsprot4flag, |
||
8325 | { "Not Defined", "ncp.nds_prot_bit4", FT_BOOLEAN, 16, NULL, 0x00000008, NULL, HFILL }}, |
||
8326 | |||
8327 | { &hf_ndsprot5flag, |
||
8328 | { "Not Defined", "ncp.nds_prot_bit5", FT_BOOLEAN, 16, NULL, 0x00000010, NULL, HFILL }}, |
||
8329 | |||
8330 | { &hf_ndsprot6flag, |
||
8331 | { "Not Defined", "ncp.nds_prot_bit6", FT_BOOLEAN, 16, NULL, 0x00000020, NULL, HFILL }}, |
||
8332 | |||
8333 | { &hf_ndsprot7flag, |
||
8334 | { "Not Defined", "ncp.nds_prot_bit7", FT_BOOLEAN, 16, NULL, 0x00000040, NULL, HFILL }}, |
||
8335 | |||
8336 | { &hf_ndsprot8flag, |
||
8337 | { "Not Defined", "ncp.nds_prot_bit8", FT_BOOLEAN, 16, NULL, 0x00000080, NULL, HFILL }}, |
||
8338 | |||
8339 | { &hf_ndsprot9flag, |
||
8340 | { "Not Defined", "ncp.nds_prot_bit9", FT_BOOLEAN, 16, NULL, 0x00000100, NULL, HFILL }}, |
||
8341 | |||
8342 | { &hf_ndsprot10flag, |
||
8343 | { "Not Defined", "ncp.nds_prot_bit10", FT_BOOLEAN, 16, NULL, 0x00000200, NULL, HFILL }}, |
||
8344 | |||
8345 | { &hf_ndsprot11flag, |
||
8346 | { "Not Defined", "ncp.nds_prot_bit11", FT_BOOLEAN, 16, NULL, 0x00000400, NULL, HFILL }}, |
||
8347 | |||
8348 | { &hf_ndsprot12flag, |
||
8349 | { "Not Defined", "ncp.nds_prot_bit12", FT_BOOLEAN, 16, NULL, 0x00000800, NULL, HFILL }}, |
||
8350 | |||
8351 | { &hf_ndsprot13flag, |
||
8352 | { "Not Defined", "ncp.nds_prot_bit13", FT_BOOLEAN, 16, NULL, 0x00001000, NULL, HFILL }}, |
||
8353 | |||
8354 | { &hf_ndsprot14flag, |
||
8355 | { "Not Defined", "ncp.nds_prot_bit14", FT_BOOLEAN, 16, NULL, 0x00002000, NULL, HFILL }}, |
||
8356 | |||
8357 | { &hf_ndsprot15flag, |
||
8358 | { "Include CRC in NDS Header", "ncp.nds_prot_bit15", FT_BOOLEAN, 16, NULL, 0x00004000, NULL, HFILL }}, |
||
8359 | |||
8360 | { &hf_ndsprot16flag, |
||
8361 | { "Client is a Server", "ncp.nds_prot_bit16", FT_BOOLEAN, 16, NULL, 0x00008000, NULL, HFILL }}, |
||
8362 | |||
8363 | { &hf_nds_svr_dst_name, |
||
8364 | { "Server Distinguished Name", "ncp.nds_svr_dist_name", FT_STRING, BASE_NONE, NULL, 0x0, NULL, HFILL }}, |
||
8365 | |||
8366 | { &hf_nds_tune_mark, |
||
8367 | { "Tune Mark", "ncp.ndstunemark", FT_UINT16, BASE_HEX, NULL, 0x0, NULL, HFILL }}, |
||
8368 | |||
8369 | #if 0 /* Unused ? */ |
||
8370 | { &hf_nds_create_time, |
||
8371 | { "NDS Creation Time", "ncp.ndscreatetime", FT_ABSOLUTE_TIME, ABSOLUTE_TIME_LOCAL, NULL, 0x0, NULL, HFILL }}, |
||
8372 | #endif |
||
8373 | |||
8374 | { &hf_srvr_param_string, |
||
8375 | { "Set Parameter Value", "ncp.srvr_param_string", FT_STRING, BASE_NONE, NULL, 0x0, NULL, HFILL }}, |
||
8376 | |||
8377 | { &hf_srvr_param_number, |
||
8378 | { "Set Parameter Value", "ncp.srvr_param_number", FT_UINT32, BASE_DEC, NULL, 0x0, NULL, HFILL }}, |
||
8379 | |||
8380 | { &hf_srvr_param_boolean, |
||
8381 | { "Set Parameter Value", "ncp.srvr_param_boolean", FT_BOOLEAN, BASE_NONE, NULL, 0x0, NULL, HFILL }}, |
||
8382 | |||
8383 | { &hf_nds_number_of_items, |
||
8384 | { "Number of Items", "ncp.ndsitems", FT_UINT32, BASE_DEC, NULL, 0x0, NULL, HFILL }}, |
||
8385 | |||
8386 | { &hf_ncp_nds_iterverb, |
||
8387 | { "NDS Iteration Verb", "ncp.ndsiterverb", FT_UINT32, BASE_DEC_HEX, VALS(iterator_subverbs), 0x0, NULL, HFILL }}, |
||
8388 | |||
8389 | { &hf_iter_completion_code, |
||
8390 | { "Iteration Completion Code", "ncp.iter_completion_code", FT_UINT32, BASE_HEX, VALS(nds_reply_errors), 0x0, NULL, HFILL }}, |
||
8391 | |||
8392 | #if 0 /* Unused ? */ |
||
8393 | { &hf_nds_iterobj, |
||
8394 | { "Iterator Object", "ncp.ndsiterobj", FT_UINT32, BASE_HEX, NULL, 0x0, NULL, HFILL }}, |
||
8395 | #endif |
||
8396 | |||
8397 | { &hf_iter_verb_completion_code, |
||
8398 | { "Completion Code", "ncp.iter_verb_completion_code", FT_UINT32, BASE_HEX, NULL, 0x0, NULL, HFILL }}, |
||
8399 | |||
8400 | { &hf_iter_ans, |
||
8401 | { "Iterator Answer", "ncp.iter_answer", FT_BOOLEAN, BASE_NONE, NULL, 0x0, NULL, HFILL }}, |
||
8402 | |||
8403 | { &hf_positionable, |
||
8404 | { "Positionable", "ncp.iterpositionable", FT_BOOLEAN, BASE_NONE, NULL, 0x0, NULL, HFILL }}, |
||
8405 | |||
8406 | { &hf_num_skipped, |
||
8407 | { "Number Skipped", "ncp.iternumskipped", FT_UINT32, BASE_HEX, NULL, 0x0, NULL, HFILL }}, |
||
8408 | |||
8409 | { &hf_num_to_skip, |
||
8410 | { "Number to Skip", "ncp.iternumtoskip", FT_UINT32, BASE_HEX, NULL, 0x0, NULL, HFILL }}, |
||
8411 | |||
8412 | { &hf_timelimit, |
||
8413 | { "Time Limit", "ncp.itertimelimit", FT_UINT32, BASE_HEX, NULL, 0x0, NULL, HFILL }}, |
||
8414 | |||
8415 | { &hf_iter_index, |
||
8416 | { "Iterator Index", "ncp.iterindex", FT_UINT32, BASE_HEX, NULL, 0x0, NULL, HFILL }}, |
||
8417 | |||
8418 | { &hf_num_to_get, |
||
8419 | { "Number to Get", "ncp.iternumtoget", FT_UINT32, BASE_HEX, NULL, 0x0, NULL, HFILL }}, |
||
8420 | |||
8421 | #if 0 /* Unused ? */ |
||
8422 | { &hf_ret_info_type, |
||
8423 | { "Return Information Type", "ncp.iterretinfotype", FT_UINT32, BASE_HEX, NULL, 0x0, NULL, HFILL }}, |
||
8424 | #endif |
||
8425 | |||
8426 | { &hf_data_size, |
||
8427 | { "Data Size", "ncp.iterdatasize", FT_UINT32, BASE_DEC, NULL, 0x0, NULL, HFILL }}, |
||
8428 | |||
8429 | { &hf_this_count, |
||
8430 | { "Number of Items", "ncp.itercount", FT_UINT32, BASE_DEC, NULL, 0x0, NULL, HFILL }}, |
||
8431 | |||
8432 | { &hf_max_entries, |
||
8433 | { "Maximum Entries", "ncp.itermaxentries", FT_UINT32, BASE_HEX, NULL, 0x0, NULL, HFILL }}, |
||
8434 | |||
8435 | { &hf_move_position, |
||
8436 | { "Move Position", "ncp.itermoveposition", FT_UINT32, BASE_HEX, NULL, 0x0, NULL, HFILL }}, |
||
8437 | |||
8438 | { &hf_iter_copy, |
||
8439 | { "Iterator Copy", "ncp.itercopy", FT_UINT32, BASE_HEX, NULL, 0x0, NULL, HFILL }}, |
||
8440 | |||
8441 | { &hf_iter_position, |
||
8442 | { "Iteration Position", "ncp.iterposition", FT_UINT32, BASE_HEX, NULL, 0x0, NULL, HFILL }}, |
||
8443 | |||
8444 | { &hf_iter_search, |
||
8445 | { "Search Filter", "ncp.iter_search", FT_UINT32, BASE_HEX, NULL, 0x0, NULL, HFILL }}, |
||
8446 | |||
8447 | { &hf_iter_other, |
||
8448 | { "Other Iteration", "ncp.iterother", FT_UINT32, BASE_HEX, NULL, 0x0, NULL, HFILL }}, |
||
8449 | |||
8450 | { &hf_nds_oid, |
||
8451 | { "Object ID", "ncp.nds_oid", FT_BYTES, BASE_NONE, NULL, 0x0, NULL, HFILL }}, |
||
8452 | |||
8453 | { &hf_ncp_bytes_actually_trans_64, |
||
8454 | { "Bytes Actually Transferred", "ncp.bytes_actually_trans_64", FT_UINT64, BASE_DEC, NULL, 0x0, NULL, HFILL }}, |
||
8455 | |||
8456 | { &hf_sap_name, |
||
8457 | { "SAP Name", "ncp.sap_name", FT_STRING, BASE_NONE, NULL, 0x0, NULL, HFILL }}, |
||
8458 | |||
8459 | { &hf_os_name, |
||
8460 | { "OS Name", "ncp.os_name", FT_STRING, BASE_NONE, NULL, 0x0, NULL, HFILL }}, |
||
8461 | |||
8462 | { &hf_vendor_name, |
||
8463 | { "Vendor Name", "ncp.vendor_name", FT_STRING, BASE_NONE, NULL, 0x0, NULL, HFILL }}, |
||
8464 | |||
8465 | { &hf_hardware_name, |
||
8466 | { "Hardware Name", "ncp.harware_name", FT_STRING, BASE_NONE, NULL, 0x0, NULL, HFILL }}, |
||
8467 | |||
8468 | { &hf_no_request_record_found, |
||
8469 | { "No request record found. Parsing is impossible.", "ncp.no_request_record_found", FT_NONE, BASE_NONE, NULL, 0x0, NULL, HFILL }}, |
||
8470 | |||
8471 | { &hf_search_modifier, |
||
8472 | { "Search Modifier", "ncp.search_modifier", FT_UINT16, BASE_HEX, NULL, 0x0, NULL, HFILL }}, |
||
8473 | |||
8474 | { &hf_search_pattern, |
||
8475 | { "Search Pattern", "ncp.search_pattern", FT_STRING, BASE_NONE, NULL, 0x0, NULL, HFILL }}, |
||
8476 | |||
8477 | """) |
||
8478 | # Print the registration code for the hf variables |
||
8479 | for var in sorted_vars: |
||
8480 | print(" { &%s," % (var.HFName())) |
||
8481 | print(" { \"%s\", \"%s\", %s, %s, %s, 0x%x, NULL, HFILL }},\n" % \ |
||
8482 | (var.Description(), var.DFilter(), |
||
8483 | var.WiresharkFType(), var.Display(), var.ValuesName(), |
||
8484 | var.Mask())) |
||
8485 | |||
8486 | print(" };\n") |
||
8487 | |||
8488 | if ett_list: |
||
8489 | print(" static gint *ett[] = {") |
||
8490 | |||
8491 | for ett in ett_list: |
||
8492 | print(" &%s," % (ett,)) |
||
8493 | |||
8494 | print(" };\n") |
||
8495 | |||
8496 | print(""" |
||
8497 | static ei_register_info ei[] = { |
||
8498 | { &ei_ncp_file_handle, { "ncp.file_handle.expert", PI_REQUEST_CODE, PI_CHAT, "Close file handle", EXPFILL }}, |
||
8499 | { &ei_ncp_file_rights, { "ncp.file_rights", PI_REQUEST_CODE, PI_CHAT, "File rights", EXPFILL }}, |
||
8500 | { &ei_ncp_op_lock_handle, { "ncp.op_lock_handle", PI_REQUEST_CODE, PI_CHAT, "Op-lock on handle", EXPFILL }}, |
||
8501 | { &ei_ncp_file_rights_change, { "ncp.file_rights.change", PI_REQUEST_CODE, PI_CHAT, "Change handle rights", EXPFILL }}, |
||
8502 | { &ei_ncp_effective_rights, { "ncp.effective_rights.expert", PI_RESPONSE_CODE, PI_CHAT, "Handle effective rights", EXPFILL }}, |
||
8503 | { &ei_ncp_server, { "ncp.server", PI_RESPONSE_CODE, PI_CHAT, "Server info", EXPFILL }}, |
||
8504 | { &ei_iter_verb_completion_code, { "ncp.iter_verb_completion_code.expert", PI_RESPONSE_CODE, PI_ERROR, "Iteration Verb Error", EXPFILL }}, |
||
8505 | { &ei_ncp_connection_request, { "ncp.connection_request", PI_RESPONSE_CODE, PI_CHAT, "Connection Request", EXPFILL }}, |
||
8506 | { &ei_ncp_destroy_connection, { "ncp.destroy_connection", PI_RESPONSE_CODE, PI_CHAT, "Destroy Connection Request", EXPFILL }}, |
||
8507 | { &ei_nds_reply_error, { "ncp.ndsreplyerror.expert", PI_RESPONSE_CODE, PI_ERROR, "NDS Error", EXPFILL }}, |
||
8508 | { &ei_nds_iteration, { "ncp.nds_iteration.error", PI_RESPONSE_CODE, PI_ERROR, "NDS Iteration Error", EXPFILL }}, |
||
8509 | { &ei_ncp_eid, { "ncp.eid", PI_RESPONSE_CODE, PI_CHAT, "EID", EXPFILL }}, |
||
8510 | { &ei_ncp_completion_code, { "ncp.completion_code.expert", PI_RESPONSE_CODE, PI_ERROR, "Code Completion Error", EXPFILL }}, |
||
8511 | { &ei_ncp_connection_status, { "ncp.connection_status.bad", PI_RESPONSE_CODE, PI_ERROR, "Error: Bad Connection Status", EXPFILL }}, |
||
8512 | { &ei_ncp_connection_destroyed, { "ncp.connection_destroyed", PI_RESPONSE_CODE, PI_CHAT, "Connection Destroyed", EXPFILL }}, |
||
8513 | { &ei_ncp_no_request_record_found, { "ncp.no_request_record_found", PI_SEQUENCE, PI_NOTE, "No request record found.", EXPFILL }}, |
||
8514 | { &ei_ncp_invalid_offset, { "ncp.invalid_offset", PI_MALFORMED, PI_ERROR, "Invalid offset", EXPFILL }}, |
||
8515 | { &ei_ncp_address_type, { "ncp.address_type.unknown", PI_PROTOCOL, PI_WARN, "Unknown Address Type", EXPFILL }}, |
||
8516 | }; |
||
8517 | |||
8518 | expert_module_t* expert_ncp; |
||
8519 | |||
8520 | proto_register_field_array(proto_ncp, hf, array_length(hf));""") |
||
8521 | |||
8522 | if ett_list: |
||
8523 | print(""" |
||
8524 | proto_register_subtree_array(ett, array_length(ett));""") |
||
8525 | |||
8526 | print(""" |
||
8527 | expert_ncp = expert_register_protocol(proto_ncp); |
||
8528 | expert_register_field_array(expert_ncp, ei, array_length(ei)); |
||
8529 | register_init_routine(&ncp_init_protocol); |
||
8530 | register_postseq_cleanup_routine(&ncp_postseq_cleanup);""") |
||
8531 | |||
8532 | # End of proto_register_ncp2222() |
||
8533 | print("}") |
||
8534 | |||
8535 | def usage(): |
||
8536 | print("Usage: ncp2222.py -o output_file") |
||
8537 | sys.exit(1) |
||
8538 | |||
8539 | def main(): |
||
8540 | global compcode_lists |
||
8541 | global ptvc_lists |
||
8542 | global msg |
||
8543 | |||
8544 | optstring = "o:" |
||
8545 | out_filename = None |
||
8546 | |||
8547 | try: |
||
8548 | opts, args = getopt.getopt(sys.argv[1:], optstring) |
||
8549 | except getopt.error: |
||
8550 | usage() |
||
8551 | |||
8552 | for opt, arg in opts: |
||
8553 | if opt == "-o": |
||
8554 | out_filename = arg |
||
8555 | else: |
||
8556 | usage() |
||
8557 | |||
8558 | if len(args) != 0: |
||
8559 | usage() |
||
8560 | |||
8561 | if not out_filename: |
||
8562 | usage() |
||
8563 | |||
8564 | # Create the output file |
||
8565 | try: |
||
8566 | out_file = open(out_filename, "w") |
||
8567 | except IOError: |
||
8568 | sys.exit("Could not open %s for writing: %s" % (out_filename, |
||
8569 | IOError)) |
||
8570 | |||
8571 | # Set msg to current stdout |
||
8572 | msg = sys.stdout |
||
8573 | |||
8574 | # Set stdout to the output file |
||
8575 | sys.stdout = out_file |
||
8576 | |||
8577 | msg.write("Processing NCP definitions...\n") |
||
8578 | # Run the code, and if we catch any exception, |
||
8579 | # erase the output file. |
||
8580 | try: |
||
8581 | compcode_lists = UniqueCollection('Completion Code Lists') |
||
8582 | ptvc_lists = UniqueCollection('PTVC Lists') |
||
8583 | |||
8584 | define_errors() |
||
8585 | define_groups() |
||
8586 | |||
8587 | define_ncp2222() |
||
8588 | |||
8589 | msg.write("Defined %d NCP types.\n" % (len(packets),)) |
||
8590 | produce_code() |
||
8591 | except: |
||
8592 | traceback.print_exc(20, msg) |
||
8593 | try: |
||
8594 | out_file.close() |
||
8595 | except IOError: |
||
8596 | msg.write("Could not close %s: %s\n" % (out_filename, IOError)) |
||
8597 | |||
8598 | try: |
||
8599 | if os.path.exists(out_filename): |
||
8600 | os.remove(out_filename) |
||
8601 | except OSError: |
||
8602 | msg.write("Could not remove %s: %s\n" % (out_filename, OSError)) |
||
8603 | |||
8604 | sys.exit(1) |
||
8605 | |||
8606 | |||
8607 | |||
8608 | def define_ncp2222(): |
||
8609 | ############################################################################## |
||
8610 | # NCP Packets. Here I list functions and subfunctions in hexadecimal like the |
||
8611 | # NCP book (and I believe LanAlyzer does this too). |
||
8612 | # However, Novell lists these in decimal in their on-line documentation. |
||
8613 | ############################################################################## |
||
8614 | # 2222/01 |
||
8615 | pkt = NCP(0x01, "File Set Lock", 'sync') |
||
8616 | pkt.Request(7) |
||
8617 | pkt.Reply(8) |
||
8618 | pkt.CompletionCodes([0x0000]) |
||
8619 | # 2222/02 |
||
8620 | pkt = NCP(0x02, "File Release Lock", 'sync') |
||
8621 | pkt.Request(7) |
||
8622 | pkt.Reply(8) |
||
8623 | pkt.CompletionCodes([0x0000, 0xff00]) |
||
8624 | # 2222/03 |
||
8625 | pkt = NCP(0x03, "Log File Exclusive", 'sync') |
||
8626 | pkt.Request( (12, 267), [ |
||
8627 | rec( 7, 1, DirHandle ), |
||
8628 | rec( 8, 1, LockFlag ), |
||
8629 | rec( 9, 2, TimeoutLimit, ENC_BIG_ENDIAN ), |
||
8630 | rec( 11, (1, 256), FilePath ), |
||
8631 | ]) |
||
8632 | pkt.Reply(8) |
||
8633 | pkt.CompletionCodes([0x0000, 0x8200, 0x9600, 0xfe0d, 0xff01]) |
||
8634 | # 2222/04 |
||
8635 | pkt = NCP(0x04, "Lock File Set", 'sync') |
||
8636 | pkt.Request( 9, [ |
||
8637 | rec( 7, 2, TimeoutLimit ), |
||
8638 | ]) |
||
8639 | pkt.Reply(8) |
||
8640 | pkt.CompletionCodes([0x0000, 0xfe0d, 0xff01]) |
||
8641 | ## 2222/05 |
||
8642 | pkt = NCP(0x05, "Release File", 'sync') |
||
8643 | pkt.Request( (9, 264), [ |
||
8644 | rec( 7, 1, DirHandle ), |
||
8645 | rec( 8, (1, 256), FilePath ), |
||
8646 | ]) |
||
8647 | pkt.Reply(8) |
||
8648 | pkt.CompletionCodes([0x0000, 0x9b00, 0x9c03, 0xff1a]) |
||
8649 | # 2222/06 |
||
8650 | pkt = NCP(0x06, "Release File Set", 'sync') |
||
8651 | pkt.Request( 8, [ |
||
8652 | rec( 7, 1, LockFlag ), |
||
8653 | ]) |
||
8654 | pkt.Reply(8) |
||
8655 | pkt.CompletionCodes([0x0000]) |
||
8656 | # 2222/07 |
||
8657 | pkt = NCP(0x07, "Clear File", 'sync') |
||
8658 | pkt.Request( (9, 264), [ |
||
8659 | rec( 7, 1, DirHandle ), |
||
8660 | rec( 8, (1, 256), FilePath ), |
||
8661 | ]) |
||
8662 | pkt.Reply(8) |
||
8663 | pkt.CompletionCodes([0x0000, 0x9600, 0x9804, 0x9b03, 0x9c03, |
||
8664 | 0xa100, 0xfd00, 0xff1a]) |
||
8665 | # 2222/08 |
||
8666 | pkt = NCP(0x08, "Clear File Set", 'sync') |
||
8667 | pkt.Request( 8, [ |
||
8668 | rec( 7, 1, LockFlag ), |
||
8669 | ]) |
||
8670 | pkt.Reply(8) |
||
8671 | pkt.CompletionCodes([0x0000]) |
||
8672 | # 2222/09 |
||
8673 | pkt = NCP(0x09, "Log Logical Record", 'sync') |
||
8674 | pkt.Request( (11, 138), [ |
||
8675 | rec( 7, 1, LockFlag ), |
||
8676 | rec( 8, 2, TimeoutLimit, ENC_BIG_ENDIAN ), |
||
8677 | rec( 10, (1, 128), LogicalRecordName, info_str=(LogicalRecordName, "Log Logical Record: %s", ", %s")), |
||
8678 | ]) |
||
8679 | pkt.Reply(8) |
||
8680 | pkt.CompletionCodes([0x0000, 0x9600, 0xfe0d, 0xff1a]) |
||
8681 | # 2222/0A, 10 |
||
8682 | pkt = NCP(0x0A, "Lock Logical Record Set", 'sync') |
||
8683 | pkt.Request( 10, [ |
||
8684 | rec( 7, 1, LockFlag ), |
||
8685 | rec( 8, 2, TimeoutLimit ), |
||
8686 | ]) |
||
8687 | pkt.Reply(8) |
||
8688 | pkt.CompletionCodes([0x0000, 0xfe0d, 0xff1a]) |
||
8689 | # 2222/0B, 11 |
||
8690 | pkt = NCP(0x0B, "Clear Logical Record", 'sync') |
||
8691 | pkt.Request( (8, 135), [ |
||
8692 | rec( 7, (1, 128), LogicalRecordName, info_str=(LogicalRecordName, "Clear Logical Record: %s", ", %s") ), |
||
8693 | ]) |
||
8694 | pkt.Reply(8) |
||
8695 | pkt.CompletionCodes([0x0000, 0xff1a]) |
||
8696 | # 2222/0C, 12 |
||
8697 | pkt = NCP(0x0C, "Release Logical Record", 'sync') |
||
8698 | pkt.Request( (8, 135), [ |
||
8699 | rec( 7, (1, 128), LogicalRecordName, info_str=(LogicalRecordName, "Release Logical Record: %s", ", %s") ), |
||
8700 | ]) |
||
8701 | pkt.Reply(8) |
||
8702 | pkt.CompletionCodes([0x0000, 0xff1a]) |
||
8703 | # 2222/0D, 13 |
||
8704 | pkt = NCP(0x0D, "Release Logical Record Set", 'sync') |
||
8705 | pkt.Request( 8, [ |
||
8706 | rec( 7, 1, LockFlag ), |
||
8707 | ]) |
||
8708 | pkt.Reply(8) |
||
8709 | pkt.CompletionCodes([0x0000]) |
||
8710 | # 2222/0E, 14 |
||
8711 | pkt = NCP(0x0E, "Clear Logical Record Set", 'sync') |
||
8712 | pkt.Request( 8, [ |
||
8713 | rec( 7, 1, LockFlag ), |
||
8714 | ]) |
||
8715 | pkt.Reply(8) |
||
8716 | pkt.CompletionCodes([0x0000]) |
||
8717 | # 2222/1100, 17/00 |
||
8718 | pkt = NCP(0x1100, "Write to Spool File", 'print') |
||
8719 | pkt.Request( (11, 16), [ |
||
8720 | rec( 10, ( 1, 6 ), Data, info_str=(Data, "Write to Spool File: %s", ", %s") ), |
||
8721 | ]) |
||
8722 | pkt.Reply(8) |
||
8723 | pkt.CompletionCodes([0x0000, 0x0104, 0x8000, 0x8101, 0x8701, 0x8800, |
||
8724 | 0x8d00, 0x8e00, 0x8f00, 0x9001, 0x9400, 0x9500, |
||
8725 | 0x9600, 0x9804, 0x9900, 0xa100, 0xa201, 0xff19]) |
||
8726 | # 2222/1101, 17/01 |
||
8727 | pkt = NCP(0x1101, "Close Spool File", 'print') |
||
8728 | pkt.Request( 11, [ |
||
8729 | rec( 10, 1, AbortQueueFlag ), |
||
8730 | ]) |
||
8731 | pkt.Reply(8) |
||
8732 | pkt.CompletionCodes([0x0000, 0x8000, 0x8101, 0x8701, 0x8800, 0x8d00, |
||
8733 | 0x8e00, 0x8f00, 0x9001, 0x9300, 0x9400, 0x9500, |
||
8734 | 0x9600, 0x9804, 0x9900, 0x9b03, 0x9c03, 0x9d00, |
||
8735 | 0xa100, 0xd000, 0xd100, 0xd202, 0xd300, 0xd400, |
||
8736 | 0xda01, 0xe800, 0xea00, 0xeb00, 0xec00, 0xfc06, |
||
8737 | 0xfd00, 0xfe07, 0xff06]) |
||
8738 | # 2222/1102, 17/02 |
||
8739 | pkt = NCP(0x1102, "Set Spool File Flags", 'print') |
||
8740 | pkt.Request( 30, [ |
||
8741 | rec( 10, 1, PrintFlags ), |
||
8742 | rec( 11, 1, TabSize ), |
||
8743 | rec( 12, 1, TargetPrinter ), |
||
8744 | rec( 13, 1, Copies ), |
||
8745 | rec( 14, 1, FormType ), |
||
8746 | rec( 15, 1, Reserved ), |
||
8747 | rec( 16, 14, BannerName ), |
||
8748 | ]) |
||
8749 | pkt.Reply(8) |
||
8750 | pkt.CompletionCodes([0x0000, 0x9600, 0xd202, 0xd300, 0xe800, 0xea00, |
||
8751 | 0xeb00, 0xec00, 0xfc06, 0xfe07, 0xff06]) |
||
8752 | |||
8753 | # 2222/1103, 17/03 |
||
8754 | pkt = NCP(0x1103, "Spool A Disk File", 'print') |
||
8755 | pkt.Request( (12, 23), [ |
||
8756 | rec( 10, 1, DirHandle ), |
||
8757 | rec( 11, (1, 12), Data, info_str=(Data, "Spool a Disk File: %s", ", %s") ), |
||
8758 | ]) |
||
8759 | pkt.Reply(8) |
||
8760 | pkt.CompletionCodes([0x0000, 0x8000, 0x8101, 0x8701, 0x8800, 0x8d00, |
||
8761 | 0x8e00, 0x8f00, 0x9001, 0x9300, 0x9400, 0x9500, |
||
8762 | 0x9600, 0x9804, 0x9900, 0x9b03, 0x9c03, 0x9d00, |
||
8763 | 0xa100, 0xd000, 0xd100, 0xd202, 0xd300, 0xd400, |
||
8764 | 0xda01, 0xe800, 0xea00, 0xeb00, 0xec00, 0xfc06, |
||
8765 | 0xfd00, 0xfe07, 0xff06]) |
||
8766 | |||
8767 | # 2222/1106, 17/06 |
||
8768 | pkt = NCP(0x1106, "Get Printer Status", 'print') |
||
8769 | pkt.Request( 11, [ |
||
8770 | rec( 10, 1, TargetPrinter ), |
||
8771 | ]) |
||
8772 | pkt.Reply(12, [ |
||
8773 | rec( 8, 1, PrinterHalted ), |
||
8774 | rec( 9, 1, PrinterOffLine ), |
||
8775 | rec( 10, 1, CurrentFormType ), |
||
8776 | rec( 11, 1, RedirectedPrinter ), |
||
8777 | ]) |
||
8778 | pkt.CompletionCodes([0x0000, 0x9600, 0xfb05, 0xfd00, 0xff06]) |
||
8779 | |||
8780 | # 2222/1109, 17/09 |
||
8781 | pkt = NCP(0x1109, "Create Spool File", 'print') |
||
8782 | pkt.Request( (12, 23), [ |
||
8783 | rec( 10, 1, DirHandle ), |
||
8784 | rec( 11, (1, 12), Data, info_str=(Data, "Create Spool File: %s", ", %s") ), |
||
8785 | ]) |
||
8786 | pkt.Reply(8) |
||
8787 | pkt.CompletionCodes([0x0000, 0x8000, 0x8101, 0x8400, 0x8701, 0x8d00, |
||
8788 | 0x8f00, 0x9001, 0x9400, 0x9600, 0x9804, 0x9900, |
||
8789 | 0x9b03, 0x9c03, 0xa100, 0xd000, 0xd100, 0xd202, |
||
8790 | 0xd300, 0xd400, 0xda01, 0xe800, 0xea00, 0xeb00, |
||
8791 | 0xec00, 0xfc06, 0xfd00, 0xfe07, 0xff06]) |
||
8792 | |||
8793 | # 2222/110A, 17/10 |
||
8794 | pkt = NCP(0x110A, "Get Printer's Queue", 'print') |
||
8795 | pkt.Request( 11, [ |
||
8796 | rec( 10, 1, TargetPrinter ), |
||
8797 | ]) |
||
8798 | pkt.Reply( 12, [ |
||
8799 | rec( 8, 4, ObjectID, ENC_BIG_ENDIAN ), |
||
8800 | ]) |
||
8801 | pkt.CompletionCodes([0x0000, 0x9600, 0xff06]) |
||
8802 | |||
8803 | # 2222/12, 18 |
||
8804 | pkt = NCP(0x12, "Get Volume Info with Number", 'file') |
||
8805 | pkt.Request( 8, [ |
||
8806 | rec( 7, 1, VolumeNumber,info_str=(VolumeNumber, "Get Volume Information for Volume %d", ", %d") ) |
||
8807 | ]) |
||
8808 | pkt.Reply( 36, [ |
||
8809 | rec( 8, 2, SectorsPerCluster, ENC_BIG_ENDIAN ), |
||
8810 | rec( 10, 2, TotalVolumeClusters, ENC_BIG_ENDIAN ), |
||
8811 | rec( 12, 2, AvailableClusters, ENC_BIG_ENDIAN ), |
||
8812 | rec( 14, 2, TotalDirectorySlots, ENC_BIG_ENDIAN ), |
||
8813 | rec( 16, 2, AvailableDirectorySlots, ENC_BIG_ENDIAN ), |
||
8814 | rec( 18, 16, VolumeName ), |
||
8815 | rec( 34, 2, RemovableFlag, ENC_BIG_ENDIAN ), |
||
8816 | ]) |
||
8817 | pkt.CompletionCodes([0x0000, 0x9804]) |
||
8818 | |||
8819 | # 2222/13, 19 |
||
8820 | pkt = NCP(0x13, "Get Station Number", 'connection') |
||
8821 | pkt.Request(7) |
||
8822 | pkt.Reply(11, [ |
||
8823 | rec( 8, 3, StationNumber ) |
||
8824 | ]) |
||
8825 | pkt.CompletionCodes([0x0000, 0xff00]) |
||
8826 | |||
8827 | # 2222/14, 20 |
||
8828 | pkt = NCP(0x14, "Get File Server Date And Time", 'fileserver') |
||
8829 | pkt.Request(7) |
||
8830 | pkt.Reply(15, [ |
||
8831 | rec( 8, 1, Year ), |
||
8832 | rec( 9, 1, Month ), |
||
8833 | rec( 10, 1, Day ), |
||
8834 | rec( 11, 1, Hour ), |
||
8835 | rec( 12, 1, Minute ), |
||
8836 | rec( 13, 1, Second ), |
||
8837 | rec( 14, 1, DayOfWeek ), |
||
8838 | ]) |
||
8839 | pkt.CompletionCodes([0x0000]) |
||
8840 | |||
8841 | # 2222/1500, 21/00 |
||
8842 | pkt = NCP(0x1500, "Send Broadcast Message", 'message') |
||
8843 | pkt.Request((13, 70), [ |
||
8844 | rec( 10, 1, ClientListLen, var="x" ), |
||
8845 | rec( 11, 1, TargetClientList, repeat="x" ), |
||
8846 | rec( 12, (1, 58), TargetMessage, info_str=(TargetMessage, "Send Broadcast Message: %s", ", %s") ), |
||
8847 | ]) |
||
8848 | pkt.Reply(10, [ |
||
8849 | rec( 8, 1, ClientListLen, var="x" ), |
||
8850 | rec( 9, 1, SendStatus, repeat="x" ) |
||
8851 | ]) |
||
8852 | pkt.CompletionCodes([0x0000, 0xfd00]) |
||
8853 | |||
8854 | # 2222/1501, 21/01 |
||
8855 | pkt = NCP(0x1501, "Get Broadcast Message", 'message') |
||
8856 | pkt.Request(10) |
||
8857 | pkt.Reply((9,66), [ |
||
8858 | rec( 8, (1, 58), TargetMessage ) |
||
8859 | ]) |
||
8860 | pkt.CompletionCodes([0x0000, 0xfd00]) |
||
8861 | |||
8862 | # 2222/1502, 21/02 |
||
8863 | pkt = NCP(0x1502, "Disable Broadcasts", 'message') |
||
8864 | pkt.Request(10) |
||
8865 | pkt.Reply(8) |
||
8866 | pkt.CompletionCodes([0x0000, 0xfb0a]) |
||
8867 | |||
8868 | # 2222/1503, 21/03 |
||
8869 | pkt = NCP(0x1503, "Enable Broadcasts", 'message') |
||
8870 | pkt.Request(10) |
||
8871 | pkt.Reply(8) |
||
8872 | pkt.CompletionCodes([0x0000]) |
||
8873 | |||
8874 | # 2222/1509, 21/09 |
||
8875 | pkt = NCP(0x1509, "Broadcast To Console", 'message') |
||
8876 | pkt.Request((11, 68), [ |
||
8877 | rec( 10, (1, 58), TargetMessage, info_str=(TargetMessage, "Broadcast to Console: %s", ", %s") ) |
||
8878 | ]) |
||
8879 | pkt.Reply(8) |
||
8880 | pkt.CompletionCodes([0x0000]) |
||
8881 | |||
8882 | # 2222/150A, 21/10 |
||
8883 | pkt = NCP(0x150A, "Send Broadcast Message", 'message') |
||
8884 | pkt.Request((17, 74), [ |
||
8885 | rec( 10, 2, ClientListCount, ENC_LITTLE_ENDIAN, var="x" ), |
||
8886 | rec( 12, 4, ClientList, ENC_LITTLE_ENDIAN, repeat="x" ), |
||
8887 | rec( 16, (1, 58), TargetMessage, info_str=(TargetMessage, "Send Broadcast Message: %s", ", %s") ), |
||
8888 | ]) |
||
8889 | pkt.Reply(14, [ |
||
8890 | rec( 8, 2, ClientListCount, ENC_LITTLE_ENDIAN, var="x" ), |
||
8891 | rec( 10, 4, ClientCompFlag, ENC_LITTLE_ENDIAN, repeat="x" ), |
||
8892 | ]) |
||
8893 | pkt.CompletionCodes([0x0000, 0xfd00]) |
||
8894 | |||
8895 | # 2222/150B, 21/11 |
||
8896 | pkt = NCP(0x150B, "Get Broadcast Message", 'message') |
||
8897 | pkt.Request(10) |
||
8898 | pkt.Reply((9,66), [ |
||
8899 | rec( 8, (1, 58), TargetMessage ) |
||
8900 | ]) |
||
8901 | pkt.CompletionCodes([0x0000, 0xfd00]) |
||
8902 | |||
8903 | # 2222/150C, 21/12 |
||
8904 | pkt = NCP(0x150C, "Connection Message Control", 'message') |
||
8905 | pkt.Request(22, [ |
||
8906 | rec( 10, 1, ConnectionControlBits ), |
||
8907 | rec( 11, 3, Reserved3 ), |
||
8908 | rec( 14, 4, ConnectionListCount, ENC_LITTLE_ENDIAN, var="x" ), |
||
8909 | rec( 18, 4, ConnectionList, ENC_LITTLE_ENDIAN, repeat="x" ), |
||
8910 | ]) |
||
8911 | pkt.Reply(8) |
||
8912 | pkt.CompletionCodes([0x0000, 0xff00]) |
||
8913 | |||
8914 | # 2222/1600, 22/0 |
||
8915 | pkt = NCP(0x1600, "Set Directory Handle", 'file') |
||
8916 | pkt.Request((13,267), [ |
||
8917 | rec( 10, 1, TargetDirHandle ), |
||
8918 | rec( 11, 1, DirHandle ), |
||
8919 | rec( 12, (1, 255), Path, info_str=(Path, "Set Directory Handle to: %s", ", %s") ), |
||
8920 | ]) |
||
8921 | pkt.Reply(8) |
||
8922 | pkt.CompletionCodes([0x0000, 0x9600, 0x9804, 0x9b03, 0x9c03, 0xa100, 0xfa00, |
||
8923 | 0xfd00, 0xff00]) |
||
8924 | |||
8925 | |||
8926 | # 2222/1601, 22/1 |
||
8927 | pkt = NCP(0x1601, "Get Directory Path", 'file') |
||
8928 | pkt.Request(11, [ |
||
8929 | rec( 10, 1, DirHandle,info_str=(DirHandle, "Get Directory Path for Directory Handle %d", ", %d") ), |
||
8930 | ]) |
||
8931 | pkt.Reply((9,263), [ |
||
8932 | rec( 8, (1,255), Path ), |
||
8933 | ]) |
||
8934 | pkt.CompletionCodes([0x0000, 0x9600, 0x9b00, 0x9c00, 0xa100]) |
||
8935 | |||
8936 | # 2222/1602, 22/2 |
||
8937 | pkt = NCP(0x1602, "Scan Directory Information", 'file') |
||
8938 | pkt.Request((14,268), [ |
||
8939 | rec( 10, 1, DirHandle ), |
||
8940 | rec( 11, 2, StartingSearchNumber, ENC_BIG_ENDIAN ), |
||
8941 | rec( 13, (1, 255), Path, info_str=(Path, "Scan Directory Information: %s", ", %s") ), |
||
8942 | ]) |
||
8943 | pkt.Reply(36, [ |
||
8944 | rec( 8, 16, DirectoryPath ), |
||
8945 | rec( 24, 2, CreationDate, ENC_BIG_ENDIAN ), |
||
8946 | rec( 26, 2, CreationTime, ENC_BIG_ENDIAN ), |
||
8947 | rec( 28, 4, CreatorID, ENC_BIG_ENDIAN ), |
||
8948 | rec( 32, 1, AccessRightsMask ), |
||
8949 | rec( 33, 1, Reserved ), |
||
8950 | rec( 34, 2, NextSearchNumber, ENC_BIG_ENDIAN ), |
||
8951 | ]) |
||
8952 | pkt.CompletionCodes([0x0000, 0x9600, 0x9804, 0x9b03, 0x9c03, 0xa100, 0xfa00, |
||
8953 | 0xfd00, 0xff00]) |
||
8954 | |||
8955 | # 2222/1603, 22/3 |
||
8956 | pkt = NCP(0x1603, "Get Effective Directory Rights", 'file') |
||
8957 | pkt.Request((12,266), [ |
||
8958 | rec( 10, 1, DirHandle ), |
||
8959 | rec( 11, (1, 255), Path, info_str=(Path, "Get Effective Directory Rights: %s", ", %s") ), |
||
8960 | ]) |
||
8961 | pkt.Reply(9, [ |
||
8962 | rec( 8, 1, AccessRightsMask ), |
||
8963 | ]) |
||
8964 | pkt.CompletionCodes([0x0000, 0x9600, 0x9804, 0x9b03, 0x9c03, 0xa100, 0xfa00, |
||
8965 | 0xfd00, 0xff00]) |
||
8966 | |||
8967 | # 2222/1604, 22/4 |
||
8968 | pkt = NCP(0x1604, "Modify Maximum Rights Mask", 'file') |
||
8969 | pkt.Request((14,268), [ |
||
8970 | rec( 10, 1, DirHandle ), |
||
8971 | rec( 11, 1, RightsGrantMask ), |
||
8972 | rec( 12, 1, RightsRevokeMask ), |
||
8973 | rec( 13, (1, 255), Path, info_str=(Path, "Modify Maximum Rights Mask: %s", ", %s") ), |
||
8974 | ]) |
||
8975 | pkt.Reply(8) |
||
8976 | pkt.CompletionCodes([0x0000, 0x8c00, 0x9600, 0x9804, 0x9b03, 0x9c03, 0xa100, 0xfa00, |
||
8977 | 0xfd00, 0xff00]) |
||
8978 | |||
8979 | # 2222/1605, 22/5 |
||
8980 | pkt = NCP(0x1605, "Get Volume Number", 'file') |
||
8981 | pkt.Request((11, 265), [ |
||
8982 | rec( 10, (1,255), VolumeNameLen, info_str=(VolumeNameLen, "Get Volume Number for: %s", ", %s") ), |
||
8983 | ]) |
||
8984 | pkt.Reply(9, [ |
||
8985 | rec( 8, 1, VolumeNumber ), |
||
8986 | ]) |
||
8987 | pkt.CompletionCodes([0x0000, 0x9600, 0x9804]) |
||
8988 | |||
8989 | # 2222/1606, 22/6 |
||
8990 | pkt = NCP(0x1606, "Get Volume Name", 'file') |
||
8991 | pkt.Request(11, [ |
||
8992 | rec( 10, 1, VolumeNumber,info_str=(VolumeNumber, "Get Name for Volume %d", ", %d") ), |
||
8993 | ]) |
||
8994 | pkt.Reply((9, 263), [ |
||
8995 | rec( 8, (1,255), VolumeNameLen ), |
||
8996 | ]) |
||
8997 | pkt.CompletionCodes([0x0000, 0x9600, 0x9804, 0xff00]) |
||
8998 | |||
8999 | # 2222/160A, 22/10 |
||
9000 | pkt = NCP(0x160A, "Create Directory", 'file') |
||
9001 | pkt.Request((13,267), [ |
||
9002 | rec( 10, 1, DirHandle ), |
||
9003 | rec( 11, 1, AccessRightsMask ), |
||
9004 | rec( 12, (1, 255), Path, info_str=(Path, "Create Directory: %s", ", %s") ), |
||
9005 | ]) |
||
9006 | pkt.Reply(8) |
||
9007 | pkt.CompletionCodes([0x0000, 0x8400, 0x9600, 0x9804, 0x9900, 0x9b03, 0x9c03, |
||
9008 | 0x9e00, 0xa100, 0xfd00, 0xff00]) |
||
9009 | |||
9010 | # 2222/160B, 22/11 |
||
9011 | pkt = NCP(0x160B, "Delete Directory", 'file') |
||
9012 | pkt.Request((13,267), [ |
||
9013 | rec( 10, 1, DirHandle ), |
||
9014 | rec( 11, 1, Reserved ), |
||
9015 | rec( 12, (1, 255), Path, info_str=(Path, "Delete Directory: %s", ", %s") ), |
||
9016 | ]) |
||
9017 | pkt.Reply(8) |
||
9018 | pkt.CompletionCodes([0x0000, 0x8a00, 0x9600, 0x9804, 0x9b03, 0x9c03, |
||
9019 | 0x9f00, 0xa000, 0xa100, 0xfd00, 0xff00]) |
||
9020 | |||
9021 | # 2222/160C, 22/12 |
||
9022 | pkt = NCP(0x160C, "Scan Directory for Trustees", 'file') |
||
9023 | pkt.Request((13,267), [ |
||
9024 | rec( 10, 1, DirHandle ), |
||
9025 | rec( 11, 1, TrusteeSetNumber ), |
||
9026 | rec( 12, (1, 255), Path, info_str=(Path, "Scan Directory for Trustees: %s", ", %s") ), |
||
9027 | ]) |
||
9028 | pkt.Reply(57, [ |
||
9029 | rec( 8, 16, DirectoryPath ), |
||
9030 | rec( 24, 2, CreationDate, ENC_BIG_ENDIAN ), |
||
9031 | rec( 26, 2, CreationTime, ENC_BIG_ENDIAN ), |
||
9032 | rec( 28, 4, CreatorID ), |
||
9033 | rec( 32, 4, TrusteeID, ENC_BIG_ENDIAN ), |
||
9034 | rec( 36, 4, TrusteeID, ENC_BIG_ENDIAN ), |
||
9035 | rec( 40, 4, TrusteeID, ENC_BIG_ENDIAN ), |
||
9036 | rec( 44, 4, TrusteeID, ENC_BIG_ENDIAN ), |
||
9037 | rec( 48, 4, TrusteeID, ENC_BIG_ENDIAN ), |
||
9038 | rec( 52, 1, AccessRightsMask ), |
||
9039 | rec( 53, 1, AccessRightsMask ), |
||
9040 | rec( 54, 1, AccessRightsMask ), |
||
9041 | rec( 55, 1, AccessRightsMask ), |
||
9042 | rec( 56, 1, AccessRightsMask ), |
||
9043 | ]) |
||
9044 | pkt.CompletionCodes([0x0000, 0x8c00, 0x9600, 0x9804, 0x9b03, 0x9c03, |
||
9045 | 0xa100, 0xfd00, 0xff00]) |
||
9046 | |||
9047 | # 2222/160D, 22/13 |
||
9048 | pkt = NCP(0x160D, "Add Trustee to Directory", 'file') |
||
9049 | pkt.Request((17,271), [ |
||
9050 | rec( 10, 1, DirHandle ), |
||
9051 | rec( 11, 4, TrusteeID, ENC_BIG_ENDIAN ), |
||
9052 | rec( 15, 1, AccessRightsMask ), |
||
9053 | rec( 16, (1, 255), Path, info_str=(Path, "Add Trustee to Directory: %s", ", %s") ), |
||
9054 | ]) |
||
9055 | pkt.Reply(8) |
||
9056 | pkt.CompletionCodes([0x0000, 0x8c00, 0x9600, 0x9804, 0x9900, 0x9b03, 0x9c03, |
||
9057 | 0xa100, 0xfc06, 0xfd00, 0xff00]) |
||
9058 | |||
9059 | # 2222/160E, 22/14 |
||
9060 | pkt = NCP(0x160E, "Delete Trustee from Directory", 'file') |
||
9061 | pkt.Request((17,271), [ |
||
9062 | rec( 10, 1, DirHandle ), |
||
9063 | rec( 11, 4, TrusteeID, ENC_BIG_ENDIAN ), |
||
9064 | rec( 15, 1, Reserved ), |
||
9065 | rec( 16, (1, 255), Path, info_str=(Path, "Delete Trustee from Directory: %s", ", %s") ), |
||
9066 | ]) |
||
9067 | pkt.Reply(8) |
||
9068 | pkt.CompletionCodes([0x0000, 0x8c00, 0x9600, 0x9804, 0x9900, 0x9b03, 0x9c03, |
||
9069 | 0xa100, 0xfc06, 0xfd00, 0xfe07, 0xff00]) |
||
9070 | |||
9071 | # 2222/160F, 22/15 |
||
9072 | pkt = NCP(0x160F, "Rename Directory", 'file') |
||
9073 | pkt.Request((13, 521), [ |
||
9074 | rec( 10, 1, DirHandle ), |
||
9075 | rec( 11, (1, 255), Path, info_str=(Path, "Rename Directory: %s", ", %s") ), |
||
9076 | rec( -1, (1, 255), NewPath ), |
||
9077 | ]) |
||
9078 | pkt.Reply(8) |
||
9079 | pkt.CompletionCodes([0x0000, 0x8b00, 0x9200, 0x9600, 0x9804, 0x9b03, 0x9c03, |
||
9080 | 0x9e00, 0xa100, 0xef00, 0xfd00, 0xff00]) |
||
9081 | |||
9082 | # 2222/1610, 22/16 |
||
9083 | pkt = NCP(0x1610, "Purge Erased Files", 'file') |
||
9084 | pkt.Request(10) |
||
9085 | pkt.Reply(8) |
||
9086 | pkt.CompletionCodes([0x0000, 0x8100, 0x9600, 0x9804, 0xa100, 0xff00]) |
||
9087 | |||
9088 | # 2222/1611, 22/17 |
||
9089 | pkt = NCP(0x1611, "Recover Erased File", 'file') |
||
9090 | pkt.Request(11, [ |
||
9091 | rec( 10, 1, DirHandle,info_str=(DirHandle, "Recover Erased File from Directory Handle %d", ", %d") ), |
||
9092 | ]) |
||
9093 | pkt.Reply(38, [ |
||
9094 | rec( 8, 15, OldFileName ), |
||
9095 | rec( 23, 15, NewFileName ), |
||
9096 | ]) |
||
9097 | pkt.CompletionCodes([0x0000, 0x9600, 0x9804, 0x9b03, 0x9c03, |
||
9098 | 0xa100, 0xfd00, 0xff00]) |
||
9099 | # 2222/1612, 22/18 |
||
9100 | pkt = NCP(0x1612, "Alloc Permanent Directory Handle", 'file') |
||
9101 | pkt.Request((13, 267), [ |
||
9102 | rec( 10, 1, DirHandle ), |
||
9103 | rec( 11, 1, DirHandleName ), |
||
9104 | rec( 12, (1,255), Path, info_str=(Path, "Allocate Permanent Directory Handle: %s", ", %s") ), |
||
9105 | ]) |
||
9106 | pkt.Reply(10, [ |
||
9107 | rec( 8, 1, DirHandle ), |
||
9108 | rec( 9, 1, AccessRightsMask ), |
||
9109 | ]) |
||
9110 | pkt.CompletionCodes([0x0000, 0x9600, 0x9804, 0x9900, 0x9b00, 0x9c03, 0x9d00, |
||
9111 | 0xa100, 0xfd00, 0xff00]) |
||
9112 | # 2222/1613, 22/19 |
||
9113 | pkt = NCP(0x1613, "Alloc Temporary Directory Handle", 'file') |
||
9114 | pkt.Request((13, 267), [ |
||
9115 | rec( 10, 1, DirHandle ), |
||
9116 | rec( 11, 1, DirHandleName ), |
||
9117 | rec( 12, (1,255), Path, info_str=(Path, "Allocate Temporary Directory Handle: %s", ", %s") ), |
||
9118 | ]) |
||
9119 | pkt.Reply(10, [ |
||
9120 | rec( 8, 1, DirHandle ), |
||
9121 | rec( 9, 1, AccessRightsMask ), |
||
9122 | ]) |
||
9123 | pkt.CompletionCodes([0x0000, 0x9600, 0x9804, 0x9900, 0x9c03, 0x9d00, |
||
9124 | 0xa100, 0xfd00, 0xff00]) |
||
9125 | # 2222/1614, 22/20 |
||
9126 | pkt = NCP(0x1614, "Deallocate Directory Handle", 'file') |
||
9127 | pkt.Request(11, [ |
||
9128 | rec( 10, 1, DirHandle,info_str=(DirHandle, "Deallocate Directory Handle %d", ", %d") ), |
||
9129 | ]) |
||
9130 | pkt.Reply(8) |
||
9131 | pkt.CompletionCodes([0x0000, 0x9b03]) |
||
9132 | # 2222/1615, 22/21 |
||
9133 | pkt = NCP(0x1615, "Get Volume Info with Handle", 'file') |
||
9134 | pkt.Request( 11, [ |
||
9135 | rec( 10, 1, DirHandle,info_str=(DirHandle, "Get Volume Information with Handle %d", ", %d") ) |
||
9136 | ]) |
||
9137 | pkt.Reply( 36, [ |
||
9138 | rec( 8, 2, SectorsPerCluster, ENC_BIG_ENDIAN ), |
||
9139 | rec( 10, 2, TotalVolumeClusters, ENC_BIG_ENDIAN ), |
||
9140 | rec( 12, 2, AvailableClusters, ENC_BIG_ENDIAN ), |
||
9141 | rec( 14, 2, TotalDirectorySlots, ENC_BIG_ENDIAN ), |
||
9142 | rec( 16, 2, AvailableDirectorySlots, ENC_BIG_ENDIAN ), |
||
9143 | rec( 18, 16, VolumeName ), |
||
9144 | rec( 34, 2, RemovableFlag, ENC_BIG_ENDIAN ), |
||
9145 | ]) |
||
9146 | pkt.CompletionCodes([0x0000, 0xff00]) |
||
9147 | # 2222/1616, 22/22 |
||
9148 | pkt = NCP(0x1616, "Alloc Special Temporary Directory Handle", 'file') |
||
9149 | pkt.Request((13, 267), [ |
||
9150 | rec( 10, 1, DirHandle ), |
||
9151 | rec( 11, 1, DirHandleName ), |
||
9152 | rec( 12, (1,255), Path, info_str=(Path, "Allocate Special Temporary Directory Handle: %s", ", %s") ), |
||
9153 | ]) |
||
9154 | pkt.Reply(10, [ |
||
9155 | rec( 8, 1, DirHandle ), |
||
9156 | rec( 9, 1, AccessRightsMask ), |
||
9157 | ]) |
||
9158 | pkt.CompletionCodes([0x0000, 0x9600, 0x9804, 0x9900, 0x9b00, 0x9c03, 0x9d00, |
||
9159 | 0xa100, 0xfd00, 0xff00]) |
||
9160 | # 2222/1617, 22/23 |
||
9161 | pkt = NCP(0x1617, "Extract a Base Handle", 'file') |
||
9162 | pkt.Request(11, [ |
||
9163 | rec( 10, 1, DirHandle, info_str=(DirHandle, "Extract a Base Handle from Directory Handle %d", ", %d") ), |
||
9164 | ]) |
||
9165 | pkt.Reply(22, [ |
||
9166 | rec( 8, 10, ServerNetworkAddress ), |
||
9167 | rec( 18, 4, DirHandleLong ), |
||
9168 | ]) |
||
9169 | pkt.CompletionCodes([0x0000, 0x9600, 0x9b03]) |
||
9170 | # 2222/1618, 22/24 |
||
9171 | pkt = NCP(0x1618, "Restore an Extracted Base Handle", 'file') |
||
9172 | pkt.Request(24, [ |
||
9173 | rec( 10, 10, ServerNetworkAddress ), |
||
9174 | rec( 20, 4, DirHandleLong ), |
||
9175 | ]) |
||
9176 | pkt.Reply(10, [ |
||
9177 | rec( 8, 1, DirHandle ), |
||
9178 | rec( 9, 1, AccessRightsMask ), |
||
9179 | ]) |
||
9180 | pkt.CompletionCodes([0x0000, 0x9600, 0x9804, 0x9b03, 0x9c00, 0x9d00, 0xa100, |
||
9181 | 0xfd00, 0xff00]) |
||
9182 | # 2222/1619, 22/25 |
||
9183 | pkt = NCP(0x1619, "Set Directory Information", 'file') |
||
9184 | pkt.Request((21, 275), [ |
||
9185 | rec( 10, 1, DirHandle ), |
||
9186 | rec( 11, 2, CreationDate ), |
||
9187 | rec( 13, 2, CreationTime ), |
||
9188 | rec( 15, 4, CreatorID, ENC_BIG_ENDIAN ), |
||
9189 | rec( 19, 1, AccessRightsMask ), |
||
9190 | rec( 20, (1,255), Path, info_str=(Path, "Set Directory Information: %s", ", %s") ), |
||
9191 | ]) |
||
9192 | pkt.Reply(8) |
||
9193 | pkt.CompletionCodes([0x0000, 0x8c00, 0x9600, 0x9804, 0x9b03, 0x9c00, 0xa100, |
||
9194 | 0xff16]) |
||
9195 | # 2222/161A, 22/26 |
||
9196 | pkt = NCP(0x161A, "Get Path Name of a Volume-Directory Number Pair", 'file') |
||
9197 | pkt.Request(13, [ |
||
9198 | rec( 10, 1, VolumeNumber ), |
||
9199 | rec( 11, 2, DirectoryEntryNumberWord ), |
||
9200 | ]) |
||
9201 | pkt.Reply((9,263), [ |
||
9202 | rec( 8, (1,255), Path ), |
||
9203 | ]) |
||
9204 | pkt.CompletionCodes([0x0000, 0x9804, 0x9c00, 0xa100]) |
||
9205 | # 2222/161B, 22/27 |
||
9206 | pkt = NCP(0x161B, "Scan Salvageable Files", 'file') |
||
9207 | pkt.Request(15, [ |
||
9208 | rec( 10, 1, DirHandle ), |
||
9209 | rec( 11, 4, SequenceNumber ), |
||
9210 | ]) |
||
9211 | pkt.Reply(140, [ |
||
9212 | rec( 8, 4, SequenceNumber ), |
||
9213 | rec( 12, 2, Subdirectory ), |
||
9214 | rec( 14, 2, Reserved2 ), |
||
9215 | rec( 16, 4, AttributesDef32 ), |
||
9216 | rec( 20, 1, UniqueID ), |
||
9217 | rec( 21, 1, FlagsDef ), |
||
9218 | rec( 22, 1, DestNameSpace ), |
||
9219 | rec( 23, 1, FileNameLen ), |
||
9220 | rec( 24, 12, FileName12 ), |
||
9221 | rec( 36, 2, CreationTime ), |
||
9222 | rec( 38, 2, CreationDate ), |
||
9223 | rec( 40, 4, CreatorID, ENC_BIG_ENDIAN ), |
||
9224 | rec( 44, 2, ArchivedTime ), |
||
9225 | rec( 46, 2, ArchivedDate ), |
||
9226 | rec( 48, 4, ArchiverID, ENC_BIG_ENDIAN ), |
||
9227 | rec( 52, 2, UpdateTime ), |
||
9228 | rec( 54, 2, UpdateDate ), |
||
9229 | rec( 56, 4, UpdateID, ENC_BIG_ENDIAN ), |
||
9230 | rec( 60, 4, FileSize, ENC_BIG_ENDIAN ), |
||
9231 | rec( 64, 44, Reserved44 ), |
||
9232 | rec( 108, 2, InheritedRightsMask ), |
||
9233 | rec( 110, 2, LastAccessedDate ), |
||
9234 | rec( 112, 4, DeletedFileTime ), |
||
9235 | rec( 116, 2, DeletedTime ), |
||
9236 | rec( 118, 2, DeletedDate ), |
||
9237 | rec( 120, 4, DeletedID, ENC_BIG_ENDIAN ), |
||
9238 | rec( 124, 16, Reserved16 ), |
||
9239 | ]) |
||
9240 | pkt.CompletionCodes([0x0000, 0xfb01, 0x9801, 0xff1d]) |
||
9241 | # 2222/161C, 22/28 |
||
9242 | pkt = NCP(0x161C, "Recover Salvageable File", 'file') |
||
9243 | pkt.Request((17,525), [ |
||
9244 | rec( 10, 1, DirHandle ), |
||
9245 | rec( 11, 4, SequenceNumber ), |
||
9246 | rec( 15, (1, 255), FileName, info_str=(FileName, "Recover File: %s", ", %s") ), |
||
9247 | rec( -1, (1, 255), NewFileNameLen ), |
||
9248 | ]) |
||
9249 | pkt.Reply(8) |
||
9250 | pkt.CompletionCodes([0x0000, 0x8401, 0x9c03, 0xfe02]) |
||
9251 | # 2222/161D, 22/29 |
||
9252 | pkt = NCP(0x161D, "Purge Salvageable File", 'file') |
||
9253 | pkt.Request(15, [ |
||
9254 | rec( 10, 1, DirHandle ), |
||
9255 | rec( 11, 4, SequenceNumber ), |
||
9256 | ]) |
||
9257 | pkt.Reply(8) |
||
9258 | pkt.CompletionCodes([0x0000, 0x8500, 0x9c03]) |
||
9259 | # 2222/161E, 22/30 |
||
9260 | pkt = NCP(0x161E, "Scan a Directory", 'file') |
||
9261 | pkt.Request((17, 271), [ |
||
9262 | rec( 10, 1, DirHandle ), |
||
9263 | rec( 11, 1, DOSFileAttributes ), |
||
9264 | rec( 12, 4, SequenceNumber ), |
||
9265 | rec( 16, (1, 255), SearchPattern, info_str=(SearchPattern, "Scan a Directory: %s", ", %s") ), |
||
9266 | ]) |
||
9267 | pkt.Reply(140, [ |
||
9268 | rec( 8, 4, SequenceNumber ), |
||
9269 | rec( 12, 4, Subdirectory ), |
||
9270 | rec( 16, 4, AttributesDef32 ), |
||
9271 | rec( 20, 1, UniqueID, ENC_LITTLE_ENDIAN ), |
||
9272 | rec( 21, 1, PurgeFlags ), |
||
9273 | rec( 22, 1, DestNameSpace ), |
||
9274 | rec( 23, 1, NameLen ), |
||
9275 | rec( 24, 12, Name12 ), |
||
9276 | rec( 36, 2, CreationTime ), |
||
9277 | rec( 38, 2, CreationDate ), |
||
9278 | rec( 40, 4, CreatorID, ENC_BIG_ENDIAN ), |
||
9279 | rec( 44, 2, ArchivedTime ), |
||
9280 | rec( 46, 2, ArchivedDate ), |
||
9281 | rec( 48, 4, ArchiverID, ENC_BIG_ENDIAN ), |
||
9282 | rec( 52, 2, UpdateTime ), |
||
9283 | rec( 54, 2, UpdateDate ), |
||
9284 | rec( 56, 4, UpdateID, ENC_BIG_ENDIAN ), |
||
9285 | rec( 60, 4, FileSize, ENC_BIG_ENDIAN ), |
||
9286 | rec( 64, 44, Reserved44 ), |
||
9287 | rec( 108, 2, InheritedRightsMask ), |
||
9288 | rec( 110, 2, LastAccessedDate ), |
||
9289 | rec( 112, 28, Reserved28 ), |
||
9290 | ]) |
||
9291 | pkt.CompletionCodes([0x0000, 0x8500, 0x9c03]) |
||
9292 | # 2222/161F, 22/31 |
||
9293 | pkt = NCP(0x161F, "Get Directory Entry", 'file') |
||
9294 | pkt.Request(11, [ |
||
9295 | rec( 10, 1, DirHandle ), |
||
9296 | ]) |
||
9297 | pkt.Reply(136, [ |
||
9298 | rec( 8, 4, Subdirectory ), |
||
9299 | rec( 12, 4, AttributesDef32 ), |
||
9300 | rec( 16, 1, UniqueID, ENC_LITTLE_ENDIAN ), |
||
9301 | rec( 17, 1, PurgeFlags ), |
||
9302 | rec( 18, 1, DestNameSpace ), |
||
9303 | rec( 19, 1, NameLen ), |
||
9304 | rec( 20, 12, Name12 ), |
||
9305 | rec( 32, 2, CreationTime ), |
||
9306 | rec( 34, 2, CreationDate ), |
||
9307 | rec( 36, 4, CreatorID, ENC_BIG_ENDIAN ), |
||
9308 | rec( 40, 2, ArchivedTime ), |
||
9309 | rec( 42, 2, ArchivedDate ), |
||
9310 | rec( 44, 4, ArchiverID, ENC_BIG_ENDIAN ), |
||
9311 | rec( 48, 2, UpdateTime ), |
||
9312 | rec( 50, 2, UpdateDate ), |
||
9313 | rec( 52, 4, NextTrusteeEntry, ENC_BIG_ENDIAN ), |
||
9314 | rec( 56, 48, Reserved48 ), |
||
9315 | rec( 104, 2, MaximumSpace ), |
||
9316 | rec( 106, 2, InheritedRightsMask ), |
||
9317 | rec( 108, 28, Undefined28 ), |
||
9318 | ]) |
||
9319 | pkt.CompletionCodes([0x0000, 0x8900, 0xbf00, 0xfb00]) |
||
9320 | # 2222/1620, 22/32 |
||
9321 | pkt = NCP(0x1620, "Scan Volume's User Disk Restrictions", 'file') |
||
9322 | pkt.Request(15, [ |
||
9323 | rec( 10, 1, VolumeNumber ), |
||
9324 | rec( 11, 4, SequenceNumber ), |
||
9325 | ]) |
||
9326 | pkt.Reply(17, [ |
||
9327 | rec( 8, 1, NumberOfEntries, var="x" ), |
||
9328 | rec( 9, 8, ObjectIDStruct, repeat="x" ), |
||
9329 | ]) |
||
9330 | pkt.CompletionCodes([0x0000, 0x9800]) |
||
9331 | # 2222/1621, 22/33 |
||
9332 | pkt = NCP(0x1621, "Add User Disk Space Restriction", 'file') |
||
9333 | pkt.Request(19, [ |
||
9334 | rec( 10, 1, VolumeNumber ), |
||
9335 | rec( 11, 4, ObjectID ), |
||
9336 | rec( 15, 4, DiskSpaceLimit ), |
||
9337 | ]) |
||
9338 | pkt.Reply(8) |
||
9339 | pkt.CompletionCodes([0x0000, 0x8c00, 0x9600, 0x9800]) |
||
9340 | # 2222/1622, 22/34 |
||
9341 | pkt = NCP(0x1622, "Remove User Disk Space Restrictions", 'file') |
||
9342 | pkt.Request(15, [ |
||
9343 | rec( 10, 1, VolumeNumber ), |
||
9344 | rec( 11, 4, ObjectID ), |
||
9345 | ]) |
||
9346 | pkt.Reply(8) |
||
9347 | pkt.CompletionCodes([0x0000, 0x8c00, 0xfe0e]) |
||
9348 | # 2222/1623, 22/35 |
||
9349 | pkt = NCP(0x1623, "Get Directory Disk Space Restriction", 'file') |
||
9350 | pkt.Request(11, [ |
||
9351 | rec( 10, 1, DirHandle ), |
||
9352 | ]) |
||
9353 | pkt.Reply(18, [ |
||
9354 | rec( 8, 1, NumberOfEntries ), |
||
9355 | rec( 9, 1, Level ), |
||
9356 | rec( 10, 4, MaxSpace ), |
||
9357 | rec( 14, 4, CurrentSpace ), |
||
9358 | ]) |
||
9359 | pkt.CompletionCodes([0x0000]) |
||
9360 | # 2222/1624, 22/36 |
||
9361 | pkt = NCP(0x1624, "Set Directory Disk Space Restriction", 'file') |
||
9362 | pkt.Request(15, [ |
||
9363 | rec( 10, 1, DirHandle ), |
||
9364 | rec( 11, 4, DiskSpaceLimit ), |
||
9365 | ]) |
||
9366 | pkt.Reply(8) |
||
9367 | pkt.CompletionCodes([0x0000, 0x0101, 0x8c00, 0xbf00]) |
||
9368 | # 2222/1625, 22/37 |
||
9369 | pkt = NCP(0x1625, "Set Directory Entry Information", 'file') |
||
9370 | pkt.Request(NO_LENGTH_CHECK, [ |
||
9371 | # |
||
9372 | # XXX - this didn't match what was in the spec for 22/37 |
||
9373 | # on the Novell Web site. |
||
9374 | # |
||
9375 | rec( 10, 1, DirHandle ), |
||
9376 | rec( 11, 1, SearchAttributes ), |
||
9377 | rec( 12, 4, SequenceNumber ), |
||
9378 | rec( 16, 2, ChangeBits ), |
||
9379 | rec( 18, 2, Reserved2 ), |
||
9380 | rec( 20, 4, Subdirectory ), |
||
9381 | #srec(DOSDirectoryEntryStruct, req_cond="ncp.search_att_sub == TRUE"), |
||
9382 | srec(DOSFileEntryStruct, req_cond="ncp.search_att_sub == FALSE"), |
||
9383 | ]) |
||
9384 | pkt.Reply(8) |
||
9385 | pkt.ReqCondSizeConstant() |
||
9386 | pkt.CompletionCodes([0x0000, 0x0106, 0x8c00, 0xbf00]) |
||
9387 | # 2222/1626, 22/38 |
||
9388 | pkt = NCP(0x1626, "Scan File or Directory for Extended Trustees", 'file') |
||
9389 | pkt.Request((13,267), [ |
||
9390 | rec( 10, 1, DirHandle ), |
||
9391 | rec( 11, 1, SequenceByte ), |
||
9392 | rec( 12, (1, 255), Path, info_str=(Path, "Scan for Extended Trustees: %s", ", %s") ), |
||
9393 | ]) |
||
9394 | pkt.Reply(91, [ |
||
9395 | rec( 8, 1, NumberOfEntries, var="x" ), |
||
9396 | rec( 9, 4, ObjectID ), |
||
9397 | rec( 13, 4, ObjectID ), |
||
9398 | rec( 17, 4, ObjectID ), |
||
9399 | rec( 21, 4, ObjectID ), |
||
9400 | rec( 25, 4, ObjectID ), |
||
9401 | rec( 29, 4, ObjectID ), |
||
9402 | rec( 33, 4, ObjectID ), |
||
9403 | rec( 37, 4, ObjectID ), |
||
9404 | rec( 41, 4, ObjectID ), |
||
9405 | rec( 45, 4, ObjectID ), |
||
9406 | rec( 49, 4, ObjectID ), |
||
9407 | rec( 53, 4, ObjectID ), |
||
9408 | rec( 57, 4, ObjectID ), |
||
9409 | rec( 61, 4, ObjectID ), |
||
9410 | rec( 65, 4, ObjectID ), |
||
9411 | rec( 69, 4, ObjectID ), |
||
9412 | rec( 73, 4, ObjectID ), |
||
9413 | rec( 77, 4, ObjectID ), |
||
9414 | rec( 81, 4, ObjectID ), |
||
9415 | rec( 85, 4, ObjectID ), |
||
9416 | rec( 89, 2, AccessRightsMaskWord, repeat="x" ), |
||
9417 | ]) |
||
9418 | pkt.CompletionCodes([0x0000, 0x9800, 0x9b00, 0x9c00]) |
||
9419 | # 2222/1627, 22/39 |
||
9420 | pkt = NCP(0x1627, "Add Extended Trustee to Directory or File", 'file') |
||
9421 | pkt.Request((18,272), [ |
||
9422 | rec( 10, 1, DirHandle ), |
||
9423 | rec( 11, 4, ObjectID, ENC_BIG_ENDIAN ), |
||
9424 | rec( 15, 2, TrusteeRights ), |
||
9425 | rec( 17, (1, 255), Path, info_str=(Path, "Add Extended Trustee: %s", ", %s") ), |
||
9426 | ]) |
||
9427 | pkt.Reply(8) |
||
9428 | pkt.CompletionCodes([0x0000, 0x9000]) |
||
9429 | # 2222/1628, 22/40 |
||
9430 | pkt = NCP(0x1628, "Scan Directory Disk Space", 'file') |
||
9431 | pkt.Request((17,271), [ |
||
9432 | rec( 10, 1, DirHandle ), |
||
9433 | rec( 11, 1, SearchAttributes ), |
||
9434 | rec( 12, 4, SequenceNumber ), |
||
9435 | rec( 16, (1, 255), SearchPattern, info_str=(SearchPattern, "Scan Directory Disk Space: %s", ", %s") ), |
||
9436 | ]) |
||
9437 | pkt.Reply((148), [ |
||
9438 | rec( 8, 4, SequenceNumber ), |
||
9439 | rec( 12, 4, Subdirectory ), |
||
9440 | rec( 16, 4, AttributesDef32 ), |
||
9441 | rec( 20, 1, UniqueID ), |
||
9442 | rec( 21, 1, PurgeFlags ), |
||
9443 | rec( 22, 1, DestNameSpace ), |
||
9444 | rec( 23, 1, NameLen ), |
||
9445 | rec( 24, 12, Name12 ), |
||
9446 | rec( 36, 2, CreationTime ), |
||
9447 | rec( 38, 2, CreationDate ), |
||
9448 | rec( 40, 4, CreatorID, ENC_BIG_ENDIAN ), |
||
9449 | rec( 44, 2, ArchivedTime ), |
||
9450 | rec( 46, 2, ArchivedDate ), |
||
9451 | rec( 48, 4, ArchiverID, ENC_BIG_ENDIAN ), |
||
9452 | rec( 52, 2, UpdateTime ), |
||
9453 | rec( 54, 2, UpdateDate ), |
||
9454 | rec( 56, 4, UpdateID, ENC_BIG_ENDIAN ), |
||
9455 | rec( 60, 4, DataForkSize, ENC_BIG_ENDIAN ), |
||
9456 | rec( 64, 4, DataForkFirstFAT, ENC_BIG_ENDIAN ), |
||
9457 | rec( 68, 4, NextTrusteeEntry, ENC_BIG_ENDIAN ), |
||
9458 | rec( 72, 36, Reserved36 ), |
||
9459 | rec( 108, 2, InheritedRightsMask ), |
||
9460 | rec( 110, 2, LastAccessedDate ), |
||
9461 | rec( 112, 4, DeletedFileTime ), |
||
9462 | rec( 116, 2, DeletedTime ), |
||
9463 | rec( 118, 2, DeletedDate ), |
||
9464 | rec( 120, 4, DeletedID, ENC_BIG_ENDIAN ), |
||
9465 | rec( 124, 8, Undefined8 ), |
||
9466 | rec( 132, 4, PrimaryEntry, ENC_LITTLE_ENDIAN ), |
||
9467 | rec( 136, 4, NameList, ENC_LITTLE_ENDIAN ), |
||
9468 | rec( 140, 4, OtherFileForkSize, ENC_BIG_ENDIAN ), |
||
9469 | rec( 144, 4, OtherFileForkFAT, ENC_BIG_ENDIAN ), |
||
9470 | ]) |
||
9471 | pkt.CompletionCodes([0x0000, 0x8900, 0x9c03, 0xfb01, 0xff00]) |
||
9472 | # 2222/1629, 22/41 |
||
9473 | pkt = NCP(0x1629, "Get Object Disk Usage and Restrictions", 'file') |
||
9474 | pkt.Request(15, [ |
||
9475 | rec( 10, 1, VolumeNumber ), |
||
9476 | rec( 11, 4, ObjectID, ENC_LITTLE_ENDIAN ), |
||
9477 | ]) |
||
9478 | pkt.Reply(16, [ |
||
9479 | rec( 8, 4, Restriction ), |
||
9480 | rec( 12, 4, InUse ), |
||
9481 | ]) |
||
9482 | pkt.CompletionCodes([0x0000, 0x9802]) |
||
9483 | # 2222/162A, 22/42 |
||
9484 | pkt = NCP(0x162A, "Get Effective Rights for Directory Entry", 'file') |
||
9485 | pkt.Request((12,266), [ |
||
9486 | rec( 10, 1, DirHandle ), |
||
9487 | rec( 11, (1, 255), Path, info_str=(Path, "Get Effective Rights: %s", ", %s") ), |
||
9488 | ]) |
||
9489 | pkt.Reply(10, [ |
||
9490 | rec( 8, 2, AccessRightsMaskWord ), |
||
9491 | ]) |
||
9492 | pkt.CompletionCodes([0x0000, 0x9804, 0x9c03]) |
||
9493 | # 2222/162B, 22/43 |
||
9494 | pkt = NCP(0x162B, "Remove Extended Trustee from Dir or File", 'file') |
||
9495 | pkt.Request((17,271), [ |
||
9496 | rec( 10, 1, DirHandle ), |
||
9497 | rec( 11, 4, ObjectID, ENC_BIG_ENDIAN ), |
||
9498 | rec( 15, 1, Unused ), |
||
9499 | rec( 16, (1, 255), Path, info_str=(Path, "Remove Extended Trustee from %s", ", %s") ), |
||
9500 | ]) |
||
9501 | pkt.Reply(8) |
||
9502 | pkt.CompletionCodes([0x0000, 0x9002, 0x9c03, 0xfe0f, 0xff09]) |
||
9503 | # 2222/162C, 22/44 |
||
9504 | pkt = NCP(0x162C, "Get Volume and Purge Information", 'file') |
||
9505 | pkt.Request( 11, [ |
||
9506 | rec( 10, 1, VolumeNumber, info_str=(VolumeNumber, "Get Volume and Purge Information for Volume %d", ", %d") ) |
||
9507 | ]) |
||
9508 | pkt.Reply( (38,53), [ |
||
9509 | rec( 8, 4, TotalBlocks ), |
||
9510 | rec( 12, 4, FreeBlocks ), |
||
9511 | rec( 16, 4, PurgeableBlocks ), |
||
9512 | rec( 20, 4, NotYetPurgeableBlocks ), |
||
9513 | rec( 24, 4, TotalDirectoryEntries ), |
||
9514 | rec( 28, 4, AvailableDirEntries ), |
||
9515 | rec( 32, 4, Reserved4 ), |
||
9516 | rec( 36, 1, SectorsPerBlock ), |
||
9517 | rec( 37, (1,16), VolumeNameLen ), |
||
9518 | ]) |
||
9519 | pkt.CompletionCodes([0x0000]) |
||
9520 | # 2222/162D, 22/45 |
||
9521 | pkt = NCP(0x162D, "Get Directory Information", 'file') |
||
9522 | pkt.Request( 11, [ |
||
9523 | rec( 10, 1, DirHandle ) |
||
9524 | ]) |
||
9525 | pkt.Reply( (30, 45), [ |
||
9526 | rec( 8, 4, TotalBlocks ), |
||
9527 | rec( 12, 4, AvailableBlocks ), |
||
9528 | rec( 16, 4, TotalDirectoryEntries ), |
||
9529 | rec( 20, 4, AvailableDirEntries ), |
||
9530 | rec( 24, 4, Reserved4 ), |
||
9531 | rec( 28, 1, SectorsPerBlock ), |
||
9532 | rec( 29, (1,16), VolumeNameLen ), |
||
9533 | ]) |
||
9534 | pkt.CompletionCodes([0x0000, 0x9b03]) |
||
9535 | # 2222/162E, 22/46 |
||
9536 | pkt = NCP(0x162E, "Rename Or Move", 'file') |
||
9537 | pkt.Request( (17,525), [ |
||
9538 | rec( 10, 1, SourceDirHandle ), |
||
9539 | rec( 11, 1, SearchAttributes ), |
||
9540 | rec( 12, 1, SourcePathComponentCount ), |
||
9541 | rec( 13, (1,255), SourcePath, info_str=(SourcePath, "Rename or Move: %s", ", %s") ), |
||
9542 | rec( -1, 1, DestDirHandle ), |
||
9543 | rec( -1, 1, DestPathComponentCount ), |
||
9544 | rec( -1, (1,255), DestPath ), |
||
9545 | ]) |
||
9546 | pkt.Reply(8) |
||
9547 | pkt.CompletionCodes([0x0000, 0x0102, 0x8701, 0x8b00, 0x8d00, 0x8e00, |
||
9548 | 0x8f00, 0x9001, 0x9101, 0x9201, 0x9a00, 0x9b03, |
||
9549 | 0x9c03, 0xa400, 0xff17]) |
||
9550 | # 2222/162F, 22/47 |
||
9551 | pkt = NCP(0x162F, "Get Name Space Information", 'file') |
||
9552 | pkt.Request( 11, [ |
||
9553 | rec( 10, 1, VolumeNumber, info_str=(VolumeNumber, "Get Name Space Information for Volume %d", ", %d") ) |
||
9554 | ]) |
||
9555 | pkt.Reply( (15,523), [ |
||
9556 | # |
||
9557 | # XXX - why does this not display anything at all |
||
9558 | # if the stuff after the first IndexNumber is |
||
9559 | # un-commented? That stuff really is there.... |
||
9560 | # |
||
9561 | rec( 8, 1, DefinedNameSpaces, var="v" ), |
||
9562 | rec( 9, (1,255), NameSpaceName, repeat="v" ), |
||
9563 | rec( -1, 1, DefinedDataStreams, var="w" ), |
||
9564 | rec( -1, (2,256), DataStreamInfo, repeat="w" ), |
||
9565 | rec( -1, 1, LoadedNameSpaces, var="x" ), |
||
9566 | rec( -1, 1, IndexNumber, repeat="x" ), |
||
9567 | # rec( -1, 1, VolumeNameSpaces, var="y" ), |
||
9568 | # rec( -1, 1, IndexNumber, repeat="y" ), |
||
9569 | # rec( -1, 1, VolumeDataStreams, var="z" ), |
||
9570 | # rec( -1, 1, IndexNumber, repeat="z" ), |
||
9571 | ]) |
||
9572 | pkt.CompletionCodes([0x0000, 0x9802, 0xff00]) |
||
9573 | # 2222/1630, 22/48 |
||
9574 | pkt = NCP(0x1630, "Get Name Space Directory Entry", 'file') |
||
9575 | pkt.Request( 16, [ |
||
9576 | rec( 10, 1, VolumeNumber ), |
||
9577 | rec( 11, 4, DOSSequence ), |
||
9578 | rec( 15, 1, SrcNameSpace ), |
||
9579 | ]) |
||
9580 | pkt.Reply( 112, [ |
||
9581 | rec( 8, 4, SequenceNumber ), |
||
9582 | rec( 12, 4, Subdirectory ), |
||
9583 | rec( 16, 4, AttributesDef32 ), |
||
9584 | rec( 20, 1, UniqueID ), |
||
9585 | rec( 21, 1, Flags ), |
||
9586 | rec( 22, 1, SrcNameSpace ), |
||
9587 | rec( 23, 1, NameLength ), |
||
9588 | rec( 24, 12, Name12 ), |
||
9589 | rec( 36, 2, CreationTime ), |
||
9590 | rec( 38, 2, CreationDate ), |
||
9591 | rec( 40, 4, CreatorID, ENC_BIG_ENDIAN ), |
||
9592 | rec( 44, 2, ArchivedTime ), |
||
9593 | rec( 46, 2, ArchivedDate ), |
||
9594 | rec( 48, 4, ArchiverID ), |
||
9595 | rec( 52, 2, UpdateTime ), |
||
9596 | rec( 54, 2, UpdateDate ), |
||
9597 | rec( 56, 4, UpdateID ), |
||
9598 | rec( 60, 4, FileSize ), |
||
9599 | rec( 64, 44, Reserved44 ), |
||
9600 | rec( 108, 2, InheritedRightsMask ), |
||
9601 | rec( 110, 2, LastAccessedDate ), |
||
9602 | ]) |
||
9603 | pkt.CompletionCodes([0x0000, 0x8900, 0x9802, 0xbf00]) |
||
9604 | # 2222/1631, 22/49 |
||
9605 | pkt = NCP(0x1631, "Open Data Stream", 'file') |
||
9606 | pkt.Request( (15,269), [ |
||
9607 | rec( 10, 1, DataStream ), |
||
9608 | rec( 11, 1, DirHandle ), |
||
9609 | rec( 12, 1, AttributesDef ), |
||
9610 | rec( 13, 1, OpenRights ), |
||
9611 | rec( 14, (1, 255), FileName, info_str=(FileName, "Open Data Stream: %s", ", %s") ), |
||
9612 | ]) |
||
9613 | pkt.Reply( 12, [ |
||
9614 | rec( 8, 4, CCFileHandle, ENC_BIG_ENDIAN ), |
||
9615 | ]) |
||
9616 | pkt.CompletionCodes([0x0000, 0x8000, 0x8200, 0x9002, 0xbe00, 0xff00]) |
||
9617 | # 2222/1632, 22/50 |
||
9618 | pkt = NCP(0x1632, "Get Object Effective Rights for Directory Entry", 'file') |
||
9619 | pkt.Request( (16,270), [ |
||
9620 | rec( 10, 4, ObjectID, ENC_BIG_ENDIAN ), |
||
9621 | rec( 14, 1, DirHandle ), |
||
9622 | rec( 15, (1, 255), Path, info_str=(Path, "Get Object Effective Rights: %s", ", %s") ), |
||
9623 | ]) |
||
9624 | pkt.Reply( 10, [ |
||
9625 | rec( 8, 2, TrusteeRights ), |
||
9626 | ]) |
||
9627 | pkt.CompletionCodes([0x0000, 0x7e01, 0x9b00, 0x9c03, 0xfc06]) |
||
9628 | # 2222/1633, 22/51 |
||
9629 | pkt = NCP(0x1633, "Get Extended Volume Information", 'file') |
||
9630 | pkt.Request( 11, [ |
||
9631 | rec( 10, 1, VolumeNumber, info_str=(VolumeNumber, "Get Extended Volume Information for Volume %d", ", %d") ), |
||
9632 | ]) |
||
9633 | pkt.Reply( (139,266), [ |
||
9634 | rec( 8, 2, VolInfoReplyLen ), |
||
9635 | rec( 10, 128, VolInfoStructure), |
||
9636 | rec( 138, (1,128), VolumeNameLen ), |
||
9637 | ]) |
||
9638 | pkt.CompletionCodes([0x0000, 0x7e01, 0x9804, 0xfb08, 0xff00]) |
||
9639 | pkt.MakeExpert("ncp1633_reply") |
||
9640 | # 2222/1634, 22/52 |
||
9641 | pkt = NCP(0x1634, "Get Mount Volume List", 'file') |
||
9642 | pkt.Request( 22, [ |
||
9643 | rec( 10, 4, StartVolumeNumber ), |
||
9644 | rec( 14, 4, VolumeRequestFlags, ENC_LITTLE_ENDIAN ), |
||
9645 | rec( 18, 4, SrcNameSpace ), |
||
9646 | ]) |
||
9647 | pkt.Reply( NO_LENGTH_CHECK, [ |
||
9648 | rec( 8, 4, ItemsInPacket, var="x" ), |
||
9649 | rec( 12, 4, NextVolumeNumber ), |
||
9650 | srec( VolumeStruct, req_cond="ncp.volume_request_flags==0x0000", repeat="x" ), |
||
9651 | srec( VolumeWithNameStruct, req_cond="ncp.volume_request_flags==0x0001", repeat="x" ), |
||
9652 | ]) |
||
9653 | pkt.ReqCondSizeVariable() |
||
9654 | pkt.CompletionCodes([0x0000, 0x9802]) |
||
9655 | # 2222/1635, 22/53 |
||
9656 | pkt = NCP(0x1635, "Get Volume Capabilities", 'file') |
||
9657 | pkt.Request( 18, [ |
||
9658 | rec( 10, 4, VolumeNumberLong ), |
||
9659 | rec( 14, 4, VersionNumberLong ), |
||
9660 | ]) |
||
9661 | pkt.Reply( NO_LENGTH_CHECK, [ |
||
9662 | rec( 8, 4, VolumeCapabilities ), |
||
9663 | rec( 12, 28, Reserved28 ), |
||
9664 | rec( 40, 64, VolumeNameStringz ), |
||
9665 | rec( 104, 128, VolumeGUID ), |
||
9666 | rec( 232, 256, PoolName ), |
||
9667 | rec( 488, PROTO_LENGTH_UNKNOWN, VolumeMountPoint ), |
||
9668 | ]) |
||
9669 | pkt.CompletionCodes([0x0000, 0x7700, 0x9802, 0xfb01]) |
||
9670 | # 2222/1636, 22/54 |
||
9671 | pkt = NCP(0x1636, "Add User Disk Space Restriction 64 Bit Aware", 'file') |
||
9672 | pkt.Request(26, [ |
||
9673 | rec( 10, 4, VolumeNumberLong ), |
||
9674 | rec( 14, 4, ObjectID, ENC_LITTLE_ENDIAN ), |
||
9675 | rec( 18, 8, DiskSpaceLimit64 ), |
||
9676 | ]) |
||
9677 | pkt.Reply(8) |
||
9678 | pkt.CompletionCodes([0x0000, 0x8c00, 0x9600, 0x9800]) |
||
9679 | # 2222/1637, 22/55 |
||
9680 | pkt = NCP(0x1637, "Get Object Disk Usage and Restrictions 64 Bit Aware", 'file') |
||
9681 | pkt.Request(18, [ |
||
9682 | rec( 10, 4, VolumeNumberLong ), |
||
9683 | rec( 14, 4, ObjectID, ENC_LITTLE_ENDIAN ), |
||
9684 | ]) |
||
9685 | pkt.Reply(24, [ |
||
9686 | rec( 8, 8, RestrictionQuad ), |
||
9687 | rec( 16, 8, InUse64 ), |
||
9688 | ]) |
||
9689 | pkt.CompletionCodes([0x0000, 0x9802]) |
||
9690 | # 2222/1638, 22/56 |
||
9691 | pkt = NCP(0x1638, "Scan Volume's User Disk Restrictions 64 Bit Aware", 'file') |
||
9692 | pkt.Request(18, [ |
||
9693 | rec( 10, 4, VolumeNumberLong ), |
||
9694 | rec( 14, 4, SequenceNumber ), |
||
9695 | ]) |
||
9696 | pkt.Reply(24, [ |
||
9697 | rec( 8, 4, NumberOfEntriesLong, var="x" ), |
||
9698 | rec( 12, 12, ObjectIDStruct64, repeat="x" ), |
||
9699 | ]) |
||
9700 | pkt.CompletionCodes([0x0000, 0x9800]) |
||
9701 | # 2222/1639, 22/57 |
||
9702 | pkt = NCP(0x1639, "Set Directory Disk Space Restriction 64 Bit Aware", 'file') |
||
9703 | pkt.Request(26, [ |
||
9704 | rec( 10, 8, DirHandle64 ), |
||
9705 | rec( 18, 8, DiskSpaceLimit64 ), |
||
9706 | ]) |
||
9707 | pkt.Reply(8) |
||
9708 | pkt.CompletionCodes([0x0000, 0x0101, 0x8c00, 0xbf00]) |
||
9709 | # 2222/163A, 22/58 |
||
9710 | pkt = NCP(0x163A, "Get Directory Information 64 Bit Aware", 'file') |
||
9711 | pkt.Request( 18, [ |
||
9712 | rec( 10, 8, DirHandle64 ) |
||
9713 | ]) |
||
9714 | pkt.Reply( (49, 64), [ |
||
9715 | rec( 8, 8, TotalBlocks64 ), |
||
9716 | rec( 16, 8, AvailableBlocks64 ), |
||
9717 | rec( 24, 8, TotalDirEntries64 ), |
||
9718 | rec( 32, 8, AvailableDirEntries64 ), |
||
9719 | rec( 40, 4, Reserved4 ), |
||
9720 | rec( 44, 4, SectorsPerBlockLong ), |
||
9721 | rec( 48, (1,16), VolumeNameLen ), |
||
9722 | ]) |
||
9723 | pkt.CompletionCodes([0x0000, 0x9b03]) |
||
9724 | # 2222/1641, 22/59 |
||
9725 | # pkt = NCP(0x1641, "Scan Volume's User Disk Restrictions 64-bit Aware", 'file') |
||
9726 | # pkt.Request(18, [ |
||
9727 | # rec( 10, 4, VolumeNumberLong ), |
||
9728 | # rec( 14, 4, SequenceNumber ), |
||
9729 | # ]) |
||
9730 | # pkt.Reply(24, [ |
||
9731 | # rec( 8, 4, NumberOfEntriesLong, var="x" ), |
||
9732 | # rec( 12, 12, ObjectIDStruct64, repeat="x" ), |
||
9733 | # ]) |
||
9734 | # pkt.CompletionCodes([0x0000, 0x9800]) |
||
9735 | # 2222/1700, 23/00 |
||
9736 | pkt = NCP(0x1700, "Login User", 'connection') |
||
9737 | pkt.Request( (12, 58), [ |
||
9738 | rec( 10, (1,16), UserName, info_str=(UserName, "Login User: %s", ", %s") ), |
||
9739 | rec( -1, (1,32), Password ), |
||
9740 | ]) |
||
9741 | pkt.Reply(8) |
||
9742 | pkt.CompletionCodes([0x0000, 0x9602, 0xc101, 0xc200, 0xc501, 0xd700, |
||
9743 | 0xd900, 0xda00, 0xdb00, 0xde00, 0xdf00, 0xe800, |
||
9744 | 0xec00, 0xed00, 0xef00, 0xf001, 0xf100, 0xf200, |
||
9745 | 0xf600, 0xfb00, 0xfc06, 0xfe07, 0xff00]) |
||
9746 | # 2222/1701, 23/01 |
||
9747 | pkt = NCP(0x1701, "Change User Password", 'bindery') |
||
9748 | pkt.Request( (13, 90), [ |
||
9749 | rec( 10, (1,16), UserName, info_str=(UserName, "Change Password for User: %s", ", %s") ), |
||
9750 | rec( -1, (1,32), Password ), |
||
9751 | rec( -1, (1,32), NewPassword ), |
||
9752 | ]) |
||
9753 | pkt.Reply(8) |
||
9754 | pkt.CompletionCodes([0x0000, 0x9600, 0xd600, 0xf001, 0xf101, 0xf501, |
||
9755 | 0xfc06, 0xfe07, 0xff00]) |
||
9756 | # 2222/1702, 23/02 |
||
9757 | pkt = NCP(0x1702, "Get User Connection List", 'connection') |
||
9758 | pkt.Request( (11, 26), [ |
||
9759 | rec( 10, (1,16), UserName, info_str=(UserName, "Get User Connection: %s", ", %s") ), |
||
9760 | ]) |
||
9761 | pkt.Reply( (9, 136), [ |
||
9762 | rec( 8, (1, 128), ConnectionNumberList ), |
||
9763 | ]) |
||
9764 | pkt.CompletionCodes([0x0000, 0x9600, 0xf001, 0xfc06, 0xfe07, 0xff00]) |
||
9765 | # 2222/1703, 23/03 |
||
9766 | pkt = NCP(0x1703, "Get User Number", 'bindery') |
||
9767 | pkt.Request( (11, 26), [ |
||
9768 | rec( 10, (1,16), UserName, info_str=(UserName, "Get User Number: %s", ", %s") ), |
||
9769 | ]) |
||
9770 | pkt.Reply( 12, [ |
||
9771 | rec( 8, 4, ObjectID, ENC_BIG_ENDIAN ), |
||
9772 | ]) |
||
9773 | pkt.CompletionCodes([0x0000, 0x9600, 0xf001, 0xfc06, 0xfe07, 0xff00]) |
||
9774 | # 2222/1705, 23/05 |
||
9775 | pkt = NCP(0x1705, "Get Station's Logged Info", 'connection') |
||
9776 | pkt.Request( 11, [ |
||
9777 | rec( 10, 1, TargetConnectionNumber, info_str=(TargetConnectionNumber, "Get Station's Logged Information on Connection %d", ", %d") ), |
||
9778 | ]) |
||
9779 | pkt.Reply( 266, [ |
||
9780 | rec( 8, 16, UserName16 ), |
||
9781 | rec( 24, 7, LoginTime ), |
||
9782 | rec( 31, 39, FullName ), |
||
9783 | rec( 70, 4, UserID, ENC_BIG_ENDIAN ), |
||
9784 | rec( 74, 128, SecurityEquivalentList ), |
||
9785 | rec( 202, 64, Reserved64 ), |
||
9786 | ]) |
||
9787 | pkt.CompletionCodes([0x0000, 0x9602, 0xfc06, 0xfd00, 0xfe07, 0xff00]) |
||
9788 | # 2222/1707, 23/07 |
||
9789 | pkt = NCP(0x1707, "Get Group Number", 'bindery') |
||
9790 | pkt.Request( 14, [ |
||
9791 | rec( 10, 4, ObjectID, ENC_BIG_ENDIAN ), |
||
9792 | ]) |
||
9793 | pkt.Reply( 62, [ |
||
9794 | rec( 8, 4, ObjectID, ENC_BIG_ENDIAN ), |
||
9795 | rec( 12, 2, ObjectType, ENC_BIG_ENDIAN ), |
||
9796 | rec( 14, 48, ObjectNameLen ), |
||
9797 | ]) |
||
9798 | pkt.CompletionCodes([0x0000, 0x9602, 0xf101, 0xfc06, 0xfe07, 0xff00]) |
||
9799 | # 2222/170C, 23/12 |
||
9800 | pkt = NCP(0x170C, "Verify Serialization", 'fileserver') |
||
9801 | pkt.Request( 14, [ |
||
9802 | rec( 10, 4, ServerSerialNumber ), |
||
9803 | ]) |
||
9804 | pkt.Reply(8) |
||
9805 | pkt.CompletionCodes([0x0000, 0xff00]) |
||
9806 | # 2222/170D, 23/13 |
||
9807 | pkt = NCP(0x170D, "Log Network Message", 'file') |
||
9808 | pkt.Request( (11, 68), [ |
||
9809 | rec( 10, (1, 58), TargetMessage, info_str=(TargetMessage, "Log Network Message: %s", ", %s") ), |
||
9810 | ]) |
||
9811 | pkt.Reply(8) |
||
9812 | pkt.CompletionCodes([0x0000, 0x8000, 0x8100, 0x8800, 0x8d00, 0x8e00, 0x8f00, |
||
9813 | 0x9001, 0x9400, 0x9600, 0x9804, 0x9900, 0x9b00, 0xa100, |
||
9814 | 0xa201, 0xff00]) |
||
9815 | # 2222/170E, 23/14 |
||
9816 | pkt = NCP(0x170E, "Get Disk Utilization", 'fileserver') |
||
9817 | pkt.Request( 15, [ |
||
9818 | rec( 10, 1, VolumeNumber ), |
||
9819 | rec( 11, 4, TrusteeID, ENC_BIG_ENDIAN ), |
||
9820 | ]) |
||
9821 | pkt.Reply( 19, [ |
||
9822 | rec( 8, 1, VolumeNumber ), |
||
9823 | rec( 9, 4, TrusteeID, ENC_BIG_ENDIAN ), |
||
9824 | rec( 13, 2, DirectoryCount, ENC_BIG_ENDIAN ), |
||
9825 | rec( 15, 2, FileCount, ENC_BIG_ENDIAN ), |
||
9826 | rec( 17, 2, ClusterCount, ENC_BIG_ENDIAN ), |
||
9827 | ]) |
||
9828 | pkt.CompletionCodes([0x0000, 0x9600, 0x9804, 0xa100, 0xf200]) |
||
9829 | # 2222/170F, 23/15 |
||
9830 | pkt = NCP(0x170F, "Scan File Information", 'file') |
||
9831 | pkt.Request((15,269), [ |
||
9832 | rec( 10, 2, LastSearchIndex ), |
||
9833 | rec( 12, 1, DirHandle ), |
||
9834 | rec( 13, 1, SearchAttributes ), |
||
9835 | rec( 14, (1, 255), FileName, info_str=(FileName, "Scan File Information: %s", ", %s") ), |
||
9836 | ]) |
||
9837 | pkt.Reply( 102, [ |
||
9838 | rec( 8, 2, NextSearchIndex ), |
||
9839 | rec( 10, 14, FileName14 ), |
||
9840 | rec( 24, 2, AttributesDef16 ), |
||
9841 | rec( 26, 4, FileSize, ENC_BIG_ENDIAN ), |
||
9842 | rec( 30, 2, CreationDate, ENC_BIG_ENDIAN ), |
||
9843 | rec( 32, 2, LastAccessedDate, ENC_BIG_ENDIAN ), |
||
9844 | rec( 34, 2, ModifiedDate, ENC_BIG_ENDIAN ), |
||
9845 | rec( 36, 2, ModifiedTime, ENC_BIG_ENDIAN ), |
||
9846 | rec( 38, 4, CreatorID, ENC_BIG_ENDIAN ), |
||
9847 | rec( 42, 2, ArchivedDate, ENC_BIG_ENDIAN ), |
||
9848 | rec( 44, 2, ArchivedTime, ENC_BIG_ENDIAN ), |
||
9849 | rec( 46, 56, Reserved56 ), |
||
9850 | ]) |
||
9851 | pkt.CompletionCodes([0x0000, 0x8800, 0x8900, 0x9300, 0x9400, 0x9804, 0x9b00, 0x9c00, |
||
9852 | 0xa100, 0xfd00, 0xff17]) |
||
9853 | # 2222/1710, 23/16 |
||
9854 | pkt = NCP(0x1710, "Set File Information", 'file') |
||
9855 | pkt.Request((91,345), [ |
||
9856 | rec( 10, 2, AttributesDef16 ), |
||
9857 | rec( 12, 4, FileSize, ENC_BIG_ENDIAN ), |
||
9858 | rec( 16, 2, CreationDate, ENC_BIG_ENDIAN ), |
||
9859 | rec( 18, 2, LastAccessedDate, ENC_BIG_ENDIAN ), |
||
9860 | rec( 20, 2, ModifiedDate, ENC_BIG_ENDIAN ), |
||
9861 | rec( 22, 2, ModifiedTime, ENC_BIG_ENDIAN ), |
||
9862 | rec( 24, 4, CreatorID, ENC_BIG_ENDIAN ), |
||
9863 | rec( 28, 2, ArchivedDate, ENC_BIG_ENDIAN ), |
||
9864 | rec( 30, 2, ArchivedTime, ENC_BIG_ENDIAN ), |
||
9865 | rec( 32, 56, Reserved56 ), |
||
9866 | rec( 88, 1, DirHandle ), |
||
9867 | rec( 89, 1, SearchAttributes ), |
||
9868 | rec( 90, (1, 255), FileName, info_str=(FileName, "Set Information for File: %s", ", %s") ), |
||
9869 | ]) |
||
9870 | pkt.Reply(8) |
||
9871 | pkt.CompletionCodes([0x0000, 0x8800, 0x8c00, 0x8e00, 0x9400, 0x9600, 0x9804, |
||
9872 | 0x9b03, 0x9c00, 0xa100, 0xa201, 0xfc06, 0xfd00, 0xfe07, |
||
9873 | 0xff17]) |
||
9874 | # 2222/1711, 23/17 |
||
9875 | pkt = NCP(0x1711, "Get File Server Information", 'fileserver') |
||
9876 | pkt.Request(10) |
||
9877 | pkt.Reply(136, [ |
||
9878 | rec( 8, 48, ServerName ), |
||
9879 | rec( 56, 1, OSMajorVersion ), |
||
9880 | rec( 57, 1, OSMinorVersion ), |
||
9881 | rec( 58, 2, ConnectionsSupportedMax, ENC_BIG_ENDIAN ), |
||
9882 | rec( 60, 2, ConnectionsInUse, ENC_BIG_ENDIAN ), |
||
9883 | rec( 62, 2, VolumesSupportedMax, ENC_BIG_ENDIAN ), |
||
9884 | rec( 64, 1, OSRevision ), |
||
9885 | rec( 65, 1, SFTSupportLevel ), |
||
9886 | rec( 66, 1, TTSLevel ), |
||
9887 | rec( 67, 2, ConnectionsMaxUsed, ENC_BIG_ENDIAN ), |
||
9888 | rec( 69, 1, AccountVersion ), |
||
9889 | rec( 70, 1, VAPVersion ), |
||
9890 | rec( 71, 1, QueueingVersion ), |
||
9891 | rec( 72, 1, PrintServerVersion ), |
||
9892 | rec( 73, 1, VirtualConsoleVersion ), |
||
9893 | rec( 74, 1, SecurityRestrictionVersion ), |
||
9894 | rec( 75, 1, InternetBridgeVersion ), |
||
9895 | rec( 76, 1, MixedModePathFlag ), |
||
9896 | rec( 77, 1, LocalLoginInfoCcode ), |
||
9897 | rec( 78, 2, ProductMajorVersion, ENC_BIG_ENDIAN ), |
||
9898 | rec( 80, 2, ProductMinorVersion, ENC_BIG_ENDIAN ), |
||
9899 | rec( 82, 2, ProductRevisionVersion, ENC_BIG_ENDIAN ), |
||
9900 | rec( 84, 1, OSLanguageID, ENC_LITTLE_ENDIAN ), |
||
9901 | rec( 85, 1, SixtyFourBitOffsetsSupportedFlag ), |
||
9902 | rec( 86, 1, OESServer ), |
||
9903 | rec( 87, 1, OESLinuxOrNetWare ), |
||
9904 | rec( 88, 48, Reserved48 ), |
||
9905 | ]) |
||
9906 | pkt.MakeExpert("ncp1711_reply") |
||
9907 | pkt.CompletionCodes([0x0000, 0x9600]) |
||
9908 | # 2222/1712, 23/18 |
||
9909 | pkt = NCP(0x1712, "Get Network Serial Number", 'fileserver') |
||
9910 | pkt.Request(10) |
||
9911 | pkt.Reply(14, [ |
||
9912 | rec( 8, 4, ServerSerialNumber ), |
||
9913 | rec( 12, 2, ApplicationNumber ), |
||
9914 | ]) |
||
9915 | pkt.CompletionCodes([0x0000, 0x9600]) |
||
9916 | # 2222/1713, 23/19 |
||
9917 | pkt = NCP(0x1713, "Get Internet Address", 'connection') |
||
9918 | pkt.Request(11, [ |
||
9919 | rec( 10, 1, TargetConnectionNumber, info_str=(TargetConnectionNumber, "Get Internet Address for Connection %d", ", %d") ), |
||
9920 | ]) |
||
9921 | pkt.Reply(20, [ |
||
9922 | rec( 8, 4, NetworkAddress, ENC_BIG_ENDIAN ), |
||
9923 | rec( 12, 6, NetworkNodeAddress ), |
||
9924 | rec( 18, 2, NetworkSocket, ENC_BIG_ENDIAN ), |
||
9925 | ]) |
||
9926 | pkt.CompletionCodes([0x0000, 0xff00]) |
||
9927 | # 2222/1714, 23/20 |
||
9928 | pkt = NCP(0x1714, "Login Object", 'connection') |
||
9929 | pkt.Request( (14, 60), [ |
||
9930 | rec( 10, 2, ObjectType, ENC_BIG_ENDIAN ), |
||
9931 | rec( 12, (1,16), ClientName, info_str=(ClientName, "Login Object: %s", ", %s") ), |
||
9932 | rec( -1, (1,32), Password ), |
||
9933 | ]) |
||
9934 | pkt.Reply(8) |
||
9935 | pkt.CompletionCodes([0x0000, 0x9602, 0xc101, 0xc200, 0xc501, 0xd600, 0xd700, |
||
9936 | 0xd900, 0xda00, 0xdb00, 0xde00, 0xdf00, 0xe800, 0xec00, |
||
9937 | 0xed00, 0xef00, 0xf001, 0xf100, 0xf200, 0xf600, 0xfb00, |
||
9938 | 0xfc06, 0xfe07, 0xff00]) |
||
9939 | # 2222/1715, 23/21 |
||
9940 | pkt = NCP(0x1715, "Get Object Connection List", 'connection') |
||
9941 | pkt.Request( (13, 28), [ |
||
9942 | rec( 10, 2, ObjectType, ENC_BIG_ENDIAN ), |
||
9943 | rec( 12, (1,16), ObjectName, info_str=(ObjectName, "Get Object Connection List: %s", ", %s") ), |
||
9944 | ]) |
||
9945 | pkt.Reply( (9, 136), [ |
||
9946 | rec( 8, (1, 128), ConnectionNumberList ), |
||
9947 | ]) |
||
9948 | pkt.CompletionCodes([0x0000, 0x9600, 0xf001, 0xfc06, 0xfe07, 0xff00]) |
||
9949 | # 2222/1716, 23/22 |
||
9950 | pkt = NCP(0x1716, "Get Station's Logged Info", 'connection') |
||
9951 | pkt.Request( 11, [ |
||
9952 | rec( 10, 1, TargetConnectionNumber ), |
||
9953 | ]) |
||
9954 | pkt.Reply( 70, [ |
||
9955 | rec( 8, 4, UserID, ENC_BIG_ENDIAN ), |
||
9956 | rec( 12, 2, ObjectType, ENC_BIG_ENDIAN ), |
||
9957 | rec( 14, 48, ObjectNameLen ), |
||
9958 | rec( 62, 7, LoginTime ), |
||
9959 | rec( 69, 1, Reserved ), |
||
9960 | ]) |
||
9961 | pkt.CompletionCodes([0x0000, 0x9602, 0xfb0a, 0xfc06, 0xfd00, 0xfe07, 0xff00]) |
||
9962 | # 2222/1717, 23/23 |
||
9963 | pkt = NCP(0x1717, "Get Login Key", 'connection') |
||
9964 | pkt.Request(10) |
||
9965 | pkt.Reply( 16, [ |
||
9966 | rec( 8, 8, LoginKey ), |
||
9967 | ]) |
||
9968 | pkt.CompletionCodes([0x0000, 0x9602]) |
||
9969 | # 2222/1718, 23/24 |
||
9970 | pkt = NCP(0x1718, "Keyed Object Login", 'connection') |
||
9971 | pkt.Request( (21, 68), [ |
||
9972 | rec( 10, 8, LoginKey ), |
||
9973 | rec( 18, 2, ObjectType, ENC_BIG_ENDIAN ), |
||
9974 | rec( 20, (1,48), ObjectName, info_str=(ObjectName, "Keyed Object Login: %s", ", %s") ), |
||
9975 | ]) |
||
9976 | pkt.Reply(8) |
||
9977 | pkt.CompletionCodes([0x0000, 0x9602, 0xc101, 0xc200, 0xc500, 0xd904, 0xda00, |
||
9978 | 0xdb00, 0xdc00, 0xde00, 0xff00]) |
||
9979 | # 2222/171A, 23/26 |
||
9980 | pkt = NCP(0x171A, "Get Internet Address", 'connection') |
||
9981 | pkt.Request(12, [ |
||
9982 | rec( 10, 2, TargetConnectionNumber ), |
||
9983 | ]) |
||
9984 | # Dissect reply in packet-ncp2222.inc |
||
9985 | pkt.Reply(8) |
||
9986 | pkt.CompletionCodes([0x0000]) |
||
9987 | # 2222/171B, 23/27 |
||
9988 | pkt = NCP(0x171B, "Get Object Connection List", 'connection') |
||
9989 | pkt.Request( (17,64), [ |
||
9990 | rec( 10, 4, SearchConnNumber ), |
||
9991 | rec( 14, 2, ObjectType, ENC_BIG_ENDIAN ), |
||
9992 | rec( 16, (1,48), ObjectName, info_str=(ObjectName, "Get Object Connection List: %s", ", %s") ), |
||
9993 | ]) |
||
9994 | pkt.Reply( (13), [ |
||
9995 | rec( 8, 1, ConnListLen, var="x" ), |
||
9996 | rec( 9, 4, ConnectionNumber, ENC_LITTLE_ENDIAN, repeat="x" ), |
||
9997 | ]) |
||
9998 | pkt.CompletionCodes([0x0000, 0x9600, 0xf001, 0xfc06, 0xfe07, 0xff00]) |
||
9999 | # 2222/171C, 23/28 |
||
10000 | pkt = NCP(0x171C, "Get Station's Logged Info", 'connection') |
||
10001 | pkt.Request( 14, [ |
||
10002 | rec( 10, 4, TargetConnectionNumber ), |
||
10003 | ]) |
||
10004 | pkt.Reply( 70, [ |
||
10005 | rec( 8, 4, UserID, ENC_BIG_ENDIAN ), |
||
10006 | rec( 12, 2, ObjectType, ENC_BIG_ENDIAN ), |
||
10007 | rec( 14, 48, ObjectNameLen ), |
||
10008 | rec( 62, 7, LoginTime ), |
||
10009 | rec( 69, 1, Reserved ), |
||
10010 | ]) |
||
10011 | pkt.CompletionCodes([0x0000, 0x7d00, 0x9602, 0xfb02, 0xfc06, 0xfd00, 0xfe07, 0xff00]) |
||
10012 | # 2222/171D, 23/29 |
||
10013 | pkt = NCP(0x171D, "Change Connection State", 'connection') |
||
10014 | pkt.Request( 11, [ |
||
10015 | rec( 10, 1, RequestCode ), |
||
10016 | ]) |
||
10017 | pkt.Reply(8) |
||
10018 | pkt.CompletionCodes([0x0000, 0x0109, 0x7a00, 0x7b00, 0x7c00, 0xe000, 0xfb06, 0xfd00]) |
||
10019 | # 2222/171E, 23/30 |
||
10020 | pkt = NCP(0x171E, "Set Watchdog Delay Interval", 'connection') |
||
10021 | pkt.Request( 14, [ |
||
10022 | rec( 10, 4, NumberOfMinutesToDelay ), |
||
10023 | ]) |
||
10024 | pkt.Reply(8) |
||
10025 | pkt.CompletionCodes([0x0000, 0x0107]) |
||
10026 | # 2222/171F, 23/31 |
||
10027 | pkt = NCP(0x171F, "Get Connection List From Object", 'connection') |
||
10028 | pkt.Request( 18, [ |
||
10029 | rec( 10, 4, ObjectID, ENC_BIG_ENDIAN ), |
||
10030 | rec( 14, 4, ConnectionNumber ), |
||
10031 | ]) |
||
10032 | pkt.Reply( (9, 136), [ |
||
10033 | rec( 8, (1, 128), ConnectionNumberList ), |
||
10034 | ]) |
||
10035 | pkt.CompletionCodes([0x0000, 0x9600, 0xf001, 0xfc06, 0xfe07, 0xff00]) |
||
10036 | # 2222/1720, 23/32 |
||
10037 | pkt = NCP(0x1720, "Scan Bindery Object (List)", 'bindery') |
||
10038 | pkt.Request((23,70), [ |
||
10039 | rec( 10, 4, NextObjectID, ENC_BIG_ENDIAN ), |
||
10040 | rec( 14, 2, ObjectType, ENC_BIG_ENDIAN ), |
||
10041 | rec( 16, 2, Reserved2 ), |
||
10042 | rec( 18, 4, InfoFlags ), |
||
10043 | rec( 22, (1,48), ObjectName, info_str=(ObjectName, "Scan Bindery Object: %s", ", %s") ), |
||
10044 | ]) |
||
10045 | pkt.Reply(NO_LENGTH_CHECK, [ |
||
10046 | rec( 8, 4, ObjectInfoReturnCount ), |
||
10047 | rec( 12, 4, NextObjectID, ENC_BIG_ENDIAN ), |
||
10048 | rec( 16, 4, ObjectID ), |
||
10049 | srec(ObjectTypeStruct, req_cond="ncp.info_flags_type == TRUE"), |
||
10050 | srec(ObjectSecurityStruct, req_cond="ncp.info_flags_security == TRUE"), |
||
10051 | srec(ObjectFlagsStruct, req_cond="ncp.info_flags_flags == TRUE"), |
||
10052 | srec(ObjectNameStruct, req_cond="ncp.info_flags_name == TRUE"), |
||
10053 | ]) |
||
10054 | pkt.ReqCondSizeVariable() |
||
10055 | pkt.CompletionCodes([0x0000, 0x9600, 0xef01, 0xfc02, 0xfe01, 0xff00]) |
||
10056 | # 2222/1721, 23/33 |
||
10057 | pkt = NCP(0x1721, "Generate GUIDs", 'connection') |
||
10058 | pkt.Request( 14, [ |
||
10059 | rec( 10, 4, ReturnInfoCount ), |
||
10060 | ]) |
||
10061 | pkt.Reply(28, [ |
||
10062 | rec( 8, 4, ReturnInfoCount, var="x" ), |
||
10063 | rec( 12, 16, GUID, repeat="x" ), |
||
10064 | ]) |
||
10065 | pkt.CompletionCodes([0x0000, 0x7e01]) |
||
10066 | # 2222/1722, 23/34 |
||
10067 | pkt = NCP(0x1722, "Set Connection Language Encoding", 'connection') |
||
10068 | pkt.Request( 22, [ |
||
10069 | rec( 10, 4, SetMask ), |
||
10070 | rec( 14, 4, NCPEncodedStringsBits ), |
||
10071 | rec( 18, 4, CodePage ), |
||
10072 | ]) |
||
10073 | pkt.Reply(8) |
||
10074 | pkt.CompletionCodes([0x0000]) |
||
10075 | # 2222/1732, 23/50 |
||
10076 | pkt = NCP(0x1732, "Create Bindery Object", 'bindery') |
||
10077 | pkt.Request( (15,62), [ |
||
10078 | rec( 10, 1, ObjectFlags ), |
||
10079 | rec( 11, 1, ObjectSecurity ), |
||
10080 | rec( 12, 2, ObjectType, ENC_BIG_ENDIAN ), |
||
10081 | rec( 14, (1,48), ObjectName, info_str=(ObjectName, "Create Bindery Object: %s", ", %s") ), |
||
10082 | ]) |
||
10083 | pkt.Reply(8) |
||
10084 | pkt.CompletionCodes([0x0000, 0x9600, 0xe700, 0xee00, 0xef00, 0xf101, 0xf501, |
||
10085 | 0xfc06, 0xfe07, 0xff00]) |
||
10086 | # 2222/1733, 23/51 |
||
10087 | pkt = NCP(0x1733, "Delete Bindery Object", 'bindery') |
||
10088 | pkt.Request( (13,60), [ |
||
10089 | rec( 10, 2, ObjectType, ENC_BIG_ENDIAN ), |
||
10090 | rec( 12, (1,48), ObjectName, info_str=(ObjectName, "Delete Bindery Object: %s", ", %s") ), |
||
10091 | ]) |
||
10092 | pkt.Reply(8) |
||
10093 | pkt.CompletionCodes([0x0000, 0x9600, 0xf000, 0xf200, 0xf400, 0xf600, 0xfb00, |
||
10094 | 0xfc06, 0xfe07, 0xff00]) |
||
10095 | # 2222/1734, 23/52 |
||
10096 | pkt = NCP(0x1734, "Rename Bindery Object", 'bindery') |
||
10097 | pkt.Request( (14,108), [ |
||
10098 | rec( 10, 2, ObjectType, ENC_BIG_ENDIAN ), |
||
10099 | rec( 12, (1,48), ObjectName, info_str=(ObjectName, "Rename Bindery Object: %s", ", %s") ), |
||
10100 | rec( -1, (1,48), NewObjectName ), |
||
10101 | ]) |
||
10102 | pkt.Reply(8) |
||
10103 | pkt.CompletionCodes([0x0000, 0x9600, 0xee00, 0xf000, 0xf300, 0xfc06, 0xfe07, 0xff00]) |
||
10104 | # 2222/1735, 23/53 |
||
10105 | pkt = NCP(0x1735, "Get Bindery Object ID", 'bindery') |
||
10106 | pkt.Request((13,60), [ |
||
10107 | rec( 10, 2, ObjectType, ENC_BIG_ENDIAN ), |
||
10108 | rec( 12, (1,48), ObjectName, info_str=(ObjectName, "Get Bindery Object: %s", ", %s") ), |
||
10109 | ]) |
||
10110 | pkt.Reply(62, [ |
||
10111 | rec( 8, 4, ObjectID, ENC_LITTLE_ENDIAN ), |
||
10112 | rec( 12, 2, ObjectType, ENC_BIG_ENDIAN ), |
||
10113 | rec( 14, 48, ObjectNameLen ), |
||
10114 | ]) |
||
10115 | pkt.CompletionCodes([0x0000, 0x9600, 0xef01, 0xf000, 0xfc02, 0xfe01, 0xff00]) |
||
10116 | # 2222/1736, 23/54 |
||
10117 | pkt = NCP(0x1736, "Get Bindery Object Name", 'bindery') |
||
10118 | pkt.Request( 14, [ |
||
10119 | rec( 10, 4, ObjectID, ENC_BIG_ENDIAN ), |
||
10120 | ]) |
||
10121 | pkt.Reply( 62, [ |
||
10122 | rec( 8, 4, ObjectID, ENC_BIG_ENDIAN ), |
||
10123 | rec( 12, 2, ObjectType, ENC_BIG_ENDIAN ), |
||
10124 | rec( 14, 48, ObjectNameLen ), |
||
10125 | ]) |
||
10126 | pkt.CompletionCodes([0x0000, 0x9600, 0xf101, 0xfc02, 0xfe01, 0xff00]) |
||
10127 | # 2222/1737, 23/55 |
||
10128 | pkt = NCP(0x1737, "Scan Bindery Object", 'bindery') |
||
10129 | pkt.Request((17,64), [ |
||
10130 | rec( 10, 4, ObjectID, ENC_BIG_ENDIAN ), |
||
10131 | rec( 14, 2, ObjectType, ENC_BIG_ENDIAN ), |
||
10132 | rec( 16, (1,48), ObjectName, info_str=(ObjectName, "Scan Bindery Object: %s", ", %s") ), |
||
10133 | ]) |
||
10134 | pkt.Reply(65, [ |
||
10135 | rec( 8, 4, ObjectID, ENC_BIG_ENDIAN ), |
||
10136 | rec( 12, 2, ObjectType, ENC_BIG_ENDIAN ), |
||
10137 | rec( 14, 48, ObjectNameLen ), |
||
10138 | rec( 62, 1, ObjectFlags ), |
||
10139 | rec( 63, 1, ObjectSecurity ), |
||
10140 | rec( 64, 1, ObjectHasProperties ), |
||
10141 | ]) |
||
10142 | pkt.CompletionCodes([0x0000, 0x9600, 0xef01, 0xfc02, |
||
10143 | 0xfe01, 0xff00]) |
||
10144 | # 2222/1738, 23/56 |
||
10145 | pkt = NCP(0x1738, "Change Bindery Object Security", 'bindery') |
||
10146 | pkt.Request((14,61), [ |
||
10147 | rec( 10, 1, ObjectSecurity ), |
||
10148 | rec( 11, 2, ObjectType, ENC_BIG_ENDIAN ), |
||
10149 | rec( 13, (1,48), ObjectName, info_str=(ObjectName, "Change Bindery Object Security: %s", ", %s") ), |
||
10150 | ]) |
||
10151 | pkt.Reply(8) |
||
10152 | pkt.CompletionCodes([0x0000, 0x9600, 0xf000, 0xf101, 0xf501, 0xfc02, 0xfe01, 0xff00]) |
||
10153 | # 2222/1739, 23/57 |
||
10154 | pkt = NCP(0x1739, "Create Property", 'bindery') |
||
10155 | pkt.Request((16,78), [ |
||
10156 | rec( 10, 2, ObjectType, ENC_BIG_ENDIAN ), |
||
10157 | rec( 12, (1,48), ObjectName ), |
||
10158 | rec( -1, 1, PropertyType ), |
||
10159 | rec( -1, 1, ObjectSecurity ), |
||
10160 | rec( -1, (1,16), PropertyName, info_str=(PropertyName, "Create Property: %s", ", %s") ), |
||
10161 | ]) |
||
10162 | pkt.Reply(8) |
||
10163 | pkt.CompletionCodes([0x0000, 0x9600, 0xed00, 0xef00, 0xf000, 0xf101, |
||
10164 | 0xf200, 0xf600, 0xf700, 0xfb00, 0xfc02, 0xfe01, |
||
10165 | 0xff00]) |
||
10166 | # 2222/173A, 23/58 |
||
10167 | pkt = NCP(0x173A, "Delete Property", 'bindery') |
||
10168 | pkt.Request((14,76), [ |
||
10169 | rec( 10, 2, ObjectType, ENC_BIG_ENDIAN ), |
||
10170 | rec( 12, (1,48), ObjectName ), |
||
10171 | rec( -1, (1,16), PropertyName, info_str=(PropertyName, "Delete Property: %s", ", %s") ), |
||
10172 | ]) |
||
10173 | pkt.Reply(8) |
||
10174 | pkt.CompletionCodes([0x0000, 0x9600, 0xf000, 0xf101, 0xf600, 0xfb00, 0xfc02, |
||
10175 | 0xfe01, 0xff00]) |
||
10176 | # 2222/173B, 23/59 |
||
10177 | pkt = NCP(0x173B, "Change Property Security", 'bindery') |
||
10178 | pkt.Request((15,77), [ |
||
10179 | rec( 10, 2, ObjectType, ENC_BIG_ENDIAN ), |
||
10180 | rec( 12, (1,48), ObjectName ), |
||
10181 | rec( -1, 1, ObjectSecurity ), |
||
10182 | rec( -1, (1,16), PropertyName, info_str=(PropertyName, "Change Property Security: %s", ", %s") ), |
||
10183 | ]) |
||
10184 | pkt.Reply(8) |
||
10185 | pkt.CompletionCodes([0x0000, 0x9600, 0xf000, 0xf101, 0xf200, 0xf600, 0xfb00, |
||
10186 | 0xfc02, 0xfe01, 0xff00]) |
||
10187 | # 2222/173C, 23/60 |
||
10188 | pkt = NCP(0x173C, "Scan Property", 'bindery') |
||
10189 | pkt.Request((18,80), [ |
||
10190 | rec( 10, 2, ObjectType, ENC_BIG_ENDIAN ), |
||
10191 | rec( 12, (1,48), ObjectName ), |
||
10192 | rec( -1, 4, LastInstance, ENC_BIG_ENDIAN ), |
||
10193 | rec( -1, (1,16), PropertyName, info_str=(PropertyName, "Scan Property: %s", ", %s") ), |
||
10194 | ]) |
||
10195 | pkt.Reply( 32, [ |
||
10196 | rec( 8, 16, PropertyName16 ), |
||
10197 | rec( 24, 1, ObjectFlags ), |
||
10198 | rec( 25, 1, ObjectSecurity ), |
||
10199 | rec( 26, 4, SearchInstance, ENC_BIG_ENDIAN ), |
||
10200 | rec( 30, 1, ValueAvailable ), |
||
10201 | rec( 31, 1, MoreProperties ), |
||
10202 | ]) |
||
10203 | pkt.CompletionCodes([0x0000, 0x9600, 0xf000, 0xf101, 0xf200, 0xf600, 0xfb00, |
||
10204 | 0xfc02, 0xfe01, 0xff00]) |
||
10205 | # 2222/173D, 23/61 |
||
10206 | pkt = NCP(0x173D, "Read Property Value", 'bindery') |
||
10207 | pkt.Request((15,77), [ |
||
10208 | rec( 10, 2, ObjectType, ENC_BIG_ENDIAN ), |
||
10209 | rec( 12, (1,48), ObjectName ), |
||
10210 | rec( -1, 1, PropertySegment ), |
||
10211 | rec( -1, (1,16), PropertyName, info_str=(PropertyName, "Read Property Value: %s", ", %s") ), |
||
10212 | ]) |
||
10213 | pkt.Reply(138, [ |
||
10214 | rec( 8, 128, PropertyData ), |
||
10215 | rec( 136, 1, PropertyHasMoreSegments ), |
||
10216 | rec( 137, 1, PropertyType ), |
||
10217 | ]) |
||
10218 | pkt.CompletionCodes([0x0000, 0x8800, 0x9300, 0x9600, 0xec01, |
||
10219 | 0xf000, 0xf100, 0xf900, 0xfb02, 0xfc02, |
||
10220 | 0xfe01, 0xff00]) |
||
10221 | # 2222/173E, 23/62 |
||
10222 | pkt = NCP(0x173E, "Write Property Value", 'bindery') |
||
10223 | pkt.Request((144,206), [ |
||
10224 | rec( 10, 2, ObjectType, ENC_BIG_ENDIAN ), |
||
10225 | rec( 12, (1,48), ObjectName ), |
||
10226 | rec( -1, 1, PropertySegment ), |
||
10227 | rec( -1, 1, MoreFlag ), |
||
10228 | rec( -1, (1,16), PropertyName, info_str=(PropertyName, "Write Property Value: %s", ", %s") ), |
||
10229 | # |
||
10230 | # XXX - don't show this if MoreFlag isn't set? |
||
10231 | # In at least some packages where it's not set, |
||
10232 | # PropertyValue appears to be garbage. |
||
10233 | # |
||
10234 | rec( -1, 128, PropertyValue ), |
||
10235 | ]) |
||
10236 | pkt.Reply(8) |
||
10237 | pkt.CompletionCodes([0x0000, 0x9600, 0xe800, 0xec01, 0xf000, 0xf800, |
||
10238 | 0xfb02, 0xfc03, 0xfe01, 0xff00 ]) |
||
10239 | # 2222/173F, 23/63 |
||
10240 | pkt = NCP(0x173F, "Verify Bindery Object Password", 'bindery') |
||
10241 | pkt.Request((14,92), [ |
||
10242 | rec( 10, 2, ObjectType, ENC_BIG_ENDIAN ), |
||
10243 | rec( 12, (1,48), ObjectName, info_str=(ObjectName, "Verify Bindery Object Password: %s", ", %s") ), |
||
10244 | rec( -1, (1,32), Password ), |
||
10245 | ]) |
||
10246 | pkt.Reply(8) |
||
10247 | pkt.CompletionCodes([0x0000, 0x9600, 0xe800, 0xec01, 0xf000, 0xf101, |
||
10248 | 0xfb02, 0xfc03, 0xfe01, 0xff00 ]) |
||
10249 | # 2222/1740, 23/64 |
||
10250 | pkt = NCP(0x1740, "Change Bindery Object Password", 'bindery') |
||
10251 | pkt.Request((15,124), [ |
||
10252 | rec( 10, 2, ObjectType, ENC_BIG_ENDIAN ), |
||
10253 | rec( 12, (1,48), ObjectName, info_str=(ObjectName, "Change Bindery Object Password: %s", ", %s") ), |
||
10254 | rec( -1, (1,32), Password ), |
||
10255 | rec( -1, (1,32), NewPassword ), |
||
10256 | ]) |
||
10257 | pkt.Reply(8) |
||
10258 | pkt.CompletionCodes([0x0000, 0x9600, 0xc501, 0xd701, 0xe800, 0xec01, 0xf001, |
||
10259 | 0xf100, 0xf800, 0xfb02, 0xfc03, 0xfe01, 0xff00]) |
||
10260 | # 2222/1741, 23/65 |
||
10261 | pkt = NCP(0x1741, "Add Bindery Object To Set", 'bindery') |
||
10262 | pkt.Request((17,126), [ |
||
10263 | rec( 10, 2, ObjectType, ENC_BIG_ENDIAN ), |
||
10264 | rec( 12, (1,48), ObjectName ), |
||
10265 | rec( -1, (1,16), PropertyName ), |
||
10266 | rec( -1, 2, MemberType, ENC_BIG_ENDIAN ), |
||
10267 | rec( -1, (1,48), MemberName, info_str=(MemberName, "Add Bindery Object to Set: %s", ", %s") ), |
||
10268 | ]) |
||
10269 | pkt.Reply(8) |
||
10270 | pkt.CompletionCodes([0x0000, 0x9600, 0xe800, 0xe900, 0xea00, 0xeb00, |
||
10271 | 0xec01, 0xf000, 0xf800, 0xfb02, 0xfc03, 0xfe01, |
||
10272 | 0xff00]) |
||
10273 | # 2222/1742, 23/66 |
||
10274 | pkt = NCP(0x1742, "Delete Bindery Object From Set", 'bindery') |
||
10275 | pkt.Request((17,126), [ |
||
10276 | rec( 10, 2, ObjectType, ENC_BIG_ENDIAN ), |
||
10277 | rec( 12, (1,48), ObjectName ), |
||
10278 | rec( -1, (1,16), PropertyName ), |
||
10279 | rec( -1, 2, MemberType, ENC_BIG_ENDIAN ), |
||
10280 | rec( -1, (1,48), MemberName, info_str=(MemberName, "Delete Bindery Object from Set: %s", ", %s") ), |
||
10281 | ]) |
||
10282 | pkt.Reply(8) |
||
10283 | pkt.CompletionCodes([0x0000, 0x9600, 0xeb00, 0xf000, 0xf800, 0xfb02, |
||
10284 | 0xfc03, 0xfe01, 0xff00]) |
||
10285 | # 2222/1743, 23/67 |
||
10286 | pkt = NCP(0x1743, "Is Bindery Object In Set", 'bindery') |
||
10287 | pkt.Request((17,126), [ |
||
10288 | rec( 10, 2, ObjectType, ENC_BIG_ENDIAN ), |
||
10289 | rec( 12, (1,48), ObjectName ), |
||
10290 | rec( -1, (1,16), PropertyName ), |
||
10291 | rec( -1, 2, MemberType, ENC_BIG_ENDIAN ), |
||
10292 | rec( -1, (1,48), MemberName, info_str=(MemberName, "Is Bindery Object in Set: %s", ", %s") ), |
||
10293 | ]) |
||
10294 | pkt.Reply(8) |
||
10295 | pkt.CompletionCodes([0x0000, 0x9600, 0xea00, 0xeb00, 0xec01, 0xf000, |
||
10296 | 0xfb02, 0xfc03, 0xfe01, 0xff00]) |
||
10297 | # 2222/1744, 23/68 |
||
10298 | pkt = NCP(0x1744, "Close Bindery", 'bindery') |
||
10299 | pkt.Request(10) |
||
10300 | pkt.Reply(8) |
||
10301 | pkt.CompletionCodes([0x0000, 0xff00]) |
||
10302 | # 2222/1745, 23/69 |
||
10303 | pkt = NCP(0x1745, "Open Bindery", 'bindery') |
||
10304 | pkt.Request(10) |
||
10305 | pkt.Reply(8) |
||
10306 | pkt.CompletionCodes([0x0000, 0xff00]) |
||
10307 | # 2222/1746, 23/70 |
||
10308 | pkt = NCP(0x1746, "Get Bindery Access Level", 'bindery') |
||
10309 | pkt.Request(10) |
||
10310 | pkt.Reply(13, [ |
||
10311 | rec( 8, 1, ObjectSecurity ), |
||
10312 | rec( 9, 4, LoggedObjectID, ENC_BIG_ENDIAN ), |
||
10313 | ]) |
||
10314 | pkt.CompletionCodes([0x0000, 0x9600]) |
||
10315 | # 2222/1747, 23/71 |
||
10316 | pkt = NCP(0x1747, "Scan Bindery Object Trustee Paths", 'bindery') |
||
10317 | pkt.Request(17, [ |
||
10318 | rec( 10, 1, VolumeNumber ), |
||
10319 | rec( 11, 2, LastSequenceNumber, ENC_BIG_ENDIAN ), |
||
10320 | rec( 13, 4, ObjectID, ENC_BIG_ENDIAN ), |
||
10321 | ]) |
||
10322 | pkt.Reply((16,270), [ |
||
10323 | rec( 8, 2, LastSequenceNumber, ENC_BIG_ENDIAN), |
||
10324 | rec( 10, 4, ObjectID, ENC_BIG_ENDIAN ), |
||
10325 | rec( 14, 1, ObjectSecurity ), |
||
10326 | rec( 15, (1,255), Path ), |
||
10327 | ]) |
||
10328 | pkt.CompletionCodes([0x0000, 0x9300, 0x9600, 0xa100, 0xf000, 0xf100, |
||
10329 | 0xf200, 0xfc02, 0xfe01, 0xff00]) |
||
10330 | # 2222/1748, 23/72 |
||
10331 | pkt = NCP(0x1748, "Get Bindery Object Access Level", 'bindery') |
||
10332 | pkt.Request(14, [ |
||
10333 | rec( 10, 4, ObjectID, ENC_BIG_ENDIAN ), |
||
10334 | ]) |
||
10335 | pkt.Reply(9, [ |
||
10336 | rec( 8, 1, ObjectSecurity ), |
||
10337 | ]) |
||
10338 | pkt.CompletionCodes([0x0000, 0x9600]) |
||
10339 | # 2222/1749, 23/73 |
||
10340 | pkt = NCP(0x1749, "Is Calling Station a Manager", 'bindery') |
||
10341 | pkt.Request(10) |
||
10342 | pkt.Reply(8) |
||
10343 | pkt.CompletionCodes([0x0003, 0xff1e]) |
||
10344 | # 2222/174A, 23/74 |
||
10345 | pkt = NCP(0x174A, "Keyed Verify Password", 'bindery') |
||
10346 | pkt.Request((21,68), [ |
||
10347 | rec( 10, 8, LoginKey ), |
||
10348 | rec( 18, 2, ObjectType, ENC_BIG_ENDIAN ), |
||
10349 | rec( 20, (1,48), ObjectName, info_str=(ObjectName, "Keyed Verify Password: %s", ", %s") ), |
||
10350 | ]) |
||
10351 | pkt.Reply(8) |
||
10352 | pkt.CompletionCodes([0x0000, 0xc500, 0xfe01, 0xff0c]) |
||
10353 | # 2222/174B, 23/75 |
||
10354 | pkt = NCP(0x174B, "Keyed Change Password", 'bindery') |
||
10355 | pkt.Request((22,100), [ |
||
10356 | rec( 10, 8, LoginKey ), |
||
10357 | rec( 18, 2, ObjectType, ENC_BIG_ENDIAN ), |
||
10358 | rec( 20, (1,48), ObjectName, info_str=(ObjectName, "Keyed Change Password: %s", ", %s") ), |
||
10359 | rec( -1, (1,32), Password ), |
||
10360 | ]) |
||
10361 | pkt.Reply(8) |
||
10362 | pkt.CompletionCodes([0x0000, 0xc500, 0xfe01, 0xff0c]) |
||
10363 | # 2222/174C, 23/76 |
||
10364 | pkt = NCP(0x174C, "List Relations Of an Object", 'bindery') |
||
10365 | pkt.Request((18,80), [ |
||
10366 | rec( 10, 4, LastSeen, ENC_BIG_ENDIAN ), |
||
10367 | rec( 14, 2, ObjectType, ENC_BIG_ENDIAN ), |
||
10368 | rec( 16, (1,48), ObjectName, info_str=(ObjectName, "List Relations of an Object: %s", ", %s") ), |
||
10369 | rec( -1, (1,16), PropertyName ), |
||
10370 | ]) |
||
10371 | pkt.Reply(14, [ |
||
10372 | rec( 8, 2, RelationsCount, ENC_BIG_ENDIAN, var="x" ), |
||
10373 | rec( 10, 4, ObjectID, ENC_BIG_ENDIAN, repeat="x" ), |
||
10374 | ]) |
||
10375 | pkt.CompletionCodes([0x0000, 0xf000, 0xf200, 0xfe01, 0xff00]) |
||
10376 | # 2222/1764, 23/100 |
||
10377 | pkt = NCP(0x1764, "Create Queue", 'qms') |
||
10378 | pkt.Request((15,316), [ |
||
10379 | rec( 10, 2, QueueType, ENC_BIG_ENDIAN ), |
||
10380 | rec( 12, (1,48), QueueName, info_str=(QueueName, "Create Queue: %s", ", %s") ), |
||
10381 | rec( -1, 1, PathBase ), |
||
10382 | rec( -1, (1,255), Path ), |
||
10383 | ]) |
||
10384 | pkt.Reply(12, [ |
||
10385 | rec( 8, 4, QueueID ), |
||
10386 | ]) |
||
10387 | pkt.CompletionCodes([0x0000, 0x9600, 0x9900, 0xd000, 0xd100, |
||
10388 | 0xd200, 0xd300, 0xd400, 0xd500, 0xd601, |
||
10389 | 0xd703, 0xd800, 0xd902, 0xda01, 0xdb02, |
||
10390 | 0xee00, 0xff00]) |
||
10391 | # 2222/1765, 23/101 |
||
10392 | pkt = NCP(0x1765, "Destroy Queue", 'qms') |
||
10393 | pkt.Request(14, [ |
||
10394 | rec( 10, 4, QueueID ), |
||
10395 | ]) |
||
10396 | pkt.Reply(8) |
||
10397 | pkt.CompletionCodes([0x0000, 0x9900, 0xd000, 0xd100, 0xd200, |
||
10398 | 0xd300, 0xd400, 0xd500, 0xd601, 0xd703, |
||
10399 | 0xd800, 0xd902, 0xda01, 0xdb02, 0xff00]) |
||
10400 | # 2222/1766, 23/102 |
||
10401 | pkt = NCP(0x1766, "Read Queue Current Status", 'qms') |
||
10402 | pkt.Request(14, [ |
||
10403 | rec( 10, 4, QueueID ), |
||
10404 | ]) |
||
10405 | pkt.Reply(20, [ |
||
10406 | rec( 8, 4, QueueID ), |
||
10407 | rec( 12, 1, QueueStatus ), |
||
10408 | rec( 13, 1, CurrentEntries ), |
||
10409 | rec( 14, 1, CurrentServers, var="x" ), |
||
10410 | rec( 15, 4, ServerID, repeat="x" ), |
||
10411 | rec( 19, 1, ServerStationList, repeat="x" ), |
||
10412 | ]) |
||
10413 | pkt.CompletionCodes([0x0000, 0x9900, 0xd000, 0xd100, 0xd200, |
||
10414 | 0xd300, 0xd400, 0xd500, 0xd601, 0xd703, |
||
10415 | 0xd800, 0xd902, 0xda01, 0xdb02, 0xff00]) |
||
10416 | # 2222/1767, 23/103 |
||
10417 | pkt = NCP(0x1767, "Set Queue Current Status", 'qms') |
||
10418 | pkt.Request(15, [ |
||
10419 | rec( 10, 4, QueueID ), |
||
10420 | rec( 14, 1, QueueStatus ), |
||
10421 | ]) |
||
10422 | pkt.Reply(8) |
||
10423 | pkt.CompletionCodes([0x0000, 0x9900, 0xd000, 0xd100, 0xd200, |
||
10424 | 0xd300, 0xd400, 0xd500, 0xd601, 0xd703, |
||
10425 | 0xd800, 0xd902, 0xda01, 0xdb02, 0xfc07, |
||
10426 | 0xff00]) |
||
10427 | # 2222/1768, 23/104 |
||
10428 | pkt = NCP(0x1768, "Create Queue Job And File", 'qms') |
||
10429 | pkt.Request(264, [ |
||
10430 | rec( 10, 4, QueueID ), |
||
10431 | rec( 14, 250, JobStruct ), |
||
10432 | ]) |
||
10433 | pkt.Reply(62, [ |
||
10434 | rec( 8, 1, ClientStation ), |
||
10435 | rec( 9, 1, ClientTaskNumber ), |
||
10436 | rec( 10, 4, ClientIDNumber, ENC_BIG_ENDIAN ), |
||
10437 | rec( 14, 4, TargetServerIDNumber, ENC_BIG_ENDIAN ), |
||
10438 | rec( 18, 6, TargetExecutionTime ), |
||
10439 | rec( 24, 6, JobEntryTime ), |
||
10440 | rec( 30, 2, JobNumber, ENC_BIG_ENDIAN ), |
||
10441 | rec( 32, 2, JobType, ENC_BIG_ENDIAN ), |
||
10442 | rec( 34, 1, JobPosition ), |
||
10443 | rec( 35, 1, JobControlFlags ), |
||
10444 | rec( 36, 14, JobFileName ), |
||
10445 | rec( 50, 6, JobFileHandle ), |
||
10446 | rec( 56, 1, ServerStation ), |
||
10447 | rec( 57, 1, ServerTaskNumber ), |
||
10448 | rec( 58, 4, ServerID, ENC_BIG_ENDIAN ), |
||
10449 | ]) |
||
10450 | pkt.CompletionCodes([0x0000, 0x9900, 0xd000, 0xd100, 0xd200, |
||
10451 | 0xd300, 0xd400, 0xd500, 0xd601, 0xd703, |
||
10452 | 0xd800, 0xd902, 0xda01, 0xdb02, 0xfc07, |
||
10453 | 0xff00]) |
||
10454 | # 2222/1769, 23/105 |
||
10455 | pkt = NCP(0x1769, "Close File And Start Queue Job", 'qms') |
||
10456 | pkt.Request(16, [ |
||
10457 | rec( 10, 4, QueueID ), |
||
10458 | rec( 14, 2, JobNumber, ENC_BIG_ENDIAN ), |
||
10459 | ]) |
||
10460 | pkt.Reply(8) |
||
10461 | pkt.CompletionCodes([0x0000, 0x9900, 0xd000, 0xd100, 0xd200, |
||
10462 | 0xd300, 0xd400, 0xd500, 0xd601, 0xd703, |
||
10463 | 0xd800, 0xd902, 0xda01, 0xdb02, 0xff00]) |
||
10464 | # 2222/176A, 23/106 |
||
10465 | pkt = NCP(0x176A, "Remove Job From Queue", 'qms') |
||
10466 | pkt.Request(16, [ |
||
10467 | rec( 10, 4, QueueID ), |
||
10468 | rec( 14, 2, JobNumber, ENC_BIG_ENDIAN ), |
||
10469 | ]) |
||
10470 | pkt.Reply(8) |
||
10471 | pkt.CompletionCodes([0x0000, 0x9900, 0xd000, 0xd100, 0xd200, |
||
10472 | 0xd300, 0xd400, 0xd500, 0xd601, 0xd703, |
||
10473 | 0xd800, 0xd902, 0xda01, 0xdb02, 0xff00]) |
||
10474 | # 2222/176B, 23/107 |
||
10475 | pkt = NCP(0x176B, "Get Queue Job List", 'qms') |
||
10476 | pkt.Request(14, [ |
||
10477 | rec( 10, 4, QueueID ), |
||
10478 | ]) |
||
10479 | pkt.Reply(12, [ |
||
10480 | rec( 8, 2, JobCount, ENC_BIG_ENDIAN, var="x" ), |
||
10481 | rec( 10, 2, JobNumber, ENC_BIG_ENDIAN, repeat="x" ), |
||
10482 | ]) |
||
10483 | pkt.CompletionCodes([0x0000, 0x9900, 0xd000, 0xd100, 0xd200, |
||
10484 | 0xd300, 0xd400, 0xd500, 0xd601, 0xd703, |
||
10485 | 0xd800, 0xd902, 0xda01, 0xdb02, 0xff00]) |
||
10486 | # 2222/176C, 23/108 |
||
10487 | pkt = NCP(0x176C, "Read Queue Job Entry", 'qms') |
||
10488 | pkt.Request(16, [ |
||
10489 | rec( 10, 4, QueueID ), |
||
10490 | rec( 14, 2, JobNumber, ENC_BIG_ENDIAN ), |
||
10491 | ]) |
||
10492 | pkt.Reply(258, [ |
||
10493 | rec( 8, 250, JobStruct ), |
||
10494 | ]) |
||
10495 | pkt.CompletionCodes([0x0000, 0x9900, 0xd000, 0xd100, 0xd200, |
||
10496 | 0xd300, 0xd400, 0xd500, 0xd601, 0xd703, |
||
10497 | 0xd800, 0xd902, 0xda01, 0xdb02, 0xff00]) |
||
10498 | # 2222/176D, 23/109 |
||
10499 | pkt = NCP(0x176D, "Change Queue Job Entry", 'qms') |
||
10500 | pkt.Request(260, [ |
||
10501 | rec( 14, 250, JobStruct ), |
||
10502 | ]) |
||
10503 | pkt.Reply(8) |
||
10504 | pkt.CompletionCodes([0x0000, 0x9900, 0xd000, 0xd100, 0xd200, |
||
10505 | 0xd300, 0xd400, 0xd500, 0xd601, 0xd703, |
||
10506 | 0xd800, 0xd902, 0xda01, 0xdb02, 0xff18]) |
||
10507 | # 2222/176E, 23/110 |
||
10508 | pkt = NCP(0x176E, "Change Queue Job Position", 'qms') |
||
10509 | pkt.Request(17, [ |
||
10510 | rec( 10, 4, QueueID ), |
||
10511 | rec( 14, 2, JobNumber, ENC_BIG_ENDIAN ), |
||
10512 | rec( 16, 1, NewPosition ), |
||
10513 | ]) |
||
10514 | pkt.Reply(8) |
||
10515 | pkt.CompletionCodes([0x0000, 0x9600, 0xd000, 0xd100, 0xd300, 0xd500, |
||
10516 | 0xd601, 0xfe07, 0xff1f]) |
||
10517 | # 2222/176F, 23/111 |
||
10518 | pkt = NCP(0x176F, "Attach Queue Server To Queue", 'qms') |
||
10519 | pkt.Request(14, [ |
||
10520 | rec( 10, 4, QueueID ), |
||
10521 | ]) |
||
10522 | pkt.Reply(8) |
||
10523 | pkt.CompletionCodes([0x0000, 0x9900, 0xd000, 0xd100, 0xd200, |
||
10524 | 0xd300, 0xd400, 0xd500, 0xd601, 0xd703, |
||
10525 | 0xd800, 0xd902, 0xda01, 0xdb02, 0xea00, |
||
10526 | 0xfc06, 0xff00]) |
||
10527 | # 2222/1770, 23/112 |
||
10528 | pkt = NCP(0x1770, "Detach Queue Server From Queue", 'qms') |
||
10529 | pkt.Request(14, [ |
||
10530 | rec( 10, 4, QueueID ), |
||
10531 | ]) |
||
10532 | pkt.Reply(8) |
||
10533 | pkt.CompletionCodes([0x0000, 0x9900, 0xd000, 0xd100, 0xd200, |
||
10534 | 0xd300, 0xd400, 0xd500, 0xd601, 0xd703, |
||
10535 | 0xd800, 0xd902, 0xda01, 0xdb02, 0xff00]) |
||
10536 | # 2222/1771, 23/113 |
||
10537 | pkt = NCP(0x1771, "Service Queue Job", 'qms') |
||
10538 | pkt.Request(16, [ |
||
10539 | rec( 10, 4, QueueID ), |
||
10540 | rec( 14, 2, ServiceType, ENC_BIG_ENDIAN ), |
||
10541 | ]) |
||
10542 | pkt.Reply(62, [ |
||
10543 | rec( 8, 1, ClientStation ), |
||
10544 | rec( 9, 1, ClientTaskNumber ), |
||
10545 | rec( 10, 4, ClientIDNumber, ENC_BIG_ENDIAN ), |
||
10546 | rec( 14, 4, TargetServerIDNumber, ENC_BIG_ENDIAN ), |
||
10547 | rec( 18, 6, TargetExecutionTime ), |
||
10548 | rec( 24, 6, JobEntryTime ), |
||
10549 | rec( 30, 2, JobNumber, ENC_BIG_ENDIAN ), |
||
10550 | rec( 32, 2, JobType, ENC_BIG_ENDIAN ), |
||
10551 | rec( 34, 1, JobPosition ), |
||
10552 | rec( 35, 1, JobControlFlags ), |
||
10553 | rec( 36, 14, JobFileName ), |
||
10554 | rec( 50, 6, JobFileHandle ), |
||
10555 | rec( 56, 1, ServerStation ), |
||
10556 | rec( 57, 1, ServerTaskNumber ), |
||
10557 | rec( 58, 4, ServerID, ENC_BIG_ENDIAN ), |
||
10558 | ]) |
||
10559 | pkt.CompletionCodes([0x0000, 0x9900, 0xd000, 0xd100, 0xd200, |
||
10560 | 0xd300, 0xd400, 0xd500, 0xd601, 0xd703, |
||
10561 | 0xd800, 0xd902, 0xda01, 0xdb02, 0xff00]) |
||
10562 | # 2222/1772, 23/114 |
||
10563 | pkt = NCP(0x1772, "Finish Servicing Queue Job", 'qms') |
||
10564 | pkt.Request(18, [ |
||
10565 | rec( 10, 4, QueueID ), |
||
10566 | rec( 14, 2, JobNumber, ENC_BIG_ENDIAN ), |
||
10567 | rec( 16, 2, ChargeInformation, ENC_BIG_ENDIAN ), |
||
10568 | ]) |
||
10569 | pkt.Reply(8) |
||
10570 | pkt.CompletionCodes([0x0000, 0x9900, 0xd000, 0xd100, 0xd200, |
||
10571 | 0xd300, 0xd400, 0xd500, 0xd601, 0xd703, |
||
10572 | 0xd800, 0xd902, 0xda01, 0xdb02, 0xfc07, 0xff00]) |
||
10573 | # 2222/1773, 23/115 |
||
10574 | pkt = NCP(0x1773, "Abort Servicing Queue Job", 'qms') |
||
10575 | pkt.Request(16, [ |
||
10576 | rec( 10, 4, QueueID ), |
||
10577 | rec( 14, 2, JobNumber, ENC_BIG_ENDIAN ), |
||
10578 | ]) |
||
10579 | pkt.Reply(8) |
||
10580 | pkt.CompletionCodes([0x0000, 0x9900, 0xd000, 0xd100, 0xd200, |
||
10581 | 0xd300, 0xd400, 0xd500, 0xd601, 0xd703, |
||
10582 | 0xd800, 0xd902, 0xda01, 0xdb02, 0xfc07, 0xff18]) |
||
10583 | # 2222/1774, 23/116 |
||
10584 | pkt = NCP(0x1774, "Change To Client Rights", 'qms') |
||
10585 | pkt.Request(16, [ |
||
10586 | rec( 10, 4, QueueID ), |
||
10587 | rec( 14, 2, JobNumber, ENC_BIG_ENDIAN ), |
||
10588 | ]) |
||
10589 | pkt.Reply(8) |
||
10590 | pkt.CompletionCodes([0x0000, 0x9900, 0xd000, 0xd100, 0xd200, |
||
10591 | 0xd300, 0xd400, 0xd500, 0xd601, 0xd703, |
||
10592 | 0xd800, 0xd902, 0xda01, 0xdb02, 0xff18]) |
||
10593 | # 2222/1775, 23/117 |
||
10594 | pkt = NCP(0x1775, "Restore Queue Server Rights", 'qms') |
||
10595 | pkt.Request(10) |
||
10596 | pkt.Reply(8) |
||
10597 | pkt.CompletionCodes([0x0000, 0x9900, 0xd000, 0xd100, 0xd200, |
||
10598 | 0xd300, 0xd400, 0xd500, 0xd601, 0xd703, |
||
10599 | 0xd800, 0xd902, 0xda01, 0xdb02, 0xff00]) |
||
10600 | # 2222/1776, 23/118 |
||
10601 | pkt = NCP(0x1776, "Read Queue Server Current Status", 'qms') |
||
10602 | pkt.Request(19, [ |
||
10603 | rec( 10, 4, QueueID ), |
||
10604 | rec( 14, 4, ServerID, ENC_BIG_ENDIAN ), |
||
10605 | rec( 18, 1, ServerStation ), |
||
10606 | ]) |
||
10607 | pkt.Reply(72, [ |
||
10608 | rec( 8, 64, ServerStatusRecord ), |
||
10609 | ]) |
||
10610 | pkt.CompletionCodes([0x0000, 0x9900, 0xd000, 0xd100, 0xd200, |
||
10611 | 0xd300, 0xd400, 0xd500, 0xd601, 0xd703, |
||
10612 | 0xd800, 0xd902, 0xda01, 0xdb02, 0xff00]) |
||
10613 | # 2222/1777, 23/119 |
||
10614 | pkt = NCP(0x1777, "Set Queue Server Current Status", 'qms') |
||
10615 | pkt.Request(78, [ |
||
10616 | rec( 10, 4, QueueID ), |
||
10617 | rec( 14, 64, ServerStatusRecord ), |
||
10618 | ]) |
||
10619 | pkt.Reply(8) |
||
10620 | pkt.CompletionCodes([0x0000, 0x9900, 0xd000, 0xd100, 0xd200, |
||
10621 | 0xd300, 0xd400, 0xd500, 0xd601, 0xd703, |
||
10622 | 0xd800, 0xd902, 0xda01, 0xdb02, 0xff00]) |
||
10623 | # 2222/1778, 23/120 |
||
10624 | pkt = NCP(0x1778, "Get Queue Job File Size", 'qms') |
||
10625 | pkt.Request(16, [ |
||
10626 | rec( 10, 4, QueueID ), |
||
10627 | rec( 14, 2, JobNumber, ENC_BIG_ENDIAN ), |
||
10628 | ]) |
||
10629 | pkt.Reply(18, [ |
||
10630 | rec( 8, 4, QueueID ), |
||
10631 | rec( 12, 2, JobNumber, ENC_BIG_ENDIAN ), |
||
10632 | rec( 14, 4, FileSize, ENC_BIG_ENDIAN ), |
||
10633 | ]) |
||
10634 | pkt.CompletionCodes([0x0000, 0x9900, 0xd000, 0xd100, 0xd200, |
||
10635 | 0xd300, 0xd400, 0xd500, 0xd601, 0xd703, |
||
10636 | 0xd800, 0xd902, 0xda01, 0xdb02, 0xfc07, 0xff00]) |
||
10637 | # 2222/1779, 23/121 |
||
10638 | pkt = NCP(0x1779, "Create Queue Job And File", 'qms') |
||
10639 | pkt.Request(264, [ |
||
10640 | rec( 10, 4, QueueID ), |
||
10641 | rec( 14, 250, JobStruct3x ), |
||
10642 | ]) |
||
10643 | pkt.Reply(94, [ |
||
10644 | rec( 8, 86, JobStructNew ), |
||
10645 | ]) |
||
10646 | pkt.CompletionCodes([0x0000, 0x9900, 0xd000, 0xd100, 0xd200, |
||
10647 | 0xd300, 0xd400, 0xd500, 0xd601, 0xd703, |
||
10648 | 0xd800, 0xd902, 0xda01, 0xdb02, 0xfc07, 0xff00]) |
||
10649 | # 2222/177A, 23/122 |
||
10650 | pkt = NCP(0x177A, "Read Queue Job Entry", 'qms') |
||
10651 | pkt.Request(18, [ |
||
10652 | rec( 10, 4, QueueID ), |
||
10653 | rec( 14, 4, JobNumberLong ), |
||
10654 | ]) |
||
10655 | pkt.Reply(258, [ |
||
10656 | rec( 8, 250, JobStruct3x ), |
||
10657 | ]) |
||
10658 | pkt.CompletionCodes([0x0000, 0x9900, 0xd000, 0xd100, 0xd200, |
||
10659 | 0xd300, 0xd400, 0xd500, 0xd601, 0xd703, |
||
10660 | 0xd800, 0xd902, 0xda01, 0xdb02, 0xff00]) |
||
10661 | # 2222/177B, 23/123 |
||
10662 | pkt = NCP(0x177B, "Change Queue Job Entry", 'qms') |
||
10663 | pkt.Request(264, [ |
||
10664 | rec( 10, 4, QueueID ), |
||
10665 | rec( 14, 250, JobStruct ), |
||
10666 | ]) |
||
10667 | pkt.Reply(8) |
||
10668 | pkt.CompletionCodes([0x0000, 0x9900, 0xd000, 0xd100, 0xd200, |
||
10669 | 0xd300, 0xd400, 0xd500, 0xd601, 0xd703, |
||
10670 | 0xd800, 0xd902, 0xda01, 0xdb02, 0xea02, 0xfc07, 0xff00]) |
||
10671 | # 2222/177C, 23/124 |
||
10672 | pkt = NCP(0x177C, "Service Queue Job", 'qms') |
||
10673 | pkt.Request(16, [ |
||
10674 | rec( 10, 4, QueueID ), |
||
10675 | rec( 14, 2, ServiceType ), |
||
10676 | ]) |
||
10677 | pkt.Reply(94, [ |
||
10678 | rec( 8, 86, JobStructNew ), |
||
10679 | ]) |
||
10680 | pkt.CompletionCodes([0x0000, 0x9900, 0xd000, 0xd100, 0xd200, |
||
10681 | 0xd300, 0xd400, 0xd500, 0xd601, 0xd703, |
||
10682 | 0xd800, 0xd902, 0xda01, 0xdb02, 0xfc05, 0xff00]) |
||
10683 | # 2222/177D, 23/125 |
||
10684 | pkt = NCP(0x177D, "Read Queue Current Status", 'qms') |
||
10685 | pkt.Request(14, [ |
||
10686 | rec( 10, 4, QueueID ), |
||
10687 | ]) |
||
10688 | pkt.Reply(32, [ |
||
10689 | rec( 8, 4, QueueID ), |
||
10690 | rec( 12, 1, QueueStatus ), |
||
10691 | rec( 13, 3, Reserved3 ), |
||
10692 | rec( 16, 4, CurrentEntries ), |
||
10693 | rec( 20, 4, CurrentServers, var="x" ), |
||
10694 | rec( 24, 4, ServerID, repeat="x" ), |
||
10695 | rec( 28, 4, ServerStationLong, ENC_LITTLE_ENDIAN, repeat="x" ), |
||
10696 | ]) |
||
10697 | pkt.CompletionCodes([0x0000, 0x9900, 0xd000, 0xd100, 0xd200, |
||
10698 | 0xd300, 0xd400, 0xd500, 0xd601, 0xd703, |
||
10699 | 0xd800, 0xd902, 0xda01, 0xdb02, 0xff00]) |
||
10700 | # 2222/177E, 23/126 |
||
10701 | pkt = NCP(0x177E, "Set Queue Current Status", 'qms') |
||
10702 | pkt.Request(15, [ |
||
10703 | rec( 10, 4, QueueID ), |
||
10704 | rec( 14, 1, QueueStatus ), |
||
10705 | ]) |
||
10706 | pkt.Reply(8) |
||
10707 | pkt.CompletionCodes([0x0000, 0x9900, 0xd000, 0xd100, 0xd200, |
||
10708 | 0xd300, 0xd400, 0xd500, 0xd601, 0xd703, |
||
10709 | 0xd800, 0xd902, 0xda01, 0xdb02, 0xff00]) |
||
10710 | # 2222/177F, 23/127 |
||
10711 | pkt = NCP(0x177F, "Close File And Start Queue Job", 'qms') |
||
10712 | pkt.Request(18, [ |
||
10713 | rec( 10, 4, QueueID ), |
||
10714 | rec( 14, 4, JobNumberLong ), |
||
10715 | ]) |
||
10716 | pkt.Reply(8) |
||
10717 | pkt.CompletionCodes([0x0000, 0x9900, 0xd000, 0xd100, 0xd200, |
||
10718 | 0xd300, 0xd400, 0xd500, 0xd601, 0xd703, |
||
10719 | 0xd800, 0xd902, 0xda01, 0xdb02, 0xfc07, 0xff00]) |
||
10720 | # 2222/1780, 23/128 |
||
10721 | pkt = NCP(0x1780, "Remove Job From Queue", 'qms') |
||
10722 | pkt.Request(18, [ |
||
10723 | rec( 10, 4, QueueID ), |
||
10724 | rec( 14, 4, JobNumberLong ), |
||
10725 | ]) |
||
10726 | pkt.Reply(8) |
||
10727 | pkt.CompletionCodes([0x0000, 0x9900, 0xd000, 0xd100, 0xd200, |
||
10728 | 0xd300, 0xd400, 0xd500, 0xd601, 0xd703, |
||
10729 | 0xd800, 0xd902, 0xda01, 0xdb02, 0xff00]) |
||
10730 | # 2222/1781, 23/129 |
||
10731 | pkt = NCP(0x1781, "Get Queue Job List", 'qms') |
||
10732 | pkt.Request(18, [ |
||
10733 | rec( 10, 4, QueueID ), |
||
10734 | rec( 14, 4, JobNumberLong ), |
||
10735 | ]) |
||
10736 | pkt.Reply(20, [ |
||
10737 | rec( 8, 4, TotalQueueJobs ), |
||
10738 | rec( 12, 4, ReplyQueueJobNumbers, var="x" ), |
||
10739 | rec( 16, 4, JobNumberLong, repeat="x" ), |
||
10740 | ]) |
||
10741 | pkt.CompletionCodes([0x0000, 0x9900, 0xd000, 0xd100, 0xd200, |
||
10742 | 0xd300, 0xd400, 0xd500, 0xd601, 0xd703, |
||
10743 | 0xd800, 0xd902, 0xda01, 0xdb02, 0xff00]) |
||
10744 | # 2222/1782, 23/130 |
||
10745 | pkt = NCP(0x1782, "Change Job Priority", 'qms') |
||
10746 | pkt.Request(22, [ |
||
10747 | rec( 10, 4, QueueID ), |
||
10748 | rec( 14, 4, JobNumberLong ), |
||
10749 | rec( 18, 4, Priority ), |
||
10750 | ]) |
||
10751 | pkt.Reply(8) |
||
10752 | pkt.CompletionCodes([0x0000, 0x9900, 0xd000, 0xd100, 0xd200, |
||
10753 | 0xd300, 0xd400, 0xd500, 0xd601, 0xd703, |
||
10754 | 0xd800, 0xd902, 0xda01, 0xdb02, 0xff00]) |
||
10755 | # 2222/1783, 23/131 |
||
10756 | pkt = NCP(0x1783, "Finish Servicing Queue Job", 'qms') |
||
10757 | pkt.Request(22, [ |
||
10758 | rec( 10, 4, QueueID ), |
||
10759 | rec( 14, 4, JobNumberLong ), |
||
10760 | rec( 18, 4, ChargeInformation ), |
||
10761 | ]) |
||
10762 | pkt.Reply(8) |
||
10763 | pkt.CompletionCodes([0x0000, 0x9900, 0xd000, 0xd100, 0xd200, |
||
10764 | 0xd300, 0xd400, 0xd500, 0xd601, 0xd703, |
||
10765 | 0xd800, 0xd902, 0xda01, 0xdb02, 0xfc05, 0xff00]) |
||
10766 | # 2222/1784, 23/132 |
||
10767 | pkt = NCP(0x1784, "Abort Servicing Queue Job", 'qms') |
||
10768 | pkt.Request(18, [ |
||
10769 | rec( 10, 4, QueueID ), |
||
10770 | rec( 14, 4, JobNumberLong ), |
||
10771 | ]) |
||
10772 | pkt.Reply(8) |
||
10773 | pkt.CompletionCodes([0x0000, 0x9900, 0xd000, 0xd100, 0xd200, |
||
10774 | 0xd300, 0xd400, 0xd500, 0xd601, 0xd703, |
||
10775 | 0xd800, 0xd902, 0xda01, 0xdb02, 0xfc05, 0xff18]) |
||
10776 | # 2222/1785, 23/133 |
||
10777 | pkt = NCP(0x1785, "Change To Client Rights", 'qms') |
||
10778 | pkt.Request(18, [ |
||
10779 | rec( 10, 4, QueueID ), |
||
10780 | rec( 14, 4, JobNumberLong ), |
||
10781 | ]) |
||
10782 | pkt.Reply(8) |
||
10783 | pkt.CompletionCodes([0x0000, 0x9900, 0xd000, 0xd100, 0xd200, |
||
10784 | 0xd300, 0xd400, 0xd500, 0xd601, 0xd703, |
||
10785 | 0xd800, 0xd902, 0xda01, 0xdb02, 0xff18]) |
||
10786 | # 2222/1786, 23/134 |
||
10787 | pkt = NCP(0x1786, "Read Queue Server Current Status", 'qms') |
||
10788 | pkt.Request(22, [ |
||
10789 | rec( 10, 4, QueueID ), |
||
10790 | rec( 14, 4, ServerID, ENC_BIG_ENDIAN ), |
||
10791 | rec( 18, 4, ServerStation ), |
||
10792 | ]) |
||
10793 | pkt.Reply(72, [ |
||
10794 | rec( 8, 64, ServerStatusRecord ), |
||
10795 | ]) |
||
10796 | pkt.CompletionCodes([0x0000, 0x9900, 0xd000, 0xd100, 0xd200, |
||
10797 | 0xd300, 0xd400, 0xd500, 0xd601, 0xd703, |
||
10798 | 0xd800, 0xd902, 0xda01, 0xdb02, 0xff00]) |
||
10799 | # 2222/1787, 23/135 |
||
10800 | pkt = NCP(0x1787, "Get Queue Job File Size", 'qms') |
||
10801 | pkt.Request(18, [ |
||
10802 | rec( 10, 4, QueueID ), |
||
10803 | rec( 14, 4, JobNumberLong ), |
||
10804 | ]) |
||
10805 | pkt.Reply(20, [ |
||
10806 | rec( 8, 4, QueueID ), |
||
10807 | rec( 12, 4, JobNumberLong ), |
||
10808 | rec( 16, 4, FileSize, ENC_BIG_ENDIAN ), |
||
10809 | ]) |
||
10810 | pkt.CompletionCodes([0x0000, 0x9900, 0xd000, 0xd100, 0xd200, |
||
10811 | 0xd300, 0xd400, 0xd500, 0xd601, 0xd703, |
||
10812 | 0xd800, 0xd902, 0xda01, 0xdb02, 0xfc05, 0xff00]) |
||
10813 | # 2222/1788, 23/136 |
||
10814 | pkt = NCP(0x1788, "Move Queue Job From Src Q to Dst Q", 'qms') |
||
10815 | pkt.Request(22, [ |
||
10816 | rec( 10, 4, QueueID ), |
||
10817 | rec( 14, 4, JobNumberLong ), |
||
10818 | rec( 18, 4, DstQueueID ), |
||
10819 | ]) |
||
10820 | pkt.Reply(12, [ |
||
10821 | rec( 8, 4, JobNumberLong ), |
||
10822 | ]) |
||
10823 | pkt.CompletionCodes([0x0000, 0x7e01, 0xfc06]) |
||
10824 | # 2222/1789, 23/137 |
||
10825 | pkt = NCP(0x1789, "Get Queue Jobs From Form List", 'qms') |
||
10826 | pkt.Request(24, [ |
||
10827 | rec( 10, 4, QueueID ), |
||
10828 | rec( 14, 4, QueueStartPosition ), |
||
10829 | rec( 18, 4, FormTypeCnt, ENC_LITTLE_ENDIAN, var="x" ), |
||
10830 | rec( 22, 2, FormType, repeat="x" ), |
||
10831 | ]) |
||
10832 | pkt.Reply(20, [ |
||
10833 | rec( 8, 4, TotalQueueJobs ), |
||
10834 | rec( 12, 4, JobCount, var="x" ), |
||
10835 | rec( 16, 4, JobNumberLong, repeat="x" ), |
||
10836 | ]) |
||
10837 | pkt.CompletionCodes([0x0000, 0x7e01, 0xd300, 0xfc06]) |
||
10838 | # 2222/178A, 23/138 |
||
10839 | pkt = NCP(0x178A, "Service Queue Job By Form List", 'qms') |
||
10840 | pkt.Request(24, [ |
||
10841 | rec( 10, 4, QueueID ), |
||
10842 | rec( 14, 4, QueueStartPosition ), |
||
10843 | rec( 18, 4, FormTypeCnt, ENC_LITTLE_ENDIAN, var= "x" ), |
||
10844 | rec( 22, 2, FormType, repeat="x" ), |
||
10845 | ]) |
||
10846 | pkt.Reply(94, [ |
||
10847 | rec( 8, 86, JobStructNew ), |
||
10848 | ]) |
||
10849 | pkt.CompletionCodes([0x0000, 0x7e01, 0xd902, 0xfc06, 0xff00]) |
||
10850 | # 2222/1796, 23/150 |
||
10851 | pkt = NCP(0x1796, "Get Current Account Status", 'accounting') |
||
10852 | pkt.Request((13,60), [ |
||
10853 | rec( 10, 2, ObjectType, ENC_BIG_ENDIAN ), |
||
10854 | rec( 12, (1,48), ObjectName, info_str=(ObjectName, "Get Current Account Status: %s", ", %s") ), |
||
10855 | ]) |
||
10856 | pkt.Reply(264, [ |
||
10857 | rec( 8, 4, AccountBalance, ENC_BIG_ENDIAN ), |
||
10858 | rec( 12, 4, CreditLimit, ENC_BIG_ENDIAN ), |
||
10859 | rec( 16, 120, Reserved120 ), |
||
10860 | rec( 136, 4, HolderID, ENC_BIG_ENDIAN ), |
||
10861 | rec( 140, 4, HoldAmount, ENC_BIG_ENDIAN ), |
||
10862 | rec( 144, 4, HolderID, ENC_BIG_ENDIAN ), |
||
10863 | rec( 148, 4, HoldAmount, ENC_BIG_ENDIAN ), |
||
10864 | rec( 152, 4, HolderID, ENC_BIG_ENDIAN ), |
||
10865 | rec( 156, 4, HoldAmount, ENC_BIG_ENDIAN ), |
||
10866 | rec( 160, 4, HolderID, ENC_BIG_ENDIAN ), |
||
10867 | rec( 164, 4, HoldAmount, ENC_BIG_ENDIAN ), |
||
10868 | rec( 168, 4, HolderID, ENC_BIG_ENDIAN ), |
||
10869 | rec( 172, 4, HoldAmount, ENC_BIG_ENDIAN ), |
||
10870 | rec( 176, 4, HolderID, ENC_BIG_ENDIAN ), |
||
10871 | rec( 180, 4, HoldAmount, ENC_BIG_ENDIAN ), |
||
10872 | rec( 184, 4, HolderID, ENC_BIG_ENDIAN ), |
||
10873 | rec( 188, 4, HoldAmount, ENC_BIG_ENDIAN ), |
||
10874 | rec( 192, 4, HolderID, ENC_BIG_ENDIAN ), |
||
10875 | rec( 196, 4, HoldAmount, ENC_BIG_ENDIAN ), |
||
10876 | rec( 200, 4, HolderID, ENC_BIG_ENDIAN ), |
||
10877 | rec( 204, 4, HoldAmount, ENC_BIG_ENDIAN ), |
||
10878 | rec( 208, 4, HolderID, ENC_BIG_ENDIAN ), |
||
10879 | rec( 212, 4, HoldAmount, ENC_BIG_ENDIAN ), |
||
10880 | rec( 216, 4, HolderID, ENC_BIG_ENDIAN ), |
||
10881 | rec( 220, 4, HoldAmount, ENC_BIG_ENDIAN ), |
||
10882 | rec( 224, 4, HolderID, ENC_BIG_ENDIAN ), |
||
10883 | rec( 228, 4, HoldAmount, ENC_BIG_ENDIAN ), |
||
10884 | rec( 232, 4, HolderID, ENC_BIG_ENDIAN ), |
||
10885 | rec( 236, 4, HoldAmount, ENC_BIG_ENDIAN ), |
||
10886 | rec( 240, 4, HolderID, ENC_BIG_ENDIAN ), |
||
10887 | rec( 244, 4, HoldAmount, ENC_BIG_ENDIAN ), |
||
10888 | rec( 248, 4, HolderID, ENC_BIG_ENDIAN ), |
||
10889 | rec( 252, 4, HoldAmount, ENC_BIG_ENDIAN ), |
||
10890 | rec( 256, 4, HolderID, ENC_BIG_ENDIAN ), |
||
10891 | rec( 260, 4, HoldAmount, ENC_BIG_ENDIAN ), |
||
10892 | ]) |
||
10893 | pkt.CompletionCodes([0x0000, 0x9600, 0xc000, 0xc101, 0xc400, 0xe800, |
||
10894 | 0xea00, 0xeb00, 0xec00, 0xfc06, 0xfe07, 0xff00]) |
||
10895 | # 2222/1797, 23/151 |
||
10896 | pkt = NCP(0x1797, "Submit Account Charge", 'accounting') |
||
10897 | pkt.Request((26,327), [ |
||
10898 | rec( 10, 2, ServiceType, ENC_BIG_ENDIAN ), |
||
10899 | rec( 12, 4, ChargeAmount, ENC_BIG_ENDIAN ), |
||
10900 | rec( 16, 4, HoldCancelAmount, ENC_BIG_ENDIAN ), |
||
10901 | rec( 20, 2, ObjectType, ENC_BIG_ENDIAN ), |
||
10902 | rec( 22, 2, CommentType, ENC_BIG_ENDIAN ), |
||
10903 | rec( 24, (1,48), ObjectName, info_str=(ObjectName, "Submit Account Charge: %s", ", %s") ), |
||
10904 | rec( -1, (1,255), Comment ), |
||
10905 | ]) |
||
10906 | pkt.Reply(8) |
||
10907 | pkt.CompletionCodes([0x0000, 0x0102, 0x8800, 0x9400, 0x9600, 0xa201, |
||
10908 | 0xc000, 0xc101, 0xc200, 0xc400, 0xe800, 0xea00, |
||
10909 | 0xeb00, 0xec00, 0xfe07, 0xff00]) |
||
10910 | # 2222/1798, 23/152 |
||
10911 | pkt = NCP(0x1798, "Submit Account Hold", 'accounting') |
||
10912 | pkt.Request((17,64), [ |
||
10913 | rec( 10, 4, HoldCancelAmount, ENC_BIG_ENDIAN ), |
||
10914 | rec( 14, 2, ObjectType, ENC_BIG_ENDIAN ), |
||
10915 | rec( 16, (1,48), ObjectName, info_str=(ObjectName, "Submit Account Hold: %s", ", %s") ), |
||
10916 | ]) |
||
10917 | pkt.Reply(8) |
||
10918 | pkt.CompletionCodes([0x0000, 0x0102, 0x8800, 0x9400, 0x9600, 0xa201, |
||
10919 | 0xc000, 0xc101, 0xc200, 0xc400, 0xe800, 0xea00, |
||
10920 | 0xeb00, 0xec00, 0xfe07, 0xff00]) |
||
10921 | # 2222/1799, 23/153 |
||
10922 | pkt = NCP(0x1799, "Submit Account Note", 'accounting') |
||
10923 | pkt.Request((18,319), [ |
||
10924 | rec( 10, 2, ServiceType, ENC_BIG_ENDIAN ), |
||
10925 | rec( 12, 2, ObjectType, ENC_BIG_ENDIAN ), |
||
10926 | rec( 14, 2, CommentType, ENC_BIG_ENDIAN ), |
||
10927 | rec( 16, (1,48), ObjectName, info_str=(ObjectName, "Submit Account Note: %s", ", %s") ), |
||
10928 | rec( -1, (1,255), Comment ), |
||
10929 | ]) |
||
10930 | pkt.Reply(8) |
||
10931 | pkt.CompletionCodes([0x0000, 0x0102, 0x9600, 0xc000, 0xc101, 0xc400, |
||
10932 | 0xe800, 0xea00, 0xeb00, 0xec00, 0xf000, 0xfc06, |
||
10933 | 0xff00]) |
||
10934 | # 2222/17c8, 23/200 |
||
10935 | pkt = NCP(0x17c8, "Check Console Privileges", 'fileserver') |
||
10936 | pkt.Request(10) |
||
10937 | pkt.Reply(8) |
||
10938 | pkt.CompletionCodes([0x0000, 0xc601]) |
||
10939 | # 2222/17c9, 23/201 |
||
10940 | pkt = NCP(0x17c9, "Get File Server Description Strings", 'fileserver') |
||
10941 | pkt.Request(10) |
||
10942 | pkt.Reply(108, [ |
||
10943 | rec( 8, 100, DescriptionStrings ), |
||
10944 | ]) |
||
10945 | pkt.CompletionCodes([0x0000, 0x9600]) |
||
10946 | # 2222/17CA, 23/202 |
||
10947 | pkt = NCP(0x17CA, "Set File Server Date And Time", 'fileserver') |
||
10948 | pkt.Request(16, [ |
||
10949 | rec( 10, 1, Year ), |
||
10950 | rec( 11, 1, Month ), |
||
10951 | rec( 12, 1, Day ), |
||
10952 | rec( 13, 1, Hour ), |
||
10953 | rec( 14, 1, Minute ), |
||
10954 | rec( 15, 1, Second ), |
||
10955 | ]) |
||
10956 | pkt.Reply(8) |
||
10957 | pkt.CompletionCodes([0x0000, 0xc601]) |
||
10958 | # 2222/17CB, 23/203 |
||
10959 | pkt = NCP(0x17CB, "Disable File Server Login", 'fileserver') |
||
10960 | pkt.Request(10) |
||
10961 | pkt.Reply(8) |
||
10962 | pkt.CompletionCodes([0x0000, 0xc601]) |
||
10963 | # 2222/17CC, 23/204 |
||
10964 | pkt = NCP(0x17CC, "Enable File Server Login", 'fileserver') |
||
10965 | pkt.Request(10) |
||
10966 | pkt.Reply(8) |
||
10967 | pkt.CompletionCodes([0x0000, 0xc601]) |
||
10968 | # 2222/17CD, 23/205 |
||
10969 | pkt = NCP(0x17CD, "Get File Server Login Status", 'fileserver') |
||
10970 | pkt.Request(10) |
||
10971 | pkt.Reply(9, [ |
||
10972 | rec( 8, 1, UserLoginAllowed ), |
||
10973 | ]) |
||
10974 | pkt.CompletionCodes([0x0000, 0x9600, 0xfb01]) |
||
10975 | # 2222/17CF, 23/207 |
||
10976 | pkt = NCP(0x17CF, "Disable Transaction Tracking", 'fileserver') |
||
10977 | pkt.Request(10) |
||
10978 | pkt.Reply(8) |
||
10979 | pkt.CompletionCodes([0x0000, 0xc601]) |
||
10980 | # 2222/17D0, 23/208 |
||
10981 | pkt = NCP(0x17D0, "Enable Transaction Tracking", 'fileserver') |
||
10982 | pkt.Request(10) |
||
10983 | pkt.Reply(8) |
||
10984 | pkt.CompletionCodes([0x0000, 0xc601]) |
||
10985 | # 2222/17D1, 23/209 |
||
10986 | pkt = NCP(0x17D1, "Send Console Broadcast", 'fileserver') |
||
10987 | pkt.Request((13,267), [ |
||
10988 | rec( 10, 1, NumberOfStations, var="x" ), |
||
10989 | rec( 11, 1, StationList, repeat="x" ), |
||
10990 | rec( 12, (1, 255), TargetMessage, info_str=(TargetMessage, "Send Console Broadcast: %s", ", %s") ), |
||
10991 | ]) |
||
10992 | pkt.Reply(8) |
||
10993 | pkt.CompletionCodes([0x0000, 0xc601, 0xfd00]) |
||
10994 | # 2222/17D2, 23/210 |
||
10995 | pkt = NCP(0x17D2, "Clear Connection Number", 'fileserver') |
||
10996 | pkt.Request(11, [ |
||
10997 | rec( 10, 1, ConnectionNumber, info_str=(ConnectionNumber, "Clear Connection Number %d", ", %d") ), |
||
10998 | ]) |
||
10999 | pkt.Reply(8) |
||
11000 | pkt.CompletionCodes([0x0000, 0xc601, 0xfd00]) |
||
11001 | # 2222/17D3, 23/211 |
||
11002 | pkt = NCP(0x17D3, "Down File Server", 'fileserver') |
||
11003 | pkt.Request(11, [ |
||
11004 | rec( 10, 1, ForceFlag ), |
||
11005 | ]) |
||
11006 | pkt.Reply(8) |
||
11007 | pkt.CompletionCodes([0x0000, 0xc601, 0xff00]) |
||
11008 | # 2222/17D4, 23/212 |
||
11009 | pkt = NCP(0x17D4, "Get File System Statistics", 'fileserver') |
||
11010 | pkt.Request(10) |
||
11011 | pkt.Reply(50, [ |
||
11012 | rec( 8, 4, SystemIntervalMarker, ENC_BIG_ENDIAN ), |
||
11013 | rec( 12, 2, ConfiguredMaxOpenFiles ), |
||
11014 | rec( 14, 2, ActualMaxOpenFiles ), |
||
11015 | rec( 16, 2, CurrentOpenFiles ), |
||
11016 | rec( 18, 4, TotalFilesOpened ), |
||
11017 | rec( 22, 4, TotalReadRequests ), |
||
11018 | rec( 26, 4, TotalWriteRequests ), |
||
11019 | rec( 30, 2, CurrentChangedFATs ), |
||
11020 | rec( 32, 4, TotalChangedFATs ), |
||
11021 | rec( 36, 2, FATWriteErrors ), |
||
11022 | rec( 38, 2, FatalFATWriteErrors ), |
||
11023 | rec( 40, 2, FATScanErrors ), |
||
11024 | rec( 42, 2, ActualMaxIndexedFiles ), |
||
11025 | rec( 44, 2, ActiveIndexedFiles ), |
||
11026 | rec( 46, 2, AttachedIndexedFiles ), |
||
11027 | rec( 48, 2, AvailableIndexedFiles ), |
||
11028 | ]) |
||
11029 | pkt.CompletionCodes([0x0000, 0x9600, 0xc601, 0xff00]) |
||
11030 | # 2222/17D5, 23/213 |
||
11031 | pkt = NCP(0x17D5, "Get Transaction Tracking Statistics", 'fileserver') |
||
11032 | pkt.Request((13,267), [ |
||
11033 | rec( 10, 2, LastRecordSeen ), |
||
11034 | rec( 12, (1,255), SemaphoreName ), |
||
11035 | ]) |
||
11036 | pkt.Reply(53, [ |
||
11037 | rec( 8, 4, SystemIntervalMarker, ENC_BIG_ENDIAN ), |
||
11038 | rec( 12, 1, TransactionTrackingSupported ), |
||
11039 | rec( 13, 1, TransactionTrackingEnabled ), |
||
11040 | rec( 14, 2, TransactionVolumeNumber ), |
||
11041 | rec( 16, 2, ConfiguredMaxSimultaneousTransactions ), |
||
11042 | rec( 18, 2, ActualMaxSimultaneousTransactions ), |
||
11043 | rec( 20, 2, CurrentTransactionCount ), |
||
11044 | rec( 22, 4, TotalTransactionsPerformed ), |
||
11045 | rec( 26, 4, TotalWriteTransactionsPerformed ), |
||
11046 | rec( 30, 4, TotalTransactionsBackedOut ), |
||
11047 | rec( 34, 2, TotalUnfilledBackoutRequests ), |
||
11048 | rec( 36, 2, TransactionDiskSpace ), |
||
11049 | rec( 38, 4, TransactionFATAllocations ), |
||
11050 | rec( 42, 4, TransactionFileSizeChanges ), |
||
11051 | rec( 46, 4, TransactionFilesTruncated ), |
||
11052 | rec( 50, 1, NumberOfEntries, var="x" ), |
||
11053 | rec( 51, 2, ConnTaskStruct, repeat="x" ), |
||
11054 | ]) |
||
11055 | pkt.CompletionCodes([0x0000, 0x9600, 0xc601, 0xff00]) |
||
11056 | # 2222/17D6, 23/214 |
||
11057 | pkt = NCP(0x17D6, "Read Disk Cache Statistics", 'fileserver') |
||
11058 | pkt.Request(10) |
||
11059 | pkt.Reply(86, [ |
||
11060 | rec( 8, 4, SystemIntervalMarker, ENC_BIG_ENDIAN ), |
||
11061 | rec( 12, 2, CacheBufferCount ), |
||
11062 | rec( 14, 2, CacheBufferSize ), |
||
11063 | rec( 16, 2, DirtyCacheBuffers ), |
||
11064 | rec( 18, 4, CacheReadRequests ), |
||
11065 | rec( 22, 4, CacheWriteRequests ), |
||
11066 | rec( 26, 4, CacheHits ), |
||
11067 | rec( 30, 4, CacheMisses ), |
||
11068 | rec( 34, 4, PhysicalReadRequests ), |
||
11069 | rec( 38, 4, PhysicalWriteRequests ), |
||
11070 | rec( 42, 2, PhysicalReadErrors ), |
||
11071 | rec( 44, 2, PhysicalWriteErrors ), |
||
11072 | rec( 46, 4, CacheGetRequests ), |
||
11073 | rec( 50, 4, CacheFullWriteRequests ), |
||
11074 | rec( 54, 4, CachePartialWriteRequests ), |
||
11075 | rec( 58, 4, BackgroundDirtyWrites ), |
||
11076 | rec( 62, 4, BackgroundAgedWrites ), |
||
11077 | rec( 66, 4, TotalCacheWrites ), |
||
11078 | rec( 70, 4, CacheAllocations ), |
||
11079 | rec( 74, 2, ThrashingCount ), |
||
11080 | rec( 76, 2, LRUBlockWasDirty ), |
||
11081 | rec( 78, 2, ReadBeyondWrite ), |
||
11082 | rec( 80, 2, FragmentWriteOccurred ), |
||
11083 | rec( 82, 2, CacheHitOnUnavailableBlock ), |
||
11084 | rec( 84, 2, CacheBlockScrapped ), |
||
11085 | ]) |
||
11086 | pkt.CompletionCodes([0x0000, 0x9600, 0xc601, 0xff00]) |
||
11087 | # 2222/17D7, 23/215 |
||
11088 | pkt = NCP(0x17D7, "Get Drive Mapping Table", 'fileserver') |
||
11089 | pkt.Request(10) |
||
11090 | pkt.Reply(184, [ |
||
11091 | rec( 8, 4, SystemIntervalMarker, ENC_BIG_ENDIAN ), |
||
11092 | rec( 12, 1, SFTSupportLevel ), |
||
11093 | rec( 13, 1, LogicalDriveCount ), |
||
11094 | rec( 14, 1, PhysicalDriveCount ), |
||
11095 | rec( 15, 1, DiskChannelTable ), |
||
11096 | rec( 16, 4, Reserved4 ), |
||
11097 | rec( 20, 2, PendingIOCommands, ENC_BIG_ENDIAN ), |
||
11098 | rec( 22, 32, DriveMappingTable ), |
||
11099 | rec( 54, 32, DriveMirrorTable ), |
||
11100 | rec( 86, 32, DeadMirrorTable ), |
||
11101 | rec( 118, 1, ReMirrorDriveNumber ), |
||
11102 | rec( 119, 1, Filler ), |
||
11103 | rec( 120, 4, ReMirrorCurrentOffset, ENC_BIG_ENDIAN ), |
||
11104 | rec( 124, 60, SFTErrorTable ), |
||
11105 | ]) |
||
11106 | pkt.CompletionCodes([0x0000, 0x9600, 0xc601, 0xff00]) |
||
11107 | # 2222/17D8, 23/216 |
||
11108 | pkt = NCP(0x17D8, "Read Physical Disk Statistics", 'fileserver') |
||
11109 | pkt.Request(11, [ |
||
11110 | rec( 10, 1, PhysicalDiskNumber ), |
||
11111 | ]) |
||
11112 | pkt.Reply(101, [ |
||
11113 | rec( 8, 4, SystemIntervalMarker, ENC_BIG_ENDIAN ), |
||
11114 | rec( 12, 1, PhysicalDiskChannel ), |
||
11115 | rec( 13, 1, DriveRemovableFlag ), |
||
11116 | rec( 14, 1, PhysicalDriveType ), |
||
11117 | rec( 15, 1, ControllerDriveNumber ), |
||
11118 | rec( 16, 1, ControllerNumber ), |
||
11119 | rec( 17, 1, ControllerType ), |
||
11120 | rec( 18, 4, DriveSize ), |
||
11121 | rec( 22, 2, DriveCylinders ), |
||
11122 | rec( 24, 1, DriveHeads ), |
||
11123 | rec( 25, 1, SectorsPerTrack ), |
||
11124 | rec( 26, 64, DriveDefinitionString ), |
||
11125 | rec( 90, 2, IOErrorCount ), |
||
11126 | rec( 92, 4, HotFixTableStart ), |
||
11127 | rec( 96, 2, HotFixTableSize ), |
||
11128 | rec( 98, 2, HotFixBlocksAvailable ), |
||
11129 | rec( 100, 1, HotFixDisabled ), |
||
11130 | ]) |
||
11131 | pkt.CompletionCodes([0x0000, 0x9600, 0xc601, 0xff00]) |
||
11132 | # 2222/17D9, 23/217 |
||
11133 | pkt = NCP(0x17D9, "Get Disk Channel Statistics", 'fileserver') |
||
11134 | pkt.Request(11, [ |
||
11135 | rec( 10, 1, DiskChannelNumber ), |
||
11136 | ]) |
||
11137 | pkt.Reply(192, [ |
||
11138 | rec( 8, 4, SystemIntervalMarker, ENC_BIG_ENDIAN ), |
||
11139 | rec( 12, 2, ChannelState, ENC_BIG_ENDIAN ), |
||
11140 | rec( 14, 2, ChannelSynchronizationState, ENC_BIG_ENDIAN ), |
||
11141 | rec( 16, 1, SoftwareDriverType ), |
||
11142 | rec( 17, 1, SoftwareMajorVersionNumber ), |
||
11143 | rec( 18, 1, SoftwareMinorVersionNumber ), |
||
11144 | rec( 19, 65, SoftwareDescription ), |
||
11145 | rec( 84, 8, IOAddressesUsed ), |
||
11146 | rec( 92, 10, SharedMemoryAddresses ), |
||
11147 | rec( 102, 4, InterruptNumbersUsed ), |
||
11148 | rec( 106, 4, DMAChannelsUsed ), |
||
11149 | rec( 110, 1, FlagBits ), |
||
11150 | rec( 111, 1, Reserved ), |
||
11151 | rec( 112, 80, ConfigurationDescription ), |
||
11152 | ]) |
||
11153 | pkt.CompletionCodes([0x0000, 0x9600, 0xc601, 0xff00]) |
||
11154 | # 2222/17DB, 23/219 |
||
11155 | pkt = NCP(0x17DB, "Get Connection's Open Files", 'fileserver') |
||
11156 | pkt.Request(14, [ |
||
11157 | rec( 10, 2, ConnectionNumber ), |
||
11158 | rec( 12, 2, LastRecordSeen, ENC_BIG_ENDIAN ), |
||
11159 | ]) |
||
11160 | pkt.Reply(32, [ |
||
11161 | rec( 8, 2, NextRequestRecord ), |
||
11162 | rec( 10, 1, NumberOfRecords, var="x" ), |
||
11163 | rec( 11, 21, ConnStruct, repeat="x" ), |
||
11164 | ]) |
||
11165 | pkt.CompletionCodes([0x0000, 0x9600, 0xc601, 0xff00]) |
||
11166 | # 2222/17DC, 23/220 |
||
11167 | pkt = NCP(0x17DC, "Get Connection Using A File", 'fileserver') |
||
11168 | pkt.Request((14,268), [ |
||
11169 | rec( 10, 2, LastRecordSeen, ENC_BIG_ENDIAN ), |
||
11170 | rec( 12, 1, DirHandle ), |
||
11171 | rec( 13, (1,255), Path, info_str=(Path, "Get Connection Using File: %s", ", %s") ), |
||
11172 | ]) |
||
11173 | pkt.Reply(30, [ |
||
11174 | rec( 8, 2, UseCount, ENC_BIG_ENDIAN ), |
||
11175 | rec( 10, 2, OpenCount, ENC_BIG_ENDIAN ), |
||
11176 | rec( 12, 2, OpenForReadCount, ENC_BIG_ENDIAN ), |
||
11177 | rec( 14, 2, OpenForWriteCount, ENC_BIG_ENDIAN ), |
||
11178 | rec( 16, 2, DenyReadCount, ENC_BIG_ENDIAN ), |
||
11179 | rec( 18, 2, DenyWriteCount, ENC_BIG_ENDIAN ), |
||
11180 | rec( 20, 2, NextRequestRecord, ENC_BIG_ENDIAN ), |
||
11181 | rec( 22, 1, Locked ), |
||
11182 | rec( 23, 1, NumberOfRecords, var="x" ), |
||
11183 | rec( 24, 6, ConnFileStruct, repeat="x" ), |
||
11184 | ]) |
||
11185 | pkt.CompletionCodes([0x0000, 0x9600, 0xc601, 0xff00]) |
||
11186 | # 2222/17DD, 23/221 |
||
11187 | pkt = NCP(0x17DD, "Get Physical Record Locks By Connection And File", 'fileserver') |
||
11188 | pkt.Request(31, [ |
||
11189 | rec( 10, 2, TargetConnectionNumber ), |
||
11190 | rec( 12, 2, LastRecordSeen, ENC_BIG_ENDIAN ), |
||
11191 | rec( 14, 1, VolumeNumber ), |
||
11192 | rec( 15, 2, DirectoryID ), |
||
11193 | rec( 17, 14, FileName14, info_str=(FileName14, "Get Physical Record Locks by Connection and File: %s", ", %s") ), |
||
11194 | ]) |
||
11195 | pkt.Reply(22, [ |
||
11196 | rec( 8, 2, NextRequestRecord ), |
||
11197 | rec( 10, 1, NumberOfLocks, var="x" ), |
||
11198 | rec( 11, 1, Reserved ), |
||
11199 | rec( 12, 10, LockStruct, repeat="x" ), |
||
11200 | ]) |
||
11201 | pkt.CompletionCodes([0x0000, 0x9600, 0xc601, 0xfd00, 0xff00]) |
||
11202 | # 2222/17DE, 23/222 |
||
11203 | pkt = NCP(0x17DE, "Get Physical Record Locks By File", 'fileserver') |
||
11204 | pkt.Request((14,268), [ |
||
11205 | rec( 10, 2, TargetConnectionNumber ), |
||
11206 | rec( 12, 1, DirHandle ), |
||
11207 | rec( 13, (1,255), Path, info_str=(Path, "Get Physical Record Locks by File: %s", ", %s") ), |
||
11208 | ]) |
||
11209 | pkt.Reply(28, [ |
||
11210 | rec( 8, 2, NextRequestRecord ), |
||
11211 | rec( 10, 1, NumberOfLocks, var="x" ), |
||
11212 | rec( 11, 1, Reserved ), |
||
11213 | rec( 12, 16, PhyLockStruct, repeat="x" ), |
||
11214 | ]) |
||
11215 | pkt.CompletionCodes([0x0000, 0x9600, 0xc601, 0xfd00, 0xff00]) |
||
11216 | # 2222/17DF, 23/223 |
||
11217 | pkt = NCP(0x17DF, "Get Logical Records By Connection", 'fileserver') |
||
11218 | pkt.Request(14, [ |
||
11219 | rec( 10, 2, TargetConnectionNumber ), |
||
11220 | rec( 12, 2, LastRecordSeen, ENC_BIG_ENDIAN ), |
||
11221 | ]) |
||
11222 | pkt.Reply((14,268), [ |
||
11223 | rec( 8, 2, NextRequestRecord ), |
||
11224 | rec( 10, 1, NumberOfRecords, var="x" ), |
||
11225 | rec( 11, (3, 257), LogLockStruct, repeat="x" ), |
||
11226 | ]) |
||
11227 | pkt.CompletionCodes([0x0000, 0x9600, 0xc601, 0xfd00, 0xff00]) |
||
11228 | # 2222/17E0, 23/224 |
||
11229 | pkt = NCP(0x17E0, "Get Logical Record Information", 'fileserver') |
||
11230 | pkt.Request((13,267), [ |
||
11231 | rec( 10, 2, LastRecordSeen ), |
||
11232 | rec( 12, (1,255), LogicalRecordName, info_str=(LogicalRecordName, "Get Logical Record Information: %s", ", %s") ), |
||
11233 | ]) |
||
11234 | pkt.Reply(20, [ |
||
11235 | rec( 8, 2, UseCount, ENC_BIG_ENDIAN ), |
||
11236 | rec( 10, 2, ShareableLockCount, ENC_BIG_ENDIAN ), |
||
11237 | rec( 12, 2, NextRequestRecord ), |
||
11238 | rec( 14, 1, Locked ), |
||
11239 | rec( 15, 1, NumberOfRecords, var="x" ), |
||
11240 | rec( 16, 4, LogRecStruct, repeat="x" ), |
||
11241 | ]) |
||
11242 | pkt.CompletionCodes([0x0000, 0x9600, 0xc601, 0xfd00, 0xff00]) |
||
11243 | # 2222/17E1, 23/225 |
||
11244 | pkt = NCP(0x17E1, "Get Connection's Semaphores", 'fileserver') |
||
11245 | pkt.Request(14, [ |
||
11246 | rec( 10, 2, ConnectionNumber ), |
||
11247 | rec( 12, 2, LastRecordSeen ), |
||
11248 | ]) |
||
11249 | pkt.Reply((18,272), [ |
||
11250 | rec( 8, 2, NextRequestRecord ), |
||
11251 | rec( 10, 2, NumberOfSemaphores, var="x" ), |
||
11252 | rec( 12, (6,260), SemaStruct, repeat="x" ), |
||
11253 | ]) |
||
11254 | pkt.CompletionCodes([0x0000, 0x9600, 0xc601, 0xfd00, 0xff00]) |
||
11255 | # 2222/17E2, 23/226 |
||
11256 | pkt = NCP(0x17E2, "Get Semaphore Information", 'fileserver') |
||
11257 | pkt.Request((13,267), [ |
||
11258 | rec( 10, 2, LastRecordSeen ), |
||
11259 | rec( 12, (1,255), SemaphoreName, info_str=(SemaphoreName, "Get Semaphore Information: %s", ", %s") ), |
||
11260 | ]) |
||
11261 | pkt.Reply(17, [ |
||
11262 | rec( 8, 2, NextRequestRecord, ENC_BIG_ENDIAN ), |
||
11263 | rec( 10, 2, OpenCount, ENC_BIG_ENDIAN ), |
||
11264 | rec( 12, 1, SemaphoreValue ), |
||
11265 | rec( 13, 1, NumberOfRecords, var="x" ), |
||
11266 | rec( 14, 3, SemaInfoStruct, repeat="x" ), |
||
11267 | ]) |
||
11268 | pkt.CompletionCodes([0x0000, 0x9600, 0xc601, 0xfd00, 0xff00]) |
||
11269 | # 2222/17E3, 23/227 |
||
11270 | pkt = NCP(0x17E3, "Get LAN Driver Configuration Information", 'fileserver') |
||
11271 | pkt.Request(11, [ |
||
11272 | rec( 10, 1, LANDriverNumber ), |
||
11273 | ]) |
||
11274 | pkt.Reply(180, [ |
||
11275 | rec( 8, 4, NetworkAddress, ENC_BIG_ENDIAN ), |
||
11276 | rec( 12, 6, HostAddress ), |
||
11277 | rec( 18, 1, BoardInstalled ), |
||
11278 | rec( 19, 1, OptionNumber ), |
||
11279 | rec( 20, 160, ConfigurationText ), |
||
11280 | ]) |
||
11281 | pkt.CompletionCodes([0x0000, 0x9600, 0xc601, 0xfd00, 0xff00]) |
||
11282 | # 2222/17E5, 23/229 |
||
11283 | pkt = NCP(0x17E5, "Get Connection Usage Statistics", 'fileserver') |
||
11284 | pkt.Request(12, [ |
||
11285 | rec( 10, 2, ConnectionNumber ), |
||
11286 | ]) |
||
11287 | pkt.Reply(26, [ |
||
11288 | rec( 8, 2, NextRequestRecord ), |
||
11289 | rec( 10, 6, BytesRead ), |
||
11290 | rec( 16, 6, BytesWritten ), |
||
11291 | rec( 22, 4, TotalRequestPackets ), |
||
11292 | ]) |
||
11293 | pkt.CompletionCodes([0x0000, 0x9600, 0xc601, 0xfd00, 0xff00]) |
||
11294 | # 2222/17E6, 23/230 |
||
11295 | pkt = NCP(0x17E6, "Get Object's Remaining Disk Space", 'fileserver') |
||
11296 | pkt.Request(14, [ |
||
11297 | rec( 10, 4, ObjectID, ENC_BIG_ENDIAN ), |
||
11298 | ]) |
||
11299 | pkt.Reply(21, [ |
||
11300 | rec( 8, 4, SystemIntervalMarker, ENC_BIG_ENDIAN ), |
||
11301 | rec( 12, 4, ObjectID ), |
||
11302 | rec( 16, 4, UnusedDiskBlocks, ENC_BIG_ENDIAN ), |
||
11303 | rec( 20, 1, RestrictionsEnforced ), |
||
11304 | ]) |
||
11305 | pkt.CompletionCodes([0x0000, 0x9600, 0xc601, 0xfd00, 0xff00]) |
||
11306 | # 2222/17E7, 23/231 |
||
11307 | pkt = NCP(0x17E7, "Get File Server LAN I/O Statistics", 'fileserver') |
||
11308 | pkt.Request(10) |
||
11309 | pkt.Reply(74, [ |
||
11310 | rec( 8, 4, SystemIntervalMarker, ENC_BIG_ENDIAN ), |
||
11311 | rec( 12, 2, ConfiguredMaxRoutingBuffers ), |
||
11312 | rec( 14, 2, ActualMaxUsedRoutingBuffers ), |
||
11313 | rec( 16, 2, CurrentlyUsedRoutingBuffers ), |
||
11314 | rec( 18, 4, TotalFileServicePackets ), |
||
11315 | rec( 22, 2, TurboUsedForFileService ), |
||
11316 | rec( 24, 2, PacketsFromInvalidConnection ), |
||
11317 | rec( 26, 2, BadLogicalConnectionCount ), |
||
11318 | rec( 28, 2, PacketsReceivedDuringProcessing ), |
||
11319 | rec( 30, 2, RequestsReprocessed ), |
||
11320 | rec( 32, 2, PacketsWithBadSequenceNumber ), |
||
11321 | rec( 34, 2, DuplicateRepliesSent ), |
||
11322 | rec( 36, 2, PositiveAcknowledgesSent ), |
||
11323 | rec( 38, 2, PacketsWithBadRequestType ), |
||
11324 | rec( 40, 2, AttachDuringProcessing ), |
||
11325 | rec( 42, 2, AttachWhileProcessingAttach ), |
||
11326 | rec( 44, 2, ForgedDetachedRequests ), |
||
11327 | rec( 46, 2, DetachForBadConnectionNumber ), |
||
11328 | rec( 48, 2, DetachDuringProcessing ), |
||
11329 | rec( 50, 2, RepliesCancelled ), |
||
11330 | rec( 52, 2, PacketsDiscardedByHopCount ), |
||
11331 | rec( 54, 2, PacketsDiscardedUnknownNet ), |
||
11332 | rec( 56, 2, IncomingPacketDiscardedNoDGroup ), |
||
11333 | rec( 58, 2, OutgoingPacketDiscardedNoTurboBuffer ), |
||
11334 | rec( 60, 2, IPXNotMyNetwork ), |
||
11335 | rec( 62, 4, NetBIOSBroadcastWasPropogated ), |
||
11336 | rec( 66, 4, TotalOtherPackets ), |
||
11337 | rec( 70, 4, TotalRoutedPackets ), |
||
11338 | ]) |
||
11339 | pkt.CompletionCodes([0x0000, 0x9600, 0xc601, 0xfd00, 0xff00]) |
||
11340 | # 2222/17E8, 23/232 |
||
11341 | pkt = NCP(0x17E8, "Get File Server Misc Information", 'fileserver') |
||
11342 | pkt.Request(10) |
||
11343 | pkt.Reply(40, [ |
||
11344 | rec( 8, 4, SystemIntervalMarker, ENC_BIG_ENDIAN ), |
||
11345 | rec( 12, 1, ProcessorType ), |
||
11346 | rec( 13, 1, Reserved ), |
||
11347 | rec( 14, 1, NumberOfServiceProcesses ), |
||
11348 | rec( 15, 1, ServerUtilizationPercentage ), |
||
11349 | rec( 16, 2, ConfiguredMaxBinderyObjects ), |
||
11350 | rec( 18, 2, ActualMaxBinderyObjects ), |
||
11351 | rec( 20, 2, CurrentUsedBinderyObjects ), |
||
11352 | rec( 22, 2, TotalServerMemory ), |
||
11353 | rec( 24, 2, WastedServerMemory ), |
||
11354 | rec( 26, 2, NumberOfDynamicMemoryAreas, var="x" ), |
||
11355 | rec( 28, 12, DynMemStruct, repeat="x" ), |
||
11356 | ]) |
||
11357 | pkt.CompletionCodes([0x0000, 0x9600, 0xc601, 0xfd00, 0xff00]) |
||
11358 | # 2222/17E9, 23/233 |
||
11359 | pkt = NCP(0x17E9, "Get Volume Information", 'fileserver') |
||
11360 | pkt.Request(11, [ |
||
11361 | rec( 10, 1, VolumeNumber, info_str=(VolumeNumber, "Get Information on Volume %d", ", %d") ), |
||
11362 | ]) |
||
11363 | pkt.Reply(48, [ |
||
11364 | rec( 8, 4, SystemIntervalMarker, ENC_BIG_ENDIAN ), |
||
11365 | rec( 12, 1, VolumeNumber ), |
||
11366 | rec( 13, 1, LogicalDriveNumber ), |
||
11367 | rec( 14, 2, BlockSize ), |
||
11368 | rec( 16, 2, StartingBlock ), |
||
11369 | rec( 18, 2, TotalBlocks ), |
||
11370 | rec( 20, 2, FreeBlocks ), |
||
11371 | rec( 22, 2, TotalDirectoryEntries ), |
||
11372 | rec( 24, 2, FreeDirectoryEntries ), |
||
11373 | rec( 26, 2, ActualMaxUsedDirectoryEntries ), |
||
11374 | rec( 28, 1, VolumeHashedFlag ), |
||
11375 | rec( 29, 1, VolumeCachedFlag ), |
||
11376 | rec( 30, 1, VolumeRemovableFlag ), |
||
11377 | rec( 31, 1, VolumeMountedFlag ), |
||
11378 | rec( 32, 16, VolumeName ), |
||
11379 | ]) |
||
11380 | pkt.CompletionCodes([0x0000, 0x9600, 0xc601, 0xfd00, 0xff00]) |
||
11381 | # 2222/17EA, 23/234 |
||
11382 | pkt = NCP(0x17EA, "Get Connection's Task Information", 'fileserver') |
||
11383 | pkt.Request(12, [ |
||
11384 | rec( 10, 2, ConnectionNumber ), |
||
11385 | ]) |
||
11386 | pkt.Reply(13, [ |
||
11387 | rec( 8, 1, ConnLockStatus ), |
||
11388 | rec( 9, 1, NumberOfActiveTasks, var="x" ), |
||
11389 | rec( 10, 3, TaskStruct, repeat="x" ), |
||
11390 | ]) |
||
11391 | pkt.CompletionCodes([0x0000, 0x9600, 0xc601, 0xfd00, 0xff00]) |
||
11392 | # 2222/17EB, 23/235 |
||
11393 | pkt = NCP(0x17EB, "Get Connection's Open Files", 'fileserver') |
||
11394 | pkt.Request(14, [ |
||
11395 | rec( 10, 2, ConnectionNumber ), |
||
11396 | rec( 12, 2, LastRecordSeen ), |
||
11397 | ]) |
||
11398 | pkt.Reply((29,283), [ |
||
11399 | rec( 8, 2, NextRequestRecord ), |
||
11400 | rec( 10, 2, NumberOfRecords, var="x" ), |
||
11401 | rec( 12, (17, 271), OpnFilesStruct, repeat="x" ), |
||
11402 | ]) |
||
11403 | pkt.CompletionCodes([0x0000, 0x9600, 0xc601, 0xff00]) |
||
11404 | # 2222/17EC, 23/236 |
||
11405 | pkt = NCP(0x17EC, "Get Connection Using A File", 'fileserver') |
||
11406 | pkt.Request(18, [ |
||
11407 | rec( 10, 1, DataStreamNumber ), |
||
11408 | rec( 11, 1, VolumeNumber ), |
||
11409 | rec( 12, 4, DirectoryBase, ENC_LITTLE_ENDIAN ), |
||
11410 | rec( 16, 2, LastRecordSeen ), |
||
11411 | ]) |
||
11412 | pkt.Reply(33, [ |
||
11413 | rec( 8, 2, NextRequestRecord ), |
||
11414 | rec( 10, 2, FileUseCount ), |
||
11415 | rec( 12, 2, OpenCount ), |
||
11416 | rec( 14, 2, OpenForReadCount ), |
||
11417 | rec( 16, 2, OpenForWriteCount ), |
||
11418 | rec( 18, 2, DenyReadCount ), |
||
11419 | rec( 20, 2, DenyWriteCount ), |
||
11420 | rec( 22, 1, Locked ), |
||
11421 | rec( 23, 1, ForkCount ), |
||
11422 | rec( 24, 2, NumberOfRecords, var="x" ), |
||
11423 | rec( 26, 7, ConnFileStruct, repeat="x" ), |
||
11424 | ]) |
||
11425 | pkt.CompletionCodes([0x0000, 0x9600, 0xc601, 0xff00]) |
||
11426 | # 2222/17ED, 23/237 |
||
11427 | pkt = NCP(0x17ED, "Get Physical Record Locks By Connection And File", 'fileserver') |
||
11428 | pkt.Request(20, [ |
||
11429 | rec( 10, 2, TargetConnectionNumber ), |
||
11430 | rec( 12, 1, DataStreamNumber ), |
||
11431 | rec( 13, 1, VolumeNumber ), |
||
11432 | rec( 14, 4, DirectoryBase, ENC_LITTLE_ENDIAN ), |
||
11433 | rec( 18, 2, LastRecordSeen ), |
||
11434 | ]) |
||
11435 | pkt.Reply(23, [ |
||
11436 | rec( 8, 2, NextRequestRecord ), |
||
11437 | rec( 10, 2, NumberOfLocks, ENC_LITTLE_ENDIAN, var="x" ), |
||
11438 | rec( 12, 11, LockStruct, repeat="x" ), |
||
11439 | ]) |
||
11440 | pkt.CompletionCodes([0x0000, 0x9600, 0xc601, 0xfd00, 0xff00]) |
||
11441 | # 2222/17EE, 23/238 |
||
11442 | pkt = NCP(0x17EE, "Get Physical Record Locks By File", 'fileserver') |
||
11443 | pkt.Request(18, [ |
||
11444 | rec( 10, 1, DataStreamNumber ), |
||
11445 | rec( 11, 1, VolumeNumber ), |
||
11446 | rec( 12, 4, DirectoryBase ), |
||
11447 | rec( 16, 2, LastRecordSeen ), |
||
11448 | ]) |
||
11449 | pkt.Reply(30, [ |
||
11450 | rec( 8, 2, NextRequestRecord ), |
||
11451 | rec( 10, 2, NumberOfLocks, ENC_LITTLE_ENDIAN, var="x" ), |
||
11452 | rec( 12, 18, PhyLockStruct, repeat="x" ), |
||
11453 | ]) |
||
11454 | pkt.CompletionCodes([0x0000, 0x9600, 0xc601, 0xfd00, 0xff00]) |
||
11455 | # 2222/17EF, 23/239 |
||
11456 | pkt = NCP(0x17EF, "Get Logical Records By Connection", 'fileserver') |
||
11457 | pkt.Request(14, [ |
||
11458 | rec( 10, 2, TargetConnectionNumber ), |
||
11459 | rec( 12, 2, LastRecordSeen ), |
||
11460 | ]) |
||
11461 | pkt.Reply((16,270), [ |
||
11462 | rec( 8, 2, NextRequestRecord ), |
||
11463 | rec( 10, 2, NumberOfRecords, var="x" ), |
||
11464 | rec( 12, (4, 258), LogLockStruct, repeat="x" ), |
||
11465 | ]) |
||
11466 | pkt.CompletionCodes([0x0000, 0x9600, 0xc601, 0xfd00, 0xff00]) |
||
11467 | # 2222/17F0, 23/240 |
||
11468 | pkt = NCP(0x17F0, "Get Logical Record Information (old)", 'fileserver') |
||
11469 | pkt.Request((13,267), [ |
||
11470 | rec( 10, 2, LastRecordSeen ), |
||
11471 | rec( 12, (1,255), LogicalRecordName ), |
||
11472 | ]) |
||
11473 | pkt.Reply(22, [ |
||
11474 | rec( 8, 2, ShareableLockCount ), |
||
11475 | rec( 10, 2, UseCount ), |
||
11476 | rec( 12, 1, Locked ), |
||
11477 | rec( 13, 2, NextRequestRecord ), |
||
11478 | rec( 15, 2, NumberOfRecords, var="x" ), |
||
11479 | rec( 17, 5, LogRecStruct, repeat="x" ), |
||
11480 | ]) |
||
11481 | pkt.CompletionCodes([0x0000, 0x9600, 0xc601, 0xfd00, 0xff00]) |
||
11482 | # 2222/17F1, 23/241 |
||
11483 | pkt = NCP(0x17F1, "Get Connection's Semaphores", 'fileserver') |
||
11484 | pkt.Request(14, [ |
||
11485 | rec( 10, 2, ConnectionNumber ), |
||
11486 | rec( 12, 2, LastRecordSeen ), |
||
11487 | ]) |
||
11488 | pkt.Reply((19,273), [ |
||
11489 | rec( 8, 2, NextRequestRecord ), |
||
11490 | rec( 10, 2, NumberOfSemaphores, var="x" ), |
||
11491 | rec( 12, (7, 261), SemaStruct, repeat="x" ), |
||
11492 | ]) |
||
11493 | pkt.CompletionCodes([0x0000, 0x9600, 0xc601, 0xfd00, 0xff00]) |
||
11494 | # 2222/17F2, 23/242 |
||
11495 | pkt = NCP(0x17F2, "Get Semaphore Information", 'fileserver') |
||
11496 | pkt.Request((13,267), [ |
||
11497 | rec( 10, 2, LastRecordSeen ), |
||
11498 | rec( 12, (1,255), SemaphoreName, info_str=(SemaphoreName, "Get Semaphore Information: %s", ", %s") ), |
||
11499 | ]) |
||
11500 | pkt.Reply(20, [ |
||
11501 | rec( 8, 2, NextRequestRecord ), |
||
11502 | rec( 10, 2, OpenCount ), |
||
11503 | rec( 12, 2, SemaphoreValue ), |
||
11504 | rec( 14, 2, NumberOfRecords, var="x" ), |
||
11505 | rec( 16, 4, SemaInfoStruct, repeat="x" ), |
||
11506 | ]) |
||
11507 | pkt.CompletionCodes([0x0000, 0x9600, 0xc601, 0xfd00, 0xff00]) |
||
11508 | # 2222/17F3, 23/243 |
||
11509 | pkt = NCP(0x17F3, "Map Directory Number to Path", 'file') |
||
11510 | pkt.Request(16, [ |
||
11511 | rec( 10, 1, VolumeNumber ), |
||
11512 | rec( 11, 4, DirectoryNumber ), |
||
11513 | rec( 15, 1, NameSpace ), |
||
11514 | ]) |
||
11515 | pkt.Reply((9,263), [ |
||
11516 | rec( 8, (1,255), Path ), |
||
11517 | ]) |
||
11518 | pkt.CompletionCodes([0x0000, 0x9600, 0x9c00, 0xc601, 0xfd00, 0xff00]) |
||
11519 | # 2222/17F4, 23/244 |
||
11520 | pkt = NCP(0x17F4, "Convert Path to Dir Entry", 'file') |
||
11521 | pkt.Request((12,266), [ |
||
11522 | rec( 10, 1, DirHandle ), |
||
11523 | rec( 11, (1,255), Path, info_str=(Path, "Convert Path to Directory Entry: %s", ", %s") ), |
||
11524 | ]) |
||
11525 | pkt.Reply(13, [ |
||
11526 | rec( 8, 1, VolumeNumber ), |
||
11527 | rec( 9, 4, DirectoryNumber ), |
||
11528 | ]) |
||
11529 | pkt.CompletionCodes([0x0000, 0x9600, 0xc601, 0xfd00, 0xff00]) |
||
11530 | # 2222/17FD, 23/253 |
||
11531 | pkt = NCP(0x17FD, "Send Console Broadcast", 'fileserver') |
||
11532 | pkt.Request((16, 270), [ |
||
11533 | rec( 10, 1, NumberOfStations, var="x" ), |
||
11534 | rec( 11, 4, StationList, repeat="x" ), |
||
11535 | rec( 15, (1, 255), TargetMessage, info_str=(TargetMessage, "Send Console Broadcast: %s", ", %s") ), |
||
11536 | ]) |
||
11537 | pkt.Reply(8) |
||
11538 | pkt.CompletionCodes([0x0000, 0xc601, 0xfd00]) |
||
11539 | # 2222/17FE, 23/254 |
||
11540 | pkt = NCP(0x17FE, "Clear Connection Number", 'fileserver') |
||
11541 | pkt.Request(14, [ |
||
11542 | rec( 10, 4, ConnectionNumber ), |
||
11543 | ]) |
||
11544 | pkt.Reply(8) |
||
11545 | pkt.CompletionCodes([0x0000, 0xc601, 0xfd00]) |
||
11546 | # 2222/18, 24 |
||
11547 | pkt = NCP(0x18, "End of Job", 'connection') |
||
11548 | pkt.Request(7) |
||
11549 | pkt.Reply(8) |
||
11550 | pkt.CompletionCodes([0x0000]) |
||
11551 | # 2222/19, 25 |
||
11552 | pkt = NCP(0x19, "Logout", 'connection') |
||
11553 | pkt.Request(7) |
||
11554 | pkt.Reply(8) |
||
11555 | pkt.CompletionCodes([0x0000]) |
||
11556 | # 2222/1A, 26 |
||
11557 | pkt = NCP(0x1A, "Log Physical Record", 'sync') |
||
11558 | pkt.Request(24, [ |
||
11559 | rec( 7, 1, LockFlag ), |
||
11560 | rec( 8, 6, FileHandle ), |
||
11561 | rec( 14, 4, LockAreasStartOffset, ENC_BIG_ENDIAN ), |
||
11562 | rec( 18, 4, LockAreaLen, ENC_BIG_ENDIAN, info_str=(LockAreaLen, "Lock Record - Length of %d", "%d") ), |
||
11563 | rec( 22, 2, LockTimeout ), |
||
11564 | ]) |
||
11565 | pkt.Reply(8) |
||
11566 | pkt.CompletionCodes([0x0000, 0x8800, 0x9600, 0xfd02, 0xfe04, 0xff01]) |
||
11567 | # 2222/1B, 27 |
||
11568 | pkt = NCP(0x1B, "Lock Physical Record Set", 'sync') |
||
11569 | pkt.Request(10, [ |
||
11570 | rec( 7, 1, LockFlag ), |
||
11571 | rec( 8, 2, LockTimeout ), |
||
11572 | ]) |
||
11573 | pkt.Reply(8) |
||
11574 | pkt.CompletionCodes([0x0000, 0x8800, 0x9600, 0xfd02, 0xfe04, 0xff01]) |
||
11575 | # 2222/1C, 28 |
||
11576 | pkt = NCP(0x1C, "Release Physical Record", 'sync') |
||
11577 | pkt.Request(22, [ |
||
11578 | rec( 7, 1, Reserved ), |
||
11579 | rec( 8, 6, FileHandle ), |
||
11580 | rec( 14, 4, LockAreasStartOffset ), |
||
11581 | rec( 18, 4, LockAreaLen, info_str=(LockAreaLen, "Release Lock Record - Length of %d", "%d") ), |
||
11582 | ]) |
||
11583 | pkt.Reply(8) |
||
11584 | pkt.CompletionCodes([0x0000, 0x8800, 0x9600, 0xfd02, 0xfe04, 0xff03]) |
||
11585 | # 2222/1D, 29 |
||
11586 | pkt = NCP(0x1D, "Release Physical Record Set", 'sync') |
||
11587 | pkt.Request(8, [ |
||
11588 | rec( 7, 1, LockFlag ), |
||
11589 | ]) |
||
11590 | pkt.Reply(8) |
||
11591 | pkt.CompletionCodes([0x0000, 0x8800, 0x9600, 0xfd02, 0xfe04, 0xff03]) |
||
11592 | # 2222/1E, 30 #Tested and fixed 6-14-02 GM |
||
11593 | pkt = NCP(0x1E, "Clear Physical Record", 'sync') |
||
11594 | pkt.Request(22, [ |
||
11595 | rec( 7, 1, Reserved ), |
||
11596 | rec( 8, 6, FileHandle ), |
||
11597 | rec( 14, 4, LockAreasStartOffset, ENC_BIG_ENDIAN ), |
||
11598 | rec( 18, 4, LockAreaLen, ENC_BIG_ENDIAN, info_str=(LockAreaLen, "Clear Lock Record - Length of %d", "%d") ), |
||
11599 | ]) |
||
11600 | pkt.Reply(8) |
||
11601 | pkt.CompletionCodes([0x0000, 0x8000, 0x8800, 0x9600, 0xfd02, 0xfe04, 0xff03]) |
||
11602 | # 2222/1F, 31 |
||
11603 | pkt = NCP(0x1F, "Clear Physical Record Set", 'sync') |
||
11604 | pkt.Request(8, [ |
||
11605 | rec( 7, 1, LockFlag ), |
||
11606 | ]) |
||
11607 | pkt.Reply(8) |
||
11608 | pkt.CompletionCodes([0x0000, 0x8800, 0x9600, 0xfd02, 0xfe04, 0xff03]) |
||
11609 | # 2222/2000, 32/00 |
||
11610 | pkt = NCP(0x2000, "Open Semaphore", 'sync', has_length=0) |
||
11611 | pkt.Request((10,264), [ |
||
11612 | rec( 8, 1, InitialSemaphoreValue ), |
||
11613 | rec( 9, (1,255), SemaphoreName, info_str=(SemaphoreName, "Open Semaphore: %s", ", %s") ), |
||
11614 | ]) |
||
11615 | pkt.Reply(13, [ |
||
11616 | rec( 8, 4, SemaphoreHandle, ENC_BIG_ENDIAN ), |
||
11617 | rec( 12, 1, SemaphoreOpenCount ), |
||
11618 | ]) |
||
11619 | pkt.CompletionCodes([0x0000, 0x9600, 0xff01]) |
||
11620 | # 2222/2001, 32/01 |
||
11621 | pkt = NCP(0x2001, "Examine Semaphore", 'sync', has_length=0) |
||
11622 | pkt.Request(12, [ |
||
11623 | rec( 8, 4, SemaphoreHandle, ENC_BIG_ENDIAN ), |
||
11624 | ]) |
||
11625 | pkt.Reply(10, [ |
||
11626 | rec( 8, 1, SemaphoreValue ), |
||
11627 | rec( 9, 1, SemaphoreOpenCount ), |
||
11628 | ]) |
||
11629 | pkt.CompletionCodes([0x0000, 0x9600, 0xff01]) |
||
11630 | # 2222/2002, 32/02 |
||
11631 | pkt = NCP(0x2002, "Wait On Semaphore", 'sync', has_length=0) |
||
11632 | pkt.Request(14, [ |
||
11633 | rec( 8, 4, SemaphoreHandle, ENC_BIG_ENDIAN ), |
||
11634 | rec( 12, 2, SemaphoreTimeOut, ENC_BIG_ENDIAN ), |
||
11635 | ]) |
||
11636 | pkt.Reply(8) |
||
11637 | pkt.CompletionCodes([0x0000, 0x9600, 0xff01]) |
||
11638 | # 2222/2003, 32/03 |
||
11639 | pkt = NCP(0x2003, "Signal Semaphore", 'sync', has_length=0) |
||
11640 | pkt.Request(12, [ |
||
11641 | rec( 8, 4, SemaphoreHandle, ENC_BIG_ENDIAN ), |
||
11642 | ]) |
||
11643 | pkt.Reply(8) |
||
11644 | pkt.CompletionCodes([0x0000, 0x9600, 0xff01]) |
||
11645 | # 2222/2004, 32/04 |
||
11646 | pkt = NCP(0x2004, "Close Semaphore", 'sync', has_length=0) |
||
11647 | pkt.Request(12, [ |
||
11648 | rec( 8, 4, SemaphoreHandle, ENC_BIG_ENDIAN ), |
||
11649 | ]) |
||
11650 | pkt.Reply(8) |
||
11651 | pkt.CompletionCodes([0x0000, 0x9600, 0xff01]) |
||
11652 | # 2222/21, 33 |
||
11653 | pkt = NCP(0x21, "Negotiate Buffer Size", 'connection') |
||
11654 | pkt.Request(9, [ |
||
11655 | rec( 7, 2, BufferSize, ENC_BIG_ENDIAN ), |
||
11656 | ]) |
||
11657 | pkt.Reply(10, [ |
||
11658 | rec( 8, 2, BufferSize, ENC_BIG_ENDIAN ), |
||
11659 | ]) |
||
11660 | pkt.CompletionCodes([0x0000]) |
||
11661 | # 2222/2200, 34/00 |
||
11662 | pkt = NCP(0x2200, "TTS Is Available", 'tts', has_length=0) |
||
11663 | pkt.Request(8) |
||
11664 | pkt.Reply(8) |
||
11665 | pkt.CompletionCodes([0x0001, 0xfd03, 0xff12]) |
||
11666 | # 2222/2201, 34/01 |
||
11667 | pkt = NCP(0x2201, "TTS Begin Transaction", 'tts', has_length=0) |
||
11668 | pkt.Request(8) |
||
11669 | pkt.Reply(8) |
||
11670 | pkt.CompletionCodes([0x0000]) |
||
11671 | # 2222/2202, 34/02 |
||
11672 | pkt = NCP(0x2202, "TTS End Transaction", 'tts', has_length=0) |
||
11673 | pkt.Request(8) |
||
11674 | pkt.Reply(12, [ |
||
11675 | rec( 8, 4, TransactionNumber, ENC_BIG_ENDIAN ), |
||
11676 | ]) |
||
11677 | pkt.CompletionCodes([0x0000, 0xff01]) |
||
11678 | # 2222/2203, 34/03 |
||
11679 | pkt = NCP(0x2203, "TTS Abort Transaction", 'tts', has_length=0) |
||
11680 | pkt.Request(8) |
||
11681 | pkt.Reply(8) |
||
11682 | pkt.CompletionCodes([0x0000, 0xfd03, 0xfe0b, 0xff01]) |
||
11683 | # 2222/2204, 34/04 |
||
11684 | pkt = NCP(0x2204, "TTS Transaction Status", 'tts', has_length=0) |
||
11685 | pkt.Request(12, [ |
||
11686 | rec( 8, 4, TransactionNumber, ENC_BIG_ENDIAN ), |
||
11687 | ]) |
||
11688 | pkt.Reply(8) |
||
11689 | pkt.CompletionCodes([0x0000]) |
||
11690 | # 2222/2205, 34/05 |
||
11691 | pkt = NCP(0x2205, "TTS Get Application Thresholds", 'tts', has_length=0) |
||
11692 | pkt.Request(8) |
||
11693 | pkt.Reply(10, [ |
||
11694 | rec( 8, 1, LogicalLockThreshold ), |
||
11695 | rec( 9, 1, PhysicalLockThreshold ), |
||
11696 | ]) |
||
11697 | pkt.CompletionCodes([0x0000]) |
||
11698 | # 2222/2206, 34/06 |
||
11699 | pkt = NCP(0x2206, "TTS Set Application Thresholds", 'tts', has_length=0) |
||
11700 | pkt.Request(10, [ |
||
11701 | rec( 8, 1, LogicalLockThreshold ), |
||
11702 | rec( 9, 1, PhysicalLockThreshold ), |
||
11703 | ]) |
||
11704 | pkt.Reply(8) |
||
11705 | pkt.CompletionCodes([0x0000, 0x9600]) |
||
11706 | # 2222/2207, 34/07 |
||
11707 | pkt = NCP(0x2207, "TTS Get Workstation Thresholds", 'tts', has_length=0) |
||
11708 | pkt.Request(8) |
||
11709 | pkt.Reply(10, [ |
||
11710 | rec( 8, 1, LogicalLockThreshold ), |
||
11711 | rec( 9, 1, PhysicalLockThreshold ), |
||
11712 | ]) |
||
11713 | pkt.CompletionCodes([0x0000]) |
||
11714 | # 2222/2208, 34/08 |
||
11715 | pkt = NCP(0x2208, "TTS Set Workstation Thresholds", 'tts', has_length=0) |
||
11716 | pkt.Request(10, [ |
||
11717 | rec( 8, 1, LogicalLockThreshold ), |
||
11718 | rec( 9, 1, PhysicalLockThreshold ), |
||
11719 | ]) |
||
11720 | pkt.Reply(8) |
||
11721 | pkt.CompletionCodes([0x0000]) |
||
11722 | # 2222/2209, 34/09 |
||
11723 | pkt = NCP(0x2209, "TTS Get Transaction Bits", 'tts', has_length=0) |
||
11724 | pkt.Request(8) |
||
11725 | pkt.Reply(9, [ |
||
11726 | rec( 8, 1, ControlFlags ), |
||
11727 | ]) |
||
11728 | pkt.CompletionCodes([0x0000]) |
||
11729 | # 2222/220A, 34/10 |
||
11730 | pkt = NCP(0x220A, "TTS Set Transaction Bits", 'tts', has_length=0) |
||
11731 | pkt.Request(9, [ |
||
11732 | rec( 8, 1, ControlFlags ), |
||
11733 | ]) |
||
11734 | pkt.Reply(8) |
||
11735 | pkt.CompletionCodes([0x0000]) |
||
11736 | # 2222/2301, 35/01 |
||
11737 | pkt = NCP(0x2301, "AFP Create Directory", 'afp') |
||
11738 | pkt.Request((49, 303), [ |
||
11739 | rec( 10, 1, VolumeNumber ), |
||
11740 | rec( 11, 4, BaseDirectoryID ), |
||
11741 | rec( 15, 1, Reserved ), |
||
11742 | rec( 16, 4, CreatorID ), |
||
11743 | rec( 20, 4, Reserved4 ), |
||
11744 | rec( 24, 2, FinderAttr ), |
||
11745 | rec( 26, 2, HorizLocation ), |
||
11746 | rec( 28, 2, VertLocation ), |
||
11747 | rec( 30, 2, FileDirWindow ), |
||
11748 | rec( 32, 16, Reserved16 ), |
||
11749 | rec( 48, (1,255), Path, info_str=(Path, "AFP Create Directory: %s", ", %s") ), |
||
11750 | ]) |
||
11751 | pkt.Reply(12, [ |
||
11752 | rec( 8, 4, NewDirectoryID ), |
||
11753 | ]) |
||
11754 | pkt.CompletionCodes([0x0000, 0x8301, 0x8400, 0x8800, 0x9300, 0x9600, 0x9804, |
||
11755 | 0x9900, 0x9c03, 0x9e02, 0xa100, 0xa201, 0xfd00, 0xff18]) |
||
11756 | # 2222/2302, 35/02 |
||
11757 | pkt = NCP(0x2302, "AFP Create File", 'afp') |
||
11758 | pkt.Request((49, 303), [ |
||
11759 | rec( 10, 1, VolumeNumber ), |
||
11760 | rec( 11, 4, BaseDirectoryID ), |
||
11761 | rec( 15, 1, DeleteExistingFileFlag ), |
||
11762 | rec( 16, 4, CreatorID, ENC_BIG_ENDIAN ), |
||
11763 | rec( 20, 4, Reserved4 ), |
||
11764 | rec( 24, 2, FinderAttr ), |
||
11765 | rec( 26, 2, HorizLocation, ENC_BIG_ENDIAN ), |
||
11766 | rec( 28, 2, VertLocation, ENC_BIG_ENDIAN ), |
||
11767 | rec( 30, 2, FileDirWindow, ENC_BIG_ENDIAN ), |
||
11768 | rec( 32, 16, Reserved16 ), |
||
11769 | rec( 48, (1,255), Path, info_str=(Path, "AFP Create File: %s", ", %s") ), |
||
11770 | ]) |
||
11771 | pkt.Reply(12, [ |
||
11772 | rec( 8, 4, NewDirectoryID ), |
||
11773 | ]) |
||
11774 | pkt.CompletionCodes([0x0000, 0x8000, 0x8101, 0x8301, 0x8400, 0x8701, 0x8800, |
||
11775 | 0x8a00, 0x8d00, 0x8e00, 0x8f00, 0x9300, 0x9600, 0x9804, |
||
11776 | 0x9900, 0x9b03, 0x9c03, 0x9e02, 0xa100, 0xa201, 0xfd00, |
||
11777 | 0xff18]) |
||
11778 | # 2222/2303, 35/03 |
||
11779 | pkt = NCP(0x2303, "AFP Delete", 'afp') |
||
11780 | pkt.Request((16,270), [ |
||
11781 | rec( 10, 1, VolumeNumber ), |
||
11782 | rec( 11, 4, BaseDirectoryID ), |
||
11783 | rec( 15, (1,255), Path, info_str=(Path, "AFP Delete: %s", ", %s") ), |
||
11784 | ]) |
||
11785 | pkt.Reply(8) |
||
11786 | pkt.CompletionCodes([0x0000, 0x8301, 0x8800, 0x8a00, 0x8d00, 0x8e00, 0x8f00, |
||
11787 | 0x9000, 0x9300, 0x9600, 0x9804, 0x9b03, 0x9c03, 0x9e02, |
||
11788 | 0xa000, 0xa100, 0xa201, 0xfd00, 0xff19]) |
||
11789 | # 2222/2304, 35/04 |
||
11790 | pkt = NCP(0x2304, "AFP Get Entry ID From Name", 'afp') |
||
11791 | pkt.Request((16,270), [ |
||
11792 | rec( 10, 1, VolumeNumber ), |
||
11793 | rec( 11, 4, BaseDirectoryID ), |
||
11794 | rec( 15, (1,255), Path, info_str=(Path, "AFP Get Entry from Name: %s", ", %s") ), |
||
11795 | ]) |
||
11796 | pkt.Reply(12, [ |
||
11797 | rec( 8, 4, TargetEntryID, ENC_BIG_ENDIAN ), |
||
11798 | ]) |
||
11799 | pkt.CompletionCodes([0x0000, 0x8301, 0x8800, 0x9300, 0x9600, 0x9804, 0x9c03, |
||
11800 | 0xa100, 0xa201, 0xfd00, 0xff19]) |
||
11801 | # 2222/2305, 35/05 |
||
11802 | pkt = NCP(0x2305, "AFP Get File Information", 'afp') |
||
11803 | pkt.Request((18,272), [ |
||
11804 | rec( 10, 1, VolumeNumber ), |
||
11805 | rec( 11, 4, BaseDirectoryID ), |
||
11806 | rec( 15, 2, RequestBitMap, ENC_BIG_ENDIAN ), |
||
11807 | rec( 17, (1,255), Path, info_str=(Path, "AFP Get File Information: %s", ", %s") ), |
||
11808 | ]) |
||
11809 | pkt.Reply(121, [ |
||
11810 | rec( 8, 4, AFPEntryID, ENC_BIG_ENDIAN ), |
||
11811 | rec( 12, 4, ParentID, ENC_BIG_ENDIAN ), |
||
11812 | rec( 16, 2, AttributesDef16, ENC_LITTLE_ENDIAN ), |
||
11813 | rec( 18, 4, DataForkLen, ENC_BIG_ENDIAN ), |
||
11814 | rec( 22, 4, ResourceForkLen, ENC_BIG_ENDIAN ), |
||
11815 | rec( 26, 2, TotalOffspring, ENC_BIG_ENDIAN ), |
||
11816 | rec( 28, 2, CreationDate, ENC_BIG_ENDIAN ), |
||
11817 | rec( 30, 2, LastAccessedDate, ENC_BIG_ENDIAN ), |
||
11818 | rec( 32, 2, ModifiedDate, ENC_BIG_ENDIAN ), |
||
11819 | rec( 34, 2, ModifiedTime, ENC_BIG_ENDIAN ), |
||
11820 | rec( 36, 2, ArchivedDate, ENC_BIG_ENDIAN ), |
||
11821 | rec( 38, 2, ArchivedTime, ENC_BIG_ENDIAN ), |
||
11822 | rec( 40, 4, CreatorID, ENC_BIG_ENDIAN ), |
||
11823 | rec( 44, 4, Reserved4 ), |
||
11824 | rec( 48, 2, FinderAttr ), |
||
11825 | rec( 50, 2, HorizLocation ), |
||
11826 | rec( 52, 2, VertLocation ), |
||
11827 | rec( 54, 2, FileDirWindow ), |
||
11828 | rec( 56, 16, Reserved16 ), |
||
11829 | rec( 72, 32, LongName ), |
||
11830 | rec( 104, 4, CreatorID, ENC_BIG_ENDIAN ), |
||
11831 | rec( 108, 12, ShortName ), |
||
11832 | rec( 120, 1, AccessPrivileges ), |
||
11833 | ]) |
||
11834 | pkt.CompletionCodes([0x0000, 0x8301, 0x8800, 0x9300, 0x9600, 0x9804, 0x9c03, |
||
11835 | 0xa100, 0xa201, 0xfd00, 0xff19]) |
||
11836 | # 2222/2306, 35/06 |
||
11837 | pkt = NCP(0x2306, "AFP Get Entry ID From NetWare Handle", 'afp') |
||
11838 | pkt.Request(16, [ |
||
11839 | rec( 10, 6, FileHandle ), |
||
11840 | ]) |
||
11841 | pkt.Reply(14, [ |
||
11842 | rec( 8, 1, VolumeID ), |
||
11843 | rec( 9, 4, TargetEntryID, ENC_BIG_ENDIAN ), |
||
11844 | rec( 13, 1, ForkIndicator ), |
||
11845 | ]) |
||
11846 | pkt.CompletionCodes([0x0000, 0x8301, 0x8800, 0x9300, 0x9600, 0xa201]) |
||
11847 | # 2222/2307, 35/07 |
||
11848 | pkt = NCP(0x2307, "AFP Rename", 'afp') |
||
11849 | pkt.Request((21, 529), [ |
||
11850 | rec( 10, 1, VolumeNumber ), |
||
11851 | rec( 11, 4, MacSourceBaseID, ENC_BIG_ENDIAN ), |
||
11852 | rec( 15, 4, MacDestinationBaseID, ENC_BIG_ENDIAN ), |
||
11853 | rec( 19, (1,255), Path, info_str=(Path, "AFP Rename: %s", ", %s") ), |
||
11854 | rec( -1, (1,255), NewFileNameLen ), |
||
11855 | ]) |
||
11856 | pkt.Reply(8) |
||
11857 | pkt.CompletionCodes([0x0000, 0x8301, 0x8401, 0x8800, 0x8b00, 0x8e00, |
||
11858 | 0x9001, 0x9201, 0x9300, 0x9600, 0x9804, 0x9900, |
||
11859 | 0x9c03, 0x9e00, 0xa100, 0xa201, 0xfd00, 0xff0a]) |
||
11860 | # 2222/2308, 35/08 |
||
11861 | pkt = NCP(0x2308, "AFP Open File Fork", 'afp') |
||
11862 | pkt.Request((18, 272), [ |
||
11863 | rec( 10, 1, VolumeNumber ), |
||
11864 | rec( 11, 4, MacBaseDirectoryID ), |
||
11865 | rec( 15, 1, ForkIndicator ), |
||
11866 | rec( 16, 1, AccessMode ), |
||
11867 | rec( 17, (1,255), Path, info_str=(Path, "AFP Open File Fork: %s", ", %s") ), |
||
11868 | ]) |
||
11869 | pkt.Reply(22, [ |
||
11870 | rec( 8, 4, AFPEntryID, ENC_BIG_ENDIAN ), |
||
11871 | rec( 12, 4, DataForkLen, ENC_BIG_ENDIAN ), |
||
11872 | rec( 16, 6, NetWareAccessHandle ), |
||
11873 | ]) |
||
11874 | pkt.CompletionCodes([0x0000, 0x8000, 0x8101, 0x8301, 0x8800, 0x9300, |
||
11875 | 0x9400, 0x9600, 0x9804, 0x9900, 0x9c03, 0xa100, |
||
11876 | 0xa201, 0xfd00, 0xff16]) |
||
11877 | # 2222/2309, 35/09 |
||
11878 | pkt = NCP(0x2309, "AFP Set File Information", 'afp') |
||
11879 | pkt.Request((64, 318), [ |
||
11880 | rec( 10, 1, VolumeNumber ), |
||
11881 | rec( 11, 4, MacBaseDirectoryID ), |
||
11882 | rec( 15, 2, RequestBitMap, ENC_BIG_ENDIAN ), |
||
11883 | rec( 17, 2, MacAttr, ENC_BIG_ENDIAN ), |
||
11884 | rec( 19, 2, CreationDate, ENC_BIG_ENDIAN ), |
||
11885 | rec( 21, 2, LastAccessedDate, ENC_BIG_ENDIAN ), |
||
11886 | rec( 23, 2, ModifiedDate, ENC_BIG_ENDIAN ), |
||
11887 | rec( 25, 2, ModifiedTime, ENC_BIG_ENDIAN ), |
||
11888 | rec( 27, 2, ArchivedDate, ENC_BIG_ENDIAN ), |
||
11889 | rec( 29, 2, ArchivedTime, ENC_BIG_ENDIAN ), |
||
11890 | rec( 31, 4, CreatorID, ENC_BIG_ENDIAN ), |
||
11891 | rec( 35, 4, Reserved4 ), |
||
11892 | rec( 39, 2, FinderAttr ), |
||
11893 | rec( 41, 2, HorizLocation ), |
||
11894 | rec( 43, 2, VertLocation ), |
||
11895 | rec( 45, 2, FileDirWindow ), |
||
11896 | rec( 47, 16, Reserved16 ), |
||
11897 | rec( 63, (1,255), Path, info_str=(Path, "AFP Set File Information: %s", ", %s") ), |
||
11898 | ]) |
||
11899 | pkt.Reply(8) |
||
11900 | pkt.CompletionCodes([0x0000, 0x0104, 0x8301, 0x8800, 0x9300, 0x9400, |
||
11901 | 0x9500, 0x9600, 0x9804, 0x9c03, 0xa100, 0xa201, |
||
11902 | 0xfd00, 0xff16]) |
||
11903 | # 2222/230A, 35/10 |
||
11904 | pkt = NCP(0x230A, "AFP Scan File Information", 'afp') |
||
11905 | pkt.Request((26, 280), [ |
||
11906 | rec( 10, 1, VolumeNumber ), |
||
11907 | rec( 11, 4, MacBaseDirectoryID ), |
||
11908 | rec( 15, 4, MacLastSeenID, ENC_BIG_ENDIAN ), |
||
11909 | rec( 19, 2, DesiredResponseCount, ENC_BIG_ENDIAN ), |
||
11910 | rec( 21, 2, SearchBitMap, ENC_BIG_ENDIAN ), |
||
11911 | rec( 23, 2, RequestBitMap, ENC_BIG_ENDIAN ), |
||
11912 | rec( 25, (1,255), Path, info_str=(Path, "AFP Scan File Information: %s", ", %s") ), |
||
11913 | ]) |
||
11914 | pkt.Reply(123, [ |
||
11915 | rec( 8, 2, ActualResponseCount, ENC_BIG_ENDIAN, var="x" ), |
||
11916 | rec( 10, 113, AFP10Struct, repeat="x" ), |
||
11917 | ]) |
||
11918 | pkt.CompletionCodes([0x0000, 0x8301, 0x8800, 0x9300, 0x9600, 0x9804, |
||
11919 | 0x9c03, 0xa100, 0xa201, 0xfd00, 0xff16]) |
||
11920 | # 2222/230B, 35/11 |
||
11921 | pkt = NCP(0x230B, "AFP Alloc Temporary Directory Handle", 'afp') |
||
11922 | pkt.Request((16,270), [ |
||
11923 | rec( 10, 1, VolumeNumber ), |
||
11924 | rec( 11, 4, MacBaseDirectoryID ), |
||
11925 | rec( 15, (1,255), Path, info_str=(Path, "AFP Allocate Temporary Directory Handle: %s", ", %s") ), |
||
11926 | ]) |
||
11927 | pkt.Reply(10, [ |
||
11928 | rec( 8, 1, DirHandle ), |
||
11929 | rec( 9, 1, AccessRightsMask ), |
||
11930 | ]) |
||
11931 | pkt.CompletionCodes([0x0000, 0x8301, 0x8800, 0x9300, 0x9600, |
||
11932 | 0x9804, 0x9b03, 0x9c03, 0x9d00, 0xa100, |
||
11933 | 0xa201, 0xfd00, 0xff00]) |
||
11934 | # 2222/230C, 35/12 |
||
11935 | pkt = NCP(0x230C, "AFP Get Entry ID From Path Name", 'afp') |
||
11936 | pkt.Request((12,266), [ |
||
11937 | rec( 10, 1, DirHandle ), |
||
11938 | rec( 11, (1,255), Path, info_str=(Path, "AFP Get Entry ID from Path Name: %s", ", %s") ), |
||
11939 | ]) |
||
11940 | pkt.Reply(12, [ |
||
11941 | rec( 8, 4, AFPEntryID, ENC_BIG_ENDIAN ), |
||
11942 | ]) |
||
11943 | pkt.CompletionCodes([0x0000, 0x8301, 0x8800, 0x9300, 0x9600, |
||
11944 | 0x9804, 0x9b03, 0x9c03, 0xa100, 0xa201, |
||
11945 | 0xfd00, 0xff00]) |
||
11946 | # 2222/230D, 35/13 |
||
11947 | pkt = NCP(0x230D, "AFP 2.0 Create Directory", 'afp') |
||
11948 | pkt.Request((55,309), [ |
||
11949 | rec( 10, 1, VolumeNumber ), |
||
11950 | rec( 11, 4, BaseDirectoryID ), |
||
11951 | rec( 15, 1, Reserved ), |
||
11952 | rec( 16, 4, CreatorID, ENC_BIG_ENDIAN ), |
||
11953 | rec( 20, 4, Reserved4 ), |
||
11954 | rec( 24, 2, FinderAttr ), |
||
11955 | rec( 26, 2, HorizLocation ), |
||
11956 | rec( 28, 2, VertLocation ), |
||
11957 | rec( 30, 2, FileDirWindow ), |
||
11958 | rec( 32, 16, Reserved16 ), |
||
11959 | rec( 48, 6, ProDOSInfo ), |
||
11960 | rec( 54, (1,255), Path, info_str=(Path, "AFP 2.0 Create Directory: %s", ", %s") ), |
||
11961 | ]) |
||
11962 | pkt.Reply(12, [ |
||
11963 | rec( 8, 4, NewDirectoryID ), |
||
11964 | ]) |
||
11965 | pkt.CompletionCodes([0x0000, 0x8301, 0x8400, 0x8800, 0x9300, |
||
11966 | 0x9600, 0x9804, 0x9900, 0x9c03, 0x9e00, |
||
11967 | 0xa100, 0xa201, 0xfd00, 0xff00]) |
||
11968 | # 2222/230E, 35/14 |
||
11969 | pkt = NCP(0x230E, "AFP 2.0 Create File", 'afp') |
||
11970 | pkt.Request((55,309), [ |
||
11971 | rec( 10, 1, VolumeNumber ), |
||
11972 | rec( 11, 4, BaseDirectoryID ), |
||
11973 | rec( 15, 1, DeleteExistingFileFlag ), |
||
11974 | rec( 16, 4, CreatorID, ENC_BIG_ENDIAN ), |
||
11975 | rec( 20, 4, Reserved4 ), |
||
11976 | rec( 24, 2, FinderAttr ), |
||
11977 | rec( 26, 2, HorizLocation ), |
||
11978 | rec( 28, 2, VertLocation ), |
||
11979 | rec( 30, 2, FileDirWindow ), |
||
11980 | rec( 32, 16, Reserved16 ), |
||
11981 | rec( 48, 6, ProDOSInfo ), |
||
11982 | rec( 54, (1,255), Path, info_str=(Path, "AFP 2.0 Create File: %s", ", %s") ), |
||
11983 | ]) |
||
11984 | pkt.Reply(12, [ |
||
11985 | rec( 8, 4, NewDirectoryID ), |
||
11986 | ]) |
||
11987 | pkt.CompletionCodes([0x0000, 0x8000, 0x8101, 0x8301, 0x8400, |
||
11988 | 0x8701, 0x8800, 0x8a00, 0x8d00, 0x8e00, |
||
11989 | 0x8f00, 0x9001, 0x9300, 0x9600, 0x9804, |
||
11990 | 0x9900, 0x9b03, 0x9c03, 0x9e00, 0xa100, |
||
11991 | 0xa201, 0xfd00, 0xff00]) |
||
11992 | # 2222/230F, 35/15 |
||
11993 | pkt = NCP(0x230F, "AFP 2.0 Get File Or Directory Information", 'afp') |
||
11994 | pkt.Request((18,272), [ |
||
11995 | rec( 10, 1, VolumeNumber ), |
||
11996 | rec( 11, 4, BaseDirectoryID ), |
||
11997 | rec( 15, 2, RequestBitMap, ENC_BIG_ENDIAN ), |
||
11998 | rec( 17, (1,255), Path, info_str=(Path, "AFP 2.0 Get Information: %s", ", %s") ), |
||
11999 | ]) |
||
12000 | pkt.Reply(128, [ |
||
12001 | rec( 8, 4, AFPEntryID, ENC_BIG_ENDIAN ), |
||
12002 | rec( 12, 4, ParentID, ENC_BIG_ENDIAN ), |
||
12003 | rec( 16, 2, AttributesDef16 ), |
||
12004 | rec( 18, 4, DataForkLen, ENC_BIG_ENDIAN ), |
||
12005 | rec( 22, 4, ResourceForkLen, ENC_BIG_ENDIAN ), |
||
12006 | rec( 26, 2, TotalOffspring, ENC_BIG_ENDIAN ), |
||
12007 | rec( 28, 2, CreationDate, ENC_BIG_ENDIAN ), |
||
12008 | rec( 30, 2, LastAccessedDate, ENC_BIG_ENDIAN ), |
||
12009 | rec( 32, 2, ModifiedDate, ENC_BIG_ENDIAN ), |
||
12010 | rec( 34, 2, ModifiedTime, ENC_BIG_ENDIAN ), |
||
12011 | rec( 36, 2, ArchivedDate, ENC_BIG_ENDIAN ), |
||
12012 | rec( 38, 2, ArchivedTime, ENC_BIG_ENDIAN ), |
||
12013 | rec( 40, 4, CreatorID, ENC_BIG_ENDIAN ), |
||
12014 | rec( 44, 4, Reserved4 ), |
||
12015 | rec( 48, 2, FinderAttr ), |
||
12016 | rec( 50, 2, HorizLocation ), |
||
12017 | rec( 52, 2, VertLocation ), |
||
12018 | rec( 54, 2, FileDirWindow ), |
||
12019 | rec( 56, 16, Reserved16 ), |
||
12020 | rec( 72, 32, LongName ), |
||
12021 | rec( 104, 4, CreatorID, ENC_BIG_ENDIAN ), |
||
12022 | rec( 108, 12, ShortName ), |
||
12023 | rec( 120, 1, AccessPrivileges ), |
||
12024 | rec( 121, 1, Reserved ), |
||
12025 | rec( 122, 6, ProDOSInfo ), |
||
12026 | ]) |
||
12027 | pkt.CompletionCodes([0x0000, 0x8301, 0x8800, 0x9300, 0x9600, 0x9804, 0x9c03, |
||
12028 | 0xa100, 0xa201, 0xfd00, 0xff19]) |
||
12029 | # 2222/2310, 35/16 |
||
12030 | pkt = NCP(0x2310, "AFP 2.0 Set File Information", 'afp') |
||
12031 | pkt.Request((70, 324), [ |
||
12032 | rec( 10, 1, VolumeNumber ), |
||
12033 | rec( 11, 4, MacBaseDirectoryID ), |
||
12034 | rec( 15, 2, RequestBitMap, ENC_BIG_ENDIAN ), |
||
12035 | rec( 17, 2, AttributesDef16 ), |
||
12036 | rec( 19, 2, CreationDate, ENC_BIG_ENDIAN ), |
||
12037 | rec( 21, 2, LastAccessedDate, ENC_BIG_ENDIAN ), |
||
12038 | rec( 23, 2, ModifiedDate, ENC_BIG_ENDIAN ), |
||
12039 | rec( 25, 2, ModifiedTime, ENC_BIG_ENDIAN ), |
||
12040 | rec( 27, 2, ArchivedDate, ENC_BIG_ENDIAN ), |
||
12041 | rec( 29, 2, ArchivedTime, ENC_BIG_ENDIAN ), |
||
12042 | rec( 31, 4, CreatorID, ENC_BIG_ENDIAN ), |
||
12043 | rec( 35, 4, Reserved4 ), |
||
12044 | rec( 39, 2, FinderAttr ), |
||
12045 | rec( 41, 2, HorizLocation ), |
||
12046 | rec( 43, 2, VertLocation ), |
||
12047 | rec( 45, 2, FileDirWindow ), |
||
12048 | rec( 47, 16, Reserved16 ), |
||
12049 | rec( 63, 6, ProDOSInfo ), |
||
12050 | rec( 69, (1,255), Path, info_str=(Path, "AFP 2.0 Set File Information: %s", ", %s") ), |
||
12051 | ]) |
||
12052 | pkt.Reply(8) |
||
12053 | pkt.CompletionCodes([0x0000, 0x0104, 0x8301, 0x8800, 0x9300, 0x9400, |
||
12054 | 0x9500, 0x9600, 0x9804, 0x9c03, 0xa100, 0xa201, |
||
12055 | 0xfd00, 0xff16]) |
||
12056 | # 2222/2311, 35/17 |
||
12057 | pkt = NCP(0x2311, "AFP 2.0 Scan File Information", 'afp') |
||
12058 | pkt.Request((26, 280), [ |
||
12059 | rec( 10, 1, VolumeNumber ), |
||
12060 | rec( 11, 4, MacBaseDirectoryID ), |
||
12061 | rec( 15, 4, MacLastSeenID, ENC_BIG_ENDIAN ), |
||
12062 | rec( 19, 2, DesiredResponseCount, ENC_BIG_ENDIAN ), |
||
12063 | rec( 21, 2, SearchBitMap, ENC_BIG_ENDIAN ), |
||
12064 | rec( 23, 2, RequestBitMap, ENC_BIG_ENDIAN ), |
||
12065 | rec( 25, (1,255), Path, info_str=(Path, "AFP 2.0 Scan File Information: %s", ", %s") ), |
||
12066 | ]) |
||
12067 | pkt.Reply(14, [ |
||
12068 | rec( 8, 2, ActualResponseCount, var="x" ), |
||
12069 | rec( 10, 4, AFP20Struct, repeat="x" ), |
||
12070 | ]) |
||
12071 | pkt.CompletionCodes([0x0000, 0x8301, 0x8800, 0x9300, 0x9600, 0x9804, |
||
12072 | 0x9c03, 0xa100, 0xa201, 0xfd00, 0xff16]) |
||
12073 | # 2222/2312, 35/18 |
||
12074 | pkt = NCP(0x2312, "AFP Get DOS Name From Entry ID", 'afp') |
||
12075 | pkt.Request(15, [ |
||
12076 | rec( 10, 1, VolumeNumber ), |
||
12077 | rec( 11, 4, AFPEntryID, ENC_BIG_ENDIAN ), |
||
12078 | ]) |
||
12079 | pkt.Reply((9,263), [ |
||
12080 | rec( 8, (1,255), Path ), |
||
12081 | ]) |
||
12082 | pkt.CompletionCodes([0x0000, 0x8900, 0x9600, 0xbf00]) |
||
12083 | # 2222/2313, 35/19 |
||
12084 | pkt = NCP(0x2313, "AFP Get Macintosh Info On Deleted File", 'afp') |
||
12085 | pkt.Request(15, [ |
||
12086 | rec( 10, 1, VolumeNumber ), |
||
12087 | rec( 11, 4, DirectoryNumber, ENC_BIG_ENDIAN ), |
||
12088 | ]) |
||
12089 | pkt.Reply((51,305), [ |
||
12090 | rec( 8, 4, CreatorID, ENC_BIG_ENDIAN ), |
||
12091 | rec( 12, 4, Reserved4 ), |
||
12092 | rec( 16, 2, FinderAttr ), |
||
12093 | rec( 18, 2, HorizLocation ), |
||
12094 | rec( 20, 2, VertLocation ), |
||
12095 | rec( 22, 2, FileDirWindow ), |
||
12096 | rec( 24, 16, Reserved16 ), |
||
12097 | rec( 40, 6, ProDOSInfo ), |
||
12098 | rec( 46, 4, ResourceForkSize, ENC_BIG_ENDIAN ), |
||
12099 | rec( 50, (1,255), FileName ), |
||
12100 | ]) |
||
12101 | pkt.CompletionCodes([0x0000, 0x9c03, 0xbf00]) |
||
12102 | # 2222/2400, 36/00 |
||
12103 | pkt = NCP(0x2400, "Get NCP Extension Information", 'extension') |
||
12104 | pkt.Request(14, [ |
||
12105 | rec( 10, 4, NCPextensionNumber, ENC_LITTLE_ENDIAN ), |
||
12106 | ]) |
||
12107 | pkt.Reply((16,270), [ |
||
12108 | rec( 8, 4, NCPextensionNumber ), |
||
12109 | rec( 12, 1, NCPextensionMajorVersion ), |
||
12110 | rec( 13, 1, NCPextensionMinorVersion ), |
||
12111 | rec( 14, 1, NCPextensionRevisionNumber ), |
||
12112 | rec( 15, (1, 255), NCPextensionName ), |
||
12113 | ]) |
||
12114 | pkt.CompletionCodes([0x0000, 0x7e01, 0xfe00, 0xff20]) |
||
12115 | # 2222/2401, 36/01 |
||
12116 | pkt = NCP(0x2401, "Get NCP Extension Maximum Data Size", 'extension') |
||
12117 | pkt.Request(10) |
||
12118 | pkt.Reply(10, [ |
||
12119 | rec( 8, 2, NCPdataSize ), |
||
12120 | ]) |
||
12121 | pkt.CompletionCodes([0x0000, 0x7e01, 0xfe00, 0xff20]) |
||
12122 | # 2222/2402, 36/02 |
||
12123 | pkt = NCP(0x2402, "Get NCP Extension Information by Name", 'extension') |
||
12124 | pkt.Request((11, 265), [ |
||
12125 | rec( 10, (1,255), NCPextensionName, info_str=(NCPextensionName, "Get NCP Extension Information by Name: %s", ", %s") ), |
||
12126 | ]) |
||
12127 | pkt.Reply((16,270), [ |
||
12128 | rec( 8, 4, NCPextensionNumber ), |
||
12129 | rec( 12, 1, NCPextensionMajorVersion ), |
||
12130 | rec( 13, 1, NCPextensionMinorVersion ), |
||
12131 | rec( 14, 1, NCPextensionRevisionNumber ), |
||
12132 | rec( 15, (1, 255), NCPextensionName ), |
||
12133 | ]) |
||
12134 | pkt.CompletionCodes([0x0000, 0x7e01, 0xfe00, 0xff20]) |
||
12135 | # 2222/2403, 36/03 |
||
12136 | pkt = NCP(0x2403, "Get Number of Registered NCP Extensions", 'extension') |
||
12137 | pkt.Request(10) |
||
12138 | pkt.Reply(12, [ |
||
12139 | rec( 8, 4, NumberOfNCPExtensions ), |
||
12140 | ]) |
||
12141 | pkt.CompletionCodes([0x0000, 0x7e01, 0xfe00, 0xff20]) |
||
12142 | # 2222/2404, 36/04 |
||
12143 | pkt = NCP(0x2404, "Get NCP Extension Registered Verbs List", 'extension') |
||
12144 | pkt.Request(14, [ |
||
12145 | rec( 10, 4, StartingNumber ), |
||
12146 | ]) |
||
12147 | pkt.Reply(20, [ |
||
12148 | rec( 8, 4, ReturnedListCount, var="x" ), |
||
12149 | rec( 12, 4, nextStartingNumber ), |
||
12150 | rec( 16, 4, NCPExtensionNumbers, repeat="x" ), |
||
12151 | ]) |
||
12152 | pkt.CompletionCodes([0x0000, 0x7e01, 0xfe00, 0xff20]) |
||
12153 | # 2222/2405, 36/05 |
||
12154 | pkt = NCP(0x2405, "Return NCP Extension Information", 'extension') |
||
12155 | pkt.Request(14, [ |
||
12156 | rec( 10, 4, NCPextensionNumber ), |
||
12157 | ]) |
||
12158 | pkt.Reply((16,270), [ |
||
12159 | rec( 8, 4, NCPextensionNumber ), |
||
12160 | rec( 12, 1, NCPextensionMajorVersion ), |
||
12161 | rec( 13, 1, NCPextensionMinorVersion ), |
||
12162 | rec( 14, 1, NCPextensionRevisionNumber ), |
||
12163 | rec( 15, (1, 255), NCPextensionName ), |
||
12164 | ]) |
||
12165 | pkt.CompletionCodes([0x0000, 0x7e01, 0xfe00, 0xff20]) |
||
12166 | # 2222/2406, 36/06 |
||
12167 | pkt = NCP(0x2406, "Return NCP Extension Maximum Data Size", 'extension') |
||
12168 | pkt.Request(10) |
||
12169 | pkt.Reply(12, [ |
||
12170 | rec( 8, 4, NCPdataSize ), |
||
12171 | ]) |
||
12172 | pkt.CompletionCodes([0x0000, 0x7e01, 0xfe00, 0xff20]) |
||
12173 | # 2222/25, 37 |
||
12174 | pkt = NCP(0x25, "Execute NCP Extension", 'extension') |
||
12175 | pkt.Request(11, [ |
||
12176 | rec( 7, 4, NCPextensionNumber ), |
||
12177 | # The following value is Unicode |
||
12178 | #rec[ 13, (1,255), RequestData ], |
||
12179 | ]) |
||
12180 | pkt.Reply(8) |
||
12181 | # The following value is Unicode |
||
12182 | #[ 8, (1, 255), ReplyBuffer ], |
||
12183 | pkt.CompletionCodes([0x0000, 0x7e01, 0xf000, 0x9c00, 0xd504, 0xee00, 0xfe00, 0xff20]) |
||
12184 | # 2222/3B, 59 |
||
12185 | pkt = NCP(0x3B, "Commit File", 'file', has_length=0 ) |
||
12186 | pkt.Request(14, [ |
||
12187 | rec( 7, 1, Reserved ), |
||
12188 | rec( 8, 6, FileHandle, info_str=(FileHandle, "Commit File - 0x%s", ", %s") ), |
||
12189 | ]) |
||
12190 | pkt.Reply(8) |
||
12191 | pkt.CompletionCodes([0x0000, 0x8800, 0x9804, 0xff00]) |
||
12192 | # 2222/3D, 61 |
||
12193 | pkt = NCP(0x3D, "Commit File", 'file', has_length=0 ) |
||
12194 | pkt.Request(14, [ |
||
12195 | rec( 7, 1, Reserved ), |
||
12196 | rec( 8, 6, FileHandle, info_str=(FileHandle, "Commit File - 0x%s", ", %s") ), |
||
12197 | ]) |
||
12198 | pkt.Reply(8) |
||
12199 | pkt.CompletionCodes([0x0000, 0x8800, 0x9804, 0xff00]) |
||
12200 | # 2222/3E, 62 |
||
12201 | pkt = NCP(0x3E, "File Search Initialize", 'file', has_length=0 ) |
||
12202 | pkt.Request((9, 263), [ |
||
12203 | rec( 7, 1, DirHandle ), |
||
12204 | rec( 8, (1,255), Path, info_str=(Path, "Initialize File Search: %s", ", %s") ), |
||
12205 | ]) |
||
12206 | pkt.Reply(14, [ |
||
12207 | rec( 8, 1, VolumeNumber ), |
||
12208 | rec( 9, 2, DirectoryID ), |
||
12209 | rec( 11, 2, SequenceNumber, ENC_BIG_ENDIAN ), |
||
12210 | rec( 13, 1, AccessRightsMask ), |
||
12211 | ]) |
||
12212 | pkt.CompletionCodes([0x0000, 0x9600, 0x9804, 0x9b03, 0x9c03, 0xa100, |
||
12213 | 0xfd00, 0xff16]) |
||
12214 | # 2222/3F, 63 |
||
12215 | pkt = NCP(0x3F, "File Search Continue", 'file', has_length=0 ) |
||
12216 | pkt.Request((14, 268), [ |
||
12217 | rec( 7, 1, VolumeNumber ), |
||
12218 | rec( 8, 2, DirectoryID ), |
||
12219 | rec( 10, 2, SequenceNumber, ENC_BIG_ENDIAN ), |
||
12220 | rec( 12, 1, SearchAttributes ), |
||
12221 | rec( 13, (1,255), Path, info_str=(Path, "File Search Continue: %s", ", %s") ), |
||
12222 | ]) |
||
12223 | pkt.Reply( NO_LENGTH_CHECK, [ |
||
12224 | # |
||
12225 | # XXX - don't show this if we got back a non-zero |
||
12226 | # completion code? For example, 255 means "No |
||
12227 | # matching files or directories were found", so |
||
12228 | # presumably it can't show you a matching file or |
||
12229 | # directory instance - it appears to just leave crap |
||
12230 | # there. |
||
12231 | # |
||
12232 | srec( DirectoryInstance, req_cond="ncp.sattr_sub==TRUE"), |
||
12233 | srec( FileInstance, req_cond="ncp.sattr_sub!=TRUE"), |
||
12234 | ]) |
||
12235 | pkt.ReqCondSizeVariable() |
||
12236 | pkt.CompletionCodes([0x0000, 0xff16]) |
||
12237 | # 2222/40, 64 |
||
12238 | pkt = NCP(0x40, "Search for a File", 'file') |
||
12239 | pkt.Request((12, 266), [ |
||
12240 | rec( 7, 2, SequenceNumber, ENC_BIG_ENDIAN ), |
||
12241 | rec( 9, 1, DirHandle ), |
||
12242 | rec( 10, 1, SearchAttributes ), |
||
12243 | rec( 11, (1,255), FileName, info_str=(FileName, "Search for File: %s", ", %s") ), |
||
12244 | ]) |
||
12245 | pkt.Reply(40, [ |
||
12246 | rec( 8, 2, SequenceNumber, ENC_BIG_ENDIAN ), |
||
12247 | rec( 10, 2, Reserved2 ), |
||
12248 | rec( 12, 14, FileName14 ), |
||
12249 | rec( 26, 1, AttributesDef ), |
||
12250 | rec( 27, 1, FileExecuteType ), |
||
12251 | rec( 28, 4, FileSize ), |
||
12252 | rec( 32, 2, CreationDate, ENC_BIG_ENDIAN ), |
||
12253 | rec( 34, 2, LastAccessedDate, ENC_BIG_ENDIAN ), |
||
12254 | rec( 36, 2, ModifiedDate, ENC_BIG_ENDIAN ), |
||
12255 | rec( 38, 2, ModifiedTime, ENC_BIG_ENDIAN ), |
||
12256 | ]) |
||
12257 | pkt.CompletionCodes([0x0000, 0x8900, 0x9600, 0x9804, 0x9b03, |
||
12258 | 0x9c03, 0xa100, 0xfd00, 0xff16]) |
||
12259 | # 2222/41, 65 |
||
12260 | pkt = NCP(0x41, "Open File", 'file') |
||
12261 | pkt.Request((10, 264), [ |
||
12262 | rec( 7, 1, DirHandle ), |
||
12263 | rec( 8, 1, SearchAttributes ), |
||
12264 | rec( 9, (1,255), FileName, info_str=(FileName, "Open File: %s", ", %s") ), |
||
12265 | ]) |
||
12266 | pkt.Reply(44, [ |
||
12267 | rec( 8, 6, FileHandle ), |
||
12268 | rec( 14, 2, Reserved2 ), |
||
12269 | rec( 16, 14, FileName14 ), |
||
12270 | rec( 30, 1, AttributesDef ), |
||
12271 | rec( 31, 1, FileExecuteType ), |
||
12272 | rec( 32, 4, FileSize, ENC_BIG_ENDIAN ), |
||
12273 | rec( 36, 2, CreationDate, ENC_BIG_ENDIAN ), |
||
12274 | rec( 38, 2, LastAccessedDate, ENC_BIG_ENDIAN ), |
||
12275 | rec( 40, 2, ModifiedDate, ENC_BIG_ENDIAN ), |
||
12276 | rec( 42, 2, ModifiedTime, ENC_BIG_ENDIAN ), |
||
12277 | ]) |
||
12278 | pkt.CompletionCodes([0x0000, 0x8000, 0x8101, 0x8200, 0x9400, |
||
12279 | 0x9600, 0x9804, 0x9c03, 0xa100, 0xfd00, |
||
12280 | 0xff16]) |
||
12281 | # 2222/42, 66 |
||
12282 | pkt = NCP(0x42, "Close File", 'file') |
||
12283 | pkt.Request(14, [ |
||
12284 | rec( 7, 1, Reserved ), |
||
12285 | rec( 8, 6, FileHandle, info_str=(FileHandle, "Close File - 0x%s", ", %s") ), |
||
12286 | ]) |
||
12287 | pkt.Reply(8) |
||
12288 | pkt.CompletionCodes([0x0000, 0x8800, 0xff1a]) |
||
12289 | pkt.MakeExpert("ncp42_request") |
||
12290 | # 2222/43, 67 |
||
12291 | pkt = NCP(0x43, "Create File", 'file') |
||
12292 | pkt.Request((10, 264), [ |
||
12293 | rec( 7, 1, DirHandle ), |
||
12294 | rec( 8, 1, AttributesDef ), |
||
12295 | rec( 9, (1,255), FileName, info_str=(FileName, "Create File: %s", ", %s") ), |
||
12296 | ]) |
||
12297 | pkt.Reply(44, [ |
||
12298 | rec( 8, 6, FileHandle ), |
||
12299 | rec( 14, 2, Reserved2 ), |
||
12300 | rec( 16, 14, FileName14 ), |
||
12301 | rec( 30, 1, AttributesDef ), |
||
12302 | rec( 31, 1, FileExecuteType ), |
||
12303 | rec( 32, 4, FileSize, ENC_BIG_ENDIAN ), |
||
12304 | rec( 36, 2, CreationDate, ENC_BIG_ENDIAN ), |
||
12305 | rec( 38, 2, LastAccessedDate, ENC_BIG_ENDIAN ), |
||
12306 | rec( 40, 2, ModifiedDate, ENC_BIG_ENDIAN ), |
||
12307 | rec( 42, 2, ModifiedTime, ENC_BIG_ENDIAN ), |
||
12308 | ]) |
||
12309 | pkt.CompletionCodes([0x0000, 0x8000, 0x8101, 0x8401, 0x8501, |
||
12310 | 0x8701, 0x8d00, 0x8f00, 0x9001, 0x9600, |
||
12311 | 0x9804, 0x9900, 0x9b03, 0x9c03, 0xfd00, |
||
12312 | 0xff00]) |
||
12313 | # 2222/44, 68 |
||
12314 | pkt = NCP(0x44, "Erase File", 'file') |
||
12315 | pkt.Request((10, 264), [ |
||
12316 | rec( 7, 1, DirHandle ), |
||
12317 | rec( 8, 1, SearchAttributes ), |
||
12318 | rec( 9, (1,255), FileName, info_str=(FileName, "Erase File: %s", ", %s") ), |
||
12319 | ]) |
||
12320 | pkt.Reply(8) |
||
12321 | pkt.CompletionCodes([0x0000, 0x8a00, 0x8d00, 0x8e00, 0x8f00, |
||
12322 | 0x9001, 0x9600, 0x9804, 0x9b03, 0x9c03, |
||
12323 | 0xa100, 0xfd00, 0xff00]) |
||
12324 | # 2222/45, 69 |
||
12325 | pkt = NCP(0x45, "Rename File", 'file') |
||
12326 | pkt.Request((12, 520), [ |
||
12327 | rec( 7, 1, DirHandle ), |
||
12328 | rec( 8, 1, SearchAttributes ), |
||
12329 | rec( 9, (1,255), FileName, info_str=(FileName, "Rename File: %s", ", %s") ), |
||
12330 | rec( -1, 1, TargetDirHandle ), |
||
12331 | rec( -1, (1, 255), NewFileNameLen ), |
||
12332 | ]) |
||
12333 | pkt.Reply(8) |
||
12334 | pkt.CompletionCodes([0x0000, 0x8701, 0x8b00, 0x8d00, 0x8e00, |
||
12335 | 0x8f00, 0x9001, 0x9101, 0x9201, 0x9600, |
||
12336 | 0x9804, 0x9a00, 0x9b03, 0x9c03, 0xa100, |
||
12337 | 0xfd00, 0xff16]) |
||
12338 | # 2222/46, 70 |
||
12339 | pkt = NCP(0x46, "Set File Attributes", 'file') |
||
12340 | pkt.Request((11, 265), [ |
||
12341 | rec( 7, 1, AttributesDef ), |
||
12342 | rec( 8, 1, DirHandle ), |
||
12343 | rec( 9, 1, SearchAttributes ), |
||
12344 | rec( 10, (1,255), FileName, info_str=(FileName, "Set File Attributes: %s", ", %s") ), |
||
12345 | ]) |
||
12346 | pkt.Reply(8) |
||
12347 | pkt.CompletionCodes([0x0000, 0x8c00, 0x8d00, 0x8e00, 0x9600, |
||
12348 | 0x9804, 0x9b03, 0x9c03, 0xa100, 0xfd00, |
||
12349 | 0xff16]) |
||
12350 | # 2222/47, 71 |
||
12351 | pkt = NCP(0x47, "Get Current Size of File", 'file') |
||
12352 | pkt.Request(14, [ |
||
12353 | rec(7, 1, Reserved ), |
||
12354 | rec( 8, 6, FileHandle, info_str=(FileHandle, "Get Current Size of File - 0x%s", ", %s") ), |
||
12355 | ]) |
||
12356 | pkt.Reply(12, [ |
||
12357 | rec( 8, 4, FileSize, ENC_BIG_ENDIAN ), |
||
12358 | ]) |
||
12359 | pkt.CompletionCodes([0x0000, 0x8800]) |
||
12360 | # 2222/48, 72 |
||
12361 | pkt = NCP(0x48, "Read From A File", 'file') |
||
12362 | pkt.Request(20, [ |
||
12363 | rec( 7, 1, Reserved ), |
||
12364 | rec( 8, 6, FileHandle, info_str=(FileHandle, "Read From File - 0x%s", ", %s") ), |
||
12365 | rec( 14, 4, FileOffset, ENC_BIG_ENDIAN ), |
||
12366 | rec( 18, 2, MaxBytes, ENC_BIG_ENDIAN ), |
||
12367 | ]) |
||
12368 | pkt.Reply(10, [ |
||
12369 | rec( 8, 2, NumBytes, ENC_BIG_ENDIAN ), |
||
12370 | ]) |
||
12371 | pkt.CompletionCodes([0x0000, 0x8300, 0x8800, 0x9300, 0xff1b]) |
||
12372 | # 2222/49, 73 |
||
12373 | pkt = NCP(0x49, "Write to a File", 'file') |
||
12374 | pkt.Request(20, [ |
||
12375 | rec( 7, 1, Reserved ), |
||
12376 | rec( 8, 6, FileHandle, info_str=(FileHandle, "Write to a File - 0x%s", ", %s") ), |
||
12377 | rec( 14, 4, FileOffset, ENC_BIG_ENDIAN ), |
||
12378 | rec( 18, 2, MaxBytes, ENC_BIG_ENDIAN ), |
||
12379 | ]) |
||
12380 | pkt.Reply(8) |
||
12381 | pkt.CompletionCodes([0x0000, 0x0104, 0x8300, 0x8800, 0x9400, 0x9500, 0xa201, 0xff1b]) |
||
12382 | # 2222/4A, 74 |
||
12383 | pkt = NCP(0x4A, "Copy from One File to Another", 'file') |
||
12384 | pkt.Request(30, [ |
||
12385 | rec( 7, 1, Reserved ), |
||
12386 | rec( 8, 6, FileHandle ), |
||
12387 | rec( 14, 6, TargetFileHandle ), |
||
12388 | rec( 20, 4, FileOffset, ENC_BIG_ENDIAN ), |
||
12389 | rec( 24, 4, TargetFileOffset, ENC_BIG_ENDIAN ), |
||
12390 | rec( 28, 2, BytesToCopy, ENC_BIG_ENDIAN ), |
||
12391 | ]) |
||
12392 | pkt.Reply(12, [ |
||
12393 | rec( 8, 4, BytesActuallyTransferred, ENC_BIG_ENDIAN ), |
||
12394 | ]) |
||
12395 | pkt.CompletionCodes([0x0000, 0x0104, 0x8300, 0x8800, 0x9300, 0x9400, |
||
12396 | 0x9500, 0x9600, 0xa201, 0xff1b]) |
||
12397 | # 2222/4B, 75 |
||
12398 | pkt = NCP(0x4B, "Set File Time Date Stamp", 'file') |
||
12399 | pkt.Request(18, [ |
||
12400 | rec( 7, 1, Reserved ), |
||
12401 | rec( 8, 6, FileHandle, info_str=(FileHandle, "Set Time and Date Stamp for File - 0x%s", ", %s") ), |
||
12402 | rec( 14, 2, FileTime, ENC_BIG_ENDIAN ), |
||
12403 | rec( 16, 2, FileDate, ENC_BIG_ENDIAN ), |
||
12404 | ]) |
||
12405 | pkt.Reply(8) |
||
12406 | pkt.CompletionCodes([0x0000, 0x8800, 0x9400, 0x9600, 0xfb08]) |
||
12407 | # 2222/4C, 76 |
||
12408 | pkt = NCP(0x4C, "Open File", 'file') |
||
12409 | pkt.Request((11, 265), [ |
||
12410 | rec( 7, 1, DirHandle ), |
||
12411 | rec( 8, 1, SearchAttributes ), |
||
12412 | rec( 9, 1, AccessRightsMask ), |
||
12413 | rec( 10, (1,255), FileName, info_str=(FileName, "Open File: %s", ", %s") ), |
||
12414 | ]) |
||
12415 | pkt.Reply(44, [ |
||
12416 | rec( 8, 6, FileHandle ), |
||
12417 | rec( 14, 2, Reserved2 ), |
||
12418 | rec( 16, 14, FileName14 ), |
||
12419 | rec( 30, 1, AttributesDef ), |
||
12420 | rec( 31, 1, FileExecuteType ), |
||
12421 | rec( 32, 4, FileSize, ENC_BIG_ENDIAN ), |
||
12422 | rec( 36, 2, CreationDate, ENC_BIG_ENDIAN ), |
||
12423 | rec( 38, 2, LastAccessedDate, ENC_BIG_ENDIAN ), |
||
12424 | rec( 40, 2, ModifiedDate, ENC_BIG_ENDIAN ), |
||
12425 | rec( 42, 2, ModifiedTime, ENC_BIG_ENDIAN ), |
||
12426 | ]) |
||
12427 | pkt.CompletionCodes([0x0000, 0x8000, 0x8101, 0x8200, 0x9400, |
||
12428 | 0x9600, 0x9804, 0x9c03, 0xa100, 0xfd00, |
||
12429 | 0xff16]) |
||
12430 | # 2222/4D, 77 |
||
12431 | pkt = NCP(0x4D, "Create File", 'file') |
||
12432 | pkt.Request((10, 264), [ |
||
12433 | rec( 7, 1, DirHandle ), |
||
12434 | rec( 8, 1, AttributesDef ), |
||
12435 | rec( 9, (1,255), FileName, info_str=(FileName, "Create File: %s", ", %s") ), |
||
12436 | ]) |
||
12437 | pkt.Reply(44, [ |
||
12438 | rec( 8, 6, FileHandle ), |
||
12439 | rec( 14, 2, Reserved2 ), |
||
12440 | rec( 16, 14, FileName14 ), |
||
12441 | rec( 30, 1, AttributesDef ), |
||
12442 | rec( 31, 1, FileExecuteType ), |
||
12443 | rec( 32, 4, FileSize, ENC_BIG_ENDIAN ), |
||
12444 | rec( 36, 2, CreationDate, ENC_BIG_ENDIAN ), |
||
12445 | rec( 38, 2, LastAccessedDate, ENC_BIG_ENDIAN ), |
||
12446 | rec( 40, 2, ModifiedDate, ENC_BIG_ENDIAN ), |
||
12447 | rec( 42, 2, ModifiedTime, ENC_BIG_ENDIAN ), |
||
12448 | ]) |
||
12449 | pkt.CompletionCodes([0x0000, 0x8000, 0x8101, 0x8401, 0x8501, |
||
12450 | 0x8701, 0x8d00, 0x8f00, 0x9001, 0x9600, |
||
12451 | 0x9804, 0x9900, 0x9b03, 0x9c03, 0xfd00, |
||
12452 | 0xff00]) |
||
12453 | # 2222/4F, 79 |
||
12454 | pkt = NCP(0x4F, "Set File Extended Attributes", 'file') |
||
12455 | pkt.Request((11, 265), [ |
||
12456 | rec( 7, 1, AttributesDef ), |
||
12457 | rec( 8, 1, DirHandle ), |
||
12458 | rec( 9, 1, AccessRightsMask ), |
||
12459 | rec( 10, (1,255), FileName, info_str=(FileName, "Set File Extended Attributes: %s", ", %s") ), |
||
12460 | ]) |
||
12461 | pkt.Reply(8) |
||
12462 | pkt.CompletionCodes([0x0000, 0x8c00, 0x8d00, 0x8e00, 0x9600, |
||
12463 | 0x9804, 0x9b03, 0x9c03, 0xa100, 0xfd00, |
||
12464 | 0xff16]) |
||
12465 | # 2222/54, 84 |
||
12466 | pkt = NCP(0x54, "Open/Create File", 'file') |
||
12467 | pkt.Request((12, 266), [ |
||
12468 | rec( 7, 1, DirHandle ), |
||
12469 | rec( 8, 1, AttributesDef ), |
||
12470 | rec( 9, 1, AccessRightsMask ), |
||
12471 | rec( 10, 1, ActionFlag ), |
||
12472 | rec( 11, (1,255), FileName, info_str=(FileName, "Open/Create File: %s", ", %s") ), |
||
12473 | ]) |
||
12474 | pkt.Reply(44, [ |
||
12475 | rec( 8, 6, FileHandle ), |
||
12476 | rec( 14, 2, Reserved2 ), |
||
12477 | rec( 16, 14, FileName14 ), |
||
12478 | rec( 30, 1, AttributesDef ), |
||
12479 | rec( 31, 1, FileExecuteType ), |
||
12480 | rec( 32, 4, FileSize, ENC_BIG_ENDIAN ), |
||
12481 | rec( 36, 2, CreationDate, ENC_BIG_ENDIAN ), |
||
12482 | rec( 38, 2, LastAccessedDate, ENC_BIG_ENDIAN ), |
||
12483 | rec( 40, 2, ModifiedDate, ENC_BIG_ENDIAN ), |
||
12484 | rec( 42, 2, ModifiedTime, ENC_BIG_ENDIAN ), |
||
12485 | ]) |
||
12486 | pkt.CompletionCodes([0x0000, 0x8000, 0x8101, 0x8401, 0x8501, |
||
12487 | 0x8701, 0x8d00, 0x8f00, 0x9001, 0x9600, |
||
12488 | 0x9804, 0x9b03, 0x9c03, 0xfd00, 0xff16]) |
||
12489 | # 2222/55, 85 |
||
12490 | pkt = NCP(0x55, "Get Sparse File Data Block Bit Map", 'file', has_length=1) |
||
12491 | pkt.Request(19, [ |
||
12492 | rec( 7, 2, SubFuncStrucLen, ENC_BIG_ENDIAN ), |
||
12493 | rec( 9, 6, FileHandle, info_str=(FileHandle, "Get Sparse File Data Block Bitmap for File - 0x%s", ", %s") ), |
||
12494 | rec( 15, 4, FileOffset ), |
||
12495 | ]) |
||
12496 | pkt.Reply(528, [ |
||
12497 | rec( 8, 4, AllocationBlockSize ), |
||
12498 | rec( 12, 4, Reserved4 ), |
||
12499 | rec( 16, 512, BitMap ), |
||
12500 | ]) |
||
12501 | pkt.CompletionCodes([0x0000, 0x8800]) |
||
12502 | # 2222/5601, 86/01 |
||
12503 | pkt = NCP(0x5601, "Close Extended Attribute Handle", 'extended', has_length=0 ) |
||
12504 | pkt.Request(14, [ |
||
12505 | rec( 8, 2, Reserved2 ), |
||
12506 | rec( 10, 4, EAHandle ), |
||
12507 | ]) |
||
12508 | pkt.Reply(8) |
||
12509 | pkt.CompletionCodes([0x0000, 0xcf00, 0xd301]) |
||
12510 | # 2222/5602, 86/02 |
||
12511 | pkt = NCP(0x5602, "Write Extended Attribute", 'extended', has_length=0 ) |
||
12512 | pkt.Request((35,97), [ |
||
12513 | rec( 8, 2, EAFlags ), |
||
12514 | rec( 10, 4, EAHandleOrNetWareHandleOrVolume, ENC_BIG_ENDIAN ), |
||
12515 | rec( 14, 4, ReservedOrDirectoryNumber ), |
||
12516 | rec( 18, 4, TtlWriteDataSize ), |
||
12517 | rec( 22, 4, FileOffset ), |
||
12518 | rec( 26, 4, EAAccessFlag ), |
||
12519 | rec( 30, 2, EAValueLength, var='x' ), |
||
12520 | rec( 32, (2,64), EAKey, info_str=(EAKey, "Write Extended Attribute: %s", ", %s") ), |
||
12521 | rec( -1, 1, EAValueRep, repeat='x' ), |
||
12522 | ]) |
||
12523 | pkt.Reply(20, [ |
||
12524 | rec( 8, 4, EAErrorCodes ), |
||
12525 | rec( 12, 4, EABytesWritten ), |
||
12526 | rec( 16, 4, NewEAHandle ), |
||
12527 | ]) |
||
12528 | pkt.CompletionCodes([0x0000, 0xc800, 0xc900, 0xcb00, 0xce00, 0xcf00, 0xd101, |
||
12529 | 0xd203, 0xd301, 0xd402, 0xda02, 0xdc01, 0xef00, 0xff00]) |
||
12530 | # 2222/5603, 86/03 |
||
12531 | pkt = NCP(0x5603, "Read Extended Attribute", 'extended', has_length=0 ) |
||
12532 | pkt.Request((28,538), [ |
||
12533 | rec( 8, 2, EAFlags ), |
||
12534 | rec( 10, 4, EAHandleOrNetWareHandleOrVolume ), |
||
12535 | rec( 14, 4, ReservedOrDirectoryNumber ), |
||
12536 | rec( 18, 4, FileOffset ), |
||
12537 | rec( 22, 4, InspectSize ), |
||
12538 | rec( 26, (2,512), EAKey, info_str=(EAKey, "Read Extended Attribute: %s", ", %s") ), |
||
12539 | ]) |
||
12540 | pkt.Reply((26,536), [ |
||
12541 | rec( 8, 4, EAErrorCodes ), |
||
12542 | rec( 12, 4, TtlValuesLength ), |
||
12543 | rec( 16, 4, NewEAHandle ), |
||
12544 | rec( 20, 4, EAAccessFlag ), |
||
12545 | rec( 24, (2,512), EAValue ), |
||
12546 | ]) |
||
12547 | pkt.CompletionCodes([0x0000, 0x8800, 0x9c03, 0xc900, 0xce00, 0xcf00, 0xd101, |
||
12548 | 0xd301, 0xd503]) |
||
12549 | # 2222/5604, 86/04 |
||
12550 | pkt = NCP(0x5604, "Enumerate Extended Attribute", 'extended', has_length=0 ) |
||
12551 | pkt.Request((26,536), [ |
||
12552 | rec( 8, 2, EAFlags ), |
||
12553 | rec( 10, 4, EAHandleOrNetWareHandleOrVolume ), |
||
12554 | rec( 14, 4, ReservedOrDirectoryNumber ), |
||
12555 | rec( 18, 4, InspectSize ), |
||
12556 | rec( 22, 2, SequenceNumber ), |
||
12557 | rec( 24, (2,512), EAKey, info_str=(EAKey, "Enumerate Extended Attribute: %s", ", %s") ), |
||
12558 | ]) |
||
12559 | pkt.Reply(28, [ |
||
12560 | rec( 8, 4, EAErrorCodes ), |
||
12561 | rec( 12, 4, TtlEAs ), |
||
12562 | rec( 16, 4, TtlEAsDataSize ), |
||
12563 | rec( 20, 4, TtlEAsKeySize ), |
||
12564 | rec( 24, 4, NewEAHandle ), |
||
12565 | ]) |
||
12566 | pkt.CompletionCodes([0x0000, 0x8800, 0x8c01, 0xc800, 0xc900, 0xce00, 0xcf00, 0xd101, |
||
12567 | 0xd301, 0xd503, 0xfb08, 0xff00]) |
||
12568 | # 2222/5605, 86/05 |
||
12569 | pkt = NCP(0x5605, "Duplicate Extended Attributes", 'extended', has_length=0 ) |
||
12570 | pkt.Request(28, [ |
||
12571 | rec( 8, 2, EAFlags ), |
||
12572 | rec( 10, 2, DstEAFlags ), |
||
12573 | rec( 12, 4, EAHandleOrNetWareHandleOrVolume ), |
||
12574 | rec( 16, 4, ReservedOrDirectoryNumber ), |
||
12575 | rec( 20, 4, EAHandleOrNetWareHandleOrVolume ), |
||
12576 | rec( 24, 4, ReservedOrDirectoryNumber ), |
||
12577 | ]) |
||
12578 | pkt.Reply(20, [ |
||
12579 | rec( 8, 4, EADuplicateCount ), |
||
12580 | rec( 12, 4, EADataSizeDuplicated ), |
||
12581 | rec( 16, 4, EAKeySizeDuplicated ), |
||
12582 | ]) |
||
12583 | pkt.CompletionCodes([0x0000, 0x8800, 0xd101]) |
||
12584 | # 2222/5701, 87/01 |
||
12585 | pkt = NCP(0x5701, "Open/Create File or Subdirectory", 'file', has_length=0) |
||
12586 | pkt.Request((30, 284), [ |
||
12587 | rec( 8, 1, NameSpace ), |
||
12588 | rec( 9, 1, OpenCreateMode ), |
||
12589 | rec( 10, 2, SearchAttributesLow ), |
||
12590 | rec( 12, 2, ReturnInfoMask ), |
||
12591 | rec( 14, 2, ExtendedInfo ), |
||
12592 | rec( 16, 4, AttributesDef32 ), |
||
12593 | rec( 20, 2, DesiredAccessRights ), |
||
12594 | rec( 22, 1, VolumeNumber ), |
||
12595 | rec( 23, 4, DirectoryBase ), |
||
12596 | rec( 27, 1, HandleFlag ), |
||
12597 | rec( 28, 1, PathCount, var="x" ), |
||
12598 | rec( 29, (1,255), Path, repeat="x", info_str=(Path, "Open or Create: %s", "/%s") ), |
||
12599 | ]) |
||
12600 | pkt.Reply( NO_LENGTH_CHECK, [ |
||
12601 | rec( 8, 4, FileHandle ), |
||
12602 | rec( 12, 1, OpenCreateAction ), |
||
12603 | rec( 13, 1, Reserved ), |
||
12604 | srec( DSSpaceAllocateStruct, req_cond="(ncp.ret_info_mask != 0x0000) && (ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_alloc == 1)" ), |
||
12605 | srec( PadDSSpaceAllocate, req_cond="(ncp.ret_info_mask != 0x0000) && (ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_alloc == 0)" ), |
||
12606 | srec( AttributesStruct, req_cond="(ncp.ret_info_mask != 0x0000) && (ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_attr == 1)" ), |
||
12607 | srec( PadAttributes, req_cond="(ncp.ret_info_mask != 0x0000) && (ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_attr == 0)" ), |
||
12608 | srec( DataStreamSizeStruct, req_cond="(ncp.ret_info_mask != 0x0000) && (ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_size == 1)" ), |
||
12609 | srec( PadDataStreamSize, req_cond="(ncp.ret_info_mask != 0x0000) && (ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_size == 0)" ), |
||
12610 | srec( TotalStreamSizeStruct, req_cond="(ncp.ret_info_mask != 0x0000) && (ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_tspace == 1)" ), |
||
12611 | srec( PadTotalStreamSize, req_cond="(ncp.ret_info_mask != 0x0000) && (ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_tspace == 0)" ), |
||
12612 | srec( CreationInfoStruct, req_cond="(ncp.ret_info_mask != 0x0000) && (ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_create == 1)" ), |
||
12613 | srec( PadCreationInfo, req_cond="(ncp.ret_info_mask != 0x0000) && (ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_create == 0)" ), |
||
12614 | srec( ModifyInfoStruct, req_cond="(ncp.ret_info_mask != 0x0000) && (ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_mod == 1)" ), |
||
12615 | srec( PadModifyInfo, req_cond="(ncp.ret_info_mask != 0x0000) && (ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_mod == 0)" ), |
||
12616 | srec( ArchiveInfoStruct, req_cond="(ncp.ret_info_mask != 0x0000) && (ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_arch == 1)" ), |
||
12617 | srec( PadArchiveInfo, req_cond="(ncp.ret_info_mask != 0x0000) && (ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_arch == 0)" ), |
||
12618 | srec( RightsInfoStruct, req_cond="(ncp.ret_info_mask != 0x0000) && (ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_rights == 1)" ), |
||
12619 | srec( PadRightsInfo, req_cond="(ncp.ret_info_mask != 0x0000) && (ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_rights == 0)" ), |
||
12620 | srec( DirEntryStruct, req_cond="(ncp.ret_info_mask != 0x0000) && (ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_dir == 1)" ), |
||
12621 | srec( PadDirEntry, req_cond="(ncp.ret_info_mask != 0x0000) && (ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_dir == 0)" ), |
||
12622 | srec( EAInfoStruct, req_cond="(ncp.ret_info_mask != 0x0000) && (ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_eattr == 1)" ), |
||
12623 | srec( PadEAInfo, req_cond="(ncp.ret_info_mask != 0x0000) && (ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_eattr == 0)" ), |
||
12624 | srec( NSInfoStruct, req_cond="(ncp.ret_info_mask != 0x0000) && (ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_ns == 1)" ), |
||
12625 | srec( PadNSInfo, req_cond="(ncp.ret_info_mask != 0x0000) && (ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_ns == 0)" ), |
||
12626 | srec( DSSpaceAllocateStruct, req_cond="(ncp.ext_info_newstyle == 1) && (ncp.ret_info_mask_alloc == 1)" ), |
||
12627 | srec( AttributesStruct, req_cond="(ncp.ext_info_newstyle == 1) && (ncp.ret_info_mask_attr == 1)" ), |
||
12628 | srec( DataStreamSizeStruct, req_cond="(ncp.ext_info_newstyle == 1) && (ncp.ret_info_mask_size == 1)" ), |
||
12629 | srec( TotalStreamSizeStruct, req_cond="(ncp.ext_info_newstyle == 1) && (ncp.ret_info_mask_tspace == 1)" ), |
||
12630 | srec( EAInfoStruct, req_cond="(ncp.ext_info_newstyle == 1) && (ncp.ret_info_mask_eattr == 1)" ), |
||
12631 | srec( ModifyInfoStruct, req_cond="(ncp.ext_info_newstyle == 1) && (ncp.ret_info_mask_mod == 1)" ), |
||
12632 | srec( CreationInfoStruct, req_cond="(ncp.ext_info_newstyle == 1) && (ncp.ret_info_mask_create == 1)" ), |
||
12633 | srec( ArchiveInfoStruct, req_cond="(ncp.ext_info_newstyle == 1) && (ncp.ret_info_mask_arch == 1)" ), |
||
12634 | srec( DirEntryStruct, req_cond="(ncp.ext_info_newstyle == 1) && (ncp.ret_info_mask_dir == 1)" ), |
||
12635 | srec( RightsInfoStruct, req_cond="(ncp.ext_info_newstyle == 1) && (ncp.ret_info_mask_rights == 1)" ), |
||
12636 | srec( NSInfoStruct, req_cond="(ncp.ext_info_newstyle == 1) && (ncp.ret_info_mask_ns == 1)" ), |
||
12637 | srec( ReferenceIDStruct, req_cond="ncp.ret_info_mask_id == 1" ), |
||
12638 | srec( NSAttributeStruct, req_cond="ncp.ret_info_mask_ns_attr == 1" ), |
||
12639 | rec( -1, 4, DataStreamsCount, var="x" , req_cond="ncp.ret_info_mask_actual == 1" ), |
||
12640 | srec( DStreamActual, repeat = "x" , req_cond="ncp.ret_info_mask_actual == 1" ), |
||
12641 | rec( -1, 4, DataStreamsCount, var="y", req_cond="ncp.ret_info_mask_logical == 1" ), |
||
12642 | srec( DStreamLogical, repeat="y" , req_cond="ncp.ret_info_mask_logical == 1" ), |
||
12643 | srec( LastUpdatedInSecondsStruct, req_cond="ncp.ext_info_update == 1" ), |
||
12644 | srec( DOSNameStruct, req_cond="ncp.ext_info_dos_name == 1" ), |
||
12645 | srec( FlushTimeStruct, req_cond="ncp.ext_info_flush == 1" ), |
||
12646 | srec( ParentBaseIDStruct, req_cond="ncp.ext_info_parental == 1" ), |
||
12647 | srec( MacFinderInfoStruct, req_cond="ncp.ext_info_mac_finder == 1" ), |
||
12648 | srec( SiblingCountStruct, req_cond="ncp.ext_info_sibling == 1" ), |
||
12649 | srec( EffectiveRightsStruct, req_cond="ncp.ext_info_effective == 1" ), |
||
12650 | srec( MacTimeStruct, req_cond="ncp.ext_info_mac_date == 1" ), |
||
12651 | srec( LastAccessedTimeStruct, req_cond="ncp.ext_info_access == 1" ), |
||
12652 | srec( FileNameStruct, req_cond="ncp.ret_info_mask_fname == 1" ), |
||
12653 | ]) |
||
12654 | pkt.ReqCondSizeVariable() |
||
12655 | pkt.CompletionCodes([0x0000, 0x0102, 0x7f00, 0x8001, 0x8101, 0x8401, 0x8501, |
||
12656 | 0x8701, 0x8900, 0x8d00, 0x8f00, 0x9001, 0x9400, 0x9600, |
||
12657 | 0x9804, 0x9900, 0x9b03, 0x9c03, 0xa500, 0xa802, 0xa901, 0xbf00, 0xfd00, 0xff16]) |
||
12658 | pkt.MakeExpert("file_rights") |
||
12659 | # 2222/5702, 87/02 |
||
12660 | pkt = NCP(0x5702, "Initialize Search", 'file', has_length=0) |
||
12661 | pkt.Request( (18,272), [ |
||
12662 | rec( 8, 1, NameSpace ), |
||
12663 | rec( 9, 1, Reserved ), |
||
12664 | rec( 10, 1, VolumeNumber ), |
||
12665 | rec( 11, 4, DirectoryBase ), |
||
12666 | rec( 15, 1, HandleFlag ), |
||
12667 | rec( 16, 1, PathCount, var="x" ), |
||
12668 | rec( 17, (1,255), Path, repeat="x", info_str=(Path, "Set Search Pointer to: %s", "/%s") ), |
||
12669 | ]) |
||
12670 | pkt.Reply(17, [ |
||
12671 | rec( 8, 1, VolumeNumber ), |
||
12672 | rec( 9, 4, DirectoryNumber ), |
||
12673 | rec( 13, 4, DirectoryEntryNumber ), |
||
12674 | ]) |
||
12675 | pkt.CompletionCodes([0x0000, 0x8000, 0x8101, 0x8401, 0x8501, |
||
12676 | 0x8701, 0x8d00, 0x8f00, 0x9001, 0x9600, |
||
12677 | 0x9804, 0x9b03, 0x9c03, 0xa901, 0xbf00, 0xfd00, 0xff16]) |
||
12678 | # 2222/5703, 87/03 |
||
12679 | pkt = NCP(0x5703, "Search for File or Subdirectory", 'file', has_length=0) |
||
12680 | pkt.Request((26, 280), [ |
||
12681 | rec( 8, 1, NameSpace ), |
||
12682 | rec( 9, 1, DataStream ), |
||
12683 | rec( 10, 2, SearchAttributesLow ), |
||
12684 | rec( 12, 2, ReturnInfoMask ), |
||
12685 | rec( 14, 2, ExtendedInfo ), |
||
12686 | rec( 16, 9, SeachSequenceStruct ), |
||
12687 | rec( 25, (1,255), SearchPattern, info_str=(SearchPattern, "Search for: %s", "/%s") ), |
||
12688 | ]) |
||
12689 | pkt.Reply( NO_LENGTH_CHECK, [ |
||
12690 | rec( 8, 9, SeachSequenceStruct ), |
||
12691 | rec( 17, 1, Reserved ), |
||
12692 | srec( DSSpaceAllocateStruct, req_cond="(ncp.ret_info_mask != 0x0000) && (ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_alloc == 1)" ), |
||
12693 | srec( PadDSSpaceAllocate, req_cond="(ncp.ret_info_mask != 0x0000) && (ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_alloc == 0)" ), |
||
12694 | srec( AttributesStruct, req_cond="(ncp.ret_info_mask != 0x0000) && (ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_attr == 1)" ), |
||
12695 | srec( PadAttributes, req_cond="(ncp.ret_info_mask != 0x0000) && (ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_attr == 0)" ), |
||
12696 | srec( DataStreamSizeStruct, req_cond="(ncp.ret_info_mask != 0x0000) && (ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_size == 1)" ), |
||
12697 | srec( PadDataStreamSize, req_cond="(ncp.ret_info_mask != 0x0000) && (ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_size == 0)" ), |
||
12698 | srec( TotalStreamSizeStruct, req_cond="(ncp.ret_info_mask != 0x0000) && (ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_tspace == 1)" ), |
||
12699 | srec( PadTotalStreamSize, req_cond="(ncp.ret_info_mask != 0x0000) && (ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_tspace == 0)" ), |
||
12700 | srec( CreationInfoStruct, req_cond="(ncp.ret_info_mask != 0x0000) && (ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_create == 1)" ), |
||
12701 | srec( PadCreationInfo, req_cond="(ncp.ret_info_mask != 0x0000) && (ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_create == 0)" ), |
||
12702 | srec( ModifyInfoStruct, req_cond="(ncp.ret_info_mask != 0x0000) && (ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_mod == 1)" ), |
||
12703 | srec( PadModifyInfo, req_cond="(ncp.ret_info_mask != 0x0000) && (ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_mod == 0)" ), |
||
12704 | srec( ArchiveInfoStruct, req_cond="(ncp.ret_info_mask != 0x0000) && (ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_arch == 1)" ), |
||
12705 | srec( PadArchiveInfo, req_cond="(ncp.ret_info_mask != 0x0000) && (ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_arch == 0)" ), |
||
12706 | srec( RightsInfoStruct, req_cond="(ncp.ret_info_mask != 0x0000) && (ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_rights == 1)" ), |
||
12707 | srec( PadRightsInfo, req_cond="(ncp.ret_info_mask != 0x0000) && (ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_rights == 0)" ), |
||
12708 | srec( DirEntryStruct, req_cond="(ncp.ret_info_mask != 0x0000) && (ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_dir == 1)" ), |
||
12709 | srec( PadDirEntry, req_cond="(ncp.ret_info_mask != 0x0000) && (ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_dir == 0)" ), |
||
12710 | srec( EAInfoStruct, req_cond="(ncp.ret_info_mask != 0x0000) && (ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_eattr == 1)" ), |
||
12711 | srec( PadEAInfo, req_cond="(ncp.ret_info_mask != 0x0000) && (ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_eattr == 0)" ), |
||
12712 | srec( NSInfoStruct, req_cond="(ncp.ret_info_mask != 0x0000) && (ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_ns == 1)" ), |
||
12713 | srec( PadNSInfo, req_cond="(ncp.ret_info_mask != 0x0000) && (ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_ns == 0)" ), |
||
12714 | srec( DSSpaceAllocateStruct, req_cond="(ncp.ext_info_newstyle == 1) && (ncp.ret_info_mask_alloc == 1)" ), |
||
12715 | srec( AttributesStruct, req_cond="(ncp.ext_info_newstyle == 1) && (ncp.ret_info_mask_attr == 1)" ), |
||
12716 | srec( DataStreamSizeStruct, req_cond="(ncp.ext_info_newstyle == 1) && (ncp.ret_info_mask_size == 1)" ), |
||
12717 | srec( EAInfoStruct, req_cond="(ncp.ext_info_newstyle == 1) && (ncp.ret_info_mask_eattr == 1)" ), |
||
12718 | srec( ModifyInfoStruct, req_cond="(ncp.ext_info_newstyle == 1) && (ncp.ret_info_mask_mod == 1)" ), |
||
12719 | srec( CreationInfoStruct, req_cond="(ncp.ext_info_newstyle == 1) && (ncp.ret_info_mask_create == 1)" ), |
||
12720 | srec( ArchiveInfoStruct, req_cond="(ncp.ext_info_newstyle == 1) && (ncp.ret_info_mask_arch == 1)" ), |
||
12721 | srec( DirEntryStruct, req_cond="(ncp.ext_info_newstyle == 1) && (ncp.ret_info_mask_dir == 1)" ), |
||
12722 | srec( RightsInfoStruct, req_cond="(ncp.ext_info_newstyle == 1) && (ncp.ret_info_mask_rights == 1)" ), |
||
12723 | srec( NSInfoStruct, req_cond="(ncp.ext_info_newstyle == 1) && (ncp.ret_info_mask_ns == 1)" ), |
||
12724 | srec( ReferenceIDStruct, req_cond="ncp.ret_info_mask_id == 1" ), |
||
12725 | srec( NSAttributeStruct, req_cond="ncp.ret_info_mask_ns_attr == 1" ), |
||
12726 | srec( DStreamActual, req_cond="ncp.ret_info_mask_actual == 1" ), |
||
12727 | srec( DStreamLogical, req_cond="ncp.ret_info_mask_logical == 1" ), |
||
12728 | srec( LastUpdatedInSecondsStruct, req_cond="ncp.ext_info_update == 1" ), |
||
12729 | srec( DOSNameStruct, req_cond="ncp.ext_info_dos_name == 1" ), |
||
12730 | srec( FlushTimeStruct, req_cond="ncp.ext_info_flush == 1" ), |
||
12731 | srec( ParentBaseIDStruct, req_cond="ncp.ext_info_parental == 1" ), |
||
12732 | srec( MacFinderInfoStruct, req_cond="ncp.ext_info_mac_finder == 1" ), |
||
12733 | srec( SiblingCountStruct, req_cond="ncp.ext_info_sibling == 1" ), |
||
12734 | srec( EffectiveRightsStruct, req_cond="ncp.ext_info_effective == 1" ), |
||
12735 | srec( MacTimeStruct, req_cond="ncp.ext_info_mac_date == 1" ), |
||
12736 | srec( LastAccessedTimeStruct, req_cond="ncp.ext_info_access == 1" ), |
||
12737 | srec( FileNameStruct, req_cond="ncp.ret_info_mask_fname == 1" ), |
||
12738 | ]) |
||
12739 | pkt.ReqCondSizeVariable() |
||
12740 | pkt.CompletionCodes([0x0000, 0x8000, 0x8101, 0x8401, 0x8501, |
||
12741 | 0x8701, 0x8d00, 0x8f00, 0x9001, 0x9600, |
||
12742 | 0x9804, 0x9b03, 0x9c03, 0xa901, 0xbf00, 0xfd00, 0xff16]) |
||
12743 | # 2222/5704, 87/04 |
||
12744 | pkt = NCP(0x5704, "Rename Or Move a File or Subdirectory", 'file', has_length=0) |
||
12745 | pkt.Request((28, 536), [ |
||
12746 | rec( 8, 1, NameSpace ), |
||
12747 | rec( 9, 1, RenameFlag ), |
||
12748 | rec( 10, 2, SearchAttributesLow ), |
||
12749 | rec( 12, 1, VolumeNumber ), |
||
12750 | rec( 13, 4, DirectoryBase ), |
||
12751 | rec( 17, 1, HandleFlag ), |
||
12752 | rec( 18, 1, PathCount, var="x" ), |
||
12753 | rec( 19, 1, VolumeNumber ), |
||
12754 | rec( 20, 4, DirectoryBase ), |
||
12755 | rec( 24, 1, HandleFlag ), |
||
12756 | rec( 25, 1, PathCount, var="y" ), |
||
12757 | rec( 26, (1, 255), Path, repeat="x", info_str=(Path, "Rename or Move: %s", "/%s") ), |
||
12758 | rec( -1, (1,255), DestPath, repeat="y" ), |
||
12759 | ]) |
||
12760 | pkt.Reply(8) |
||
12761 | pkt.CompletionCodes([0x0000, 0x0102, 0x8000, 0x8101, 0x8401, 0x8501, |
||
12762 | 0x8701, 0x8d00, 0x8e00, 0x8f00, 0x9001, 0x9100, 0x9200, 0x9600, |
||
12763 | 0x9804, 0x9a00, 0x9b03, 0x9c03, 0x9e00, 0xa901, 0xbf00, 0xfd00, 0xff16]) |
||
12764 | # 2222/5705, 87/05 |
||
12765 | pkt = NCP(0x5705, "Scan File or Subdirectory for Trustees", 'file', has_length=0) |
||
12766 | pkt.Request((24, 278), [ |
||
12767 | rec( 8, 1, NameSpace ), |
||
12768 | rec( 9, 1, Reserved ), |
||
12769 | rec( 10, 2, SearchAttributesLow ), |
||
12770 | rec( 12, 4, SequenceNumber ), |
||
12771 | rec( 16, 1, VolumeNumber ), |
||
12772 | rec( 17, 4, DirectoryBase ), |
||
12773 | rec( 21, 1, HandleFlag ), |
||
12774 | rec( 22, 1, PathCount, var="x" ), |
||
12775 | rec( 23, (1, 255), Path, repeat="x", info_str=(Path, "Scan Trustees for: %s", "/%s") ), |
||
12776 | ]) |
||
12777 | pkt.Reply(20, [ |
||
12778 | rec( 8, 4, SequenceNumber ), |
||
12779 | rec( 12, 2, ObjectIDCount, var="x" ), |
||
12780 | rec( 14, 6, TrusteeStruct, repeat="x" ), |
||
12781 | ]) |
||
12782 | pkt.CompletionCodes([0x0000, 0x8000, 0x8101, 0x8401, 0x8501, |
||
12783 | 0x8701, 0x8d00, 0x8f00, 0x9001, 0x9600, |
||
12784 | 0x9804, 0x9b03, 0x9c04, 0xa901, 0xbf00, 0xfd00, 0xff16]) |
||
12785 | # 2222/5706, 87/06 |
||
12786 | pkt = NCP(0x5706, "Obtain File or SubDirectory Information", 'file', has_length=0) |
||
12787 | pkt.Request((24,278), [ |
||
12788 | rec( 10, 1, SrcNameSpace ), |
||
12789 | rec( 11, 1, DestNameSpace ), |
||
12790 | rec( 12, 2, SearchAttributesLow ), |
||
12791 | rec( 14, 2, ReturnInfoMask, ENC_LITTLE_ENDIAN ), |
||
12792 | rec( 16, 2, ExtendedInfo ), |
||
12793 | rec( 18, 1, VolumeNumber ), |
||
12794 | rec( 19, 4, DirectoryBase ), |
||
12795 | rec( 23, 1, HandleFlag ), |
||
12796 | rec( 24, 1, PathCount, var="x" ), |
||
12797 | rec( 25, (1,255), Path, repeat="x", info_str=(Path, "Obtain Info for: %s", "/%s")), |
||
12798 | ]) |
||
12799 | pkt.Reply(NO_LENGTH_CHECK, [ |
||
12800 | srec( DSSpaceAllocateStruct, req_cond="(ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_alloc == 1)" ), |
||
12801 | srec( PadDSSpaceAllocate, req_cond="(ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_alloc == 0)" ), |
||
12802 | srec( AttributesStruct, req_cond="(ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_attr == 1)" ), |
||
12803 | srec( PadAttributes, req_cond="(ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_attr == 0)" ), |
||
12804 | srec( DataStreamSizeStruct, req_cond="(ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_size == 1)" ), |
||
12805 | srec( PadDataStreamSize, req_cond="(ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_size == 0)" ), |
||
12806 | srec( TotalStreamSizeStruct, req_cond="(ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_tspace == 1)" ), |
||
12807 | srec( PadTotalStreamSize, req_cond="(ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_tspace == 0)" ), |
||
12808 | srec( CreationInfoStruct, req_cond="(ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_create == 1)" ), |
||
12809 | srec( PadCreationInfo, req_cond="(ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_create == 0)" ), |
||
12810 | srec( ModifyInfoStruct, req_cond="(ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_mod == 1)" ), |
||
12811 | srec( PadModifyInfo, req_cond="(ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_mod == 0)" ), |
||
12812 | srec( ArchiveInfoStruct, req_cond="(ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_arch == 1)" ), |
||
12813 | srec( PadArchiveInfo, req_cond="(ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_arch == 0)" ), |
||
12814 | srec( RightsInfoStruct, req_cond="(ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_rights == 1)" ), |
||
12815 | srec( PadRightsInfo, req_cond="(ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_rights == 0)" ), |
||
12816 | srec( DirEntryStruct, req_cond="(ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_dir == 1)" ), |
||
12817 | srec( PadDirEntry, req_cond="(ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_dir == 0)" ), |
||
12818 | srec( EAInfoStruct, req_cond="(ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_eattr == 1)" ), |
||
12819 | srec( PadEAInfo, req_cond="(ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_eattr == 0)" ), |
||
12820 | srec( NSInfoStruct, req_cond="(ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_ns == 1)" ), |
||
12821 | srec( PadNSInfo, req_cond="(ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_ns == 0)" ), |
||
12822 | srec( DSSpaceAllocateStruct, req_cond="(ncp.ext_info_newstyle == 1) && (ncp.ret_info_mask_alloc == 1)" ), |
||
12823 | srec( AttributesStruct, req_cond="(ncp.ext_info_newstyle == 1) && (ncp.ret_info_mask_attr == 1)" ), |
||
12824 | srec( DataStreamSizeStruct, req_cond="(ncp.ext_info_newstyle == 1) && (ncp.ret_info_mask_size == 1)" ), |
||
12825 | srec( TotalStreamSizeStruct, req_cond="(ncp.ext_info_newstyle == 1) && (ncp.ret_info_mask_tspace == 1)" ), |
||
12826 | srec( EAInfoStruct, req_cond="(ncp.ext_info_newstyle == 1) && (ncp.ret_info_mask_eattr == 1)" ), |
||
12827 | srec( ArchiveInfoStruct, req_cond="(ncp.ext_info_newstyle == 1) && (ncp.ret_info_mask_arch == 1)" ), |
||
12828 | srec( ModifyInfoStruct, req_cond="(ncp.ext_info_newstyle == 1) && (ncp.ret_info_mask_mod == 1)" ), |
||
12829 | srec( CreationInfoStruct, req_cond="(ncp.ext_info_newstyle == 1) && (ncp.ret_info_mask_create == 1)" ), |
||
12830 | srec( NSInfoStruct, req_cond="(ncp.ext_info_newstyle == 1) && (ncp.ret_info_mask_ns == 1)" ), |
||
12831 | srec( DirEntryStruct, req_cond="(ncp.ext_info_newstyle == 1) && (ncp.ret_info_mask_dir == 1)" ), |
||
12832 | srec( RightsInfoStruct, req_cond="(ncp.ext_info_newstyle == 1) && (ncp.ret_info_mask_rights == 1)" ), |
||
12833 | srec( ReferenceIDStruct, req_cond="ncp.ret_info_mask_id == 1" ), |
||
12834 | srec( NSAttributeStruct, req_cond="ncp.ret_info_mask_ns_attr == 1" ), |
||
12835 | rec( -1, 4, DataStreamsCount, var="x" , req_cond="ncp.ret_info_mask_actual == 1" ), |
||
12836 | srec( DStreamActual, repeat = "x" , req_cond="ncp.ret_info_mask_actual == 1" ), |
||
12837 | rec( -1, 4, DataStreamsCount, var="y", req_cond="ncp.ret_info_mask_logical == 1" ), |
||
12838 | srec( DStreamLogical, repeat="y" , req_cond="ncp.ret_info_mask_logical == 1" ), |
||
12839 | srec( LastUpdatedInSecondsStruct, req_cond="ncp.ext_info_update == 1" ), |
||
12840 | srec( DOSNameStruct, req_cond="ncp.ext_info_dos_name == 1" ), |
||
12841 | srec( FlushTimeStruct, req_cond="ncp.ext_info_flush == 1" ), |
||
12842 | srec( ParentBaseIDStruct, req_cond="ncp.ext_info_parental == 1" ), |
||
12843 | srec( MacFinderInfoStruct, req_cond="ncp.ext_info_mac_finder == 1" ), |
||
12844 | srec( SiblingCountStruct, req_cond="ncp.ext_info_sibling == 1" ), |
||
12845 | srec( EffectiveRightsStruct, req_cond="ncp.ext_info_effective == 1" ), |
||
12846 | srec( MacTimeStruct, req_cond="ncp.ext_info_mac_date == 1" ), |
||
12847 | srec( LastAccessedTimeStruct, req_cond="ncp.ext_info_access == 1" ), |
||
12848 | srec( FileSize64bitStruct, req_cond="ncp.ext_info_64_bit_fs == 1" ), |
||
12849 | srec( FileNameStruct, req_cond="ncp.ret_info_mask_fname == 1" ), |
||
12850 | ]) |
||
12851 | pkt.ReqCondSizeVariable() |
||
12852 | pkt.CompletionCodes([0x0000, 0x8000, 0x8101, 0x8401, 0x8501, |
||
12853 | 0x8700, 0x8900, 0x8d00, 0x8f00, 0x9001, 0x9600, |
||
12854 | 0x9802, 0x9b03, 0x9c03, 0xa802, 0xa901, 0xbf00, 0xfd00, 0xff16]) |
||
12855 | # 2222/5707, 87/07 |
||
12856 | pkt = NCP(0x5707, "Modify File or Subdirectory DOS Information", 'file', has_length=0) |
||
12857 | pkt.Request((62,316), [ |
||
12858 | rec( 8, 1, NameSpace ), |
||
12859 | rec( 9, 1, Reserved ), |
||
12860 | rec( 10, 2, SearchAttributesLow ), |
||
12861 | rec( 12, 2, ModifyDOSInfoMask ), |
||
12862 | rec( 14, 2, Reserved2 ), |
||
12863 | rec( 16, 2, AttributesDef16 ), |
||
12864 | rec( 18, 1, FileMode ), |
||
12865 | rec( 19, 1, FileExtendedAttributes ), |
||
12866 | rec( 20, 2, CreationDate ), |
||
12867 | rec( 22, 2, CreationTime ), |
||
12868 | rec( 24, 4, CreatorID, ENC_BIG_ENDIAN ), |
||
12869 | rec( 28, 2, ModifiedDate ), |
||
12870 | rec( 30, 2, ModifiedTime ), |
||
12871 | rec( 32, 4, ModifierID, ENC_BIG_ENDIAN ), |
||
12872 | rec( 36, 2, ArchivedDate ), |
||
12873 | rec( 38, 2, ArchivedTime ), |
||
12874 | rec( 40, 4, ArchiverID, ENC_BIG_ENDIAN ), |
||
12875 | rec( 44, 2, LastAccessedDate ), |
||
12876 | rec( 46, 2, InheritedRightsMask ), |
||
12877 | rec( 48, 2, InheritanceRevokeMask ), |
||
12878 | rec( 50, 4, MaxSpace ), |
||
12879 | rec( 54, 1, VolumeNumber ), |
||
12880 | rec( 55, 4, DirectoryBase ), |
||
12881 | rec( 59, 1, HandleFlag ), |
||
12882 | rec( 60, 1, PathCount, var="x" ), |
||
12883 | rec( 61, (1,255), Path, repeat="x", info_str=(Path, "Modify DOS Information for: %s", "/%s") ), |
||
12884 | ]) |
||
12885 | pkt.Reply(8) |
||
12886 | pkt.CompletionCodes([0x0000, 0x0102, 0x8000, 0x8101, 0x8401, 0x8501, |
||
12887 | 0x8701, 0x8c01, 0x8d00, 0x8e00, 0x8f00, 0x9001, 0x9600, |
||
12888 | 0x9804, 0x9b03, 0x9c03, 0xa901, 0xbf00, 0xfd00, 0xff16]) |
||
12889 | # 2222/5708, 87/08 |
||
12890 | pkt = NCP(0x5708, "Delete a File or Subdirectory", 'file', has_length=0) |
||
12891 | pkt.Request((20,274), [ |
||
12892 | rec( 8, 1, NameSpace ), |
||
12893 | rec( 9, 1, Reserved ), |
||
12894 | rec( 10, 2, SearchAttributesLow ), |
||
12895 | rec( 12, 1, VolumeNumber ), |
||
12896 | rec( 13, 4, DirectoryBase ), |
||
12897 | rec( 17, 1, HandleFlag ), |
||
12898 | rec( 18, 1, PathCount, var="x" ), |
||
12899 | rec( 19, (1,255), Path, repeat="x", info_str=(Path, "Delete a File or Subdirectory: %s", "/%s") ), |
||
12900 | ]) |
||
12901 | pkt.Reply(8) |
||
12902 | pkt.CompletionCodes([0x0000, 0x8000, 0x8101, 0x8401, 0x8501, |
||
12903 | 0x8701, 0x8900, 0x8a00, 0x8d00, 0x8e00, 0x8f00, 0x9001, 0x9600, |
||
12904 | 0x9804, 0x9b03, 0x9c03, 0xa901, 0xbf00, 0xfd00, 0xff16]) |
||
12905 | # 2222/5709, 87/09 |
||
12906 | pkt = NCP(0x5709, "Set Short Directory Handle", 'file', has_length=0) |
||
12907 | pkt.Request((20,274), [ |
||
12908 | rec( 8, 1, NameSpace ), |
||
12909 | rec( 9, 1, DataStream ), |
||
12910 | rec( 10, 1, DestDirHandle ), |
||
12911 | rec( 11, 1, Reserved ), |
||
12912 | rec( 12, 1, VolumeNumber ), |
||
12913 | rec( 13, 4, DirectoryBase ), |
||
12914 | rec( 17, 1, HandleFlag ), |
||
12915 | rec( 18, 1, PathCount, var="x" ), |
||
12916 | rec( 19, (1,255), Path, repeat="x", info_str=(Path, "Set Short Directory Handle to: %s", "/%s") ), |
||
12917 | ]) |
||
12918 | pkt.Reply(8) |
||
12919 | pkt.CompletionCodes([0x0000, 0x8000, 0x8101, 0x8401, 0x8501, |
||
12920 | 0x8701, 0x8d00, 0x8f00, 0x9001, 0x9600, |
||
12921 | 0x9804, 0x9b03, 0x9c03, 0xa901, 0xbf00, 0xfd00, 0xff16]) |
||
12922 | # 2222/570A, 87/10 |
||
12923 | pkt = NCP(0x570A, "Add Trustee Set to File or Subdirectory", 'file', has_length=0) |
||
12924 | pkt.Request((31,285), [ |
||
12925 | rec( 8, 1, NameSpace ), |
||
12926 | rec( 9, 1, Reserved ), |
||
12927 | rec( 10, 2, SearchAttributesLow ), |
||
12928 | rec( 12, 2, AccessRightsMaskWord ), |
||
12929 | rec( 14, 2, ObjectIDCount, var="y" ), |
||
12930 | rec( 16, 1, VolumeNumber ), |
||
12931 | rec( 17, 4, DirectoryBase ), |
||
12932 | rec( 21, 1, HandleFlag ), |
||
12933 | rec( 22, 1, PathCount, var="x" ), |
||
12934 | rec( 23, (1,255), Path, repeat="x", info_str=(Path, "Add Trustee Set to: %s", "/%s") ), |
||
12935 | rec( -1, 7, TrusteeStruct, repeat="y" ), |
||
12936 | ]) |
||
12937 | pkt.Reply(8) |
||
12938 | pkt.CompletionCodes([0x0000, 0x8000, 0x8101, 0x8401, 0x8501, |
||
12939 | 0x8701, 0x8c01, 0x8d00, 0x8f00, 0x9001, 0x9600, |
||
12940 | 0x9804, 0x9b03, 0x9c03, 0xa802, 0xa901, 0xbf00, 0xfc01, 0xfd00, 0xff16]) |
||
12941 | # 2222/570B, 87/11 |
||
12942 | pkt = NCP(0x570B, "Delete Trustee Set from File or SubDirectory", 'file', has_length=0) |
||
12943 | pkt.Request((27,281), [ |
||
12944 | rec( 8, 1, NameSpace ), |
||
12945 | rec( 9, 1, Reserved ), |
||
12946 | rec( 10, 2, ObjectIDCount, var="y" ), |
||
12947 | rec( 12, 1, VolumeNumber ), |
||
12948 | rec( 13, 4, DirectoryBase ), |
||
12949 | rec( 17, 1, HandleFlag ), |
||
12950 | rec( 18, 1, PathCount, var="x" ), |
||
12951 | rec( 19, (1,255), Path, repeat="x", info_str=(Path, "Delete Trustee Set from: %s", "/%s") ), |
||
12952 | rec( -1, 7, TrusteeStruct, repeat="y" ), |
||
12953 | ]) |
||
12954 | pkt.Reply(8) |
||
12955 | pkt.CompletionCodes([0x0000, 0x8000, 0x8101, 0x8401, 0x8501, |
||
12956 | 0x8701, 0x8c01, 0x8d00, 0x8f00, 0x9001, 0x9600, |
||
12957 | 0x9804, 0x9b03, 0x9c03, 0xbf00, 0xfd00, 0xff16]) |
||
12958 | # 2222/570C, 87/12 |
||
12959 | pkt = NCP(0x570C, "Allocate Short Directory Handle", 'file', has_length=0) |
||
12960 | pkt.Request((20,274), [ |
||
12961 | rec( 8, 1, NameSpace ), |
||
12962 | rec( 9, 1, Reserved ), |
||
12963 | rec( 10, 2, AllocateMode ), |
||
12964 | rec( 12, 1, VolumeNumber ), |
||
12965 | rec( 13, 4, DirectoryBase ), |
||
12966 | rec( 17, 1, HandleFlag ), |
||
12967 | rec( 18, 1, PathCount, var="x" ), |
||
12968 | rec( 19, (1,255), Path, repeat="x", info_str=(Path, "Allocate Short Directory Handle to: %s", "/%s") ), |
||
12969 | ]) |
||
12970 | pkt.Reply(NO_LENGTH_CHECK, [ |
||
12971 | srec( ReplyLevel2Struct, req_cond="ncp.alloc_reply_lvl2 == TRUE" ), |
||
12972 | srec( ReplyLevel1Struct, req_cond="ncp.alloc_reply_lvl2 == FALSE" ), |
||
12973 | ]) |
||
12974 | pkt.ReqCondSizeVariable() |
||
12975 | pkt.CompletionCodes([0x0000, 0x8000, 0x8101, 0x8401, 0x8501, |
||
12976 | 0x8701, 0x8900, 0x8d00, 0x8f00, 0x9001, 0x9600, |
||
12977 | 0x9804, 0x9b03, 0x9c03, 0x9d00, 0xa901, 0xbf00, 0xfd00, 0xff16]) |
||
12978 | # 2222/5710, 87/16 |
||
12979 | pkt = NCP(0x5710, "Scan Salvageable Files", 'file', has_length=0) |
||
12980 | pkt.Request((26,280), [ |
||
12981 | rec( 8, 1, NameSpace ), |
||
12982 | rec( 9, 1, DataStream ), |
||
12983 | rec( 10, 2, ReturnInfoMask ), |
||
12984 | rec( 12, 2, ExtendedInfo ), |
||
12985 | rec( 14, 4, SequenceNumber ), |
||
12986 | rec( 18, 1, VolumeNumber ), |
||
12987 | rec( 19, 4, DirectoryBase ), |
||
12988 | rec( 23, 1, HandleFlag ), |
||
12989 | rec( 24, 1, PathCount, var="x" ), |
||
12990 | rec( 25, (1,255), Path, repeat="x", info_str=(Path, "Scan for Deleted Files in: %s", "/%s") ), |
||
12991 | ]) |
||
12992 | pkt.Reply(NO_LENGTH_CHECK, [ |
||
12993 | rec( 8, 4, SequenceNumber ), |
||
12994 | rec( 12, 2, DeletedTime ), |
||
12995 | rec( 14, 2, DeletedDate ), |
||
12996 | rec( 16, 4, DeletedID, ENC_BIG_ENDIAN ), |
||
12997 | rec( 20, 4, VolumeID ), |
||
12998 | rec( 24, 4, DirectoryBase ), |
||
12999 | srec( DSSpaceAllocateStruct, req_cond="(ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_alloc == 1)" ), |
||
13000 | srec( PadDSSpaceAllocate, req_cond="(ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_alloc == 0)" ), |
||
13001 | srec( AttributesStruct, req_cond="(ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_attr == 1)" ), |
||
13002 | srec( PadAttributes, req_cond="(ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_attr == 0)" ), |
||
13003 | srec( DataStreamSizeStruct, req_cond="(ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_size == 1)" ), |
||
13004 | srec( PadDataStreamSize, req_cond="(ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_size == 0)" ), |
||
13005 | srec( TotalStreamSizeStruct, req_cond="(ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_tspace == 1)" ), |
||
13006 | srec( PadTotalStreamSize, req_cond="(ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_tspace == 0)" ), |
||
13007 | srec( CreationInfoStruct, req_cond="(ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_create == 1)" ), |
||
13008 | srec( PadCreationInfo, req_cond="(ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_create == 0)" ), |
||
13009 | srec( ModifyInfoStruct, req_cond="(ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_mod == 1)" ), |
||
13010 | srec( PadModifyInfo, req_cond="(ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_mod == 0)" ), |
||
13011 | srec( ArchiveInfoStruct, req_cond="(ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_arch == 1)" ), |
||
13012 | srec( PadArchiveInfo, req_cond="(ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_arch == 0)" ), |
||
13013 | srec( RightsInfoStruct, req_cond="(ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_rights == 1)" ), |
||
13014 | srec( PadRightsInfo, req_cond="(ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_rights == 0)" ), |
||
13015 | srec( DirEntryStruct, req_cond="(ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_dir == 1)" ), |
||
13016 | srec( PadDirEntry, req_cond="(ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_dir == 0)" ), |
||
13017 | srec( EAInfoStruct, req_cond="(ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_eattr == 1)" ), |
||
13018 | srec( PadEAInfo, req_cond="(ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_eattr == 0)" ), |
||
13019 | srec( NSInfoStruct, req_cond="(ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_ns == 1)" ), |
||
13020 | srec( PadNSInfo, req_cond="(ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_ns == 0)" ), |
||
13021 | srec( FileNameStruct, req_cond="(ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_fname == 1)" ), |
||
13022 | srec( DSSpaceAllocateStruct, req_cond="(ncp.ext_info_newstyle == 1) && (ncp.ret_info_mask_alloc == 1)" ), |
||
13023 | srec( AttributesStruct, req_cond="(ncp.ext_info_newstyle == 1) && (ncp.ret_info_mask_attr == 1)" ), |
||
13024 | srec( DataStreamSizeStruct, req_cond="(ncp.ext_info_newstyle == 1) && (ncp.ret_info_mask_size == 1)" ), |
||
13025 | srec( TotalStreamSizeStruct, req_cond="(ncp.ext_info_newstyle == 1) && (ncp.ret_info_mask_tspace == 1)" ), |
||
13026 | srec( CreationInfoStruct, req_cond="(ncp.ext_info_newstyle == 1) && (ncp.ret_info_mask_create == 1)" ), |
||
13027 | srec( ModifyInfoStruct, req_cond="(ncp.ext_info_newstyle == 1) && (ncp.ret_info_mask_mod == 1)" ), |
||
13028 | srec( ArchiveInfoStruct, req_cond="(ncp.ext_info_newstyle == 1) && (ncp.ret_info_mask_arch == 1)" ), |
||
13029 | srec( RightsInfoStruct, req_cond="(ncp.ext_info_newstyle == 1) && (ncp.ret_info_mask_rights == 1)" ), |
||
13030 | srec( DirEntryStruct, req_cond="(ncp.ext_info_newstyle == 1) && (ncp.ret_info_mask_dir == 1)" ), |
||
13031 | srec( EAInfoStruct, req_cond="(ncp.ext_info_newstyle == 1) && (ncp.ret_info_mask_eattr == 1)" ), |
||
13032 | srec( NSInfoStruct, req_cond="(ncp.ext_info_newstyle == 1) && (ncp.ret_info_mask_ns == 1)" ), |
||
13033 | srec( FileNameStruct, req_cond="(ncp.ext_info_newstyle == 1) && (ncp.ret_info_mask_fname == 1)" ), |
||
13034 | ]) |
||
13035 | pkt.ReqCondSizeVariable() |
||
13036 | pkt.CompletionCodes([0x0000, 0x8000, 0x8101, 0x8401, 0x8501, |
||
13037 | 0x8701, 0x8d00, 0x8f00, 0x9001, 0x9600, |
||
13038 | 0x9804, 0x9b03, 0x9c03, 0xbf00, 0xfd00, 0xff16]) |
||
13039 | # 2222/5711, 87/17 |
||
13040 | pkt = NCP(0x5711, "Recover Salvageable File", 'file', has_length=0) |
||
13041 | pkt.Request((23,277), [ |
||
13042 | rec( 8, 1, NameSpace ), |
||
13043 | rec( 9, 1, Reserved ), |
||
13044 | rec( 10, 4, SequenceNumber ), |
||
13045 | rec( 14, 4, VolumeID ), |
||
13046 | rec( 18, 4, DirectoryBase ), |
||
13047 | rec( 22, (1,255), FileName, info_str=(FileName, "Recover Deleted File: %s", ", %s") ), |
||
13048 | ]) |
||
13049 | pkt.Reply(8) |
||
13050 | pkt.CompletionCodes([0x0000, 0x8000, 0x8101, 0x8401, 0x8501, |
||
13051 | 0x8701, 0x8d00, 0x8f00, 0x9001, 0x9600, |
||
13052 | 0x9804, 0x9b03, 0x9c03, 0xa802, 0xbf00, 0xfe02, 0xfd00, 0xff16]) |
||
13053 | # 2222/5712, 87/18 |
||
13054 | pkt = NCP(0x5712, "Purge Salvageable Files", 'file', has_length=0) |
||
13055 | pkt.Request(22, [ |
||
13056 | rec( 8, 1, NameSpace ), |
||
13057 | rec( 9, 1, Reserved ), |
||
13058 | rec( 10, 4, SequenceNumber ), |
||
13059 | rec( 14, 4, VolumeID ), |
||
13060 | rec( 18, 4, DirectoryBase ), |
||
13061 | ]) |
||
13062 | pkt.Reply(8) |
||
13063 | pkt.CompletionCodes([0x0000, 0x010a, 0x8000, 0x8101, 0x8401, 0x8501, |
||
13064 | 0x8701, 0x8d00, 0x8f00, 0x9001, 0x9600, |
||
13065 | 0x9804, 0x9b03, 0x9c03, 0xbf00, 0xfd00, 0xff16]) |
||
13066 | # 2222/5713, 87/19 |
||
13067 | pkt = NCP(0x5713, "Get Name Space Information", 'file', has_length=0) |
||
13068 | pkt.Request(18, [ |
||
13069 | rec( 8, 1, SrcNameSpace ), |
||
13070 | rec( 9, 1, DestNameSpace ), |
||
13071 | rec( 10, 1, Reserved ), |
||
13072 | rec( 11, 1, VolumeNumber ), |
||
13073 | rec( 12, 4, DirectoryBase ), |
||
13074 | rec( 16, 2, NamesSpaceInfoMask ), |
||
13075 | ]) |
||
13076 | pkt.Reply(NO_LENGTH_CHECK, [ |
||
13077 | srec( FileNameStruct, req_cond="ncp.ns_info_mask_modify == TRUE" ), |
||
13078 | srec( FileAttributesStruct, req_cond="ncp.ns_info_mask_fatt == TRUE" ), |
||
13079 | srec( CreationDateStruct, req_cond="ncp.ns_info_mask_cdate == TRUE" ), |
||
13080 | srec( CreationTimeStruct, req_cond="ncp.ns_info_mask_ctime == TRUE" ), |
||
13081 | srec( OwnerIDStruct, req_cond="ncp.ns_info_mask_owner == TRUE" ), |
||
13082 | srec( ArchiveDateStruct, req_cond="ncp.ns_info_mask_adate == TRUE" ), |
||
13083 | srec( ArchiveTimeStruct, req_cond="ncp.ns_info_mask_atime == TRUE" ), |
||
13084 | srec( ArchiveIdStruct, req_cond="ncp.ns_info_mask_aid == TRUE" ), |
||
13085 | srec( UpdateDateStruct, req_cond="ncp.ns_info_mask_udate == TRUE" ), |
||
13086 | srec( UpdateTimeStruct, req_cond="ncp.ns_info_mask_utime == TRUE" ), |
||
13087 | srec( UpdateIDStruct, req_cond="ncp.ns_info_mask_uid == TRUE" ), |
||
13088 | srec( LastAccessStruct, req_cond="ncp.ns_info_mask_acc_date == TRUE" ), |
||
13089 | srec( RightsInfoStruct, req_cond="ncp.ns_info_mask_max_acc_mask == TRUE" ), |
||
13090 | ]) |
||
13091 | pkt.ReqCondSizeVariable() |
||
13092 | pkt.CompletionCodes([0x0000, 0x8000, 0x8101, 0x8401, 0x8501, |
||
13093 | 0x8701, 0x8d00, 0x8f00, 0x9001, 0x9600, |
||
13094 | 0x9804, 0x9b03, 0x9c03, 0xbf00, 0xfd00, 0xff16]) |
||
13095 | # 2222/5714, 87/20 |
||
13096 | pkt = NCP(0x5714, "Search for File or Subdirectory Set", 'file', has_length=0) |
||
13097 | pkt.Request((27, 27), [ |
||
13098 | rec( 8, 1, NameSpace ), |
||
13099 | rec( 9, 1, DataStream ), |
||
13100 | rec( 10, 2, SearchAttributesLow ), |
||
13101 | rec( 12, 2, ReturnInfoMask ), |
||
13102 | rec( 14, 2, ExtendedInfo ), |
||
13103 | rec( 16, 2, ReturnInfoCount ), |
||
13104 | rec( 18, 9, SeachSequenceStruct ), |
||
13105 | # rec( 27, (1,255), SearchPattern ), |
||
13106 | ]) |
||
13107 | # The reply packet is dissected in packet-ncp2222.inc |
||
13108 | pkt.Reply(NO_LENGTH_CHECK, [ |
||
13109 | ]) |
||
13110 | pkt.ReqCondSizeVariable() |
||
13111 | pkt.CompletionCodes([0x0000, 0x8000, 0x8101, 0x8401, 0x8501, |
||
13112 | 0x8701, 0x8d00, 0x8f00, 0x9001, 0x9600, |
||
13113 | 0x9804, 0x9b03, 0x9c03, 0xa901, 0xbf00, 0xfd00, 0xff16]) |
||
13114 | # 2222/5715, 87/21 |
||
13115 | pkt = NCP(0x5715, "Get Path String from Short Directory Handle", 'file', has_length=0) |
||
13116 | pkt.Request(10, [ |
||
13117 | rec( 8, 1, NameSpace ), |
||
13118 | rec( 9, 1, DirHandle ), |
||
13119 | ]) |
||
13120 | pkt.Reply((9,263), [ |
||
13121 | rec( 8, (1,255), Path ), |
||
13122 | ]) |
||
13123 | pkt.CompletionCodes([0x0000, 0x8000, 0x8101, 0x8401, 0x8501, |
||
13124 | 0x8701, 0x8d00, 0x8f00, 0x9001, 0x9600, |
||
13125 | 0x9804, 0x9b03, 0x9c03, 0xfd00, 0xff16]) |
||
13126 | # 2222/5716, 87/22 |
||
13127 | pkt = NCP(0x5716, "Generate Directory Base and Volume Number", 'file', has_length=0) |
||
13128 | pkt.Request((20,274), [ |
||
13129 | rec( 8, 1, SrcNameSpace ), |
||
13130 | rec( 9, 1, DestNameSpace ), |
||
13131 | rec( 10, 2, dstNSIndicator ), |
||
13132 | rec( 12, 1, VolumeNumber ), |
||
13133 | rec( 13, 4, DirectoryBase ), |
||
13134 | rec( 17, 1, HandleFlag ), |
||
13135 | rec( 18, 1, PathCount, var="x" ), |
||
13136 | rec( 19, (1,255), Path, repeat="x", info_str=(Path, "Get Volume and Directory Base from: %s", "/%s") ), |
||
13137 | ]) |
||
13138 | pkt.Reply(17, [ |
||
13139 | rec( 8, 4, DirectoryBase ), |
||
13140 | rec( 12, 4, DOSDirectoryBase ), |
||
13141 | rec( 16, 1, VolumeNumber ), |
||
13142 | ]) |
||
13143 | pkt.CompletionCodes([0x0000, 0x8000, 0x8101, 0x8401, 0x8501, |
||
13144 | 0x8701, 0x8d00, 0x8f00, 0x9001, 0x9600, |
||
13145 | 0x9804, 0x9b03, 0x9c03, 0xbf00, 0xfd00, 0xff16]) |
||
13146 | # 2222/5717, 87/23 |
||
13147 | pkt = NCP(0x5717, "Query Name Space Information Format", 'file', has_length=0) |
||
13148 | pkt.Request(10, [ |
||
13149 | rec( 8, 1, NameSpace ), |
||
13150 | rec( 9, 1, VolumeNumber ), |
||
13151 | ]) |
||
13152 | pkt.Reply(58, [ |
||
13153 | rec( 8, 4, FixedBitMask ), |
||
13154 | rec( 12, 4, VariableBitMask ), |
||
13155 | rec( 16, 4, HugeBitMask ), |
||
13156 | rec( 20, 2, FixedBitsDefined ), |
||
13157 | rec( 22, 2, VariableBitsDefined ), |
||
13158 | rec( 24, 2, HugeBitsDefined ), |
||
13159 | rec( 26, 32, FieldsLenTable ), |
||
13160 | ]) |
||
13161 | pkt.CompletionCodes([0x0000, 0x8000, 0x8101, 0x8401, 0x8501, |
||
13162 | 0x8701, 0x8d00, 0x8f00, 0x9001, 0x9600, |
||
13163 | 0x9804, 0x9b03, 0x9c03, 0xbf00, 0xfd00, 0xff16]) |
||
13164 | # 2222/5718, 87/24 |
||
13165 | pkt = NCP(0x5718, "Get Name Spaces Loaded List from Volume Number", 'file', has_length=0) |
||
13166 | pkt.Request(11, [ |
||
13167 | rec( 8, 2, Reserved2 ), |
||
13168 | rec( 10, 1, VolumeNumber, info_str=(VolumeNumber, "Get Name Spaces Loaded List from Vol: %d", "/%d") ), |
||
13169 | ]) |
||
13170 | pkt.Reply(11, [ |
||
13171 | rec( 8, 2, NumberOfNSLoaded, var="x" ), |
||
13172 | rec( 10, 1, NameSpace, repeat="x" ), |
||
13173 | ]) |
||
13174 | pkt.CompletionCodes([0x0000, 0x8000, 0x8101, 0x8401, 0x8501, |
||
13175 | 0x8701, 0x8d00, 0x8f00, 0x9001, 0x9600, |
||
13176 | 0x9804, 0x9b03, 0x9c03, 0xbf00, 0xfd00, 0xff16]) |
||
13177 | # 2222/5719, 87/25 |
||
13178 | pkt = NCP(0x5719, "Set Name Space Information", 'file', has_length=0) |
||
13179 | pkt.Request(531, [ |
||
13180 | rec( 8, 1, SrcNameSpace ), |
||
13181 | rec( 9, 1, DestNameSpace ), |
||
13182 | rec( 10, 1, VolumeNumber ), |
||
13183 | rec( 11, 4, DirectoryBase ), |
||
13184 | rec( 15, 2, NamesSpaceInfoMask ), |
||
13185 | rec( 17, 2, Reserved2 ), |
||
13186 | rec( 19, 512, NSSpecificInfo ), |
||
13187 | ]) |
||
13188 | pkt.Reply(8) |
||
13189 | pkt.CompletionCodes([0x0000, 0x8000, 0x8101, 0x8401, 0x8501, |
||
13190 | 0x8701, 0x8b00, 0x8d00, 0x8f00, 0x9001, |
||
13191 | 0x9600, 0x9804, 0x9b03, 0x9c03, 0xbf00, 0xfd00, |
||
13192 | 0xff16]) |
||
13193 | # 2222/571A, 87/26 |
||
13194 | pkt = NCP(0x571A, "Get Huge Name Space Information", 'file', has_length=0) |
||
13195 | pkt.Request(34, [ |
||
13196 | rec( 8, 1, NameSpace ), |
||
13197 | rec( 9, 1, VolumeNumber ), |
||
13198 | rec( 10, 4, DirectoryBase ), |
||
13199 | rec( 14, 4, HugeBitMask ), |
||
13200 | rec( 18, 16, HugeStateInfo ), |
||
13201 | ]) |
||
13202 | pkt.Reply((25,279), [ |
||
13203 | rec( 8, 16, NextHugeStateInfo ), |
||
13204 | rec( 24, (1,255), HugeData ), |
||
13205 | ]) |
||
13206 | pkt.CompletionCodes([0x0000, 0x8000, 0x8101, 0x8401, 0x8501, |
||
13207 | 0x8701, 0x8b00, 0x8d00, 0x8f00, 0x9001, |
||
13208 | 0x9600, 0x9804, 0x9b03, 0x9c03, 0xbf00, 0xfd00, |
||
13209 | 0xff16]) |
||
13210 | # 2222/571B, 87/27 |
||
13211 | pkt = NCP(0x571B, "Set Huge Name Space Information", 'file', has_length=0) |
||
13212 | pkt.Request((35,289), [ |
||
13213 | rec( 8, 1, NameSpace ), |
||
13214 | rec( 9, 1, VolumeNumber ), |
||
13215 | rec( 10, 4, DirectoryBase ), |
||
13216 | rec( 14, 4, HugeBitMask ), |
||
13217 | rec( 18, 16, HugeStateInfo ), |
||
13218 | rec( 34, (1,255), HugeData ), |
||
13219 | ]) |
||
13220 | pkt.Reply(28, [ |
||
13221 | rec( 8, 16, NextHugeStateInfo ), |
||
13222 | rec( 24, 4, HugeDataUsed ), |
||
13223 | ]) |
||
13224 | pkt.CompletionCodes([0x0000, 0x8000, 0x8101, 0x8401, 0x8501, |
||
13225 | 0x8701, 0x8b00, 0x8d00, 0x8f00, 0x9001, |
||
13226 | 0x9600, 0x9804, 0x9b03, 0x9c03, 0xbf00, 0xfd00, |
||
13227 | 0xff16]) |
||
13228 | # 2222/571C, 87/28 |
||
13229 | pkt = NCP(0x571C, "Get Full Path String", 'file', has_length=0) |
||
13230 | pkt.Request((28,282), [ |
||
13231 | rec( 8, 1, SrcNameSpace ), |
||
13232 | rec( 9, 1, DestNameSpace ), |
||
13233 | rec( 10, 2, PathCookieFlags ), |
||
13234 | rec( 12, 4, Cookie1 ), |
||
13235 | rec( 16, 4, Cookie2 ), |
||
13236 | rec( 20, 1, VolumeNumber ), |
||
13237 | rec( 21, 4, DirectoryBase ), |
||
13238 | rec( 25, 1, HandleFlag ), |
||
13239 | rec( 26, 1, PathCount, var="x" ), |
||
13240 | rec( 27, (1,255), Path, repeat="x", info_str=(Path, "Get Full Path from: %s", "/%s") ), |
||
13241 | ]) |
||
13242 | pkt.Reply((23,277), [ |
||
13243 | rec( 8, 2, PathCookieFlags ), |
||
13244 | rec( 10, 4, Cookie1 ), |
||
13245 | rec( 14, 4, Cookie2 ), |
||
13246 | rec( 18, 2, PathComponentSize ), |
||
13247 | rec( 20, 2, PathComponentCount, var='x' ), |
||
13248 | rec( 22, (1,255), Path, repeat='x' ), |
||
13249 | ]) |
||
13250 | pkt.CompletionCodes([0x0000, 0x8000, 0x8101, 0x8401, 0x8501, |
||
13251 | 0x8701, 0x8b00, 0x8d00, 0x8f00, 0x9001, |
||
13252 | 0x9600, 0x9804, 0x9b03, 0x9c03, 0xbf00, 0xfd00, |
||
13253 | 0xff16]) |
||
13254 | # 2222/571D, 87/29 |
||
13255 | pkt = NCP(0x571D, "Get Effective Directory Rights", 'file', has_length=0) |
||
13256 | pkt.Request((24, 278), [ |
||
13257 | rec( 8, 1, NameSpace ), |
||
13258 | rec( 9, 1, DestNameSpace ), |
||
13259 | rec( 10, 2, SearchAttributesLow ), |
||
13260 | rec( 12, 2, ReturnInfoMask ), |
||
13261 | rec( 14, 2, ExtendedInfo ), |
||
13262 | rec( 16, 1, VolumeNumber ), |
||
13263 | rec( 17, 4, DirectoryBase ), |
||
13264 | rec( 21, 1, HandleFlag ), |
||
13265 | rec( 22, 1, PathCount, var="x" ), |
||
13266 | rec( 23, (1,255), Path, repeat="x", info_str=(Path, "Get Effective Rights for: %s", "/%s") ), |
||
13267 | ]) |
||
13268 | pkt.Reply(NO_LENGTH_CHECK, [ |
||
13269 | rec( 8, 2, EffectiveRights ), |
||
13270 | srec( DSSpaceAllocateStruct, req_cond="(ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_alloc == 1)" ), |
||
13271 | srec( PadDSSpaceAllocate, req_cond="(ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_alloc == 0)" ), |
||
13272 | srec( AttributesStruct, req_cond="(ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_attr == 1)" ), |
||
13273 | srec( PadAttributes, req_cond="(ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_attr == 0)" ), |
||
13274 | srec( DataStreamSizeStruct, req_cond="(ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_size == 1)" ), |
||
13275 | srec( PadDataStreamSize, req_cond="(ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_size == 0)" ), |
||
13276 | srec( TotalStreamSizeStruct, req_cond="(ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_tspace == 1)" ), |
||
13277 | srec( PadTotalStreamSize, req_cond="(ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_tspace == 0)" ), |
||
13278 | srec( CreationInfoStruct, req_cond="(ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_create == 1)" ), |
||
13279 | srec( PadCreationInfo, req_cond="(ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_create == 0)" ), |
||
13280 | srec( ModifyInfoStruct, req_cond="(ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_mod == 1)" ), |
||
13281 | srec( PadModifyInfo, req_cond="(ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_mod == 0)" ), |
||
13282 | srec( ArchiveInfoStruct, req_cond="(ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_arch == 1)" ), |
||
13283 | srec( PadArchiveInfo, req_cond="(ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_arch == 0)" ), |
||
13284 | srec( RightsInfoStruct, req_cond="(ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_rights == 1)" ), |
||
13285 | srec( PadRightsInfo, req_cond="(ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_rights == 0)" ), |
||
13286 | srec( DirEntryStruct, req_cond="(ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_dir == 1)" ), |
||
13287 | srec( PadDirEntry, req_cond="(ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_dir == 0)" ), |
||
13288 | srec( EAInfoStruct, req_cond="(ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_eattr == 1)" ), |
||
13289 | srec( PadEAInfo, req_cond="(ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_eattr == 0)" ), |
||
13290 | srec( NSInfoStruct, req_cond="(ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_ns == 1)" ), |
||
13291 | srec( PadNSInfo, req_cond="(ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_ns == 0)" ), |
||
13292 | srec( FileNameStruct, req_cond="(ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_fname == 1)" ), |
||
13293 | srec( DSSpaceAllocateStruct, req_cond="(ncp.ext_info_newstyle == 1) && (ncp.ret_info_mask_alloc == 1)" ), |
||
13294 | srec( AttributesStruct, req_cond="(ncp.ext_info_newstyle == 1) && (ncp.ret_info_mask_attr == 1)" ), |
||
13295 | srec( DataStreamSizeStruct, req_cond="(ncp.ext_info_newstyle == 1) && (ncp.ret_info_mask_size == 1)" ), |
||
13296 | srec( TotalStreamSizeStruct, req_cond="(ncp.ext_info_newstyle == 1) && (ncp.ret_info_mask_tspace == 1)" ), |
||
13297 | srec( CreationInfoStruct, req_cond="(ncp.ext_info_newstyle == 1) && (ncp.ret_info_mask_create == 1)" ), |
||
13298 | srec( ModifyInfoStruct, req_cond="(ncp.ext_info_newstyle == 1) && (ncp.ret_info_mask_mod == 1)" ), |
||
13299 | srec( ArchiveInfoStruct, req_cond="(ncp.ext_info_newstyle == 1) && (ncp.ret_info_mask_arch == 1)" ), |
||
13300 | srec( RightsInfoStruct, req_cond="(ncp.ext_info_newstyle == 1) && (ncp.ret_info_mask_rights == 1)" ), |
||
13301 | srec( DirEntryStruct, req_cond="(ncp.ext_info_newstyle == 1) && (ncp.ret_info_mask_dir == 1)" ), |
||
13302 | srec( EAInfoStruct, req_cond="(ncp.ext_info_newstyle == 1) && (ncp.ret_info_mask_eattr == 1)" ), |
||
13303 | srec( NSInfoStruct, req_cond="(ncp.ext_info_newstyle == 1) && (ncp.ret_info_mask_ns == 1)" ), |
||
13304 | srec( FileNameStruct, req_cond="(ncp.ext_info_newstyle == 1) && (ncp.ret_info_mask_fname == 1)" ), |
||
13305 | ]) |
||
13306 | pkt.ReqCondSizeVariable() |
||
13307 | pkt.CompletionCodes([0x0000, 0x8000, 0x8101, 0x8401, 0x8501, |
||
13308 | 0x8701, 0x8d00, 0x8f00, 0x9001, 0x9600, |
||
13309 | 0x9804, 0x9b03, 0x9c03, 0xbf00, 0xfd00, 0xff16]) |
||
13310 | # 2222/571E, 87/30 |
||
13311 | pkt = NCP(0x571E, "Open/Create File or Subdirectory", 'file', has_length=0) |
||
13312 | pkt.Request((34, 288), [ |
||
13313 | rec( 8, 1, NameSpace ), |
||
13314 | rec( 9, 1, DataStream ), |
||
13315 | rec( 10, 1, OpenCreateMode ), |
||
13316 | rec( 11, 1, Reserved ), |
||
13317 | rec( 12, 2, SearchAttributesLow ), |
||
13318 | rec( 14, 2, Reserved2 ), |
||
13319 | rec( 16, 2, ReturnInfoMask ), |
||
13320 | rec( 18, 2, ExtendedInfo ), |
||
13321 | rec( 20, 4, AttributesDef32 ), |
||
13322 | rec( 24, 2, DesiredAccessRights ), |
||
13323 | rec( 26, 1, VolumeNumber ), |
||
13324 | rec( 27, 4, DirectoryBase ), |
||
13325 | rec( 31, 1, HandleFlag ), |
||
13326 | rec( 32, 1, PathCount, var="x" ), |
||
13327 | rec( 33, (1,255), Path, repeat="x", info_str=(Path, "Open or Create File: %s", "/%s") ), |
||
13328 | ]) |
||
13329 | pkt.Reply(NO_LENGTH_CHECK, [ |
||
13330 | rec( 8, 4, FileHandle, ENC_BIG_ENDIAN ), |
||
13331 | rec( 12, 1, OpenCreateAction ), |
||
13332 | rec( 13, 1, Reserved ), |
||
13333 | srec( DSSpaceAllocateStruct, req_cond="(ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_alloc == 1)" ), |
||
13334 | srec( PadDSSpaceAllocate, req_cond="(ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_alloc == 0)" ), |
||
13335 | srec( AttributesStruct, req_cond="(ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_attr == 1)" ), |
||
13336 | srec( PadAttributes, req_cond="(ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_attr == 0)" ), |
||
13337 | srec( DataStreamSizeStruct, req_cond="(ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_size == 1)" ), |
||
13338 | srec( PadDataStreamSize, req_cond="(ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_size == 0)" ), |
||
13339 | srec( TotalStreamSizeStruct, req_cond="(ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_tspace == 1)" ), |
||
13340 | srec( PadTotalStreamSize, req_cond="(ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_tspace == 0)" ), |
||
13341 | srec( CreationInfoStruct, req_cond="(ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_create == 1)" ), |
||
13342 | srec( PadCreationInfo, req_cond="(ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_create == 0)" ), |
||
13343 | srec( ModifyInfoStruct, req_cond="(ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_mod == 1)" ), |
||
13344 | srec( PadModifyInfo, req_cond="(ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_mod == 0)" ), |
||
13345 | srec( ArchiveInfoStruct, req_cond="(ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_arch == 1)" ), |
||
13346 | srec( PadArchiveInfo, req_cond="(ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_arch == 0)" ), |
||
13347 | srec( RightsInfoStruct, req_cond="(ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_rights == 1)" ), |
||
13348 | srec( PadRightsInfo, req_cond="(ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_rights == 0)" ), |
||
13349 | srec( DirEntryStruct, req_cond="(ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_dir == 1)" ), |
||
13350 | srec( PadDirEntry, req_cond="(ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_dir == 0)" ), |
||
13351 | srec( EAInfoStruct, req_cond="(ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_eattr == 1)" ), |
||
13352 | srec( PadEAInfo, req_cond="(ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_eattr == 0)" ), |
||
13353 | srec( NSInfoStruct, req_cond="(ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_ns == 1)" ), |
||
13354 | srec( PadNSInfo, req_cond="(ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_ns == 0)" ), |
||
13355 | srec( FileNameStruct, req_cond="(ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_fname == 1)" ), |
||
13356 | srec( DSSpaceAllocateStruct, req_cond="(ncp.ext_info_newstyle == 1) && (ncp.ret_info_mask_alloc == 1)" ), |
||
13357 | srec( AttributesStruct, req_cond="(ncp.ext_info_newstyle == 1) && (ncp.ret_info_mask_attr == 1)" ), |
||
13358 | srec( DataStreamSizeStruct, req_cond="(ncp.ext_info_newstyle == 1) && (ncp.ret_info_mask_size == 1)" ), |
||
13359 | srec( TotalStreamSizeStruct, req_cond="(ncp.ext_info_newstyle == 1) && (ncp.ret_info_mask_tspace == 1)" ), |
||
13360 | srec( CreationInfoStruct, req_cond="(ncp.ext_info_newstyle == 1) && (ncp.ret_info_mask_create == 1)" ), |
||
13361 | srec( ModifyInfoStruct, req_cond="(ncp.ext_info_newstyle == 1) && (ncp.ret_info_mask_mod == 1)" ), |
||
13362 | srec( ArchiveInfoStruct, req_cond="(ncp.ext_info_newstyle == 1) && (ncp.ret_info_mask_arch == 1)" ), |
||
13363 | srec( RightsInfoStruct, req_cond="(ncp.ext_info_newstyle == 1) && (ncp.ret_info_mask_rights == 1)" ), |
||
13364 | srec( DirEntryStruct, req_cond="(ncp.ext_info_newstyle == 1) && (ncp.ret_info_mask_dir == 1)" ), |
||
13365 | srec( EAInfoStruct, req_cond="(ncp.ext_info_newstyle == 1) && (ncp.ret_info_mask_eattr == 1)" ), |
||
13366 | srec( NSInfoStruct, req_cond="(ncp.ext_info_newstyle == 1) && (ncp.ret_info_mask_ns == 1)" ), |
||
13367 | srec( FileNameStruct, req_cond="(ncp.ext_info_newstyle == 1) && (ncp.ret_info_mask_fname == 1)" ), |
||
13368 | ]) |
||
13369 | pkt.ReqCondSizeVariable() |
||
13370 | pkt.CompletionCodes([0x0000, 0x0102, 0x8000, 0x8101, 0x8401, 0x8501, |
||
13371 | 0x8701, 0x8d00, 0x8f00, 0x9001, 0x9600, |
||
13372 | 0x9804, 0x9b03, 0x9c03, 0xbe00, 0xbf00, 0xfd00, 0xff16]) |
||
13373 | pkt.MakeExpert("file_rights") |
||
13374 | # 2222/571F, 87/31 |
||
13375 | pkt = NCP(0x571F, "Get File Information", 'file', has_length=0) |
||
13376 | pkt.Request(15, [ |
||
13377 | rec( 8, 6, FileHandle, info_str=(FileHandle, "Get File Information - 0x%s", ", %s") ), |
||
13378 | rec( 14, 1, HandleInfoLevel ), |
||
13379 | ]) |
||
13380 | pkt.Reply(NO_LENGTH_CHECK, [ |
||
13381 | rec( 8, 4, VolumeNumberLong ), |
||
13382 | rec( 12, 4, DirectoryBase ), |
||
13383 | srec(HandleInfoLevel0, req_cond="ncp.handle_info_level==0x00" ), |
||
13384 | srec(HandleInfoLevel1, req_cond="ncp.handle_info_level==0x01" ), |
||
13385 | srec(HandleInfoLevel2, req_cond="ncp.handle_info_level==0x02" ), |
||
13386 | srec(HandleInfoLevel3, req_cond="ncp.handle_info_level==0x03" ), |
||
13387 | srec(HandleInfoLevel4, req_cond="ncp.handle_info_level==0x04" ), |
||
13388 | srec(HandleInfoLevel5, req_cond="ncp.handle_info_level==0x05" ), |
||
13389 | ]) |
||
13390 | pkt.ReqCondSizeVariable() |
||
13391 | pkt.CompletionCodes([0x0000, 0x8000, 0x8101, 0x8401, 0x8501, |
||
13392 | 0x8701, 0x8d00, 0x8f00, 0x9001, 0x9600, |
||
13393 | 0x9804, 0x9b03, 0x9c03, 0xbf00, 0xfd00, 0xff16]) |
||
13394 | # 2222/5720, 87/32 |
||
13395 | pkt = NCP(0x5720, "Open/Create File or Subdirectory with Callback", 'file', has_length=0) |
||
13396 | pkt.Request((30, 284), [ |
||
13397 | rec( 8, 1, NameSpace ), |
||
13398 | rec( 9, 1, OpenCreateMode ), |
||
13399 | rec( 10, 2, SearchAttributesLow ), |
||
13400 | rec( 12, 2, ReturnInfoMask ), |
||
13401 | rec( 14, 2, ExtendedInfo ), |
||
13402 | rec( 16, 4, AttributesDef32 ), |
||
13403 | rec( 20, 2, DesiredAccessRights ), |
||
13404 | rec( 22, 1, VolumeNumber ), |
||
13405 | rec( 23, 4, DirectoryBase ), |
||
13406 | rec( 27, 1, HandleFlag ), |
||
13407 | rec( 28, 1, PathCount, var="x" ), |
||
13408 | rec( 29, (1,255), Path, repeat="x", info_str=(Path, "Open or Create with Op-Lock: %s", "/%s") ), |
||
13409 | ]) |
||
13410 | pkt.Reply( NO_LENGTH_CHECK, [ |
||
13411 | rec( 8, 4, FileHandle, ENC_BIG_ENDIAN ), |
||
13412 | rec( 12, 1, OpenCreateAction ), |
||
13413 | rec( 13, 1, OCRetFlags ), |
||
13414 | srec( DSSpaceAllocateStruct, req_cond="(ncp.ret_info_mask != 0x0000) && (ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_alloc == 1)" ), |
||
13415 | srec( PadDSSpaceAllocate, req_cond="(ncp.ret_info_mask != 0x0000) && (ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_alloc == 0)" ), |
||
13416 | srec( AttributesStruct, req_cond="(ncp.ret_info_mask != 0x0000) && (ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_attr == 1)" ), |
||
13417 | srec( PadAttributes, req_cond="(ncp.ret_info_mask != 0x0000) && (ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_attr == 0)" ), |
||
13418 | srec( DataStreamSizeStruct, req_cond="(ncp.ret_info_mask != 0x0000) && (ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_size == 1)" ), |
||
13419 | srec( PadDataStreamSize, req_cond="(ncp.ret_info_mask != 0x0000) && (ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_size == 0)" ), |
||
13420 | srec( TotalStreamSizeStruct, req_cond="(ncp.ret_info_mask != 0x0000) && (ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_tspace == 1)" ), |
||
13421 | srec( PadTotalStreamSize, req_cond="(ncp.ret_info_mask != 0x0000) && (ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_tspace == 0)" ), |
||
13422 | srec( CreationInfoStruct, req_cond="(ncp.ret_info_mask != 0x0000) && (ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_create == 1)" ), |
||
13423 | srec( PadCreationInfo, req_cond="(ncp.ret_info_mask != 0x0000) && (ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_create == 0)" ), |
||
13424 | srec( ModifyInfoStruct, req_cond="(ncp.ret_info_mask != 0x0000) && (ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_mod == 1)" ), |
||
13425 | srec( PadModifyInfo, req_cond="(ncp.ret_info_mask != 0x0000) && (ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_mod == 0)" ), |
||
13426 | srec( ArchiveInfoStruct, req_cond="(ncp.ret_info_mask != 0x0000) && (ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_arch == 1)" ), |
||
13427 | srec( PadArchiveInfo, req_cond="(ncp.ret_info_mask != 0x0000) && (ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_arch == 0)" ), |
||
13428 | srec( RightsInfoStruct, req_cond="(ncp.ret_info_mask != 0x0000) && (ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_rights == 1)" ), |
||
13429 | srec( PadRightsInfo, req_cond="(ncp.ret_info_mask != 0x0000) && (ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_rights == 0)" ), |
||
13430 | srec( DirEntryStruct, req_cond="(ncp.ret_info_mask != 0x0000) && (ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_dir == 1)" ), |
||
13431 | srec( PadDirEntry, req_cond="(ncp.ret_info_mask != 0x0000) && (ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_dir == 0)" ), |
||
13432 | srec( EAInfoStruct, req_cond="(ncp.ret_info_mask != 0x0000) && (ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_eattr == 1)" ), |
||
13433 | srec( PadEAInfo, req_cond="(ncp.ret_info_mask != 0x0000) && (ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_eattr == 0)" ), |
||
13434 | srec( NSInfoStruct, req_cond="(ncp.ret_info_mask != 0x0000) && (ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_ns == 1)" ), |
||
13435 | srec( PadNSInfo, req_cond="(ncp.ret_info_mask != 0x0000) && (ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_ns == 0)" ), |
||
13436 | srec( DSSpaceAllocateStruct, req_cond="(ncp.ext_info_newstyle == 1) && (ncp.ret_info_mask_alloc == 1)" ), |
||
13437 | srec( AttributesStruct, req_cond="(ncp.ext_info_newstyle == 1) && (ncp.ret_info_mask_attr == 1)" ), |
||
13438 | srec( DataStreamSizeStruct, req_cond="(ncp.ext_info_newstyle == 1) && (ncp.ret_info_mask_size == 1)" ), |
||
13439 | srec( TotalStreamSizeStruct, req_cond="(ncp.ext_info_newstyle == 1) && (ncp.ret_info_mask_tspace == 1)" ), |
||
13440 | srec( EAInfoStruct, req_cond="(ncp.ext_info_newstyle == 1) && (ncp.ret_info_mask_eattr == 1)" ), |
||
13441 | srec( ModifyInfoStruct, req_cond="(ncp.ext_info_newstyle == 1) && (ncp.ret_info_mask_mod == 1)" ), |
||
13442 | srec( CreationInfoStruct, req_cond="(ncp.ext_info_newstyle == 1) && (ncp.ret_info_mask_create == 1)" ), |
||
13443 | srec( ArchiveInfoStruct, req_cond="(ncp.ext_info_newstyle == 1) && (ncp.ret_info_mask_arch == 1)" ), |
||
13444 | srec( DirEntryStruct, req_cond="(ncp.ext_info_newstyle == 1) && (ncp.ret_info_mask_dir == 1)" ), |
||
13445 | srec( RightsInfoStruct, req_cond="(ncp.ext_info_newstyle == 1) && (ncp.ret_info_mask_rights == 1)" ), |
||
13446 | srec( NSInfoStruct, req_cond="(ncp.ext_info_newstyle == 1) && (ncp.ret_info_mask_ns == 1)" ), |
||
13447 | srec( ReferenceIDStruct, req_cond="ncp.ret_info_mask_id == 1" ), |
||
13448 | srec( NSAttributeStruct, req_cond="ncp.ret_info_mask_ns_attr == 1" ), |
||
13449 | rec( -1, 4, DataStreamsCount, var="x" , req_cond="ncp.ret_info_mask_actual == 1" ), |
||
13450 | srec( DStreamActual, repeat = "x" , req_cond="ncp.ret_info_mask_actual == 1" ), |
||
13451 | rec( -1, 4, DataStreamsCount, var="y", req_cond="ncp.ret_info_mask_logical == 1" ), |
||
13452 | srec( DStreamLogical, repeat="y" , req_cond="ncp.ret_info_mask_logical == 1" ), |
||
13453 | srec( LastUpdatedInSecondsStruct, req_cond="ncp.ext_info_update == 1" ), |
||
13454 | srec( DOSNameStruct, req_cond="ncp.ext_info_dos_name == 1" ), |
||
13455 | srec( FlushTimeStruct, req_cond="ncp.ext_info_flush == 1" ), |
||
13456 | srec( ParentBaseIDStruct, req_cond="ncp.ext_info_parental == 1" ), |
||
13457 | srec( MacFinderInfoStruct, req_cond="ncp.ext_info_mac_finder == 1" ), |
||
13458 | srec( SiblingCountStruct, req_cond="ncp.ext_info_sibling == 1" ), |
||
13459 | srec( EffectiveRightsStruct, req_cond="ncp.ext_info_effective == 1" ), |
||
13460 | srec( MacTimeStruct, req_cond="ncp.ext_info_mac_date == 1" ), |
||
13461 | srec( LastAccessedTimeStruct, req_cond="ncp.ext_info_access == 1" ), |
||
13462 | srec( FileNameStruct, req_cond="ncp.ret_info_mask_fname == 1" ), |
||
13463 | ]) |
||
13464 | pkt.ReqCondSizeVariable() |
||
13465 | pkt.CompletionCodes([0x0000, 0x0102, 0x7f00, 0x8000, 0x8101, 0x8401, 0x8501, |
||
13466 | 0x8701, 0x8d00, 0x8f00, 0x9001, 0x9600, |
||
13467 | 0x9804, 0x9b03, 0x9c03, 0xbf00, 0xfd00, 0xff16]) |
||
13468 | pkt.MakeExpert("file_rights") |
||
13469 | # 2222/5721, 87/33 |
||
13470 | pkt = NCP(0x5721, "Open/Create File or Subdirectory II with Callback", 'file', has_length=0) |
||
13471 | pkt.Request((34, 288), [ |
||
13472 | rec( 8, 1, NameSpace ), |
||
13473 | rec( 9, 1, DataStream ), |
||
13474 | rec( 10, 1, OpenCreateMode ), |
||
13475 | rec( 11, 1, Reserved ), |
||
13476 | rec( 12, 2, SearchAttributesLow ), |
||
13477 | rec( 14, 2, Reserved2 ), |
||
13478 | rec( 16, 2, ReturnInfoMask ), |
||
13479 | rec( 18, 2, ExtendedInfo ), |
||
13480 | rec( 20, 4, AttributesDef32 ), |
||
13481 | rec( 24, 2, DesiredAccessRights ), |
||
13482 | rec( 26, 1, VolumeNumber ), |
||
13483 | rec( 27, 4, DirectoryBase ), |
||
13484 | rec( 31, 1, HandleFlag ), |
||
13485 | rec( 32, 1, PathCount, var="x" ), |
||
13486 | rec( 33, (1,255), Path, repeat="x", info_str=(Path, "Open or Create II with Op-Lock: %s", "/%s") ), |
||
13487 | ]) |
||
13488 | pkt.Reply(NO_LENGTH_CHECK, [ |
||
13489 | rec( 8, 4, FileHandle ), |
||
13490 | rec( 12, 1, OpenCreateAction ), |
||
13491 | rec( 13, 1, OCRetFlags ), |
||
13492 | srec( DSSpaceAllocateStruct, req_cond="(ncp.ret_info_mask != 0x0000) && (ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_alloc == 1)" ), |
||
13493 | srec( PadDSSpaceAllocate, req_cond="(ncp.ret_info_mask != 0x0000) && (ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_alloc == 0)" ), |
||
13494 | srec( AttributesStruct, req_cond="(ncp.ret_info_mask != 0x0000) && (ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_attr == 1)" ), |
||
13495 | srec( PadAttributes, req_cond="(ncp.ret_info_mask != 0x0000) && (ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_attr == 0)" ), |
||
13496 | srec( DataStreamSizeStruct, req_cond="(ncp.ret_info_mask != 0x0000) && (ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_size == 1)" ), |
||
13497 | srec( PadDataStreamSize, req_cond="(ncp.ret_info_mask != 0x0000) && (ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_size == 0)" ), |
||
13498 | srec( TotalStreamSizeStruct, req_cond="(ncp.ret_info_mask != 0x0000) && (ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_tspace == 1)" ), |
||
13499 | srec( PadTotalStreamSize, req_cond="(ncp.ret_info_mask != 0x0000) && (ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_tspace == 0)" ), |
||
13500 | srec( CreationInfoStruct, req_cond="(ncp.ret_info_mask != 0x0000) && (ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_create == 1)" ), |
||
13501 | srec( PadCreationInfo, req_cond="(ncp.ret_info_mask != 0x0000) && (ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_create == 0)" ), |
||
13502 | srec( ModifyInfoStruct, req_cond="(ncp.ret_info_mask != 0x0000) && (ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_mod == 1)" ), |
||
13503 | srec( PadModifyInfo, req_cond="(ncp.ret_info_mask != 0x0000) && (ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_mod == 0)" ), |
||
13504 | srec( ArchiveInfoStruct, req_cond="(ncp.ret_info_mask != 0x0000) && (ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_arch == 1)" ), |
||
13505 | srec( PadArchiveInfo, req_cond="(ncp.ret_info_mask != 0x0000) && (ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_arch == 0)" ), |
||
13506 | srec( RightsInfoStruct, req_cond="(ncp.ret_info_mask != 0x0000) && (ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_rights == 1)" ), |
||
13507 | srec( PadRightsInfo, req_cond="(ncp.ret_info_mask != 0x0000) && (ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_rights == 0)" ), |
||
13508 | srec( DirEntryStruct, req_cond="(ncp.ret_info_mask != 0x0000) && (ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_dir == 1)" ), |
||
13509 | srec( PadDirEntry, req_cond="(ncp.ret_info_mask != 0x0000) && (ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_dir == 0)" ), |
||
13510 | srec( EAInfoStruct, req_cond="(ncp.ret_info_mask != 0x0000) && (ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_eattr == 1)" ), |
||
13511 | srec( PadEAInfo, req_cond="(ncp.ret_info_mask != 0x0000) && (ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_eattr == 0)" ), |
||
13512 | srec( NSInfoStruct, req_cond="(ncp.ret_info_mask != 0x0000) && (ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_ns == 1)" ), |
||
13513 | srec( PadNSInfo, req_cond="(ncp.ret_info_mask != 0x0000) && (ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_ns == 0)" ), |
||
13514 | srec( DSSpaceAllocateStruct, req_cond="(ncp.ext_info_newstyle == 1) && (ncp.ret_info_mask_alloc == 1)" ), |
||
13515 | srec( AttributesStruct, req_cond="(ncp.ext_info_newstyle == 1) && (ncp.ret_info_mask_attr == 1)" ), |
||
13516 | srec( DataStreamSizeStruct, req_cond="(ncp.ext_info_newstyle == 1) && (ncp.ret_info_mask_size == 1)" ), |
||
13517 | srec( TotalStreamSizeStruct, req_cond="(ncp.ext_info_newstyle == 1) && (ncp.ret_info_mask_tspace == 1)" ), |
||
13518 | srec( EAInfoStruct, req_cond="(ncp.ext_info_newstyle == 1) && (ncp.ret_info_mask_eattr == 1)" ), |
||
13519 | srec( ModifyInfoStruct, req_cond="(ncp.ext_info_newstyle == 1) && (ncp.ret_info_mask_mod == 1)" ), |
||
13520 | srec( CreationInfoStruct, req_cond="(ncp.ext_info_newstyle == 1) && (ncp.ret_info_mask_create == 1)" ), |
||
13521 | srec( ArchiveInfoStruct, req_cond="(ncp.ext_info_newstyle == 1) && (ncp.ret_info_mask_arch == 1)" ), |
||
13522 | srec( DirEntryStruct, req_cond="(ncp.ext_info_newstyle == 1) && (ncp.ret_info_mask_dir == 1)" ), |
||
13523 | srec( RightsInfoStruct, req_cond="(ncp.ext_info_newstyle == 1) && (ncp.ret_info_mask_rights == 1)" ), |
||
13524 | srec( NSInfoStruct, req_cond="(ncp.ext_info_newstyle == 1) && (ncp.ret_info_mask_ns == 1)" ), |
||
13525 | srec( ReferenceIDStruct, req_cond="ncp.ret_info_mask_id == 1" ), |
||
13526 | srec( NSAttributeStruct, req_cond="ncp.ret_info_mask_ns_attr == 1" ), |
||
13527 | rec( -1, 4, DataStreamsCount, var="x" , req_cond="ncp.ret_info_mask_actual == 1" ), |
||
13528 | srec( DStreamActual, repeat = "x" , req_cond="ncp.ret_info_mask_actual == 1" ), |
||
13529 | rec( -1, 4, DataStreamsCount, var="y", req_cond="ncp.ret_info_mask_logical == 1" ), |
||
13530 | srec( DStreamLogical, repeat="y" , req_cond="ncp.ret_info_mask_logical == 1" ), |
||
13531 | srec( LastUpdatedInSecondsStruct, req_cond="ncp.ext_info_update == 1" ), |
||
13532 | srec( DOSNameStruct, req_cond="ncp.ext_info_dos_name == 1" ), |
||
13533 | srec( FlushTimeStruct, req_cond="ncp.ext_info_flush == 1" ), |
||
13534 | srec( ParentBaseIDStruct, req_cond="ncp.ext_info_parental == 1" ), |
||
13535 | srec( MacFinderInfoStruct, req_cond="ncp.ext_info_mac_finder == 1" ), |
||
13536 | srec( SiblingCountStruct, req_cond="ncp.ext_info_sibling == 1" ), |
||
13537 | srec( EffectiveRightsStruct, req_cond="ncp.ext_info_effective == 1" ), |
||
13538 | srec( MacTimeStruct, req_cond="ncp.ext_info_mac_date == 1" ), |
||
13539 | srec( LastAccessedTimeStruct, req_cond="ncp.ext_info_access == 1" ), |
||
13540 | srec( FileNameStruct, req_cond="ncp.ret_info_mask_fname == 1" ), |
||
13541 | ]) |
||
13542 | pkt.ReqCondSizeVariable() |
||
13543 | pkt.CompletionCodes([0x0000, 0x0102, 0x8000, 0x8101, 0x8401, 0x8501, |
||
13544 | 0x8701, 0x8d00, 0x8f00, 0x9001, 0x9600, |
||
13545 | 0x9804, 0x9b03, 0x9c03, 0xbe00, 0xbf00, 0xfd00, 0xff16]) |
||
13546 | pkt.MakeExpert("file_rights") |
||
13547 | # 2222/5722, 87/34 |
||
13548 | pkt = NCP(0x5722, "Open CallBack Control (Op-Lock)", 'file', has_length=0) |
||
13549 | pkt.Request(13, [ |
||
13550 | rec( 10, 4, CCFileHandle, ENC_BIG_ENDIAN ), |
||
13551 | rec( 14, 1, CCFunction ), |
||
13552 | ]) |
||
13553 | pkt.Reply(8) |
||
13554 | pkt.CompletionCodes([0x0000, 0x8000, 0x8800, 0xff16]) |
||
13555 | pkt.MakeExpert("ncp5722_request") |
||
13556 | # 2222/5723, 87/35 |
||
13557 | pkt = NCP(0x5723, "Modify DOS Attributes on a File or Subdirectory", 'file', has_length=0) |
||
13558 | pkt.Request((28, 282), [ |
||
13559 | rec( 8, 1, NameSpace ), |
||
13560 | rec( 9, 1, Flags ), |
||
13561 | rec( 10, 2, SearchAttributesLow ), |
||
13562 | rec( 12, 2, ReturnInfoMask ), |
||
13563 | rec( 14, 2, ExtendedInfo ), |
||
13564 | rec( 16, 4, AttributesDef32 ), |
||
13565 | rec( 20, 1, VolumeNumber ), |
||
13566 | rec( 21, 4, DirectoryBase ), |
||
13567 | rec( 25, 1, HandleFlag ), |
||
13568 | rec( 26, 1, PathCount, var="x" ), |
||
13569 | rec( 27, (1,255), Path, repeat="x", info_str=(Path, "Modify DOS Attributes for: %s", "/%s") ), |
||
13570 | ]) |
||
13571 | pkt.Reply(24, [ |
||
13572 | rec( 8, 4, ItemsChecked ), |
||
13573 | rec( 12, 4, ItemsChanged ), |
||
13574 | rec( 16, 4, AttributeValidFlag ), |
||
13575 | rec( 20, 4, AttributesDef32 ), |
||
13576 | ]) |
||
13577 | pkt.CompletionCodes([0x0000, 0x0102, 0x8000, 0x8101, 0x8401, 0x8501, |
||
13578 | 0x8701, 0x8d00, 0x8f00, 0x9001, 0x9600, |
||
13579 | 0x9804, 0x9b03, 0x9c03, 0xbf00, 0xfd00, 0xff16]) |
||
13580 | # 2222/5724, 87/36 |
||
13581 | pkt = NCP(0x5724, "Log File", 'sync', has_length=0) |
||
13582 | pkt.Request((28, 282), [ |
||
13583 | rec( 8, 1, NameSpace ), |
||
13584 | rec( 9, 1, Reserved ), |
||
13585 | rec( 10, 2, Reserved2 ), |
||
13586 | rec( 12, 1, LogFileFlagLow ), |
||
13587 | rec( 13, 1, LogFileFlagHigh ), |
||
13588 | rec( 14, 2, Reserved2 ), |
||
13589 | rec( 16, 4, WaitTime ), |
||
13590 | rec( 20, 1, VolumeNumber ), |
||
13591 | rec( 21, 4, DirectoryBase ), |
||
13592 | rec( 25, 1, HandleFlag ), |
||
13593 | rec( 26, 1, PathCount, var="x" ), |
||
13594 | rec( 27, (1,255), Path, repeat="x", info_str=(Path, "Lock File: %s", "/%s") ), |
||
13595 | ]) |
||
13596 | pkt.Reply(8) |
||
13597 | pkt.CompletionCodes([0x0000, 0x8000, 0x8101, 0x8401, 0x8501, |
||
13598 | 0x8701, 0x8d00, 0x8f00, 0x9001, 0x9600, |
||
13599 | 0x9804, 0x9b03, 0x9c03, 0xbf00, 0xfd00, 0xff16]) |
||
13600 | # 2222/5725, 87/37 |
||
13601 | pkt = NCP(0x5725, "Release File", 'sync', has_length=0) |
||
13602 | pkt.Request((20, 274), [ |
||
13603 | rec( 8, 1, NameSpace ), |
||
13604 | rec( 9, 1, Reserved ), |
||
13605 | rec( 10, 2, Reserved2 ), |
||
13606 | rec( 12, 1, VolumeNumber ), |
||
13607 | rec( 13, 4, DirectoryBase ), |
||
13608 | rec( 17, 1, HandleFlag ), |
||
13609 | rec( 18, 1, PathCount, var="x" ), |
||
13610 | rec( 19, (1,255), Path, repeat="x", info_str=(Path, "Release Lock on: %s", "/%s") ), |
||
13611 | ]) |
||
13612 | pkt.Reply(8) |
||
13613 | pkt.CompletionCodes([0x0000, 0x8000, 0x8101, 0x8401, 0x8501, |
||
13614 | 0x8701, 0x8d00, 0x8f00, 0x9001, 0x9600, |
||
13615 | 0x9804, 0x9b03, 0x9c03, 0xbf00, 0xfd00, 0xff16]) |
||
13616 | # 2222/5726, 87/38 |
||
13617 | pkt = NCP(0x5726, "Clear File", 'sync', has_length=0) |
||
13618 | pkt.Request((20, 274), [ |
||
13619 | rec( 8, 1, NameSpace ), |
||
13620 | rec( 9, 1, Reserved ), |
||
13621 | rec( 10, 2, Reserved2 ), |
||
13622 | rec( 12, 1, VolumeNumber ), |
||
13623 | rec( 13, 4, DirectoryBase ), |
||
13624 | rec( 17, 1, HandleFlag ), |
||
13625 | rec( 18, 1, PathCount, var="x" ), |
||
13626 | rec( 19, (1,255), Path, repeat="x", info_str=(Path, "Clear File: %s", "/%s") ), |
||
13627 | ]) |
||
13628 | pkt.Reply(8) |
||
13629 | pkt.CompletionCodes([0x0000, 0x8000, 0x8101, 0x8401, 0x8501, |
||
13630 | 0x8701, 0x8d00, 0x8f00, 0x9001, 0x9600, |
||
13631 | 0x9804, 0x9b03, 0x9c03, 0xbf00, 0xfd00, 0xff16]) |
||
13632 | # 2222/5727, 87/39 |
||
13633 | pkt = NCP(0x5727, "Get Directory Disk Space Restriction", 'file', has_length=0) |
||
13634 | pkt.Request((19, 273), [ |
||
13635 | rec( 8, 1, NameSpace ), |
||
13636 | rec( 9, 2, Reserved2 ), |
||
13637 | rec( 11, 1, VolumeNumber ), |
||
13638 | rec( 12, 4, DirectoryBase ), |
||
13639 | rec( 16, 1, HandleFlag ), |
||
13640 | rec( 17, 1, PathCount, var="x" ), |
||
13641 | rec( 18, (1,255), Path, repeat="x", info_str=(Path, "Get Disk Space Restriction for: %s", "/%s") ), |
||
13642 | ]) |
||
13643 | pkt.Reply(18, [ |
||
13644 | rec( 8, 1, NumberOfEntries, var="x" ), |
||
13645 | rec( 9, 9, SpaceStruct, repeat="x" ), |
||
13646 | ]) |
||
13647 | pkt.CompletionCodes([0x0000, 0x8000, 0x8101, 0x8401, 0x8501, |
||
13648 | 0x8701, 0x8d00, 0x8f00, 0x9001, 0x9600, |
||
13649 | 0x9804, 0x9b03, 0x9c03, 0xbf00, 0xfd00, |
||
13650 | 0xff16]) |
||
13651 | # 2222/5728, 87/40 |
||
13652 | pkt = NCP(0x5728, "Search for File or Subdirectory Set (Extended Errors)", 'file', has_length=0) |
||
13653 | pkt.Request((28, 282), [ |
||
13654 | rec( 8, 1, NameSpace ), |
||
13655 | rec( 9, 1, DataStream ), |
||
13656 | rec( 10, 2, SearchAttributesLow ), |
||
13657 | rec( 12, 2, ReturnInfoMask ), |
||
13658 | rec( 14, 2, ExtendedInfo ), |
||
13659 | rec( 16, 2, ReturnInfoCount ), |
||
13660 | rec( 18, 9, SeachSequenceStruct ), |
||
13661 | rec( 27, (1,255), SearchPattern, info_str=(SearchPattern, "Search for: %s", ", %s") ), |
||
13662 | ]) |
||
13663 | pkt.Reply(NO_LENGTH_CHECK, [ |
||
13664 | rec( 8, 9, SeachSequenceStruct ), |
||
13665 | rec( 17, 1, MoreFlag ), |
||
13666 | rec( 18, 2, InfoCount ), |
||
13667 | srec( DSSpaceAllocateStruct, req_cond="(ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_alloc == 1)" ), |
||
13668 | srec( PadDSSpaceAllocate, req_cond="(ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_alloc == 0)" ), |
||
13669 | srec( AttributesStruct, req_cond="(ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_attr == 1)" ), |
||
13670 | srec( PadAttributes, req_cond="(ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_attr == 0)" ), |
||
13671 | srec( DataStreamSizeStruct, req_cond="(ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_size == 1)" ), |
||
13672 | srec( PadDataStreamSize, req_cond="(ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_size == 0)" ), |
||
13673 | srec( TotalStreamSizeStruct, req_cond="(ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_tspace == 1)" ), |
||
13674 | srec( PadTotalStreamSize, req_cond="(ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_tspace == 0)" ), |
||
13675 | srec( CreationInfoStruct, req_cond="(ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_create == 1)" ), |
||
13676 | srec( PadCreationInfo, req_cond="(ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_create == 0)" ), |
||
13677 | srec( ModifyInfoStruct, req_cond="(ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_mod == 1)" ), |
||
13678 | srec( PadModifyInfo, req_cond="(ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_mod == 0)" ), |
||
13679 | srec( ArchiveInfoStruct, req_cond="(ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_arch == 1)" ), |
||
13680 | srec( PadArchiveInfo, req_cond="(ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_arch == 0)" ), |
||
13681 | srec( RightsInfoStruct, req_cond="(ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_rights == 1)" ), |
||
13682 | srec( PadRightsInfo, req_cond="(ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_rights == 0)" ), |
||
13683 | srec( DirEntryStruct, req_cond="(ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_dir == 1)" ), |
||
13684 | srec( PadDirEntry, req_cond="(ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_dir == 0)" ), |
||
13685 | srec( EAInfoStruct, req_cond="(ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_eattr == 1)" ), |
||
13686 | srec( PadEAInfo, req_cond="(ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_eattr == 0)" ), |
||
13687 | srec( NSInfoStruct, req_cond="(ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_ns == 1)" ), |
||
13688 | srec( PadNSInfo, req_cond="(ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_ns == 0)" ), |
||
13689 | srec( FileNameStruct, req_cond="(ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_fname == 1)" ), |
||
13690 | srec( DSSpaceAllocateStruct, req_cond="(ncp.ext_info_newstyle == 1) && (ncp.ret_info_mask_alloc == 1)" ), |
||
13691 | srec( AttributesStruct, req_cond="(ncp.ext_info_newstyle == 1) && (ncp.ret_info_mask_attr == 1)" ), |
||
13692 | srec( DataStreamSizeStruct, req_cond="(ncp.ext_info_newstyle == 1) && (ncp.ret_info_mask_size == 1)" ), |
||
13693 | srec( TotalStreamSizeStruct, req_cond="(ncp.ext_info_newstyle == 1) && (ncp.ret_info_mask_tspace == 1)" ), |
||
13694 | srec( CreationInfoStruct, req_cond="(ncp.ext_info_newstyle == 1) && (ncp.ret_info_mask_create == 1)" ), |
||
13695 | srec( ModifyInfoStruct, req_cond="(ncp.ext_info_newstyle == 1) && (ncp.ret_info_mask_mod == 1)" ), |
||
13696 | srec( ArchiveInfoStruct, req_cond="(ncp.ext_info_newstyle == 1) && (ncp.ret_info_mask_arch == 1)" ), |
||
13697 | srec( RightsInfoStruct, req_cond="(ncp.ext_info_newstyle == 1) && (ncp.ret_info_mask_rights == 1)" ), |
||
13698 | srec( DirEntryStruct, req_cond="(ncp.ext_info_newstyle == 1) && (ncp.ret_info_mask_dir == 1)" ), |
||
13699 | srec( EAInfoStruct, req_cond="(ncp.ext_info_newstyle == 1) && (ncp.ret_info_mask_eattr == 1)" ), |
||
13700 | srec( NSInfoStruct, req_cond="(ncp.ext_info_newstyle == 1) && (ncp.ret_info_mask_ns == 1)" ), |
||
13701 | srec( FileNameStruct, req_cond="(ncp.ext_info_newstyle == 1) && (ncp.ret_info_mask_fname == 1)" ), |
||
13702 | ]) |
||
13703 | pkt.ReqCondSizeVariable() |
||
13704 | pkt.CompletionCodes([0x0000, 0x8000, 0x8101, 0x8401, 0x8501, |
||
13705 | 0x8701, 0x8d00, 0x8f00, 0x9001, 0x9600, |
||
13706 | 0x9804, 0x9b03, 0x9c03, 0xbf00, 0xfd00, 0xff16]) |
||
13707 | # 2222/5729, 87/41 |
||
13708 | pkt = NCP(0x5729, "Scan Salvageable Files", 'file', has_length=0) |
||
13709 | pkt.Request((24,278), [ |
||
13710 | rec( 8, 1, NameSpace ), |
||
13711 | rec( 9, 1, Reserved ), |
||
13712 | rec( 10, 2, CtrlFlags, ENC_LITTLE_ENDIAN ), |
||
13713 | rec( 12, 4, SequenceNumber ), |
||
13714 | rec( 16, 1, VolumeNumber ), |
||
13715 | rec( 17, 4, DirectoryBase ), |
||
13716 | rec( 21, 1, HandleFlag ), |
||
13717 | rec( 22, 1, PathCount, var="x" ), |
||
13718 | rec( 23, (1,255), Path, repeat="x", info_str=(Path, "Scan Deleted Files: %s", "/%s") ), |
||
13719 | ]) |
||
13720 | pkt.Reply(NO_LENGTH_CHECK, [ |
||
13721 | rec( 8, 4, SequenceNumber ), |
||
13722 | rec( 12, 4, DirectoryBase ), |
||
13723 | rec( 16, 4, ScanItems, var="x" ), |
||
13724 | srec(ScanInfoFileName, req_cond="ncp.ctrl_flags==0x0001", repeat="x" ), |
||
13725 | srec(ScanInfoFileNoName, req_cond="ncp.ctrl_flags==0x0000", repeat="x" ), |
||
13726 | ]) |
||
13727 | pkt.ReqCondSizeVariable() |
||
13728 | pkt.CompletionCodes([0x0000, 0x8000, 0x8101, 0x8401, 0x8501, |
||
13729 | 0x8701, 0x8d00, 0x8f00, 0x9001, 0x9600, |
||
13730 | 0x9804, 0x9b03, 0x9c03, 0xbf00, 0xfd00, 0xff16]) |
||
13731 | # 2222/572A, 87/42 |
||
13732 | pkt = NCP(0x572A, "Purge Salvageable File List", 'file', has_length=0) |
||
13733 | pkt.Request(28, [ |
||
13734 | rec( 8, 1, NameSpace ), |
||
13735 | rec( 9, 1, Reserved ), |
||
13736 | rec( 10, 2, PurgeFlags ), |
||
13737 | rec( 12, 4, VolumeNumberLong ), |
||
13738 | rec( 16, 4, DirectoryBase ), |
||
13739 | rec( 20, 4, PurgeCount, var="x" ), |
||
13740 | rec( 24, 4, PurgeList, repeat="x" ), |
||
13741 | ]) |
||
13742 | pkt.Reply(16, [ |
||
13743 | rec( 8, 4, PurgeCount, var="x" ), |
||
13744 | rec( 12, 4, PurgeCcode, repeat="x" ), |
||
13745 | ]) |
||
13746 | pkt.CompletionCodes([0x0000, 0x8000, 0x8101, 0x8401, 0x8501, |
||
13747 | 0x8701, 0x8d00, 0x8f00, 0x9001, 0x9600, |
||
13748 | 0x9804, 0x9b03, 0x9c03, 0xbf00, 0xfd00, 0xff16]) |
||
13749 | # 2222/572B, 87/43 |
||
13750 | pkt = NCP(0x572B, "Revoke File Handle Rights", 'file', has_length=0) |
||
13751 | pkt.Request(17, [ |
||
13752 | rec( 8, 3, Reserved3 ), |
||
13753 | rec( 11, 1, RevQueryFlag ), |
||
13754 | rec( 12, 4, FileHandle ), |
||
13755 | rec( 16, 1, RemoveOpenRights ), |
||
13756 | ]) |
||
13757 | pkt.Reply(13, [ |
||
13758 | rec( 8, 4, FileHandle ), |
||
13759 | rec( 12, 1, OpenRights ), |
||
13760 | ]) |
||
13761 | pkt.CompletionCodes([0x0000, 0x8000, 0x8101, 0x8401, 0x8501, |
||
13762 | 0x8701, 0x8d00, 0x8f00, 0x9001, 0x9600, |
||
13763 | 0x9804, 0x9b03, 0x9c03, 0xbf00, 0xfd00, 0xff16]) |
||
13764 | # 2222/572C, 87/44 |
||
13765 | pkt = NCP(0x572C, "Update File Handle Rights", 'file', has_length=0) |
||
13766 | pkt.Request(24, [ |
||
13767 | rec( 8, 2, Reserved2 ), |
||
13768 | rec( 10, 1, VolumeNumber ), |
||
13769 | rec( 11, 1, NameSpace ), |
||
13770 | rec( 12, 4, DirectoryNumber ), |
||
13771 | rec( 16, 2, AccessRightsMaskWord ), |
||
13772 | rec( 18, 2, NewAccessRights ), |
||
13773 | rec( 20, 4, FileHandle, ENC_BIG_ENDIAN ), |
||
13774 | ]) |
||
13775 | pkt.Reply(16, [ |
||
13776 | rec( 8, 4, FileHandle, ENC_BIG_ENDIAN ), |
||
13777 | rec( 12, 4, EffectiveRights, ENC_LITTLE_ENDIAN ), |
||
13778 | ]) |
||
13779 | pkt.CompletionCodes([0x0000, 0x7300, 0x8000, 0x8101, 0x8401, 0x8501, |
||
13780 | 0x8701, 0x8800, 0x8d00, 0x8f00, 0x9001, 0x9600, |
||
13781 | 0x9804, 0x9b03, 0x9c03, 0xbf00, 0xfd00, 0xff16]) |
||
13782 | pkt.MakeExpert("ncp572c") |
||
13783 | # 2222/5740, 87/64 |
||
13784 | pkt = NCP(0x5740, "Read from File", 'file', has_length=0) |
||
13785 | pkt.Request(22, [ |
||
13786 | rec( 8, 4, FileHandle, ENC_BIG_ENDIAN ), |
||
13787 | rec( 12, 8, StartOffset64bit, ENC_BIG_ENDIAN ), |
||
13788 | rec( 20, 2, NumBytes, ENC_BIG_ENDIAN ), |
||
13789 | ]) |
||
13790 | pkt.Reply(10, [ |
||
13791 | rec( 8, 2, NumBytes, ENC_BIG_ENDIAN), |
||
13792 | ]) |
||
13793 | pkt.CompletionCodes([0x0000, 0x8300, 0x8800, 0x9300, 0x9500, 0xa201, 0xfd00, 0xff1b]) |
||
13794 | # 2222/5741, 87/65 |
||
13795 | pkt = NCP(0x5741, "Write to File", 'file', has_length=0) |
||
13796 | pkt.Request(22, [ |
||
13797 | rec( 8, 4, FileHandle, ENC_BIG_ENDIAN ), |
||
13798 | rec( 12, 8, StartOffset64bit, ENC_BIG_ENDIAN ), |
||
13799 | rec( 20, 2, NumBytes, ENC_BIG_ENDIAN ), |
||
13800 | ]) |
||
13801 | pkt.Reply(8) |
||
13802 | pkt.CompletionCodes([0x0000, 0x0102, 0x8300, 0x8800, 0x9400, 0x9500, 0xa201, 0xfd00, 0xff1b]) |
||
13803 | # 2222/5742, 87/66 |
||
13804 | pkt = NCP(0x5742, "Get Current Size of File", 'file', has_length=0) |
||
13805 | pkt.Request(12, [ |
||
13806 | rec( 8, 4, FileHandle, ENC_BIG_ENDIAN ), |
||
13807 | ]) |
||
13808 | pkt.Reply(16, [ |
||
13809 | rec( 8, 8, FileSize64bit), |
||
13810 | ]) |
||
13811 | pkt.CompletionCodes([0x0000, 0x7f00, 0x8800, 0x9600, 0xfd02, 0xff01]) |
||
13812 | # 2222/5743, 87/67 |
||
13813 | pkt = NCP(0x5743, "Log Physical Record", 'file', has_length=0) |
||
13814 | pkt.Request(36, [ |
||
13815 | rec( 8, 4, LockFlag, ENC_BIG_ENDIAN ), |
||
13816 | rec(12, 4, FileHandle, ENC_BIG_ENDIAN ), |
||
13817 | rec(16, 8, StartOffset64bit, ENC_BIG_ENDIAN ), |
||
13818 | rec(24, 8, Length64bit, ENC_BIG_ENDIAN ), |
||
13819 | rec(32, 4, LockTimeout, ENC_BIG_ENDIAN), |
||
13820 | ]) |
||
13821 | pkt.Reply(8) |
||
13822 | pkt.CompletionCodes([0x0000, 0x7f00, 0x8800, 0x9600, 0xfb08, 0xfd02, 0xff01]) |
||
13823 | # 2222/5744, 87/68 |
||
13824 | pkt = NCP(0x5744, "Release Physical Record", 'file', has_length=0) |
||
13825 | pkt.Request(28, [ |
||
13826 | rec(8, 4, FileHandle, ENC_BIG_ENDIAN ), |
||
13827 | rec(12, 8, StartOffset64bit, ENC_BIG_ENDIAN ), |
||
13828 | rec(20, 8, Length64bit, ENC_BIG_ENDIAN ), |
||
13829 | ]) |
||
13830 | pkt.Reply(8) |
||
13831 | pkt.CompletionCodes([0x0000, 0x7300, 0x8000, 0x8101, 0x8401, 0x8501, |
||
13832 | 0x8701, 0x8800, 0x8d00, 0x8f00, 0x9001, 0x9600, |
||
13833 | 0x9804, 0x9b03, 0x9c03, 0xbf00, 0xfd00, 0xff1a]) |
||
13834 | # 2222/5745, 87/69 |
||
13835 | pkt = NCP(0x5745, "Clear Physical Record", 'file', has_length=0) |
||
13836 | pkt.Request(28, [ |
||
13837 | rec(8, 4, FileHandle, ENC_BIG_ENDIAN ), |
||
13838 | rec(12, 8, StartOffset64bit, ENC_BIG_ENDIAN ), |
||
13839 | rec(20, 8, Length64bit, ENC_BIG_ENDIAN ), |
||
13840 | ]) |
||
13841 | pkt.Reply(8) |
||
13842 | pkt.CompletionCodes([0x0000, 0x7300, 0x8000, 0x8101, 0x8401, 0x8501, |
||
13843 | 0x8701, 0x8800, 0x8d00, 0x8f00, 0x9001, 0x9600, |
||
13844 | 0x9804, 0x9b03, 0x9c03, 0xbf00, 0xfd00, 0xff1a]) |
||
13845 | # 2222/5746, 87/70 |
||
13846 | pkt = NCP(0x5746, "Copy from One File to Another (64 Bit offset capable)", 'file', has_length=0) |
||
13847 | pkt.Request(44, [ |
||
13848 | rec(8, 6, SourceFileHandle, ENC_BIG_ENDIAN ), |
||
13849 | rec(14, 6, TargetFileHandle, ENC_BIG_ENDIAN ), |
||
13850 | rec(20, 8, SourceFileOffset, ENC_BIG_ENDIAN ), |
||
13851 | rec(28, 8, TargetFileOffset64bit, ENC_BIG_ENDIAN ), |
||
13852 | rec(36, 8, BytesToCopy64bit, ENC_BIG_ENDIAN ), |
||
13853 | ]) |
||
13854 | pkt.Reply(16, [ |
||
13855 | rec( 8, 8, BytesActuallyTransferred64bit, ENC_BIG_ENDIAN ), |
||
13856 | ]) |
||
13857 | pkt.CompletionCodes([0x0000, 0x0104, 0x8301, 0x8800, 0x9300, 0x9400, |
||
13858 | 0x9500, 0x9600, 0xa201]) |
||
13859 | # 2222/5747, 87/71 |
||
13860 | pkt = NCP(0x5747, "Get Sparse File Data Block Bit Map", 'file', has_length=0) |
||
13861 | pkt.Request(23, [ |
||
13862 | rec(8, 6, SourceFileHandle, ENC_BIG_ENDIAN ), |
||
13863 | rec(14, 8, SourceFileOffset, ENC_BIG_ENDIAN ), |
||
13864 | rec(22, 1, ExtentListFormat, ENC_BIG_ENDIAN ), |
||
13865 | ]) |
||
13866 | pkt.Reply(NO_LENGTH_CHECK, [ |
||
13867 | rec( 8, 1, ExtentListFormat ), |
||
13868 | rec( 9, 1, RetExtentListCount, var="x" ), |
||
13869 | rec( 10, 8, EndingOffset ), |
||
13870 | srec(zFileMap_Allocation, req_cond="ncp.ext_lst_format==0", repeat="x" ), |
||
13871 | srec(zFileMap_Logical, req_cond="ncp.ext_lst_format==1", repeat="x" ), |
||
13872 | srec(zFileMap_Physical, req_cond="ncp.ext_lst_format==2", repeat="x" ), |
||
13873 | ]) |
||
13874 | pkt.ReqCondSizeVariable() |
||
13875 | pkt.CompletionCodes([0x0000, 0x8800, 0xff00]) |
||
13876 | # 2222/5748, 87/72 |
||
13877 | pkt = NCP(0x5748, "Read a File", 'file', has_length=0) |
||
13878 | pkt.Request(24, [ |
||
13879 | rec( 8, 4, FileHandle, ENC_BIG_ENDIAN ), |
||
13880 | rec( 12, 8, StartOffset64bit, ENC_BIG_ENDIAN ), |
||
13881 | rec( 20, 4, NumBytesLong, ENC_BIG_ENDIAN ), |
||
13882 | ]) |
||
13883 | pkt.Reply(NO_LENGTH_CHECK, [ |
||
13884 | rec( 8, 4, NumBytesLong, ENC_BIG_ENDIAN), |
||
13885 | rec( 12, PROTO_LENGTH_UNKNOWN, Data64), |
||
13886 | #decoded in packet-ncp2222.inc |
||
13887 | # rec( NumBytesLong, 4, BytesActuallyTransferred64bit, ENC_BIG_ENDIAN), |
||
13888 | ]) |
||
13889 | pkt.CompletionCodes([0x0000, 0x8300, 0x8800, 0x9300, 0x9500, 0xa201, 0xfd00, 0xff1b]) |
||
13890 | |||
13891 | # 2222/5749, 87/73 |
||
13892 | pkt = NCP(0x5749, "Write to a File", 'file', has_length=0) |
||
13893 | pkt.Request(24, [ |
||
13894 | rec( 8, 4, FileHandle, ENC_BIG_ENDIAN ), |
||
13895 | rec( 12, 8, StartOffset64bit, ENC_BIG_ENDIAN ), |
||
13896 | rec( 20, 4, NumBytesLong, ENC_BIG_ENDIAN ), |
||
13897 | ]) |
||
13898 | pkt.Reply(8) |
||
13899 | pkt.CompletionCodes([0x0000, 0x0102, 0x8300, 0x8800, 0x9400, 0x9500, 0xa201, 0xfd00, 0xff1b]) |
||
13900 | |||
13901 | # 2222/5801, 8801 |
||
13902 | pkt = NCP(0x5801, "Query Volume Audit Status", "auditing", has_length=0) |
||
13903 | pkt.Request(12, [ |
||
13904 | rec( 8, 4, ConnectionNumber ), |
||
13905 | ]) |
||
13906 | pkt.Reply(40, [ |
||
13907 | rec(8, 32, NWAuditStatus ), |
||
13908 | ]) |
||
13909 | pkt.CompletionCodes([0x0000, 0x0106, 0x7300, 0x8000, 0x8101, 0x8401, 0x8501, |
||
13910 | 0x8701, 0x8800, 0x8d00, 0x8f00, 0x9001, 0x9600, |
||
13911 | 0x9804, 0x9b03, 0x9c03, 0xa600, 0xa700, 0xa801, 0xbe00, 0xfd00, 0xff16]) |
||
13912 | # 2222/5802, 8802 |
||
13913 | pkt = NCP(0x5802, "Add User Audit Property", "auditing", has_length=0) |
||
13914 | pkt.Request(25, [ |
||
13915 | rec(8, 4, AuditIDType ), |
||
13916 | rec(12, 4, AuditID ), |
||
13917 | rec(16, 4, AuditHandle ), |
||
13918 | rec(20, 4, ObjectID ), |
||
13919 | rec(24, 1, AuditFlag ), |
||
13920 | ]) |
||
13921 | pkt.Reply(8) |
||
13922 | pkt.CompletionCodes([0x0000, 0x0106, 0x7300, 0x8000, 0x8101, 0x8401, 0x8501, |
||
13923 | 0x8701, 0x8800, 0x8d00, 0x8f00, 0x9001, 0x9600, |
||
13924 | 0x9804, 0x9b03, 0x9c03, 0xa600, 0xa700, 0xa801, 0xbe00, 0xfd00, 0xff16]) |
||
13925 | # 2222/5803, 8803 |
||
13926 | pkt = NCP(0x5803, "Add Auditor Access", "auditing", has_length=0) |
||
13927 | pkt.Request(8) |
||
13928 | pkt.Reply(8) |
||
13929 | pkt.CompletionCodes([0x0000, 0x0106, 0x7300, 0x8000, 0x8101, 0x8401, 0x8501, |
||
13930 | 0x8701, 0x8800, 0x8d00, 0x8f00, 0x9001, 0x9600, |
||
13931 | 0x9804, 0x9b03, 0x9c03, 0xa600, 0xa700, 0xa801, 0xbe00, 0xde00, 0xfd00, 0xff16]) |
||
13932 | # 2222/5804, 8804 |
||
13933 | pkt = NCP(0x5804, "Change Auditor Volume Password", "auditing", has_length=0) |
||
13934 | pkt.Request(8) |
||
13935 | pkt.Reply(8) |
||
13936 | pkt.CompletionCodes([0x0000, 0x0106, 0x7300, 0x8000, 0x8101, 0x8401, 0x8501, |
||
13937 | 0x8701, 0x8800, 0x8d00, 0x8f00, 0x9001, 0x9600, |
||
13938 | 0x9804, 0x9b03, 0x9c03, 0xa600, 0xa700, 0xa801, 0xbe00, 0xfd00, 0xff16]) |
||
13939 | # 2222/5805, 8805 |
||
13940 | pkt = NCP(0x5805, "Check Auditor Access", "auditing", has_length=0) |
||
13941 | pkt.Request(8) |
||
13942 | pkt.Reply(8) |
||
13943 | pkt.CompletionCodes([0x0000, 0x0106, 0x7300, 0x8000, 0x8101, 0x8401, 0x8501, |
||
13944 | 0x8701, 0x8800, 0x8d00, 0x8f00, 0x9001, 0x9600, |
||
13945 | 0x9804, 0x9b03, 0x9c03, 0xa600, 0xa700, 0xa801, 0xbe00, 0xfd00, 0xff16]) |
||
13946 | # 2222/5806, 8806 |
||
13947 | pkt = NCP(0x5806, "Delete User Audit Property", "auditing", has_length=0) |
||
13948 | pkt.Request(8) |
||
13949 | pkt.Reply(8) |
||
13950 | pkt.CompletionCodes([0x0000, 0x0106, 0x7300, 0x8000, 0x8101, 0x8401, 0x8501, |
||
13951 | 0x8701, 0x8800, 0x8d00, 0x8f00, 0x9001, 0x9600, |
||
13952 | 0x9804, 0x9b03, 0x9c03, 0xa600, 0xa700, 0xa801, 0xbe00, 0xfd00, 0xff21]) |
||
13953 | # 2222/5807, 8807 |
||
13954 | pkt = NCP(0x5807, "Disable Auditing On A Volume", "auditing", has_length=0) |
||
13955 | pkt.Request(8) |
||
13956 | pkt.Reply(8) |
||
13957 | pkt.CompletionCodes([0x0000, 0x0106, 0x7300, 0x8000, 0x8101, 0x8401, 0x8501, |
||
13958 | 0x8701, 0x8800, 0x8d00, 0x8f00, 0x9001, 0x9600, |
||
13959 | 0x9804, 0x9b03, 0x9c03, 0xa600, 0xa700, 0xa801, 0xbe00, 0xfd00, 0xff16]) |
||
13960 | # 2222/5808, 8808 |
||
13961 | pkt = NCP(0x5808, "Enable Auditing On A Volume", "auditing", has_length=0) |
||
13962 | pkt.Request(8) |
||
13963 | pkt.Reply(8) |
||
13964 | pkt.CompletionCodes([0x0000, 0x0106, 0x7300, 0x8000, 0x8101, 0x8401, 0x8501, |
||
13965 | 0x8701, 0x8800, 0x8d00, 0x8f00, 0x9001, 0x9600, |
||
13966 | 0x9804, 0x9b03, 0x9c03, 0xa600, 0xa700, 0xa801, 0xbe00, 0xde00, 0xfd00, 0xff16]) |
||
13967 | # 2222/5809, 8809 |
||
13968 | pkt = NCP(0x5809, "Query User Being Audited", "auditing", has_length=0) |
||
13969 | pkt.Request(8) |
||
13970 | pkt.Reply(8) |
||
13971 | pkt.CompletionCodes([0x0000, 0x0106, 0x7300, 0x8000, 0x8101, 0x8401, 0x8501, |
||
13972 | 0x8701, 0x8800, 0x8d00, 0x8f00, 0x9001, 0x9600, |
||
13973 | 0x9804, 0x9b03, 0x9c03, 0xa600, 0xa700, 0xa801, 0xbe00, 0xfd00, 0xff16]) |
||
13974 | # 2222/580A, 88,10 |
||
13975 | pkt = NCP(0x580A, "Read Audit Bit Map", "auditing", has_length=0) |
||
13976 | pkt.Request(8) |
||
13977 | pkt.Reply(8) |
||
13978 | pkt.CompletionCodes([0x0000, 0x0106, 0x7300, 0x8000, 0x8101, 0x8401, 0x8501, |
||
13979 | 0x8701, 0x8800, 0x8d00, 0x8f00, 0x9001, 0x9600, |
||
13980 | 0x9804, 0x9b03, 0x9c03, 0xa600, 0xa700, 0xa801, 0xbe00, 0xfd00, 0xff16]) |
||
13981 | # 2222/580B, 88,11 |
||
13982 | pkt = NCP(0x580B, "Read Audit File Configuration Header", "auditing", has_length=0) |
||
13983 | pkt.Request(8) |
||
13984 | pkt.Reply(8) |
||
13985 | pkt.CompletionCodes([0x0000, 0x0106, 0x7300, 0x8000, 0x8101, 0x8401, 0x8501, |
||
13986 | 0x8701, 0x8800, 0x8d00, 0x8f00, 0x9001, 0x9600, |
||
13987 | 0x9804, 0x9b03, 0x9c03, 0xa600, 0xa700, 0xa801, 0xbe00, 0xfd00, 0xff16]) |
||
13988 | # 2222/580D, 88,13 |
||
13989 | pkt = NCP(0x580D, "Remove Auditor Access", "auditing", has_length=0) |
||
13990 | pkt.Request(8) |
||
13991 | pkt.Reply(8) |
||
13992 | pkt.CompletionCodes([0x0000, 0x0106, 0x7300, 0x8000, 0x8101, 0x8401, 0x8501, |
||
13993 | 0x8701, 0x8800, 0x8d00, 0x8f00, 0x9001, 0x9600, |
||
13994 | 0x9804, 0x9b03, 0x9c03, 0xa600, 0xa700, 0xa801, 0xbe00, 0xfd00, 0xff16]) |
||
13995 | # 2222/580E, 88,14 |
||
13996 | pkt = NCP(0x580E, "Reset Audit File", "auditing", has_length=0) |
||
13997 | pkt.Request(8) |
||
13998 | pkt.Reply(8) |
||
13999 | pkt.CompletionCodes([0x0000, 0x0106, 0x7300, 0x8000, 0x8101, 0x8401, 0x8501, |
||
14000 | 0x8701, 0x8800, 0x8d00, 0x8f00, 0x9001, 0x9600, |
||
14001 | 0x9804, 0x9b03, 0x9c03, 0xa600, 0xa700, 0xa801, 0xbe00, 0xfd00, 0xff16]) |
||
14002 | |||
14003 | # 2222/580F, 88,15 |
||
14004 | pkt = NCP(0x580F, "Auditing NCP", "auditing", has_length=0) |
||
14005 | pkt.Request(8) |
||
14006 | pkt.Reply(8) |
||
14007 | pkt.CompletionCodes([0x0000, 0x0106, 0x7300, 0x8000, 0x8101, 0x8401, 0x8501, |
||
14008 | 0x8701, 0x8800, 0x8d00, 0x8f00, 0x9001, 0x9600, |
||
14009 | 0x9804, 0x9b03, 0x9c03, 0xa600, 0xa700, 0xa801, 0xbe00, 0xfb00, 0xfd00, 0xff16]) |
||
14010 | # 2222/5810, 88,16 |
||
14011 | pkt = NCP(0x5810, "Write Audit Bit Map", "auditing", has_length=0) |
||
14012 | pkt.Request(8) |
||
14013 | pkt.Reply(8) |
||
14014 | pkt.CompletionCodes([0x0000, 0x0106, 0x7300, 0x8000, 0x8101, 0x8401, 0x8501, |
||
14015 | 0x8701, 0x8800, 0x8d00, 0x8f00, 0x9001, 0x9600, |
||
14016 | 0x9804, 0x9b03, 0x9c03, 0xa600, 0xa700, 0xa801, 0xbe00, 0xfd00, 0xff16]) |
||
14017 | # 2222/5811, 88,17 |
||
14018 | pkt = NCP(0x5811, "Write Audit File Configuration Header", "auditing", has_length=0) |
||
14019 | pkt.Request(8) |
||
14020 | pkt.Reply(8) |
||
14021 | pkt.CompletionCodes([0x0000, 0x0106, 0x7300, 0x8000, 0x8101, 0x8401, 0x8501, |
||
14022 | 0x8701, 0x8800, 0x8d00, 0x8f00, 0x9001, 0x9600, |
||
14023 | 0x9804, 0x9b03, 0x9c03, 0xa600, 0xa700, 0xa801, 0xbe00, 0xfd00, 0xff16]) |
||
14024 | # 2222/5812, 88,18 |
||
14025 | pkt = NCP(0x5812, "Change Auditor Volume Password2", "auditing", has_length=0) |
||
14026 | pkt.Request(8) |
||
14027 | pkt.Reply(8) |
||
14028 | pkt.CompletionCodes([0x0000, 0x0106, 0x7300, 0x8000, 0x8101, 0x8401, 0x8501, |
||
14029 | 0x8701, 0x8800, 0x8d00, 0x8f00, 0x9001, 0x9600, |
||
14030 | 0x9804, 0x9b03, 0x9c03, 0xa600, 0xa700, 0xa801, 0xbe00, 0xfd00, 0xff16]) |
||
14031 | # 2222/5813, 88,19 |
||
14032 | pkt = NCP(0x5813, "Return Audit Flags", "auditing", has_length=0) |
||
14033 | pkt.Request(8) |
||
14034 | pkt.Reply(8) |
||
14035 | pkt.CompletionCodes([0x0000, 0x0106, 0x7300, 0x8000, 0x8101, 0x8401, 0x8501, |
||
14036 | 0x8701, 0x8800, 0x8d00, 0x8f00, 0x9001, 0x9600, |
||
14037 | 0x9804, 0x9b03, 0x9c03, 0xa600, 0xa700, 0xa801, 0xbe00, 0xfd00, 0xff16]) |
||
14038 | # 2222/5814, 88,20 |
||
14039 | pkt = NCP(0x5814, "Close Old Audit File", "auditing", has_length=0) |
||
14040 | pkt.Request(8) |
||
14041 | pkt.Reply(8) |
||
14042 | pkt.CompletionCodes([0x0000, 0x0106, 0x7300, 0x8000, 0x8101, 0x8401, 0x8501, |
||
14043 | 0x8701, 0x8800, 0x8d00, 0x8f00, 0x9001, 0x9600, |
||
14044 | 0x9804, 0x9b03, 0x9c03, 0xa600, 0xa700, 0xa801, 0xbe00, 0xfd00, 0xff16]) |
||
14045 | # 2222/5816, 88,22 |
||
14046 | pkt = NCP(0x5816, "Check Level Two Access", "auditing", has_length=0) |
||
14047 | pkt.Request(8) |
||
14048 | pkt.Reply(8) |
||
14049 | pkt.CompletionCodes([0x0000, 0x0106, 0x7300, 0x8000, 0x8101, 0x8401, 0x8501, |
||
14050 | 0x8701, 0x8800, 0x8d00, 0x8f00, 0x9001, 0x9600, |
||
14051 | 0x9804, 0x9b03, 0x9c03, 0xa600, 0xa700, 0xa801, 0xbe00, 0xde00, 0xfd00, 0xff16]) |
||
14052 | # 2222/5817, 88,23 |
||
14053 | pkt = NCP(0x5817, "Return Old Audit File List", "auditing", has_length=0) |
||
14054 | pkt.Request(8) |
||
14055 | pkt.Reply(8) |
||
14056 | pkt.CompletionCodes([0x0000, 0x0106, 0x7300, 0x8000, 0x8101, 0x8401, 0x8501, |
||
14057 | 0x8701, 0x8800, 0x8d00, 0x8f00, 0x9001, 0x9600, |
||
14058 | 0x9804, 0x9b03, 0x9c03, 0xa600, 0xa700, 0xa801, 0xbe00, 0xfd00, 0xff16]) |
||
14059 | # 2222/5818, 88,24 |
||
14060 | pkt = NCP(0x5818, "Init Audit File Reads", "auditing", has_length=0) |
||
14061 | pkt.Request(8) |
||
14062 | pkt.Reply(8) |
||
14063 | pkt.CompletionCodes([0x0000, 0x0106, 0x7300, 0x8000, 0x8101, 0x8401, 0x8501, |
||
14064 | 0x8701, 0x8800, 0x8d00, 0x8f00, 0x9001, 0x9600, |
||
14065 | 0x9804, 0x9b03, 0x9c03, 0xa600, 0xa700, 0xa801, 0xbe00, 0xfd00, 0xff16]) |
||
14066 | # 2222/5819, 88,25 |
||
14067 | pkt = NCP(0x5819, "Read Auditing File", "auditing", has_length=0) |
||
14068 | pkt.Request(8) |
||
14069 | pkt.Reply(8) |
||
14070 | pkt.CompletionCodes([0x0000, 0x0106, 0x7300, 0x8000, 0x8101, 0x8401, 0x8501, |
||
14071 | 0x8701, 0x8800, 0x8d00, 0x8f00, 0x9001, 0x9600, |
||
14072 | 0x9804, 0x9b03, 0x9c03, 0xa600, 0xa700, 0xa801, 0xbe00, 0xfd00, 0xff16]) |
||
14073 | # 2222/581A, 88,26 |
||
14074 | pkt = NCP(0x581A, "Delete Old Audit File", "auditing", has_length=0) |
||
14075 | pkt.Request(8) |
||
14076 | pkt.Reply(8) |
||
14077 | pkt.CompletionCodes([0x0000, 0x0106, 0x7300, 0x8000, 0x8101, 0x8401, 0x8501, |
||
14078 | 0x8701, 0x8800, 0x8d00, 0x8f00, 0x9001, 0x9600, |
||
14079 | 0x9804, 0x9b03, 0x9c03, 0xa600, 0xa700, 0xa801, 0xbe00, 0xfd00, 0xff16]) |
||
14080 | # 2222/581E, 88,30 |
||
14081 | pkt = NCP(0x581E, "Restart Volume auditing", "auditing", has_length=0) |
||
14082 | pkt.Request(8) |
||
14083 | pkt.Reply(8) |
||
14084 | pkt.CompletionCodes([0x0000, 0x0106, 0x7300, 0x8000, 0x8101, 0x8401, 0x8501, |
||
14085 | 0x8701, 0x8800, 0x8d00, 0x8f00, 0x9001, 0x9600, |
||
14086 | 0x9804, 0x9b03, 0x9c03, 0xa600, 0xa700, 0xa801, 0xbe00, 0xfd00, 0xff16]) |
||
14087 | # 2222/581F, 88,31 |
||
14088 | pkt = NCP(0x581F, "Set Volume Password", "auditing", has_length=0) |
||
14089 | pkt.Request(8) |
||
14090 | pkt.Reply(8) |
||
14091 | pkt.CompletionCodes([0x0000, 0x0106, 0x7300, 0x8000, 0x8101, 0x8401, 0x8501, |
||
14092 | 0x8701, 0x8800, 0x8d00, 0x8f00, 0x9001, 0x9600, |
||
14093 | 0x9804, 0x9b03, 0x9c03, 0xa600, 0xa700, 0xa801, 0xbe00, 0xfd00, 0xff16]) |
||
14094 | # 2222/5901, 89,01 |
||
14095 | pkt = NCP(0x5901, "Open/Create File or Subdirectory", "enhanced", has_length=0) |
||
14096 | pkt.Request((37,290), [ |
||
14097 | rec( 8, 1, NameSpace ), |
||
14098 | rec( 9, 1, OpenCreateMode ), |
||
14099 | rec( 10, 2, SearchAttributesLow ), |
||
14100 | rec( 12, 2, ReturnInfoMask ), |
||
14101 | rec( 14, 2, ExtendedInfo ), |
||
14102 | rec( 16, 4, AttributesDef32 ), |
||
14103 | rec( 20, 2, DesiredAccessRights ), |
||
14104 | rec( 22, 4, DirectoryBase ), |
||
14105 | rec( 26, 1, VolumeNumber ), |
||
14106 | rec( 27, 1, HandleFlag ), |
||
14107 | rec( 28, 1, DataTypeFlag ), |
||
14108 | rec( 29, 5, Reserved5 ), |
||
14109 | rec( 34, 1, PathCount, var="x" ), |
||
14110 | rec( 35, (2,255), Path16, repeat="x", info_str=(Path16, "Open or Create File or Subdirectory: %s", "/%s") ), |
||
14111 | ]) |
||
14112 | pkt.Reply( NO_LENGTH_CHECK, [ |
||
14113 | rec( 8, 4, FileHandle, ENC_BIG_ENDIAN ), |
||
14114 | rec( 12, 1, OpenCreateAction ), |
||
14115 | rec( 13, 1, Reserved ), |
||
14116 | srec( DSSpaceAllocateStruct, req_cond="(ncp.ret_info_mask != 0x0000) && (ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_alloc == 1)" ), |
||
14117 | srec( PadDSSpaceAllocate, req_cond="(ncp.ret_info_mask != 0x0000) && (ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_alloc == 0)" ), |
||
14118 | srec( AttributesStruct, req_cond="(ncp.ret_info_mask != 0x0000) && (ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_attr == 1)" ), |
||
14119 | srec( PadAttributes, req_cond="(ncp.ret_info_mask != 0x0000) && (ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_attr == 0)" ), |
||
14120 | srec( DataStreamSizeStruct, req_cond="(ncp.ret_info_mask != 0x0000) && (ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_size == 1)" ), |
||
14121 | srec( PadDataStreamSize, req_cond="(ncp.ret_info_mask != 0x0000) && (ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_size == 0)" ), |
||
14122 | srec( TotalStreamSizeStruct, req_cond="(ncp.ret_info_mask != 0x0000) && (ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_tspace == 1)" ), |
||
14123 | srec( PadTotalStreamSize, req_cond="(ncp.ret_info_mask != 0x0000) && (ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_tspace == 0)" ), |
||
14124 | srec( CreationInfoStruct, req_cond="(ncp.ret_info_mask != 0x0000) && (ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_create == 1)" ), |
||
14125 | srec( PadCreationInfo, req_cond="(ncp.ret_info_mask != 0x0000) && (ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_create == 0)" ), |
||
14126 | srec( ModifyInfoStruct, req_cond="(ncp.ret_info_mask != 0x0000) && (ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_mod == 1)" ), |
||
14127 | srec( PadModifyInfo, req_cond="(ncp.ret_info_mask != 0x0000) && (ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_mod == 0)" ), |
||
14128 | srec( ArchiveInfoStruct, req_cond="(ncp.ret_info_mask != 0x0000) && (ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_arch == 1)" ), |
||
14129 | srec( PadArchiveInfo, req_cond="(ncp.ret_info_mask != 0x0000) && (ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_arch == 0)" ), |
||
14130 | srec( RightsInfoStruct, req_cond="(ncp.ret_info_mask != 0x0000) && (ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_rights == 1)" ), |
||
14131 | srec( PadRightsInfo, req_cond="(ncp.ret_info_mask != 0x0000) && (ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_rights == 0)" ), |
||
14132 | srec( DirEntryStruct, req_cond="(ncp.ret_info_mask != 0x0000) && (ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_dir == 1)" ), |
||
14133 | srec( PadDirEntry, req_cond="(ncp.ret_info_mask != 0x0000) && (ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_dir == 0)" ), |
||
14134 | srec( EAInfoStruct, req_cond="(ncp.ret_info_mask != 0x0000) && (ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_eattr == 1)" ), |
||
14135 | srec( PadEAInfo, req_cond="(ncp.ret_info_mask != 0x0000) && (ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_eattr == 0)" ), |
||
14136 | srec( NSInfoStruct, req_cond="(ncp.ret_info_mask != 0x0000) && (ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_ns == 1)" ), |
||
14137 | srec( PadNSInfo, req_cond="(ncp.ret_info_mask != 0x0000) && (ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_ns == 0)" ), |
||
14138 | srec( DSSpaceAllocateStruct, req_cond="(ncp.ext_info_newstyle == 1) && (ncp.ret_info_mask_alloc == 1)" ), |
||
14139 | srec( AttributesStruct, req_cond="(ncp.ext_info_newstyle == 1) && (ncp.ret_info_mask_attr == 1)" ), |
||
14140 | srec( DataStreamSizeStruct, req_cond="(ncp.ext_info_newstyle == 1) && (ncp.ret_info_mask_size == 1)" ), |
||
14141 | srec( TotalStreamSizeStruct, req_cond="(ncp.ext_info_newstyle == 1) && (ncp.ret_info_mask_tspace == 1)" ), |
||
14142 | srec( EAInfoStruct, req_cond="(ncp.ext_info_newstyle == 1) && (ncp.ret_info_mask_eattr == 1)" ), |
||
14143 | srec( ModifyInfoStruct, req_cond="(ncp.ext_info_newstyle == 1) && (ncp.ret_info_mask_mod == 1)" ), |
||
14144 | srec( CreationInfoStruct, req_cond="(ncp.ext_info_newstyle == 1) && (ncp.ret_info_mask_create == 1)" ), |
||
14145 | srec( ArchiveInfoStruct, req_cond="(ncp.ext_info_newstyle == 1) && (ncp.ret_info_mask_arch == 1)" ), |
||
14146 | srec( DirEntryStruct, req_cond="(ncp.ext_info_newstyle == 1) && (ncp.ret_info_mask_dir == 1)" ), |
||
14147 | srec( RightsInfoStruct, req_cond="(ncp.ext_info_newstyle == 1) && (ncp.ret_info_mask_rights == 1)" ), |
||
14148 | srec( NSInfoStruct, req_cond="(ncp.ext_info_newstyle == 1) && (ncp.ret_info_mask_ns == 1)" ), |
||
14149 | srec( ReferenceIDStruct, req_cond="ncp.ret_info_mask_id == 1" ), |
||
14150 | srec( NSAttributeStruct, req_cond="ncp.ret_info_mask_ns_attr == 1" ), |
||
14151 | rec( -1, 4, DataStreamsCount, var="x" , req_cond="ncp.ret_info_mask_actual == 1" ), |
||
14152 | srec( DStreamActual, repeat = "x" , req_cond="ncp.ret_info_mask_actual == 1" ), |
||
14153 | rec( -1, 4, DataStreamsCount, var="y", req_cond="ncp.ret_info_mask_logical == 1" ), |
||
14154 | srec( DStreamLogical, repeat="y" , req_cond="ncp.ret_info_mask_logical == 1" ), |
||
14155 | srec( LastUpdatedInSecondsStruct, req_cond="ncp.ext_info_update == 1" ), |
||
14156 | srec( DOSName16Struct, req_cond="ncp.ext_info_dos_name == 1" ), |
||
14157 | srec( FlushTimeStruct, req_cond="ncp.ext_info_flush == 1" ), |
||
14158 | srec( ParentBaseIDStruct, req_cond="ncp.ext_info_parental == 1" ), |
||
14159 | srec( MacFinderInfoStruct, req_cond="ncp.ext_info_mac_finder == 1" ), |
||
14160 | srec( SiblingCountStruct, req_cond="ncp.ext_info_sibling == 1" ), |
||
14161 | srec( EffectiveRightsStruct, req_cond="ncp.ext_info_effective == 1" ), |
||
14162 | srec( MacTimeStruct, req_cond="ncp.ext_info_mac_date == 1" ), |
||
14163 | srec( LastAccessedTimeStruct, req_cond="ncp.ext_info_access == 1" ), |
||
14164 | srec( FileSize64bitStruct, req_cond="ncp.ext_info_64_bit_fs == 1" ), |
||
14165 | srec( FileName16Struct, req_cond="ncp.ret_info_mask_fname == 1" ), |
||
14166 | ]) |
||
14167 | pkt.ReqCondSizeVariable() |
||
14168 | pkt.CompletionCodes([0x0000, 0x0102, 0x7f00, 0x8000, 0x8101, 0x8401, 0x8501, |
||
14169 | 0x8701, 0x8d00, 0x8f00, 0x9001, 0x9600, |
||
14170 | 0x9804, 0x9900, 0x9b03, 0x9c03, 0xa901, 0xa500, 0xaa00, 0xbf00, 0xfd00, 0xff16]) |
||
14171 | pkt.MakeExpert("file_rights") |
||
14172 | # 2222/5902, 89/02 |
||
14173 | pkt = NCP(0x5902, "Initialize Search", 'enhanced', has_length=0) |
||
14174 | pkt.Request( (25,278), [ |
||
14175 | rec( 8, 1, NameSpace ), |
||
14176 | rec( 9, 1, Reserved ), |
||
14177 | rec( 10, 4, DirectoryBase ), |
||
14178 | rec( 14, 1, VolumeNumber ), |
||
14179 | rec( 15, 1, HandleFlag ), |
||
14180 | rec( 16, 1, DataTypeFlag ), |
||
14181 | rec( 17, 5, Reserved5 ), |
||
14182 | rec( 22, 1, PathCount, var="x" ), |
||
14183 | rec( 23, (2,255), Path16, repeat="x", info_str=(Path16, "Set Search Pointer to: %s", "/%s") ), |
||
14184 | ]) |
||
14185 | pkt.Reply(17, [ |
||
14186 | rec( 8, 1, VolumeNumber ), |
||
14187 | rec( 9, 4, DirectoryNumber ), |
||
14188 | rec( 13, 4, DirectoryEntryNumber ), |
||
14189 | ]) |
||
14190 | pkt.CompletionCodes([0x0000, 0x8000, 0x8101, 0x8401, 0x8501, |
||
14191 | 0x8701, 0x8d00, 0x8f00, 0x9001, 0x9600, |
||
14192 | 0x9804, 0x9b03, 0x9c03, 0xa901, 0xaa00, 0xbf00, 0xfd00, 0xff16]) |
||
14193 | # 2222/5903, 89/03 |
||
14194 | pkt = NCP(0x5903, "Search for File or Subdirectory", 'enhanced', has_length=0) |
||
14195 | pkt.Request(26, [ |
||
14196 | rec( 8, 1, NameSpace ), |
||
14197 | rec( 9, 1, DataStream ), |
||
14198 | rec( 10, 2, SearchAttributesLow ), |
||
14199 | rec( 12, 2, ReturnInfoMask ), |
||
14200 | rec( 14, 2, ExtendedInfo ), |
||
14201 | rec( 16, 9, SeachSequenceStruct ), |
||
14202 | rec( 25, 1, DataTypeFlag ), |
||
14203 | # next field is dissected in packet-ncp2222.inc |
||
14204 | #rec( 26, (2,255), SearchPattern16, info_str=(SearchPattern16, "Search for: %s", "/%s") ), |
||
14205 | ]) |
||
14206 | pkt.Reply( NO_LENGTH_CHECK, [ |
||
14207 | rec( 8, 9, SeachSequenceStruct ), |
||
14208 | rec( 17, 1, Reserved ), |
||
14209 | srec( DSSpaceAllocateStruct, req_cond="(ncp.ret_info_mask != 0x0000) && (ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_alloc == 1)" ), |
||
14210 | srec( PadDSSpaceAllocate, req_cond="(ncp.ret_info_mask != 0x0000) && (ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_alloc == 0)" ), |
||
14211 | srec( AttributesStruct, req_cond="(ncp.ret_info_mask != 0x0000) && (ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_attr == 1)" ), |
||
14212 | srec( PadAttributes, req_cond="(ncp.ret_info_mask != 0x0000) && (ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_attr == 0)" ), |
||
14213 | srec( DataStreamSizeStruct, req_cond="(ncp.ret_info_mask != 0x0000) && (ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_size == 1)" ), |
||
14214 | srec( PadDataStreamSize, req_cond="(ncp.ret_info_mask != 0x0000) && (ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_size == 0)" ), |
||
14215 | srec( TotalStreamSizeStruct, req_cond="(ncp.ret_info_mask != 0x0000) && (ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_tspace == 1)" ), |
||
14216 | srec( PadTotalStreamSize, req_cond="(ncp.ret_info_mask != 0x0000) && (ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_tspace == 0)" ), |
||
14217 | srec( CreationInfoStruct, req_cond="(ncp.ret_info_mask != 0x0000) && (ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_create == 1)" ), |
||
14218 | srec( PadCreationInfo, req_cond="(ncp.ret_info_mask != 0x0000) && (ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_create == 0)" ), |
||
14219 | srec( ModifyInfoStruct, req_cond="(ncp.ret_info_mask != 0x0000) && (ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_mod == 1)" ), |
||
14220 | srec( PadModifyInfo, req_cond="(ncp.ret_info_mask != 0x0000) && (ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_mod == 0)" ), |
||
14221 | srec( ArchiveInfoStruct, req_cond="(ncp.ret_info_mask != 0x0000) && (ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_arch == 1)" ), |
||
14222 | srec( PadArchiveInfo, req_cond="(ncp.ret_info_mask != 0x0000) && (ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_arch == 0)" ), |
||
14223 | srec( RightsInfoStruct, req_cond="(ncp.ret_info_mask != 0x0000) && (ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_rights == 1)" ), |
||
14224 | srec( PadRightsInfo, req_cond="(ncp.ret_info_mask != 0x0000) && (ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_rights == 0)" ), |
||
14225 | srec( DirEntryStruct, req_cond="(ncp.ret_info_mask != 0x0000) && (ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_dir == 1)" ), |
||
14226 | srec( PadDirEntry, req_cond="(ncp.ret_info_mask != 0x0000) && (ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_dir == 0)" ), |
||
14227 | srec( EAInfoStruct, req_cond="(ncp.ret_info_mask != 0x0000) && (ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_eattr == 1)" ), |
||
14228 | srec( PadEAInfo, req_cond="(ncp.ret_info_mask != 0x0000) && (ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_eattr == 0)" ), |
||
14229 | srec( NSInfoStruct, req_cond="(ncp.ret_info_mask != 0x0000) && (ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_ns == 1)" ), |
||
14230 | srec( PadNSInfo, req_cond="(ncp.ret_info_mask != 0x0000) && (ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_ns == 0)" ), |
||
14231 | srec( DSSpaceAllocateStruct, req_cond="(ncp.ext_info_newstyle == 1) && (ncp.ret_info_mask_alloc == 1)" ), |
||
14232 | srec( AttributesStruct, req_cond="(ncp.ext_info_newstyle == 1) && (ncp.ret_info_mask_attr == 1)" ), |
||
14233 | srec( DataStreamSizeStruct, req_cond="(ncp.ext_info_newstyle == 1) && (ncp.ret_info_mask_size == 1)" ), |
||
14234 | srec( TotalStreamSizeStruct, req_cond="(ncp.ext_info_newstyle == 1) && (ncp.ret_info_mask_tspace == 1)" ), |
||
14235 | srec( EAInfoStruct, req_cond="(ncp.ext_info_newstyle == 1) && (ncp.ret_info_mask_eattr == 1)" ), |
||
14236 | srec( ArchiveInfoStruct, req_cond="(ncp.ext_info_newstyle == 1) && (ncp.ret_info_mask_arch == 1)" ), |
||
14237 | srec( ModifyInfoStruct, req_cond="(ncp.ext_info_newstyle == 1) && (ncp.ret_info_mask_mod == 1)" ), |
||
14238 | srec( CreationInfoStruct, req_cond="(ncp.ext_info_newstyle == 1) && (ncp.ret_info_mask_create == 1)" ), |
||
14239 | srec( NSInfoStruct, req_cond="(ncp.ext_info_newstyle == 1) && (ncp.ret_info_mask_ns == 1)" ), |
||
14240 | srec( DirEntryStruct, req_cond="(ncp.ext_info_newstyle == 1) && (ncp.ret_info_mask_dir == 1)" ), |
||
14241 | srec( RightsInfoStruct, req_cond="(ncp.ext_info_newstyle == 1) && (ncp.ret_info_mask_rights == 1)" ), |
||
14242 | srec( ReferenceIDStruct, req_cond="ncp.ret_info_mask_id == 1" ), |
||
14243 | srec( NSAttributeStruct, req_cond="ncp.ret_info_mask_ns_attr == 1" ), |
||
14244 | rec( -1, 4, DataStreamsCount, var="x" , req_cond="ncp.ret_info_mask_actual == 1" ), |
||
14245 | srec( DStreamActual, repeat = "x" , req_cond="ncp.ret_info_mask_actual == 1" ), |
||
14246 | rec( -1, 4, DataStreamsCount, var="y", req_cond="ncp.ret_info_mask_logical == 1" ), |
||
14247 | srec( DStreamLogical, repeat="y" , req_cond="ncp.ret_info_mask_logical == 1" ), |
||
14248 | srec( LastUpdatedInSecondsStruct, req_cond="ncp.ext_info_update == 1" ), |
||
14249 | srec( DOSName16Struct, req_cond="ncp.ext_info_dos_name == 1" ), |
||
14250 | srec( FlushTimeStruct, req_cond="ncp.ext_info_flush == 1" ), |
||
14251 | srec( ParentBaseIDStruct, req_cond="ncp.ext_info_parental == 1" ), |
||
14252 | srec( MacFinderInfoStruct, req_cond="ncp.ext_info_mac_finder == 1" ), |
||
14253 | srec( SiblingCountStruct, req_cond="ncp.ext_info_sibling == 1" ), |
||
14254 | srec( EffectiveRightsStruct, req_cond="ncp.ext_info_effective == 1" ), |
||
14255 | srec( MacTimeStruct, req_cond="ncp.ext_info_mac_date == 1" ), |
||
14256 | srec( LastAccessedTimeStruct, req_cond="ncp.ext_info_access == 1" ), |
||
14257 | srec( FileSize64bitStruct, req_cond="ncp.ext_info_64_bit_fs == 1" ), |
||
14258 | srec( FileName16Struct, req_cond="ncp.ret_info_mask_fname == 1" ), |
||
14259 | ]) |
||
14260 | pkt.ReqCondSizeVariable() |
||
14261 | pkt.CompletionCodes([0x0000, 0x8000, 0x8101, 0x8401, 0x8501, |
||
14262 | 0x8701, 0x8d00, 0x8f00, 0x9001, 0x9600, |
||
14263 | 0x9804, 0x9b03, 0x9c03, 0xa901, 0xaa00, 0xbf00, 0xfd00, 0xff16]) |
||
14264 | # 2222/5904, 89/04 |
||
14265 | pkt = NCP(0x5904, "Rename Or Move a File or Subdirectory", 'enhanced', has_length=0) |
||
14266 | pkt.Request((42, 548), [ |
||
14267 | rec( 8, 1, NameSpace ), |
||
14268 | rec( 9, 1, RenameFlag ), |
||
14269 | rec( 10, 2, SearchAttributesLow ), |
||
14270 | rec( 12, 12, SrcEnhNWHandlePathS1 ), |
||
14271 | rec( 24, 1, PathCount, var="x" ), |
||
14272 | rec( 25, 12, DstEnhNWHandlePathS1 ), |
||
14273 | rec( 37, 1, PathCount, var="y" ), |
||
14274 | rec( 38, (2, 255), Path16, repeat="x", info_str=(Path16, "Rename or Move: %s", "/%s") ), |
||
14275 | rec( -1, (2,255), DestPath16, repeat="y" ), |
||
14276 | ]) |
||
14277 | pkt.Reply(8) |
||
14278 | pkt.CompletionCodes([0x0000, 0x0102, 0x8000, 0x8101, 0x8401, 0x8501, |
||
14279 | 0x8701, 0x8d00, 0x8e00, 0x8f00, 0x9001, 0x9200, 0x9600, |
||
14280 | 0x9804, 0x9a00, 0x9b03, 0x9c03, 0xa901, 0xaa00, 0xbf00, 0xfd00, 0xff16]) |
||
14281 | # 2222/5905, 89/05 |
||
14282 | pkt = NCP(0x5905, "Scan File or Subdirectory for Trustees", 'enhanced', has_length=0) |
||
14283 | pkt.Request((31, 284), [ |
||
14284 | rec( 8, 1, NameSpace ), |
||
14285 | rec( 9, 1, MaxReplyObjectIDCount ), |
||
14286 | rec( 10, 2, SearchAttributesLow ), |
||
14287 | rec( 12, 4, SequenceNumber ), |
||
14288 | rec( 16, 4, DirectoryBase ), |
||
14289 | rec( 20, 1, VolumeNumber ), |
||
14290 | rec( 21, 1, HandleFlag ), |
||
14291 | rec( 22, 1, DataTypeFlag ), |
||
14292 | rec( 23, 5, Reserved5 ), |
||
14293 | rec( 28, 1, PathCount, var="x" ), |
||
14294 | rec( 29, (2, 255), Path16, repeat="x", info_str=(Path16, "Scan Trustees for: %s", "/%s") ), |
||
14295 | ]) |
||
14296 | pkt.Reply(20, [ |
||
14297 | rec( 8, 4, SequenceNumber ), |
||
14298 | rec( 12, 2, ObjectIDCount, var="x" ), |
||
14299 | rec( 14, 6, TrusteeStruct, repeat="x" ), |
||
14300 | ]) |
||
14301 | pkt.CompletionCodes([0x0000, 0x8000, 0x8101, 0x8401, 0x8501, |
||
14302 | 0x8701, 0x8d00, 0x8f00, 0x9001, 0x9600, |
||
14303 | 0x9804, 0x9b03, 0x9c03, 0xa901, 0xaa00, 0xbf00, 0xfd00, 0xff16]) |
||
14304 | # 2222/5906, 89/06 |
||
14305 | pkt = NCP(0x5906, "Obtain File or SubDirectory Information", 'enhanced', has_length=0) |
||
14306 | pkt.Request((22), [ |
||
14307 | rec( 8, 1, SrcNameSpace ), |
||
14308 | rec( 9, 1, DestNameSpace ), |
||
14309 | rec( 10, 2, SearchAttributesLow ), |
||
14310 | rec( 12, 2, ReturnInfoMask, ENC_LITTLE_ENDIAN ), |
||
14311 | rec( 14, 2, ExtendedInfo ), |
||
14312 | rec( 16, 4, DirectoryBase ), |
||
14313 | rec( 20, 1, VolumeNumber ), |
||
14314 | rec( 21, 1, HandleFlag ), |
||
14315 | # |
||
14316 | # Move to packet-ncp2222.inc |
||
14317 | # The datatype flag indicates if the path is represented as ASCII or UTF8 |
||
14318 | # ASCII has a 1 byte count field whereas UTF8 has a two byte count field. |
||
14319 | # |
||
14320 | #rec( 22, 1, DataTypeFlag ), |
||
14321 | #rec( 23, 5, Reserved5 ), |
||
14322 | #rec( 28, 1, PathCount, var="x" ), |
||
14323 | #rec( 29, (2,255), Path16, repeat="x", info_str=(Path16, "Obtain Info for: %s", "/%s")), |
||
14324 | ]) |
||
14325 | pkt.Reply(NO_LENGTH_CHECK, [ |
||
14326 | srec( DSSpaceAllocateStruct, req_cond="(ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_alloc == 1)" ), |
||
14327 | srec( PadDSSpaceAllocate, req_cond="(ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_alloc == 0)" ), |
||
14328 | srec( AttributesStruct, req_cond="(ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_attr == 1)" ), |
||
14329 | srec( PadAttributes, req_cond="(ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_attr == 0)" ), |
||
14330 | srec( DataStreamSizeStruct, req_cond="(ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_size == 1)" ), |
||
14331 | srec( PadDataStreamSize, req_cond="(ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_size == 0)" ), |
||
14332 | srec( TotalStreamSizeStruct, req_cond="(ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_tspace == 1)" ), |
||
14333 | srec( PadTotalStreamSize, req_cond="(ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_tspace == 0)" ), |
||
14334 | srec( CreationInfoStruct, req_cond="(ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_create == 1)" ), |
||
14335 | srec( PadCreationInfo, req_cond="(ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_create == 0)" ), |
||
14336 | srec( ModifyInfoStruct, req_cond="(ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_mod == 1)" ), |
||
14337 | srec( PadModifyInfo, req_cond="(ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_mod == 0)" ), |
||
14338 | srec( ArchiveInfoStruct, req_cond="(ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_arch == 1)" ), |
||
14339 | srec( PadArchiveInfo, req_cond="(ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_arch == 0)" ), |
||
14340 | srec( RightsInfoStruct, req_cond="(ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_rights == 1)" ), |
||
14341 | srec( PadRightsInfo, req_cond="(ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_rights == 0)" ), |
||
14342 | srec( DirEntryStruct, req_cond="(ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_dir == 1)" ), |
||
14343 | srec( PadDirEntry, req_cond="(ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_dir == 0)" ), |
||
14344 | srec( EAInfoStruct, req_cond="(ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_eattr == 1)" ), |
||
14345 | srec( PadEAInfo, req_cond="(ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_eattr == 0)" ), |
||
14346 | srec( NSInfoStruct, req_cond="(ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_ns == 1)" ), |
||
14347 | srec( PadNSInfo, req_cond="(ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_ns == 0)" ), |
||
14348 | srec( DSSpaceAllocateStruct, req_cond="(ncp.ext_info_newstyle == 1) && (ncp.ret_info_mask_alloc == 1)" ), |
||
14349 | srec( AttributesStruct, req_cond="(ncp.ext_info_newstyle == 1) && (ncp.ret_info_mask_attr == 1)" ), |
||
14350 | srec( DataStreamSizeStruct, req_cond="(ncp.ext_info_newstyle == 1) && (ncp.ret_info_mask_size == 1)" ), |
||
14351 | srec( TotalStreamSizeStruct, req_cond="(ncp.ext_info_newstyle == 1) && (ncp.ret_info_mask_tspace == 1)" ), |
||
14352 | srec( EAInfoStruct, req_cond="(ncp.ext_info_newstyle == 1) && (ncp.ret_info_mask_eattr == 1)" ), |
||
14353 | srec( ArchiveInfoStruct, req_cond="(ncp.ext_info_newstyle == 1) && (ncp.ret_info_mask_arch == 1)" ), |
||
14354 | srec( ModifyInfoStruct, req_cond="(ncp.ext_info_newstyle == 1) && (ncp.ret_info_mask_mod == 1)" ), |
||
14355 | srec( CreationInfoStruct, req_cond="(ncp.ext_info_newstyle == 1) && (ncp.ret_info_mask_create == 1)" ), |
||
14356 | srec( NSInfoStruct, req_cond="(ncp.ext_info_newstyle == 1) && (ncp.ret_info_mask_ns == 1)" ), |
||
14357 | srec( DirEntryStruct, req_cond="(ncp.ext_info_newstyle == 1) && (ncp.ret_info_mask_dir == 1)" ), |
||
14358 | srec( RightsInfoStruct, req_cond="(ncp.ext_info_newstyle == 1) && (ncp.ret_info_mask_rights == 1)" ), |
||
14359 | srec( ReferenceIDStruct, req_cond="ncp.ret_info_mask_id == 1" ), |
||
14360 | srec( NSAttributeStruct, req_cond="ncp.ret_info_mask_ns_attr == 1" ), |
||
14361 | rec( -1, 4, DataStreamsCount, var="x" , req_cond="ncp.ret_info_mask_actual == 1" ), |
||
14362 | srec( DStreamActual, repeat = "x" , req_cond="ncp.ret_info_mask_actual == 1" ), |
||
14363 | rec( -1, 4, DataStreamsCount, var="y", req_cond="ncp.ret_info_mask_logical == 1" ), |
||
14364 | srec( DStreamLogical, repeat="y" , req_cond="ncp.ret_info_mask_logical == 1" ), |
||
14365 | srec( LastUpdatedInSecondsStruct, req_cond="ncp.ext_info_update == 1" ), |
||
14366 | srec( FlushTimeStruct, req_cond="ncp.ext_info_flush == 1" ), |
||
14367 | srec( ParentBaseIDStruct, req_cond="ncp.ext_info_parental == 1" ), |
||
14368 | srec( MacFinderInfoStruct, req_cond="ncp.ext_info_mac_finder == 1" ), |
||
14369 | srec( SiblingCountStruct, req_cond="ncp.ext_info_sibling == 1" ), |
||
14370 | srec( EffectiveRightsStruct, req_cond="ncp.ext_info_effective == 1" ), |
||
14371 | srec( MacTimeStruct, req_cond="ncp.ext_info_mac_date == 1" ), |
||
14372 | srec( LastAccessedTimeStruct, req_cond="ncp.ext_info_access == 1" ), |
||
14373 | srec( DOSName16Struct, req_cond="ncp.ext_info_dos_name == 1" ), |
||
14374 | srec( FileSize64bitStruct, req_cond="ncp.ext_info_64_bit_fs == 1" ), |
||
14375 | srec( FileName16Struct, req_cond="ncp.ret_info_mask_fname == 1" ), |
||
14376 | ]) |
||
14377 | pkt.ReqCondSizeVariable() |
||
14378 | pkt.CompletionCodes([0x0000, 0x8000, 0x8101, 0x8401, 0x8501, |
||
14379 | 0x8700, 0x8900, 0x8d00, 0x8f00, 0x9001, 0x9600, |
||
14380 | 0x9804, 0x9b03, 0x9c03, 0xa802, 0xa901, 0xaa00, 0xbf00, 0xfd00, 0xff16]) |
||
14381 | # 2222/5907, 89/07 |
||
14382 | pkt = NCP(0x5907, "Modify File or Subdirectory DOS Information", 'enhanced', has_length=0) |
||
14383 | pkt.Request((69,322), [ |
||
14384 | rec( 8, 1, NameSpace ), |
||
14385 | rec( 9, 1, Reserved ), |
||
14386 | rec( 10, 2, SearchAttributesLow ), |
||
14387 | rec( 12, 2, ModifyDOSInfoMask ), |
||
14388 | rec( 14, 2, Reserved2 ), |
||
14389 | rec( 16, 2, AttributesDef16 ), |
||
14390 | rec( 18, 1, FileMode ), |
||
14391 | rec( 19, 1, FileExtendedAttributes ), |
||
14392 | rec( 20, 2, CreationDate ), |
||
14393 | rec( 22, 2, CreationTime ), |
||
14394 | rec( 24, 4, CreatorID, ENC_BIG_ENDIAN ), |
||
14395 | rec( 28, 2, ModifiedDate ), |
||
14396 | rec( 30, 2, ModifiedTime ), |
||
14397 | rec( 32, 4, ModifierID, ENC_BIG_ENDIAN ), |
||
14398 | rec( 36, 2, ArchivedDate ), |
||
14399 | rec( 38, 2, ArchivedTime ), |
||
14400 | rec( 40, 4, ArchiverID, ENC_BIG_ENDIAN ), |
||
14401 | rec( 44, 2, LastAccessedDate ), |
||
14402 | rec( 46, 2, InheritedRightsMask ), |
||
14403 | rec( 48, 2, InheritanceRevokeMask ), |
||
14404 | rec( 50, 4, MaxSpace ), |
||
14405 | rec( 54, 4, DirectoryBase ), |
||
14406 | rec( 58, 1, VolumeNumber ), |
||
14407 | rec( 59, 1, HandleFlag ), |
||
14408 | rec( 60, 1, DataTypeFlag ), |
||
14409 | rec( 61, 5, Reserved5 ), |
||
14410 | rec( 66, 1, PathCount, var="x" ), |
||
14411 | rec( 67, (2,255), Path16, repeat="x", info_str=(Path16, "Modify DOS Information for: %s", "/%s") ), |
||
14412 | ]) |
||
14413 | pkt.Reply(8) |
||
14414 | pkt.CompletionCodes([0x0000, 0x0102, 0x7902, 0x8000, 0x8101, 0x8401, 0x8501, |
||
14415 | 0x8701, 0x8c01, 0x8d00, 0x8e00, 0x8f00, 0x9001, 0x9600, |
||
14416 | 0x9804, 0x9b03, 0x9c03, 0xa901, 0xaa00, 0xbf00, 0xfd00, 0xff16]) |
||
14417 | # 2222/5908, 89/08 |
||
14418 | pkt = NCP(0x5908, "Delete a File or Subdirectory", 'enhanced', has_length=0) |
||
14419 | pkt.Request((27,280), [ |
||
14420 | rec( 8, 1, NameSpace ), |
||
14421 | rec( 9, 1, Reserved ), |
||
14422 | rec( 10, 2, SearchAttributesLow ), |
||
14423 | rec( 12, 4, DirectoryBase ), |
||
14424 | rec( 16, 1, VolumeNumber ), |
||
14425 | rec( 17, 1, HandleFlag ), |
||
14426 | rec( 18, 1, DataTypeFlag ), |
||
14427 | rec( 19, 5, Reserved5 ), |
||
14428 | rec( 24, 1, PathCount, var="x" ), |
||
14429 | rec( 25, (2,255), Path16, repeat="x", info_str=(Path16, "Delete a File or Subdirectory: %s", "/%s") ), |
||
14430 | ]) |
||
14431 | pkt.Reply(8) |
||
14432 | pkt.CompletionCodes([0x0000, 0x8000, 0x8101, 0x8401, 0x8501, |
||
14433 | 0x8701, 0x8900, 0x8a00, 0x8d00, 0x8e00, 0x8f00, 0x9001, 0x9600, |
||
14434 | 0x9804, 0x9b03, 0x9c03, 0xa901, 0xaa00, 0xbf00, 0xfd00, 0xff16]) |
||
14435 | # 2222/5909, 89/09 |
||
14436 | pkt = NCP(0x5909, "Set Short Directory Handle", 'enhanced', has_length=0) |
||
14437 | pkt.Request((27,280), [ |
||
14438 | rec( 8, 1, NameSpace ), |
||
14439 | rec( 9, 1, DataStream ), |
||
14440 | rec( 10, 1, DestDirHandle ), |
||
14441 | rec( 11, 1, Reserved ), |
||
14442 | rec( 12, 4, DirectoryBase ), |
||
14443 | rec( 16, 1, VolumeNumber ), |
||
14444 | rec( 17, 1, HandleFlag ), |
||
14445 | rec( 18, 1, DataTypeFlag ), |
||
14446 | rec( 19, 5, Reserved5 ), |
||
14447 | rec( 24, 1, PathCount, var="x" ), |
||
14448 | rec( 25, (2,255), Path16, repeat="x", info_str=(Path16, "Set Short Directory Handle to: %s", "/%s") ), |
||
14449 | ]) |
||
14450 | pkt.Reply(8) |
||
14451 | pkt.CompletionCodes([0x0000, 0x8000, 0x8101, 0x8401, 0x8501, |
||
14452 | 0x8701, 0x8d00, 0x8f00, 0x9001, 0x9600, |
||
14453 | 0x9804, 0x9b03, 0x9c03, 0xa901, 0xaa00, 0xbf00, 0xfd00, 0xff16]) |
||
14454 | # 2222/590A, 89/10 |
||
14455 | pkt = NCP(0x590A, "Add Trustee Set to File or Subdirectory", 'enhanced', has_length=0) |
||
14456 | pkt.Request((37,290), [ |
||
14457 | rec( 8, 1, NameSpace ), |
||
14458 | rec( 9, 1, Reserved ), |
||
14459 | rec( 10, 2, SearchAttributesLow ), |
||
14460 | rec( 12, 2, AccessRightsMaskWord ), |
||
14461 | rec( 14, 2, ObjectIDCount, var="y" ), |
||
14462 | rec( -1, 6, TrusteeStruct, repeat="y" ), |
||
14463 | rec( -1, 4, DirectoryBase ), |
||
14464 | rec( -1, 1, VolumeNumber ), |
||
14465 | rec( -1, 1, HandleFlag ), |
||
14466 | rec( -1, 1, DataTypeFlag ), |
||
14467 | rec( -1, 5, Reserved5 ), |
||
14468 | rec( -1, 1, PathCount, var="x" ), |
||
14469 | rec( -1, (2,255), Path16, repeat="x", info_str=(Path16, "Add Trustee Set to: %s", "/%s") ), |
||
14470 | ]) |
||
14471 | pkt.Reply(8) |
||
14472 | pkt.CompletionCodes([0x0000, 0x0102, 0x8000, 0x8101, 0x8401, 0x8501, |
||
14473 | 0x8701, 0x8c01, 0x8d00, 0x8f00, 0x9001, 0x9600, |
||
14474 | 0x9804, 0x9b03, 0x9c03, 0xa901, 0xaa00, 0xbf00, 0xfc01, 0xfd00, 0xff16]) |
||
14475 | # 2222/590B, 89/11 |
||
14476 | pkt = NCP(0x590B, "Delete Trustee Set from File or SubDirectory", 'enhanced', has_length=0) |
||
14477 | pkt.Request((34,287), [ |
||
14478 | rec( 8, 1, NameSpace ), |
||
14479 | rec( 9, 1, Reserved ), |
||
14480 | rec( 10, 2, ObjectIDCount, var="y" ), |
||
14481 | rec( 12, 7, TrusteeStruct, repeat="y" ), |
||
14482 | rec( 19, 4, DirectoryBase ), |
||
14483 | rec( 23, 1, VolumeNumber ), |
||
14484 | rec( 24, 1, HandleFlag ), |
||
14485 | rec( 25, 1, DataTypeFlag ), |
||
14486 | rec( 26, 5, Reserved5 ), |
||
14487 | rec( 31, 1, PathCount, var="x" ), |
||
14488 | rec( 32, (2,255), Path16, repeat="x", info_str=(Path16, "Delete Trustee Set from: %s", "/%s") ), |
||
14489 | ]) |
||
14490 | pkt.Reply(8) |
||
14491 | pkt.CompletionCodes([0x0000, 0x8000, 0x8101, 0x8401, 0x8501, |
||
14492 | 0x8701, 0x8c01, 0x8d00, 0x8f00, 0x9001, 0x9600, |
||
14493 | 0x9804, 0x9b03, 0x9c03, 0xa901, 0xaa00, 0xbf00, 0xfd00, 0xff16]) |
||
14494 | # 2222/590C, 89/12 |
||
14495 | pkt = NCP(0x590C, "Allocate Short Directory Handle", 'enhanced', has_length=0) |
||
14496 | pkt.Request((27,280), [ |
||
14497 | rec( 8, 1, NameSpace ), |
||
14498 | rec( 9, 1, DestNameSpace ), |
||
14499 | rec( 10, 2, AllocateMode ), |
||
14500 | rec( 12, 4, DirectoryBase ), |
||
14501 | rec( 16, 1, VolumeNumber ), |
||
14502 | rec( 17, 1, HandleFlag ), |
||
14503 | rec( 18, 1, DataTypeFlag ), |
||
14504 | rec( 19, 5, Reserved5 ), |
||
14505 | rec( 24, 1, PathCount, var="x" ), |
||
14506 | rec( 25, (2,255), Path16, repeat="x", info_str=(Path16, "Allocate Short Directory Handle to: %s", "/%s") ), |
||
14507 | ]) |
||
14508 | pkt.Reply(NO_LENGTH_CHECK, [ |
||
14509 | srec( ReplyLevel2Struct, req_cond="ncp.alloc_reply_lvl2 == TRUE" ), |
||
14510 | srec( ReplyLevel1Struct, req_cond="ncp.alloc_reply_lvl2 == FALSE" ), |
||
14511 | ]) |
||
14512 | pkt.ReqCondSizeVariable() |
||
14513 | pkt.CompletionCodes([0x0000, 0x8000, 0x8101, 0x8401, 0x8501, |
||
14514 | 0x8701, 0x8d00, 0x8f00, 0x9001, 0x9600, |
||
14515 | 0x9804, 0x9b03, 0x9c03, 0xa901, 0xaa00, 0xbf00, 0xfd00, 0xff16]) |
||
14516 | # 2222/5910, 89/16 |
||
14517 | pkt = NCP(0x5910, "Scan Salvageable Files", 'enhanced', has_length=0) |
||
14518 | pkt.Request((33,286), [ |
||
14519 | rec( 8, 1, NameSpace ), |
||
14520 | rec( 9, 1, DataStream ), |
||
14521 | rec( 10, 2, ReturnInfoMask ), |
||
14522 | rec( 12, 2, ExtendedInfo ), |
||
14523 | rec( 14, 4, SequenceNumber ), |
||
14524 | rec( 18, 4, DirectoryBase ), |
||
14525 | rec( 22, 1, VolumeNumber ), |
||
14526 | rec( 23, 1, HandleFlag ), |
||
14527 | rec( 24, 1, DataTypeFlag ), |
||
14528 | rec( 25, 5, Reserved5 ), |
||
14529 | rec( 30, 1, PathCount, var="x" ), |
||
14530 | rec( 31, (2,255), Path16, repeat="x", info_str=(Path16, "Scan for Deleted Files in: %s", "/%s") ), |
||
14531 | ]) |
||
14532 | pkt.Reply(NO_LENGTH_CHECK, [ |
||
14533 | rec( 8, 4, SequenceNumber ), |
||
14534 | rec( 12, 2, DeletedTime ), |
||
14535 | rec( 14, 2, DeletedDate ), |
||
14536 | rec( 16, 4, DeletedID, ENC_BIG_ENDIAN ), |
||
14537 | rec( 20, 4, VolumeID ), |
||
14538 | rec( 24, 4, DirectoryBase ), |
||
14539 | srec( DSSpaceAllocateStruct, req_cond="(ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_alloc == 1)" ), |
||
14540 | srec( PadDSSpaceAllocate, req_cond="(ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_alloc == 0)" ), |
||
14541 | srec( AttributesStruct, req_cond="(ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_attr == 1)" ), |
||
14542 | srec( PadAttributes, req_cond="(ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_attr == 0)" ), |
||
14543 | srec( DataStreamSizeStruct, req_cond="(ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_size == 1)" ), |
||
14544 | srec( PadDataStreamSize, req_cond="(ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_size == 0)" ), |
||
14545 | srec( TotalStreamSizeStruct, req_cond="(ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_tspace == 1)" ), |
||
14546 | srec( PadTotalStreamSize, req_cond="(ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_tspace == 0)" ), |
||
14547 | srec( CreationInfoStruct, req_cond="(ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_create == 1)" ), |
||
14548 | srec( PadCreationInfo, req_cond="(ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_create == 0)" ), |
||
14549 | srec( ModifyInfoStruct, req_cond="(ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_mod == 1)" ), |
||
14550 | srec( PadModifyInfo, req_cond="(ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_mod == 0)" ), |
||
14551 | srec( ArchiveInfoStruct, req_cond="(ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_arch == 1)" ), |
||
14552 | srec( PadArchiveInfo, req_cond="(ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_arch == 0)" ), |
||
14553 | srec( RightsInfoStruct, req_cond="(ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_rights == 1)" ), |
||
14554 | srec( PadRightsInfo, req_cond="(ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_rights == 0)" ), |
||
14555 | srec( DirEntryStruct, req_cond="(ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_dir == 1)" ), |
||
14556 | srec( PadDirEntry, req_cond="(ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_dir == 0)" ), |
||
14557 | srec( EAInfoStruct, req_cond="(ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_eattr == 1)" ), |
||
14558 | srec( PadEAInfo, req_cond="(ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_eattr == 0)" ), |
||
14559 | srec( NSInfoStruct, req_cond="(ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_ns == 1)" ), |
||
14560 | srec( PadNSInfo, req_cond="(ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_ns == 0)" ), |
||
14561 | srec( FileName16Struct, req_cond="(ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_fname == 1)" ), |
||
14562 | srec( DSSpaceAllocateStruct, req_cond="(ncp.ext_info_newstyle == 1) && (ncp.ret_info_mask_alloc == 1)" ), |
||
14563 | srec( AttributesStruct, req_cond="(ncp.ext_info_newstyle == 1) && (ncp.ret_info_mask_attr == 1)" ), |
||
14564 | srec( DataStreamSizeStruct, req_cond="(ncp.ext_info_newstyle == 1) && (ncp.ret_info_mask_size == 1)" ), |
||
14565 | srec( TotalStreamSizeStruct, req_cond="(ncp.ext_info_newstyle == 1) && (ncp.ret_info_mask_tspace == 1)" ), |
||
14566 | srec( EAInfoStruct, req_cond="(ncp.ext_info_newstyle == 1) && (ncp.ret_info_mask_eattr == 1)" ), |
||
14567 | srec( ArchiveInfoStruct, req_cond="(ncp.ext_info_newstyle == 1) && (ncp.ret_info_mask_arch == 1)" ), |
||
14568 | srec( ModifyInfoStruct, req_cond="(ncp.ext_info_newstyle == 1) && (ncp.ret_info_mask_mod == 1)" ), |
||
14569 | srec( CreationInfoStruct, req_cond="(ncp.ext_info_newstyle == 1) && (ncp.ret_info_mask_create == 1)" ), |
||
14570 | srec( NSInfoStruct, req_cond="(ncp.ext_info_newstyle == 1) && (ncp.ret_info_mask_ns == 1)" ), |
||
14571 | srec( DirEntryStruct, req_cond="(ncp.ext_info_newstyle == 1) && (ncp.ret_info_mask_dir == 1)" ), |
||
14572 | srec( RightsInfoStruct, req_cond="(ncp.ext_info_newstyle == 1) && (ncp.ret_info_mask_rights == 1)" ), |
||
14573 | srec( ReferenceIDStruct, req_cond="(ncp.ext_info_newstyle == 1) && (ncp.ret_info_mask_id == 1)" ), |
||
14574 | srec( NSAttributeStruct, req_cond="(ncp.ext_info_newstyle == 1) && (ncp.ret_info_mask_ns_attr == 1)" ), |
||
14575 | rec( -1, 4, DataStreamsCount, var="x" , req_cond="ncp.ret_info_mask_actual == 1" ), |
||
14576 | srec( DStreamActual, repeat = "x" , req_cond="ncp.ret_info_mask_actual == 1" ), |
||
14577 | rec( -1, 4, DataStreamsCount, var="y", req_cond="ncp.ret_info_mask_logical == 1" ), |
||
14578 | srec( DStreamLogical, repeat="y" , req_cond="ncp.ret_info_mask_logical == 1" ), |
||
14579 | srec( LastUpdatedInSecondsStruct, req_cond="ncp.ext_info_update == 1" ), |
||
14580 | srec( FlushTimeStruct, req_cond="ncp.ext_info_flush == 1" ), |
||
14581 | srec( ParentBaseIDStruct, req_cond="ncp.ext_info_parental == 1" ), |
||
14582 | srec( MacFinderInfoStruct, req_cond="ncp.ext_info_mac_finder == 1" ), |
||
14583 | srec( SiblingCountStruct, req_cond="ncp.ext_info_sibling == 1" ), |
||
14584 | srec( EffectiveRightsStruct, req_cond="ncp.ext_info_effective == 1" ), |
||
14585 | srec( MacTimeStruct, req_cond="ncp.ext_info_mac_date == 1" ), |
||
14586 | srec( LastAccessedTimeStruct, req_cond="ncp.ext_info_access == 1" ), |
||
14587 | srec( DOSName16Struct, req_cond="ncp.ext_info_dos_name == 1" ), |
||
14588 | srec( FileSize64bitStruct, req_cond="ncp.ext_info_64_bit_fs == 1" ), |
||
14589 | srec( FileName16Struct, req_cond="(ncp.ext_info_newstyle == 1) && (ncp.ret_info_mask_fname == 1)" ), |
||
14590 | ]) |
||
14591 | pkt.ReqCondSizeVariable() |
||
14592 | pkt.CompletionCodes([0x0000, 0x8000, 0x8101, 0x8401, 0x8501, |
||
14593 | 0x8701, 0x8d00, 0x8f00, 0x9001, 0x9600, |
||
14594 | 0x9804, 0x9b03, 0x9c03, 0xa901, 0xaa00, 0xbf00, 0xfd00, 0xff16]) |
||
14595 | # 2222/5911, 89/17 |
||
14596 | pkt = NCP(0x5911, "Recover Salvageable File", 'enhanced', has_length=0) |
||
14597 | pkt.Request((24,278), [ |
||
14598 | rec( 8, 1, NameSpace ), |
||
14599 | rec( 9, 1, Reserved ), |
||
14600 | rec( 10, 4, SequenceNumber ), |
||
14601 | rec( 14, 4, VolumeID ), |
||
14602 | rec( 18, 4, DirectoryBase ), |
||
14603 | rec( 22, 1, DataTypeFlag ), |
||
14604 | rec( 23, (1,255), FileName16, info_str=(FileName16, "Recover Deleted File: %s", ", %s") ), |
||
14605 | ]) |
||
14606 | pkt.Reply(8) |
||
14607 | pkt.CompletionCodes([0x0000, 0x0102, 0x8000, 0x8101, 0x8401, 0x8501, |
||
14608 | 0x8701, 0x8d00, 0x8f00, 0x9001, 0x9600, |
||
14609 | 0x9804, 0x9b03, 0x9c03, 0xa901, 0xaa00, 0xbf00, 0xfd00, 0xff16]) |
||
14610 | # 2222/5913, 89/19 |
||
14611 | pkt = NCP(0x5913, "Get Name Space Information", 'enhanced', has_length=0) |
||
14612 | pkt.Request(18, [ |
||
14613 | rec( 8, 1, SrcNameSpace ), |
||
14614 | rec( 9, 1, DestNameSpace ), |
||
14615 | rec( 10, 1, DataTypeFlag ), |
||
14616 | rec( 11, 1, VolumeNumber ), |
||
14617 | rec( 12, 4, DirectoryBase ), |
||
14618 | rec( 16, 2, NamesSpaceInfoMask ), |
||
14619 | ]) |
||
14620 | pkt.Reply(NO_LENGTH_CHECK, [ |
||
14621 | srec( FileName16Struct, req_cond="ncp.ns_info_mask_modify == TRUE" ), |
||
14622 | srec( FileAttributesStruct, req_cond="ncp.ns_info_mask_fatt == TRUE" ), |
||
14623 | srec( CreationDateStruct, req_cond="ncp.ns_info_mask_cdate == TRUE" ), |
||
14624 | srec( CreationTimeStruct, req_cond="ncp.ns_info_mask_ctime == TRUE" ), |
||
14625 | srec( OwnerIDStruct, req_cond="ncp.ns_info_mask_owner == TRUE" ), |
||
14626 | srec( ArchiveDateStruct, req_cond="ncp.ns_info_mask_adate == TRUE" ), |
||
14627 | srec( ArchiveTimeStruct, req_cond="ncp.ns_info_mask_atime == TRUE" ), |
||
14628 | srec( ArchiveIdStruct, req_cond="ncp.ns_info_mask_aid == TRUE" ), |
||
14629 | srec( UpdateDateStruct, req_cond="ncp.ns_info_mask_udate == TRUE" ), |
||
14630 | srec( UpdateTimeStruct, req_cond="ncp.ns_info_mask_utime == TRUE" ), |
||
14631 | srec( UpdateIDStruct, req_cond="ncp.ns_info_mask_uid == TRUE" ), |
||
14632 | srec( LastAccessStruct, req_cond="ncp.ns_info_mask_acc_date == TRUE" ), |
||
14633 | srec( RightsInfoStruct, req_cond="ncp.ns_info_mask_max_acc_mask == TRUE" ), |
||
14634 | ]) |
||
14635 | pkt.ReqCondSizeVariable() |
||
14636 | pkt.CompletionCodes([0x0000, 0x8000, 0x8101, 0x8401, 0x8501, |
||
14637 | 0x8701, 0x8d00, 0x8f00, 0x9001, 0x9600, |
||
14638 | 0x9804, 0x9b03, 0x9c03, 0xa901, 0xaa00, 0xbf00, 0xfd00, 0xff16]) |
||
14639 | # 2222/5914, 89/20 |
||
14640 | pkt = NCP(0x5914, "Search for File or Subdirectory Set", 'enhanced', has_length=0) |
||
14641 | pkt.Request((28, 28), [ |
||
14642 | rec( 8, 1, NameSpace ), |
||
14643 | rec( 9, 1, DataStream ), |
||
14644 | rec( 10, 2, SearchAttributesLow ), |
||
14645 | rec( 12, 2, ReturnInfoMask ), |
||
14646 | rec( 14, 2, ExtendedInfo ), |
||
14647 | rec( 16, 2, ReturnInfoCount ), |
||
14648 | rec( 18, 9, SeachSequenceStruct ), |
||
14649 | rec( 27, 1, DataTypeFlag ), |
||
14650 | # next field is dissected in packet-ncp2222.inc |
||
14651 | #rec( 28, (2,255), SearchPattern16 ), |
||
14652 | ]) |
||
14653 | # The reply packet is dissected in packet-ncp2222.inc |
||
14654 | pkt.Reply(NO_LENGTH_CHECK, [ |
||
14655 | ]) |
||
14656 | pkt.ReqCondSizeVariable() |
||
14657 | pkt.CompletionCodes([0x0000, 0x8000, 0x8101, 0x8401, 0x8501, |
||
14658 | 0x8701, 0x8d00, 0x8f00, 0x9001, 0x9600, |
||
14659 | 0x9804, 0x9b03, 0x9c03, 0xa901, 0xaa00, 0xbf00, 0xfd00, 0xff16]) |
||
14660 | # 2222/5916, 89/22 |
||
14661 | pkt = NCP(0x5916, "Generate Directory Base and Volume Number", 'enhanced', has_length=0) |
||
14662 | pkt.Request((27,280), [ |
||
14663 | rec( 8, 1, SrcNameSpace ), |
||
14664 | rec( 9, 1, DestNameSpace ), |
||
14665 | rec( 10, 2, dstNSIndicator ), |
||
14666 | rec( 12, 4, DirectoryBase ), |
||
14667 | rec( 16, 1, VolumeNumber ), |
||
14668 | rec( 17, 1, HandleFlag ), |
||
14669 | rec( 18, 1, DataTypeFlag ), |
||
14670 | rec( 19, 5, Reserved5 ), |
||
14671 | rec( 24, 1, PathCount, var="x" ), |
||
14672 | rec( 25, (2,255), Path16, repeat="x", info_str=(Path16, "Get Volume and Directory Base from: %s", "/%s") ), |
||
14673 | ]) |
||
14674 | pkt.Reply(17, [ |
||
14675 | rec( 8, 4, DirectoryBase ), |
||
14676 | rec( 12, 4, DOSDirectoryBase ), |
||
14677 | rec( 16, 1, VolumeNumber ), |
||
14678 | ]) |
||
14679 | pkt.CompletionCodes([0x0000, 0x8000, 0x8101, 0x8401, 0x8501, |
||
14680 | 0x8701, 0x8d00, 0x8f00, 0x9001, 0x9600, |
||
14681 | 0x9804, 0x9b03, 0x9c03, 0xa901, 0xaa00, 0xbf00, 0xfd00, 0xff16]) |
||
14682 | # 2222/5919, 89/25 |
||
14683 | pkt = NCP(0x5919, "Set Name Space Information", 'enhanced', has_length=0) |
||
14684 | pkt.Request(530, [ |
||
14685 | rec( 8, 1, SrcNameSpace ), |
||
14686 | rec( 9, 1, DestNameSpace ), |
||
14687 | rec( 10, 1, VolumeNumber ), |
||
14688 | rec( 11, 4, DirectoryBase ), |
||
14689 | rec( 15, 2, NamesSpaceInfoMask ), |
||
14690 | rec( 17, 1, DataTypeFlag ), |
||
14691 | rec( 18, 512, NSSpecificInfo ), |
||
14692 | ]) |
||
14693 | pkt.Reply(8) |
||
14694 | pkt.CompletionCodes([0x0000, 0x0102, 0x8000, 0x8101, 0x8401, 0x8501, |
||
14695 | 0x8701, 0x8b00, 0x8d00, 0x8f00, 0x9001, |
||
14696 | 0x9600, 0x9804, 0x9b03, 0x9c03, 0xa901, 0xaa00, 0xbf00, 0xfd00, |
||
14697 | 0xff16]) |
||
14698 | # 2222/591C, 89/28 |
||
14699 | pkt = NCP(0x591C, "Get Full Path String", 'enhanced', has_length=0) |
||
14700 | pkt.Request((35,288), [ |
||
14701 | rec( 8, 1, SrcNameSpace ), |
||
14702 | rec( 9, 1, DestNameSpace ), |
||
14703 | rec( 10, 2, PathCookieFlags ), |
||
14704 | rec( 12, 4, Cookie1 ), |
||
14705 | rec( 16, 4, Cookie2 ), |
||
14706 | rec( 20, 4, DirectoryBase ), |
||
14707 | rec( 24, 1, VolumeNumber ), |
||
14708 | rec( 25, 1, HandleFlag ), |
||
14709 | rec( 26, 1, DataTypeFlag ), |
||
14710 | rec( 27, 5, Reserved5 ), |
||
14711 | rec( 32, 1, PathCount, var="x" ), |
||
14712 | rec( 33, (2,255), Path16, repeat="x", info_str=(Path16, "Get Full Path from: %s", "/%s") ), |
||
14713 | ]) |
||
14714 | pkt.Reply((24,277), [ |
||
14715 | rec( 8, 2, PathCookieFlags ), |
||
14716 | rec( 10, 4, Cookie1 ), |
||
14717 | rec( 14, 4, Cookie2 ), |
||
14718 | rec( 18, 2, PathComponentSize ), |
||
14719 | rec( 20, 2, PathComponentCount, var='x' ), |
||
14720 | rec( 22, (2,255), Path16, repeat='x' ), |
||
14721 | ]) |
||
14722 | pkt.CompletionCodes([0x0000, 0x8000, 0x8101, 0x8401, 0x8501, |
||
14723 | 0x8701, 0x8b00, 0x8d00, 0x8f00, 0x9001, |
||
14724 | 0x9600, 0x9804, 0x9b03, 0x9c03, 0xa901, 0xaa00, 0xbf00, 0xfd00, |
||
14725 | 0xff16]) |
||
14726 | # 2222/591D, 89/29 |
||
14727 | pkt = NCP(0x591D, "Get Effective Directory Rights", 'enhanced', has_length=0) |
||
14728 | pkt.Request((31, 284), [ |
||
14729 | rec( 8, 1, NameSpace ), |
||
14730 | rec( 9, 1, DestNameSpace ), |
||
14731 | rec( 10, 2, SearchAttributesLow ), |
||
14732 | rec( 12, 2, ReturnInfoMask ), |
||
14733 | rec( 14, 2, ExtendedInfo ), |
||
14734 | rec( 16, 4, DirectoryBase ), |
||
14735 | rec( 20, 1, VolumeNumber ), |
||
14736 | rec( 21, 1, HandleFlag ), |
||
14737 | rec( 22, 1, DataTypeFlag ), |
||
14738 | rec( 23, 5, Reserved5 ), |
||
14739 | rec( 28, 1, PathCount, var="x" ), |
||
14740 | rec( 29, (2,255), Path16, repeat="x", info_str=(Path16, "Get Effective Rights for: %s", "/%s") ), |
||
14741 | ]) |
||
14742 | pkt.Reply(NO_LENGTH_CHECK, [ |
||
14743 | rec( 8, 2, EffectiveRights, ENC_LITTLE_ENDIAN ), |
||
14744 | srec( DSSpaceAllocateStruct, req_cond="(ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_alloc == 1)" ), |
||
14745 | srec( PadDSSpaceAllocate, req_cond="(ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_alloc == 0)" ), |
||
14746 | srec( AttributesStruct, req_cond="(ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_attr == 1)" ), |
||
14747 | srec( PadAttributes, req_cond="(ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_attr == 0)" ), |
||
14748 | srec( DataStreamSizeStruct, req_cond="(ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_size == 1)" ), |
||
14749 | srec( PadDataStreamSize, req_cond="(ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_size == 0)" ), |
||
14750 | srec( TotalStreamSizeStruct, req_cond="(ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_tspace == 1)" ), |
||
14751 | srec( PadTotalStreamSize, req_cond="(ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_tspace == 0)" ), |
||
14752 | srec( CreationInfoStruct, req_cond="(ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_create == 1)" ), |
||
14753 | srec( PadCreationInfo, req_cond="(ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_create == 0)" ), |
||
14754 | srec( ModifyInfoStruct, req_cond="(ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_mod == 1)" ), |
||
14755 | srec( PadModifyInfo, req_cond="(ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_mod == 0)" ), |
||
14756 | srec( ArchiveInfoStruct, req_cond="(ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_arch == 1)" ), |
||
14757 | srec( PadArchiveInfo, req_cond="(ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_arch == 0)" ), |
||
14758 | srec( RightsInfoStruct, req_cond="(ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_rights == 1)" ), |
||
14759 | srec( PadRightsInfo, req_cond="(ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_rights == 0)" ), |
||
14760 | srec( DirEntryStruct, req_cond="(ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_dir == 1)" ), |
||
14761 | srec( PadDirEntry, req_cond="(ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_dir == 0)" ), |
||
14762 | srec( EAInfoStruct, req_cond="(ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_eattr == 1)" ), |
||
14763 | srec( PadEAInfo, req_cond="(ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_eattr == 0)" ), |
||
14764 | srec( NSInfoStruct, req_cond="(ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_ns == 1)" ), |
||
14765 | srec( PadNSInfo, req_cond="(ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_ns == 0)" ), |
||
14766 | srec( FileName16Struct, req_cond="(ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_fname == 1)" ), |
||
14767 | srec( DSSpaceAllocateStruct, req_cond="(ncp.ext_info_newstyle == 1) && (ncp.ret_info_mask_alloc == 1)" ), |
||
14768 | srec( AttributesStruct, req_cond="(ncp.ext_info_newstyle == 1) && (ncp.ret_info_mask_attr == 1)" ), |
||
14769 | srec( DataStreamSizeStruct, req_cond="(ncp.ext_info_newstyle == 1) && (ncp.ret_info_mask_size == 1)" ), |
||
14770 | srec( TotalStreamSizeStruct, req_cond="(ncp.ext_info_newstyle == 1) && (ncp.ret_info_mask_tspace == 1)" ), |
||
14771 | srec( CreationInfoStruct, req_cond="(ncp.ext_info_newstyle == 1) && (ncp.ret_info_mask_create == 1)" ), |
||
14772 | srec( ModifyInfoStruct, req_cond="(ncp.ext_info_newstyle == 1) && (ncp.ret_info_mask_mod == 1)" ), |
||
14773 | srec( ArchiveInfoStruct, req_cond="(ncp.ext_info_newstyle == 1) && (ncp.ret_info_mask_arch == 1)" ), |
||
14774 | srec( RightsInfoStruct, req_cond="(ncp.ext_info_newstyle == 1) && (ncp.ret_info_mask_rights == 1)" ), |
||
14775 | srec( DirEntryStruct, req_cond="(ncp.ext_info_newstyle == 1) && (ncp.ret_info_mask_dir == 1)" ), |
||
14776 | srec( EAInfoStruct, req_cond="(ncp.ext_info_newstyle == 1) && (ncp.ret_info_mask_eattr == 1)" ), |
||
14777 | srec( NSInfoStruct, req_cond="(ncp.ext_info_newstyle == 1) && (ncp.ret_info_mask_ns == 1)" ), |
||
14778 | srec( FileSize64bitStruct, req_cond="(ncp.ext_info_64_bit_fs == 1) && (ncp.ret_info_mask_fname == 1)" ), |
||
14779 | srec( FileName16Struct, req_cond="(ncp.ext_info_newstyle == 1) && (ncp.ret_info_mask_fname == 1)" ), |
||
14780 | ]) |
||
14781 | pkt.ReqCondSizeVariable() |
||
14782 | pkt.CompletionCodes([0x0000, 0x8000, 0x8101, 0x8401, 0x8501, |
||
14783 | 0x8701, 0x8d00, 0x8f00, 0x9001, 0x9600, |
||
14784 | 0x9804, 0x9b03, 0x9c03, 0xa901, 0xaa00, 0xbf00, 0xfd00, 0xff16]) |
||
14785 | # 2222/591E, 89/30 |
||
14786 | pkt = NCP(0x591E, "Open/Create File or Subdirectory", 'enhanced', has_length=0) |
||
14787 | pkt.Request((41, 294), [ |
||
14788 | rec( 8, 1, NameSpace ), |
||
14789 | rec( 9, 1, DataStream ), |
||
14790 | rec( 10, 1, OpenCreateMode ), |
||
14791 | rec( 11, 1, Reserved ), |
||
14792 | rec( 12, 2, SearchAttributesLow ), |
||
14793 | rec( 14, 2, Reserved2 ), |
||
14794 | rec( 16, 2, ReturnInfoMask ), |
||
14795 | rec( 18, 2, ExtendedInfo ), |
||
14796 | rec( 20, 4, AttributesDef32 ), |
||
14797 | rec( 24, 2, DesiredAccessRights ), |
||
14798 | rec( 26, 4, DirectoryBase ), |
||
14799 | rec( 30, 1, VolumeNumber ), |
||
14800 | rec( 31, 1, HandleFlag ), |
||
14801 | rec( 32, 1, DataTypeFlag ), |
||
14802 | rec( 33, 5, Reserved5 ), |
||
14803 | rec( 38, 1, PathCount, var="x" ), |
||
14804 | rec( 39, (2,255), Path16, repeat="x", info_str=(Path16, "Open or Create File: %s", "/%s") ), |
||
14805 | ]) |
||
14806 | pkt.Reply(NO_LENGTH_CHECK, [ |
||
14807 | rec( 8, 4, FileHandle, ENC_BIG_ENDIAN ), |
||
14808 | rec( 12, 1, OpenCreateAction ), |
||
14809 | rec( 13, 1, Reserved ), |
||
14810 | srec( DSSpaceAllocateStruct, req_cond="(ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_alloc == 1)" ), |
||
14811 | srec( PadDSSpaceAllocate, req_cond="(ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_alloc == 0)" ), |
||
14812 | srec( AttributesStruct, req_cond="(ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_attr == 1)" ), |
||
14813 | srec( PadAttributes, req_cond="(ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_attr == 0)" ), |
||
14814 | srec( DataStreamSizeStruct, req_cond="(ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_size == 1)" ), |
||
14815 | srec( PadDataStreamSize, req_cond="(ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_size == 0)" ), |
||
14816 | srec( TotalStreamSizeStruct, req_cond="(ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_tspace == 1)" ), |
||
14817 | srec( PadTotalStreamSize, req_cond="(ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_tspace == 0)" ), |
||
14818 | srec( CreationInfoStruct, req_cond="(ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_create == 1)" ), |
||
14819 | srec( PadCreationInfo, req_cond="(ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_create == 0)" ), |
||
14820 | srec( ModifyInfoStruct, req_cond="(ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_mod == 1)" ), |
||
14821 | srec( PadModifyInfo, req_cond="(ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_mod == 0)" ), |
||
14822 | srec( ArchiveInfoStruct, req_cond="(ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_arch == 1)" ), |
||
14823 | srec( PadArchiveInfo, req_cond="(ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_arch == 0)" ), |
||
14824 | srec( RightsInfoStruct, req_cond="(ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_rights == 1)" ), |
||
14825 | srec( PadRightsInfo, req_cond="(ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_rights == 0)" ), |
||
14826 | srec( DirEntryStruct, req_cond="(ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_dir == 1)" ), |
||
14827 | srec( PadDirEntry, req_cond="(ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_dir == 0)" ), |
||
14828 | srec( EAInfoStruct, req_cond="(ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_eattr == 1)" ), |
||
14829 | srec( PadEAInfo, req_cond="(ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_eattr == 0)" ), |
||
14830 | srec( NSInfoStruct, req_cond="(ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_ns == 1)" ), |
||
14831 | srec( PadNSInfo, req_cond="(ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_ns == 0)" ), |
||
14832 | srec( FileName16Struct, req_cond="(ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_fname == 1)" ), |
||
14833 | srec( DSSpaceAllocateStruct, req_cond="(ncp.ext_info_newstyle == 1) && (ncp.ret_info_mask_alloc == 1)" ), |
||
14834 | srec( AttributesStruct, req_cond="(ncp.ext_info_newstyle == 1) && (ncp.ret_info_mask_attr == 1)" ), |
||
14835 | srec( DataStreamSizeStruct, req_cond="(ncp.ext_info_newstyle == 1) && (ncp.ret_info_mask_size == 1)" ), |
||
14836 | srec( TotalStreamSizeStruct, req_cond="(ncp.ext_info_newstyle == 1) && (ncp.ret_info_mask_tspace == 1)" ), |
||
14837 | srec( CreationInfoStruct, req_cond="(ncp.ext_info_newstyle == 1) && (ncp.ret_info_mask_create == 1)" ), |
||
14838 | srec( ModifyInfoStruct, req_cond="(ncp.ext_info_newstyle == 1) && (ncp.ret_info_mask_mod == 1)" ), |
||
14839 | srec( ArchiveInfoStruct, req_cond="(ncp.ext_info_newstyle == 1) && (ncp.ret_info_mask_arch == 1)" ), |
||
14840 | srec( RightsInfoStruct, req_cond="(ncp.ext_info_newstyle == 1) && (ncp.ret_info_mask_rights == 1)" ), |
||
14841 | srec( DirEntryStruct, req_cond="(ncp.ext_info_newstyle == 1) && (ncp.ret_info_mask_dir == 1)" ), |
||
14842 | srec( EAInfoStruct, req_cond="(ncp.ext_info_newstyle == 1) && (ncp.ret_info_mask_eattr == 1)" ), |
||
14843 | srec( NSInfoStruct, req_cond="(ncp.ext_info_newstyle == 1) && (ncp.ret_info_mask_ns == 1)" ), |
||
14844 | srec( FileSize64bitStruct, req_cond="(ncp.ext_info_64_bit_fs == 1) && (ncp.ret_info_mask_fname == 1)" ), |
||
14845 | srec( FileName16Struct, req_cond="(ncp.ext_info_newstyle == 1) && (ncp.ret_info_mask_fname == 1)" ), |
||
14846 | ]) |
||
14847 | pkt.ReqCondSizeVariable() |
||
14848 | pkt.CompletionCodes([0x0000, 0x0102, 0x8000, 0x8101, 0x8401, 0x8501, |
||
14849 | 0x8701, 0x8d00, 0x8f00, 0x9001, 0x9600, |
||
14850 | 0x9804, 0x9b03, 0x9c03, 0xa901, 0xaa00, 0xbf00, 0xfd00, 0xff16]) |
||
14851 | pkt.MakeExpert("file_rights") |
||
14852 | # 2222/5920, 89/32 |
||
14853 | pkt = NCP(0x5920, "Open/Create File or Subdirectory with Callback", 'enhanced', has_length=0) |
||
14854 | pkt.Request((37, 290), [ |
||
14855 | rec( 8, 1, NameSpace ), |
||
14856 | rec( 9, 1, OpenCreateMode ), |
||
14857 | rec( 10, 2, SearchAttributesLow ), |
||
14858 | rec( 12, 2, ReturnInfoMask ), |
||
14859 | rec( 14, 2, ExtendedInfo ), |
||
14860 | rec( 16, 4, AttributesDef32 ), |
||
14861 | rec( 20, 2, DesiredAccessRights ), |
||
14862 | rec( 22, 4, DirectoryBase ), |
||
14863 | rec( 26, 1, VolumeNumber ), |
||
14864 | rec( 27, 1, HandleFlag ), |
||
14865 | rec( 28, 1, DataTypeFlag ), |
||
14866 | rec( 29, 5, Reserved5 ), |
||
14867 | rec( 34, 1, PathCount, var="x" ), |
||
14868 | rec( 35, (2,255), Path16, repeat="x", info_str=(Path16, "Open or Create with Op-Lock: %s", "/%s") ), |
||
14869 | ]) |
||
14870 | pkt.Reply( NO_LENGTH_CHECK, [ |
||
14871 | rec( 8, 4, FileHandle, ENC_BIG_ENDIAN ), |
||
14872 | rec( 12, 1, OpenCreateAction ), |
||
14873 | rec( 13, 1, OCRetFlags ), |
||
14874 | srec( DSSpaceAllocateStruct, req_cond="(ncp.ret_info_mask != 0x0000) && (ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_alloc == 1)" ), |
||
14875 | srec( PadDSSpaceAllocate, req_cond="(ncp.ret_info_mask != 0x0000) && (ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_alloc == 0)" ), |
||
14876 | srec( AttributesStruct, req_cond="(ncp.ret_info_mask != 0x0000) && (ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_attr == 1)" ), |
||
14877 | srec( PadAttributes, req_cond="(ncp.ret_info_mask != 0x0000) && (ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_attr == 0)" ), |
||
14878 | srec( DataStreamSizeStruct, req_cond="(ncp.ret_info_mask != 0x0000) && (ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_size == 1)" ), |
||
14879 | srec( PadDataStreamSize, req_cond="(ncp.ret_info_mask != 0x0000) && (ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_size == 0)" ), |
||
14880 | srec( TotalStreamSizeStruct, req_cond="(ncp.ret_info_mask != 0x0000) && (ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_tspace == 1)" ), |
||
14881 | srec( PadTotalStreamSize, req_cond="(ncp.ret_info_mask != 0x0000) && (ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_tspace == 0)" ), |
||
14882 | srec( CreationInfoStruct, req_cond="(ncp.ret_info_mask != 0x0000) && (ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_create == 1)" ), |
||
14883 | srec( PadCreationInfo, req_cond="(ncp.ret_info_mask != 0x0000) && (ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_create == 0)" ), |
||
14884 | srec( ModifyInfoStruct, req_cond="(ncp.ret_info_mask != 0x0000) && (ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_mod == 1)" ), |
||
14885 | srec( PadModifyInfo, req_cond="(ncp.ret_info_mask != 0x0000) && (ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_mod == 0)" ), |
||
14886 | srec( ArchiveInfoStruct, req_cond="(ncp.ret_info_mask != 0x0000) && (ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_arch == 1)" ), |
||
14887 | srec( PadArchiveInfo, req_cond="(ncp.ret_info_mask != 0x0000) && (ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_arch == 0)" ), |
||
14888 | srec( RightsInfoStruct, req_cond="(ncp.ret_info_mask != 0x0000) && (ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_rights == 1)" ), |
||
14889 | srec( PadRightsInfo, req_cond="(ncp.ret_info_mask != 0x0000) && (ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_rights == 0)" ), |
||
14890 | srec( DirEntryStruct, req_cond="(ncp.ret_info_mask != 0x0000) && (ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_dir == 1)" ), |
||
14891 | srec( PadDirEntry, req_cond="(ncp.ret_info_mask != 0x0000) && (ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_dir == 0)" ), |
||
14892 | srec( EAInfoStruct, req_cond="(ncp.ret_info_mask != 0x0000) && (ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_eattr == 1)" ), |
||
14893 | srec( PadEAInfo, req_cond="(ncp.ret_info_mask != 0x0000) && (ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_eattr == 0)" ), |
||
14894 | srec( NSInfoStruct, req_cond="(ncp.ret_info_mask != 0x0000) && (ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_ns == 1)" ), |
||
14895 | srec( PadNSInfo, req_cond="(ncp.ret_info_mask != 0x0000) && (ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_ns == 0)" ), |
||
14896 | srec( DSSpaceAllocateStruct, req_cond="(ncp.ext_info_newstyle == 1) && (ncp.ret_info_mask_alloc == 1)" ), |
||
14897 | srec( AttributesStruct, req_cond="(ncp.ext_info_newstyle == 1) && (ncp.ret_info_mask_attr == 1)" ), |
||
14898 | srec( DataStreamSizeStruct, req_cond="(ncp.ext_info_newstyle == 1) && (ncp.ret_info_mask_size == 1)" ), |
||
14899 | srec( TotalStreamSizeStruct, req_cond="(ncp.ext_info_newstyle == 1) && (ncp.ret_info_mask_tspace == 1)" ), |
||
14900 | srec( EAInfoStruct, req_cond="(ncp.ext_info_newstyle == 1) && (ncp.ret_info_mask_eattr == 1)" ), |
||
14901 | srec( ModifyInfoStruct, req_cond="(ncp.ext_info_newstyle == 1) && (ncp.ret_info_mask_mod == 1)" ), |
||
14902 | srec( CreationInfoStruct, req_cond="(ncp.ext_info_newstyle == 1) && (ncp.ret_info_mask_create == 1)" ), |
||
14903 | srec( ArchiveInfoStruct, req_cond="(ncp.ext_info_newstyle == 1) && (ncp.ret_info_mask_arch == 1)" ), |
||
14904 | srec( DirEntryStruct, req_cond="(ncp.ext_info_newstyle == 1) && (ncp.ret_info_mask_dir == 1)" ), |
||
14905 | srec( RightsInfoStruct, req_cond="(ncp.ext_info_newstyle == 1) && (ncp.ret_info_mask_rights == 1)" ), |
||
14906 | srec( NSInfoStruct, req_cond="(ncp.ext_info_newstyle == 1) && (ncp.ret_info_mask_ns == 1)" ), |
||
14907 | srec( ReferenceIDStruct, req_cond="ncp.ret_info_mask_id == 1" ), |
||
14908 | srec( NSAttributeStruct, req_cond="ncp.ret_info_mask_ns_attr == 1" ), |
||
14909 | rec( -1, 4, DataStreamsCount, var="x" , req_cond="ncp.ret_info_mask_actual == 1" ), |
||
14910 | srec( DStreamActual, repeat = "x" , req_cond="ncp.ret_info_mask_actual == 1" ), |
||
14911 | rec( -1, 4, DataStreamsCount, var="y", req_cond="ncp.ret_info_mask_logical == 1" ), |
||
14912 | srec( DStreamLogical, repeat="y" , req_cond="ncp.ret_info_mask_logical == 1" ), |
||
14913 | srec( LastUpdatedInSecondsStruct, req_cond="ncp.ext_info_update == 1" ), |
||
14914 | srec( DOSName16Struct, req_cond="ncp.ext_info_dos_name == 1" ), |
||
14915 | srec( FlushTimeStruct, req_cond="ncp.ext_info_flush == 1" ), |
||
14916 | srec( ParentBaseIDStruct, req_cond="ncp.ext_info_parental == 1" ), |
||
14917 | srec( MacFinderInfoStruct, req_cond="ncp.ext_info_mac_finder == 1" ), |
||
14918 | srec( SiblingCountStruct, req_cond="ncp.ext_info_sibling == 1" ), |
||
14919 | srec( EffectiveRightsStruct, req_cond="ncp.ext_info_effective == 1" ), |
||
14920 | srec( MacTimeStruct, req_cond="ncp.ext_info_mac_date == 1" ), |
||
14921 | srec( LastAccessedTimeStruct, req_cond="ncp.ext_info_access == 1" ), |
||
14922 | srec( FileSize64bitStruct, req_cond="ncp.ext_info_64_bit_fs == 1" ), |
||
14923 | srec( FileName16Struct, req_cond="ncp.ret_info_mask_fname == 1" ), |
||
14924 | ]) |
||
14925 | pkt.ReqCondSizeVariable() |
||
14926 | pkt.CompletionCodes([0x0000, 0x0102, 0x7f00, 0x8000, 0x8101, 0x8401, 0x8501, |
||
14927 | 0x8701, 0x8d00, 0x8f00, 0x9001, 0x9400, 0x9600, |
||
14928 | 0x9804, 0x9b03, 0x9c03, 0xa901, 0xaa00, 0xbf00, 0xfd00, 0xff16]) |
||
14929 | pkt.MakeExpert("file_rights") |
||
14930 | # 2222/5921, 89/33 |
||
14931 | pkt = NCP(0x5921, "Open/Create File or Subdirectory II with Callback", 'enhanced', has_length=0) |
||
14932 | pkt.Request((41, 294), [ |
||
14933 | rec( 8, 1, NameSpace ), |
||
14934 | rec( 9, 1, DataStream ), |
||
14935 | rec( 10, 1, OpenCreateMode ), |
||
14936 | rec( 11, 1, Reserved ), |
||
14937 | rec( 12, 2, SearchAttributesLow ), |
||
14938 | rec( 14, 2, Reserved2 ), |
||
14939 | rec( 16, 2, ReturnInfoMask ), |
||
14940 | rec( 18, 2, ExtendedInfo ), |
||
14941 | rec( 20, 4, AttributesDef32 ), |
||
14942 | rec( 24, 2, DesiredAccessRights ), |
||
14943 | rec( 26, 4, DirectoryBase ), |
||
14944 | rec( 30, 1, VolumeNumber ), |
||
14945 | rec( 31, 1, HandleFlag ), |
||
14946 | rec( 32, 1, DataTypeFlag ), |
||
14947 | rec( 33, 5, Reserved5 ), |
||
14948 | rec( 38, 1, PathCount, var="x" ), |
||
14949 | rec( 39, (2,255), Path16, repeat="x", info_str=(Path16, "Open or Create II with Op-Lock: %s", "/%s") ), |
||
14950 | ]) |
||
14951 | pkt.Reply( NO_LENGTH_CHECK, [ |
||
14952 | rec( 8, 4, FileHandle ), |
||
14953 | rec( 12, 1, OpenCreateAction ), |
||
14954 | rec( 13, 1, OCRetFlags ), |
||
14955 | srec( DSSpaceAllocateStruct, req_cond="(ncp.ret_info_mask != 0x0000) && (ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_alloc == 1)" ), |
||
14956 | srec( PadDSSpaceAllocate, req_cond="(ncp.ret_info_mask != 0x0000) && (ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_alloc == 0)" ), |
||
14957 | srec( AttributesStruct, req_cond="(ncp.ret_info_mask != 0x0000) && (ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_attr == 1)" ), |
||
14958 | srec( PadAttributes, req_cond="(ncp.ret_info_mask != 0x0000) && (ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_attr == 0)" ), |
||
14959 | srec( DataStreamSizeStruct, req_cond="(ncp.ret_info_mask != 0x0000) && (ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_size == 1)" ), |
||
14960 | srec( PadDataStreamSize, req_cond="(ncp.ret_info_mask != 0x0000) && (ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_size == 0)" ), |
||
14961 | srec( TotalStreamSizeStruct, req_cond="(ncp.ret_info_mask != 0x0000) && (ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_tspace == 1)" ), |
||
14962 | srec( PadTotalStreamSize, req_cond="(ncp.ret_info_mask != 0x0000) && (ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_tspace == 0)" ), |
||
14963 | srec( CreationInfoStruct, req_cond="(ncp.ret_info_mask != 0x0000) && (ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_create == 1)" ), |
||
14964 | srec( PadCreationInfo, req_cond="(ncp.ret_info_mask != 0x0000) && (ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_create == 0)" ), |
||
14965 | srec( ModifyInfoStruct, req_cond="(ncp.ret_info_mask != 0x0000) && (ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_mod == 1)" ), |
||
14966 | srec( PadModifyInfo, req_cond="(ncp.ret_info_mask != 0x0000) && (ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_mod == 0)" ), |
||
14967 | srec( ArchiveInfoStruct, req_cond="(ncp.ret_info_mask != 0x0000) && (ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_arch == 1)" ), |
||
14968 | srec( PadArchiveInfo, req_cond="(ncp.ret_info_mask != 0x0000) && (ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_arch == 0)" ), |
||
14969 | srec( RightsInfoStruct, req_cond="(ncp.ret_info_mask != 0x0000) && (ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_rights == 1)" ), |
||
14970 | srec( PadRightsInfo, req_cond="(ncp.ret_info_mask != 0x0000) && (ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_rights == 0)" ), |
||
14971 | srec( DirEntryStruct, req_cond="(ncp.ret_info_mask != 0x0000) && (ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_dir == 1)" ), |
||
14972 | srec( PadDirEntry, req_cond="(ncp.ret_info_mask != 0x0000) && (ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_dir == 0)" ), |
||
14973 | srec( EAInfoStruct, req_cond="(ncp.ret_info_mask != 0x0000) && (ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_eattr == 1)" ), |
||
14974 | srec( PadEAInfo, req_cond="(ncp.ret_info_mask != 0x0000) && (ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_eattr == 0)" ), |
||
14975 | srec( NSInfoStruct, req_cond="(ncp.ret_info_mask != 0x0000) && (ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_ns == 1)" ), |
||
14976 | srec( PadNSInfo, req_cond="(ncp.ret_info_mask != 0x0000) && (ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_ns == 0)" ), |
||
14977 | srec( DSSpaceAllocateStruct, req_cond="(ncp.ext_info_newstyle == 1) && (ncp.ret_info_mask_alloc == 1)" ), |
||
14978 | srec( AttributesStruct, req_cond="(ncp.ext_info_newstyle == 1) && (ncp.ret_info_mask_attr == 1)" ), |
||
14979 | srec( DataStreamSizeStruct, req_cond="(ncp.ext_info_newstyle == 1) && (ncp.ret_info_mask_size == 1)" ), |
||
14980 | srec( TotalStreamSizeStruct, req_cond="(ncp.ext_info_newstyle == 1) && (ncp.ret_info_mask_tspace == 1)" ), |
||
14981 | srec( EAInfoStruct, req_cond="(ncp.ext_info_newstyle == 1) && (ncp.ret_info_mask_eattr == 1)" ), |
||
14982 | srec( ModifyInfoStruct, req_cond="(ncp.ext_info_newstyle == 1) && (ncp.ret_info_mask_mod == 1)" ), |
||
14983 | srec( CreationInfoStruct, req_cond="(ncp.ext_info_newstyle == 1) && (ncp.ret_info_mask_create == 1)" ), |
||
14984 | srec( ArchiveInfoStruct, req_cond="(ncp.ext_info_newstyle == 1) && (ncp.ret_info_mask_arch == 1)" ), |
||
14985 | srec( DirEntryStruct, req_cond="(ncp.ext_info_newstyle == 1) && (ncp.ret_info_mask_dir == 1)" ), |
||
14986 | srec( RightsInfoStruct, req_cond="(ncp.ext_info_newstyle == 1) && (ncp.ret_info_mask_rights == 1)" ), |
||
14987 | srec( NSInfoStruct, req_cond="(ncp.ext_info_newstyle == 1) && (ncp.ret_info_mask_ns == 1)" ), |
||
14988 | srec( ReferenceIDStruct, req_cond="ncp.ret_info_mask_id == 1" ), |
||
14989 | srec( NSAttributeStruct, req_cond="ncp.ret_info_mask_ns_attr == 1" ), |
||
14990 | rec( -1, 4, DataStreamsCount, var="x" , req_cond="ncp.ret_info_mask_actual == 1" ), |
||
14991 | srec( DStreamActual, repeat = "x" , req_cond="ncp.ret_info_mask_actual == 1" ), |
||
14992 | rec( -1, 4, DataStreamsCount, var="y", req_cond="ncp.ret_info_mask_logical == 1" ), |
||
14993 | srec( DStreamLogical, repeat="y" , req_cond="ncp.ret_info_mask_logical == 1" ), |
||
14994 | srec( LastUpdatedInSecondsStruct, req_cond="ncp.ext_info_update == 1" ), |
||
14995 | srec( DOSName16Struct, req_cond="ncp.ext_info_dos_name == 1" ), |
||
14996 | srec( FlushTimeStruct, req_cond="ncp.ext_info_flush == 1" ), |
||
14997 | srec( ParentBaseIDStruct, req_cond="ncp.ext_info_parental == 1" ), |
||
14998 | srec( MacFinderInfoStruct, req_cond="ncp.ext_info_mac_finder == 1" ), |
||
14999 | srec( SiblingCountStruct, req_cond="ncp.ext_info_sibling == 1" ), |
||
15000 | srec( EffectiveRightsStruct, req_cond="ncp.ext_info_effective == 1" ), |
||
15001 | srec( MacTimeStruct, req_cond="ncp.ext_info_mac_date == 1" ), |
||
15002 | srec( LastAccessedTimeStruct, req_cond="ncp.ext_info_access == 1" ), |
||
15003 | srec( FileSize64bitStruct, req_cond="ncp.ext_info_64_bit_fs == 1" ), |
||
15004 | srec( FileName16Struct, req_cond="ncp.ret_info_mask_fname == 1" ), |
||
15005 | ]) |
||
15006 | pkt.ReqCondSizeVariable() |
||
15007 | pkt.CompletionCodes([0x0000, 0x0102, 0x8000, 0x8101, 0x8401, 0x8501, |
||
15008 | 0x8701, 0x8d00, 0x8f00, 0x9001, 0x9600, |
||
15009 | 0x9804, 0x9b03, 0x9c03, 0xa901, 0xaa00, 0xbf00, 0xfd00, 0xff16]) |
||
15010 | pkt.MakeExpert("file_rights") |
||
15011 | # 2222/5923, 89/35 |
||
15012 | pkt = NCP(0x5923, "Modify DOS Attributes on a File or Subdirectory", 'enhanced', has_length=0) |
||
15013 | pkt.Request((35, 288), [ |
||
15014 | rec( 8, 1, NameSpace ), |
||
15015 | rec( 9, 1, Flags ), |
||
15016 | rec( 10, 2, SearchAttributesLow ), |
||
15017 | rec( 12, 2, ReturnInfoMask ), |
||
15018 | rec( 14, 2, ExtendedInfo ), |
||
15019 | rec( 16, 4, AttributesDef32 ), |
||
15020 | rec( 20, 4, DirectoryBase ), |
||
15021 | rec( 24, 1, VolumeNumber ), |
||
15022 | rec( 25, 1, HandleFlag ), |
||
15023 | rec( 26, 1, DataTypeFlag ), |
||
15024 | rec( 27, 5, Reserved5 ), |
||
15025 | rec( 32, 1, PathCount, var="x" ), |
||
15026 | rec( 33, (2,255), Path16, repeat="x", info_str=(Path16, "Modify DOS Attributes for: %s", "/%s") ), |
||
15027 | ]) |
||
15028 | pkt.Reply(24, [ |
||
15029 | rec( 8, 4, ItemsChecked ), |
||
15030 | rec( 12, 4, ItemsChanged ), |
||
15031 | rec( 16, 4, AttributeValidFlag ), |
||
15032 | rec( 20, 4, AttributesDef32 ), |
||
15033 | ]) |
||
15034 | pkt.CompletionCodes([0x0000, 0x0102, 0x8000, 0x8101, 0x8401, 0x8501, |
||
15035 | 0x8701, 0x8d00, 0x8f00, 0x9001, 0x9600, |
||
15036 | 0x9804, 0x9b03, 0x9c03, 0xa901, 0xaa00, 0xbf00, 0xfd00, 0xff16]) |
||
15037 | # 2222/5927, 89/39 |
||
15038 | pkt = NCP(0x5927, "Get Directory Disk Space Restriction", 'enhanced', has_length=0) |
||
15039 | pkt.Request((26, 279), [ |
||
15040 | rec( 8, 1, NameSpace ), |
||
15041 | rec( 9, 2, Reserved2 ), |
||
15042 | rec( 11, 4, DirectoryBase ), |
||
15043 | rec( 15, 1, VolumeNumber ), |
||
15044 | rec( 16, 1, HandleFlag ), |
||
15045 | rec( 17, 1, DataTypeFlag ), |
||
15046 | rec( 18, 5, Reserved5 ), |
||
15047 | rec( 23, 1, PathCount, var="x" ), |
||
15048 | rec( 24, (2,255), Path16, repeat="x", info_str=(Path16, "Get Disk Space Restriction for: %s", "/%s") ), |
||
15049 | ]) |
||
15050 | pkt.Reply(18, [ |
||
15051 | rec( 8, 1, NumberOfEntries, var="x" ), |
||
15052 | rec( 9, 9, SpaceStruct, repeat="x" ), |
||
15053 | ]) |
||
15054 | pkt.CompletionCodes([0x0000, 0x8000, 0x8101, 0x8401, 0x8501, |
||
15055 | 0x8701, 0x8d00, 0x8f00, 0x9001, 0x9600, |
||
15056 | 0x9804, 0x9b03, 0x9c03, 0xa901, 0xaa00, 0xbf00, 0xfd00, |
||
15057 | 0xff16]) |
||
15058 | # 2222/5928, 89/40 |
||
15059 | pkt = NCP(0x5928, "Search for File or Subdirectory Set (Extended Errors)", 'enhanced', has_length=0) |
||
15060 | pkt.Request((30, 283), [ |
||
15061 | rec( 8, 1, NameSpace ), |
||
15062 | rec( 9, 1, DataStream ), |
||
15063 | rec( 10, 2, SearchAttributesLow ), |
||
15064 | rec( 12, 2, ReturnInfoMask ), |
||
15065 | rec( 14, 2, ExtendedInfo ), |
||
15066 | rec( 16, 2, ReturnInfoCount ), |
||
15067 | rec( 18, 9, SeachSequenceStruct ), |
||
15068 | rec( 27, 1, DataTypeFlag ), |
||
15069 | rec( 28, (2,255), SearchPattern16, info_str=(SearchPattern16, "Search for: %s", ", %s") ), |
||
15070 | ]) |
||
15071 | pkt.Reply(NO_LENGTH_CHECK, [ |
||
15072 | rec( 8, 9, SeachSequenceStruct ), |
||
15073 | rec( 17, 1, MoreFlag ), |
||
15074 | rec( 18, 2, InfoCount ), |
||
15075 | srec( DSSpaceAllocateStruct, req_cond="(ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_alloc == 1)" ), |
||
15076 | srec( PadDSSpaceAllocate, req_cond="(ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_alloc == 0)" ), |
||
15077 | srec( AttributesStruct, req_cond="(ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_attr == 1)" ), |
||
15078 | srec( PadAttributes, req_cond="(ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_attr == 0)" ), |
||
15079 | srec( DataStreamSizeStruct, req_cond="(ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_size == 1)" ), |
||
15080 | srec( PadDataStreamSize, req_cond="(ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_size == 0)" ), |
||
15081 | srec( TotalStreamSizeStruct, req_cond="(ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_tspace == 1)" ), |
||
15082 | srec( PadTotalStreamSize, req_cond="(ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_tspace == 0)" ), |
||
15083 | srec( CreationInfoStruct, req_cond="(ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_create == 1)" ), |
||
15084 | srec( PadCreationInfo, req_cond="(ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_create == 0)" ), |
||
15085 | srec( ModifyInfoStruct, req_cond="(ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_mod == 1)" ), |
||
15086 | srec( PadModifyInfo, req_cond="(ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_mod == 0)" ), |
||
15087 | srec( ArchiveInfoStruct, req_cond="(ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_arch == 1)" ), |
||
15088 | srec( PadArchiveInfo, req_cond="(ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_arch == 0)" ), |
||
15089 | srec( RightsInfoStruct, req_cond="(ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_rights == 1)" ), |
||
15090 | srec( PadRightsInfo, req_cond="(ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_rights == 0)" ), |
||
15091 | srec( DirEntryStruct, req_cond="(ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_dir == 1)" ), |
||
15092 | srec( PadDirEntry, req_cond="(ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_dir == 0)" ), |
||
15093 | srec( EAInfoStruct, req_cond="(ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_eattr == 1)" ), |
||
15094 | srec( PadEAInfo, req_cond="(ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_eattr == 0)" ), |
||
15095 | srec( NSInfoStruct, req_cond="(ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_ns == 1)" ), |
||
15096 | srec( PadNSInfo, req_cond="(ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_ns == 0)" ), |
||
15097 | srec( FileName16Struct, req_cond="(ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_fname == 1)" ), |
||
15098 | srec( DSSpaceAllocateStruct, req_cond="(ncp.ext_info_newstyle == 1) && (ncp.ret_info_mask_alloc == 1)" ), |
||
15099 | srec( AttributesStruct, req_cond="(ncp.ext_info_newstyle == 1) && (ncp.ret_info_mask_attr == 1)" ), |
||
15100 | srec( DataStreamSizeStruct, req_cond="(ncp.ext_info_newstyle == 1) && (ncp.ret_info_mask_size == 1)" ), |
||
15101 | srec( TotalStreamSizeStruct, req_cond="(ncp.ext_info_newstyle == 1) && (ncp.ret_info_mask_tspace == 1)" ), |
||
15102 | srec( CreationInfoStruct, req_cond="(ncp.ext_info_newstyle == 1) && (ncp.ret_info_mask_create == 1)" ), |
||
15103 | srec( ModifyInfoStruct, req_cond="(ncp.ext_info_newstyle == 1) && (ncp.ret_info_mask_mod == 1)" ), |
||
15104 | srec( ArchiveInfoStruct, req_cond="(ncp.ext_info_newstyle == 1) && (ncp.ret_info_mask_arch == 1)" ), |
||
15105 | srec( RightsInfoStruct, req_cond="(ncp.ext_info_newstyle == 1) && (ncp.ret_info_mask_rights == 1)" ), |
||
15106 | srec( DirEntryStruct, req_cond="(ncp.ext_info_newstyle == 1) && (ncp.ret_info_mask_dir == 1)" ), |
||
15107 | srec( EAInfoStruct, req_cond="(ncp.ext_info_newstyle == 1) && (ncp.ret_info_mask_eattr == 1)" ), |
||
15108 | srec( NSInfoStruct, req_cond="(ncp.ext_info_newstyle == 1) && (ncp.ret_info_mask_ns == 1)" ), |
||
15109 | srec( FileSize64bitStruct, req_cond="(ncp.ext_info_64_bit_fs == 1) && (ncp.ret_info_mask_fname == 1)" ), |
||
15110 | srec( FileName16Struct, req_cond="(ncp.ext_info_newstyle == 1) && (ncp.ret_info_mask_fname == 1)" ), |
||
15111 | ]) |
||
15112 | pkt.ReqCondSizeVariable() |
||
15113 | pkt.CompletionCodes([0x0000, 0x8000, 0x8101, 0x8401, 0x8501, |
||
15114 | 0x8701, 0x8d00, 0x8f00, 0x9001, 0x9600, |
||
15115 | 0x9804, 0x9b03, 0x9c03, 0xa901, 0xaa00, 0xbf00, 0xfd00, 0xff16]) |
||
15116 | # 2222/5929, 89/41 |
||
15117 | pkt = NCP(0x5929, "Get Directory Disk Space Restriction 64 Bit Aware", 'enhanced', has_length=0) |
||
15118 | pkt.Request((26, 279), [ |
||
15119 | rec( 8, 1, NameSpace ), |
||
15120 | rec( 9, 1, Reserved ), |
||
15121 | rec( 10, 1, InfoLevelNumber), |
||
15122 | rec( 11, 4, DirectoryBase ), |
||
15123 | rec( 15, 1, VolumeNumber ), |
||
15124 | rec( 16, 1, HandleFlag ), |
||
15125 | rec( 17, 1, DataTypeFlag ), |
||
15126 | rec( 18, 5, Reserved5 ), |
||
15127 | rec( 23, 1, PathCount, var="x" ), |
||
15128 | rec( 24, (2,255), Path16, repeat="x", info_str=(Path16, "Get Disk Space Restriction for: %s", "/%s") ), |
||
15129 | ]) |
||
15130 | pkt.Reply(NO_LENGTH_CHECK, [ |
||
15131 | rec( -1, 8, MaxSpace64, req_cond = "(ncp.info_level_num == 0)" ), |
||
15132 | rec( -1, 8, MinSpaceLeft64, req_cond = "(ncp.info_level_num == 0)" ), |
||
15133 | rec( -1, 1, NumberOfEntries, var="x", req_cond = "(ncp.info_level_num == 1)" ), |
||
15134 | srec( DirDiskSpaceRest64bit, repeat="x", req_cond = "(ncp.info_level_num == 1)" ), |
||
15135 | ]) |
||
15136 | pkt.ReqCondSizeVariable() |
||
15137 | pkt.CompletionCodes([0x0000, 0x8000, 0x8101, 0x8401, 0x8501, |
||
15138 | 0x8701, 0x8d00, 0x8f00, 0x9001, 0x9600, |
||
15139 | 0x9804, 0x9b03, 0x9c03, 0xa901, 0xaa00, 0xbf00, 0xfd00, |
||
15140 | 0xff16]) |
||
15141 | # 2222/5932, 89/50 |
||
15142 | pkt = NCP(0x5932, "Get Object Effective Rights", "enhanced", has_length=0) |
||
15143 | pkt.Request(25, [ |
||
15144 | rec( 8, 1, NameSpace ), |
||
15145 | rec( 9, 4, ObjectID ), |
||
15146 | rec( 13, 4, DirectoryBase ), |
||
15147 | rec( 17, 1, VolumeNumber ), |
||
15148 | rec( 18, 1, HandleFlag ), |
||
15149 | rec( 19, 1, DataTypeFlag ), |
||
15150 | rec( 20, 5, Reserved5 ), |
||
15151 | ]) |
||
15152 | pkt.Reply( 10, [ |
||
15153 | rec( 8, 2, TrusteeRights ), |
||
15154 | ]) |
||
15155 | pkt.CompletionCodes([0x0000, 0x7e01, 0x9b00, 0x9c03, 0xa901, 0xaa00]) |
||
15156 | # 2222/5934, 89/52 |
||
15157 | pkt = NCP(0x5934, "Write Extended Attribute", 'enhanced', has_length=0 ) |
||
15158 | pkt.Request((36,98), [ |
||
15159 | rec( 8, 2, EAFlags ), |
||
15160 | rec( 10, 4, EAHandleOrNetWareHandleOrVolume ), |
||
15161 | rec( 14, 4, ReservedOrDirectoryNumber ), |
||
15162 | rec( 18, 4, TtlWriteDataSize ), |
||
15163 | rec( 22, 4, FileOffset ), |
||
15164 | rec( 26, 4, EAAccessFlag ), |
||
15165 | rec( 30, 1, DataTypeFlag ), |
||
15166 | rec( 31, 2, EAValueLength, var='x' ), |
||
15167 | rec( 33, (2,64), EAKey, info_str=(EAKey, "Write Extended Attribute: %s", ", %s") ), |
||
15168 | rec( -1, 1, EAValueRep, repeat='x' ), |
||
15169 | ]) |
||
15170 | pkt.Reply(20, [ |
||
15171 | rec( 8, 4, EAErrorCodes ), |
||
15172 | rec( 12, 4, EABytesWritten ), |
||
15173 | rec( 16, 4, NewEAHandle ), |
||
15174 | ]) |
||
15175 | pkt.CompletionCodes([0x0000, 0xc800, 0xc900, 0xcb00, 0xce00, 0xcf00, 0xd101, |
||
15176 | 0xd203, 0xa901, 0xaa00, 0xd301, 0xd402]) |
||
15177 | # 2222/5935, 89/53 |
||
15178 | pkt = NCP(0x5935, "Read Extended Attribute", 'enhanced', has_length=0 ) |
||
15179 | pkt.Request((31,541), [ |
||
15180 | rec( 8, 2, EAFlags ), |
||
15181 | rec( 10, 4, EAHandleOrNetWareHandleOrVolume ), |
||
15182 | rec( 14, 4, ReservedOrDirectoryNumber ), |
||
15183 | rec( 18, 4, FileOffset ), |
||
15184 | rec( 22, 4, InspectSize ), |
||
15185 | rec( 26, 1, DataTypeFlag ), |
||
15186 | rec( 27, 2, MaxReadDataReplySize ), |
||
15187 | rec( 29, (2,512), EAKey, info_str=(EAKey, "Read Extended Attribute: %s", ", %s") ), |
||
15188 | ]) |
||
15189 | pkt.Reply((26,536), [ |
||
15190 | rec( 8, 4, EAErrorCodes ), |
||
15191 | rec( 12, 4, TtlValuesLength ), |
||
15192 | rec( 16, 4, NewEAHandle ), |
||
15193 | rec( 20, 4, EAAccessFlag ), |
||
15194 | rec( 24, (2,512), EAValue ), |
||
15195 | ]) |
||
15196 | pkt.CompletionCodes([0x0000, 0xa901, 0xaa00, 0xc900, 0xce00, 0xcf00, 0xd101, |
||
15197 | 0xd301]) |
||
15198 | # 2222/5936, 89/54 |
||
15199 | pkt = NCP(0x5936, "Enumerate Extended Attribute", 'enhanced', has_length=0 ) |
||
15200 | pkt.Request((27,537), [ |
||
15201 | rec( 8, 2, EAFlags ), |
||
15202 | rec( 10, 4, EAHandleOrNetWareHandleOrVolume ), |
||
15203 | rec( 14, 4, ReservedOrDirectoryNumber ), |
||
15204 | rec( 18, 4, InspectSize ), |
||
15205 | rec( 22, 2, SequenceNumber ), |
||
15206 | rec( 24, 1, DataTypeFlag ), |
||
15207 | rec( 25, (2,512), EAKey, info_str=(EAKey, "Enumerate Extended Attribute: %s", ", %s") ), |
||
15208 | ]) |
||
15209 | pkt.Reply(28, [ |
||
15210 | rec( 8, 4, EAErrorCodes ), |
||
15211 | rec( 12, 4, TtlEAs ), |
||
15212 | rec( 16, 4, TtlEAsDataSize ), |
||
15213 | rec( 20, 4, TtlEAsKeySize ), |
||
15214 | rec( 24, 4, NewEAHandle ), |
||
15215 | ]) |
||
15216 | pkt.CompletionCodes([0x0000, 0x8800, 0xa901, 0xaa00, 0xc900, 0xce00, 0xcf00, 0xd101, |
||
15217 | 0xd301]) |
||
15218 | # 2222/5947, 89/71 |
||
15219 | pkt = NCP(0x5947, "Scan Volume Trustee Object Paths", 'enhanced', has_length=0) |
||
15220 | pkt.Request(21, [ |
||
15221 | rec( 8, 4, VolumeID ), |
||
15222 | rec( 12, 4, ObjectID ), |
||
15223 | rec( 16, 4, SequenceNumber ), |
||
15224 | rec( 20, 1, DataTypeFlag ), |
||
15225 | ]) |
||
15226 | pkt.Reply((20,273), [ |
||
15227 | rec( 8, 4, SequenceNumber ), |
||
15228 | rec( 12, 4, ObjectID ), |
||
15229 | rec( 16, 1, TrusteeAccessMask ), |
||
15230 | rec( 17, 1, PathCount, var="x" ), |
||
15231 | rec( 18, (2,255), Path16, repeat="x" ), |
||
15232 | ]) |
||
15233 | pkt.CompletionCodes([0x0000, 0x8000, 0x8101, 0x8401, 0x8501, |
||
15234 | 0x8701, 0x8d00, 0x8f00, 0x9001, 0x9600, |
||
15235 | 0x9804, 0x9b03, 0x9c03, 0xa901, 0xaa00, 0xbf00, 0xfd00, 0xff16]) |
||
15236 | # 2222/5A01, 90/00 |
||
15237 | pkt = NCP(0x5A00, "Parse Tree", 'file') |
||
15238 | pkt.Request(46, [ |
||
15239 | rec( 10, 4, InfoMask ), |
||
15240 | rec( 14, 4, Reserved4 ), |
||
15241 | rec( 18, 4, Reserved4 ), |
||
15242 | rec( 22, 4, limbCount ), |
||
15243 | rec( 26, 4, limbFlags ), |
||
15244 | rec( 30, 4, VolumeNumberLong ), |
||
15245 | rec( 34, 4, DirectoryBase ), |
||
15246 | rec( 38, 4, limbScanNum ), |
||
15247 | rec( 42, 4, NameSpace ), |
||
15248 | ]) |
||
15249 | pkt.Reply(32, [ |
||
15250 | rec( 8, 4, limbCount ), |
||
15251 | rec( 12, 4, ItemsCount ), |
||
15252 | rec( 16, 4, nextLimbScanNum ), |
||
15253 | rec( 20, 4, CompletionCode ), |
||
15254 | rec( 24, 1, FolderFlag ), |
||
15255 | rec( 25, 3, Reserved ), |
||
15256 | rec( 28, 4, DirectoryBase ), |
||
15257 | ]) |
||
15258 | pkt.CompletionCodes([0x0000, 0x7e01, 0x8000, 0x8101, 0x8401, 0x8501, |
||
15259 | 0x8701, 0x8800, 0x8d00, 0x8f00, 0x9001, 0x9600, |
||
15260 | 0x9804, 0x9b03, 0x9c03, 0xfd00, 0xff16]) |
||
15261 | # 2222/5A0A, 90/10 |
||
15262 | pkt = NCP(0x5A0A, "Get Reference Count from Dir Entry Number", 'file') |
||
15263 | pkt.Request(19, [ |
||
15264 | rec( 10, 4, VolumeNumberLong ), |
||
15265 | rec( 14, 4, DirectoryBase ), |
||
15266 | rec( 18, 1, NameSpace ), |
||
15267 | ]) |
||
15268 | pkt.Reply(12, [ |
||
15269 | rec( 8, 4, ReferenceCount ), |
||
15270 | ]) |
||
15271 | pkt.CompletionCodes([0x0000, 0x7e01, 0x8000, 0x8101, 0x8401, 0x8501, |
||
15272 | 0x8701, 0x8800, 0x8d00, 0x8f00, 0x9001, 0x9600, |
||
15273 | 0x9804, 0x9b03, 0x9c03, 0xfd00, 0xff16]) |
||
15274 | # 2222/5A0B, 90/11 |
||
15275 | pkt = NCP(0x5A0B, "Get Reference Count from Dir Handle", 'file') |
||
15276 | pkt.Request(14, [ |
||
15277 | rec( 10, 4, DirHandle ), |
||
15278 | ]) |
||
15279 | pkt.Reply(12, [ |
||
15280 | rec( 8, 4, ReferenceCount ), |
||
15281 | ]) |
||
15282 | pkt.CompletionCodes([0x0000, 0x7e01, 0x8000, 0x8101, 0x8401, 0x8501, |
||
15283 | 0x8701, 0x8800, 0x8d00, 0x8f00, 0x9001, 0x9600, |
||
15284 | 0x9804, 0x9b03, 0x9c03, 0xfd00, 0xff16]) |
||
15285 | # 2222/5A0C, 90/12 |
||
15286 | pkt = NCP(0x5A0C, "Set Compressed File Size", 'file') |
||
15287 | pkt.Request(20, [ |
||
15288 | rec( 10, 6, FileHandle ), |
||
15289 | rec( 16, 4, SuggestedFileSize ), |
||
15290 | ]) |
||
15291 | pkt.Reply(16, [ |
||
15292 | rec( 8, 4, OldFileSize ), |
||
15293 | rec( 12, 4, NewFileSize ), |
||
15294 | ]) |
||
15295 | pkt.CompletionCodes([0x0000, 0x7e01, 0x8000, 0x8101, 0x8401, 0x8501, |
||
15296 | 0x8701, 0x8800, 0x8d00, 0x8f00, 0x9001, 0x9600, |
||
15297 | 0x9804, 0x9b03, 0x9c03, 0xfd00, 0xff16]) |
||
15298 | # 2222/5A80, 90/128 |
||
15299 | pkt = NCP(0x5A80, "Move File Data To Data Migration", 'migration') |
||
15300 | pkt.Request(27, [ |
||
15301 | rec( 10, 4, VolumeNumberLong ), |
||
15302 | rec( 14, 4, DirectoryEntryNumber ), |
||
15303 | rec( 18, 1, NameSpace ), |
||
15304 | rec( 19, 3, Reserved ), |
||
15305 | rec( 22, 4, SupportModuleID ), |
||
15306 | rec( 26, 1, DMFlags ), |
||
15307 | ]) |
||
15308 | pkt.Reply(8) |
||
15309 | pkt.CompletionCodes([0x0000, 0x7e01, 0x8000, 0x8101, 0x8401, 0x8501, |
||
15310 | 0x8701, 0x8800, 0x8d00, 0x8f00, 0x9001, 0x9600, |
||
15311 | 0x9804, 0x9b03, 0x9c03, 0xa800, 0xfd00, 0xff16]) |
||
15312 | # 2222/5A81, 90/129 |
||
15313 | pkt = NCP(0x5A81, "Data Migration File Information", 'migration') |
||
15314 | pkt.Request(19, [ |
||
15315 | rec( 10, 4, VolumeNumberLong ), |
||
15316 | rec( 14, 4, DirectoryEntryNumber ), |
||
15317 | rec( 18, 1, NameSpace ), |
||
15318 | ]) |
||
15319 | pkt.Reply(24, [ |
||
15320 | rec( 8, 4, SupportModuleID ), |
||
15321 | rec( 12, 4, RestoreTime ), |
||
15322 | rec( 16, 4, DMInfoEntries, var="x" ), |
||
15323 | rec( 20, 4, DataSize, repeat="x" ), |
||
15324 | ]) |
||
15325 | pkt.CompletionCodes([0x0000, 0x7e01, 0x8000, 0x8101, 0x8401, 0x8501, |
||
15326 | 0x8701, 0x8800, 0x8d00, 0x8f00, 0x9001, 0x9600, |
||
15327 | 0x9804, 0x9b03, 0x9c03, 0xa800, 0xfd00, 0xff16]) |
||
15328 | # 2222/5A82, 90/130 |
||
15329 | pkt = NCP(0x5A82, "Volume Data Migration Status", 'migration') |
||
15330 | pkt.Request(18, [ |
||
15331 | rec( 10, 4, VolumeNumberLong ), |
||
15332 | rec( 14, 4, SupportModuleID ), |
||
15333 | ]) |
||
15334 | pkt.Reply(32, [ |
||
15335 | rec( 8, 4, NumOfFilesMigrated ), |
||
15336 | rec( 12, 4, TtlMigratedSize ), |
||
15337 | rec( 16, 4, SpaceUsed ), |
||
15338 | rec( 20, 4, LimboUsed ), |
||
15339 | rec( 24, 4, SpaceMigrated ), |
||
15340 | rec( 28, 4, FileLimbo ), |
||
15341 | ]) |
||
15342 | pkt.CompletionCodes([0x0000, 0x7e01, 0x8000, 0x8101, 0x8401, 0x8501, |
||
15343 | 0x8701, 0x8800, 0x8d00, 0x8f00, 0x9001, 0x9600, |
||
15344 | 0x9804, 0x9b03, 0x9c03, 0xa800, 0xfd00, 0xff16]) |
||
15345 | # 2222/5A83, 90/131 |
||
15346 | pkt = NCP(0x5A83, "Migrator Status Info", 'migration') |
||
15347 | pkt.Request(10) |
||
15348 | pkt.Reply(20, [ |
||
15349 | rec( 8, 1, DMPresentFlag ), |
||
15350 | rec( 9, 3, Reserved3 ), |
||
15351 | rec( 12, 4, DMmajorVersion ), |
||
15352 | rec( 16, 4, DMminorVersion ), |
||
15353 | ]) |
||
15354 | pkt.CompletionCodes([0x0000, 0x7e01, 0x8000, 0x8101, 0x8401, 0x8501, |
||
15355 | 0x8701, 0x8800, 0x8d00, 0x8f00, 0x9001, 0x9600, |
||
15356 | 0x9804, 0x9b03, 0x9c03, 0xa800, 0xfd00, 0xff16]) |
||
15357 | # 2222/5A84, 90/132 |
||
15358 | pkt = NCP(0x5A84, "Data Migration Support Module Information", 'migration') |
||
15359 | pkt.Request(18, [ |
||
15360 | rec( 10, 1, DMInfoLevel ), |
||
15361 | rec( 11, 3, Reserved3), |
||
15362 | rec( 14, 4, SupportModuleID ), |
||
15363 | ]) |
||
15364 | pkt.Reply(NO_LENGTH_CHECK, [ |
||
15365 | srec( DMInfoLevel0, req_cond="ncp.dm_info_level == 0x00" ), |
||
15366 | srec( DMInfoLevel1, req_cond="ncp.dm_info_level == 0x01" ), |
||
15367 | srec( DMInfoLevel2, req_cond="ncp.dm_info_level == 0x02" ), |
||
15368 | ]) |
||
15369 | pkt.ReqCondSizeVariable() |
||
15370 | pkt.CompletionCodes([0x0000, 0x7e01, 0x8000, 0x8101, 0x8401, 0x8501, |
||
15371 | 0x8701, 0x8800, 0x8d00, 0x8f00, 0x9001, 0x9600, |
||
15372 | 0x9804, 0x9b03, 0x9c03, 0xa800, 0xfd00, 0xff16]) |
||
15373 | # 2222/5A85, 90/133 |
||
15374 | pkt = NCP(0x5A85, "Move File Data From Data Migration", 'migration') |
||
15375 | pkt.Request(19, [ |
||
15376 | rec( 10, 4, VolumeNumberLong ), |
||
15377 | rec( 14, 4, DirectoryEntryNumber ), |
||
15378 | rec( 18, 1, NameSpace ), |
||
15379 | ]) |
||
15380 | pkt.Reply(8) |
||
15381 | pkt.CompletionCodes([0x0000, 0x7e01, 0x8000, 0x8101, 0x8401, 0x8501, |
||
15382 | 0x8701, 0x8800, 0x8d00, 0x8f00, 0x9001, 0x9600, |
||
15383 | 0x9804, 0x9b03, 0x9c03, 0xa800, 0xfd00, 0xff16]) |
||
15384 | # 2222/5A86, 90/134 |
||
15385 | pkt = NCP(0x5A86, "Get/Set Default Read-Write Support Module ID", 'migration') |
||
15386 | pkt.Request(18, [ |
||
15387 | rec( 10, 1, GetSetFlag ), |
||
15388 | rec( 11, 3, Reserved3 ), |
||
15389 | rec( 14, 4, SupportModuleID ), |
||
15390 | ]) |
||
15391 | pkt.Reply(12, [ |
||
15392 | rec( 8, 4, SupportModuleID ), |
||
15393 | ]) |
||
15394 | pkt.CompletionCodes([0x0000, 0x7e01, 0x8000, 0x8101, 0x8401, 0x8501, |
||
15395 | 0x8701, 0x8800, 0x8d00, 0x8f00, 0x9001, 0x9600, |
||
15396 | 0x9804, 0x9b03, 0x9c03, 0xa800, 0xfd00, 0xff16]) |
||
15397 | # 2222/5A87, 90/135 |
||
15398 | pkt = NCP(0x5A87, "Data Migration Support Module Capacity Request", 'migration') |
||
15399 | pkt.Request(22, [ |
||
15400 | rec( 10, 4, SupportModuleID ), |
||
15401 | rec( 14, 4, VolumeNumberLong ), |
||
15402 | rec( 18, 4, DirectoryBase ), |
||
15403 | ]) |
||
15404 | pkt.Reply(20, [ |
||
15405 | rec( 8, 4, BlockSizeInSectors ), |
||
15406 | rec( 12, 4, TotalBlocks ), |
||
15407 | rec( 16, 4, UsedBlocks ), |
||
15408 | ]) |
||
15409 | pkt.CompletionCodes([0x0000, 0x7e01, 0x8000, 0x8101, 0x8401, 0x8501, |
||
15410 | 0x8701, 0x8800, 0x8d00, 0x8f00, 0x9001, 0x9600, |
||
15411 | 0x9804, 0x9b03, 0x9c03, 0xa800, 0xfd00, 0xff16]) |
||
15412 | # 2222/5A88, 90/136 |
||
15413 | pkt = NCP(0x5A88, "RTDM Request", 'migration') |
||
15414 | pkt.Request(15, [ |
||
15415 | rec( 10, 4, Verb ), |
||
15416 | rec( 14, 1, VerbData ), |
||
15417 | ]) |
||
15418 | pkt.Reply(8) |
||
15419 | pkt.CompletionCodes([0x0000, 0x7e01, 0x8000, 0x8101, 0x8401, 0x8501, |
||
15420 | 0x8701, 0x8800, 0x8d00, 0x8f00, 0x9001, 0x9600, |
||
15421 | 0x9804, 0x9b03, 0x9c03, 0xa800, 0xfd00, 0xff16]) |
||
15422 | # 2222/5A96, 90/150 |
||
15423 | pkt = NCP(0x5A96, "File Migration Request", 'file') |
||
15424 | pkt.Request(22, [ |
||
15425 | rec( 10, 4, VolumeNumberLong ), |
||
15426 | rec( 14, 4, DirectoryBase ), |
||
15427 | rec( 18, 4, FileMigrationState ), |
||
15428 | ]) |
||
15429 | pkt.Reply(8) |
||
15430 | pkt.CompletionCodes([0x0000, 0x7e01, 0x8000, 0x8101, 0x8401, 0x8501, |
||
15431 | 0x8701, 0x8800, 0x8d00, 0x8f00, 0x9001, 0x9600, |
||
15432 | 0x9804, 0x9b03, 0x9c03, 0xa800, 0xfb00, 0xff16]) |
||
15433 | # 2222/5C, 91 |
||
15434 | pkt = NCP(0x5B, "NMAS Graded Authentication", 'nmas') |
||
15435 | #Need info on this packet structure |
||
15436 | pkt.Request(7) |
||
15437 | pkt.Reply(8) |
||
15438 | pkt.CompletionCodes([0x0000, 0x7e01, 0x8000, 0x8101, 0x8401, 0x8501, |
||
15439 | 0x8701, 0x8800, 0x8d00, 0x8f00, 0x9001, 0x9600, 0xfb0b, |
||
15440 | 0x9804, 0x9b03, 0x9c03, 0xa800, 0xfd00, 0xff16]) |
||
15441 | # SecretStore data is dissected by packet-ncp-sss.c |
||
15442 | # 2222/5C01, 9201 |
||
15443 | pkt = NCP(0x5C01, "SecretStore Services (Ping Server)", 'sss', 0) |
||
15444 | pkt.Request(8) |
||
15445 | pkt.Reply(8) |
||
15446 | pkt.CompletionCodes([0x0000, 0x7e01, 0x8000, 0x8101, 0x8401, 0x8501, |
||
15447 | 0x8701, 0x8800, 0x8d00, 0x8f00, 0x9001, 0x9600, 0xfb0b, |
||
15448 | 0x9804, 0x9b03, 0x9c03, 0xa800, 0xfd00, 0xff16]) |
||
15449 | # 2222/5C02, 9202 |
||
15450 | pkt = NCP(0x5C02, "SecretStore Services (Fragment)", 'sss', 0) |
||
15451 | pkt.Request(8) |
||
15452 | pkt.Reply(8) |
||
15453 | pkt.CompletionCodes([0x0000, 0x7e01, 0x8000, 0x8101, 0x8401, 0x8501, |
||
15454 | 0x8701, 0x8800, 0x8d00, 0x8f00, 0x9001, 0x9600, 0xfb0b, |
||
15455 | 0x9804, 0x9b03, 0x9c03, 0xa800, 0xfd00, 0xff16]) |
||
15456 | # 2222/5C03, 9203 |
||
15457 | pkt = NCP(0x5C03, "SecretStore Services (Write App Secrets)", 'sss', 0) |
||
15458 | pkt.Request(8) |
||
15459 | pkt.Reply(8) |
||
15460 | pkt.CompletionCodes([0x0000, 0x7e01, 0x8000, 0x8101, 0x8401, 0x8501, |
||
15461 | 0x8701, 0x8800, 0x8d00, 0x8f00, 0x9001, 0x9600, 0xfb0b, |
||
15462 | 0x9804, 0x9b03, 0x9c03, 0xa800, 0xfd00, 0xff16]) |
||
15463 | # 2222/5C04, 9204 |
||
15464 | pkt = NCP(0x5C04, "SecretStore Services (Add Secret ID)", 'sss', 0) |
||
15465 | pkt.Request(8) |
||
15466 | pkt.Reply(8) |
||
15467 | pkt.CompletionCodes([0x0000, 0x7e01, 0x8000, 0x8101, 0x8401, 0x8501, |
||
15468 | 0x8701, 0x8800, 0x8d00, 0x8f00, 0x9001, 0x9600, 0xfb0b, |
||
15469 | 0x9804, 0x9b03, 0x9c03, 0xa800, 0xfd00, 0xff16]) |
||
15470 | # 2222/5C05, 9205 |
||
15471 | pkt = NCP(0x5C05, "SecretStore Services (Remove Secret ID)", 'sss', 0) |
||
15472 | pkt.Request(8) |
||
15473 | pkt.Reply(8) |
||
15474 | pkt.CompletionCodes([0x0000, 0x7e01, 0x8000, 0x8101, 0x8401, 0x8501, |
||
15475 | 0x8701, 0x8800, 0x8d00, 0x8f00, 0x9001, 0x9600, 0xfb0b, |
||
15476 | 0x9804, 0x9b03, 0x9c03, 0xa800, 0xfd00, 0xff16]) |
||
15477 | # 2222/5C06, 9206 |
||
15478 | pkt = NCP(0x5C06, "SecretStore Services (Remove SecretStore)", 'sss', 0) |
||
15479 | pkt.Request(8) |
||
15480 | pkt.Reply(8) |
||
15481 | pkt.CompletionCodes([0x0000, 0x7e01, 0x8000, 0x8101, 0x8401, 0x8501, |
||
15482 | 0x8701, 0x8800, 0x8d00, 0x8f00, 0x9001, 0x9600, 0xfb0b, |
||
15483 | 0x9804, 0x9b03, 0x9c03, 0xa800, 0xfd00, 0xff16]) |
||
15484 | # 2222/5C07, 9207 |
||
15485 | pkt = NCP(0x5C07, "SecretStore Services (Enumerate Secret IDs)", 'sss', 0) |
||
15486 | pkt.Request(8) |
||
15487 | pkt.Reply(8) |
||
15488 | pkt.CompletionCodes([0x0000, 0x7e01, 0x8000, 0x8101, 0x8401, 0x8501, |
||
15489 | 0x8701, 0x8800, 0x8d00, 0x8f00, 0x9001, 0x9600, 0xfb0b, |
||
15490 | 0x9804, 0x9b03, 0x9c03, 0xa800, 0xfd00, 0xff16]) |
||
15491 | # 2222/5C08, 9208 |
||
15492 | pkt = NCP(0x5C08, "SecretStore Services (Unlock Store)", 'sss', 0) |
||
15493 | pkt.Request(8) |
||
15494 | pkt.Reply(8) |
||
15495 | pkt.CompletionCodes([0x0000, 0x7e01, 0x8000, 0x8101, 0x8401, 0x8501, |
||
15496 | 0x8701, 0x8800, 0x8d00, 0x8f00, 0x9001, 0x9600, 0xfb0b, |
||
15497 | 0x9804, 0x9b03, 0x9c03, 0xa800, 0xfd00, 0xff16]) |
||
15498 | # 2222/5C09, 9209 |
||
15499 | pkt = NCP(0x5C09, "SecretStore Services (Set Master Password)", 'sss', 0) |
||
15500 | pkt.Request(8) |
||
15501 | pkt.Reply(8) |
||
15502 | pkt.CompletionCodes([0x0000, 0x7e01, 0x8000, 0x8101, 0x8401, 0x8501, |
||
15503 | 0x8701, 0x8800, 0x8d00, 0x8f00, 0x9001, 0x9600, 0xfb0b, |
||
15504 | 0x9804, 0x9b03, 0x9c03, 0xa800, 0xfd00, 0xff16]) |
||
15505 | # 2222/5C0a, 9210 |
||
15506 | pkt = NCP(0x5C0a, "SecretStore Services (Get Service Information)", 'sss', 0) |
||
15507 | pkt.Request(8) |
||
15508 | pkt.Reply(8) |
||
15509 | pkt.CompletionCodes([0x0000, 0x7e01, 0x8000, 0x8101, 0x8401, 0x8501, |
||
15510 | 0x8701, 0x8800, 0x8d00, 0x8f00, 0x9001, 0x9600, 0xfb0b, |
||
15511 | 0x9804, 0x9b03, 0x9c03, 0xa800, 0xfd00, 0xff16]) |
||
15512 | # NMAS packets are dissected in packet-ncp-nmas.c |
||
15513 | # 2222/5E, 9401 |
||
15514 | pkt = NCP(0x5E01, "NMAS Communications Packet (Ping)", 'nmas', 0) |
||
15515 | pkt.Request(8) |
||
15516 | pkt.Reply(8) |
||
15517 | pkt.CompletionCodes([0x0000, 0xfb09, 0xff08]) |
||
15518 | # 2222/5E, 9402 |
||
15519 | pkt = NCP(0x5E02, "NMAS Communications Packet (Fragment)", 'nmas', 0) |
||
15520 | pkt.Request(8) |
||
15521 | pkt.Reply(8) |
||
15522 | pkt.CompletionCodes([0x0000, 0xfb09, 0xff08]) |
||
15523 | # 2222/5E, 9403 |
||
15524 | pkt = NCP(0x5E03, "NMAS Communications Packet (Abort)", 'nmas', 0) |
||
15525 | pkt.Request(8) |
||
15526 | pkt.Reply(8) |
||
15527 | pkt.CompletionCodes([0x0000, 0xfb09, 0xff08]) |
||
15528 | # 2222/61, 97 |
||
15529 | pkt = NCP(0x61, "Get Big Packet NCP Max Packet Size", 'connection') |
||
15530 | pkt.Request(10, [ |
||
15531 | rec( 7, 2, ProposedMaxSize, ENC_BIG_ENDIAN, info_str=(ProposedMaxSize, "Get Big Max Packet Size - %d", ", %d") ), |
||
15532 | rec( 9, 1, SecurityFlag ), |
||
15533 | ]) |
||
15534 | pkt.Reply(13, [ |
||
15535 | rec( 8, 2, AcceptedMaxSize, ENC_BIG_ENDIAN ), |
||
15536 | rec( 10, 2, EchoSocket, ENC_BIG_ENDIAN ), |
||
15537 | rec( 12, 1, SecurityFlag ), |
||
15538 | ]) |
||
15539 | pkt.CompletionCodes([0x0000]) |
||
15540 | # 2222/63, 99 |
||
15541 | pkt = NCP(0x63, "Undocumented Packet Burst", 'pburst') |
||
15542 | pkt.Request(7) |
||
15543 | pkt.Reply(8) |
||
15544 | pkt.CompletionCodes([0x0000]) |
||
15545 | # 2222/64, 100 |
||
15546 | pkt = NCP(0x64, "Undocumented Packet Burst", 'pburst') |
||
15547 | pkt.Request(7) |
||
15548 | pkt.Reply(8) |
||
15549 | pkt.CompletionCodes([0x0000]) |
||
15550 | # 2222/65, 101 |
||
15551 | pkt = NCP(0x65, "Packet Burst Connection Request", 'pburst') |
||
15552 | pkt.Request(25, [ |
||
15553 | rec( 7, 4, LocalConnectionID, ENC_BIG_ENDIAN ), |
||
15554 | rec( 11, 4, LocalMaxPacketSize, ENC_BIG_ENDIAN ), |
||
15555 | rec( 15, 2, LocalTargetSocket, ENC_BIG_ENDIAN ), |
||
15556 | rec( 17, 4, LocalMaxSendSize, ENC_BIG_ENDIAN ), |
||
15557 | rec( 21, 4, LocalMaxRecvSize, ENC_BIG_ENDIAN ), |
||
15558 | ]) |
||
15559 | pkt.Reply(16, [ |
||
15560 | rec( 8, 4, RemoteTargetID, ENC_BIG_ENDIAN ), |
||
15561 | rec( 12, 4, RemoteMaxPacketSize, ENC_BIG_ENDIAN ), |
||
15562 | ]) |
||
15563 | pkt.CompletionCodes([0x0000]) |
||
15564 | # 2222/66, 102 |
||
15565 | pkt = NCP(0x66, "Undocumented Packet Burst", 'pburst') |
||
15566 | pkt.Request(7) |
||
15567 | pkt.Reply(8) |
||
15568 | pkt.CompletionCodes([0x0000]) |
||
15569 | # 2222/67, 103 |
||
15570 | pkt = NCP(0x67, "Undocumented Packet Burst", 'pburst') |
||
15571 | pkt.Request(7) |
||
15572 | pkt.Reply(8) |
||
15573 | pkt.CompletionCodes([0x0000]) |
||
15574 | # 2222/6801, 104/01 |
||
15575 | pkt = NCP(0x6801, "Ping for NDS NCP", "nds", has_length=0) |
||
15576 | pkt.Request(8) |
||
15577 | pkt.Reply(8) |
||
15578 | pkt.ReqCondSizeVariable() |
||
15579 | pkt.CompletionCodes([0x0000, 0x8100, 0xfb04, 0xfe0c]) |
||
15580 | # 2222/6802, 104/02 |
||
15581 | # |
||
15582 | # XXX - if FraggerHandle is not 0xffffffff, this is not the |
||
15583 | # first fragment, so we can only dissect this by reassembling; |
||
15584 | # the fields after "Fragment Handle" are bogus for non-0xffffffff |
||
15585 | # fragments, so we shouldn't dissect them. This is all handled in packet-ncp2222.inc. |
||
15586 | # |
||
15587 | pkt = NCP(0x6802, "Send NDS Fragmented Request/Reply", "nds", has_length=0) |
||
15588 | pkt.Request(8) |
||
15589 | pkt.Reply(8) |
||
15590 | pkt.ReqCondSizeVariable() |
||
15591 | pkt.CompletionCodes([0x0000, 0xac00, 0xfd01]) |
||
15592 | # 2222/6803, 104/03 |
||
15593 | pkt = NCP(0x6803, "Fragment Close", "nds", has_length=0) |
||
15594 | pkt.Request(12, [ |
||
15595 | rec( 8, 4, FraggerHandle ), |
||
15596 | ]) |
||
15597 | pkt.Reply(8) |
||
15598 | pkt.CompletionCodes([0x0000, 0xff00]) |
||
15599 | # 2222/6804, 104/04 |
||
15600 | pkt = NCP(0x6804, "Return Bindery Context", "nds", has_length=0) |
||
15601 | pkt.Request(8) |
||
15602 | pkt.Reply((9, 263), [ |
||
15603 | rec( 8, (1,255), binderyContext ), |
||
15604 | ]) |
||
15605 | pkt.CompletionCodes([0x0000, 0xfe0c, 0xff00]) |
||
15606 | # 2222/6805, 104/05 |
||
15607 | pkt = NCP(0x6805, "Monitor NDS Connection", "nds", has_length=0) |
||
15608 | pkt.Request(8) |
||
15609 | pkt.Reply(8) |
||
15610 | pkt.CompletionCodes([0x0000, 0x7700, 0xfb00, 0xfe0c, 0xff00]) |
||
15611 | # 2222/6806, 104/06 |
||
15612 | pkt = NCP(0x6806, "Return NDS Statistics", "nds", has_length=0) |
||
15613 | pkt.Request(10, [ |
||
15614 | rec( 8, 2, NDSRequestFlags ), |
||
15615 | ]) |
||
15616 | pkt.Reply(8) |
||
15617 | #Need to investigate how to decode Statistics Return Value |
||
15618 | pkt.CompletionCodes([0x0000, 0xfb00, 0xfe0c, 0xff00]) |
||
15619 | # 2222/6807, 104/07 |
||
15620 | pkt = NCP(0x6807, "Clear NDS Statistics", "nds", has_length=0) |
||
15621 | pkt.Request(8) |
||
15622 | pkt.Reply(8) |
||
15623 | pkt.CompletionCodes([0x0000, 0xfb00, 0xfe0c, 0xff00]) |
||
15624 | # 2222/6808, 104/08 |
||
15625 | pkt = NCP(0x6808, "Reload NDS Software", "nds", has_length=0) |
||
15626 | pkt.Request(8) |
||
15627 | pkt.Reply(12, [ |
||
15628 | rec( 8, 4, NDSStatus ), |
||
15629 | ]) |
||
15630 | pkt.CompletionCodes([0x0000, 0xfb00, 0xfe0c, 0xff00]) |
||
15631 | # 2222/68C8, 104/200 |
||
15632 | pkt = NCP(0x68C8, "Query Container Audit Status", "auditing", has_length=0) |
||
15633 | pkt.Request(12, [ |
||
15634 | rec( 8, 4, ConnectionNumber ), |
||
15635 | ]) |
||
15636 | pkt.Reply(40, [ |
||
15637 | rec(8, 32, NWAuditStatus ), |
||
15638 | ]) |
||
15639 | pkt.CompletionCodes([0x0000, 0xa700, 0xfb00, 0xfe0c, 0xff00]) |
||
15640 | # 2222/68CA, 104/202 |
||
15641 | pkt = NCP(0x68CA, "Add Auditor Access", "auditing", has_length=0) |
||
15642 | pkt.Request(8) |
||
15643 | pkt.Reply(8) |
||
15644 | pkt.CompletionCodes([0x0000, 0xa700, 0xfb00, 0xfe0c, 0xff00]) |
||
15645 | # 2222/68CB, 104/203 |
||
15646 | pkt = NCP(0x68CB, "Change Auditor Container Password", "auditing", has_length=0) |
||
15647 | pkt.Request(8) |
||
15648 | pkt.Reply(8) |
||
15649 | pkt.CompletionCodes([0x0000, 0xa700, 0xfb00, 0xfe0c, 0xff00]) |
||
15650 | # 2222/68CC, 104/204 |
||
15651 | pkt = NCP(0x68CC, "Check Auditor Access", "auditing", has_length=0) |
||
15652 | pkt.Request(8) |
||
15653 | pkt.Reply(8) |
||
15654 | pkt.CompletionCodes([0x0000, 0xa700, 0xfb00, 0xfe0c, 0xff00]) |
||
15655 | # 2222/68CE, 104/206 |
||
15656 | pkt = NCP(0x680CE, "Disable Container Auditing", "auditing", has_length=0) |
||
15657 | pkt.Request(8) |
||
15658 | pkt.Reply(8) |
||
15659 | pkt.CompletionCodes([0x0000, 0xa700, 0xfb00, 0xfe0c, 0xff00]) |
||
15660 | # 2222/68CF, 104/207 |
||
15661 | pkt = NCP(0x68CF, "Enable Container Auditing", "auditing", has_length=0) |
||
15662 | pkt.Request(8) |
||
15663 | pkt.Reply(8) |
||
15664 | pkt.CompletionCodes([0x0000, 0xa700, 0xfb00, 0xfe0c, 0xff00]) |
||
15665 | # 2222/68D1, 104/209 |
||
15666 | pkt = NCP(0x68D1, "Read Audit File Header", "auditing", has_length=0) |
||
15667 | pkt.Request(8) |
||
15668 | pkt.Reply(8) |
||
15669 | pkt.CompletionCodes([0x0000, 0xa700, 0xfb00, 0xfe0c, 0xff00]) |
||
15670 | # 2222/68D3, 104/211 |
||
15671 | pkt = NCP(0x68D3, "Remove Auditor Access", "auditing", has_length=0) |
||
15672 | pkt.Request(8) |
||
15673 | pkt.Reply(8) |
||
15674 | pkt.CompletionCodes([0x0000, 0xa700, 0xfb00, 0xfe0c, 0xff00]) |
||
15675 | # 2222/68D4, 104/212 |
||
15676 | pkt = NCP(0x68D4, "Reset Audit File", "auditing", has_length=0) |
||
15677 | pkt.Request(8) |
||
15678 | pkt.Reply(8) |
||
15679 | pkt.CompletionCodes([0x0000, 0xa700, 0xfb00, 0xfe0c, 0xff00]) |
||
15680 | # 2222/68D6, 104/214 |
||
15681 | pkt = NCP(0x68D6, "Write Audit File Configuration Header", "auditing", has_length=0) |
||
15682 | pkt.Request(8) |
||
15683 | pkt.Reply(8) |
||
15684 | pkt.CompletionCodes([0x0000, 0xa700, 0xfb00, 0xfe0c, 0xff00]) |
||
15685 | # 2222/68D7, 104/215 |
||
15686 | pkt = NCP(0x68D7, "Change Auditor Container Password2", "auditing", has_length=0) |
||
15687 | pkt.Request(8) |
||
15688 | pkt.Reply(8) |
||
15689 | pkt.CompletionCodes([0x0000, 0xa700, 0xfb00, 0xfe0c, 0xff00]) |
||
15690 | # 2222/68D8, 104/216 |
||
15691 | pkt = NCP(0x68D8, "Return Audit Flags", "auditing", has_length=0) |
||
15692 | pkt.Request(8) |
||
15693 | pkt.Reply(8) |
||
15694 | pkt.CompletionCodes([0x0000, 0xa700, 0xfb00, 0xfe0c, 0xff00]) |
||
15695 | # 2222/68D9, 104/217 |
||
15696 | pkt = NCP(0x68D9, "Close Old Audit File", "auditing", has_length=0) |
||
15697 | pkt.Request(8) |
||
15698 | pkt.Reply(8) |
||
15699 | pkt.CompletionCodes([0x0000, 0xa700, 0xfb00, 0xfe0c, 0xff00]) |
||
15700 | # 2222/68DB, 104/219 |
||
15701 | pkt = NCP(0x68DB, "Check Level Two Access", "auditing", has_length=0) |
||
15702 | pkt.Request(8) |
||
15703 | pkt.Reply(8) |
||
15704 | pkt.CompletionCodes([0x0000, 0xa700, 0xfb00, 0xfe0c, 0xff00]) |
||
15705 | # 2222/68DC, 104/220 |
||
15706 | pkt = NCP(0x68DC, "Check Object Audited", "auditing", has_length=0) |
||
15707 | pkt.Request(8) |
||
15708 | pkt.Reply(8) |
||
15709 | pkt.CompletionCodes([0x0000, 0xa700, 0xfb00, 0xfe0c, 0xff00]) |
||
15710 | # 2222/68DD, 104/221 |
||
15711 | pkt = NCP(0x68DD, "Change Object Audited", "auditing", has_length=0) |
||
15712 | pkt.Request(8) |
||
15713 | pkt.Reply(8) |
||
15714 | pkt.CompletionCodes([0x0000, 0xa700, 0xfb00, 0xfe0c, 0xff00]) |
||
15715 | # 2222/68DE, 104/222 |
||
15716 | pkt = NCP(0x68DE, "Return Old Audit File List", "auditing", has_length=0) |
||
15717 | pkt.Request(8) |
||
15718 | pkt.Reply(8) |
||
15719 | pkt.CompletionCodes([0x0000, 0xa700, 0xfb00, 0xfe0c, 0xff00]) |
||
15720 | # 2222/68DF, 104/223 |
||
15721 | pkt = NCP(0x68DF, "Init Audit File Reads", "auditing", has_length=0) |
||
15722 | pkt.Request(8) |
||
15723 | pkt.Reply(8) |
||
15724 | pkt.CompletionCodes([0x0000, 0xa700, 0xfb00, 0xfe0c, 0xff00]) |
||
15725 | # 2222/68E0, 104/224 |
||
15726 | pkt = NCP(0x68E0, "Read Auditing File", "auditing", has_length=0) |
||
15727 | pkt.Request(8) |
||
15728 | pkt.Reply(8) |
||
15729 | pkt.CompletionCodes([0x0000, 0xa700, 0xfb00, 0xfe0c, 0xff00]) |
||
15730 | # 2222/68E1, 104/225 |
||
15731 | pkt = NCP(0x68E1, "Delete Old Audit File", "auditing", has_length=0) |
||
15732 | pkt.Request(8) |
||
15733 | pkt.Reply(8) |
||
15734 | pkt.CompletionCodes([0x0000, 0xa700, 0xfb00, 0xfe0c, 0xff00]) |
||
15735 | # 2222/68E5, 104/229 |
||
15736 | pkt = NCP(0x68E5, "Set Audit Password", "auditing", has_length=0) |
||
15737 | pkt.Request(8) |
||
15738 | pkt.Reply(8) |
||
15739 | pkt.CompletionCodes([0x0000, 0xa700, 0xfb00, 0xfe0c, 0xff00]) |
||
15740 | # 2222/68E7, 104/231 |
||
15741 | pkt = NCP(0x68E7, "External Audit Append To File", "auditing", has_length=0) |
||
15742 | pkt.Request(8) |
||
15743 | pkt.Reply(8) |
||
15744 | pkt.CompletionCodes([0x0000, 0xa700, 0xfb00, 0xfe0c, 0xff00]) |
||
15745 | # 2222/69, 105 |
||
15746 | pkt = NCP(0x69, "Log File", 'sync') |
||
15747 | pkt.Request( (12, 267), [ |
||
15748 | rec( 7, 1, DirHandle ), |
||
15749 | rec( 8, 1, LockFlag ), |
||
15750 | rec( 9, 2, TimeoutLimit ), |
||
15751 | rec( 11, (1, 256), FilePath, info_str=(FilePath, "Log File: %s", "/%s") ), |
||
15752 | ]) |
||
15753 | pkt.Reply(8) |
||
15754 | pkt.CompletionCodes([0x0000, 0x7f00, 0x8200, 0x9600, 0xfe0d, 0xff01]) |
||
15755 | # 2222/6A, 106 |
||
15756 | pkt = NCP(0x6A, "Lock File Set", 'sync') |
||
15757 | pkt.Request( 9, [ |
||
15758 | rec( 7, 2, TimeoutLimit ), |
||
15759 | ]) |
||
15760 | pkt.Reply(8) |
||
15761 | pkt.CompletionCodes([0x0000, 0x7f00, 0x8200, 0x9600, 0xfe0d, 0xff01]) |
||
15762 | # 2222/6B, 107 |
||
15763 | pkt = NCP(0x6B, "Log Logical Record", 'sync') |
||
15764 | pkt.Request( (11, 266), [ |
||
15765 | rec( 7, 1, LockFlag ), |
||
15766 | rec( 8, 2, TimeoutLimit ), |
||
15767 | rec( 10, (1, 256), SynchName, info_str=(SynchName, "Log Logical Record: %s", ", %s") ), |
||
15768 | ]) |
||
15769 | pkt.Reply(8) |
||
15770 | pkt.CompletionCodes([0x0000, 0x7f00, 0x9600, 0xfe0d, 0xff01]) |
||
15771 | # 2222/6C, 108 |
||
15772 | pkt = NCP(0x6C, "Log Logical Record", 'sync') |
||
15773 | pkt.Request( 10, [ |
||
15774 | rec( 7, 1, LockFlag ), |
||
15775 | rec( 8, 2, TimeoutLimit ), |
||
15776 | ]) |
||
15777 | pkt.Reply(8) |
||
15778 | pkt.CompletionCodes([0x0000, 0x7f00, 0x9600, 0xfe0d, 0xff01]) |
||
15779 | # 2222/6D, 109 |
||
15780 | pkt = NCP(0x6D, "Log Physical Record", 'sync') |
||
15781 | pkt.Request(24, [ |
||
15782 | rec( 7, 1, LockFlag ), |
||
15783 | rec( 8, 6, FileHandle ), |
||
15784 | rec( 14, 4, LockAreasStartOffset ), |
||
15785 | rec( 18, 4, LockAreaLen ), |
||
15786 | rec( 22, 2, LockTimeout ), |
||
15787 | ]) |
||
15788 | pkt.Reply(8) |
||
15789 | pkt.CompletionCodes([0x0000, 0x7f00, 0x8200, 0x8800, 0x9600, 0xfd02, 0xfe04, 0xff01]) |
||
15790 | # 2222/6E, 110 |
||
15791 | pkt = NCP(0x6E, "Lock Physical Record Set", 'sync') |
||
15792 | pkt.Request(10, [ |
||
15793 | rec( 7, 1, LockFlag ), |
||
15794 | rec( 8, 2, LockTimeout ), |
||
15795 | ]) |
||
15796 | pkt.Reply(8) |
||
15797 | pkt.CompletionCodes([0x0000, 0x7f00, 0x8200, 0x8800, 0x9600, 0xfd02, 0xfe04, 0xff01]) |
||
15798 | # 2222/6F00, 111/00 |
||
15799 | pkt = NCP(0x6F00, "Open/Create a Semaphore", 'sync', has_length=0) |
||
15800 | pkt.Request((10,521), [ |
||
15801 | rec( 8, 1, InitialSemaphoreValue ), |
||
15802 | rec( 9, (1, 512), SemaphoreName, info_str=(SemaphoreName, "Open/Create Semaphore: %s", ", %s") ), |
||
15803 | ]) |
||
15804 | pkt.Reply(13, [ |
||
15805 | rec( 8, 4, SemaphoreHandle ), |
||
15806 | rec( 12, 1, SemaphoreOpenCount ), |
||
15807 | ]) |
||
15808 | pkt.CompletionCodes([0x0000, 0x9600, 0xff01]) |
||
15809 | # 2222/6F01, 111/01 |
||
15810 | pkt = NCP(0x6F01, "Examine Semaphore", 'sync', has_length=0) |
||
15811 | pkt.Request(12, [ |
||
15812 | rec( 8, 4, SemaphoreHandle ), |
||
15813 | ]) |
||
15814 | pkt.Reply(10, [ |
||
15815 | rec( 8, 1, SemaphoreValue ), |
||
15816 | rec( 9, 1, SemaphoreOpenCount ), |
||
15817 | ]) |
||
15818 | pkt.CompletionCodes([0x0000, 0x9600, 0xff01]) |
||
15819 | # 2222/6F02, 111/02 |
||
15820 | pkt = NCP(0x6F02, "Wait On (P) Semaphore", 'sync', has_length=0) |
||
15821 | pkt.Request(14, [ |
||
15822 | rec( 8, 4, SemaphoreHandle ), |
||
15823 | rec( 12, 2, LockTimeout ), |
||
15824 | ]) |
||
15825 | pkt.Reply(8) |
||
15826 | pkt.CompletionCodes([0x0000, 0x9600, 0xfe04, 0xff01]) |
||
15827 | # 2222/6F03, 111/03 |
||
15828 | pkt = NCP(0x6F03, "Signal (V) Semaphore", 'sync', has_length=0) |
||
15829 | pkt.Request(12, [ |
||
15830 | rec( 8, 4, SemaphoreHandle ), |
||
15831 | ]) |
||
15832 | pkt.Reply(8) |
||
15833 | pkt.CompletionCodes([0x0000, 0x9600, 0xfe04, 0xff01]) |
||
15834 | # 2222/6F04, 111/04 |
||
15835 | pkt = NCP(0x6F04, "Close Semaphore", 'sync', has_length=0) |
||
15836 | pkt.Request(12, [ |
||
15837 | rec( 8, 4, SemaphoreHandle ), |
||
15838 | ]) |
||
15839 | pkt.Reply(10, [ |
||
15840 | rec( 8, 1, SemaphoreOpenCount ), |
||
15841 | rec( 9, 1, SemaphoreShareCount ), |
||
15842 | ]) |
||
15843 | pkt.CompletionCodes([0x0000, 0x9600, 0xfe04, 0xff01]) |
||
15844 | ## 2222/1125 |
||
15845 | pkt = NCP(0x70, "Clear and Get Waiting Lock Completion", 'sync') |
||
15846 | pkt.Request(7) |
||
15847 | pkt.Reply(8) |
||
15848 | pkt.CompletionCodes([0x0000, 0x9b00, 0x9c03, 0xff1a]) |
||
15849 | # 2222/7201, 114/01 |
||
15850 | pkt = NCP(0x7201, "Timesync Get Time", 'tsync') |
||
15851 | pkt.Request(10) |
||
15852 | pkt.Reply(32,[ |
||
15853 | rec( 8, 12, theTimeStruct ), |
||
15854 | rec(20, 8, eventOffset ), |
||
15855 | rec(28, 4, eventTime ), |
||
15856 | ]) |
||
15857 | pkt.CompletionCodes([0x0000, 0x7e00, 0xfb06, 0xff00]) |
||
15858 | # 2222/7202, 114/02 |
||
15859 | pkt = NCP(0x7202, "Timesync Exchange Time", 'tsync') |
||
15860 | pkt.Request((63,112), [ |
||
15861 | rec( 10, 4, protocolFlags ), |
||
15862 | rec( 14, 4, nodeFlags ), |
||
15863 | rec( 18, 8, sourceOriginateTime ), |
||
15864 | rec( 26, 8, targetReceiveTime ), |
||
15865 | rec( 34, 8, targetTransmitTime ), |
||
15866 | rec( 42, 8, sourceReturnTime ), |
||
15867 | rec( 50, 8, eventOffset ), |
||
15868 | rec( 58, 4, eventTime ), |
||
15869 | rec( 62, (1,50), ServerNameLen, info_str=(ServerNameLen, "Timesync Exchange Time: %s", ", %s") ), |
||
15870 | ]) |
||
15871 | pkt.Reply((64,113), [ |
||
15872 | rec( 8, 3, Reserved3 ), |
||
15873 | rec( 11, 4, protocolFlags ), |
||
15874 | rec( 15, 4, nodeFlags ), |
||
15875 | rec( 19, 8, sourceOriginateTime ), |
||
15876 | rec( 27, 8, targetReceiveTime ), |
||
15877 | rec( 35, 8, targetTransmitTime ), |
||
15878 | rec( 43, 8, sourceReturnTime ), |
||
15879 | rec( 51, 8, eventOffset ), |
||
15880 | rec( 59, 4, eventTime ), |
||
15881 | rec( 63, (1,50), ServerNameLen ), |
||
15882 | ]) |
||
15883 | pkt.CompletionCodes([0x0000, 0x7e00, 0xfb06, 0xff00]) |
||
15884 | # 2222/7205, 114/05 |
||
15885 | pkt = NCP(0x7205, "Timesync Get Server List", 'tsync') |
||
15886 | pkt.Request(14, [ |
||
15887 | rec( 10, 4, StartNumber ), |
||
15888 | ]) |
||
15889 | pkt.Reply(66, [ |
||
15890 | rec( 8, 4, nameType ), |
||
15891 | rec( 12, 48, ServerName ), |
||
15892 | rec( 60, 4, serverListFlags ), |
||
15893 | rec( 64, 2, startNumberFlag ), |
||
15894 | ]) |
||
15895 | pkt.CompletionCodes([0x0000, 0x7e00, 0xfb06, 0xff00]) |
||
15896 | # 2222/7206, 114/06 |
||
15897 | pkt = NCP(0x7206, "Timesync Set Server List", 'tsync') |
||
15898 | pkt.Request(14, [ |
||
15899 | rec( 10, 4, StartNumber ), |
||
15900 | ]) |
||
15901 | pkt.Reply(66, [ |
||
15902 | rec( 8, 4, nameType ), |
||
15903 | rec( 12, 48, ServerName ), |
||
15904 | rec( 60, 4, serverListFlags ), |
||
15905 | rec( 64, 2, startNumberFlag ), |
||
15906 | ]) |
||
15907 | pkt.CompletionCodes([0x0000, 0x7e00, 0xfb06, 0xff00]) |
||
15908 | # 2222/720C, 114/12 |
||
15909 | pkt = NCP(0x720C, "Timesync Get Version", 'tsync') |
||
15910 | pkt.Request(10) |
||
15911 | pkt.Reply(12, [ |
||
15912 | rec( 8, 4, version ), |
||
15913 | ]) |
||
15914 | pkt.CompletionCodes([0x0000, 0x7e00, 0xfb06, 0xff00]) |
||
15915 | # 2222/7B01, 123/01 |
||
15916 | pkt = NCP(0x7B01, "Get Cache Information", 'stats') |
||
15917 | pkt.Request(10) |
||
15918 | pkt.Reply(288, [ |
||
15919 | rec(8, 4, CurrentServerTime, ENC_LITTLE_ENDIAN), |
||
15920 | rec(12, 1, VConsoleVersion ), |
||
15921 | rec(13, 1, VConsoleRevision ), |
||
15922 | rec(14, 2, Reserved2 ), |
||
15923 | rec(16, 104, Counters ), |
||
15924 | rec(120, 40, ExtraCacheCntrs ), |
||
15925 | rec(160, 40, MemoryCounters ), |
||
15926 | rec(200, 48, TrendCounters ), |
||
15927 | rec(248, 40, CacheInfo ), |
||
15928 | ]) |
||
15929 | pkt.CompletionCodes([0x0000, 0x7900, 0x7e01, 0xff00]) |
||
15930 | # 2222/7B02, 123/02 |
||
15931 | pkt = NCP(0x7B02, "Get File Server Information", 'stats') |
||
15932 | pkt.Request(10) |
||
15933 | pkt.Reply(150, [ |
||
15934 | rec(8, 4, CurrentServerTime ), |
||
15935 | rec(12, 1, VConsoleVersion ), |
||
15936 | rec(13, 1, VConsoleRevision ), |
||
15937 | rec(14, 2, Reserved2 ), |
||
15938 | rec(16, 4, NCPStaInUseCnt ), |
||
15939 | rec(20, 4, NCPPeakStaInUse ), |
||
15940 | rec(24, 4, NumOfNCPReqs ), |
||
15941 | rec(28, 4, ServerUtilization ), |
||
15942 | rec(32, 96, ServerInfo ), |
||
15943 | rec(128, 22, FileServerCounters ), |
||
15944 | ]) |
||
15945 | pkt.CompletionCodes([0x0000, 0x7900, 0x7e01, 0xfb06, 0xff00]) |
||
15946 | # 2222/7B03, 123/03 |
||
15947 | pkt = NCP(0x7B03, "NetWare File System Information", 'stats') |
||
15948 | pkt.Request(11, [ |
||
15949 | rec(10, 1, FileSystemID ), |
||
15950 | ]) |
||
15951 | pkt.Reply(68, [ |
||
15952 | rec(8, 4, CurrentServerTime ), |
||
15953 | rec(12, 1, VConsoleVersion ), |
||
15954 | rec(13, 1, VConsoleRevision ), |
||
15955 | rec(14, 2, Reserved2 ), |
||
15956 | rec(16, 52, FileSystemInfo ), |
||
15957 | ]) |
||
15958 | pkt.CompletionCodes([0x0000, 0x7900, 0x7e01, 0xfb06, 0xff00]) |
||
15959 | # 2222/7B04, 123/04 |
||
15960 | pkt = NCP(0x7B04, "User Information", 'stats') |
||
15961 | pkt.Request(14, [ |
||
15962 | rec(10, 4, ConnectionNumber, ENC_LITTLE_ENDIAN ), |
||
15963 | ]) |
||
15964 | pkt.Reply((85, 132), [ |
||
15965 | rec(8, 4, CurrentServerTime ), |
||
15966 | rec(12, 1, VConsoleVersion ), |
||
15967 | rec(13, 1, VConsoleRevision ), |
||
15968 | rec(14, 2, Reserved2 ), |
||
15969 | rec(16, 68, UserInformation ), |
||
15970 | rec(84, (1, 48), UserName ), |
||
15971 | ]) |
||
15972 | pkt.CompletionCodes([0x0000, 0x7900, 0x7e01, 0xfb06, 0xff00]) |
||
15973 | # 2222/7B05, 123/05 |
||
15974 | pkt = NCP(0x7B05, "Packet Burst Information", 'stats') |
||
15975 | pkt.Request(10) |
||
15976 | pkt.Reply(216, [ |
||
15977 | rec(8, 4, CurrentServerTime ), |
||
15978 | rec(12, 1, VConsoleVersion ), |
||
15979 | rec(13, 1, VConsoleRevision ), |
||
15980 | rec(14, 2, Reserved2 ), |
||
15981 | rec(16, 200, PacketBurstInformation ), |
||
15982 | ]) |
||
15983 | pkt.CompletionCodes([0x0000, 0x7900, 0x7e01, 0xfb06, 0xff00]) |
||
15984 | # 2222/7B06, 123/06 |
||
15985 | pkt = NCP(0x7B06, "IPX SPX Information", 'stats') |
||
15986 | pkt.Request(10) |
||
15987 | pkt.Reply(94, [ |
||
15988 | rec(8, 4, CurrentServerTime ), |
||
15989 | rec(12, 1, VConsoleVersion ), |
||
15990 | rec(13, 1, VConsoleRevision ), |
||
15991 | rec(14, 2, Reserved2 ), |
||
15992 | rec(16, 34, IPXInformation ), |
||
15993 | rec(50, 44, SPXInformation ), |
||
15994 | ]) |
||
15995 | pkt.CompletionCodes([0x0000, 0x7900, 0x7e01, 0xfb06, 0xff00]) |
||
15996 | # 2222/7B07, 123/07 |
||
15997 | pkt = NCP(0x7B07, "Garbage Collection Information", 'stats') |
||
15998 | pkt.Request(10) |
||
15999 | pkt.Reply(40, [ |
||
16000 | rec(8, 4, CurrentServerTime ), |
||
16001 | rec(12, 1, VConsoleVersion ), |
||
16002 | rec(13, 1, VConsoleRevision ), |
||
16003 | rec(14, 2, Reserved2 ), |
||
16004 | rec(16, 4, FailedAllocReqCnt ), |
||
16005 | rec(20, 4, NumberOfAllocs ), |
||
16006 | rec(24, 4, NoMoreMemAvlCnt ), |
||
16007 | rec(28, 4, NumOfGarbageColl ), |
||
16008 | rec(32, 4, FoundSomeMem ), |
||
16009 | rec(36, 4, NumOfChecks ), |
||
16010 | ]) |
||
16011 | pkt.CompletionCodes([0x0000, 0x7900, 0x7e01, 0xfb06, 0xff00]) |
||
16012 | # 2222/7B08, 123/08 |
||
16013 | pkt = NCP(0x7B08, "CPU Information", 'stats') |
||
16014 | pkt.Request(14, [ |
||
16015 | rec(10, 4, CPUNumber ), |
||
16016 | ]) |
||
16017 | pkt.Reply(51, [ |
||
16018 | rec(8, 4, CurrentServerTime ), |
||
16019 | rec(12, 1, VConsoleVersion ), |
||
16020 | rec(13, 1, VConsoleRevision ), |
||
16021 | rec(14, 2, Reserved2 ), |
||
16022 | rec(16, 4, NumberOfCPUs ), |
||
16023 | rec(20, 31, CPUInformation ), |
||
16024 | ]) |
||
16025 | pkt.CompletionCodes([0x0000, 0x7900, 0x7e01, 0xfb06, 0xff00]) |
||
16026 | # 2222/7B09, 123/09 |
||
16027 | pkt = NCP(0x7B09, "Volume Switch Information", 'stats') |
||
16028 | pkt.Request(14, [ |
||
16029 | rec(10, 4, StartNumber ) |
||
16030 | ]) |
||
16031 | pkt.Reply(28, [ |
||
16032 | rec(8, 4, CurrentServerTime ), |
||
16033 | rec(12, 1, VConsoleVersion ), |
||
16034 | rec(13, 1, VConsoleRevision ), |
||
16035 | rec(14, 2, Reserved2 ), |
||
16036 | rec(16, 4, TotalLFSCounters ), |
||
16037 | rec(20, 4, CurrentLFSCounters, var="x"), |
||
16038 | rec(24, 4, LFSCounters, repeat="x"), |
||
16039 | ]) |
||
16040 | pkt.CompletionCodes([0x0000, 0x7900, 0x7e01, 0xfb06, 0xff00]) |
||
16041 | # 2222/7B0A, 123/10 |
||
16042 | pkt = NCP(0x7B0A, "Get NLM Loaded List", 'stats') |
||
16043 | pkt.Request(14, [ |
||
16044 | rec(10, 4, StartNumber ) |
||
16045 | ]) |
||
16046 | pkt.Reply(28, [ |
||
16047 | rec(8, 4, CurrentServerTime ), |
||
16048 | rec(12, 1, VConsoleVersion ), |
||
16049 | rec(13, 1, VConsoleRevision ), |
||
16050 | rec(14, 2, Reserved2 ), |
||
16051 | rec(16, 4, NLMcount ), |
||
16052 | rec(20, 4, NLMsInList, var="x" ), |
||
16053 | rec(24, 4, NLMNumbers, repeat="x" ), |
||
16054 | ]) |
||
16055 | pkt.CompletionCodes([0x0000, 0x7900, 0x7e01, 0xfb06, 0xff00]) |
||
16056 | # 2222/7B0B, 123/11 |
||
16057 | pkt = NCP(0x7B0B, "NLM Information", 'stats') |
||
16058 | pkt.Request(14, [ |
||
16059 | rec(10, 4, NLMNumber ), |
||
16060 | ]) |
||
16061 | pkt.Reply(NO_LENGTH_CHECK, [ |
||
16062 | rec(8, 4, CurrentServerTime ), |
||
16063 | rec(12, 1, VConsoleVersion ), |
||
16064 | rec(13, 1, VConsoleRevision ), |
||
16065 | rec(14, 2, Reserved2 ), |
||
16066 | rec(16, 60, NLMInformation ), |
||
16067 | # The remainder of this dissection is manually decoded in packet-ncp2222.inc |
||
16068 | #rec(-1, (1,255), FileName ), |
||
16069 | #rec(-1, (1,255), Name ), |
||
16070 | #rec(-1, (1,255), Copyright ), |
||
16071 | ]) |
||
16072 | pkt.ReqCondSizeVariable() |
||
16073 | pkt.CompletionCodes([0x0000, 0x7900, 0x7e01, 0xfb06, 0xff00]) |
||
16074 | # 2222/7B0C, 123/12 |
||
16075 | pkt = NCP(0x7B0C, "Get Directory Cache Information", 'stats') |
||
16076 | pkt.Request(10) |
||
16077 | pkt.Reply(72, [ |
||
16078 | rec(8, 4, CurrentServerTime ), |
||
16079 | rec(12, 1, VConsoleVersion ), |
||
16080 | rec(13, 1, VConsoleRevision ), |
||
16081 | rec(14, 2, Reserved2 ), |
||
16082 | rec(16, 56, DirCacheInfo ), |
||
16083 | ]) |
||
16084 | pkt.CompletionCodes([0x0000, 0x7900, 0x7e01, 0xfb06, 0xff00]) |
||
16085 | # 2222/7B0D, 123/13 |
||
16086 | pkt = NCP(0x7B0D, "Get Operating System Version Information", 'stats') |
||
16087 | pkt.Request(10) |
||
16088 | pkt.Reply(70, [ |
||
16089 | rec(8, 4, CurrentServerTime ), |
||
16090 | rec(12, 1, VConsoleVersion ), |
||
16091 | rec(13, 1, VConsoleRevision ), |
||
16092 | rec(14, 2, Reserved2 ), |
||
16093 | rec(16, 1, OSMajorVersion ), |
||
16094 | rec(17, 1, OSMinorVersion ), |
||
16095 | rec(18, 1, OSRevision ), |
||
16096 | rec(19, 1, AccountVersion ), |
||
16097 | rec(20, 1, VAPVersion ), |
||
16098 | rec(21, 1, QueueingVersion ), |
||
16099 | rec(22, 1, SecurityRestrictionVersion ), |
||
16100 | rec(23, 1, InternetBridgeVersion ), |
||
16101 | rec(24, 4, MaxNumOfVol ), |
||
16102 | rec(28, 4, MaxNumOfConn ), |
||
16103 | rec(32, 4, MaxNumOfUsers ), |
||
16104 | rec(36, 4, MaxNumOfNmeSps ), |
||
16105 | rec(40, 4, MaxNumOfLANS ), |
||
16106 | rec(44, 4, MaxNumOfMedias ), |
||
16107 | rec(48, 4, MaxNumOfStacks ), |
||
16108 | rec(52, 4, MaxDirDepth ), |
||
16109 | rec(56, 4, MaxDataStreams ), |
||
16110 | rec(60, 4, MaxNumOfSpoolPr ), |
||
16111 | rec(64, 4, ServerSerialNumber ), |
||
16112 | rec(68, 2, ServerAppNumber ), |
||
16113 | ]) |
||
16114 | pkt.CompletionCodes([0x0000, 0x7900, 0x7e01, 0xfb06, 0xff00]) |
||
16115 | # 2222/7B0E, 123/14 |
||
16116 | pkt = NCP(0x7B0E, "Get Active Connection List by Type", 'stats') |
||
16117 | pkt.Request(15, [ |
||
16118 | rec(10, 4, StartConnNumber ), |
||
16119 | rec(14, 1, ConnectionType ), |
||
16120 | ]) |
||
16121 | pkt.Reply(528, [ |
||
16122 | rec(8, 4, CurrentServerTime ), |
||
16123 | rec(12, 1, VConsoleVersion ), |
||
16124 | rec(13, 1, VConsoleRevision ), |
||
16125 | rec(14, 2, Reserved2 ), |
||
16126 | rec(16, 512, ActiveConnBitList ), |
||
16127 | ]) |
||
16128 | pkt.CompletionCodes([0x0000, 0x7900, 0x7e01, 0xfd01, 0xff00]) |
||
16129 | # 2222/7B0F, 123/15 |
||
16130 | pkt = NCP(0x7B0F, "Get NLM Resource Tag List", 'stats') |
||
16131 | pkt.Request(18, [ |
||
16132 | rec(10, 4, NLMNumber ), |
||
16133 | rec(14, 4, NLMStartNumber ), |
||
16134 | ]) |
||
16135 | pkt.Reply(37, [ |
||
16136 | rec(8, 4, CurrentServerTime ), |
||
16137 | rec(12, 1, VConsoleVersion ), |
||
16138 | rec(13, 1, VConsoleRevision ), |
||
16139 | rec(14, 2, Reserved2 ), |
||
16140 | rec(16, 4, TtlNumOfRTags ), |
||
16141 | rec(20, 4, CurNumOfRTags ), |
||
16142 | rec(24, 13, RTagStructure ), |
||
16143 | ]) |
||
16144 | pkt.CompletionCodes([0x0000, 0x7900, 0x7e01, 0xfb06, 0xff00]) |
||
16145 | # 2222/7B10, 123/16 |
||
16146 | pkt = NCP(0x7B10, "Enumerate Connection Information from Connection List", 'stats') |
||
16147 | pkt.Request(22, [ |
||
16148 | rec(10, 1, EnumInfoMask), |
||
16149 | rec(11, 3, Reserved3), |
||
16150 | rec(14, 4, itemsInList, var="x"), |
||
16151 | rec(18, 4, connList, repeat="x"), |
||
16152 | ]) |
||
16153 | pkt.Reply(NO_LENGTH_CHECK, [ |
||
16154 | rec(8, 4, CurrentServerTime ), |
||
16155 | rec(12, 1, VConsoleVersion ), |
||
16156 | rec(13, 1, VConsoleRevision ), |
||
16157 | rec(14, 2, Reserved2 ), |
||
16158 | rec(16, 4, ItemsInPacket ), |
||
16159 | srec(netAddr, req_cond="ncp.enum_info_transport==TRUE"), |
||
16160 | srec(timeInfo, req_cond="ncp.enum_info_time==TRUE"), |
||
16161 | srec(nameInfo, req_cond="ncp.enum_info_name==TRUE"), |
||
16162 | srec(lockInfo, req_cond="ncp.enum_info_lock==TRUE"), |
||
16163 | srec(printInfo, req_cond="ncp.enum_info_print==TRUE"), |
||
16164 | srec(statsInfo, req_cond="ncp.enum_info_stats==TRUE"), |
||
16165 | srec(acctngInfo, req_cond="ncp.enum_info_account==TRUE"), |
||
16166 | srec(authInfo, req_cond="ncp.enum_info_auth==TRUE"), |
||
16167 | ]) |
||
16168 | pkt.ReqCondSizeVariable() |
||
16169 | pkt.CompletionCodes([0x0000, 0x7900, 0x7e01, 0xfb06, 0xff00]) |
||
16170 | # 2222/7B11, 123/17 |
||
16171 | pkt = NCP(0x7B11, "Enumerate NCP Service Network Addresses", 'stats') |
||
16172 | pkt.Request(14, [ |
||
16173 | rec(10, 4, SearchNumber ), |
||
16174 | ]) |
||
16175 | pkt.Reply(36, [ |
||
16176 | rec(8, 4, CurrentServerTime ), |
||
16177 | rec(12, 1, VConsoleVersion ), |
||
16178 | rec(13, 1, VConsoleRevision ), |
||
16179 | rec(14, 2, ServerInfoFlags ), |
||
16180 | rec(16, 16, GUID ), |
||
16181 | rec(32, 4, NextSearchNum ), |
||
16182 | # The following two items are dissected in packet-ncp2222.inc |
||
16183 | #rec(36, 4, ItemsInPacket, var="x"), |
||
16184 | #rec(40, 20, NCPNetworkAddress, repeat="x" ), |
||
16185 | ]) |
||
16186 | pkt.CompletionCodes([0x0000, 0x7900, 0x7e01, 0xfb01, 0xff00]) |
||
16187 | # 2222/7B14, 123/20 |
||
16188 | pkt = NCP(0x7B14, "Active LAN Board List", 'stats') |
||
16189 | pkt.Request(14, [ |
||
16190 | rec(10, 4, StartNumber ), |
||
16191 | ]) |
||
16192 | pkt.Reply(28, [ |
||
16193 | rec(8, 4, CurrentServerTime ), |
||
16194 | rec(12, 1, VConsoleVersion ), |
||
16195 | rec(13, 1, VConsoleRevision ), |
||
16196 | rec(14, 2, Reserved2 ), |
||
16197 | rec(16, 4, MaxNumOfLANS ), |
||
16198 | rec(20, 4, ItemsInPacket, var="x"), |
||
16199 | rec(24, 4, BoardNumbers, repeat="x"), |
||
16200 | ]) |
||
16201 | pkt.CompletionCodes([0x0000, 0x7900, 0x7e01, 0xfb06, 0xff00]) |
||
16202 | # 2222/7B15, 123/21 |
||
16203 | pkt = NCP(0x7B15, "LAN Configuration Information", 'stats') |
||
16204 | pkt.Request(14, [ |
||
16205 | rec(10, 4, BoardNumber ), |
||
16206 | ]) |
||
16207 | pkt.Reply(152, [ |
||
16208 | rec(8, 4, CurrentServerTime ), |
||
16209 | rec(12, 1, VConsoleVersion ), |
||
16210 | rec(13, 1, VConsoleRevision ), |
||
16211 | rec(14, 2, Reserved2 ), |
||
16212 | rec(16,136, LANConfigInfo ), |
||
16213 | ]) |
||
16214 | pkt.CompletionCodes([0x0000, 0x7900, 0x7e01, 0xfb06, 0xff00]) |
||
16215 | # 2222/7B16, 123/22 |
||
16216 | pkt = NCP(0x7B16, "LAN Common Counters Information", 'stats') |
||
16217 | pkt.Request(18, [ |
||
16218 | rec(10, 4, BoardNumber ), |
||
16219 | rec(14, 4, BlockNumber ), |
||
16220 | ]) |
||
16221 | pkt.Reply(86, [ |
||
16222 | rec(8, 4, CurrentServerTime ), |
||
16223 | rec(12, 1, VConsoleVersion ), |
||
16224 | rec(13, 1, VConsoleRevision ), |
||
16225 | rec(14, 1, StatMajorVersion ), |
||
16226 | rec(15, 1, StatMinorVersion ), |
||
16227 | rec(16, 4, TotalCommonCnts ), |
||
16228 | rec(20, 4, TotalCntBlocks ), |
||
16229 | rec(24, 4, CustomCounters ), |
||
16230 | rec(28, 4, NextCntBlock ), |
||
16231 | rec(32, 54, CommonLanStruc ), |
||
16232 | ]) |
||
16233 | pkt.CompletionCodes([0x0000, 0x7900, 0x7e01, 0xfb06, 0xff00]) |
||
16234 | # 2222/7B17, 123/23 |
||
16235 | pkt = NCP(0x7B17, "LAN Custom Counters Information", 'stats') |
||
16236 | pkt.Request(18, [ |
||
16237 | rec(10, 4, BoardNumber ), |
||
16238 | rec(14, 4, StartNumber ), |
||
16239 | ]) |
||
16240 | pkt.Reply(25, [ |
||
16241 | rec(8, 4, CurrentServerTime ), |
||
16242 | rec(12, 1, VConsoleVersion ), |
||
16243 | rec(13, 1, VConsoleRevision ), |
||
16244 | rec(14, 2, Reserved2 ), |
||
16245 | rec(16, 4, NumOfCCinPkt, var="x"), |
||
16246 | rec(20, 5, CustomCntsInfo, repeat="x"), |
||
16247 | ]) |
||
16248 | pkt.CompletionCodes([0x0000, 0x7900, 0x7e01, 0xfb06, 0xff00]) |
||
16249 | # 2222/7B18, 123/24 |
||
16250 | pkt = NCP(0x7B18, "LAN Name Information", 'stats') |
||
16251 | pkt.Request(14, [ |
||
16252 | rec(10, 4, BoardNumber ), |
||
16253 | ]) |
||
16254 | pkt.Reply(NO_LENGTH_CHECK, [ |
||
16255 | rec(8, 4, CurrentServerTime ), |
||
16256 | rec(12, 1, VConsoleVersion ), |
||
16257 | rec(13, 1, VConsoleRevision ), |
||
16258 | rec(14, 2, Reserved2 ), |
||
16259 | rec(16, PROTO_LENGTH_UNKNOWN, DriverBoardName ), |
||
16260 | rec(-1, PROTO_LENGTH_UNKNOWN, DriverShortName ), |
||
16261 | rec(-1, PROTO_LENGTH_UNKNOWN, DriverLogicalName ), |
||
16262 | ]) |
||
16263 | pkt.ReqCondSizeVariable() |
||
16264 | pkt.CompletionCodes([0x0000, 0x7900, 0x7e01, 0xfb06, 0xff00]) |
||
16265 | # 2222/7B19, 123/25 |
||
16266 | pkt = NCP(0x7B19, "LSL Information", 'stats') |
||
16267 | pkt.Request(10) |
||
16268 | pkt.Reply(90, [ |
||
16269 | rec(8, 4, CurrentServerTime ), |
||
16270 | rec(12, 1, VConsoleVersion ), |
||
16271 | rec(13, 1, VConsoleRevision ), |
||
16272 | rec(14, 2, Reserved2 ), |
||
16273 | rec(16, 74, LSLInformation ), |
||
16274 | ]) |
||
16275 | pkt.CompletionCodes([0x0000, 0x7900, 0x7e01, 0xfb06, 0xff00]) |
||
16276 | # 2222/7B1A, 123/26 |
||
16277 | pkt = NCP(0x7B1A, "LSL Logical Board Statistics", 'stats') |
||
16278 | pkt.Request(14, [ |
||
16279 | rec(10, 4, BoardNumber ), |
||
16280 | ]) |
||
16281 | pkt.Reply(28, [ |
||
16282 | rec(8, 4, CurrentServerTime ), |
||
16283 | rec(12, 1, VConsoleVersion ), |
||
16284 | rec(13, 1, VConsoleRevision ), |
||
16285 | rec(14, 2, Reserved2 ), |
||
16286 | rec(16, 4, LogTtlTxPkts ), |
||
16287 | rec(20, 4, LogTtlRxPkts ), |
||
16288 | rec(24, 4, UnclaimedPkts ), |
||
16289 | ]) |
||
16290 | pkt.CompletionCodes([0x0000, 0x7900, 0x7e01, 0xfb06, 0xff00]) |
||
16291 | # 2222/7B1B, 123/27 |
||
16292 | pkt = NCP(0x7B1B, "MLID Board Information", 'stats') |
||
16293 | pkt.Request(14, [ |
||
16294 | rec(10, 4, BoardNumber ), |
||
16295 | ]) |
||
16296 | pkt.Reply(44, [ |
||
16297 | rec(8, 4, CurrentServerTime ), |
||
16298 | rec(12, 1, VConsoleVersion ), |
||
16299 | rec(13, 1, VConsoleRevision ), |
||
16300 | rec(14, 1, Reserved ), |
||
16301 | rec(15, 1, NumberOfProtocols ), |
||
16302 | rec(16, 28, MLIDBoardInfo ), |
||
16303 | ]) |
||
16304 | pkt.CompletionCodes([0x0000, 0x7900, 0x7e01, 0xfb06, 0xff00]) |
||
16305 | # 2222/7B1E, 123/30 |
||
16306 | pkt = NCP(0x7B1E, "Get Media Manager Object Information", 'stats') |
||
16307 | pkt.Request(14, [ |
||
16308 | rec(10, 4, ObjectNumber ), |
||
16309 | ]) |
||
16310 | pkt.Reply(212, [ |
||
16311 | rec(8, 4, CurrentServerTime ), |
||
16312 | rec(12, 1, VConsoleVersion ), |
||
16313 | rec(13, 1, VConsoleRevision ), |
||
16314 | rec(14, 2, Reserved2 ), |
||
16315 | rec(16, 196, GenericInfoDef ), |
||
16316 | ]) |
||
16317 | pkt.CompletionCodes([0x0000, 0x7900, 0x7e01, 0xfb06, 0xff00]) |
||
16318 | # 2222/7B1F, 123/31 |
||
16319 | pkt = NCP(0x7B1F, "Get Media Manager Objects List", 'stats') |
||
16320 | pkt.Request(15, [ |
||
16321 | rec(10, 4, StartNumber ), |
||
16322 | rec(14, 1, MediaObjectType ), |
||
16323 | ]) |
||
16324 | pkt.Reply(28, [ |
||
16325 | rec(8, 4, CurrentServerTime ), |
||
16326 | rec(12, 1, VConsoleVersion ), |
||
16327 | rec(13, 1, VConsoleRevision ), |
||
16328 | rec(14, 2, Reserved2 ), |
||
16329 | rec(16, 4, nextStartingNumber ), |
||
16330 | rec(20, 4, ObjectCount, var="x"), |
||
16331 | rec(24, 4, ObjectID, repeat="x"), |
||
16332 | ]) |
||
16333 | pkt.CompletionCodes([0x0000, 0x7900, 0x7e01, 0xfb06, 0xff00]) |
||
16334 | # 2222/7B20, 123/32 |
||
16335 | pkt = NCP(0x7B20, "Get Media Manager Object Childrens List", 'stats') |
||
16336 | pkt.Request(22, [ |
||
16337 | rec(10, 4, StartNumber ), |
||
16338 | rec(14, 1, MediaObjectType ), |
||
16339 | rec(15, 3, Reserved3 ), |
||
16340 | rec(18, 4, ParentObjectNumber ), |
||
16341 | ]) |
||
16342 | pkt.Reply(28, [ |
||
16343 | rec(8, 4, CurrentServerTime ), |
||
16344 | rec(12, 1, VConsoleVersion ), |
||
16345 | rec(13, 1, VConsoleRevision ), |
||
16346 | rec(14, 2, Reserved2 ), |
||
16347 | rec(16, 4, nextStartingNumber ), |
||
16348 | rec(20, 4, ObjectCount, var="x" ), |
||
16349 | rec(24, 4, ObjectID, repeat="x" ), |
||
16350 | ]) |
||
16351 | pkt.CompletionCodes([0x0000, 0x7900, 0x7e01, 0xfb06, 0xff00]) |
||
16352 | # 2222/7B21, 123/33 |
||
16353 | pkt = NCP(0x7B21, "Get Volume Segment List", 'stats') |
||
16354 | pkt.Request(14, [ |
||
16355 | rec(10, 4, VolumeNumberLong ), |
||
16356 | ]) |
||
16357 | pkt.Reply(32, [ |
||
16358 | rec(8, 4, CurrentServerTime ), |
||
16359 | rec(12, 1, VConsoleVersion ), |
||
16360 | rec(13, 1, VConsoleRevision ), |
||
16361 | rec(14, 2, Reserved2 ), |
||
16362 | rec(16, 4, NumOfSegments, var="x" ), |
||
16363 | rec(20, 12, Segments, repeat="x" ), |
||
16364 | ]) |
||
16365 | pkt.CompletionCodes([0x0000, 0x7900, 0x7e01, 0x9801, 0xfb06, 0xff00]) |
||
16366 | # 2222/7B22, 123/34 |
||
16367 | pkt = NCP(0x7B22, "Get Volume Information by Level", 'stats') |
||
16368 | pkt.Request(15, [ |
||
16369 | rec(10, 4, VolumeNumberLong ), |
||
16370 | rec(14, 1, InfoLevelNumber ), |
||
16371 | ]) |
||
16372 | pkt.Reply(NO_LENGTH_CHECK, [ |
||
16373 | rec(8, 4, CurrentServerTime ), |
||
16374 | rec(12, 1, VConsoleVersion ), |
||
16375 | rec(13, 1, VConsoleRevision ), |
||
16376 | rec(14, 2, Reserved2 ), |
||
16377 | rec(16, 1, InfoLevelNumber ), |
||
16378 | rec(17, 3, Reserved3 ), |
||
16379 | srec(VolInfoStructure, req_cond="ncp.info_level_num==0x01"), |
||
16380 | srec(VolInfo2Struct, req_cond="ncp.info_level_num==0x02"), |
||
16381 | ]) |
||
16382 | pkt.ReqCondSizeVariable() |
||
16383 | pkt.CompletionCodes([0x0000, 0x7900, 0x7e01, 0xfb06, 0xff00]) |
||
16384 | # 2222/7B23, 123/35 |
||
16385 | pkt = NCP(0x7B23, "Get Volume Information by Level 64 Bit Aware", 'stats') |
||
16386 | pkt.Request(22, [ |
||
16387 | rec(10, 4, InpInfotype ), |
||
16388 | rec(14, 4, Inpld ), |
||
16389 | rec(18, 4, VolInfoReturnInfoMask), |
||
16390 | ]) |
||
16391 | pkt.Reply(NO_LENGTH_CHECK, [ |
||
16392 | rec(8, 4, CurrentServerTime ), |
||
16393 | rec(12, 1, VConsoleVersion ), |
||
16394 | rec(13, 1, VConsoleRevision ), |
||
16395 | rec(14, 2, Reserved2 ), |
||
16396 | rec(16, 4, VolInfoReturnInfoMask), |
||
16397 | srec(VolInfoStructure64, req_cond="ncp.vinfo_info64==0x00000001"), |
||
16398 | rec( -1, (1,255), VolumeNameLen, req_cond="ncp.vinfo_volname==0x00000002" ), |
||
16399 | ]) |
||
16400 | pkt.ReqCondSizeVariable() |
||
16401 | pkt.CompletionCodes([0x0000, 0x7900, 0x7e01, 0xfb06, 0xff00]) |
||
16402 | # 2222/7B28, 123/40 |
||
16403 | pkt = NCP(0x7B28, "Active Protocol Stacks", 'stats') |
||
16404 | pkt.Request(14, [ |
||
16405 | rec(10, 4, StartNumber ), |
||
16406 | ]) |
||
16407 | pkt.Reply(48, [ |
||
16408 | rec(8, 4, CurrentServerTime ), |
||
16409 | rec(12, 1, VConsoleVersion ), |
||
16410 | rec(13, 1, VConsoleRevision ), |
||
16411 | rec(14, 2, Reserved2 ), |
||
16412 | rec(16, 4, MaxNumOfLANS ), |
||
16413 | rec(20, 4, StackCount, var="x" ), |
||
16414 | rec(24, 4, nextStartingNumber ), |
||
16415 | rec(28, 20, StackInfo, repeat="x" ), |
||
16416 | ]) |
||
16417 | pkt.CompletionCodes([0x0000, 0x7900, 0x7e01, 0xfb06, 0xff00]) |
||
16418 | # 2222/7B29, 123/41 |
||
16419 | pkt = NCP(0x7B29, "Get Protocol Stack Configuration Information", 'stats') |
||
16420 | pkt.Request(14, [ |
||
16421 | rec(10, 4, StackNumber ), |
||
16422 | ]) |
||
16423 | pkt.Reply((37,164), [ |
||
16424 | rec(8, 4, CurrentServerTime ), |
||
16425 | rec(12, 1, VConsoleVersion ), |
||
16426 | rec(13, 1, VConsoleRevision ), |
||
16427 | rec(14, 2, Reserved2 ), |
||
16428 | rec(16, 1, ConfigMajorVN ), |
||
16429 | rec(17, 1, ConfigMinorVN ), |
||
16430 | rec(18, 1, StackMajorVN ), |
||
16431 | rec(19, 1, StackMinorVN ), |
||
16432 | rec(20, 16, ShortStkName ), |
||
16433 | rec(36, (1,128), StackFullNameStr ), |
||
16434 | ]) |
||
16435 | pkt.CompletionCodes([0x0000, 0x7900, 0x7e01, 0xfb06, 0xff00]) |
||
16436 | # 2222/7B2A, 123/42 |
||
16437 | pkt = NCP(0x7B2A, "Get Protocol Stack Statistics Information", 'stats') |
||
16438 | pkt.Request(14, [ |
||
16439 | rec(10, 4, StackNumber ), |
||
16440 | ]) |
||
16441 | pkt.Reply(38, [ |
||
16442 | rec(8, 4, CurrentServerTime ), |
||
16443 | rec(12, 1, VConsoleVersion ), |
||
16444 | rec(13, 1, VConsoleRevision ), |
||
16445 | rec(14, 2, Reserved2 ), |
||
16446 | rec(16, 1, StatMajorVersion ), |
||
16447 | rec(17, 1, StatMinorVersion ), |
||
16448 | rec(18, 2, ComCnts ), |
||
16449 | rec(20, 4, CounterMask ), |
||
16450 | rec(24, 4, TotalTxPkts ), |
||
16451 | rec(28, 4, TotalRxPkts ), |
||
16452 | rec(32, 4, IgnoredRxPkts ), |
||
16453 | rec(36, 2, CustomCnts ), |
||
16454 | ]) |
||
16455 | pkt.CompletionCodes([0x0000, 0x7900, 0x7e01, 0xfb06, 0xff00]) |
||
16456 | # 2222/7B2B, 123/43 |
||
16457 | pkt = NCP(0x7B2B, "Get Protocol Stack Custom Information", 'stats') |
||
16458 | pkt.Request(18, [ |
||
16459 | rec(10, 4, StackNumber ), |
||
16460 | rec(14, 4, StartNumber ), |
||
16461 | ]) |
||
16462 | pkt.Reply(25, [ |
||
16463 | rec(8, 4, CurrentServerTime ), |
||
16464 | rec(12, 1, VConsoleVersion ), |
||
16465 | rec(13, 1, VConsoleRevision ), |
||
16466 | rec(14, 2, Reserved2 ), |
||
16467 | rec(16, 4, CustomCount, var="x" ), |
||
16468 | rec(20, 5, CustomCntsInfo, repeat="x" ), |
||
16469 | ]) |
||
16470 | pkt.CompletionCodes([0x0000, 0x7900, 0x7e01, 0xfb06, 0xff00]) |
||
16471 | # 2222/7B2C, 123/44 |
||
16472 | pkt = NCP(0x7B2C, "Get Protocol Stack Numbers by Media Number", 'stats') |
||
16473 | pkt.Request(14, [ |
||
16474 | rec(10, 4, MediaNumber ), |
||
16475 | ]) |
||
16476 | pkt.Reply(24, [ |
||
16477 | rec(8, 4, CurrentServerTime ), |
||
16478 | rec(12, 1, VConsoleVersion ), |
||
16479 | rec(13, 1, VConsoleRevision ), |
||
16480 | rec(14, 2, Reserved2 ), |
||
16481 | rec(16, 4, StackCount, var="x" ), |
||
16482 | rec(20, 4, StackNumber, repeat="x" ), |
||
16483 | ]) |
||
16484 | pkt.CompletionCodes([0x0000, 0x7900, 0x7e01, 0xfb06, 0xff00]) |
||
16485 | # 2222/7B2D, 123/45 |
||
16486 | pkt = NCP(0x7B2D, "Get Protocol Stack Numbers by LAN Board Number", 'stats') |
||
16487 | pkt.Request(14, [ |
||
16488 | rec(10, 4, BoardNumber ), |
||
16489 | ]) |
||
16490 | pkt.Reply(24, [ |
||
16491 | rec(8, 4, CurrentServerTime ), |
||
16492 | rec(12, 1, VConsoleVersion ), |
||
16493 | rec(13, 1, VConsoleRevision ), |
||
16494 | rec(14, 2, Reserved2 ), |
||
16495 | rec(16, 4, StackCount, var="x" ), |
||
16496 | rec(20, 4, StackNumber, repeat="x" ), |
||
16497 | ]) |
||
16498 | pkt.CompletionCodes([0x0000, 0x7900, 0x7e01, 0xfb06, 0xff00]) |
||
16499 | # 2222/7B2E, 123/46 |
||
16500 | pkt = NCP(0x7B2E, "Get Media Name by Media Number", 'stats') |
||
16501 | pkt.Request(14, [ |
||
16502 | rec(10, 4, MediaNumber ), |
||
16503 | ]) |
||
16504 | pkt.Reply((17,144), [ |
||
16505 | rec(8, 4, CurrentServerTime ), |
||
16506 | rec(12, 1, VConsoleVersion ), |
||
16507 | rec(13, 1, VConsoleRevision ), |
||
16508 | rec(14, 2, Reserved2 ), |
||
16509 | rec(16, (1,128), MediaName ), |
||
16510 | ]) |
||
16511 | pkt.CompletionCodes([0x0000, 0x7900, 0x7e01, 0xfb06, 0xff00]) |
||
16512 | # 2222/7B2F, 123/47 |
||
16513 | pkt = NCP(0x7B2F, "Get Loaded Media Number", 'stats') |
||
16514 | pkt.Request(10) |
||
16515 | pkt.Reply(28, [ |
||
16516 | rec(8, 4, CurrentServerTime ), |
||
16517 | rec(12, 1, VConsoleVersion ), |
||
16518 | rec(13, 1, VConsoleRevision ), |
||
16519 | rec(14, 2, Reserved2 ), |
||
16520 | rec(16, 4, MaxNumOfMedias ), |
||
16521 | rec(20, 4, MediaListCount, var="x" ), |
||
16522 | rec(24, 4, MediaList, repeat="x" ), |
||
16523 | ]) |
||
16524 | pkt.CompletionCodes([0x0000, 0x7e01, 0xfb06, 0xff00]) |
||
16525 | # 2222/7B32, 123/50 |
||
16526 | pkt = NCP(0x7B32, "Get General Router and SAP Information", 'stats') |
||
16527 | pkt.Request(10) |
||
16528 | pkt.Reply(37, [ |
||
16529 | rec(8, 4, CurrentServerTime ), |
||
16530 | rec(12, 1, VConsoleVersion ), |
||
16531 | rec(13, 1, VConsoleRevision ), |
||
16532 | rec(14, 2, Reserved2 ), |
||
16533 | rec(16, 2, RIPSocketNumber ), |
||
16534 | rec(18, 2, Reserved2 ), |
||
16535 | rec(20, 1, RouterDownFlag ), |
||
16536 | rec(21, 3, Reserved3 ), |
||
16537 | rec(24, 1, TrackOnFlag ), |
||
16538 | rec(25, 3, Reserved3 ), |
||
16539 | rec(28, 1, ExtRouterActiveFlag ), |
||
16540 | rec(29, 3, Reserved3 ), |
||
16541 | rec(32, 2, SAPSocketNumber ), |
||
16542 | rec(34, 2, Reserved2 ), |
||
16543 | rec(36, 1, RpyNearestSrvFlag ), |
||
16544 | ]) |
||
16545 | pkt.CompletionCodes([0x0000, 0x7e01, 0xfb06, 0xff00]) |
||
16546 | # 2222/7B33, 123/51 |
||
16547 | pkt = NCP(0x7B33, "Get Network Router Information", 'stats') |
||
16548 | pkt.Request(14, [ |
||
16549 | rec(10, 4, NetworkNumber ), |
||
16550 | ]) |
||
16551 | pkt.Reply(26, [ |
||
16552 | rec(8, 4, CurrentServerTime ), |
||
16553 | rec(12, 1, VConsoleVersion ), |
||
16554 | rec(13, 1, VConsoleRevision ), |
||
16555 | rec(14, 2, Reserved2 ), |
||
16556 | rec(16, 10, KnownRoutes ), |
||
16557 | ]) |
||
16558 | pkt.CompletionCodes([0x0000, 0x0108, 0x7e01, 0xfb06, 0xff00]) |
||
16559 | # 2222/7B34, 123/52 |
||
16560 | pkt = NCP(0x7B34, "Get Network Routers Information", 'stats') |
||
16561 | pkt.Request(18, [ |
||
16562 | rec(10, 4, NetworkNumber), |
||
16563 | rec(14, 4, StartNumber ), |
||
16564 | ]) |
||
16565 | pkt.Reply(34, [ |
||
16566 | rec(8, 4, CurrentServerTime ), |
||
16567 | rec(12, 1, VConsoleVersion ), |
||
16568 | rec(13, 1, VConsoleRevision ), |
||
16569 | rec(14, 2, Reserved2 ), |
||
16570 | rec(16, 4, NumOfEntries, var="x" ), |
||
16571 | rec(20, 14, RoutersInfo, repeat="x" ), |
||
16572 | ]) |
||
16573 | pkt.CompletionCodes([0x0000, 0x0108, 0x7e01, 0xfb06, 0xff00]) |
||
16574 | # 2222/7B35, 123/53 |
||
16575 | pkt = NCP(0x7B35, "Get Known Networks Information", 'stats') |
||
16576 | pkt.Request(14, [ |
||
16577 | rec(10, 4, StartNumber ), |
||
16578 | ]) |
||
16579 | pkt.Reply(30, [ |
||
16580 | rec(8, 4, CurrentServerTime ), |
||
16581 | rec(12, 1, VConsoleVersion ), |
||
16582 | rec(13, 1, VConsoleRevision ), |
||
16583 | rec(14, 2, Reserved2 ), |
||
16584 | rec(16, 4, NumOfEntries, var="x" ), |
||
16585 | rec(20, 10, KnownRoutes, repeat="x" ), |
||
16586 | ]) |
||
16587 | pkt.CompletionCodes([0x0000, 0x7e01, 0xfb06, 0xff00]) |
||
16588 | # 2222/7B36, 123/54 |
||
16589 | pkt = NCP(0x7B36, "Get Server Information", 'stats') |
||
16590 | pkt.Request((15,64), [ |
||
16591 | rec(10, 2, ServerType ), |
||
16592 | rec(12, 2, Reserved2 ), |
||
16593 | rec(14, (1,50), ServerNameLen, info_str=(ServerNameLen, "Get Server Information: %s", ", %s") ), |
||
16594 | ]) |
||
16595 | pkt.Reply(30, [ |
||
16596 | rec(8, 4, CurrentServerTime ), |
||
16597 | rec(12, 1, VConsoleVersion ), |
||
16598 | rec(13, 1, VConsoleRevision ), |
||
16599 | rec(14, 2, Reserved2 ), |
||
16600 | rec(16, 12, ServerAddress ), |
||
16601 | rec(28, 2, HopsToNet ), |
||
16602 | ]) |
||
16603 | pkt.CompletionCodes([0x0000, 0x7e01, 0xfb06, 0xff00]) |
||
16604 | # 2222/7B37, 123/55 |
||
16605 | pkt = NCP(0x7B37, "Get Server Sources Information", 'stats') |
||
16606 | pkt.Request((19,68), [ |
||
16607 | rec(10, 4, StartNumber ), |
||
16608 | rec(14, 2, ServerType ), |
||
16609 | rec(16, 2, Reserved2 ), |
||
16610 | rec(18, (1,50), ServerNameLen, info_str=(ServerNameLen, "Get Server Sources Info: %s", ", %s") ), |
||
16611 | ]) |
||
16612 | pkt.Reply(32, [ |
||
16613 | rec(8, 4, CurrentServerTime ), |
||
16614 | rec(12, 1, VConsoleVersion ), |
||
16615 | rec(13, 1, VConsoleRevision ), |
||
16616 | rec(14, 2, Reserved2 ), |
||
16617 | rec(16, 4, NumOfEntries, var="x" ), |
||
16618 | rec(20, 12, ServersSrcInfo, repeat="x" ), |
||
16619 | ]) |
||
16620 | pkt.CompletionCodes([0x0000, 0x0108, 0x7e01, 0xfb06, 0xff00]) |
||
16621 | # 2222/7B38, 123/56 |
||
16622 | pkt = NCP(0x7B38, "Get Known Servers Information", 'stats') |
||
16623 | pkt.Request(16, [ |
||
16624 | rec(10, 4, StartNumber ), |
||
16625 | rec(14, 2, ServerType ), |
||
16626 | ]) |
||
16627 | pkt.Reply(35, [ |
||
16628 | rec(8, 4, CurrentServerTime ), |
||
16629 | rec(12, 1, VConsoleVersion ), |
||
16630 | rec(13, 1, VConsoleRevision ), |
||
16631 | rec(14, 2, Reserved2 ), |
||
16632 | rec(16, 4, NumOfEntries, var="x" ), |
||
16633 | rec(20, 15, KnownServStruc, repeat="x" ), |
||
16634 | ]) |
||
16635 | pkt.CompletionCodes([0x0000, 0x0108, 0x7e01, 0xfb06, 0xff00]) |
||
16636 | # 2222/7B3C, 123/60 |
||
16637 | pkt = NCP(0x7B3C, "Get Server Set Commands Information", 'stats') |
||
16638 | pkt.Request(14, [ |
||
16639 | rec(10, 4, StartNumber ), |
||
16640 | ]) |
||
16641 | pkt.Reply(NO_LENGTH_CHECK, [ |
||
16642 | rec(8, 4, CurrentServerTime ), |
||
16643 | rec(12, 1, VConsoleVersion ), |
||
16644 | rec(13, 1, VConsoleRevision ), |
||
16645 | rec(14, 2, Reserved2 ), |
||
16646 | rec(16, 4, TtlNumOfSetCmds ), |
||
16647 | rec(20, 4, nextStartingNumber ), |
||
16648 | rec(24, 1, SetCmdType ), |
||
16649 | rec(25, 3, Reserved3 ), |
||
16650 | rec(28, 1, SetCmdCategory ), |
||
16651 | rec(29, 3, Reserved3 ), |
||
16652 | rec(32, 1, SetCmdFlags ), |
||
16653 | rec(33, 3, Reserved3 ), |
||
16654 | rec(36, PROTO_LENGTH_UNKNOWN, SetCmdName ), |
||
16655 | rec(-1, 4, SetCmdValueNum ), |
||
16656 | ]) |
||
16657 | pkt.ReqCondSizeVariable() |
||
16658 | pkt.CompletionCodes([0x0000, 0x7e01, 0xfb06, 0xff00]) |
||
16659 | # 2222/7B3D, 123/61 |
||
16660 | pkt = NCP(0x7B3D, "Get Server Set Categories", 'stats') |
||
16661 | pkt.Request(14, [ |
||
16662 | rec(10, 4, StartNumber ), |
||
16663 | ]) |
||
16664 | pkt.Reply(NO_LENGTH_CHECK, [ |
||
16665 | rec(8, 4, CurrentServerTime ), |
||
16666 | rec(12, 1, VConsoleVersion ), |
||
16667 | rec(13, 1, VConsoleRevision ), |
||
16668 | rec(14, 2, Reserved2 ), |
||
16669 | rec(16, 4, NumberOfSetCategories ), |
||
16670 | rec(20, 4, nextStartingNumber ), |
||
16671 | rec(24, PROTO_LENGTH_UNKNOWN, CategoryName ), |
||
16672 | ]) |
||
16673 | pkt.CompletionCodes([0x0000, 0x7e01, 0xfb06, 0xff00]) |
||
16674 | # 2222/7B3E, 123/62 |
||
16675 | pkt = NCP(0x7B3E, "Get Server Set Commands Information By Name", 'stats') |
||
16676 | pkt.Request(NO_LENGTH_CHECK, [ |
||
16677 | rec(10, PROTO_LENGTH_UNKNOWN, SetParmName, info_str=(SetParmName, "Get Server Set Command Info for: %s", ", %s") ), |
||
16678 | ]) |
||
16679 | pkt.Reply(NO_LENGTH_CHECK, [ |
||
16680 | rec(8, 4, CurrentServerTime ), |
||
16681 | rec(12, 1, VConsoleVersion ), |
||
16682 | rec(13, 1, VConsoleRevision ), |
||
16683 | rec(14, 2, Reserved2 ), |
||
16684 | rec(16, 4, TtlNumOfSetCmds ), |
||
16685 | rec(20, 4, nextStartingNumber ), |
||
16686 | rec(24, 1, SetCmdType ), |
||
16687 | rec(25, 3, Reserved3 ), |
||
16688 | rec(28, 1, SetCmdCategory ), |
||
16689 | rec(29, 3, Reserved3 ), |
||
16690 | rec(32, 1, SetCmdFlags ), |
||
16691 | rec(33, 3, Reserved3 ), |
||
16692 | rec(36, PROTO_LENGTH_UNKNOWN, SetCmdName ), |
||
16693 | # The value of the set command is decoded in packet-ncp2222.inc |
||
16694 | ]) |
||
16695 | pkt.ReqCondSizeVariable() |
||
16696 | pkt.CompletionCodes([0x0000, 0x7e01, 0xc600, 0xfb06, 0xff22]) |
||
16697 | # 2222/7B46, 123/70 |
||
16698 | pkt = NCP(0x7B46, "Get Current Compressing File", 'stats') |
||
16699 | pkt.Request(14, [ |
||
16700 | rec(10, 4, VolumeNumberLong ), |
||
16701 | ]) |
||
16702 | pkt.Reply(56, [ |
||
16703 | rec(8, 4, ParentID ), |
||
16704 | rec(12, 4, DirectoryEntryNumber ), |
||
16705 | rec(16, 4, compressionStage ), |
||
16706 | rec(20, 4, ttlIntermediateBlks ), |
||
16707 | rec(24, 4, ttlCompBlks ), |
||
16708 | rec(28, 4, curIntermediateBlks ), |
||
16709 | rec(32, 4, curCompBlks ), |
||
16710 | rec(36, 4, curInitialBlks ), |
||
16711 | rec(40, 4, fileFlags ), |
||
16712 | rec(44, 4, projectedCompSize ), |
||
16713 | rec(48, 4, originalSize ), |
||
16714 | rec(52, 4, compressVolume ), |
||
16715 | ]) |
||
16716 | pkt.CompletionCodes([0x0000, 0x7e00, 0x7901, 0x9801, 0xfb06, 0xff00]) |
||
16717 | # 2222/7B47, 123/71 |
||
16718 | pkt = NCP(0x7B47, "Get Current DeCompressing File Info List", 'stats') |
||
16719 | pkt.Request(14, [ |
||
16720 | rec(10, 4, VolumeNumberLong ), |
||
16721 | ]) |
||
16722 | pkt.Reply(24, [ |
||
16723 | #rec(8, 4, FileListCount ), |
||
16724 | rec(8, 16, FileInfoStruct ), |
||
16725 | ]) |
||
16726 | pkt.CompletionCodes([0x0000, 0x7e00, 0x9801, 0xfb06, 0xff00]) |
||
16727 | # 2222/7B48, 123/72 |
||
16728 | pkt = NCP(0x7B48, "Get Compression and Decompression Time and Counts", 'stats') |
||
16729 | pkt.Request(14, [ |
||
16730 | rec(10, 4, VolumeNumberLong ), |
||
16731 | ]) |
||
16732 | pkt.Reply(64, [ |
||
16733 | rec(8, 56, CompDeCompStat ), |
||
16734 | ]) |
||
16735 | pkt.CompletionCodes([0x0000, 0x7e00, 0x9801, 0xfb06, 0xff00]) |
||
16736 | # 2222/7BF9, 123/249 |
||
16737 | pkt = NCP(0x7BF9, "Set Alert Notification", 'stats') |
||
16738 | pkt.Request(10) |
||
16739 | pkt.Reply(8) |
||
16740 | pkt.CompletionCodes([0x0000, 0x7e00, 0xfb06, 0xff00]) |
||
16741 | # 2222/7BFB, 123/251 |
||
16742 | pkt = NCP(0x7BFB, "Get Item Configuration Information", 'stats') |
||
16743 | pkt.Request(10) |
||
16744 | pkt.Reply(8) |
||
16745 | pkt.CompletionCodes([0x0000, 0x7e00, 0xfb06, 0xff00]) |
||
16746 | # 2222/7BFC, 123/252 |
||
16747 | pkt = NCP(0x7BFC, "Get Subject Item ID List", 'stats') |
||
16748 | pkt.Request(10) |
||
16749 | pkt.Reply(8) |
||
16750 | pkt.CompletionCodes([0x0000, 0x7e00, 0xfb06, 0xff00]) |
||
16751 | # 2222/7BFD, 123/253 |
||
16752 | pkt = NCP(0x7BFD, "Get Subject Item List Count", 'stats') |
||
16753 | pkt.Request(10) |
||
16754 | pkt.Reply(8) |
||
16755 | pkt.CompletionCodes([0x0000, 0x7e00, 0xfb06, 0xff00]) |
||
16756 | # 2222/7BFE, 123/254 |
||
16757 | pkt = NCP(0x7BFE, "Get Subject ID List", 'stats') |
||
16758 | pkt.Request(10) |
||
16759 | pkt.Reply(8) |
||
16760 | pkt.CompletionCodes([0x0000, 0x7e00, 0xfb06, 0xff00]) |
||
16761 | # 2222/7BFF, 123/255 |
||
16762 | pkt = NCP(0x7BFF, "Get Number of NetMan Subjects", 'stats') |
||
16763 | pkt.Request(10) |
||
16764 | pkt.Reply(8) |
||
16765 | pkt.CompletionCodes([0x0000, 0x7e00, 0xfb06, 0xff00]) |
||
16766 | # 2222/8301, 131/01 |
||
16767 | pkt = NCP(0x8301, "RPC Load an NLM", 'remote') |
||
16768 | pkt.Request(NO_LENGTH_CHECK, [ |
||
16769 | rec(10, 4, NLMLoadOptions ), |
||
16770 | rec(14, 16, Reserved16 ), |
||
16771 | rec(30, PROTO_LENGTH_UNKNOWN, PathAndName, info_str=(PathAndName, "RPC Load NLM: %s", ", %s") ), |
||
16772 | ]) |
||
16773 | pkt.Reply(12, [ |
||
16774 | rec(8, 4, RPCccode ), |
||
16775 | ]) |
||
16776 | pkt.CompletionCodes([0x0000, 0x7c00, 0x7e00, 0xfb07, 0xff00]) |
||
16777 | # 2222/8302, 131/02 |
||
16778 | pkt = NCP(0x8302, "RPC Unload an NLM", 'remote') |
||
16779 | pkt.Request(NO_LENGTH_CHECK, [ |
||
16780 | rec(10, 20, Reserved20 ), |
||
16781 | rec(30, PROTO_LENGTH_UNKNOWN, NLMName, info_str=(NLMName, "RPC Unload NLM: %s", ", %s") ), |
||
16782 | ]) |
||
16783 | pkt.Reply(12, [ |
||
16784 | rec(8, 4, RPCccode ), |
||
16785 | ]) |
||
16786 | pkt.CompletionCodes([0x0000, 0x7c00, 0x7e00, 0xfb07, 0xff00]) |
||
16787 | # 2222/8303, 131/03 |
||
16788 | pkt = NCP(0x8303, "RPC Mount Volume", 'remote') |
||
16789 | pkt.Request(NO_LENGTH_CHECK, [ |
||
16790 | rec(10, 20, Reserved20 ), |
||
16791 | rec(30, PROTO_LENGTH_UNKNOWN, VolumeNameStringz, info_str=(VolumeNameStringz, "RPC Mount Volume: %s", ", %s") ), |
||
16792 | ]) |
||
16793 | pkt.Reply(32, [ |
||
16794 | rec(8, 4, RPCccode), |
||
16795 | rec(12, 16, Reserved16 ), |
||
16796 | rec(28, 4, VolumeNumberLong ), |
||
16797 | ]) |
||
16798 | pkt.CompletionCodes([0x0000, 0x7e00, 0xfb07, 0xff00]) |
||
16799 | # 2222/8304, 131/04 |
||
16800 | pkt = NCP(0x8304, "RPC Dismount Volume", 'remote') |
||
16801 | pkt.Request(NO_LENGTH_CHECK, [ |
||
16802 | rec(10, 20, Reserved20 ), |
||
16803 | rec(30, PROTO_LENGTH_UNKNOWN, VolumeNameStringz, info_str=(VolumeNameStringz, "RPC Dismount Volume: %s", ", %s") ), |
||
16804 | ]) |
||
16805 | pkt.Reply(12, [ |
||
16806 | rec(8, 4, RPCccode ), |
||
16807 | ]) |
||
16808 | pkt.CompletionCodes([0x0000, 0x7e00, 0xfb07, 0xff00]) |
||
16809 | # 2222/8305, 131/05 |
||
16810 | pkt = NCP(0x8305, "RPC Add Name Space To Volume", 'remote') |
||
16811 | pkt.Request(NO_LENGTH_CHECK, [ |
||
16812 | rec(10, 20, Reserved20 ), |
||
16813 | rec(30, PROTO_LENGTH_UNKNOWN, AddNameSpaceAndVol, info_str=(AddNameSpaceAndVol, "RPC Add Name Space to Volume: %s", ", %s") ), |
||
16814 | ]) |
||
16815 | pkt.Reply(12, [ |
||
16816 | rec(8, 4, RPCccode ), |
||
16817 | ]) |
||
16818 | pkt.CompletionCodes([0x0000, 0x7e00, 0xfb07, 0xff00]) |
||
16819 | # 2222/8306, 131/06 |
||
16820 | pkt = NCP(0x8306, "RPC Set Command Value", 'remote') |
||
16821 | pkt.Request(NO_LENGTH_CHECK, [ |
||
16822 | rec(10, 1, SetCmdType ), |
||
16823 | rec(11, 3, Reserved3 ), |
||
16824 | rec(14, 4, SetCmdValueNum ), |
||
16825 | rec(18, 12, Reserved12 ), |
||
16826 | rec(30, PROTO_LENGTH_UNKNOWN, SetCmdName, info_str=(SetCmdName, "RPC Set Command Value: %s", ", %s") ), |
||
16827 | # |
||
16828 | # XXX - optional string, if SetCmdType is 0 |
||
16829 | # |
||
16830 | ]) |
||
16831 | pkt.Reply(12, [ |
||
16832 | rec(8, 4, RPCccode ), |
||
16833 | ]) |
||
16834 | pkt.CompletionCodes([0x0000, 0x7e00, 0xfb07, 0xff00]) |
||
16835 | # 2222/8307, 131/07 |
||
16836 | pkt = NCP(0x8307, "RPC Execute NCF File", 'remote') |
||
16837 | pkt.Request(NO_LENGTH_CHECK, [ |
||
16838 | rec(10, 20, Reserved20 ), |
||
16839 | rec(30, PROTO_LENGTH_UNKNOWN, PathAndName, info_str=(PathAndName, "RPC Execute NCF File: %s", ", %s") ), |
||
16840 | ]) |
||
16841 | pkt.Reply(12, [ |
||
16842 | rec(8, 4, RPCccode ), |
||
16843 | ]) |
||
16844 | pkt.CompletionCodes([0x0000, 0x7e00, 0xfb07, 0xff00]) |
||
16845 | if __name__ == '__main__': |
||
16846 | # import profile |
||
16847 | # filename = "ncp.pstats" |
||
16848 | # profile.run("main()", filename) |
||
16849 | # |
||
16850 | # import pstats |
||
16851 | # sys.stdout = msg |
||
16852 | # p = pstats.Stats(filename) |
||
16853 | # |
||
16854 | # print "Stats sorted by cumulative time" |
||
16855 | # p.strip_dirs().sort_stats('cumulative').print_stats() |
||
16856 | # |
||
16857 | # print "Function callees" |
||
16858 | # p.print_callees() |
||
16859 | main() |
||
16860 | |||
16861 | # |
||
16862 | # Editor modelines - http://www.wireshark.org/tools/modelines.html |
||
16863 | # |
||
16864 | # Local variables: |
||
16865 | # c-basic-offset: 4 |
||
16866 | # indent-tabs-mode: nil |
||
16867 | # End: |
||
16868 | # |
||
16869 | # vi: set shiftwidth=4 expandtab: |
||
16870 | # :indentSize=4:noTabs=true: |
||
16871 | # |