diff --git a/TODO.md b/TODO.md index e9e20b0..55a2723 100644 --- a/TODO.md +++ b/TODO.md @@ -199,8 +199,9 @@ Current status: - `AFP Get File Information` is implemented for read-only path-based requests. Linux smoke coverage exists in `tests/linux/afp_file_info_smoke` and has been verified against `SYS:`, `SYS:PUBLIC`, `SYS:SYSTEM`, and `SYS:BURST`. - The same test can exercise the AFP 2.0 Get File Information subfunction via - `--afp20`, using the same path-backed read-only reply for now. The current + The same test verifies the AFP 2.0 Get File Information subfunction via + `--afp20` against the same paths, using the same path-backed read-only reply + for now. The current reply fills stat/libatalk-derived fields and leaves persistent CNID Parent ID / fuller Mac namespace metadata as future work. - The AFP dispatcher now decodes the WebSDK/NWAFP subfunction number in diff --git a/tests/linux/README.md b/tests/linux/README.md index e3c572e..d37a306 100644 --- a/tests/linux/README.md +++ b/tests/linux/README.md @@ -89,12 +89,16 @@ Useful smoke cases for a standard MARS-NWE `SYS` volume are: ./tests/linux/afp_file_info_smoke -S MARS -U SUPERVISOR -P secret SYS:BURST # AFP 2.0 variant using the same path-backed read-only reply +./tests/linux/afp_file_info_smoke --afp20 -S MARS -U SUPERVISOR -P secret SYS: ./tests/linux/afp_file_info_smoke --afp20 -S MARS -U SUPERVISOR -P secret SYS:PUBLIC +./tests/linux/afp_file_info_smoke --afp20 -S MARS -U SUPERVISOR -P secret SYS:SYSTEM +./tests/linux/afp_file_info_smoke --afp20 -S MARS -U SUPERVISOR -P secret SYS:BURST ``` -The AFP 2.0 mode is selected with `--afp20` and currently exercises the same -path-backed read-only reply as the older call. The current implementation -fills fields that can be derived from Unix `stat(2)` and the optional libatalk +The AFP 2.0 mode is selected with `--afp20`. It has been verified against +the same `SYS:`, `SYS:PUBLIC`, `SYS:SYSTEM`, and `SYS:BURST` paths and +currently exercises the same path-backed read-only reply as the older call. +The current implementation fills fields that can be derived from Unix `stat(2)` and the optional libatalk helper wrappers. Server-side diagnostics mark stat-derived temporary Entry IDs with `fallback`; Parent ID, persistent CNID/AppleDouble IDs, and fuller Finder Info/resource-fork semantics remain