docs: document AFP deleted-file info backend dependency

This commit is contained in:
OpenAI
2026-05-31 06:27:12 +00:00
committed by Mario Fetka
parent d35e699896
commit 9b999071f7

View File

@@ -0,0 +1,57 @@
# 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 Files
- `NCP 0x2222 / 87 / 17` - Recover Salvageable File
- `NCP 0x2222 / 87 / 18` - Purge Salvageable File
- optional legacy `NCP 0x2222 / 22 / 27` - Scan Salvageable File (old)
Once that backend is present, AFP `0x13` should only translate the WebSDK/NWAFP
wire request to the mars_nwe salvage entry and then append AFP-specific deleted
Macintosh metadata.
## Intended future mapping
When the salvage backend exists, AFP `0x13` should behave like this:
1. Validate the request volume and DOS directory entry.
2. Look up the deleted entry through the mars_nwe salvage/deleted-entry backend.
3. Return FinderInfo from the AFP metadata store when available, otherwise zeroes.
4. Return ProDOS information as zeroes unless mars_nwe gains a real ProDOS store.
5. Return resource fork size as zero while resource forks remain unsupported.
6. 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:
```text
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.