2.4 KiB
AFP deleted-file Macintosh metadata
AFP Get Macintosh Info On Deleted Files is NetWare AFP subfunction 0x13.
Keep it documented as an unsupported, salvage-backend-dependent endpoint for the
current AFP compatibility slice.
Why this is not implemented directly
The request is not a normal path, name, or file-handle metadata query. It is keyed by a volume number and a DOS directory entry for a deleted Macintosh directory entry. The reply shape is also salvage-specific: Finder information, ProDOS information, resource fork size, and the deleted file name.
That means the AFP call is an adapter on top of NetWare salvage/deleted-entry state, not an independent AFP metadata lookup. Implementing it directly in the AFP handler would create a parallel deleted-file path and would violate the current rule that AFP endpoints reuse mars_nwe backend semantics.
Required mars_nwe backend first
Before implementing AFP subfunction 0x13, the normal NetWare salvage backend
must exist and be verified. The relevant non-AFP NCP family is:
NCP 0x2222 / 87 / 16- Scan Salvageable FilesNCP 0x2222 / 87 / 17- Recover Salvageable FileNCP 0x2222 / 87 / 18- Purge Salvageable File- optional legacy
NCP 0x2222 / 22 / 27- Scan Salvageable File (old)
AFP 0x13 translates the WebSDK/NWAFP
wire request to the mars_nwe salvage entry and then append AFP-specific deleted
Macintosh metadata.
Intended future mapping
AFP 0x13 behaves like this:
- Validate the request volume and DOS directory entry.
- Look up the deleted entry through the mars_nwe salvage/deleted-entry backend.
- Return FinderInfo from the AFP metadata store when available, otherwise zeroes.
- Return ProDOS information from the Salvage JSON snapshot (
prodos_info_hex), which is captured from the nwatalk ProDOSInfo xattr backend. - Return resource fork size as zero while resource forks remain unsupported.
- Return the deleted file name from the salvage entry, not from a live path scan.
Current audit status
Current status for the AFP inventory and final audit:
0x13 AFP Get Macintosh Info On Deleted Files
status: unsupported / final-audit item
reason: requires mars_nwe salvage/deleted-entry backend first
do not: implement a standalone AFP-local deleted-file scan
This keeps the AFP implementation aligned with the rest of the current design: NetWare semantics come from mars_nwe core paths, while AFP-only metadata is kept small and explicit.