DOS quota write-deny smoke
This test proves the client-visible quota boundary with DOS board tools while keeping the authority split explicit:
- Linux/MARS-NWE sets the quota on the host side.
- DOS writes as
NOPASSUSERand proves that 12 4K blocks are allowed while the 13th 4K block is denied.
The flow uses the same DLYSTRT pattern as the rights/login tests, because
LOGOUT removes network mappings. DQTSTA copies DQTC.BAT, DLYSTRT.EXE,
TESTS.EXE, LOGIN, and LOGOUT to C:\DQTTMP, then queues the helper from
there. The helper waits for J/j/Y/y before it logs out and logs in as
NOPASSUSER, so the Linux quota setup can happen in between.
DOS part 1
Login as SUPERVISOR on the target volume and run:
SET LGNTPWD=zefuqUVe
F:
DQTSTA
DQTSTA creates:
F:\DQTTEST\NCPQFILLfor the data filesF:\DQTCMPfor network-side logsC:\DQTTMPfor the delayed helper and local logs
Linux handoff
When DOS prints that DQTC is waiting, set the quota on Linux, for example:
./nwfs_ncpfs_userquota -S MARS -U SUPERVISOR -P 'zefuqUVe' \
--volume QUOTA --object NOPASSUSER --type 1 --limit-4k 12
Then return to DOS and press J, j, Y, or y.
DOS part 2
The helper logs in as NOPASSUSER, writes Q00001.BIN through Q00012.BIN,
and expects QFAIL.BIN to fail. If LGNTPWD is set, it logs back in as
SUPERVISOR and queues:
F:\DQTSTA.BAT PART2
Finally, optionally pack the logs:
F:
DQTZIP
Expected summary:
PASS: DOS quota deny observed.
Automatic relogin detail
The quota handoff follows the same pattern as the RIGHTS/GRANT/REVOKE DOS tests:
DQTSTA copies the helper to C:\DQTTMP, starts it with DLYSTRT, and
the helper uses a generated DQTREL.BAT to log back in as SUPERVISOR and
queue F:\DQTSTA.BAT PART2. The relogin uses LOGIN /NS SUPERVISOR /PWD:%LGNTPWD% so the login script does not disturb the test mappings.