550 lines
17 KiB
Markdown
550 lines
17 KiB
Markdown
# Changes
|
|
|
|
This file summarizes the MARS_NWE project history in a form intended for users
|
|
and administrators. It is not a replacement for the technical Git log and does
|
|
not list every individual commit.
|
|
|
|
The historic entries up to 0.99.pl21 are based mainly on the old project files
|
|
under `doc/`, especially `doc/CHANGES` and `doc/NEWS`. Newer entries from
|
|
0.99.pl22 onward are based on the imported project history, release milestones,
|
|
and the current repository history.
|
|
|
|
Entries are sorted newest first.
|
|
|
|
## Current development after 0.99.pl27
|
|
|
|
The current development branch is 0.99.pl28-dev. Since 0.99.pl27 the focus has
|
|
shifted from pure modernization back toward NetWare compatibility, test coverage,
|
|
and better operational diagnostics.
|
|
|
|
User-visible highlights:
|
|
|
|
- Classic NetWare and DOS client compatibility has been expanded. Several NCP
|
|
endpoints that were missing or only stubbed have been added or improved,
|
|
including trustee and rights queries, rights changes, rename/move, queue jobs,
|
|
broadcast messages, disk restrictions, extended volume information, and several
|
|
record and file locking operations.
|
|
- Packet Burst support is available again as a build option and is built in the
|
|
current default configuration.
|
|
- AFP and Macintosh compatibility has been expanded significantly. MARS_NWE can
|
|
now serve many AFP 2.0/WebSDK-style file and directory operations through
|
|
NetWare paths, including entry IDs, file information, scan information,
|
|
FinderInfo, ProDOSInfo, attributes, timestamps, fork handles, create, delete,
|
|
rename, and information about deleted files.
|
|
- A salvage/recycle backend for deleted files was added. It can record deleted
|
|
files together with metadata, manage versions using the Samba `vfs_recycle`
|
|
naming scheme, and expose them through NetWare salvage endpoints for scan,
|
|
restore, and purge operations.
|
|
- The test layout has been expanded with focused AFP and salvage smoke tests, and
|
|
optional maintainer builds for additional test and DOS helper programs.
|
|
- Log output is being normalized step by step so that logs are easier to search
|
|
by area, endpoint, and event.
|
|
- Documentation has been cleaned up: active TODOs live in `TODO.md`, AI/patch
|
|
workflow rules live in `AI.md`, and AFP/salvage test documentation has been
|
|
reduced to one README per test area.
|
|
|
|
## 0.99.pl27 — 21 April 2026
|
|
|
|
This release collected the 2026 modernization work into a public release.
|
|
|
|
User-visible highlights:
|
|
|
|
- The build was further modernized and aligned with current CMake and GitHub
|
|
Actions workflows.
|
|
- Version handling was tied to Git tags so release builds and development builds
|
|
can be distinguished more clearly.
|
|
- The SMArT web interface was added as a submodule and updated several times.
|
|
- Packaging and installation files were added, including systemd service files,
|
|
logrotate configuration, and init scripts in the documentation area.
|
|
- The README was expanded and now links the related subprojects such as SMArT,
|
|
dosutils, mailutils, IPX tools, and kernel modules.
|
|
- After the release the version base was advanced to 0.99.pl28-dev.
|
|
|
|
## 0.99.pl26 — 28 March 2026
|
|
|
|
This release was mainly a modernization and build compatibility release.
|
|
|
|
User-visible highlights:
|
|
|
|
- The code was fixed for newer GCC versions.
|
|
- The minimum CMake version was raised.
|
|
- Several 64-bit, type, and warning issues were cleaned up so the server builds
|
|
more reliably on current Linux systems.
|
|
- Signal, shutdown, and string handling were made more robust.
|
|
- Missing headers and helper-program build integration were added.
|
|
- Warning hotspots in server, bindery, queue, trustee, route, and connection code
|
|
were cleaned up.
|
|
|
|
## 0.99.pl25 — 31 July 2024
|
|
|
|
This release integrated an externally reported compatibility patch and refreshed
|
|
the project description.
|
|
|
|
User-visible highlights:
|
|
|
|
- A patch from the public GitHub project discussion was integrated.
|
|
- The README was updated to better explain the current project status.
|
|
|
|
## 0.99.pl24 — 31 May 2023
|
|
|
|
This release kept the project buildable on modern systems and corrected release
|
|
and build issues.
|
|
|
|
User-visible highlights:
|
|
|
|
- Syslog support was fixed.
|
|
- CMake and release files were corrected.
|
|
|
|
## 0.99.pl23 — 5 November 2013
|
|
|
|
This release continued to merge distribution patches.
|
|
|
|
User-visible highlights:
|
|
|
|
- PLD and Koan patches were integrated.
|
|
- The build was fixed for 32-bit environments.
|
|
|
|
## 0.99.pl22 — 20 May 2012
|
|
|
|
This release marked the start of the newer public maintenance history after the
|
|
old historic releases.
|
|
|
|
User-visible highlights:
|
|
|
|
- The project was converted to a CMake-based build.
|
|
- DOS and mail helper programs were added as submodules.
|
|
- Installation paths and distribution patches were updated.
|
|
- A known Novell Bugzilla patch was integrated.
|
|
- Existing patches from several sources were collected and integrated.
|
|
|
|
## 0.99.pl21 — 14 June 2003
|
|
|
|
User-visible highlights:
|
|
|
|
- A Koan/Marco Cavallini patch added support for clearing a connection number in
|
|
the bindery/server area.
|
|
|
|
## 0.99.pl20 — 1 September 2000
|
|
|
|
User-visible highlights:
|
|
|
|
- New volume option `x` added support for working with Unix ACLs.
|
|
- Trustee and attribute directories were improved.
|
|
- Several patches improved printer queue access, Unix permissions, and trustee
|
|
behavior.
|
|
|
|
## 0.99.pl19
|
|
|
|
User-visible highlights:
|
|
|
|
- Security fixes were made around file operations.
|
|
- `Get Name Spaces Loaded` was corrected.
|
|
- Login restriction routines were added.
|
|
- Empty passwords and passwords starting with `-` were handled better.
|
|
- Trustee handling was corrected.
|
|
|
|
## 0.99.pl18
|
|
|
|
User-visible highlights:
|
|
|
|
- Several potential buffer overflows were mitigated.
|
|
- File sharing and locking were improved substantially.
|
|
- Logical and physical record log/lock functions were enabled.
|
|
- Password names starting with `-` were handled better.
|
|
- Trustee handling was extended.
|
|
|
|
## 0.99.pl17
|
|
|
|
User-visible highlights:
|
|
|
|
- A `rename file` regression from pl16 was fixed.
|
|
- Logfile initialization was cleaned up.
|
|
|
|
## 0.99.pl16
|
|
|
|
User-visible highlights:
|
|
|
|
- Builds for Linux 2.2.x and BSD environments were improved.
|
|
- Win98-compatible open/create behavior was corrected.
|
|
- DOS wildcard rename behavior for source and target names was improved.
|
|
- A new signal can dump diagnostic information about open files.
|
|
|
|
## 0.99.pl15
|
|
|
|
User-visible highlights:
|
|
|
|
- New pipe filesystem examples and documentation were added.
|
|
- Recursive deletion of larger directory trees was fixed.
|
|
- Queue job lists now return byte order that works better for Win9x/Client32.
|
|
- glibc compatibility was improved.
|
|
|
|
## 0.99.pl14
|
|
|
|
User-visible highlights:
|
|
|
|
- HOME volume rights and free disk space reporting were improved.
|
|
- Trustee and inherited-rights-mask handling was extended.
|
|
- Some file-handle and directory error codes were corrected.
|
|
- New volume option `T` added trustee-oriented rights handling.
|
|
|
|
## 0.99.pl13
|
|
|
|
User-visible highlights:
|
|
|
|
- FreeBSD support and diagnostic replies were added.
|
|
- Pipe filesystem support and example programs were improved.
|
|
- Trustee namespace calls were added.
|
|
- New queue functions were implemented.
|
|
- Debug and log files started to include date and time.
|
|
|
|
## 0.99.pl12
|
|
|
|
User-visible highlights:
|
|
|
|
- The default bindery database path moved from `/etc` to `/var/nwserv/db`.
|
|
- Printer banners can be disabled.
|
|
- FreeBSD porting work was integrated.
|
|
|
|
## 0.99.pl11
|
|
|
|
User-visible highlights:
|
|
|
|
- A new NCP call for reading new queue job entries was added.
|
|
|
|
## 0.99.pl10
|
|
|
|
User-visible highlights:
|
|
|
|
- DOS wildcard search behavior was corrected.
|
|
- Trustee-related searches became more reliable as a result.
|
|
|
|
## 0.99.pl9
|
|
|
|
User-visible highlights:
|
|
|
|
- The attribute directory default moved to `/var/nwserv/attrib`.
|
|
- Initial simple trustee routines were introduced.
|
|
- Supervisor security equals and new queue handling were added.
|
|
- Many queue, pipe, UnixWare, and file-handle problems were fixed.
|
|
|
|
## 0.99.pl8
|
|
|
|
User-visible highlights:
|
|
|
|
- Queue handling was improved for WinNT, Windows 95, and DOS clients.
|
|
- Older DOS search routines were reused for namespace calls because they worked
|
|
better with Client32-compatible access patterns.
|
|
|
|
## 0.99.pl7
|
|
|
|
User-visible highlights:
|
|
|
|
- An important bindery bug was fixed: property-set searches previously found
|
|
only a limited subset of entries.
|
|
- Startup bindery check/compress support was added.
|
|
- Archive-bit handling was corrected.
|
|
- Build and glibc6/RH5 compatibility was improved.
|
|
|
|
## 0.99.pl6
|
|
|
|
User-visible highlights:
|
|
|
|
- `nwserv` can create or delete IPX devices and routes externally.
|
|
- New `nwserv -f` option can force RIP/SAP transmissions.
|
|
- Archive bits are set by default on files and updated on client writes.
|
|
|
|
## 0.99.pl5
|
|
|
|
User-visible highlights:
|
|
|
|
- Namespace and directory access were corrected.
|
|
- Directory delete operations should work more reliably.
|
|
- Several maximum values became runtime configurable.
|
|
|
|
## 0.99.pl4
|
|
|
|
User-visible highlights:
|
|
|
|
- File and directory creation rights became configurable per volume.
|
|
- Directories are no longer made read-only unconditionally.
|
|
- Wildcard rename was corrected.
|
|
|
|
## 0.99.pl3
|
|
|
|
User-visible highlights:
|
|
|
|
- Default paths were adjusted toward typical Unix/Linux installations, including
|
|
`/usr/sbin` and `/var/log`.
|
|
- `nwserv -k` now waits for the main process to exit.
|
|
- HOME volume functions were expanded.
|
|
- Users can be excluded from password changes through SYSCON.
|
|
|
|
## 0.99.pl2
|
|
|
|
User-visible highlights:
|
|
|
|
- A new section-8 option for using ncpfs as a MARS_NWE client was added.
|
|
- Queue handling was corrected further.
|
|
- Pserver support and queue creation/deletion were added.
|
|
- Directory creation returns more appropriate error codes.
|
|
|
|
## 0.99.pl1
|
|
|
|
User-visible highlights:
|
|
|
|
- Print queue handling changed significantly.
|
|
- Simple semaphore routines were added.
|
|
- User symlinks are now created in the MAIL directory.
|
|
- Client32 wildcard delete operations were improved.
|
|
|
|
## 0.99.pl0 — 31 July 1997
|
|
|
|
User-visible highlights:
|
|
|
|
- Novell Client32 should now work; a volume/device/inode/path cache was added for
|
|
this.
|
|
- Bindery security fixes and account extensions were integrated.
|
|
- File sharing behavior was changed.
|
|
- The first test version of Burst mode was introduced.
|
|
- Slow-network support and HOME volumes were improved.
|
|
- Bindery paths became configurable.
|
|
|
|
## 0.98.pl11 — 7 July 1997
|
|
|
|
User-visible highlights:
|
|
|
|
- Syslog support was added.
|
|
- Filename translation became configurable.
|
|
- Internal tables now grow dynamically instead of relying on fixed maximum sizes.
|
|
- More than 255 connections became possible in principle.
|
|
- `ps` shows logged-in users and attached-only sessions more clearly.
|
|
- Early Burst mode test support was prepared.
|
|
|
|
## 0.98.pl10
|
|
|
|
User-visible highlights:
|
|
|
|
- NFS/directory-listing issues were reduced through `telldir()`/`seekdir()`
|
|
workarounds.
|
|
- Only one directory handle per connection remains open.
|
|
- Cyrillic filename support was added.
|
|
- Pipe commands were marked shareable.
|
|
- Several time, locking, and interface activation issues were fixed.
|
|
|
|
## 0.98.pl9 — 17 April 1997
|
|
|
|
User-visible highlights:
|
|
|
|
- Automatic detection and creation of IPX interfaces was restructured.
|
|
- New `nwserv -u` option updates internal routes and devices.
|
|
- Fixed passwords were added as a configuration option.
|
|
- File-handle byte order was changed for better NETX compatibility.
|
|
|
|
## 0.98.pl8 — 29 January 1997
|
|
|
|
User-visible highlights:
|
|
|
|
- NetWare version spoofing now defaults to 3.11.
|
|
- Quota support was added.
|
|
- Login time restrictions were supported.
|
|
- Print queue banner parameters were extended.
|
|
|
|
## 0.98.pl7 — 5 January 1997
|
|
|
|
User-visible highlights:
|
|
|
|
- Directory rename can be allowed through a section-8 option.
|
|
- File locking for large offsets was improved, important for programs such as
|
|
dBase.
|
|
- Bindery access by object name was accelerated.
|
|
- File-handle reuse was corrected.
|
|
|
|
## 0.98.pl6
|
|
|
|
User-visible highlights:
|
|
|
|
- `nwrouted` was made usable again.
|
|
|
|
## 0.98.pl5 — 9 November 1996
|
|
|
|
User-visible highlights:
|
|
|
|
- Novell Client32 should work better.
|
|
- New namespace subfunctions were added.
|
|
- File Server Copy works correctly.
|
|
- SAP handling can process all SAP types instead of only type 4.
|
|
- NCP responses now copy the task from the request.
|
|
- OS/2 namespace wildcards were improved.
|
|
|
|
## 0.98.pl4 — 4 October 1996
|
|
|
|
User-visible highlights:
|
|
|
|
- New configuration sections were added for login/logout/security flags and
|
|
default creation modes.
|
|
- File access takes supplementary Unix groups into account.
|
|
- Station connection restrictions and bindery login restrictions were added.
|
|
- Print queue directories and MAIL directories are created and repaired more
|
|
reliably at startup.
|
|
|
|
## 0.98.pl3
|
|
|
|
User-visible highlights:
|
|
|
|
- Bindery and SYS directory initialization was improved.
|
|
- Queue directories are checked and created.
|
|
- Bindery object deletion removes references in set properties.
|
|
- Directory handle 1 is treated specially, matching Novell behavior.
|
|
|
|
## 0.98.pl2 — 24 August 1996
|
|
|
|
User-visible highlights:
|
|
|
|
- The PIPE filesystem was changed so programs start only on the first read or
|
|
write.
|
|
- Pipe commands can use separate read and write channels.
|
|
- MAIL/shadow-password and bindery problems were improved further.
|
|
|
|
## 0.98.pl1 — 30 July 1996
|
|
|
|
User-visible highlights:
|
|
|
|
- OS/2 name handling was improved.
|
|
- Windows-client-compatible dummy routines were added.
|
|
- Move-directory and pipe filesystem behavior were corrected.
|
|
|
|
## 0.98.pl0 — 22 July 1996
|
|
|
|
User-visible highlights:
|
|
|
|
- Directory-handle problems were removed.
|
|
- Rudimentary OS/2 and NFS namespace support was added.
|
|
- Dummy support for OS/2 Extended Attributes was added.
|
|
|
|
## 0.97.pl9 — 12 July 1996
|
|
|
|
User-visible highlights:
|
|
|
|
- Automatic adding and removing of IPX interfaces was improved.
|
|
- Linux/Sparc support was cleaned up.
|
|
- File locking and sharing were improved.
|
|
- Unix-to-DOS attribute handling and read performance through `mmap` were
|
|
improved.
|
|
- New users can be automatically mapped to existing Unix users during password
|
|
changes.
|
|
|
|
## 0.97.pl8
|
|
|
|
User-visible highlights:
|
|
|
|
- Free-space display on large volumes was corrected.
|
|
- Wildcard handling was adjusted.
|
|
- Files can be read using `mmap`.
|
|
|
|
## 0.97.pl7
|
|
|
|
User-visible highlights:
|
|
|
|
- Encrypted password changes were implemented.
|
|
- Dynamic IPX interface registration and removal were improved.
|
|
- Locking, watchdog, and access handling were extended.
|
|
- Pipe files receive connection and process parameters.
|
|
|
|
## 0.97.pl6
|
|
|
|
User-visible highlights:
|
|
|
|
- Message calls work again in optimized kernel mode.
|
|
- Volume restriction queries return more correct values.
|
|
- Large directories can be listed more reliably.
|
|
|
|
## 0.97.pl5
|
|
|
|
User-visible highlights:
|
|
|
|
- Group initialization was added to UID/GID switching.
|
|
|
|
## 0.97.pl4
|
|
|
|
User-visible highlights:
|
|
|
|
- Several security and bindery-rights issues were corrected.
|
|
- A read-only volume option was added.
|
|
- The internal network number can be derived from the IP number when set to `0`.
|
|
|
|
## 0.97.pl3 — 5 May 1996
|
|
|
|
User-visible highlights:
|
|
|
|
- `nwserv -h` and `nwserv -k` were added for HUP/TERM control.
|
|
- utmp/wtmp are updated.
|
|
- IPX interfaces can be created automatically.
|
|
- HOME volumes with path `~` became possible.
|
|
- Supervisor security and namespace routines were extended.
|
|
|
|
## 0.97.pl2 — 21 March 1996
|
|
|
|
User-visible highlights:
|
|
|
|
- Password policy was extended, including empty MARS_NWE passwords when a Unix
|
|
password is set.
|
|
- OS/2 client compatibility was improved significantly.
|
|
- A kernel patch for better performance was documented.
|
|
- LOGIN directory and DBM export/import functions were improved.
|
|
|
|
## 0.97.pl1
|
|
|
|
User-visible highlights:
|
|
|
|
- OS/2 name support was improved.
|
|
- A Windows-compatible dummy routine was added.
|
|
|
|
## 0.97.pl0 — 10 March 1996
|
|
|
|
User-visible highlights:
|
|
|
|
- Broadcast periods and nearest-server behavior became configurable.
|
|
- New configuration options allow automatic user import from `/etc/passwd` and
|
|
startup checks for bindery/SYS.
|
|
- Bindery performance was improved substantially.
|
|
- Namespace services, HOME volumes, `ftruncate`, utmp/wtmp, and several NetWare
|
|
file operations were added or improved.
|
|
|
|
## 0.96.pl9 — 13 February 1996
|
|
|
|
User-visible highlights:
|
|
|
|
- New password policy with several security modes for encrypted and unencrypted
|
|
password calls.
|
|
- Better compatibility with old LOGIN and SYSCON programs.
|
|
- Routing, SAP, volume information, pipe jobs, and server-down messages were
|
|
extended.
|
|
|
|
## 0.96
|
|
|
|
User-visible highlights:
|
|
|
|
- Wildcard search and wildcard delete were corrected or added.
|
|
- Larger packets were allowed.
|
|
- Routing and SAP handling were extended.
|
|
- Namespace services were prepared.
|
|
- Password, bindery, and automatic user import features were expanded.
|
|
- Printing, PIPE jobs, volumes, and several NCP functions were improved.
|
|
|
|
## 0.95
|
|
|
|
User-visible highlights:
|
|
|
|
- Login with password entry became possible.
|
|
- Users with different rights and mapping of NetWare users to Linux users were
|
|
introduced.
|
|
- `nwserv` can run as a daemon and write logs.
|
|
- Server-down notification, routing rework, and initial printing functions were
|
|
added.
|
|
|
|
## 0.94
|
|
|
|
User-visible highlights:
|
|
|
|
- First public version of MARS_NWE.
|