aboutsummaryrefslogtreecommitdiffstats
path: root/tools/ncp2222.py
diff options
context:
space:
mode:
Diffstat (limited to 'tools/ncp2222.py')
-rwxr-xr-xtools/ncp2222.py960
1 files changed, 498 insertions, 462 deletions
diff --git a/tools/ncp2222.py b/tools/ncp2222.py
index 5b59e86031..073d357a62 100755
--- a/tools/ncp2222.py
+++ b/tools/ncp2222.py
@@ -56,6 +56,8 @@ compcode_lists = None
ptvc_lists = None
msg = None
reply_var = None
+#ensure unique expert function declarations
+expert_hash = {}
REC_START = 0
REC_LENGTH = 1
@@ -64,6 +66,7 @@ REC_ENDIANNESS = 3
REC_VAR = 4
REC_REPEAT = 5
REC_REQ_COND = 6
+REC_INFO_STR = 7
NO_VAR = -1
NO_REPEAT = -1
@@ -116,7 +119,7 @@ class UniqueCollection:
def HasMember(self, object):
"Does the list of members contain the object?"
- if repr(object) in self.members_reprs:
+ if repr(object) in self.member_reprs:
return 1
else:
return 0
@@ -173,7 +176,7 @@ class NamedList:
class PTVC(NamedList):
"""ProtoTree TVBuff Cursor List ("PTVC List") Class"""
- def __init__(self, name, records):
+ def __init__(self, name, records, code):
"Constructor"
NamedList.__init__(self, name, [])
@@ -190,6 +193,7 @@ class PTVC(NamedList):
length = record[REC_LENGTH]
field = record[REC_FIELD]
endianness = record[REC_ENDIANNESS]
+ info_str = record[REC_INFO_STR]
# Variable
var_name = record[REC_VAR]
@@ -213,7 +217,7 @@ class PTVC(NamedList):
# Do we have this var?
if repeat_name not in named_vars:
sys.exit("%s does not have %s var defined." % \
- (name, var_name))
+ (name, repeat_name))
repeat = named_vars[repeat_name]
else:
repeat = NO_REPEAT
@@ -223,7 +227,7 @@ class PTVC(NamedList):
if req_cond != NO_REQ_COND:
global_req_cond[req_cond] = None
- ptvc_rec = PTVCRecord(field, length, endianness, var, repeat, req_cond)
+ ptvc_rec = PTVCRecord(field, length, endianness, var, repeat, req_cond, info_str, code)
if expected_offset == None:
expected_offset = offset
@@ -274,7 +278,7 @@ class PTVC(NamedList):
x = "static const ptvc_record %s[] = {\n" % (self.Name())
for ptvc_rec in self.list:
x = x + " %s,\n" % (ptvc_rec.Code())
- x = x + " { NULL, 0, NULL, NO_ENDIANNESS, NO_VAR, NO_REPEAT, NO_REQ_COND, NCP_FMT_NONE }\n"
+ x = x + " { NULL, 0, NULL, NULL, NO_ENDIANNESS, NO_VAR, NO_REPEAT, NO_REQ_COND, NCP_FMT_NONE }\n"
x = x + "};\n"
return x
@@ -291,7 +295,7 @@ class PTVCBitfield(PTVC):
for var in vars:
ptvc_rec = PTVCRecord(var, var.Length(), var.Endianness(),
- NO_VAR, NO_REPEAT, NO_REQ_COND)
+ NO_VAR, NO_REPEAT, NO_REQ_COND, None, 0)
self.list.append(ptvc_rec)
def Code(self):
@@ -301,7 +305,7 @@ class PTVCBitfield(PTVC):
x = x + "static const ptvc_record ptvc_%s[] = {\n" % (self.Name())
for ptvc_rec in self.list:
x = x + " %s,\n" % (ptvc_rec.Code())
- x = x + " { NULL, 0, NULL, NO_ENDIANNESS, NO_VAR, NO_REPEAT, NO_REQ_COND, NCP_FMT_NONE }\n"
+ x = x + " { NULL, 0, NULL, NULL, NO_ENDIANNESS, NO_VAR, NO_REPEAT, NO_REQ_COND, NCP_FMT_NONE }\n"
x = x + "};\n"
x = x + "static const sub_ptvc_record %s = {\n" % (self.Name(),)
@@ -313,7 +317,7 @@ class PTVCBitfield(PTVC):
class PTVCRecord:
- def __init__(self, field, length, endianness, var, repeat, req_cond):
+ def __init__(self, field, length, endianness, var, repeat, req_cond, info_str, code):
"Constructor"
self.field = field
self.length = length
@@ -321,6 +325,8 @@ class PTVCRecord:
self.var = var
self.repeat = repeat
self.req_cond = req_cond
+ self.req_info_str = info_str
+ self.__code__ = code
def __cmp__(self, other):
"Comparison operator"
@@ -358,6 +364,10 @@ class PTVCRecord:
else:
return self.RegularCode(var, repeat, req_cond)
+ def InfoStrName(self):
+ "Returns a C symbol based on the NCP function code, for the info_str"
+ return "info_str_0x%x" % (self.__code__)
+
def RegularCode(self, var, repeat, req_cond):
"String representation"
endianness = 'ENC_BIG_ENDIAN'
@@ -387,10 +397,14 @@ class PTVCRecord:
if sub_ptvc_name != "NULL":
sub_ptvc_name = "&%s" % (sub_ptvc_name,)
+ if self.req_info_str:
+ req_info_str = "&" + self.InfoStrName() + "_req"
+ else:
+ req_info_str = "NULL"
- return "{ &%s, %s, %s, %s, %s, %s, %s, %s }" % \
+ return "{ &%s, %s, %s, %s, %s, %s, %s, %s, %s }" % \
(self.field.HFName(), length, sub_ptvc_name,
- endianness, var, repeat, req_cond,
+ req_info_str, endianness, var, repeat, req_cond,
self.field.SpecialFmt())
def Offset(self):
@@ -403,7 +417,12 @@ class PTVCRecord:
return self.field
def __repr__(self):
- return "{%s len=%s end=%s var=%s rpt=%s rqc=%s}" % \
+ if self.req_info_str:
+ return "{%s len=%s end=%s var=%s rpt=%s rqc=%s info=%s}" % \
+ (self.field.HFName(), self.length,
+ self.endianness, self.var, self.repeat, self.req_cond, self.req_info_str[1])
+ else:
+ return "{%s len=%s end=%s var=%s rpt=%s rqc=%s}" % \
(self.field.HFName(), self.length,
self.endianness, self.var, self.repeat, self.req_cond)
@@ -495,7 +514,7 @@ class NCP:
self.CheckRecords(size, records, "Request", 8)
else:
self.CheckRecords(size, records, "Request", 7)
- self.ptvc_request = self.MakePTVC(records, "request")
+ self.ptvc_request = self.MakePTVC(records, "request", self.__code__)
if "info_str" in kwargs:
self.req_info_str = kwargs["info_str"]
@@ -504,7 +523,7 @@ class NCP:
self.reply_size = size
self.reply_records = records
self.CheckRecords(size, records, "Reply", 8)
- self.ptvc_reply = self.MakePTVC(records, "reply")
+ self.ptvc_reply = self.MakePTVC(records, "reply", self.__code__)
def CheckRecords(self, size, records, descr, min_hdr_length):
"Simple sanity check"
@@ -544,14 +563,33 @@ class NCP:
sys.exit(1)
- def MakePTVC(self, records, name_suffix):
+ def MakePTVC(self, records, name_suffix, code):
"""Makes a PTVC out of a request or reply record list. Possibly adds
it to the global list of PTVCs (the global list is a UniqueCollection,
so an equivalent PTVC may already be in the global list)."""
name = "%s_%s" % (self.CName(), name_suffix)
- ptvc = PTVC(name, records)
- return ptvc_lists.Add(ptvc)
+ #if any individual record has an info_str, bubble it up to the top
+ #so an info_string_t can be created for it
+ for record in records:
+ if record[REC_INFO_STR]:
+ self.req_info_str = record[REC_INFO_STR]
+
+ ptvc = PTVC(name, records, code)
+
+ #if the record is a duplicate, remove the req_info_str so
+ #that an unused info_string isn't generated
+ remove_info = 0
+ if ptvc_lists.HasMember(ptvc):
+ if 'info' in repr(ptvc):
+ remove_info = 1
+
+ ptvc_test = ptvc_lists.Add(ptvc)
+
+ if remove_info:
+ self.req_info_str = None
+
+ return ptvc_test
def CName(self):
"Returns a C symbol based on the NCP function code"
@@ -563,6 +601,7 @@ class NCP:
def MakeExpert(self, func):
self.expert_func = func
+ expert_hash[func] = func
def Variables(self):
"""Returns a list of variables used in the request and reply records.
@@ -692,8 +731,12 @@ def _rec(start, length, field, endianness, kw):
else:
req_cond = NO_REQ_COND
- return [start, length, field, endianness, var, repeat, req_cond]
+ if "info_str" in kw:
+ req_info_str = kw["info_str"]
+ else:
+ req_info_str = None
+ return [start, length, field, endianness, var, repeat, req_cond, req_info_str]
@@ -801,7 +844,7 @@ class struct(PTVC, Type):
assert 0, "Item %s item not handled." % (item,)
ptvc_rec = PTVCRecord(field, length, endianness, var,
- repeat, req_cond)
+ repeat, req_cond, None, 0)
self.list.append(ptvc_rec)
self.bytes = self.bytes + field.Length()
@@ -814,7 +857,7 @@ class struct(PTVC, Type):
return vars
def ReferenceString(self, var, repeat, req_cond):
- return "{ PTVC_STRUCT, NO_LENGTH, &%s, NO_ENDIANNESS, %s, %s, %s, NCP_FMT_NONE }" % \
+ return "{ PTVC_STRUCT, NO_LENGTH, &%s, NULL, NO_ENDIANNESS, %s, %s, %s, NCP_FMT_NONE }" % \
(self.name, var, repeat, req_cond)
def Code(self):
@@ -823,7 +866,7 @@ class struct(PTVC, Type):
x = x + "static const ptvc_record ptvc_%s[] = {\n" % (self.name,)
for ptvc_rec in self.list:
x = x + " %s,\n" % (ptvc_rec.Code())
- x = x + " { NULL, NO_LENGTH, NULL, NO_ENDIANNESS, NO_VAR, NO_REPEAT, NO_REQ_COND, NCP_FMT_NONE }\n"
+ x = x + " { NULL, NO_LENGTH, NULL, NULL, NO_ENDIANNESS, NO_VAR, NO_REPEAT, NO_REQ_COND, NCP_FMT_NONE }\n"
x = x + "};\n"
x = x + "static const sub_ptvc_record %s = {\n" % (self.name,)
@@ -6599,6 +6642,18 @@ static expert_field ei_ncp_address_type = EI_INIT;
ett_list.sort()
+ # Print info string structures
+ print("/* Info Strings */")
+ for pkt in packets:
+ if pkt.req_info_str:
+ name = pkt.InfoStrName() + "_req"
+ var = pkt.req_info_str[0]
+ print("static const info_string_t %s = {" % (name,))
+ print(" &%s," % (var.HFName(),))
+ print(' "%s",' % (pkt.req_info_str[1],))
+ print(' "%s"' % (pkt.req_info_str[2],))
+ print("};\n")
+
# Print regular PTVC's
print("/* PTVC records. These are re-used to save space. */")
for ptvc in ptvc_lists.Members():
@@ -6654,23 +6709,9 @@ static expert_field ei_ncp_address_type = EI_INIT;
# Functions without length parameter
funcs_without_length = {}
- # Print info string structures
- print("/* Info Strings */")
- for pkt in packets:
- if pkt.req_info_str:
- name = pkt.InfoStrName() + "_req"
- var = pkt.req_info_str[0]
- print("static const info_string_t %s = {" % (name,))
- print(" &%s," % (var.HFName(),))
- print(' "%s",' % (pkt.req_info_str[1],))
- print(' "%s"' % (pkt.req_info_str[2],))
- print("};\n")
-
print("/* Forward declaration of expert info functions defined in ncp2222.inc */")
- for pkt in packets:
- if pkt.expert_func:
- print("static void %s_expert_func(ptvcursor_t *ptvc, packet_info *pinfo, const ncp_record *ncp_rec, gboolean request);" % pkt.expert_func)
-
+ for expert in expert_hash:
+ print("static void %s_expert_func(ptvcursor_t *ptvc, packet_info *pinfo, const ncp_record *ncp_rec, gboolean request);" % expert)
# Print ncp_record packet records
print("#define SUBFUNC_WITH_LENGTH 0x02")
@@ -6727,21 +6768,16 @@ static expert_field ei_ncp_address_type = EI_INIT;
% (pkt.CName(),))
sys.exit(1)
- if pkt.req_info_str:
- req_info_str = "&" + pkt.InfoStrName() + "_req"
- else:
- req_info_str = "NULL"
-
if pkt.expert_func:
expert_func = "&" + pkt.expert_func + "_expert_func"
else:
expert_func = "NULL"
- print(' %s, %s, %s, %s, %s, %s, %s },\n' % \
+ print(' %s, %s, %s, %s, %s, %s },\n' % \
(ptvc_request, ptvc_reply, errors.Name(), req_conds,
- req_cond_size, req_info_str, expert_func))
+ req_cond_size, expert_func))
- print(' { 0, 0, 0, NULL, 0, NULL, NULL, NULL, NULL, NO_REQ_COND_SIZE, NULL, NULL }')
+ print(' { 0, 0, 0, NULL, 0, NULL, NULL, NULL, NULL, NO_REQ_COND_SIZE, NULL }')
print("};\n")
print("/* ncp funcs that require a subfunc */")
@@ -8629,8 +8665,8 @@ def define_ncp2222():
pkt.Request( (11, 138), [
rec( 7, 1, LockFlag ),
rec( 8, 2, TimeoutLimit, ENC_BIG_ENDIAN ),
- rec( 10, (1, 128), LogicalRecordName ),
- ], info_str=(LogicalRecordName, "Log Logical Record: %s", ", %s"))
+ rec( 10, (1, 128), LogicalRecordName, info_str=(LogicalRecordName, "Log Logical Record: %s", ", %s")),
+ ])
pkt.Reply(8)
pkt.CompletionCodes([0x0000, 0x9600, 0xfe0d, 0xff1a])
# 2222/0A, 10
@@ -8644,15 +8680,15 @@ def define_ncp2222():
# 2222/0B, 11
pkt = NCP(0x0B, "Clear Logical Record", 'sync')
pkt.Request( (8, 135), [
- rec( 7, (1, 128), LogicalRecordName ),
- ], info_str=(LogicalRecordName, "Clear Logical Record: %s", ", %s"))
+ rec( 7, (1, 128), LogicalRecordName, info_str=(LogicalRecordName, "Clear Logical Record: %s", ", %s") ),
+ ])
pkt.Reply(8)
pkt.CompletionCodes([0x0000, 0xff1a])
# 2222/0C, 12
pkt = NCP(0x0C, "Release Logical Record", 'sync')
pkt.Request( (8, 135), [
- rec( 7, (1, 128), LogicalRecordName ),
- ], info_str=(LogicalRecordName, "Release Logical Record: %s", ", %s"))
+ rec( 7, (1, 128), LogicalRecordName, info_str=(LogicalRecordName, "Release Logical Record: %s", ", %s") ),
+ ])
pkt.Reply(8)
pkt.CompletionCodes([0x0000, 0xff1a])
# 2222/0D, 13
@@ -8672,8 +8708,8 @@ def define_ncp2222():
# 2222/1100, 17/00
pkt = NCP(0x1100, "Write to Spool File", 'print')
pkt.Request( (11, 16), [
- rec( 10, ( 1, 6 ), Data ),
- ], info_str=(Data, "Write to Spool File: %s", ", %s"))
+ rec( 10, ( 1, 6 ), Data, info_str=(Data, "Write to Spool File: %s", ", %s") ),
+ ])
pkt.Reply(8)
pkt.CompletionCodes([0x0000, 0x0104, 0x8000, 0x8101, 0x8701, 0x8800,
0x8d00, 0x8e00, 0x8f00, 0x9001, 0x9400, 0x9500,
@@ -8709,8 +8745,8 @@ def define_ncp2222():
pkt = NCP(0x1103, "Spool A Disk File", 'print')
pkt.Request( (12, 23), [
rec( 10, 1, DirHandle ),
- rec( 11, (1, 12), Data ),
- ], info_str=(Data, "Spool a Disk File: %s", ", %s"))
+ rec( 11, (1, 12), Data, info_str=(Data, "Spool a Disk File: %s", ", %s") ),
+ ])
pkt.Reply(8)
pkt.CompletionCodes([0x0000, 0x8000, 0x8101, 0x8701, 0x8800, 0x8d00,
0x8e00, 0x8f00, 0x9001, 0x9300, 0x9400, 0x9500,
@@ -8736,8 +8772,8 @@ def define_ncp2222():
pkt = NCP(0x1109, "Create Spool File", 'print')
pkt.Request( (12, 23), [
rec( 10, 1, DirHandle ),
- rec( 11, (1, 12), Data ),
- ], info_str=(Data, "Create Spool File: %s", ", %s"))
+ rec( 11, (1, 12), Data, info_str=(Data, "Create Spool File: %s", ", %s") ),
+ ])
pkt.Reply(8)
pkt.CompletionCodes([0x0000, 0x8000, 0x8101, 0x8400, 0x8701, 0x8d00,
0x8f00, 0x9001, 0x9400, 0x9600, 0x9804, 0x9900,
@@ -8758,8 +8794,8 @@ def define_ncp2222():
# 2222/12, 18
pkt = NCP(0x12, "Get Volume Info with Number", 'file')
pkt.Request( 8, [
- rec( 7, 1, VolumeNumber )
- ],info_str=(VolumeNumber, "Get Volume Information for Volume %d", ", %d"))
+ rec( 7, 1, VolumeNumber,info_str=(VolumeNumber, "Get Volume Information for Volume %d", ", %d") )
+ ])
pkt.Reply( 36, [
rec( 8, 2, SectorsPerCluster, ENC_BIG_ENDIAN ),
rec( 10, 2, TotalVolumeClusters, ENC_BIG_ENDIAN ),
@@ -8798,8 +8834,8 @@ def define_ncp2222():
pkt.Request((13, 70), [
rec( 10, 1, ClientListLen, var="x" ),
rec( 11, 1, TargetClientList, repeat="x" ),
- rec( 12, (1, 58), TargetMessage ),
- ], info_str=(TargetMessage, "Send Broadcast Message: %s", ", %s"))
+ rec( 12, (1, 58), TargetMessage, info_str=(TargetMessage, "Send Broadcast Message: %s", ", %s") ),
+ ])
pkt.Reply(10, [
rec( 8, 1, ClientListLen, var="x" ),
rec( 9, 1, SendStatus, repeat="x" )
@@ -8829,8 +8865,8 @@ def define_ncp2222():
# 2222/1509, 21/09
pkt = NCP(0x1509, "Broadcast To Console", 'message')
pkt.Request((11, 68), [
- rec( 10, (1, 58), TargetMessage )
- ], info_str=(TargetMessage, "Broadcast to Console: %s", ", %s"))
+ rec( 10, (1, 58), TargetMessage, info_str=(TargetMessage, "Broadcast to Console: %s", ", %s") )
+ ])
pkt.Reply(8)
pkt.CompletionCodes([0x0000])
@@ -8839,8 +8875,8 @@ def define_ncp2222():
pkt.Request((17, 74), [
rec( 10, 2, ClientListCount, ENC_LITTLE_ENDIAN, var="x" ),
rec( 12, 4, ClientList, ENC_LITTLE_ENDIAN, repeat="x" ),
- rec( 16, (1, 58), TargetMessage ),
- ], info_str=(TargetMessage, "Send Broadcast Message: %s", ", %s"))
+ rec( 16, (1, 58), TargetMessage, info_str=(TargetMessage, "Send Broadcast Message: %s", ", %s") ),
+ ])
pkt.Reply(14, [
rec( 8, 2, ClientListCount, ENC_LITTLE_ENDIAN, var="x" ),
rec( 10, 4, ClientCompFlag, ENC_LITTLE_ENDIAN, repeat="x" ),
@@ -8871,8 +8907,8 @@ def define_ncp2222():
pkt.Request((13,267), [
rec( 10, 1, TargetDirHandle ),
rec( 11, 1, DirHandle ),
- rec( 12, (1, 255), Path ),
- ], info_str=(Path, "Set Directory Handle to: %s", ", %s"))
+ rec( 12, (1, 255), Path, info_str=(Path, "Set Directory Handle to: %s", ", %s") ),
+ ])
pkt.Reply(8)
pkt.CompletionCodes([0x0000, 0x9600, 0x9804, 0x9b03, 0x9c03, 0xa100, 0xfa00,
0xfd00, 0xff00])
@@ -8881,8 +8917,8 @@ def define_ncp2222():
# 2222/1601, 22/1
pkt = NCP(0x1601, "Get Directory Path", 'file')
pkt.Request(11, [
- rec( 10, 1, DirHandle ),
- ],info_str=(DirHandle, "Get Directory Path for Directory Handle %d", ", %d"))
+ rec( 10, 1, DirHandle,info_str=(DirHandle, "Get Directory Path for Directory Handle %d", ", %d") ),
+ ])
pkt.Reply((9,263), [
rec( 8, (1,255), Path ),
])
@@ -8893,8 +8929,8 @@ def define_ncp2222():
pkt.Request((14,268), [
rec( 10, 1, DirHandle ),
rec( 11, 2, StartingSearchNumber, ENC_BIG_ENDIAN ),
- rec( 13, (1, 255), Path ),
- ], info_str=(Path, "Scan Directory Information: %s", ", %s"))
+ rec( 13, (1, 255), Path, info_str=(Path, "Scan Directory Information: %s", ", %s") ),
+ ])
pkt.Reply(36, [
rec( 8, 16, DirectoryPath ),
rec( 24, 2, CreationDate, ENC_BIG_ENDIAN ),
@@ -8911,8 +8947,8 @@ def define_ncp2222():
pkt = NCP(0x1603, "Get Effective Directory Rights", 'file')
pkt.Request((12,266), [
rec( 10, 1, DirHandle ),
- rec( 11, (1, 255), Path ),
- ], info_str=(Path, "Get Effective Directory Rights: %s", ", %s"))
+ rec( 11, (1, 255), Path, info_str=(Path, "Get Effective Directory Rights: %s", ", %s") ),
+ ])
pkt.Reply(9, [
rec( 8, 1, AccessRightsMask ),
])
@@ -8925,8 +8961,8 @@ def define_ncp2222():
rec( 10, 1, DirHandle ),
rec( 11, 1, RightsGrantMask ),
rec( 12, 1, RightsRevokeMask ),
- rec( 13, (1, 255), Path ),
- ], info_str=(Path, "Modify Maximum Rights Mask: %s", ", %s"))
+ rec( 13, (1, 255), Path, info_str=(Path, "Modify Maximum Rights Mask: %s", ", %s") ),
+ ])
pkt.Reply(8)
pkt.CompletionCodes([0x0000, 0x8c00, 0x9600, 0x9804, 0x9b03, 0x9c03, 0xa100, 0xfa00,
0xfd00, 0xff00])
@@ -8934,8 +8970,8 @@ def define_ncp2222():
# 2222/1605, 22/5
pkt = NCP(0x1605, "Get Volume Number", 'file')
pkt.Request((11, 265), [
- rec( 10, (1,255), VolumeNameLen ),
- ], info_str=(VolumeNameLen, "Get Volume Number for: %s", ", %s"))
+ rec( 10, (1,255), VolumeNameLen, info_str=(VolumeNameLen, "Get Volume Number for: %s", ", %s") ),
+ ])
pkt.Reply(9, [
rec( 8, 1, VolumeNumber ),
])
@@ -8944,8 +8980,8 @@ def define_ncp2222():
# 2222/1606, 22/6
pkt = NCP(0x1606, "Get Volume Name", 'file')
pkt.Request(11, [
- rec( 10, 1, VolumeNumber ),
- ],info_str=(VolumeNumber, "Get Name for Volume %d", ", %d"))
+ rec( 10, 1, VolumeNumber,info_str=(VolumeNumber, "Get Name for Volume %d", ", %d") ),
+ ])
pkt.Reply((9, 263), [
rec( 8, (1,255), VolumeNameLen ),
])
@@ -8956,8 +8992,8 @@ def define_ncp2222():
pkt.Request((13,267), [
rec( 10, 1, DirHandle ),
rec( 11, 1, AccessRightsMask ),
- rec( 12, (1, 255), Path ),
- ], info_str=(Path, "Create Directory: %s", ", %s"))
+ rec( 12, (1, 255), Path, info_str=(Path, "Create Directory: %s", ", %s") ),
+ ])
pkt.Reply(8)
pkt.CompletionCodes([0x0000, 0x8400, 0x9600, 0x9804, 0x9900, 0x9b03, 0x9c03,
0x9e00, 0xa100, 0xfd00, 0xff00])
@@ -8967,8 +9003,8 @@ def define_ncp2222():
pkt.Request((13,267), [
rec( 10, 1, DirHandle ),
rec( 11, 1, Reserved ),
- rec( 12, (1, 255), Path ),
- ], info_str=(Path, "Delete Directory: %s", ", %s"))
+ rec( 12, (1, 255), Path, info_str=(Path, "Delete Directory: %s", ", %s") ),
+ ])
pkt.Reply(8)
pkt.CompletionCodes([0x0000, 0x8a00, 0x9600, 0x9804, 0x9b03, 0x9c03,
0x9f00, 0xa000, 0xa100, 0xfd00, 0xff00])
@@ -8978,8 +9014,8 @@ def define_ncp2222():
pkt.Request((13,267), [
rec( 10, 1, DirHandle ),
rec( 11, 1, TrusteeSetNumber ),
- rec( 12, (1, 255), Path ),
- ], info_str=(Path, "Scan Directory for Trustees: %s", ", %s"))
+ rec( 12, (1, 255), Path, info_str=(Path, "Scan Directory for Trustees: %s", ", %s") ),
+ ])
pkt.Reply(57, [
rec( 8, 16, DirectoryPath ),
rec( 24, 2, CreationDate, ENC_BIG_ENDIAN ),
@@ -9005,8 +9041,8 @@ def define_ncp2222():
rec( 10, 1, DirHandle ),
rec( 11, 4, TrusteeID, ENC_BIG_ENDIAN ),
rec( 15, 1, AccessRightsMask ),
- rec( 16, (1, 255), Path ),
- ], info_str=(Path, "Add Trustee to Directory: %s", ", %s"))
+ rec( 16, (1, 255), Path, info_str=(Path, "Add Trustee to Directory: %s", ", %s") ),
+ ])
pkt.Reply(8)
pkt.CompletionCodes([0x0000, 0x8c00, 0x9600, 0x9804, 0x9900, 0x9b03, 0x9c03,
0xa100, 0xfc06, 0xfd00, 0xff00])
@@ -9017,8 +9053,8 @@ def define_ncp2222():
rec( 10, 1, DirHandle ),
rec( 11, 4, TrusteeID, ENC_BIG_ENDIAN ),
rec( 15, 1, Reserved ),
- rec( 16, (1, 255), Path ),
- ], info_str=(Path, "Delete Trustee from Directory: %s", ", %s"))
+ rec( 16, (1, 255), Path, info_str=(Path, "Delete Trustee from Directory: %s", ", %s") ),
+ ])
pkt.Reply(8)
pkt.CompletionCodes([0x0000, 0x8c00, 0x9600, 0x9804, 0x9900, 0x9b03, 0x9c03,
0xa100, 0xfc06, 0xfd00, 0xfe07, 0xff00])
@@ -9027,9 +9063,9 @@ def define_ncp2222():
pkt = NCP(0x160F, "Rename Directory", 'file')
pkt.Request((13, 521), [
rec( 10, 1, DirHandle ),
- rec( 11, (1, 255), Path ),
+ rec( 11, (1, 255), Path, info_str=(Path, "Rename Directory: %s", ", %s") ),
rec( -1, (1, 255), NewPath ),
- ], info_str=(Path, "Rename Directory: %s", ", %s"))
+ ])
pkt.Reply(8)
pkt.CompletionCodes([0x0000, 0x8b00, 0x9200, 0x9600, 0x9804, 0x9b03, 0x9c03,
0x9e00, 0xa100, 0xef00, 0xfd00, 0xff00])
@@ -9043,8 +9079,8 @@ def define_ncp2222():
# 2222/1611, 22/17
pkt = NCP(0x1611, "Recover Erased File", 'file')
pkt.Request(11, [
- rec( 10, 1, DirHandle ),
- ],info_str=(DirHandle, "Recover Erased File from Directory Handle %d", ", %d"))
+ rec( 10, 1, DirHandle,info_str=(DirHandle, "Recover Erased File from Directory Handle %d", ", %d") ),
+ ])
pkt.Reply(38, [
rec( 8, 15, OldFileName ),
rec( 23, 15, NewFileName ),
@@ -9056,8 +9092,8 @@ def define_ncp2222():
pkt.Request((13, 267), [
rec( 10, 1, DirHandle ),
rec( 11, 1, DirHandleName ),
- rec( 12, (1,255), Path ),
- ], info_str=(Path, "Allocate Permanent Directory Handle: %s", ", %s"))
+ rec( 12, (1,255), Path, info_str=(Path, "Allocate Permanent Directory Handle: %s", ", %s") ),
+ ])
pkt.Reply(10, [
rec( 8, 1, DirHandle ),
rec( 9, 1, AccessRightsMask ),
@@ -9069,8 +9105,8 @@ def define_ncp2222():
pkt.Request((13, 267), [
rec( 10, 1, DirHandle ),
rec( 11, 1, DirHandleName ),
- rec( 12, (1,255), Path ),
- ], info_str=(Path, "Allocate Temporary Directory Handle: %s", ", %s"))
+ rec( 12, (1,255), Path, info_str=(Path, "Allocate Temporary Directory Handle: %s", ", %s") ),
+ ])
pkt.Reply(10, [
rec( 8, 1, DirHandle ),
rec( 9, 1, AccessRightsMask ),
@@ -9080,15 +9116,15 @@ def define_ncp2222():
# 2222/1614, 22/20
pkt = NCP(0x1614, "Deallocate Directory Handle", 'file')
pkt.Request(11, [
- rec( 10, 1, DirHandle ),
- ],info_str=(DirHandle, "Deallocate Directory Handle %d", ", %d"))
+ rec( 10, 1, DirHandle,info_str=(DirHandle, "Deallocate Directory Handle %d", ", %d") ),
+ ])
pkt.Reply(8)
pkt.CompletionCodes([0x0000, 0x9b03])
# 2222/1615, 22/21
pkt = NCP(0x1615, "Get Volume Info with Handle", 'file')
pkt.Request( 11, [
- rec( 10, 1, DirHandle )
- ],info_str=(DirHandle, "Get Volume Information with Handle %d", ", %d"))
+ rec( 10, 1, DirHandle,info_str=(DirHandle, "Get Volume Information with Handle %d", ", %d") )
+ ])
pkt.Reply( 36, [
rec( 8, 2, SectorsPerCluster, ENC_BIG_ENDIAN ),
rec( 10, 2, TotalVolumeClusters, ENC_BIG_ENDIAN ),
@@ -9104,8 +9140,8 @@ def define_ncp2222():
pkt.Request((13, 267), [
rec( 10, 1, DirHandle ),
rec( 11, 1, DirHandleName ),
- rec( 12, (1,255), Path ),
- ], info_str=(Path, "Allocate Special Temporary Directory Handle: %s", ", %s"))
+ rec( 12, (1,255), Path, info_str=(Path, "Allocate Special Temporary Directory Handle: %s", ", %s") ),
+ ])
pkt.Reply(10, [
rec( 8, 1, DirHandle ),
rec( 9, 1, AccessRightsMask ),
@@ -9115,8 +9151,8 @@ def define_ncp2222():
# 2222/1617, 22/23
pkt = NCP(0x1617, "Extract a Base Handle", 'file')
pkt.Request(11, [
- rec( 10, 1, DirHandle ),
- ],info_str=(DirHandle, "Extract a Base Handle from Directory Handle %d", ", %d"))
+ rec( 10, 1, DirHandle, info_str=(DirHandle, "Extract a Base Handle from Directory Handle %d", ", %d") ),
+ ])
pkt.Reply(22, [
rec( 8, 10, ServerNetworkAddress ),
rec( 18, 4, DirHandleLong ),
@@ -9142,8 +9178,8 @@ def define_ncp2222():
rec( 13, 2, CreationTime ),
rec( 15, 4, CreatorID, ENC_BIG_ENDIAN ),
rec( 19, 1, AccessRightsMask ),
- rec( 20, (1,255), Path ),
- ], info_str=(Path, "Set Directory Information: %s", ", %s"))
+ rec( 20, (1,255), Path, info_str=(Path, "Set Directory Information: %s", ", %s") ),
+ ])
pkt.Reply(8)
pkt.CompletionCodes([0x0000, 0x8c00, 0x9600, 0x9804, 0x9b03, 0x9c00, 0xa100,
0xff16])
@@ -9198,9 +9234,9 @@ def define_ncp2222():
pkt.Request((17,525), [
rec( 10, 1, DirHandle ),
rec( 11, 4, SequenceNumber ),
- rec( 15, (1, 255), FileName ),
+ rec( 15, (1, 255), FileName, info_str=(FileName, "Recover File: %s", ", %s") ),
rec( -1, (1, 255), NewFileNameLen ),
- ], info_str=(FileName, "Recover File: %s", ", %s"))
+ ])
pkt.Reply(8)
pkt.CompletionCodes([0x0000, 0x8401, 0x9c03, 0xfe02])
# 2222/161D, 22/29
@@ -9217,8 +9253,8 @@ def define_ncp2222():
rec( 10, 1, DirHandle ),
rec( 11, 1, DOSFileAttributes ),
rec( 12, 4, SequenceNumber ),
- rec( 16, (1, 255), SearchPattern ),
- ], info_str=(SearchPattern, "Scan a Directory: %s", ", %s"))
+ rec( 16, (1, 255), SearchPattern, info_str=(SearchPattern, "Scan a Directory: %s", ", %s") ),
+ ])
pkt.Reply(140, [
rec( 8, 4, SequenceNumber ),
rec( 12, 4, Subdirectory ),
@@ -9344,8 +9380,8 @@ def define_ncp2222():
pkt.Request((13,267), [
rec( 10, 1, DirHandle ),
rec( 11, 1, SequenceByte ),
- rec( 12, (1, 255), Path ),
- ], info_str=(Path, "Scan for Extended Trustees: %s", ", %s"))
+ rec( 12, (1, 255), Path, info_str=(Path, "Scan for Extended Trustees: %s", ", %s") ),
+ ])
pkt.Reply(91, [
rec( 8, 1, NumberOfEntries, var="x" ),
rec( 9, 4, ObjectID ),
@@ -9377,8 +9413,8 @@ def define_ncp2222():
rec( 10, 1, DirHandle ),
rec( 11, 4, ObjectID, ENC_BIG_ENDIAN ),
rec( 15, 2, TrusteeRights ),
- rec( 17, (1, 255), Path ),
- ], info_str=(Path, "Add Extended Trustee: %s", ", %s"))
+ rec( 17, (1, 255), Path, info_str=(Path, "Add Extended Trustee: %s", ", %s") ),
+ ])
pkt.Reply(8)
pkt.CompletionCodes([0x0000, 0x9000])
# 2222/1628, 22/40
@@ -9387,8 +9423,8 @@ def define_ncp2222():
rec( 10, 1, DirHandle ),
rec( 11, 1, SearchAttributes ),
rec( 12, 4, SequenceNumber ),
- rec( 16, (1, 255), SearchPattern ),
- ], info_str=(SearchPattern, "Scan Directory Disk Space: %s", ", %s"))
+ rec( 16, (1, 255), SearchPattern, info_str=(SearchPattern, "Scan Directory Disk Space: %s", ", %s") ),
+ ])
pkt.Reply((148), [
rec( 8, 4, SequenceNumber ),
rec( 12, 4, Subdirectory ),
@@ -9439,8 +9475,8 @@ def define_ncp2222():
pkt = NCP(0x162A, "Get Effective Rights for Directory Entry", 'file')
pkt.Request((12,266), [
rec( 10, 1, DirHandle ),
- rec( 11, (1, 255), Path ),
- ], info_str=(Path, "Get Effective Rights: %s", ", %s"))
+ rec( 11, (1, 255), Path, info_str=(Path, "Get Effective Rights: %s", ", %s") ),
+ ])
pkt.Reply(10, [
rec( 8, 2, AccessRightsMaskWord ),
])
@@ -9451,15 +9487,15 @@ def define_ncp2222():
rec( 10, 1, DirHandle ),
rec( 11, 4, ObjectID, ENC_BIG_ENDIAN ),
rec( 15, 1, Unused ),
- rec( 16, (1, 255), Path ),
- ], info_str=(Path, "Remove Extended Trustee from %s", ", %s"))
+ rec( 16, (1, 255), Path, info_str=(Path, "Remove Extended Trustee from %s", ", %s") ),
+ ])
pkt.Reply(8)
pkt.CompletionCodes([0x0000, 0x9002, 0x9c03, 0xfe0f, 0xff09])
# 2222/162C, 22/44
pkt = NCP(0x162C, "Get Volume and Purge Information", 'file')
pkt.Request( 11, [
- rec( 10, 1, VolumeNumber )
- ],info_str=(VolumeNumber, "Get Volume and Purge Information for Volume %d", ", %d"))
+ rec( 10, 1, VolumeNumber, info_str=(VolumeNumber, "Get Volume and Purge Information for Volume %d", ", %d") )
+ ])
pkt.Reply( (38,53), [
rec( 8, 4, TotalBlocks ),
rec( 12, 4, FreeBlocks ),
@@ -9493,11 +9529,11 @@ def define_ncp2222():
rec( 10, 1, SourceDirHandle ),
rec( 11, 1, SearchAttributes ),
rec( 12, 1, SourcePathComponentCount ),
- rec( 13, (1,255), SourcePath ),
+ rec( 13, (1,255), SourcePath, info_str=(SourcePath, "Rename or Move: %s", ", %s") ),
rec( -1, 1, DestDirHandle ),
rec( -1, 1, DestPathComponentCount ),
rec( -1, (1,255), DestPath ),
- ], info_str=(SourcePath, "Rename or Move: %s", ", %s"))
+ ])
pkt.Reply(8)
pkt.CompletionCodes([0x0000, 0x0102, 0x8701, 0x8b00, 0x8d00, 0x8e00,
0x8f00, 0x9001, 0x9101, 0x9201, 0x9a00, 0x9b03,
@@ -9505,8 +9541,8 @@ def define_ncp2222():
# 2222/162F, 22/47
pkt = NCP(0x162F, "Get Name Space Information", 'file')
pkt.Request( 11, [
- rec( 10, 1, VolumeNumber )
- ],info_str=(VolumeNumber, "Get Name Space Information for Volume %d", ", %d"))
+ rec( 10, 1, VolumeNumber, info_str=(VolumeNumber, "Get Name Space Information for Volume %d", ", %d") )
+ ])
pkt.Reply( (15,523), [
#
# XXX - why does this not display anything at all
@@ -9563,8 +9599,8 @@ def define_ncp2222():
rec( 11, 1, DirHandle ),
rec( 12, 1, AttributesDef ),
rec( 13, 1, OpenRights ),
- rec( 14, (1, 255), FileName ),
- ], info_str=(FileName, "Open Data Stream: %s", ", %s"))
+ rec( 14, (1, 255), FileName, info_str=(FileName, "Open Data Stream: %s", ", %s") ),
+ ])
pkt.Reply( 12, [
rec( 8, 4, CCFileHandle, ENC_BIG_ENDIAN ),
])
@@ -9574,8 +9610,8 @@ def define_ncp2222():
pkt.Request( (16,270), [
rec( 10, 4, ObjectID, ENC_BIG_ENDIAN ),
rec( 14, 1, DirHandle ),
- rec( 15, (1, 255), Path ),
- ], info_str=(Path, "Get Object Effective Rights: %s", ", %s"))
+ rec( 15, (1, 255), Path, info_str=(Path, "Get Object Effective Rights: %s", ", %s") ),
+ ])
pkt.Reply( 10, [
rec( 8, 2, TrusteeRights ),
])
@@ -9583,8 +9619,8 @@ def define_ncp2222():
# 2222/1633, 22/51
pkt = NCP(0x1633, "Get Extended Volume Information", 'file')
pkt.Request( 11, [
- rec( 10, 1, VolumeNumber ),
- ],info_str=(VolumeNumber, "Get Extended Volume Information for Volume %d", ", %d"))
+ rec( 10, 1, VolumeNumber, info_str=(VolumeNumber, "Get Extended Volume Information for Volume %d", ", %d") ),
+ ])
pkt.Reply( (139,266), [
rec( 8, 2, VolInfoReplyLen ),
rec( 10, 128, VolInfoStructure),
@@ -9690,9 +9726,9 @@ def define_ncp2222():
# 2222/1700, 23/00
pkt = NCP(0x1700, "Login User", 'connection')
pkt.Request( (12, 58), [
- rec( 10, (1,16), UserName ),
+ rec( 10, (1,16), UserName, info_str=(UserName, "Login User: %s", ", %s") ),
rec( -1, (1,32), Password ),
- ], info_str=(UserName, "Login User: %s", ", %s"))
+ ])
pkt.Reply(8)
pkt.CompletionCodes([0x0000, 0x9602, 0xc101, 0xc200, 0xc501, 0xd700,
0xd900, 0xda00, 0xdb00, 0xde00, 0xdf00, 0xe800,
@@ -9701,18 +9737,18 @@ def define_ncp2222():
# 2222/1701, 23/01
pkt = NCP(0x1701, "Change User Password", 'bindery')
pkt.Request( (13, 90), [
- rec( 10, (1,16), UserName ),
+ rec( 10, (1,16), UserName, info_str=(UserName, "Change Password for User: %s", ", %s") ),
rec( -1, (1,32), Password ),
rec( -1, (1,32), NewPassword ),
- ], info_str=(UserName, "Change Password for User: %s", ", %s"))
+ ])
pkt.Reply(8)
pkt.CompletionCodes([0x0000, 0x9600, 0xd600, 0xf001, 0xf101, 0xf501,
0xfc06, 0xfe07, 0xff00])
# 2222/1702, 23/02
pkt = NCP(0x1702, "Get User Connection List", 'connection')
pkt.Request( (11, 26), [
- rec( 10, (1,16), UserName ),
- ], info_str=(UserName, "Get User Connection: %s", ", %s"))
+ rec( 10, (1,16), UserName, info_str=(UserName, "Get User Connection: %s", ", %s") ),
+ ])
pkt.Reply( (9, 136), [
rec( 8, (1, 128), ConnectionNumberList ),
])
@@ -9720,8 +9756,8 @@ def define_ncp2222():
# 2222/1703, 23/03
pkt = NCP(0x1703, "Get User Number", 'bindery')
pkt.Request( (11, 26), [
- rec( 10, (1,16), UserName ),
- ], info_str=(UserName, "Get User Number: %s", ", %s"))
+ rec( 10, (1,16), UserName, info_str=(UserName, "Get User Number: %s", ", %s") ),
+ ])
pkt.Reply( 12, [
rec( 8, 4, ObjectID, ENC_BIG_ENDIAN ),
])
@@ -9729,8 +9765,8 @@ def define_ncp2222():
# 2222/1705, 23/05
pkt = NCP(0x1705, "Get Station's Logged Info", 'connection')
pkt.Request( 11, [
- rec( 10, 1, TargetConnectionNumber ),
- ],info_str=(TargetConnectionNumber, "Get Station's Logged Information on Connection %d", ", %d"))
+ rec( 10, 1, TargetConnectionNumber, info_str=(TargetConnectionNumber, "Get Station's Logged Information on Connection %d", ", %d") ),
+ ])
pkt.Reply( 266, [
rec( 8, 16, UserName16 ),
rec( 24, 7, LoginTime ),
@@ -9761,8 +9797,8 @@ def define_ncp2222():
# 2222/170D, 23/13
pkt = NCP(0x170D, "Log Network Message", 'file')
pkt.Request( (11, 68), [
- rec( 10, (1, 58), TargetMessage ),
- ], info_str=(TargetMessage, "Log Network Message: %s", ", %s"))
+ rec( 10, (1, 58), TargetMessage, info_str=(TargetMessage, "Log Network Message: %s", ", %s") ),
+ ])
pkt.Reply(8)
pkt.CompletionCodes([0x0000, 0x8000, 0x8100, 0x8800, 0x8d00, 0x8e00, 0x8f00,
0x9001, 0x9400, 0x9600, 0x9804, 0x9900, 0x9b00, 0xa100,
@@ -9787,8 +9823,8 @@ def define_ncp2222():
rec( 10, 2, LastSearchIndex ),
rec( 12, 1, DirHandle ),
rec( 13, 1, SearchAttributes ),
- rec( 14, (1, 255), FileName ),
- ], info_str=(FileName, "Scan File Information: %s", ", %s"))
+ rec( 14, (1, 255), FileName, info_str=(FileName, "Scan File Information: %s", ", %s") ),
+ ])
pkt.Reply( 102, [
rec( 8, 2, NextSearchIndex ),
rec( 10, 14, FileName14 ),
@@ -9820,8 +9856,8 @@ def define_ncp2222():
rec( 32, 56, Reserved56 ),
rec( 88, 1, DirHandle ),
rec( 89, 1, SearchAttributes ),
- rec( 90, (1, 255), FileName ),
- ], info_str=(FileName, "Set Information for File: %s", ", %s"))
+ rec( 90, (1, 255), FileName, info_str=(FileName, "Set Information for File: %s", ", %s") ),
+ ])
pkt.Reply(8)
pkt.CompletionCodes([0x0000, 0x8800, 0x8c00, 0x8e00, 0x9400, 0x9600, 0x9804,
0x9b03, 0x9c00, 0xa100, 0xa201, 0xfc06, 0xfd00, 0xfe07,
@@ -9871,8 +9907,8 @@ def define_ncp2222():
# 2222/1713, 23/19
pkt = NCP(0x1713, "Get Internet Address", 'connection')
pkt.Request(11, [
- rec( 10, 1, TargetConnectionNumber ),
- ],info_str=(TargetConnectionNumber, "Get Internet Address for Connection %d", ", %d"))
+ rec( 10, 1, TargetConnectionNumber, info_str=(TargetConnectionNumber, "Get Internet Address for Connection %d", ", %d") ),
+ ])
pkt.Reply(20, [
rec( 8, 4, NetworkAddress, ENC_BIG_ENDIAN ),
rec( 12, 6, NetworkNodeAddress ),
@@ -9883,9 +9919,9 @@ def define_ncp2222():
pkt = NCP(0x1714, "Login Object", 'connection')
pkt.Request( (14, 60), [
rec( 10, 2, ObjectType, ENC_BIG_ENDIAN ),
- rec( 12, (1,16), ClientName ),
+ rec( 12, (1,16), ClientName, info_str=(ClientName, "Login Object: %s", ", %s") ),
rec( -1, (1,32), Password ),
- ], info_str=(UserName, "Login Object: %s", ", %s"))
+ ])
pkt.Reply(8)
pkt.CompletionCodes([0x0000, 0x9602, 0xc101, 0xc200, 0xc501, 0xd600, 0xd700,
0xd900, 0xda00, 0xdb00, 0xde00, 0xdf00, 0xe800, 0xec00,
@@ -9895,8 +9931,8 @@ def define_ncp2222():
pkt = NCP(0x1715, "Get Object Connection List", 'connection')
pkt.Request( (13, 28), [
rec( 10, 2, ObjectType, ENC_BIG_ENDIAN ),
- rec( 12, (1,16), ObjectName ),
- ], info_str=(UserName, "Get Object Connection List: %s", ", %s"))
+ rec( 12, (1,16), ObjectName, info_str=(ObjectName, "Get Object Connection List: %s", ", %s") ),
+ ])
pkt.Reply( (9, 136), [
rec( 8, (1, 128), ConnectionNumberList ),
])
@@ -9926,8 +9962,8 @@ def define_ncp2222():
pkt.Request( (21, 68), [
rec( 10, 8, LoginKey ),
rec( 18, 2, ObjectType, ENC_BIG_ENDIAN ),
- rec( 20, (1,48), ObjectName ),
- ], info_str=(ObjectName, "Keyed Object Login: %s", ", %s"))
+ rec( 20, (1,48), ObjectName, info_str=(ObjectName, "Keyed Object Login: %s", ", %s") ),
+ ])
pkt.Reply(8)
pkt.CompletionCodes([0x0000, 0x9602, 0xc101, 0xc200, 0xc500, 0xd904, 0xda00,
0xdb00, 0xdc00, 0xde00, 0xff00])
@@ -9944,8 +9980,8 @@ def define_ncp2222():
pkt.Request( (17,64), [
rec( 10, 4, SearchConnNumber ),
rec( 14, 2, ObjectType, ENC_BIG_ENDIAN ),
- rec( 16, (1,48), ObjectName ),
- ], info_str=(ObjectName, "Get Object Connection List: %s", ", %s"))
+ rec( 16, (1,48), ObjectName, info_str=(ObjectName, "Get Object Connection List: %s", ", %s") ),
+ ])
pkt.Reply( (13), [
rec( 8, 1, ConnListLen, var="x" ),
rec( 9, 4, ConnectionNumber, ENC_LITTLE_ENDIAN, repeat="x" ),
@@ -9995,8 +10031,8 @@ def define_ncp2222():
rec( 14, 2, ObjectType, ENC_BIG_ENDIAN ),
rec( 16, 2, Reserved2 ),
rec( 18, 4, InfoFlags ),
- rec( 22, (1,48), ObjectName ),
- ], info_str=(ObjectName, "Scan Bindery Object: %s", ", %s"))
+ rec( 22, (1,48), ObjectName, info_str=(ObjectName, "Scan Bindery Object: %s", ", %s") ),
+ ])
pkt.Reply(NO_LENGTH_CHECK, [
rec( 8, 4, ObjectInfoReturnCount ),
rec( 12, 4, NextObjectID, ENC_BIG_ENDIAN ),
@@ -10033,8 +10069,8 @@ def define_ncp2222():
rec( 10, 1, ObjectFlags ),
rec( 11, 1, ObjectSecurity ),
rec( 12, 2, ObjectType, ENC_BIG_ENDIAN ),
- rec( 14, (1,48), ObjectName ),
- ], info_str=(ObjectName, "Create Bindery Object: %s", ", %s"))
+ rec( 14, (1,48), ObjectName, info_str=(ObjectName, "Create Bindery Object: %s", ", %s") ),
+ ])
pkt.Reply(8)
pkt.CompletionCodes([0x0000, 0x9600, 0xe700, 0xee00, 0xef00, 0xf101, 0xf501,
0xfc06, 0xfe07, 0xff00])
@@ -10042,8 +10078,8 @@ def define_ncp2222():
pkt = NCP(0x1733, "Delete Bindery Object", 'bindery')
pkt.Request( (13,60), [
rec( 10, 2, ObjectType, ENC_BIG_ENDIAN ),
- rec( 12, (1,48), ObjectName ),
- ], info_str=(ObjectName, "Delete Bindery Object: %s", ", %s"))
+ rec( 12, (1,48), ObjectName, info_str=(ObjectName, "Delete Bindery Object: %s", ", %s") ),
+ ])
pkt.Reply(8)
pkt.CompletionCodes([0x0000, 0x9600, 0xf000, 0xf200, 0xf400, 0xf600, 0xfb00,
0xfc06, 0xfe07, 0xff00])
@@ -10051,17 +10087,17 @@ def define_ncp2222():
pkt = NCP(0x1734, "Rename Bindery Object", 'bindery')
pkt.Request( (14,108), [
rec( 10, 2, ObjectType, ENC_BIG_ENDIAN ),
- rec( 12, (1,48), ObjectName ),
+ rec( 12, (1,48), ObjectName, info_str=(ObjectName, "Rename Bindery Object: %s", ", %s") ),
rec( -1, (1,48), NewObjectName ),
- ], info_str=(ObjectName, "Rename Bindery Object: %s", ", %s"))
+ ])
pkt.Reply(8)
pkt.CompletionCodes([0x0000, 0x9600, 0xee00, 0xf000, 0xf300, 0xfc06, 0xfe07, 0xff00])
# 2222/1735, 23/53
pkt = NCP(0x1735, "Get Bindery Object ID", 'bindery')
pkt.Request((13,60), [
rec( 10, 2, ObjectType, ENC_BIG_ENDIAN ),
- rec( 12, (1,48), ObjectName ),
- ], info_str=(ObjectName, "Get Bindery Object: %s", ", %s"))
+ rec( 12, (1,48), ObjectName, info_str=(ObjectName, "Get Bindery Object: %s", ", %s") ),
+ ])
pkt.Reply(62, [
rec( 8, 4, ObjectID, ENC_LITTLE_ENDIAN ),
rec( 12, 2, ObjectType, ENC_BIG_ENDIAN ),
@@ -10084,8 +10120,8 @@ def define_ncp2222():
pkt.Request((17,64), [
rec( 10, 4, ObjectID, ENC_BIG_ENDIAN ),
rec( 14, 2, ObjectType, ENC_BIG_ENDIAN ),
- rec( 16, (1,48), ObjectName ),
- ], info_str=(ObjectName, "Scan Bindery Object: %s", ", %s"))
+ rec( 16, (1,48), ObjectName, info_str=(ObjectName, "Scan Bindery Object: %s", ", %s") ),
+ ])
pkt.Reply(65, [
rec( 8, 4, ObjectID, ENC_BIG_ENDIAN ),
rec( 12, 2, ObjectType, ENC_BIG_ENDIAN ),
@@ -10101,8 +10137,8 @@ def define_ncp2222():
pkt.Request((14,61), [
rec( 10, 1, ObjectSecurity ),
rec( 11, 2, ObjectType, ENC_BIG_ENDIAN ),
- rec( 13, (1,48), ObjectName ),
- ], info_str=(ObjectName, "Change Bindery Object Security: %s", ", %s"))
+ rec( 13, (1,48), ObjectName, info_str=(ObjectName, "Change Bindery Object Security: %s", ", %s") ),
+ ])
pkt.Reply(8)
pkt.CompletionCodes([0x0000, 0x9600, 0xf000, 0xf101, 0xf501, 0xfc02, 0xfe01, 0xff00])
# 2222/1739, 23/57
@@ -10112,8 +10148,8 @@ def define_ncp2222():
rec( 12, (1,48), ObjectName ),
rec( -1, 1, PropertyType ),
rec( -1, 1, ObjectSecurity ),
- rec( -1, (1,16), PropertyName ),
- ], info_str=(PropertyName, "Create Property: %s", ", %s"))
+ rec( -1, (1,16), PropertyName, info_str=(PropertyName, "Create Property: %s", ", %s") ),
+ ])
pkt.Reply(8)
pkt.CompletionCodes([0x0000, 0x9600, 0xed00, 0xef00, 0xf000, 0xf101,
0xf200, 0xf600, 0xf700, 0xfb00, 0xfc02, 0xfe01,
@@ -10123,8 +10159,8 @@ def define_ncp2222():
pkt.Request((14,76), [
rec( 10, 2, ObjectType, ENC_BIG_ENDIAN ),
rec( 12, (1,48), ObjectName ),
- rec( -1, (1,16), PropertyName ),
- ], info_str=(PropertyName, "Delete Property: %s", ", %s"))
+ rec( -1, (1,16), PropertyName, info_str=(PropertyName, "Delete Property: %s", ", %s") ),
+ ])
pkt.Reply(8)
pkt.CompletionCodes([0x0000, 0x9600, 0xf000, 0xf101, 0xf600, 0xfb00, 0xfc02,
0xfe01, 0xff00])
@@ -10134,8 +10170,8 @@ def define_ncp2222():
rec( 10, 2, ObjectType, ENC_BIG_ENDIAN ),
rec( 12, (1,48), ObjectName ),
rec( -1, 1, ObjectSecurity ),
- rec( -1, (1,16), PropertyName ),
- ], info_str=(PropertyName, "Change Property Security: %s", ", %s"))
+ rec( -1, (1,16), PropertyName, info_str=(PropertyName, "Change Property Security: %s", ", %s") ),
+ ])
pkt.Reply(8)
pkt.CompletionCodes([0x0000, 0x9600, 0xf000, 0xf101, 0xf200, 0xf600, 0xfb00,
0xfc02, 0xfe01, 0xff00])
@@ -10145,8 +10181,8 @@ def define_ncp2222():
rec( 10, 2, ObjectType, ENC_BIG_ENDIAN ),
rec( 12, (1,48), ObjectName ),
rec( -1, 4, LastInstance, ENC_BIG_ENDIAN ),
- rec( -1, (1,16), PropertyName ),
- ], info_str=(PropertyName, "Scan Property: %s", ", %s"))
+ rec( -1, (1,16), PropertyName, info_str=(PropertyName, "Scan Property: %s", ", %s") ),
+ ])
pkt.Reply( 32, [
rec( 8, 16, PropertyName16 ),
rec( 24, 1, ObjectFlags ),
@@ -10163,8 +10199,8 @@ def define_ncp2222():
rec( 10, 2, ObjectType, ENC_BIG_ENDIAN ),
rec( 12, (1,48), ObjectName ),
rec( -1, 1, PropertySegment ),
- rec( -1, (1,16), PropertyName ),
- ], info_str=(PropertyName, "Read Property Value: %s", ", %s"))
+ rec( -1, (1,16), PropertyName, info_str=(PropertyName, "Read Property Value: %s", ", %s") ),
+ ])
pkt.Reply(138, [
rec( 8, 128, PropertyData ),
rec( 136, 1, PropertyHasMoreSegments ),
@@ -10180,14 +10216,14 @@ def define_ncp2222():
rec( 12, (1,48), ObjectName ),
rec( -1, 1, PropertySegment ),
rec( -1, 1, MoreFlag ),
- rec( -1, (1,16), PropertyName ),
+ rec( -1, (1,16), PropertyName, info_str=(PropertyName, "Write Property Value: %s", ", %s") ),
#
# XXX - don't show this if MoreFlag isn't set?
# In at least some packages where it's not set,
# PropertyValue appears to be garbage.
#
rec( -1, 128, PropertyValue ),
- ], info_str=(PropertyName, "Write Property Value: %s", ", %s"))
+ ])
pkt.Reply(8)
pkt.CompletionCodes([0x0000, 0x9600, 0xe800, 0xec01, 0xf000, 0xf800,
0xfb02, 0xfc03, 0xfe01, 0xff00 ])
@@ -10195,9 +10231,9 @@ def define_ncp2222():
pkt = NCP(0x173F, "Verify Bindery Object Password", 'bindery')
pkt.Request((14,92), [
rec( 10, 2, ObjectType, ENC_BIG_ENDIAN ),
- rec( 12, (1,48), ObjectName ),
+ rec( 12, (1,48), ObjectName, info_str=(ObjectName, "Verify Bindery Object Password: %s", ", %s") ),
rec( -1, (1,32), Password ),
- ], info_str=(ObjectName, "Verify Bindery Object Password: %s", ", %s"))
+ ])
pkt.Reply(8)
pkt.CompletionCodes([0x0000, 0x9600, 0xe800, 0xec01, 0xf000, 0xf101,
0xfb02, 0xfc03, 0xfe01, 0xff00 ])
@@ -10205,10 +10241,10 @@ def define_ncp2222():
pkt = NCP(0x1740, "Change Bindery Object Password", 'bindery')
pkt.Request((15,124), [
rec( 10, 2, ObjectType, ENC_BIG_ENDIAN ),
- rec( 12, (1,48), ObjectName ),
+ rec( 12, (1,48), ObjectName, info_str=(ObjectName, "Change Bindery Object Password: %s", ", %s") ),
rec( -1, (1,32), Password ),
rec( -1, (1,32), NewPassword ),
- ], info_str=(ObjectName, "Change Bindery Object Password: %s", ", %s"))
+ ])
pkt.Reply(8)
pkt.CompletionCodes([0x0000, 0x9600, 0xc501, 0xd701, 0xe800, 0xec01, 0xf001,
0xf100, 0xf800, 0xfb02, 0xfc03, 0xfe01, 0xff00])
@@ -10219,8 +10255,8 @@ def define_ncp2222():
rec( 12, (1,48), ObjectName ),
rec( -1, (1,16), PropertyName ),
rec( -1, 2, MemberType, ENC_BIG_ENDIAN ),
- rec( -1, (1,48), MemberName ),
- ], info_str=(MemberName, "Add Bindery Object to Set: %s", ", %s"))
+ rec( -1, (1,48), MemberName, info_str=(MemberName, "Add Bindery Object to Set: %s", ", %s") ),
+ ])
pkt.Reply(8)
pkt.CompletionCodes([0x0000, 0x9600, 0xe800, 0xe900, 0xea00, 0xeb00,
0xec01, 0xf000, 0xf800, 0xfb02, 0xfc03, 0xfe01,
@@ -10232,8 +10268,8 @@ def define_ncp2222():
rec( 12, (1,48), ObjectName ),
rec( -1, (1,16), PropertyName ),
rec( -1, 2, MemberType, ENC_BIG_ENDIAN ),
- rec( -1, (1,48), MemberName ),
- ], info_str=(MemberName, "Delete Bindery Object from Set: %s", ", %s"))
+ rec( -1, (1,48), MemberName, info_str=(MemberName, "Delete Bindery Object from Set: %s", ", %s") ),
+ ])
pkt.Reply(8)
pkt.CompletionCodes([0x0000, 0x9600, 0xeb00, 0xf000, 0xf800, 0xfb02,
0xfc03, 0xfe01, 0xff00])
@@ -10244,8 +10280,8 @@ def define_ncp2222():
rec( 12, (1,48), ObjectName ),
rec( -1, (1,16), PropertyName ),
rec( -1, 2, MemberType, ENC_BIG_ENDIAN ),
- rec( -1, (1,48), MemberName ),
- ], info_str=(MemberName, "Is Bindery Object in Set: %s", ", %s"))
+ rec( -1, (1,48), MemberName, info_str=(MemberName, "Is Bindery Object in Set: %s", ", %s") ),
+ ])
pkt.Reply(8)
pkt.CompletionCodes([0x0000, 0x9600, 0xea00, 0xeb00, 0xec01, 0xf000,
0xfb02, 0xfc03, 0xfe01, 0xff00])
@@ -10301,8 +10337,8 @@ def define_ncp2222():
pkt.Request((21,68), [
rec( 10, 8, LoginKey ),
rec( 18, 2, ObjectType, ENC_BIG_ENDIAN ),
- rec( 20, (1,48), ObjectName ),
- ], info_str=(ObjectName, "Keyed Verify Password: %s", ", %s"))
+ rec( 20, (1,48), ObjectName, info_str=(ObjectName, "Keyed Verify Password: %s", ", %s") ),
+ ])
pkt.Reply(8)
pkt.CompletionCodes([0x0000, 0xc500, 0xfe01, 0xff0c])
# 2222/174B, 23/75
@@ -10310,9 +10346,9 @@ def define_ncp2222():
pkt.Request((22,100), [
rec( 10, 8, LoginKey ),
rec( 18, 2, ObjectType, ENC_BIG_ENDIAN ),
- rec( 20, (1,48), ObjectName ),
+ rec( 20, (1,48), ObjectName, info_str=(ObjectName, "Keyed Change Password: %s", ", %s") ),
rec( -1, (1,32), Password ),
- ], info_str=(ObjectName, "Keyed Change Password: %s", ", %s"))
+ ])
pkt.Reply(8)
pkt.CompletionCodes([0x0000, 0xc500, 0xfe01, 0xff0c])
# 2222/174C, 23/76
@@ -10320,9 +10356,9 @@ def define_ncp2222():
pkt.Request((18,80), [
rec( 10, 4, LastSeen, ENC_BIG_ENDIAN ),
rec( 14, 2, ObjectType, ENC_BIG_ENDIAN ),
- rec( 16, (1,48), ObjectName ),
+ rec( 16, (1,48), ObjectName, info_str=(ObjectName, "List Relations of an Object: %s", ", %s") ),
rec( -1, (1,16), PropertyName ),
- ], info_str=(ObjectName, "List Relations of an Object: %s", ", %s"))
+ ])
pkt.Reply(14, [
rec( 8, 2, RelationsCount, ENC_BIG_ENDIAN, var="x" ),
rec( 10, 4, ObjectID, ENC_BIG_ENDIAN, repeat="x" ),
@@ -10332,10 +10368,10 @@ def define_ncp2222():
pkt = NCP(0x1764, "Create Queue", 'qms')
pkt.Request((15,316), [
rec( 10, 2, QueueType, ENC_BIG_ENDIAN ),
- rec( 12, (1,48), QueueName ),
+ rec( 12, (1,48), QueueName, info_str=(QueueName, "Create Queue: %s", ", %s") ),
rec( -1, 1, PathBase ),
rec( -1, (1,255), Path ),
- ], info_str=(QueueName, "Create Queue: %s", ", %s"))
+ ])
pkt.Reply(12, [
rec( 8, 4, QueueID ),
])
@@ -10806,8 +10842,8 @@ def define_ncp2222():
pkt = NCP(0x1796, "Get Current Account Status", 'accounting')
pkt.Request((13,60), [
rec( 10, 2, ObjectType, ENC_BIG_ENDIAN ),
- rec( 12, (1,48), ObjectName ),
- ], info_str=(ObjectName, "Get Current Account Status: %s", ", %s"))
+ rec( 12, (1,48), ObjectName, info_str=(ObjectName, "Get Current Account Status: %s", ", %s") ),
+ ])
pkt.Reply(264, [
rec( 8, 4, AccountBalance, ENC_BIG_ENDIAN ),
rec( 12, 4, CreditLimit, ENC_BIG_ENDIAN ),
@@ -10855,9 +10891,9 @@ def define_ncp2222():
rec( 16, 4, HoldCancelAmount, ENC_BIG_ENDIAN ),
rec( 20, 2, ObjectType, ENC_BIG_ENDIAN ),
rec( 22, 2, CommentType, ENC_BIG_ENDIAN ),
- rec( 24, (1,48), ObjectName ),
+ rec( 24, (1,48), ObjectName, info_str=(ObjectName, "Submit Account Charge: %s", ", %s") ),
rec( -1, (1,255), Comment ),
- ], info_str=(ObjectName, "Submit Account Charge: %s", ", %s"))
+ ])
pkt.Reply(8)
pkt.CompletionCodes([0x0000, 0x0102, 0x8800, 0x9400, 0x9600, 0xa201,
0xc000, 0xc101, 0xc200, 0xc400, 0xe800, 0xea00,
@@ -10867,8 +10903,8 @@ def define_ncp2222():
pkt.Request((17,64), [
rec( 10, 4, HoldCancelAmount, ENC_BIG_ENDIAN ),
rec( 14, 2, ObjectType, ENC_BIG_ENDIAN ),
- rec( 16, (1,48), ObjectName ),
- ], info_str=(ObjectName, "Submit Account Hold: %s", ", %s"))
+ rec( 16, (1,48), ObjectName, info_str=(ObjectName, "Submit Account Hold: %s", ", %s") ),
+ ])
pkt.Reply(8)
pkt.CompletionCodes([0x0000, 0x0102, 0x8800, 0x9400, 0x9600, 0xa201,
0xc000, 0xc101, 0xc200, 0xc400, 0xe800, 0xea00,
@@ -10879,9 +10915,9 @@ def define_ncp2222():
rec( 10, 2, ServiceType, ENC_BIG_ENDIAN ),
rec( 12, 2, ObjectType, ENC_BIG_ENDIAN ),
rec( 14, 2, CommentType, ENC_BIG_ENDIAN ),
- rec( 16, (1,48), ObjectName ),
+ rec( 16, (1,48), ObjectName, info_str=(ObjectName, "Submit Account Note: %s", ", %s") ),
rec( -1, (1,255), Comment ),
- ], info_str=(ObjectName, "Submit Account Note: %s", ", %s"))
+ ])
pkt.Reply(8)
pkt.CompletionCodes([0x0000, 0x0102, 0x9600, 0xc000, 0xc101, 0xc400,
0xe800, 0xea00, 0xeb00, 0xec00, 0xf000, 0xfc06,
@@ -10942,15 +10978,15 @@ def define_ncp2222():
pkt.Request((13,267), [
rec( 10, 1, NumberOfStations, var="x" ),
rec( 11, 1, StationList, repeat="x" ),
- rec( 12, (1, 255), TargetMessage ),
- ], info_str=(TargetMessage, "Send Console Broadcast: %s", ", %s"))
+ rec( 12, (1, 255), TargetMessage, info_str=(TargetMessage, "Send Console Broadcast: %s", ", %s") ),
+ ])
pkt.Reply(8)
pkt.CompletionCodes([0x0000, 0xc601, 0xfd00])
# 2222/17D2, 23/210
pkt = NCP(0x17D2, "Clear Connection Number", 'fileserver')
pkt.Request(11, [
- rec( 10, 1, ConnectionNumber ),
- ],info_str=(ConnectionNumber, "Clear Connection Number %d", ", %d"))
+ rec( 10, 1, ConnectionNumber, info_str=(ConnectionNumber, "Clear Connection Number %d", ", %d") ),
+ ])
pkt.Reply(8)
pkt.CompletionCodes([0x0000, 0xc601, 0xfd00])
# 2222/17D3, 23/211
@@ -11123,8 +11159,8 @@ def define_ncp2222():
pkt.Request((14,268), [
rec( 10, 2, LastRecordSeen, ENC_BIG_ENDIAN ),
rec( 12, 1, DirHandle ),
- rec( 13, (1,255), Path ),
- ], info_str=(Path, "Get Connection Using File: %s", ", %s"))
+ rec( 13, (1,255), Path, info_str=(Path, "Get Connection Using File: %s", ", %s") ),
+ ])
pkt.Reply(30, [
rec( 8, 2, UseCount, ENC_BIG_ENDIAN ),
rec( 10, 2, OpenCount, ENC_BIG_ENDIAN ),
@@ -11145,8 +11181,8 @@ def define_ncp2222():
rec( 12, 2, LastRecordSeen, ENC_BIG_ENDIAN ),
rec( 14, 1, VolumeNumber ),
rec( 15, 2, DirectoryID ),
- rec( 17, 14, FileName14 ),
- ], info_str=(FileName14, "Get Physical Record Locks by Connection and File: %s", ", %s"))
+ rec( 17, 14, FileName14, info_str=(FileName14, "Get Physical Record Locks by Connection and File: %s", ", %s") ),
+ ])
pkt.Reply(22, [
rec( 8, 2, NextRequestRecord ),
rec( 10, 1, NumberOfLocks, var="x" ),
@@ -11159,8 +11195,8 @@ def define_ncp2222():
pkt.Request((14,268), [
rec( 10, 2, TargetConnectionNumber ),
rec( 12, 1, DirHandle ),
- rec( 13, (1,255), Path ),
- ], info_str=(Path, "Get Physical Record Locks by File: %s", ", %s"))
+ rec( 13, (1,255), Path, info_str=(Path, "Get Physical Record Locks by File: %s", ", %s") ),
+ ])
pkt.Reply(28, [
rec( 8, 2, NextRequestRecord ),
rec( 10, 1, NumberOfLocks, var="x" ),
@@ -11184,8 +11220,8 @@ def define_ncp2222():
pkt = NCP(0x17E0, "Get Logical Record Information", 'fileserver')
pkt.Request((13,267), [
rec( 10, 2, LastRecordSeen ),
- rec( 12, (1,255), LogicalRecordName ),
- ], info_str=(LogicalRecordName, "Get Logical Record Information: %s", ", %s"))
+ rec( 12, (1,255), LogicalRecordName, info_str=(LogicalRecordName, "Get Logical Record Information: %s", ", %s") ),
+ ])
pkt.Reply(20, [
rec( 8, 2, UseCount, ENC_BIG_ENDIAN ),
rec( 10, 2, ShareableLockCount, ENC_BIG_ENDIAN ),
@@ -11211,8 +11247,8 @@ def define_ncp2222():
pkt = NCP(0x17E2, "Get Semaphore Information", 'fileserver')
pkt.Request((13,267), [
rec( 10, 2, LastRecordSeen ),
- rec( 12, (1,255), SemaphoreName ),
- ], info_str=(SemaphoreName, "Get Semaphore Information: %s", ", %s"))
+ rec( 12, (1,255), SemaphoreName, info_str=(SemaphoreName, "Get Semaphore Information: %s", ", %s") ),
+ ])
pkt.Reply(17, [
rec( 8, 2, NextRequestRecord, ENC_BIG_ENDIAN ),
rec( 10, 2, OpenCount, ENC_BIG_ENDIAN ),
@@ -11313,8 +11349,8 @@ def define_ncp2222():
# 2222/17E9, 23/233
pkt = NCP(0x17E9, "Get Volume Information", 'fileserver')
pkt.Request(11, [
- rec( 10, 1, VolumeNumber ),
- ],info_str=(VolumeNumber, "Get Information on Volume %d", ", %d"))
+ rec( 10, 1, VolumeNumber, info_str=(VolumeNumber, "Get Information on Volume %d", ", %d") ),
+ ])
pkt.Reply(48, [
rec( 8, 4, SystemIntervalMarker, ENC_BIG_ENDIAN ),
rec( 12, 1, VolumeNumber ),
@@ -11450,8 +11486,8 @@ def define_ncp2222():
pkt = NCP(0x17F2, "Get Semaphore Information", 'fileserver')
pkt.Request((13,267), [
rec( 10, 2, LastRecordSeen ),
- rec( 12, (1,255), SemaphoreName ),
- ], info_str=(SemaphoreName, "Get Semaphore Information: %s", ", %s"))
+ rec( 12, (1,255), SemaphoreName, info_str=(SemaphoreName, "Get Semaphore Information: %s", ", %s") ),
+ ])
pkt.Reply(20, [
rec( 8, 2, NextRequestRecord ),
rec( 10, 2, OpenCount ),
@@ -11475,8 +11511,8 @@ def define_ncp2222():
pkt = NCP(0x17F4, "Convert Path to Dir Entry", 'file')
pkt.Request((12,266), [
rec( 10, 1, DirHandle ),
- rec( 11, (1,255), Path ),
- ], info_str=(Path, "Convert Path to Directory Entry: %s", ", %s"))
+ rec( 11, (1,255), Path, info_str=(Path, "Convert Path to Directory Entry: %s", ", %s") ),
+ ])
pkt.Reply(13, [
rec( 8, 1, VolumeNumber ),
rec( 9, 4, DirectoryNumber ),
@@ -11487,8 +11523,8 @@ def define_ncp2222():
pkt.Request((16, 270), [
rec( 10, 1, NumberOfStations, var="x" ),
rec( 11, 4, StationList, repeat="x" ),
- rec( 15, (1, 255), TargetMessage ),
- ], info_str=(TargetMessage, "Send Console Broadcast: %s", ", %s"))
+ rec( 15, (1, 255), TargetMessage, info_str=(TargetMessage, "Send Console Broadcast: %s", ", %s") ),
+ ])
pkt.Reply(8)
pkt.CompletionCodes([0x0000, 0xc601, 0xfd00])
# 2222/17FE, 23/254
@@ -11514,9 +11550,9 @@ def define_ncp2222():
rec( 7, 1, LockFlag ),
rec( 8, 6, FileHandle ),
rec( 14, 4, LockAreasStartOffset, ENC_BIG_ENDIAN ),
- rec( 18, 4, LockAreaLen, ENC_BIG_ENDIAN ),
+ rec( 18, 4, LockAreaLen, ENC_BIG_ENDIAN, info_str=(LockAreaLen, "Lock Record - Length of %d", "%d") ),
rec( 22, 2, LockTimeout ),
- ], info_str=(LockAreaLen, "Lock Record - Length of %d", "%d"))
+ ])
pkt.Reply(8)
pkt.CompletionCodes([0x0000, 0x8800, 0x9600, 0xfd02, 0xfe04, 0xff01])
# 2222/1B, 27
@@ -11533,8 +11569,8 @@ def define_ncp2222():
rec( 7, 1, Reserved ),
rec( 8, 6, FileHandle ),
rec( 14, 4, LockAreasStartOffset ),
- rec( 18, 4, LockAreaLen ),
- ], info_str=(LockAreaLen, "Release Lock Record - Length of %d", "%d"))
+ rec( 18, 4, LockAreaLen, info_str=(LockAreaLen, "Release Lock Record - Length of %d", "%d") ),
+ ])
pkt.Reply(8)
pkt.CompletionCodes([0x0000, 0x8800, 0x9600, 0xfd02, 0xfe04, 0xff03])
# 2222/1D, 29
@@ -11550,8 +11586,8 @@ def define_ncp2222():
rec( 7, 1, Reserved ),
rec( 8, 6, FileHandle ),
rec( 14, 4, LockAreasStartOffset, ENC_BIG_ENDIAN ),
- rec( 18, 4, LockAreaLen, ENC_BIG_ENDIAN ),
- ], info_str=(LockAreaLen, "Clear Lock Record - Length of %d", "%d"))
+ rec( 18, 4, LockAreaLen, ENC_BIG_ENDIAN, info_str=(LockAreaLen, "Clear Lock Record - Length of %d", "%d") ),
+ ])
pkt.Reply(8)
pkt.CompletionCodes([0x0000, 0x8000, 0x8800, 0x9600, 0xfd02, 0xfe04, 0xff03])
# 2222/1F, 31
@@ -11565,8 +11601,8 @@ def define_ncp2222():
pkt = NCP(0x2000, "Open Semaphore", 'sync', has_length=0)
pkt.Request((10,264), [
rec( 8, 1, InitialSemaphoreValue ),
- rec( 9, (1,255), SemaphoreName ),
- ], info_str=(SemaphoreName, "Open Semaphore: %s", ", %s"))
+ rec( 9, (1,255), SemaphoreName, info_str=(SemaphoreName, "Open Semaphore: %s", ", %s") ),
+ ])
pkt.Reply(13, [
rec( 8, 4, SemaphoreHandle, ENC_BIG_ENDIAN ),
rec( 12, 1, SemaphoreOpenCount ),
@@ -11701,8 +11737,8 @@ def define_ncp2222():
rec( 28, 2, VertLocation ),
rec( 30, 2, FileDirWindow ),
rec( 32, 16, Reserved16 ),
- rec( 48, (1,255), Path ),
- ], info_str=(Path, "AFP Create Directory: %s", ", %s"))
+ rec( 48, (1,255), Path, info_str=(Path, "AFP Create Directory: %s", ", %s") ),
+ ])
pkt.Reply(12, [
rec( 8, 4, NewDirectoryID ),
])
@@ -11721,8 +11757,8 @@ def define_ncp2222():
rec( 28, 2, VertLocation, ENC_BIG_ENDIAN ),
rec( 30, 2, FileDirWindow, ENC_BIG_ENDIAN ),
rec( 32, 16, Reserved16 ),
- rec( 48, (1,255), Path ),
- ], info_str=(Path, "AFP Create File: %s", ", %s"))
+ rec( 48, (1,255), Path, info_str=(Path, "AFP Create File: %s", ", %s") ),
+ ])
pkt.Reply(12, [
rec( 8, 4, NewDirectoryID ),
])
@@ -11735,8 +11771,8 @@ def define_ncp2222():
pkt.Request((16,270), [
rec( 10, 1, VolumeNumber ),
rec( 11, 4, BaseDirectoryID ),
- rec( 15, (1,255), Path ),
- ], info_str=(Path, "AFP Delete: %s", ", %s"))
+ rec( 15, (1,255), Path, info_str=(Path, "AFP Delete: %s", ", %s") ),
+ ])
pkt.Reply(8)
pkt.CompletionCodes([0x0000, 0x8301, 0x8800, 0x8a00, 0x8d00, 0x8e00, 0x8f00,
0x9000, 0x9300, 0x9600, 0x9804, 0x9b03, 0x9c03, 0x9e02,
@@ -11746,8 +11782,8 @@ def define_ncp2222():
pkt.Request((16,270), [
rec( 10, 1, VolumeNumber ),
rec( 11, 4, BaseDirectoryID ),
- rec( 15, (1,255), Path ),
- ], info_str=(Path, "AFP Get Entry from Name: %s", ", %s"))
+ rec( 15, (1,255), Path, info_str=(Path, "AFP Get Entry from Name: %s", ", %s") ),
+ ])
pkt.Reply(12, [
rec( 8, 4, TargetEntryID, ENC_BIG_ENDIAN ),
])
@@ -11759,8 +11795,8 @@ def define_ncp2222():
rec( 10, 1, VolumeNumber ),
rec( 11, 4, BaseDirectoryID ),
rec( 15, 2, RequestBitMap, ENC_BIG_ENDIAN ),
- rec( 17, (1,255), Path ),
- ], info_str=(Path, "AFP Get File Information: %s", ", %s"))
+ rec( 17, (1,255), Path, info_str=(Path, "AFP Get File Information: %s", ", %s") ),
+ ])
pkt.Reply(121, [
rec( 8, 4, AFPEntryID, ENC_BIG_ENDIAN ),
rec( 12, 4, ParentID, ENC_BIG_ENDIAN ),
@@ -11805,9 +11841,9 @@ def define_ncp2222():
rec( 10, 1, VolumeNumber ),
rec( 11, 4, MacSourceBaseID, ENC_BIG_ENDIAN ),
rec( 15, 4, MacDestinationBaseID, ENC_BIG_ENDIAN ),
- rec( 19, (1,255), Path ),
+ rec( 19, (1,255), Path, info_str=(Path, "AFP Rename: %s", ", %s") ),
rec( -1, (1,255), NewFileNameLen ),
- ], info_str=(Path, "AFP Rename: %s", ", %s"))
+ ])
pkt.Reply(8)
pkt.CompletionCodes([0x0000, 0x8301, 0x8401, 0x8800, 0x8b00, 0x8e00,
0x9001, 0x9201, 0x9300, 0x9600, 0x9804, 0x9900,
@@ -11819,8 +11855,8 @@ def define_ncp2222():
rec( 11, 4, MacBaseDirectoryID ),
rec( 15, 1, ForkIndicator ),
rec( 16, 1, AccessMode ),
- rec( 17, (1,255), Path ),
- ], info_str=(Path, "AFP Open File Fork: %s", ", %s"))
+ rec( 17, (1,255), Path, info_str=(Path, "AFP Open File Fork: %s", ", %s") ),
+ ])
pkt.Reply(22, [
rec( 8, 4, AFPEntryID, ENC_BIG_ENDIAN ),
rec( 12, 4, DataForkLen, ENC_BIG_ENDIAN ),
@@ -11849,8 +11885,8 @@ def define_ncp2222():
rec( 43, 2, VertLocation ),
rec( 45, 2, FileDirWindow ),
rec( 47, 16, Reserved16 ),
- rec( 63, (1,255), Path ),
- ], info_str=(Path, "AFP Set File Information: %s", ", %s"))
+ rec( 63, (1,255), Path, info_str=(Path, "AFP Set File Information: %s", ", %s") ),
+ ])
pkt.Reply(8)
pkt.CompletionCodes([0x0000, 0x0104, 0x8301, 0x8800, 0x9300, 0x9400,
0x9500, 0x9600, 0x9804, 0x9c03, 0xa100, 0xa201,
@@ -11864,8 +11900,8 @@ def define_ncp2222():
rec( 19, 2, DesiredResponseCount, ENC_BIG_ENDIAN ),
rec( 21, 2, SearchBitMap, ENC_BIG_ENDIAN ),
rec( 23, 2, RequestBitMap, ENC_BIG_ENDIAN ),
- rec( 25, (1,255), Path ),
- ], info_str=(Path, "AFP Scan File Information: %s", ", %s"))
+ rec( 25, (1,255), Path, info_str=(Path, "AFP Scan File Information: %s", ", %s") ),
+ ])
pkt.Reply(123, [
rec( 8, 2, ActualResponseCount, ENC_BIG_ENDIAN, var="x" ),
rec( 10, 113, AFP10Struct, repeat="x" ),
@@ -11877,8 +11913,8 @@ def define_ncp2222():
pkt.Request((16,270), [
rec( 10, 1, VolumeNumber ),
rec( 11, 4, MacBaseDirectoryID ),
- rec( 15, (1,255), Path ),
- ], info_str=(Path, "AFP Allocate Temporary Directory Handle: %s", ", %s"))
+ rec( 15, (1,255), Path, info_str=(Path, "AFP Allocate Temporary Directory Handle: %s", ", %s") ),
+ ])
pkt.Reply(10, [
rec( 8, 1, DirHandle ),
rec( 9, 1, AccessRightsMask ),
@@ -11890,8 +11926,8 @@ def define_ncp2222():
pkt = NCP(0x230C, "AFP Get Entry ID From Path Name", 'afp')
pkt.Request((12,266), [
rec( 10, 1, DirHandle ),
- rec( 11, (1,255), Path ),
- ], info_str=(Path, "AFP Get Entry ID from Path Name: %s", ", %s"))
+ rec( 11, (1,255), Path, info_str=(Path, "AFP Get Entry ID from Path Name: %s", ", %s") ),
+ ])
pkt.Reply(12, [
rec( 8, 4, AFPEntryID, ENC_BIG_ENDIAN ),
])
@@ -11912,8 +11948,8 @@ def define_ncp2222():
rec( 30, 2, FileDirWindow ),
rec( 32, 16, Reserved16 ),
rec( 48, 6, ProDOSInfo ),
- rec( 54, (1,255), Path ),
- ], info_str=(Path, "AFP 2.0 Create Directory: %s", ", %s"))
+ rec( 54, (1,255), Path, info_str=(Path, "AFP 2.0 Create Directory: %s", ", %s") ),
+ ])
pkt.Reply(12, [
rec( 8, 4, NewDirectoryID ),
])
@@ -11934,8 +11970,8 @@ def define_ncp2222():
rec( 30, 2, FileDirWindow ),
rec( 32, 16, Reserved16 ),
rec( 48, 6, ProDOSInfo ),
- rec( 54, (1,255), Path ),
- ], info_str=(Path, "AFP 2.0 Create File: %s", ", %s"))
+ rec( 54, (1,255), Path, info_str=(Path, "AFP 2.0 Create File: %s", ", %s") ),
+ ])
pkt.Reply(12, [
rec( 8, 4, NewDirectoryID ),
])
@@ -11950,8 +11986,8 @@ def define_ncp2222():
rec( 10, 1, VolumeNumber ),
rec( 11, 4, BaseDirectoryID ),
rec( 15, 2, RequestBitMap, ENC_BIG_ENDIAN ),
- rec( 17, (1,255), Path ),
- ], info_str=(Path, "AFP 2.0 Get Information: %s", ", %s"))
+ rec( 17, (1,255), Path, info_str=(Path, "AFP 2.0 Get Information: %s", ", %s") ),
+ ])
pkt.Reply(128, [
rec( 8, 4, AFPEntryID, ENC_BIG_ENDIAN ),
rec( 12, 4, ParentID, ENC_BIG_ENDIAN ),
@@ -12002,8 +12038,8 @@ def define_ncp2222():
rec( 45, 2, FileDirWindow ),
rec( 47, 16, Reserved16 ),
rec( 63, 6, ProDOSInfo ),
- rec( 69, (1,255), Path ),
- ], info_str=(Path, "AFP 2.0 Set File Information: %s", ", %s"))
+ rec( 69, (1,255), Path, info_str=(Path, "AFP 2.0 Set File Information: %s", ", %s") ),
+ ])
pkt.Reply(8)
pkt.CompletionCodes([0x0000, 0x0104, 0x8301, 0x8800, 0x9300, 0x9400,
0x9500, 0x9600, 0x9804, 0x9c03, 0xa100, 0xa201,
@@ -12017,8 +12053,8 @@ def define_ncp2222():
rec( 19, 2, DesiredResponseCount, ENC_BIG_ENDIAN ),
rec( 21, 2, SearchBitMap, ENC_BIG_ENDIAN ),
rec( 23, 2, RequestBitMap, ENC_BIG_ENDIAN ),
- rec( 25, (1,255), Path ),
- ], info_str=(Path, "AFP 2.0 Scan File Information: %s", ", %s"))
+ rec( 25, (1,255), Path, info_str=(Path, "AFP 2.0 Scan File Information: %s", ", %s") ),
+ ])
pkt.Reply(14, [
rec( 8, 2, ActualResponseCount, var="x" ),
rec( 10, 4, AFP20Struct, repeat="x" ),
@@ -12077,8 +12113,8 @@ def define_ncp2222():
# 2222/2402, 36/02
pkt = NCP(0x2402, "Get NCP Extension Information by Name", 'extension')
pkt.Request((11, 265), [
- rec( 10, (1,255), NCPextensionName ),
- ], info_str=(NCPextensionName, "Get NCP Extension Information by Name: %s", ", %s"))
+ rec( 10, (1,255), NCPextensionName, info_str=(NCPextensionName, "Get NCP Extension Information by Name: %s", ", %s") ),
+ ])
pkt.Reply((16,270), [
rec( 8, 4, NCPextensionNumber ),
rec( 12, 1, NCPextensionMajorVersion ),
@@ -12140,24 +12176,24 @@ def define_ncp2222():
pkt = NCP(0x3B, "Commit File", 'file', has_length=0 )
pkt.Request(14, [
rec( 7, 1, Reserved ),
- rec( 8, 6, FileHandle ),
- ], info_str=(FileHandle, "Commit File - 0x%s", ", %s"))
+ rec( 8, 6, FileHandle, info_str=(FileHandle, "Commit File - 0x%s", ", %s") ),
+ ])
pkt.Reply(8)
pkt.CompletionCodes([0x0000, 0x8800, 0x9804, 0xff00])
# 2222/3D, 61
pkt = NCP(0x3D, "Commit File", 'file', has_length=0 )
pkt.Request(14, [
rec( 7, 1, Reserved ),
- rec( 8, 6, FileHandle ),
- ], info_str=(FileHandle, "Commit File - 0x%s", ", %s"))
+ rec( 8, 6, FileHandle, info_str=(FileHandle, "Commit File - 0x%s", ", %s") ),
+ ])
pkt.Reply(8)
pkt.CompletionCodes([0x0000, 0x8800, 0x9804, 0xff00])
# 2222/3E, 62
pkt = NCP(0x3E, "File Search Initialize", 'file', has_length=0 )
pkt.Request((9, 263), [
rec( 7, 1, DirHandle ),
- rec( 8, (1,255), Path ),
- ], info_str=(Path, "Initialize File Search: %s", ", %s"))
+ rec( 8, (1,255), Path, info_str=(Path, "Initialize File Search: %s", ", %s") ),
+ ])
pkt.Reply(14, [
rec( 8, 1, VolumeNumber ),
rec( 9, 2, DirectoryID ),
@@ -12173,8 +12209,8 @@ def define_ncp2222():
rec( 8, 2, DirectoryID ),
rec( 10, 2, SequenceNumber, ENC_BIG_ENDIAN ),
rec( 12, 1, SearchAttributes ),
- rec( 13, (1,255), Path ),
- ], info_str=(Path, "File Search Continue: %s", ", %s"))
+ rec( 13, (1,255), Path, info_str=(Path, "File Search Continue: %s", ", %s") ),
+ ])
pkt.Reply( NO_LENGTH_CHECK, [
#
# XXX - don't show this if we got back a non-zero
@@ -12195,8 +12231,8 @@ def define_ncp2222():
rec( 7, 2, SequenceNumber, ENC_BIG_ENDIAN ),
rec( 9, 1, DirHandle ),
rec( 10, 1, SearchAttributes ),
- rec( 11, (1,255), FileName ),
- ], info_str=(FileName, "Search for File: %s", ", %s"))
+ rec( 11, (1,255), FileName, info_str=(FileName, "Search for File: %s", ", %s") ),
+ ])
pkt.Reply(40, [
rec( 8, 2, SequenceNumber, ENC_BIG_ENDIAN ),
rec( 10, 2, Reserved2 ),
@@ -12216,8 +12252,8 @@ def define_ncp2222():
pkt.Request((10, 264), [
rec( 7, 1, DirHandle ),
rec( 8, 1, SearchAttributes ),
- rec( 9, (1,255), FileName ),
- ], info_str=(FileName, "Open File: %s", ", %s"))
+ rec( 9, (1,255), FileName, info_str=(FileName, "Open File: %s", ", %s") ),
+ ])
pkt.Reply(44, [
rec( 8, 6, FileHandle ),
rec( 14, 2, Reserved2 ),
@@ -12237,8 +12273,8 @@ def define_ncp2222():
pkt = NCP(0x42, "Close File", 'file')
pkt.Request(14, [
rec( 7, 1, Reserved ),
- rec( 8, 6, FileHandle ),
- ], info_str=(FileHandle, "Close File - 0x%s", ", %s"))
+ rec( 8, 6, FileHandle, info_str=(FileHandle, "Close File - 0x%s", ", %s") ),
+ ])
pkt.Reply(8)
pkt.CompletionCodes([0x0000, 0x8800, 0xff1a])
pkt.MakeExpert("ncp42_request")
@@ -12247,8 +12283,8 @@ def define_ncp2222():
pkt.Request((10, 264), [
rec( 7, 1, DirHandle ),
rec( 8, 1, AttributesDef ),
- rec( 9, (1,255), FileName ),
- ], info_str=(FileName, "Create File: %s", ", %s"))
+ rec( 9, (1,255), FileName, info_str=(FileName, "Create File: %s", ", %s") ),
+ ])
pkt.Reply(44, [
rec( 8, 6, FileHandle ),
rec( 14, 2, Reserved2 ),
@@ -12270,8 +12306,8 @@ def define_ncp2222():
pkt.Request((10, 264), [
rec( 7, 1, DirHandle ),
rec( 8, 1, SearchAttributes ),
- rec( 9, (1,255), FileName ),
- ], info_str=(FileName, "Erase File: %s", ", %s"))
+ rec( 9, (1,255), FileName, info_str=(FileName, "Erase File: %s", ", %s") ),
+ ])
pkt.Reply(8)
pkt.CompletionCodes([0x0000, 0x8a00, 0x8d00, 0x8e00, 0x8f00,
0x9001, 0x9600, 0x9804, 0x9b03, 0x9c03,
@@ -12281,10 +12317,10 @@ def define_ncp2222():
pkt.Request((12, 520), [
rec( 7, 1, DirHandle ),
rec( 8, 1, SearchAttributes ),
- rec( 9, (1,255), FileName ),
+ rec( 9, (1,255), FileName, info_str=(FileName, "Rename File: %s", ", %s") ),
rec( -1, 1, TargetDirHandle ),
rec( -1, (1, 255), NewFileNameLen ),
- ], info_str=(FileName, "Rename File: %s", ", %s"))
+ ])
pkt.Reply(8)
pkt.CompletionCodes([0x0000, 0x8701, 0x8b00, 0x8d00, 0x8e00,
0x8f00, 0x9001, 0x9101, 0x9201, 0x9600,
@@ -12296,8 +12332,8 @@ def define_ncp2222():
rec( 7, 1, AttributesDef ),
rec( 8, 1, DirHandle ),
rec( 9, 1, SearchAttributes ),
- rec( 10, (1,255), FileName ),
- ], info_str=(FileName, "Set File Attributes: %s", ", %s"))
+ rec( 10, (1,255), FileName, info_str=(FileName, "Set File Attributes: %s", ", %s") ),
+ ])
pkt.Reply(8)
pkt.CompletionCodes([0x0000, 0x8c00, 0x8d00, 0x8e00, 0x9600,
0x9804, 0x9b03, 0x9c03, 0xa100, 0xfd00,
@@ -12306,8 +12342,8 @@ def define_ncp2222():
pkt = NCP(0x47, "Get Current Size of File", 'file')
pkt.Request(14, [
rec(7, 1, Reserved ),
- rec( 8, 6, FileHandle ),
- ], info_str=(FileHandle, "Get Current Size of File - 0x%s", ", %s"))
+ rec( 8, 6, FileHandle, info_str=(FileHandle, "Get Current Size of File - 0x%s", ", %s") ),
+ ])
pkt.Reply(12, [
rec( 8, 4, FileSize, ENC_BIG_ENDIAN ),
])
@@ -12316,10 +12352,10 @@ def define_ncp2222():
pkt = NCP(0x48, "Read From A File", 'file')
pkt.Request(20, [
rec( 7, 1, Reserved ),
- rec( 8, 6, FileHandle ),
+ rec( 8, 6, FileHandle, info_str=(FileHandle, "Read From File - 0x%s", ", %s") ),
rec( 14, 4, FileOffset, ENC_BIG_ENDIAN ),
rec( 18, 2, MaxBytes, ENC_BIG_ENDIAN ),
- ], info_str=(FileHandle, "Read From File - 0x%s", ", %s"))
+ ])
pkt.Reply(10, [
rec( 8, 2, NumBytes, ENC_BIG_ENDIAN ),
])
@@ -12328,10 +12364,10 @@ def define_ncp2222():
pkt = NCP(0x49, "Write to a File", 'file')
pkt.Request(20, [
rec( 7, 1, Reserved ),
- rec( 8, 6, FileHandle ),
+ rec( 8, 6, FileHandle, info_str=(FileHandle, "Write to a File - 0x%s", ", %s") ),
rec( 14, 4, FileOffset, ENC_BIG_ENDIAN ),
rec( 18, 2, MaxBytes, ENC_BIG_ENDIAN ),
- ], info_str=(FileHandle, "Write to a File - 0x%s", ", %s"))
+ ])
pkt.Reply(8)
pkt.CompletionCodes([0x0000, 0x0104, 0x8300, 0x8800, 0x9400, 0x9500, 0xa201, 0xff1b])
# 2222/4A, 74
@@ -12353,10 +12389,10 @@ def define_ncp2222():
pkt = NCP(0x4B, "Set File Time Date Stamp", 'file')
pkt.Request(18, [
rec( 7, 1, Reserved ),
- rec( 8, 6, FileHandle ),
+ rec( 8, 6, FileHandle, info_str=(FileHandle, "Set Time and Date Stamp for File - 0x%s", ", %s") ),
rec( 14, 2, FileTime, ENC_BIG_ENDIAN ),
rec( 16, 2, FileDate, ENC_BIG_ENDIAN ),
- ], info_str=(FileHandle, "Set Time and Date Stamp for File - 0x%s", ", %s"))
+ ])
pkt.Reply(8)
pkt.CompletionCodes([0x0000, 0x8800, 0x9400, 0x9600, 0xfb08])
# 2222/4C, 76
@@ -12365,8 +12401,8 @@ def define_ncp2222():
rec( 7, 1, DirHandle ),
rec( 8, 1, SearchAttributes ),
rec( 9, 1, AccessRightsMask ),
- rec( 10, (1,255), FileName ),
- ], info_str=(FileName, "Open File: %s", ", %s"))
+ rec( 10, (1,255), FileName, info_str=(FileName, "Open File: %s", ", %s") ),
+ ])
pkt.Reply(44, [
rec( 8, 6, FileHandle ),
rec( 14, 2, Reserved2 ),
@@ -12387,8 +12423,8 @@ def define_ncp2222():
pkt.Request((10, 264), [
rec( 7, 1, DirHandle ),
rec( 8, 1, AttributesDef ),
- rec( 9, (1,255), FileName ),
- ], info_str=(FileName, "Create File: %s", ", %s"))
+ rec( 9, (1,255), FileName, info_str=(FileName, "Create File: %s", ", %s") ),
+ ])
pkt.Reply(44, [
rec( 8, 6, FileHandle ),
rec( 14, 2, Reserved2 ),
@@ -12411,8 +12447,8 @@ def define_ncp2222():
rec( 7, 1, AttributesDef ),
rec( 8, 1, DirHandle ),
rec( 9, 1, AccessRightsMask ),
- rec( 10, (1,255), FileName ),
- ], info_str=(FileName, "Set File Extended Attributes: %s", ", %s"))
+ rec( 10, (1,255), FileName, info_str=(FileName, "Set File Extended Attributes: %s", ", %s") ),
+ ])
pkt.Reply(8)
pkt.CompletionCodes([0x0000, 0x8c00, 0x8d00, 0x8e00, 0x9600,
0x9804, 0x9b03, 0x9c03, 0xa100, 0xfd00,
@@ -12424,8 +12460,8 @@ def define_ncp2222():
rec( 8, 1, AttributesDef ),
rec( 9, 1, AccessRightsMask ),
rec( 10, 1, ActionFlag ),
- rec( 11, (1,255), FileName ),
- ], info_str=(FileName, "Open/Create File: %s", ", %s"))
+ rec( 11, (1,255), FileName, info_str=(FileName, "Open/Create File: %s", ", %s") ),
+ ])
pkt.Reply(44, [
rec( 8, 6, FileHandle ),
rec( 14, 2, Reserved2 ),
@@ -12445,9 +12481,9 @@ def define_ncp2222():
pkt = NCP(0x55, "Get Sparse File Data Block Bit Map", 'file', has_length=1)
pkt.Request(19, [
rec( 7, 2, SubFuncStrucLen, ENC_BIG_ENDIAN ),
- rec( 9, 6, FileHandle ),
+ rec( 9, 6, FileHandle, info_str=(FileHandle, "Get Sparse File Data Block Bitmap for File - 0x%s", ", %s") ),
rec( 15, 4, FileOffset ),
- ], info_str=(FileHandle, "Get Sparse File Data Block Bitmap for File - 0x%s", ", %s"))
+ ])
pkt.Reply(528, [
rec( 8, 4, AllocationBlockSize ),
rec( 12, 4, Reserved4 ),
@@ -12472,9 +12508,9 @@ def define_ncp2222():
rec( 22, 4, FileOffset ),
rec( 26, 4, EAAccessFlag ),
rec( 30, 2, EAValueLength, var='x' ),
- rec( 32, (2,64), EAKey ),
+ rec( 32, (2,64), EAKey, info_str=(EAKey, "Write Extended Attribute: %s", ", %s") ),
rec( -1, 1, EAValueRep, repeat='x' ),
- ], info_str=(EAKey, "Write Extended Attribute: %s", ", %s"))
+ ])
pkt.Reply(20, [
rec( 8, 4, EAErrorCodes ),
rec( 12, 4, EABytesWritten ),
@@ -12490,8 +12526,8 @@ def define_ncp2222():
rec( 14, 4, ReservedOrDirectoryNumber ),
rec( 18, 4, FileOffset ),
rec( 22, 4, InspectSize ),
- rec( 26, (2,512), EAKey ),
- ], info_str=(EAKey, "Read Extended Attribute: %s", ", %s"))
+ rec( 26, (2,512), EAKey, info_str=(EAKey, "Read Extended Attribute: %s", ", %s") ),
+ ])
pkt.Reply((26,536), [
rec( 8, 4, EAErrorCodes ),
rec( 12, 4, TtlValuesLength ),
@@ -12509,8 +12545,8 @@ def define_ncp2222():
rec( 14, 4, ReservedOrDirectoryNumber ),
rec( 18, 4, InspectSize ),
rec( 22, 2, SequenceNumber ),
- rec( 24, (2,512), EAKey ),
- ], info_str=(EAKey, "Enumerate Extended Attribute: %s", ", %s"))
+ rec( 24, (2,512), EAKey, info_str=(EAKey, "Enumerate Extended Attribute: %s", ", %s") ),
+ ])
pkt.Reply(28, [
rec( 8, 4, EAErrorCodes ),
rec( 12, 4, TtlEAs ),
@@ -12550,8 +12586,8 @@ def define_ncp2222():
rec( 23, 4, DirectoryBase ),
rec( 27, 1, HandleFlag ),
rec( 28, 1, PathCount, var="x" ),
- rec( 29, (1,255), Path, repeat="x" ),
- ], info_str=(Path, "Open or Create: %s", "/%s"))
+ rec( 29, (1,255), Path, repeat="x", info_str=(Path, "Open or Create: %s", "/%s") ),
+ ])
pkt.Reply( NO_LENGTH_CHECK, [
rec( 8, 4, FileHandle ),
rec( 12, 1, OpenCreateAction ),
@@ -12620,8 +12656,8 @@ def define_ncp2222():
rec( 11, 4, DirectoryBase ),
rec( 15, 1, HandleFlag ),
rec( 16, 1, PathCount, var="x" ),
- rec( 17, (1,255), Path, repeat="x" ),
- ], info_str=(Path, "Set Search Pointer to: %s", "/%s"))
+ rec( 17, (1,255), Path, repeat="x", info_str=(Path, "Set Search Pointer to: %s", "/%s") ),
+ ])
pkt.Reply(17, [
rec( 8, 1, VolumeNumber ),
rec( 9, 4, DirectoryNumber ),
@@ -12639,8 +12675,8 @@ def define_ncp2222():
rec( 12, 2, ReturnInfoMask ),
rec( 14, 2, ExtendedInfo ),
rec( 16, 9, SeachSequenceStruct ),
- rec( 25, (1,255), SearchPattern ),
- ], info_str=(SearchPattern, "Search for: %s", "/%s"))
+ rec( 25, (1,255), SearchPattern, info_str=(SearchPattern, "Search for: %s", "/%s") ),
+ ])
pkt.Reply( NO_LENGTH_CHECK, [
rec( 8, 9, SeachSequenceStruct ),
rec( 17, 1, Reserved ),
@@ -12709,9 +12745,9 @@ def define_ncp2222():
rec( 20, 4, DirectoryBase ),
rec( 24, 1, HandleFlag ),
rec( 25, 1, PathCount, var="y" ),
- rec( 26, (1, 255), Path, repeat="x" ),
+ rec( 26, (1, 255), Path, repeat="x", info_str=(Path, "Rename or Move: %s", "/%s") ),
rec( -1, (1,255), DestPath, repeat="y" ),
- ], info_str=(Path, "Rename or Move: %s", "/%s"))
+ ])
pkt.Reply(8)
pkt.CompletionCodes([0x0000, 0x0102, 0x8000, 0x8101, 0x8401, 0x8501,
0x8701, 0x8d00, 0x8e00, 0x8f00, 0x9001, 0x9100, 0x9200, 0x9600,
@@ -12727,8 +12763,8 @@ def define_ncp2222():
rec( 17, 4, DirectoryBase ),
rec( 21, 1, HandleFlag ),
rec( 22, 1, PathCount, var="x" ),
- rec( 23, (1, 255), Path, repeat="x" ),
- ], info_str=(Path, "Scan Trustees for: %s", "/%s"))
+ rec( 23, (1, 255), Path, repeat="x", info_str=(Path, "Scan Trustees for: %s", "/%s") ),
+ ])
pkt.Reply(20, [
rec( 8, 4, SequenceNumber ),
rec( 12, 2, ObjectIDCount, var="x" ),
@@ -12749,8 +12785,8 @@ def define_ncp2222():
rec( 19, 4, DirectoryBase ),
rec( 23, 1, HandleFlag ),
rec( 24, 1, PathCount, var="x" ),
- rec( 25, (1,255), Path, repeat="x",),
- ], info_str=(Path, "Obtain Info for: %s", "/%s"))
+ rec( 25, (1,255), Path, repeat="x", info_str=(Path, "Obtain Info for: %s", "/%s")),
+ ])
pkt.Reply(NO_LENGTH_CHECK, [
srec( DSSpaceAllocateStruct, req_cond="(ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_alloc == 1)" ),
srec( PadDSSpaceAllocate, req_cond="(ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_alloc == 0)" ),
@@ -12835,8 +12871,8 @@ def define_ncp2222():
rec( 55, 4, DirectoryBase ),
rec( 59, 1, HandleFlag ),
rec( 60, 1, PathCount, var="x" ),
- rec( 61, (1,255), Path, repeat="x" ),
- ], info_str=(Path, "Modify DOS Information for: %s", "/%s"))
+ rec( 61, (1,255), Path, repeat="x", info_str=(Path, "Modify DOS Information for: %s", "/%s") ),
+ ])
pkt.Reply(8)
pkt.CompletionCodes([0x0000, 0x0102, 0x8000, 0x8101, 0x8401, 0x8501,
0x8701, 0x8c01, 0x8d00, 0x8e00, 0x8f00, 0x9001, 0x9600,
@@ -12851,8 +12887,8 @@ def define_ncp2222():
rec( 13, 4, DirectoryBase ),
rec( 17, 1, HandleFlag ),
rec( 18, 1, PathCount, var="x" ),
- rec( 19, (1,255), Path, repeat="x" ),
- ], info_str=(Path, "Delete a File or Subdirectory: %s", "/%s"))
+ rec( 19, (1,255), Path, repeat="x", info_str=(Path, "Delete a File or Subdirectory: %s", "/%s") ),
+ ])
pkt.Reply(8)
pkt.CompletionCodes([0x0000, 0x8000, 0x8101, 0x8401, 0x8501,
0x8701, 0x8900, 0x8a00, 0x8d00, 0x8e00, 0x8f00, 0x9001, 0x9600,
@@ -12868,8 +12904,8 @@ def define_ncp2222():
rec( 13, 4, DirectoryBase ),
rec( 17, 1, HandleFlag ),
rec( 18, 1, PathCount, var="x" ),
- rec( 19, (1,255), Path, repeat="x" ),
- ], info_str=(Path, "Set Short Directory Handle to: %s", "/%s"))
+ rec( 19, (1,255), Path, repeat="x", info_str=(Path, "Set Short Directory Handle to: %s", "/%s") ),
+ ])
pkt.Reply(8)
pkt.CompletionCodes([0x0000, 0x8000, 0x8101, 0x8401, 0x8501,
0x8701, 0x8d00, 0x8f00, 0x9001, 0x9600,
@@ -12886,9 +12922,9 @@ def define_ncp2222():
rec( 17, 4, DirectoryBase ),
rec( 21, 1, HandleFlag ),
rec( 22, 1, PathCount, var="x" ),
- rec( 23, (1,255), Path, repeat="x" ),
+ rec( 23, (1,255), Path, repeat="x", info_str=(Path, "Add Trustee Set to: %s", "/%s") ),
rec( -1, 7, TrusteeStruct, repeat="y" ),
- ], info_str=(Path, "Add Trustee Set to: %s", "/%s"))
+ ])
pkt.Reply(8)
pkt.CompletionCodes([0x0000, 0x8000, 0x8101, 0x8401, 0x8501,
0x8701, 0x8c01, 0x8d00, 0x8f00, 0x9001, 0x9600,
@@ -12903,9 +12939,9 @@ def define_ncp2222():
rec( 13, 4, DirectoryBase ),
rec( 17, 1, HandleFlag ),
rec( 18, 1, PathCount, var="x" ),
- rec( 19, (1,255), Path, repeat="x" ),
+ rec( 19, (1,255), Path, repeat="x", info_str=(Path, "Delete Trustee Set from: %s", "/%s") ),
rec( -1, 7, TrusteeStruct, repeat="y" ),
- ], info_str=(Path, "Delete Trustee Set from: %s", "/%s"))
+ ])
pkt.Reply(8)
pkt.CompletionCodes([0x0000, 0x8000, 0x8101, 0x8401, 0x8501,
0x8701, 0x8c01, 0x8d00, 0x8f00, 0x9001, 0x9600,
@@ -12920,8 +12956,8 @@ def define_ncp2222():
rec( 13, 4, DirectoryBase ),
rec( 17, 1, HandleFlag ),
rec( 18, 1, PathCount, var="x" ),
- rec( 19, (1,255), Path, repeat="x" ),
- ], info_str=(Path, "Allocate Short Directory Handle to: %s", "/%s"))
+ rec( 19, (1,255), Path, repeat="x", info_str=(Path, "Allocate Short Directory Handle to: %s", "/%s") ),
+ ])
pkt.Reply(NO_LENGTH_CHECK, [
srec( ReplyLevel2Struct, req_cond="ncp.alloc_reply_lvl2 == TRUE" ),
srec( ReplyLevel1Struct, req_cond="ncp.alloc_reply_lvl2 == FALSE" ),
@@ -12942,8 +12978,8 @@ def define_ncp2222():
rec( 19, 4, DirectoryBase ),
rec( 23, 1, HandleFlag ),
rec( 24, 1, PathCount, var="x" ),
- rec( 25, (1,255), Path, repeat="x" ),
- ], info_str=(Path, "Scan for Deleted Files in: %s", "/%s"))
+ rec( 25, (1,255), Path, repeat="x", info_str=(Path, "Scan for Deleted Files in: %s", "/%s") ),
+ ])
pkt.Reply(NO_LENGTH_CHECK, [
rec( 8, 4, SequenceNumber ),
rec( 12, 2, DeletedTime ),
@@ -12999,8 +13035,8 @@ def define_ncp2222():
rec( 10, 4, SequenceNumber ),
rec( 14, 4, VolumeID ),
rec( 18, 4, DirectoryBase ),
- rec( 22, (1,255), FileName ),
- ], info_str=(FileName, "Recover Deleted File: %s", ", %s"))
+ rec( 22, (1,255), FileName, info_str=(FileName, "Recover Deleted File: %s", ", %s") ),
+ ])
pkt.Reply(8)
pkt.CompletionCodes([0x0000, 0x8000, 0x8101, 0x8401, 0x8501,
0x8701, 0x8d00, 0x8f00, 0x9001, 0x9600,
@@ -13088,8 +13124,8 @@ def define_ncp2222():
rec( 13, 4, DirectoryBase ),
rec( 17, 1, HandleFlag ),
rec( 18, 1, PathCount, var="x" ),
- rec( 19, (1,255), Path, repeat="x" ),
- ], info_str=(Path, "Get Volume and Directory Base from: %s", "/%s"))
+ rec( 19, (1,255), Path, repeat="x", info_str=(Path, "Get Volume and Directory Base from: %s", "/%s") ),
+ ])
pkt.Reply(17, [
rec( 8, 4, DirectoryBase ),
rec( 12, 4, DOSDirectoryBase ),
@@ -13120,8 +13156,8 @@ def define_ncp2222():
pkt = NCP(0x5718, "Get Name Spaces Loaded List from Volume Number", 'file', has_length=0)
pkt.Request(11, [
rec( 8, 2, Reserved2 ),
- rec( 10, 1, VolumeNumber ),
- ], info_str=(VolumeNumber, "Get Name Spaces Loaded List from Vol: %d", "/%d"))
+ rec( 10, 1, VolumeNumber, info_str=(VolumeNumber, "Get Name Spaces Loaded List from Vol: %d", "/%d") ),
+ ])
pkt.Reply(11, [
rec( 8, 2, NumberOfNSLoaded, var="x" ),
rec( 10, 1, NameSpace, repeat="x" ),
@@ -13192,8 +13228,8 @@ def define_ncp2222():
rec( 21, 4, DirectoryBase ),
rec( 25, 1, HandleFlag ),
rec( 26, 1, PathCount, var="x" ),
- rec( 27, (1,255), Path, repeat="x" ),
- ], info_str=(Path, "Get Full Path from: %s", "/%s"))
+ rec( 27, (1,255), Path, repeat="x", info_str=(Path, "Get Full Path from: %s", "/%s") ),
+ ])
pkt.Reply((23,277), [
rec( 8, 2, PathCookieFlags ),
rec( 10, 4, Cookie1 ),
@@ -13218,8 +13254,8 @@ def define_ncp2222():
rec( 17, 4, DirectoryBase ),
rec( 21, 1, HandleFlag ),
rec( 22, 1, PathCount, var="x" ),
- rec( 23, (1,255), Path, repeat="x" ),
- ], info_str=(Path, "Get Effective Rights for: %s", "/%s"))
+ rec( 23, (1,255), Path, repeat="x", info_str=(Path, "Get Effective Rights for: %s", "/%s") ),
+ ])
pkt.Reply(NO_LENGTH_CHECK, [
rec( 8, 2, EffectiveRights ),
srec( DSSpaceAllocateStruct, req_cond="(ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_alloc == 1)" ),
@@ -13279,8 +13315,8 @@ def define_ncp2222():
rec( 27, 4, DirectoryBase ),
rec( 31, 1, HandleFlag ),
rec( 32, 1, PathCount, var="x" ),
- rec( 33, (1,255), Path, repeat="x" ),
- ], info_str=(Path, "Open or Create File: %s", "/%s"))
+ rec( 33, (1,255), Path, repeat="x", info_str=(Path, "Open or Create File: %s", "/%s") ),
+ ])
pkt.Reply(NO_LENGTH_CHECK, [
rec( 8, 4, FileHandle, ENC_BIG_ENDIAN ),
rec( 12, 1, OpenCreateAction ),
@@ -13329,9 +13365,9 @@ def define_ncp2222():
# 2222/571F, 87/31
pkt = NCP(0x571F, "Get File Information", 'file', has_length=0)
pkt.Request(15, [
- rec( 8, 6, FileHandle ),
+ rec( 8, 6, FileHandle, info_str=(FileHandle, "Get File Information - 0x%s", ", %s") ),
rec( 14, 1, HandleInfoLevel ),
- ], info_str=(FileHandle, "Get File Information - 0x%s", ", %s"))
+ ])
pkt.Reply(NO_LENGTH_CHECK, [
rec( 8, 4, VolumeNumberLong ),
rec( 12, 4, DirectoryBase ),
@@ -13360,8 +13396,8 @@ def define_ncp2222():
rec( 23, 4, DirectoryBase ),
rec( 27, 1, HandleFlag ),
rec( 28, 1, PathCount, var="x" ),
- rec( 29, (1,255), Path, repeat="x" ),
- ], info_str=(Path, "Open or Create with Op-Lock: %s", "/%s"))
+ rec( 29, (1,255), Path, repeat="x", info_str=(Path, "Open or Create with Op-Lock: %s", "/%s") ),
+ ])
pkt.Reply( NO_LENGTH_CHECK, [
rec( 8, 4, FileHandle, ENC_BIG_ENDIAN ),
rec( 12, 1, OpenCreateAction ),
@@ -13438,8 +13474,8 @@ def define_ncp2222():
rec( 27, 4, DirectoryBase ),
rec( 31, 1, HandleFlag ),
rec( 32, 1, PathCount, var="x" ),
- rec( 33, (1,255), Path, repeat="x" ),
- ], info_str=(FilePath, "Open or Create II with Op-Lock: %s", "/%s"))
+ rec( 33, (1,255), Path, repeat="x", info_str=(Path, "Open or Create II with Op-Lock: %s", "/%s") ),
+ ])
pkt.Reply(NO_LENGTH_CHECK, [
rec( 8, 4, FileHandle ),
rec( 12, 1, OpenCreateAction ),
@@ -13521,8 +13557,8 @@ def define_ncp2222():
rec( 21, 4, DirectoryBase ),
rec( 25, 1, HandleFlag ),
rec( 26, 1, PathCount, var="x" ),
- rec( 27, (1,255), Path, repeat="x" ),
- ], info_str=(Path, "Modify DOS Attributes for: %s", "/%s"))
+ rec( 27, (1,255), Path, repeat="x", info_str=(Path, "Modify DOS Attributes for: %s", "/%s") ),
+ ])
pkt.Reply(24, [
rec( 8, 4, ItemsChecked ),
rec( 12, 4, ItemsChanged ),
@@ -13546,8 +13582,8 @@ def define_ncp2222():
rec( 21, 4, DirectoryBase ),
rec( 25, 1, HandleFlag ),
rec( 26, 1, PathCount, var="x" ),
- rec( 27, (1,255), Path, repeat="x" ),
- ], info_str=(Path, "Lock File: %s", "/%s"))
+ rec( 27, (1,255), Path, repeat="x", info_str=(Path, "Lock File: %s", "/%s") ),
+ ])
pkt.Reply(8)
pkt.CompletionCodes([0x0000, 0x8000, 0x8101, 0x8401, 0x8501,
0x8701, 0x8d00, 0x8f00, 0x9001, 0x9600,
@@ -13562,8 +13598,8 @@ def define_ncp2222():
rec( 13, 4, DirectoryBase ),
rec( 17, 1, HandleFlag ),
rec( 18, 1, PathCount, var="x" ),
- rec( 19, (1,255), Path, repeat="x" ),
- ], info_str=(Path, "Release Lock on: %s", "/%s"))
+ rec( 19, (1,255), Path, repeat="x", info_str=(Path, "Release Lock on: %s", "/%s") ),
+ ])
pkt.Reply(8)
pkt.CompletionCodes([0x0000, 0x8000, 0x8101, 0x8401, 0x8501,
0x8701, 0x8d00, 0x8f00, 0x9001, 0x9600,
@@ -13578,8 +13614,8 @@ def define_ncp2222():
rec( 13, 4, DirectoryBase ),
rec( 17, 1, HandleFlag ),
rec( 18, 1, PathCount, var="x" ),
- rec( 19, (1,255), Path, repeat="x" ),
- ], info_str=(Path, "Clear File: %s", "/%s"))
+ rec( 19, (1,255), Path, repeat="x", info_str=(Path, "Clear File: %s", "/%s") ),
+ ])
pkt.Reply(8)
pkt.CompletionCodes([0x0000, 0x8000, 0x8101, 0x8401, 0x8501,
0x8701, 0x8d00, 0x8f00, 0x9001, 0x9600,
@@ -13593,8 +13629,8 @@ def define_ncp2222():
rec( 12, 4, DirectoryBase ),
rec( 16, 1, HandleFlag ),
rec( 17, 1, PathCount, var="x" ),
- rec( 18, (1,255), Path, repeat="x" ),
- ], info_str=(Path, "Get Disk Space Restriction for: %s", "/%s"))
+ rec( 18, (1,255), Path, repeat="x", info_str=(Path, "Get Disk Space Restriction for: %s", "/%s") ),
+ ])
pkt.Reply(18, [
rec( 8, 1, NumberOfEntries, var="x" ),
rec( 9, 9, SpaceStruct, repeat="x" ),
@@ -13613,8 +13649,8 @@ def define_ncp2222():
rec( 14, 2, ExtendedInfo ),
rec( 16, 2, ReturnInfoCount ),
rec( 18, 9, SeachSequenceStruct ),
- rec( 27, (1,255), SearchPattern ),
- ], info_str=(SearchPattern, "Search for: %s", ", %s"))
+ rec( 27, (1,255), SearchPattern, info_str=(SearchPattern, "Search for: %s", ", %s") ),
+ ])
pkt.Reply(NO_LENGTH_CHECK, [
rec( 8, 9, SeachSequenceStruct ),
rec( 17, 1, MoreFlag ),
@@ -13670,8 +13706,8 @@ def define_ncp2222():
rec( 17, 4, DirectoryBase ),
rec( 21, 1, HandleFlag ),
rec( 22, 1, PathCount, var="x" ),
- rec( 23, (1,255), Path, repeat="x" ),
- ], info_str=(Path, "Scan Deleted Files: %s", "/%s"))
+ rec( 23, (1,255), Path, repeat="x", info_str=(Path, "Scan Deleted Files: %s", "/%s") ),
+ ])
pkt.Reply(NO_LENGTH_CHECK, [
rec( 8, 4, SequenceNumber ),
rec( 12, 4, DirectoryBase ),
@@ -14062,8 +14098,8 @@ def define_ncp2222():
rec( 28, 1, DataTypeFlag ),
rec( 29, 5, Reserved5 ),
rec( 34, 1, PathCount, var="x" ),
- rec( 35, (2,255), Path16, repeat="x" ),
- ], info_str=(Path16, "Open or Create File or Subdirectory: %s", "/%s"))
+ rec( 35, (2,255), Path16, repeat="x", info_str=(Path16, "Open or Create File or Subdirectory: %s", "/%s") ),
+ ])
pkt.Reply( NO_LENGTH_CHECK, [
rec( 8, 4, FileHandle, ENC_BIG_ENDIAN ),
rec( 12, 1, OpenCreateAction ),
@@ -14135,8 +14171,8 @@ def define_ncp2222():
rec( 16, 1, DataTypeFlag ),
rec( 17, 5, Reserved5 ),
rec( 22, 1, PathCount, var="x" ),
- rec( 23, (2,255), Path16, repeat="x" ),
- ], info_str=(Path16, "Set Search Pointer to: %s", "/%s"))
+ rec( 23, (2,255), Path16, repeat="x", info_str=(Path16, "Set Search Pointer to: %s", "/%s") ),
+ ])
pkt.Reply(17, [
rec( 8, 1, VolumeNumber ),
rec( 9, 4, DirectoryNumber ),
@@ -14156,8 +14192,8 @@ def define_ncp2222():
rec( 16, 9, SeachSequenceStruct ),
rec( 25, 1, DataTypeFlag ),
# next field is dissected in packet-ncp2222.inc
- #rec( 26, (2,255), SearchPattern16 ),
- ], info_str=(SearchPattern16, "Search for: %s", "/%s"))
+ #rec( 26, (2,255), SearchPattern16, info_str=(SearchPattern16, "Search for: %s", "/%s") ),
+ ])
pkt.Reply( NO_LENGTH_CHECK, [
rec( 8, 9, SeachSequenceStruct ),
rec( 17, 1, Reserved ),
@@ -14226,9 +14262,9 @@ def define_ncp2222():
rec( 24, 1, PathCount, var="x" ),
rec( 25, 12, DstEnhNWHandlePathS1 ),
rec( 37, 1, PathCount, var="y" ),
- rec( 38, (2, 255), Path16, repeat="x" ),
+ rec( 38, (2, 255), Path16, repeat="x", info_str=(Path16, "Rename or Move: %s", "/%s") ),
rec( -1, (2,255), DestPath16, repeat="y" ),
- ], info_str=(Path16, "Rename or Move: %s", "/%s"))
+ ])
pkt.Reply(8)
pkt.CompletionCodes([0x0000, 0x0102, 0x8000, 0x8101, 0x8401, 0x8501,
0x8701, 0x8d00, 0x8e00, 0x8f00, 0x9001, 0x9200, 0x9600,
@@ -14246,8 +14282,8 @@ def define_ncp2222():
rec( 22, 1, DataTypeFlag ),
rec( 23, 5, Reserved5 ),
rec( 28, 1, PathCount, var="x" ),
- rec( 29, (2, 255), Path16, repeat="x" ),
- ], info_str=(Path16, "Scan Trustees for: %s", "/%s"))
+ rec( 29, (2, 255), Path16, repeat="x", info_str=(Path16, "Scan Trustees for: %s", "/%s") ),
+ ])
pkt.Reply(20, [
rec( 8, 4, SequenceNumber ),
rec( 12, 2, ObjectIDCount, var="x" ),
@@ -14275,8 +14311,8 @@ def define_ncp2222():
#rec( 22, 1, DataTypeFlag ),
#rec( 23, 5, Reserved5 ),
#rec( 28, 1, PathCount, var="x" ),
- #rec( 29, (2,255), Path16, repeat="x",),
- ], info_str=(Path16, "Obtain Info for: %s", "/%s"))
+ #rec( 29, (2,255), Path16, repeat="x", info_str=(Path16, "Obtain Info for: %s", "/%s")),
+ ])
pkt.Reply(NO_LENGTH_CHECK, [
srec( DSSpaceAllocateStruct, req_cond="(ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_alloc == 1)" ),
srec( PadDSSpaceAllocate, req_cond="(ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_alloc == 0)" ),
@@ -14363,8 +14399,8 @@ def define_ncp2222():
rec( 60, 1, DataTypeFlag ),
rec( 61, 5, Reserved5 ),
rec( 66, 1, PathCount, var="x" ),
- rec( 67, (2,255), Path16, repeat="x" ),
- ], info_str=(Path16, "Modify DOS Information for: %s", "/%s"))
+ rec( 67, (2,255), Path16, repeat="x", info_str=(Path16, "Modify DOS Information for: %s", "/%s") ),
+ ])
pkt.Reply(8)
pkt.CompletionCodes([0x0000, 0x0102, 0x7902, 0x8000, 0x8101, 0x8401, 0x8501,
0x8701, 0x8c01, 0x8d00, 0x8e00, 0x8f00, 0x9001, 0x9600,
@@ -14381,8 +14417,8 @@ def define_ncp2222():
rec( 18, 1, DataTypeFlag ),
rec( 19, 5, Reserved5 ),
rec( 24, 1, PathCount, var="x" ),
- rec( 25, (2,255), Path16, repeat="x" ),
- ], info_str=(Path16, "Delete a File or Subdirectory: %s", "/%s"))
+ rec( 25, (2,255), Path16, repeat="x", info_str=(Path16, "Delete a File or Subdirectory: %s", "/%s") ),
+ ])
pkt.Reply(8)
pkt.CompletionCodes([0x0000, 0x8000, 0x8101, 0x8401, 0x8501,
0x8701, 0x8900, 0x8a00, 0x8d00, 0x8e00, 0x8f00, 0x9001, 0x9600,
@@ -14400,8 +14436,8 @@ def define_ncp2222():
rec( 18, 1, DataTypeFlag ),
rec( 19, 5, Reserved5 ),
rec( 24, 1, PathCount, var="x" ),
- rec( 25, (2,255), Path16, repeat="x" ),
- ], info_str=(Path16, "Set Short Directory Handle to: %s", "/%s"))
+ rec( 25, (2,255), Path16, repeat="x", info_str=(Path16, "Set Short Directory Handle to: %s", "/%s") ),
+ ])
pkt.Reply(8)
pkt.CompletionCodes([0x0000, 0x8000, 0x8101, 0x8401, 0x8501,
0x8701, 0x8d00, 0x8f00, 0x9001, 0x9600,
@@ -14421,8 +14457,8 @@ def define_ncp2222():
rec( -1, 1, DataTypeFlag ),
rec( -1, 5, Reserved5 ),
rec( -1, 1, PathCount, var="x" ),
- rec( -1, (2,255), Path16, repeat="x" ),
- ], info_str=(Path16, "Add Trustee Set to: %s", "/%s"))
+ rec( -1, (2,255), Path16, repeat="x", info_str=(Path16, "Add Trustee Set to: %s", "/%s") ),
+ ])
pkt.Reply(8)
pkt.CompletionCodes([0x0000, 0x0102, 0x8000, 0x8101, 0x8401, 0x8501,
0x8701, 0x8c01, 0x8d00, 0x8f00, 0x9001, 0x9600,
@@ -14440,8 +14476,8 @@ def define_ncp2222():
rec( 25, 1, DataTypeFlag ),
rec( 26, 5, Reserved5 ),
rec( 31, 1, PathCount, var="x" ),
- rec( 32, (2,255), Path16, repeat="x" ),
- ], info_str=(Path16, "Delete Trustee Set from: %s", "/%s"))
+ rec( 32, (2,255), Path16, repeat="x", info_str=(Path16, "Delete Trustee Set from: %s", "/%s") ),
+ ])
pkt.Reply(8)
pkt.CompletionCodes([0x0000, 0x8000, 0x8101, 0x8401, 0x8501,
0x8701, 0x8c01, 0x8d00, 0x8f00, 0x9001, 0x9600,
@@ -14458,8 +14494,8 @@ def define_ncp2222():
rec( 18, 1, DataTypeFlag ),
rec( 19, 5, Reserved5 ),
rec( 24, 1, PathCount, var="x" ),
- rec( 25, (2,255), Path16, repeat="x" ),
- ], info_str=(Path16, "Allocate Short Directory Handle to: %s", "/%s"))
+ rec( 25, (2,255), Path16, repeat="x", info_str=(Path16, "Allocate Short Directory Handle to: %s", "/%s") ),
+ ])
pkt.Reply(NO_LENGTH_CHECK, [
srec( ReplyLevel2Struct, req_cond="ncp.alloc_reply_lvl2 == TRUE" ),
srec( ReplyLevel1Struct, req_cond="ncp.alloc_reply_lvl2 == FALSE" ),
@@ -14482,8 +14518,8 @@ def define_ncp2222():
rec( 24, 1, DataTypeFlag ),
rec( 25, 5, Reserved5 ),
rec( 30, 1, PathCount, var="x" ),
- rec( 31, (2,255), Path16, repeat="x" ),
- ], info_str=(Path16, "Scan for Deleted Files in: %s", "/%s"))
+ rec( 31, (2,255), Path16, repeat="x", info_str=(Path16, "Scan for Deleted Files in: %s", "/%s") ),
+ ])
pkt.Reply(NO_LENGTH_CHECK, [
rec( 8, 4, SequenceNumber ),
rec( 12, 2, DeletedTime ),
@@ -14556,8 +14592,8 @@ def define_ncp2222():
rec( 14, 4, VolumeID ),
rec( 18, 4, DirectoryBase ),
rec( 22, 1, DataTypeFlag ),
- rec( 23, (1,255), FileName16 ),
- ], info_str=(FileName16, "Recover Deleted File: %s", ", %s"))
+ rec( 23, (1,255), FileName16, info_str=(FileName16, "Recover Deleted File: %s", ", %s") ),
+ ])
pkt.Reply(8)
pkt.CompletionCodes([0x0000, 0x0102, 0x8000, 0x8101, 0x8401, 0x8501,
0x8701, 0x8d00, 0x8f00, 0x9001, 0x9600,
@@ -14624,8 +14660,8 @@ def define_ncp2222():
rec( 18, 1, DataTypeFlag ),
rec( 19, 5, Reserved5 ),
rec( 24, 1, PathCount, var="x" ),
- rec( 25, (2,255), Path16, repeat="x" ),
- ], info_str=(Path16, "Get Volume and Directory Base from: %s", "/%s"))
+ rec( 25, (2,255), Path16, repeat="x", info_str=(Path16, "Get Volume and Directory Base from: %s", "/%s") ),
+ ])
pkt.Reply(17, [
rec( 8, 4, DirectoryBase ),
rec( 12, 4, DOSDirectoryBase ),
@@ -14664,8 +14700,8 @@ def define_ncp2222():
rec( 26, 1, DataTypeFlag ),
rec( 27, 5, Reserved5 ),
rec( 32, 1, PathCount, var="x" ),
- rec( 33, (2,255), Path16, repeat="x" ),
- ], info_str=(Path16, "Get Full Path from: %s", "/%s"))
+ rec( 33, (2,255), Path16, repeat="x", info_str=(Path16, "Get Full Path from: %s", "/%s") ),
+ ])
pkt.Reply((24,277), [
rec( 8, 2, PathCookieFlags ),
rec( 10, 4, Cookie1 ),
@@ -14692,8 +14728,8 @@ def define_ncp2222():
rec( 22, 1, DataTypeFlag ),
rec( 23, 5, Reserved5 ),
rec( 28, 1, PathCount, var="x" ),
- rec( 29, (2,255), Path16, repeat="x" ),
- ], info_str=(Path16, "Get Effective Rights for: %s", "/%s"))
+ rec( 29, (2,255), Path16, repeat="x", info_str=(Path16, "Get Effective Rights for: %s", "/%s") ),
+ ])
pkt.Reply(NO_LENGTH_CHECK, [
rec( 8, 2, EffectiveRights, ENC_LITTLE_ENDIAN ),
srec( DSSpaceAllocateStruct, req_cond="(ncp.ext_info_newstyle == 0) && (ncp.ret_info_mask_alloc == 1)" ),
@@ -14756,8 +14792,8 @@ def define_ncp2222():
rec( 32, 1, DataTypeFlag ),
rec( 33, 5, Reserved5 ),
rec( 38, 1, PathCount, var="x" ),
- rec( 39, (2,255), Path16, repeat="x" ),
- ], info_str=(Path16, "Open or Create File: %s", "/%s"))
+ rec( 39, (2,255), Path16, repeat="x", info_str=(Path16, "Open or Create File: %s", "/%s") ),
+ ])
pkt.Reply(NO_LENGTH_CHECK, [
rec( 8, 4, FileHandle, ENC_BIG_ENDIAN ),
rec( 12, 1, OpenCreateAction ),
@@ -14820,8 +14856,8 @@ def define_ncp2222():
rec( 28, 1, DataTypeFlag ),
rec( 29, 5, Reserved5 ),
rec( 34, 1, PathCount, var="x" ),
- rec( 35, (2,255), Path16, repeat="x" ),
- ], info_str=(Path16, "Open or Create with Op-Lock: %s", "/%s"))
+ rec( 35, (2,255), Path16, repeat="x", info_str=(Path16, "Open or Create with Op-Lock: %s", "/%s") ),
+ ])
pkt.Reply( NO_LENGTH_CHECK, [
rec( 8, 4, FileHandle, ENC_BIG_ENDIAN ),
rec( 12, 1, OpenCreateAction ),
@@ -14901,8 +14937,8 @@ def define_ncp2222():
rec( 32, 1, DataTypeFlag ),
rec( 33, 5, Reserved5 ),
rec( 38, 1, PathCount, var="x" ),
- rec( 39, (2,255), Path16, repeat="x" ),
- ], info_str=(Path16, "Open or Create II with Op-Lock: %s", "/%s"))
+ rec( 39, (2,255), Path16, repeat="x", info_str=(Path16, "Open or Create II with Op-Lock: %s", "/%s") ),
+ ])
pkt.Reply( NO_LENGTH_CHECK, [
rec( 8, 4, FileHandle ),
rec( 12, 1, OpenCreateAction ),
@@ -14978,8 +15014,8 @@ def define_ncp2222():
rec( 26, 1, DataTypeFlag ),
rec( 27, 5, Reserved5 ),
rec( 32, 1, PathCount, var="x" ),
- rec( 33, (2,255), Path16, repeat="x" ),
- ], info_str=(Path16, "Modify DOS Attributes for: %s", "/%s"))
+ rec( 33, (2,255), Path16, repeat="x", info_str=(Path16, "Modify DOS Attributes for: %s", "/%s") ),
+ ])
pkt.Reply(24, [
rec( 8, 4, ItemsChecked ),
rec( 12, 4, ItemsChanged ),
@@ -15000,8 +15036,8 @@ def define_ncp2222():
rec( 17, 1, DataTypeFlag ),
rec( 18, 5, Reserved5 ),
rec( 23, 1, PathCount, var="x" ),
- rec( 24, (2,255), Path16, repeat="x" ),
- ], info_str=(Path16, "Get Disk Space Restriction for: %s", "/%s"))
+ rec( 24, (2,255), Path16, repeat="x", info_str=(Path16, "Get Disk Space Restriction for: %s", "/%s") ),
+ ])
pkt.Reply(18, [
rec( 8, 1, NumberOfEntries, var="x" ),
rec( 9, 9, SpaceStruct, repeat="x" ),
@@ -15021,8 +15057,8 @@ def define_ncp2222():
rec( 16, 2, ReturnInfoCount ),
rec( 18, 9, SeachSequenceStruct ),
rec( 27, 1, DataTypeFlag ),
- rec( 28, (2,255), SearchPattern16 ),
- ], info_str=(SearchPattern16, "Search for: %s", ", %s"))
+ rec( 28, (2,255), SearchPattern16, info_str=(SearchPattern16, "Search for: %s", ", %s") ),
+ ])
pkt.Reply(NO_LENGTH_CHECK, [
rec( 8, 9, SeachSequenceStruct ),
rec( 17, 1, MoreFlag ),
@@ -15080,8 +15116,8 @@ def define_ncp2222():
rec( 17, 1, DataTypeFlag ),
rec( 18, 5, Reserved5 ),
rec( 23, 1, PathCount, var="x" ),
- rec( 24, (2,255), Path16, repeat="x" ),
- ], info_str=(Path16, "Get Disk Space Restriction for: %s", "/%s"))
+ rec( 24, (2,255), Path16, repeat="x", info_str=(Path16, "Get Disk Space Restriction for: %s", "/%s") ),
+ ])
pkt.Reply(NO_LENGTH_CHECK, [
rec( -1, 8, MaxSpace64, req_cond = "(ncp.info_level_num == 0)" ),
rec( -1, 8, MinSpaceLeft64, req_cond = "(ncp.info_level_num == 0)" ),
@@ -15119,9 +15155,9 @@ rec( 9, 4, ObjectID ),
rec( 26, 4, EAAccessFlag ),
rec( 30, 1, DataTypeFlag ),
rec( 31, 2, EAValueLength, var='x' ),
- rec( 33, (2,64), EAKey ),
+ rec( 33, (2,64), EAKey, info_str=(EAKey, "Write Extended Attribute: %s", ", %s") ),
rec( -1, 1, EAValueRep, repeat='x' ),
- ], info_str=(EAKey, "Write Extended Attribute: %s", ", %s"))
+ ])
pkt.Reply(20, [
rec( 8, 4, EAErrorCodes ),
rec( 12, 4, EABytesWritten ),
@@ -15139,8 +15175,8 @@ rec( 9, 4, ObjectID ),
rec( 22, 4, InspectSize ),
rec( 26, 1, DataTypeFlag ),
rec( 27, 2, MaxReadDataReplySize ),
- rec( 29, (2,512), EAKey ),
- ], info_str=(EAKey, "Read Extended Attribute: %s", ", %s"))
+ rec( 29, (2,512), EAKey, info_str=(EAKey, "Read Extended Attribute: %s", ", %s") ),
+ ])
pkt.Reply((26,536), [
rec( 8, 4, EAErrorCodes ),
rec( 12, 4, TtlValuesLength ),
@@ -15159,8 +15195,8 @@ rec( 9, 4, ObjectID ),
rec( 18, 4, InspectSize ),
rec( 22, 2, SequenceNumber ),
rec( 24, 1, DataTypeFlag ),
- rec( 25, (2,512), EAKey ),
- ], info_str=(EAKey, "Enumerate Extended Attribute: %s", ", %s"))
+ rec( 25, (2,512), EAKey, info_str=(EAKey, "Enumerate Extended Attribute: %s", ", %s") ),
+ ])
pkt.Reply(28, [
rec( 8, 4, EAErrorCodes ),
rec( 12, 4, TtlEAs ),
@@ -15483,9 +15519,9 @@ rec( 9, 4, ObjectID ),
# 2222/61, 97
pkt = NCP(0x61, "Get Big Packet NCP Max Packet Size", 'connection')
pkt.Request(10, [
- rec( 7, 2, ProposedMaxSize, ENC_BIG_ENDIAN ),
+ rec( 7, 2, ProposedMaxSize, ENC_BIG_ENDIAN, info_str=(ProposedMaxSize, "Get Big Max Packet Size - %d", ", %d") ),
rec( 9, 1, SecurityFlag ),
- ],info_str=(ProposedMaxSize, "Get Big Max Packet Size - %d", ", %d"))
+ ])
pkt.Reply(13, [
rec( 8, 2, AcceptedMaxSize, ENC_BIG_ENDIAN ),
rec( 10, 2, EchoSocket, ENC_BIG_ENDIAN ),
@@ -15703,8 +15739,8 @@ rec( 9, 4, ObjectID ),
rec( 7, 1, DirHandle ),
rec( 8, 1, LockFlag ),
rec( 9, 2, TimeoutLimit ),
- rec( 11, (1, 256), FilePath ),
- ], info_str=(FilePath, "Log File: %s", "/%s"))
+ rec( 11, (1, 256), FilePath, info_str=(FilePath, "Log File: %s", "/%s") ),
+ ])
pkt.Reply(8)
pkt.CompletionCodes([0x0000, 0x7f00, 0x8200, 0x9600, 0xfe0d, 0xff01])
# 2222/6A, 106
@@ -15719,8 +15755,8 @@ rec( 9, 4, ObjectID ),
pkt.Request( (11, 266), [
rec( 7, 1, LockFlag ),
rec( 8, 2, TimeoutLimit ),
- rec( 10, (1, 256), SynchName ),
- ], info_str=(SynchName, "Log Logical Record: %s", ", %s"))
+ rec( 10, (1, 256), SynchName, info_str=(SynchName, "Log Logical Record: %s", ", %s") ),
+ ])
pkt.Reply(8)
pkt.CompletionCodes([0x0000, 0x7f00, 0x9600, 0xfe0d, 0xff01])
# 2222/6C, 108
@@ -15754,8 +15790,8 @@ rec( 9, 4, ObjectID ),
pkt = NCP(0x6F00, "Open/Create a Semaphore", 'sync', has_length=0)
pkt.Request((10,521), [
rec( 8, 1, InitialSemaphoreValue ),
- rec( 9, (1, 512), SemaphoreName ),
- ], info_str=(SemaphoreName, "Open/Create Semaphore: %s", ", %s"))
+ rec( 9, (1, 512), SemaphoreName, info_str=(SemaphoreName, "Open/Create Semaphore: %s", ", %s") ),
+ ])
pkt.Reply(13, [
rec( 8, 4, SemaphoreHandle ),
rec( 12, 1, SemaphoreOpenCount ),
@@ -15821,8 +15857,8 @@ rec( 9, 4, ObjectID ),
rec( 42, 8, sourceReturnTime ),
rec( 50, 8, eventOffset ),
rec( 58, 4, eventTime ),
- rec( 62, (1,50), ServerNameLen ),
- ], info_str=(ServerNameLen, "Timesync Exchange Time: %s", ", %s"))
+ rec( 62, (1,50), ServerNameLen, info_str=(ServerNameLen, "Timesync Exchange Time: %s", ", %s") ),
+ ])
pkt.Reply((64,113), [
rec( 8, 3, Reserved3 ),
rec( 11, 4, protocolFlags ),
@@ -16545,8 +16581,8 @@ rec( 9, 4, ObjectID ),
pkt.Request((15,64), [
rec(10, 2, ServerType ),
rec(12, 2, Reserved2 ),
- rec(14, (1,50), ServerNameLen ),
- ], info_str=(ServerNameLen, "Get Server Information: %s", ", %s"))
+ rec(14, (1,50), ServerNameLen, info_str=(ServerNameLen, "Get Server Information: %s", ", %s") ),
+ ])
pkt.Reply(30, [
rec(8, 4, CurrentServerTime ),
rec(12, 1, VConsoleVersion ),
@@ -16562,8 +16598,8 @@ rec( 9, 4, ObjectID ),
rec(10, 4, StartNumber ),
rec(14, 2, ServerType ),
rec(16, 2, Reserved2 ),
- rec(18, (1,50), ServerNameLen ),
- ], info_str=(ServerNameLen, "Get Server Sources Info: %s", ", %s"))
+ rec(18, (1,50), ServerNameLen, info_str=(ServerNameLen, "Get Server Sources Info: %s", ", %s") ),
+ ])
pkt.Reply(32, [
rec(8, 4, CurrentServerTime ),
rec(12, 1, VConsoleVersion ),
@@ -16629,8 +16665,8 @@ rec( 9, 4, ObjectID ),
# 2222/7B3E, 123/62
pkt = NCP(0x7B3E, "Get Server Set Commands Information By Name", 'stats')
pkt.Request(NO_LENGTH_CHECK, [
- rec(10, PROTO_LENGTH_UNKNOWN, SetParmName ),
- ], info_str=(SetParmName, "Get Server Set Command Info for: %s", ", %s"))
+ rec(10, PROTO_LENGTH_UNKNOWN, SetParmName, info_str=(SetParmName, "Get Server Set Command Info for: %s", ", %s") ),
+ ])
pkt.Reply(NO_LENGTH_CHECK, [
rec(8, 4, CurrentServerTime ),
rec(12, 1, VConsoleVersion ),
@@ -16723,8 +16759,8 @@ rec( 9, 4, ObjectID ),
pkt.Request(NO_LENGTH_CHECK, [
rec(10, 4, NLMLoadOptions ),
rec(14, 16, Reserved16 ),
- rec(30, PROTO_LENGTH_UNKNOWN, PathAndName ),
- ], info_str=(PathAndName, "RPC Load NLM: %s", ", %s"))
+ rec(30, PROTO_LENGTH_UNKNOWN, PathAndName, info_str=(PathAndName, "RPC Load NLM: %s", ", %s") ),
+ ])
pkt.Reply(12, [
rec(8, 4, RPCccode ),
])
@@ -16733,8 +16769,8 @@ rec( 9, 4, ObjectID ),
pkt = NCP(0x8302, "RPC Unload an NLM", 'remote')
pkt.Request(NO_LENGTH_CHECK, [
rec(10, 20, Reserved20 ),
- rec(30, PROTO_LENGTH_UNKNOWN, NLMName ),
- ], info_str=(NLMName, "RPC Unload NLM: %s", ", %s"))
+ rec(30, PROTO_LENGTH_UNKNOWN, NLMName, info_str=(NLMName, "RPC Unload NLM: %s", ", %s") ),
+ ])
pkt.Reply(12, [
rec(8, 4, RPCccode ),
])
@@ -16743,8 +16779,8 @@ rec( 9, 4, ObjectID ),
pkt = NCP(0x8303, "RPC Mount Volume", 'remote')
pkt.Request(NO_LENGTH_CHECK, [
rec(10, 20, Reserved20 ),
- rec(30, PROTO_LENGTH_UNKNOWN, VolumeNameStringz ),
- ], info_str=(VolumeNameStringz, "RPC Mount Volume: %s", ", %s"))
+ rec(30, PROTO_LENGTH_UNKNOWN, VolumeNameStringz, info_str=(VolumeNameStringz, "RPC Mount Volume: %s", ", %s") ),
+ ])
pkt.Reply(32, [
rec(8, 4, RPCccode),
rec(12, 16, Reserved16 ),
@@ -16755,8 +16791,8 @@ rec( 9, 4, ObjectID ),
pkt = NCP(0x8304, "RPC Dismount Volume", 'remote')
pkt.Request(NO_LENGTH_CHECK, [
rec(10, 20, Reserved20 ),
- rec(30, PROTO_LENGTH_UNKNOWN, VolumeNameStringz ),
- ], info_str=(VolumeNameStringz, "RPC Dismount Volume: %s", ", %s"))
+ rec(30, PROTO_LENGTH_UNKNOWN, VolumeNameStringz, info_str=(VolumeNameStringz, "RPC Dismount Volume: %s", ", %s") ),
+ ])
pkt.Reply(12, [
rec(8, 4, RPCccode ),
])
@@ -16765,8 +16801,8 @@ rec( 9, 4, ObjectID ),
pkt = NCP(0x8305, "RPC Add Name Space To Volume", 'remote')
pkt.Request(NO_LENGTH_CHECK, [
rec(10, 20, Reserved20 ),
- rec(30, PROTO_LENGTH_UNKNOWN, AddNameSpaceAndVol ),
- ], info_str=(AddNameSpaceAndVol, "RPC Add Name Space to Volume: %s", ", %s"))
+ rec(30, PROTO_LENGTH_UNKNOWN, AddNameSpaceAndVol, info_str=(AddNameSpaceAndVol, "RPC Add Name Space to Volume: %s", ", %s") ),
+ ])
pkt.Reply(12, [
rec(8, 4, RPCccode ),
])
@@ -16778,11 +16814,11 @@ rec( 9, 4, ObjectID ),
rec(11, 3, Reserved3 ),
rec(14, 4, SetCmdValueNum ),
rec(18, 12, Reserved12 ),
- rec(30, PROTO_LENGTH_UNKNOWN, SetCmdName ),
+ rec(30, PROTO_LENGTH_UNKNOWN, SetCmdName, info_str=(SetCmdName, "RPC Set Command Value: %s", ", %s") ),
#
# XXX - optional string, if SetCmdType is 0
#
- ], info_str=(SetCmdName, "RPC Set Command Value: %s", ", %s"))
+ ])
pkt.Reply(12, [
rec(8, 4, RPCccode ),
])
@@ -16791,8 +16827,8 @@ rec( 9, 4, ObjectID ),
pkt = NCP(0x8307, "RPC Execute NCF File", 'remote')
pkt.Request(NO_LENGTH_CHECK, [
rec(10, 20, Reserved20 ),
- rec(30, PROTO_LENGTH_UNKNOWN, PathAndName ),
- ], info_str=(PathAndName, "RPC Execute NCF File: %s", ", %s"))
+ rec(30, PROTO_LENGTH_UNKNOWN, PathAndName, info_str=(PathAndName, "RPC Execute NCF File: %s", ", %s") ),
+ ])
pkt.Reply(12, [
rec(8, 4, RPCccode ),
])