Skip to content

cy384/ssheven

master
Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?
Code

Files

Permalink
Failed to load latest commit information.
Type
Name
Latest commit message
Commit time
 
 
 
 
 
 
 
 
 
 
 
 

ssheven box

ssheven

A minimal new SSH client for Mac OS 7/8/9.

Project status: as of 0.8.0 (see github releases), fairly secure and usable, but without a polished UX or all planned features. Versions prior to 1.0.0 should be considered alpha/beta quality.

ssheven screenshot

system requirements

  • CPU: Any PPC processor, or at least a 68030 (68040 strongly recommended).
  • RAM: 2MB.
  • Disk space: fits on a floppy.
  • System 7.1 or later. Versions below 7.5 require the Thread Manager extension.
  • Open Transport networking required, latest version possible highly recommended.

roadmap

0.9.0

  • basic scp file transfer
  • general code cleanup

1.0.0 (first "real" release)

  • configurable terminal string
  • configurable/auto-choosing SSH buffer size (improves feel for faster machines)
  • nicer error presentation for more failure cases
  • add known_hosts reset option
  • read Apple HIG and clean up UI/UX
  • all license info in an about box type thing
  • finish and upload papercraft box, floppy sticker artwork, icon/logo svg

known problems

  • drawing the screen is somewhat slow
  • input latency feels high because redrawing the screen is slow (along with all the encryption, which is also slow)
  • receiving a large amount of data may break the channel or cause lockups (e.g. cat /dev/zero)
  • non-US keyboard input may or may not have issues

possible upcoming features

  • more complete color support (currently uses the default Mac 8 color palette)
  • keyboard-interactive authentication

build

Uses Retro68 and cmake.

Requires mbedtls, libssh2, and libvterm, see my (cy384's) ports of those libraries for details. Note that you need to build/install each for both platforms (m68k and PPC).

To build a fat binary, edit build-ssheven.bash with the path to your Retro68 build, and then run it.

license

Licensed under the BSD 2 clause license, see LICENSE file.