Files
mars-dosutils/test/remove/README.md
Mario Fetka 5da600c2a5 dosutils: match Novell paths for flags and trustees
Move FLAG, GRANT and REMOVE closer to the request paths used by the
Novell tools and extend the DOS comparison tests.

FLAG now reads attributes through the old NCP22 directory scan path and
writes them through NCP22/25 Set Directory/File Information. This keeps
extended attributes such as Delete Inhibit and Rename Inhibit intact and
matches the Novell behavior observed in the server logs.

GRANT now prefers NCP22/27 SetTrustee with an NCP87 fallback. Supervisor
rights are expanded like Novell does, so granting S sends and reports the
full SRWCEMFA mask. The visible output, path formatting and error text
are adjusted to match the Novell baseline.

REMOVE now prefers NCP22/2B DelTrustee with an NCP87 fallback. The
DelTrustee request layout is corrected, /SUBDIRS handling is aligned
with Novell, and the output/error text is matched to the baseline.

The FLAG, FLAGDIR, GRANT and REMOVE tests now compare NPUBLIC baselines
against the PUBLIC implementations and add delayed NOPASSUSER readback
checks using DLYSTRT and the maintainer LOGIN password option.
2026-05-28 07:54:41 +02:00

39 lines
1.2 KiB
Markdown

# REMOVE comparison test
`RMVSTA.BAT` compares Novell `\NPUBLIC\REMOVE` against the public implementation `\PUBLIC\REMOVE`.
Run as `SUPERVISOR` or equivalent. The automatic NOPASSUSER readback needs the maintainer `LOGIN /PWD:` support and `DLYSTRT`:
```bat
SET LGNTPWD=your-supervisor-password
F:
CD \
RMVSTA
```
`RMVSTA` performs a direct comparison first:
```text
F:\RMVCMP\OUT Novell baseline with \NPUBLIC\REMOVE
F:\RMVCMP\PUBOUT public implementation with \PUBLIC\REMOVE
F:\RMVCMP\COMPARE.LOG
```
Then it starts `C:\RMVTMP\RMVC.BAT` through `DLYSTRT`. The helper logs in as `NOPASSUSER` and captures effective-rights readback after the public REMOVE operations:
```text
F:\RMVCMP\UNOV \NPUBLIC\RIGHTS as NOPASSUSER
F:\RMVCMP\UPUB \PUBLIC\RIGHTS as NOPASSUSER
F:\RMVCMP\UCOMP.LOG
```
The matrix covers single trustee rights, mixed rights, `S`, `ALL`, `N`, file trustees with `/FILES`, and recursive removal with `/SUBDIRS`.
`RMVZIP.BAT` is intentionally manual. Run it after inspecting the results:
```bat
RMVZIP
```
The ZIP step packages `OUT`, `PUBOUT`, `UNOV`, `UPUB`, setup logs, comparison logs, and then removes the generated `F:\RMVTEST` and `C:\RMVTMP` trees.