All checks were successful
Source release / source-package (push) Successful in 47s
Packet Burst is no longer merely optional follow-up work for DOS tool compatibility. A diagnostics-enabled DOS client run verified real Packet Burst negotiation and READ/WRITE data-path usage, and ENABLE_BURSTMODE now defaults to ON at build time while runtime use remains controlled by nwserv.conf. Keep Packet Burst/NDS fragmentation listed as deferred optional work.
77 lines
3.2 KiB
Markdown
77 lines
3.2 KiB
Markdown
# TODO
|
|
|
|
This file collects follow-up work that is known but intentionally not part of the current patches. It is meant for project-level items that are too broad or too low-priority to keep as inline source TODO comments.
|
|
|
|
## Server / NCP compatibility
|
|
|
|
### Console privilege model
|
|
|
|
Current status:
|
|
|
|
- `NCP 23/200 Check Console Privileges` is implemented as a protocol-compatible status check.
|
|
- For now, console privileges are mapped to the existing supervisor-equivalence state computed for the connection.
|
|
- Callers with supervisor equivalence get success; other callers get `0xc6` (`No Console Rights`).
|
|
|
|
Follow-up:
|
|
|
|
- Add a real console-operator privilege model instead of treating console rights as identical to supervisor equivalence.
|
|
- Decide where the console privilege map should live:
|
|
- a bindery property,
|
|
- a server configuration option,
|
|
- or a small explicit internal list similar to queue operator handling.
|
|
- Check how NetWare 3.x tools such as `PCONSOLE`, `SYSCON`, and console utilities expect console operators to be represented.
|
|
- Keep `NCP 23/200` as a completion-code-only endpoint; only the privilege source should change.
|
|
|
|
### Queue spool path case handling
|
|
|
|
Current status:
|
|
|
|
- Queue job paths can still be rebuilt from DOS/bindery path spelling such as `SYS:SYSTEM/EPSON.QDR`.
|
|
- On a case-sensitive Unix filesystem this can differ from the existing directory, for example `system/epson.qdr`.
|
|
|
|
Follow-up:
|
|
|
|
- Resolve queue job file paths case-insensitively in the queue connection/path resolver, or use the queue object's already-resolved Unix spool directory instead of rebuilding it from the DOS path.
|
|
- Avoid creating duplicate directories that differ only by case.
|
|
|
|
### NCP 17/4C test coverage
|
|
|
|
Current status:
|
|
|
|
- `NCP 17/4C List Relations of an Object` is implemented server-side.
|
|
- Existing DOS and Linux tools do not reliably trigger it for all useful set properties such as `GROUP_MEMBERS` and `GROUPS_I'M_IN`.
|
|
|
|
Follow-up:
|
|
|
|
- Add a small direct test utility to `mars-dosutils` / `NWTESTS` that sends `NCP 17/4C` directly.
|
|
- Suggested test cases:
|
|
- `TESTGRP1` type `0x0002`, property `GROUP_MEMBERS`
|
|
- `TESTGRP2` type `0x0002`, property `GROUP_MEMBERS`
|
|
- `MARIO` type `0x0001`, property `GROUPS_I'M_IN`
|
|
- `NOPASSUSER` type `0x0001`, property `GROUPS_I'M_IN`
|
|
- `GUEST` type `0x0001`, property `GROUPS_I'M_IN`
|
|
|
|
## Printing / Queue backend
|
|
|
|
### Q_UNIX_PRINT backend status
|
|
|
|
Current status:
|
|
|
|
- Queue metadata handling and the `Q_UNIX_PRINT` backend are intentionally separate.
|
|
- The backend can already call `/usr/bin/lp`, `lpr`, or a custom script.
|
|
|
|
Follow-up:
|
|
|
|
- Improve logging around queue job submission to the Unix print command.
|
|
- Capture and expose backend exit status where possible.
|
|
- Consider direct CUPS integration only if MARS_NWE needs CUPS job IDs, cancellation, or status polling. Do not add a hard CUPS dependency for basic queue compatibility.
|
|
|
|
## Deferred / optional protocol work
|
|
|
|
* Basic Packet Burst file transfer support is implemented and verified with a
|
|
diagnostics-enabled DOS client test.
|
|
* Packet Burst support is built by default, but runtime use remains controlled
|
|
by `nwserv.conf`.
|
|
* Packet Burst/NDS fragmentation support remains out of scope unless a concrete
|
|
client requires it.
|