121 lines
3.8 KiB
Markdown
121 lines
3.8 KiB
Markdown
# Marsmail Tools
|
|
|
|
Legacy tools for user provisioning, mail handling, and workstation support in a Mars/Linux server environment.
|
|
|
|
> This repository preserves a historical toolkit originally used to manage user accounts, Pegasus Mail workflows, and supporting admin utilities in a mixed Linux/DOS network setup.
|
|
|
|
## Features
|
|
|
|
This repository includes tools for:
|
|
|
|
- user account creation and removal
|
|
- mail conversion for Pegasus Mail clients
|
|
- outgoing mail posting back to Unix systems
|
|
- quota and expiry handling
|
|
- login and notification scripts
|
|
- user application processing
|
|
- default homepage generation
|
|
|
|
Documented components include: `marsmail.exe`, `newuser.pl`, `ohmasteruser`, `nomasteruser`, `ohpostme`, `ohquota`, `ohmail`, `ohmessage`, `ohform.htm`, `pmail.bat`, `pmgate.sys`, `pmdflts.ini`, and `wwwhomepage`.
|
|
|
|
## What is Marsmail?
|
|
|
|
Marsmail is described in the original documentation as a Pascal-based frontend that translates Unix mail files into a format readable by Pegasus Mail. The surrounding scripts automate account setup, notifications, quota reporting, and mail gateway tasks.
|
|
|
|
## Repository Goals
|
|
|
|
This project is useful for:
|
|
|
|
- preserving historical sysadmin tooling
|
|
- studying legacy mail gateway workflows
|
|
- exploring early campus/lab network automation
|
|
- adapting older operational ideas for modern migrations
|
|
|
|
## Included Files
|
|
|
|
A few notable files in this repository:
|
|
|
|
- `marsmail.exe` — mail conversion utility
|
|
- `pmail.bat` — Pegasus Mail launcher/helper
|
|
- `pmgate.sys` — Pegasus Mail gateway configuration
|
|
- `pmdflts.ini` — default Pegasus Mail settings
|
|
- `ohform.htm` — HTML user application form
|
|
- `newuser.pl` — form processor for new accounts
|
|
- `ohmasteruser` — account creation helper
|
|
- `nomasteruser` — account removal and cleanup helper
|
|
- `ohpostme` — outgoing mail handoff script
|
|
- `wwwhomepage` — default homepage generator
|
|
|
|
These names are taken from the original package documentation.
|
|
|
|
## Build and Install
|
|
|
|
A provided `CMakeLists.txt` shows an install step that deploys several runtime files, including:
|
|
|
|
- `marsmail.exe`
|
|
- `pmail.bat`
|
|
- `pmgate.sys`
|
|
- `ohlogscr.bat`
|
|
- `pmdflts.ini`
|
|
|
|
into a public installation directory. It also defines Linux-specific compiler flags and version macros.
|
|
|
|
Example:
|
|
|
|
```cmake
|
|
install(FILES marsmail.exe pmail.bat pmgate.sys ohlogscr.bat pmdflts.ini
|
|
DESTINATION ${MARS_NWE_INSTALL_FULL_FILEDIR}/SYS/public)
|
|
```
|
|
|
|
## Legacy Environment
|
|
|
|
The original documentation assumes a historical environment with:
|
|
|
|
- a Linux-based Mars server
|
|
- DOS workstations
|
|
- Pegasus Mail clients
|
|
- Unix mailbox storage
|
|
- custom login scripts and mapped drives
|
|
|
|
This software is not plug-and-play on modern systems and will likely require adaptation.
|
|
|
|
## User Application Form
|
|
|
|
The repository includes an HTML application form for requesting a user account. It collects applicant details, preferred usernames, skill levels, operating system preferences, support expectations, and requested services. The form is intended to submit data to `newuser.pl`.
|
|
|
|
## Status
|
|
|
|
This is a **legacy preservation project**.
|
|
|
|
It is best treated as:
|
|
|
|
- archival software
|
|
- reference material
|
|
- migration input
|
|
- a starting point for modernization
|
|
|
|
## Security Warning
|
|
|
|
These tools were designed for an older environment and may contain assumptions that are unsafe on modern systems.
|
|
|
|
Review carefully before running anything, especially code related to:
|
|
|
|
- user creation and deletion
|
|
- mailbox processing
|
|
- file permissions
|
|
- web publishing
|
|
- shell or batch execution
|
|
|
|
The original documentation also recommends making backups before changing account-related data.
|
|
|
|
## License
|
|
|
|
The original documentation states that the package is distributed under the GNU Public License and references a `COPYING` file for details.
|
|
|
|
## Credits
|
|
|
|
Originally credited to:
|
|
|
|
- Eddie Dunckley
|
|
- Gert Cronje
|