docs: audit file server statistics stubs

This commit is contained in:
Mario Fetka
2026-06-02 18:16:00 +00:00
parent c62e79c57d
commit 7d29ace7d1
3 changed files with 69 additions and 1 deletions

21
AI.md
View File

@@ -864,4 +864,23 @@ Latest endpoint audit checkpoint from patch 0241:
state is modeled by the servermgmt/information provider with volume-provider
input. Do not route this read-only data plane through `nwserv`.
Next patch number should be `0242`.
Latest endpoint audit checkpoint from patch 0242:
- Continuing the corrected NDK-first pass, SDK `0x2222/23` / wire `0x17`
File Server Environment now records the NetWare-2.x server statistics block
`23/212` through `23/217` as disabled source stubs in `src/nwbind.c`: Get
File System Statistics, Get Transaction Tracking Statistics, Read Disk Cache
Statistics, Get Drive Mapping Table, Read Physical Disk Statistics, and Get
Disk Channel Statistics.
- These selectors are reached through the normal `nwconn.c` File Server
Environment forward path into `nwbind.c`. There was no active implementation
for the wire `0xd4`..`0xd9` subfunction slots before this documentation
marker.
- Do not synthesize fake NetWare FAT/cache, TTS, SFT mirror, physical-disk, or
disk-channel counter blocks. Future ownership belongs to a servermgmt/
statistics provider backed by real filesystem, volume, and backend state.
- The next NDK-first `23/xx` statistics/monitoring audit block should continue
with the nearby open-file/lock/semaphore/usage selectors such as `23/219`
through `23/242`, keeping small reviewable sub-blocks.
Next patch number should be `0243`.

23
TODO.md
View File

@@ -1474,3 +1474,26 @@ Follow-up:
- Continue endpoint audit by selecting the next documented 1.x/2.x/3.x gap or
planned 4.x endpoint from the NDK first, then checking whether mars-nwe already
has an active case, an existing disabled stub, or no source marker.
### File Server Environment 23/212..217 NDK-first statistics stubs
Current status:
- The NDK-first pass over SDK `0x2222/23` found the in-scope NetWare-2.x server
statistics selector run `23/212` through `23/217`: Get File System
Statistics, Get Transaction Tracking Statistics, Read Disk Cache Statistics,
Get Drive Mapping Table, Read Physical Disk Statistics, and Get Disk Channel
Statistics.
- Patch `0242` records these as disabled `#if 0` source stubs in `src/nwbind.c`
at wire subfunctions `0xd4` through `0xd9`. They remain disabled because the
current backend does not model NetWare FAT/cache, TTS, SFT mirror, physical
disk, or disk-channel tables.
- Future implementation belongs to a servermgmt/statistics provider using real
filesystem, volume, and backend state. Do not invent fake counter blocks just
to satisfy legacy monitoring callers.
Follow-up:
- Continue the NDK-first File Server Environment monitoring/statistics audit with
the nearby open-file, lock, semaphore, usage, and volume-information selectors
such as `23/219` through `23/242`, split into small reviewable blocks.

View File

@@ -3023,6 +3023,32 @@ static void handle_fxx(int gelen, int func)
*/
return(-1);
break;
case 0xd4 : /* SDK 23/212 / wire 0xd4 Get File System Statistics */
case 0xd5 : /* SDK 23/213 / wire 0xd5 Get Transaction Tracking Statistics */
case 0xd6 : /* SDK 23/214 / wire 0xd6 Read Disk Cache Statistics */
case 0xd7 : /* SDK 23/215 / wire 0xd7 Get Drive Mapping Table */
case 0xd8 : /* SDK 23/216 / wire 0xd8 Read Physical Disk Statistics */
case 0xd9 : /* SDK 23/217 / wire 0xd9 Get Disk Channel Statistics */
/*
* NetWare 2.x server-environment statistics block. The
* local NDK/Core Protocols PDF documents these as console-
* rights-protected queries returning uptime interval markers
* plus real filesystem, TTS, cache, drive-mapping, physical-
* disk, or disk-channel counters/tables. The uploaded
* WebSDK/include material exposes matching server-statistics
* APIs such as NWGetFileSystemStats, NWGetDiskCacheStats,
* NWGetPhysicalDiskStats, GetDriveMappingTable, and the NLM
* Get*Stats forms.
*
* MARS-NWE does not currently maintain NetWare FAT/cache,
* TTS, SFT mirror, physical-disk, or disk-channel tables, so
* do not synthesize fake counter blocks. Future ownership
* belongs to a servermgmt/statistics provider with real
* filesystem, volume, and transport/backend input.
*/
return(-1);
break;
case 0xe8 : /* SDK 23/232 / wire 0xe8 Get File Server Misc Information */
case 0xeb : /* SDK 23/235 / wire 0xeb Get Connection's Open Files */
/*