tests: record WebSDK AFP get scan info smoke success
This commit is contained in:
@@ -712,6 +712,41 @@ If the server was built without the optional Netatalk/libatalk backend, use
|
||||
when a scan continuation is expected to reach the end of the directory.
|
||||
|
||||
|
||||
### AFP Get/Scan WebSDK layout smoke
|
||||
|
||||
The AFP file-information helpers now verify the WebSDK/NWAFP wire layouts for
|
||||
Get File Information and Scan File Information. The legacy Get File
|
||||
Information reply (`0x05`) is a single 114-byte AFP file-information record.
|
||||
The AFP 2.0 Get File Information reply (`0x0f`) is a 120-byte record that
|
||||
includes the trailing ProDOSInfo field.
|
||||
|
||||
Scan replies use the documented WebSDK shape rather than the old mars_nwe
|
||||
smoke-only layout: a two-byte ActualResponseCount field at offset 0 followed by
|
||||
the first AFP file-information record at offset 2. The legacy Scan File
|
||||
Information reply therefore has a 116-byte payload for one result, while the AFP
|
||||
2.0 Scan File Information reply has a 122-byte payload for one result. The
|
||||
helper rejects the old layout where the Entry ID appeared directly at offset 0.
|
||||
|
||||
Verified runtime output from the WebSDK-layout smoke run:
|
||||
|
||||
```text
|
||||
AFP File Info subfunction=0x05 path=SYS:PUBLIC/pmdflts.ini entry_id=0x3003df97 parent_id=0x00000000 attrs=0x2000 data_len=8161 resource_len=0 offspring=0 long_name=pmdflts.ini short_name=pmdflts.ini rights=0x9f00 reply_len=114
|
||||
AFP Scan File Info subfunction=0x11 path=SYS:PUBLIC last_seen=0x00000000 desired=1 actual_count=1 next_last_seen=0x00000004 entry_id=0x00000004 parent_id=0x00000000 attrs=0x2000 data_len=44424 resource_len=0 offspring=0 long_name=debug.exe short_name=debug.exe rights=0x9f00 reply_len=122
|
||||
```
|
||||
|
||||
Server diagnostics from the same run show the normalized scan response count in
|
||||
addition to the first returned Entry ID:
|
||||
|
||||
```text
|
||||
AFP 2.0 Scan File Information: vol=0 entry=0x00000000 last=0x00000000 desired=1 mask=0xffff req=0xffff path='SYS:PUBLIC' count=1 reply_entry=0x00000004
|
||||
```
|
||||
|
||||
Runtime status: the full AFP smoke suite verified WebSDK Get/Scan layouts,
|
||||
including `reply_len=114` for legacy Get File Information and `actual_count=1`
|
||||
plus `reply_len=122` for AFP 2.0 Scan File Information, then ended with
|
||||
`failures=0`.
|
||||
|
||||
|
||||
## AFP Set File Information metadata smoke test
|
||||
|
||||
`afp_set_file_info_smoke` sends the WebSDK-documented NetWare AFP Set File
|
||||
|
||||
Reference in New Issue
Block a user