Welcome to MorphOS-Storage, a webserver dedicated to MorphOS users. ©2016-2026 Meta-MorphOS.org
Description:Telnet daemon, remote shell for MorphOS
Developer/Porter:Brian Feeny
Readme:
Short: Telnet daemon, remote shell for MorphOS
Uploader: <bfeeny@mac.com> (Brian Feeny)
Author: <bfeeny@mac.com> (Brian Feeny)
Type: comm/tcp
Version: 1.0
Architecture: ppc-morphos
Requires: MorphOS 3.x, bsdsocket.library, usergroup.library (both ship with MorphOS)

A telnet daemon for MorphOS - a remote shell for a platform that has never had
one.

MorphOS ships OpenSSH as a client only. There is no sshd, no telnetd, and no
working inetd, so nothing can drive the machine remotely. This fills that gap.

FEATURES

- Authenticated login against the system's own user database, via
usergroup.library. Accounts come from Preferences -> Users.
- Several concurrent sessions from a single process.
- Window size (NAWS) carried end to end, so full-screen programs know their
geometry.
- Starts at boot and comes back on its own after a reboot.
- An interactive pdksh works over it, as well as the MorphOS Shell.
- Survives idle clients, mid-command disconnects, and clients that flood
without reading.

THERE IS NO WAY TO DISABLE AUTHENTICATION. An account with no password, or one
locked with *, is refused rather than admitted - the out-of-the-box MorphOS
state is a blank password, and failing open would hand a shell to anyone who
connects. No build of this daemon, however compiled or invoked, can serve an
unauthenticated shell.

TELNET IS A PLAINTEXT PROTOCOL. Credentials and session content cross the
network in the clear. Run it on a trusted LAN or through a tunnel, and read
doc/SECURITY.md before putting it anywhere else. This has had no outside
security review.

INSTALLATION

Copy telnetd TO C:

To start it at boot, put it in S:user-network-startup - NOT S:User-Startup.
The startup-sequence never calls the network chain, so User-Startup runs
before any interface has an address and bind() fails. The README explains
this with the measurements behind it.

HOW IT WORKS

A telnet daemon spawns a shell and wires it to a socket. On Unix that is a
pseudo-terminal, and the Amiga lineage has no ptys. The answer is that an
AmigaDOS console is not a device node but a message port that answers packets,
so this daemon points a spawned Shell at a port it owns and answers those
packets itself. ACTION_WAIT_CHAR is select(); ACTION_SCREEN_MODE is the line
discipline.

The shell-attach layer is a standalone module with no networking in it, because
the intended second consumer is an sshd.

Full source is included, along with documentation covering the architecture, a
comparison with Unix telnetd implementations (including a candid list of what
this does not do), the prior-art survey, and the security posture.

MIT licence. Clean implementation against the MorphOS SDK headers and autodocs;
no GPL code was copied.

Upload Date:Sep 20 2026
Category:Network/TCP
Download:telnetd-1.0.lha
Md5:165580dc684adc2d594c945ae38d4893
Size:118 KB
Downloads:1

Screenshot(s)
History
Last Comments
Add comment