docs: audit data migration endpoint stubs
This commit is contained in:
20
AI.md
20
AI.md
@@ -606,3 +606,23 @@ Latest endpoint audit checkpoint from patch 0223:
|
||||
- This block is local synchronization, not `nwnds`/directory work.
|
||||
|
||||
Next patch number should be `0224`.
|
||||
|
||||
Latest endpoint audit checkpoint from patch 0224:
|
||||
|
||||
- SDK `0x2222/90` / wire `0x5a` Data Migration / parse-tree / compression
|
||||
metadata is now source-stub-audited as planned NetWare-4.x filesystem and
|
||||
namespace work. There was no active top-level handler in `src/nwconn.c`.
|
||||
- Patch `0224` records the selector map behind `MARS_NWE_4`: `90/00` Parse
|
||||
Tree, `90/10` Get Reference Count from Dir Entry Number, `90/11` Get
|
||||
Reference Count from Dir Handle, `90/12` Set Compressed File Size,
|
||||
`90/128` Move File Data To DM, `90/129` DM File Information, `90/130`
|
||||
Volume DM Status, `90/131` Migrator Status Info, `90/132` DM Support Module
|
||||
Information, `90/133` Move File Data From DM, `90/134` Get/Set Default
|
||||
Read-Write Support Module ID, `90/135` DM Support Module Capacity Request,
|
||||
`90/136` RTDM Request, and `90/150` File Migration Request.
|
||||
- The future owner is the filesystem/namespace provider, not `nwnds`. There
|
||||
is no active Data Migration support module, parse-tree engine, compressed
|
||||
file-size backend, or RTDM provider yet. Keep this as unsupported `0xfb`
|
||||
unless the filesystem provider grows real backing state.
|
||||
|
||||
Next patch number should be `0225`.
|
||||
|
||||
12
TODO.md
12
TODO.md
@@ -211,6 +211,13 @@ Present in the code but not yet fully endpoint-audited:
|
||||
semaphore calls remain the active compatibility implementation; patch 0223
|
||||
records `111/00`..`111/04` as disabled `#if 0` selector slots in
|
||||
`src/nwconn.c` so the future semaphore provider can bridge both families.
|
||||
- SDK `0x2222/90` / wire `0x5a` Data Migration / tree metadata is
|
||||
source-stub-audited as planned 4.x filesystem/namespace work. Patch 0224
|
||||
records the 4.x-era `90/00`, `90/10`, `90/11`, `90/12`, `90/128`..`90/136`,
|
||||
and `90/150` selector slots behind `MARS_NWE_4` in `src/nwconn.c`. There is
|
||||
no active data-migration support module, compression metadata backend, or
|
||||
parse-tree provider yet; future ownership belongs to the filesystem/namespace
|
||||
provider, not `nwnds`.
|
||||
- SDK `0x2222/17` / wire `0x11` direct Print/Spool is source-stub-audited
|
||||
as a NetWare 2.x/3.x/4.x compatibility family. There is no active
|
||||
top-level handler for these legacy direct spool NCPs, so patch 0218 records
|
||||
@@ -236,9 +243,8 @@ Present in the code but not yet fully endpoint-audited:
|
||||
SDK-listed blocks that do not currently show a top-level handler in
|
||||
`src/nwconn.c`:
|
||||
|
||||
- SDK `0x2222/90` / wire `0x5a` Data Migration/Compression/Parse Tree,
|
||||
SDK `0x2222/92` / wire `0x5c` SecretStore, SDK `0x2222/123` / wire `0x7b`
|
||||
service-address enumeration, and SDK `0x2222/131` / wire `0x83`
|
||||
- SDK `0x2222/92` / wire `0x5c` SecretStore, SDK `0x2222/123` / wire
|
||||
`0x7b` service-address enumeration, and SDK `0x2222/131` / wire `0x83`
|
||||
RPC/NLM-control style calls appear in the PDF/WebSDK index but do not
|
||||
currently show top-level handlers in `src/nwconn.c`. These are likely
|
||||
later-generation buckets, but each must be confirmed against the
|
||||
|
||||
123
src/nwconn.c
123
src/nwconn.c
@@ -6986,6 +6986,129 @@ static int handle_ncp_serv(void)
|
||||
break;
|
||||
#endif
|
||||
|
||||
|
||||
#if MARS_NWE_4
|
||||
case 0x5a : { /* SDK 90 / wire 0x5a Data Migration / tree metadata.
|
||||
*
|
||||
* Source outcome: no active top-level handler existed for
|
||||
* this 4.x-era family. Keep the selector map disabled
|
||||
* behind MARS_NWE_4 until the filesystem/namespace provider
|
||||
* has real tree parsing, compression, reference-count, and
|
||||
* data-migration state.
|
||||
*
|
||||
* Request handoff: requestdata[0] is the SDK 90
|
||||
* SubFunctionCode. Most fields in this family are
|
||||
* documented by the NDK as Lo-Hi payload fields after the
|
||||
* normal SubFuncStrucLen/SubFunctionCode prefix.
|
||||
* Reply ownership: this local slot would return a normal
|
||||
* NCP Completion plus optional payload. No data migration
|
||||
* support module or compression backend exists here yet.
|
||||
* Future owner: filesystem/namespace provider, not nwnds.
|
||||
*/
|
||||
int dm_sub = (requestlen > (int)sizeof(NCPREQUEST))
|
||||
? (int)requestdata[0] : -1;
|
||||
|
||||
switch (dm_sub) {
|
||||
case 0x00: /* Parse Tree.
|
||||
* Request: InformationMask, InformationMask2,
|
||||
* reserved, limbCount, limbStruct[].
|
||||
* Reply: limbCompletedCnt, ItemsCount,
|
||||
* nextLimbScanNum, InfoBlock[].
|
||||
* Future owner: namespace tree scanner.
|
||||
*/
|
||||
completition = 0xfb;
|
||||
break;
|
||||
case 0x0a: /* Get Reference Count from Dir Entry Number.
|
||||
* Request: Volume, DirBase, NameSpace.
|
||||
* Reply: ReferenceCount.
|
||||
*/
|
||||
completition = 0xfb;
|
||||
break;
|
||||
case 0x0b: /* Get Reference Count from Dir Handle.
|
||||
* Request: DirectoryHandle.
|
||||
* Reply: ReferenceCount.
|
||||
*/
|
||||
completition = 0xfb;
|
||||
break;
|
||||
case 0x0c: /* Set Compressed File Size.
|
||||
* Request: file identity plus compressed size
|
||||
* fields as documented for SDK 90/12.
|
||||
* Reply: no payload; Completion reports status.
|
||||
* Future owner: filesystem/compression metadata.
|
||||
*/
|
||||
completition = 0xfb;
|
||||
break;
|
||||
case 0x80: /* Move File Data To DM.
|
||||
* Request: Volume, DirectoryEntry, NameSpace,
|
||||
* SupportModuleID, Flags.
|
||||
* Reply: no payload; Completion reports status.
|
||||
*/
|
||||
completition = 0xfb;
|
||||
break;
|
||||
case 0x81: /* DM File Information.
|
||||
* Request: file identity and name-space fields.
|
||||
* Reply: DMInfoEntries plus DMINFO records.
|
||||
*/
|
||||
completition = 0xfb;
|
||||
break;
|
||||
case 0x82: /* Volume DM Status.
|
||||
* Request: Volume, SupportModuleID.
|
||||
* Reply: migration counters and space totals.
|
||||
*/
|
||||
completition = 0xfb;
|
||||
break;
|
||||
case 0x83: /* Migrator Status Info.
|
||||
* Request: SubFunctionCode only.
|
||||
* Reply: DMPresentFlag, DMmajorVersion,
|
||||
* DMminorVersion.
|
||||
*/
|
||||
completition = 0xfb;
|
||||
break;
|
||||
case 0x84: /* DM Support Module Information.
|
||||
* Request: InfoLevel, SupportModuleID.
|
||||
* Reply: level-dependent support-module data.
|
||||
*/
|
||||
completition = 0xfb;
|
||||
break;
|
||||
case 0x85: /* Move File Data From DM.
|
||||
* Request: Volume, DirectoryEntry, NameSpace,
|
||||
* SupportModuleID, Flags.
|
||||
* Reply: no payload; Completion reports status.
|
||||
*/
|
||||
completition = 0xfb;
|
||||
break;
|
||||
case 0x86: /* Get/Set Default Read-Write Support Module ID.
|
||||
* Request: Get/SetFlag, SupportModuleID.
|
||||
* Reply: SupportModuleID.
|
||||
*/
|
||||
completition = 0xfb;
|
||||
break;
|
||||
case 0x87: /* DM Support Module Capacity Request.
|
||||
* Request: SMCapacityReq.
|
||||
* Reply: block size, total blocks, used blocks.
|
||||
*/
|
||||
completition = 0xfb;
|
||||
break;
|
||||
case 0x88: /* RTDM Request.
|
||||
* Request: Verb plus VerbData.
|
||||
* Reply: verb-specific; no RTDM provider exists.
|
||||
*/
|
||||
completition = 0xfb;
|
||||
break;
|
||||
case 0x96: /* File Migration Request.
|
||||
* Request/Reply: migration-operation specific
|
||||
* file request carried in SDK 90/150.
|
||||
* Future owner: filesystem/data-migration bridge.
|
||||
*/
|
||||
completition = 0xfb;
|
||||
break;
|
||||
default: completition = 0xfb;
|
||||
break;
|
||||
}
|
||||
}
|
||||
break;
|
||||
#endif
|
||||
|
||||
#ifdef _MAR_TESTS_XX
|
||||
case 0x5f : { /* ????????????? UNIX Client */
|
||||
/* a 4.1 Server also do not know this call */
|
||||
|
||||
Reference in New Issue
Block a user