
|
85602 packages online
|
|
 |
|
comm/tcp/telnetd.ppc-morphos.lha |
|
|
No screenshot available
|
| Short: | Telnet daemon, remote shell for MorphOS |
| Author: | bfeeny mac.com (Brian Feeny) |
| Uploader: | <bfeeny mac com> (Brian Feeny) |
| Type: | comm/tcp |
| Version: | 1.0 |
| Architecture: | ppc-morphos |
| Date: | 2026-09-21 |
| Requires: | MorphOS 3.x, bsdsocket.library, usergroup.library (both ship with MorphOS) |
| Distribution: | Aminet |
| Download: | comm/tcp/telnetd.ppc-morphos.lha - View contents | | Readme: | comm/tcp/telnetd.ppc-morphos.readme |
| Downloads: | 2 |
|
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.
|
Contents of comm/tcp/telnetd.ppc-morphos.lha
PERMSSN UID GID PACKED SIZE RATIO METHOD CRC STAMP NAME
---------- ----------- ------- ------- ------ ---------- ------------ -------------
drwxr-xr-x 501/20 0 0 ****** -lhd- 0000 Sep 20 03:14 telnetd/
-rw-r--r-- 501/20 629 1068 58.9% -lh5- b37f Sep 20 03:14 telnetd/LICENSE
-rw-r--r-- 501/20 1662 3318 50.1% -lh5- bba5 Sep 20 03:14 telnetd/Makefile
-rw-r--r-- 501/20 4001 8530 46.9% -lh5- 8272 Sep 20 03:14 telnetd/README.md
drwxr-xr-x 501/20 0 0 ****** -lhd- 0000 Sep 20 03:14 telnetd/doc/
-rw-r--r-- 501/20 3352 7365 45.5% -lh5- 8a49 Sep 20 03:14 telnetd/doc/ARCHITECTURE.md
-rw-r--r-- 501/20 7272 15776 46.1% -lh5- 0cfb Sep 20 03:14 telnetd/doc/COMPARED-TO-UNIX.md
-rw-r--r-- 501/20 2876 5680 50.6% -lh5- 2e64 Sep 20 03:14 telnetd/doc/PRIOR-ART.md
-rw-r--r-- 501/20 2584 5414 47.7% -lh5- a775 Sep 20 03:14 telnetd/doc/SECURITY.md
drwxr-xr-x 501/20 0 0 ****** -lhd- 0000 Sep 20 03:14 telnetd/src/
-rw-r--r-- 501/20 668 1379 48.4% -lh5- 73d5 Sep 20 03:14 telnetd/src/auth.c
-rw-r--r-- 501/20 813 1473 55.2% -lh5- 2cc8 Sep 20 03:14 telnetd/src/auth.h
-rw-r--r-- 501/20 4407 11351 38.8% -lh5- fd75 Sep 20 03:14 telnetd/src/console_handler.c
-rw-r--r-- 501/20 4116 9484 43.4% -lh5- 4a7e Sep 20 03:14 telnetd/src/console_handler.h
-rw-r--r-- 501/20 3921 10787 36.3% -lh5- cb6e Sep 20 03:14 telnetd/src/telnet.c
-rw-r--r-- 501/20 1450 3184 45.5% -lh5- c0d1 Sep 20 03:14 telnetd/src/telnet.h
-rw-r--r-- 501/20 27786 74248 37.4% -lh5- c656 Sep 20 03:14 telnetd/src/telnetd.c
-rwxr-xr-x 501/20 34196 72972 46.9% -lh5- d010 Sep 20 03:14 telnetd/telnetd
drwxr-xr-x 501/20 0 0 ****** -lhd- 0000 Sep 20 03:14 telnetd/tests/
-rw-r--r-- 501/20 3515 10420 33.7% -lh5- f056 Sep 20 03:14 telnetd/tests/hwtest.py
-rwxr-xr-x 501/20 775 1405 55.2% -lh5- e559 Sep 20 03:14 telnetd/tests/run.sh
-rw-r--r-- 501/20 994 2585 38.5% -lh5- 6ef8 Sep 20 03:14 telnetd/tests/test_auth.c
-rw-r--r-- 501/20 5789 21079 27.5% -lh5- 4cb6 Sep 20 03:14 telnetd/tests/test_console_handler.c
-rw-r--r-- 501/20 4147 14947 27.7% -lh5- d3b0 Sep 20 03:14 telnetd/tests/test_telnet.c
drwxr-xr-x 501/20 0 0 ****** -lhd- 0000 Sep 20 03:14 telnetd/tools/
-rw-r--r-- 501/20 4967 12315 40.3% -lh5- 3ae6 Sep 20 03:14 telnetd/tools/mkpw.c
---------- ----------- ------- ------- ------ ---------- ------------ -------------
Total 26 files 119920 294780 40.7% Sep 21 01:07
|
|
|
 |
| Page generated in 0.02 seconds |
Aminet © 1992-2024 Urban
Müller and the Aminet team.
Aminet contact address: <aminet aminet net> |