The first new Kermit release for Windows in TWENTY-TWO YEARS
(and the first
free and Open Source version ever)...
Kermit 95 3.0.0
for Windows and OS/2
Yes, it's called Kermit 95 once again! K95 for short.
2025 is its 40th anniversary.
David Goodwin and Frank da Cruz
fdc@kermitproject.org
ckw@kermitproject.org
← questions, problems, reports
Page created: 12 February 2025
K95 Beta date:
Programmer:
David Goodwin
Based on:
C-Kermit 10.0 Beta.11, 8 Aug 2024
This page last updated:
Sat Feb 15 14:22:25 2025
New York time
A degree of familiarity with Kermit software is assumed;
if you need an introduction, look HERE.
Table of contents:
Download
SSH change
New features
Minor enhancements
Bugs fixed
Configurations
Also see:
K95 How-To
Daily progress notes
K95 Tutor
Beta.7 startup banner:
Kermit 95 3.0.0 Beta.7, Jan 27 2025, for Windows (64-bit)
Copyright (C) 1985, 2024,
Trustees of Columbia University in the City of New York.
Open Source 3-clause BSD license since 2011.
Type ? or HELP for help.
[C:\Users\fdc\] K95> _
- Links to previous test releases:
- Beta.6 Aug 2024
- Beta.5 Sep 2023
- Beta.4 Jul 2023
- Beta.3 Dec 2022
- Beta.2 Sep 2022
- Beta.1 Aug 2022
The copyright of all Kermit software remains with Columbia University, in
accordance with the separation agreement of 2011. K95's LICENSE command shows
the new Open Source license.
Download and Install Kermit 95 Beta.7
- Click this link to download the install package from Github:
-
https://github.com/davidrg/ckwin/releases/tag/3.0.0beta7
- Install on your PC
-
Drag the downloaded Zip file from your Windows downloads area to your
desktop, where it will be a folder like the one shown just below, with a
name like k95-3.0.0beta7-x86-64. Right-click it, choose "Open" to see all
the files that are in it, including k95g.exe (recommended) and k95.exe
(non-GUI version for esoteric cases). If you double-click either of
these, the program starts.
Or — if you get an error about some DLL missing
when you run it — download and install the matching Visual C++
Redistributable for the version of CKW you downloaded for your version
Windows.
|
K95 3.0 Beta 7 folder and shortcut to K95
|
The Kermit executable (.EXE) file has to stay where it is, among all its
supporting files. For convenience you can put an icon on your desktop that
you can double-click to start K95 from its folder: create a symbolic link by
opening a CMD window on your desktop
and give it the
mklink command (if the link doesn't work, search Google for
"windows mklink command" and/or "microsoft windows symbolic links").
Warning: Incompatible SSH change in K95
Kermit 95's built-in SSH Client
The current SSH client documentation is available here:
HERE
- it has been updated to cover all currently supported commands and
authentication methods, along with those that have not yet been implemented
yet.
IMPORTANT:
This release changes a few default settings and paths! In
particular, the change to the location for storing SSH-related files (known
hosts, private keys, etc) may require a one-off change to your k95custom.ini
file if you are upgrading from a previous K95 3.0 Beta release. See the
sections below before upgrading and if you have any questions, feel free to
ask in Github Discussions:
https://github.com/davidrg/ckwin/discussions
A Github account is required
in order to ask or answer questions there, but you can sign up for free
with the link in the top right corner of the page ("Sign up" in the black
header).
The default SSH directory in Beta 7 has changed from \v(home).ssh back to
\v(appdata)ssh
, the location used by Kermit 95 2.1.3 and
earlier. This means Kermit 95 might not find your known hosts file, or your
identity (public key authentication) files after upgrading to beta 7, in
which case SSH connections that worked with Beta 6 can fail in
Beta 7.
If you'd prefer to keep these files in \v(home).ssh
(the same
location used by OpenSSH on modern versions of windows) add the command:
set ssh directory \v(home).ssh
to your K95 customization file, k95custom.ini
, which is normally
located in:
C:/Users/username/AppData/Roaming/Kermit 95/k95custom.ini
Tip: To find out where \v(appdata)
, \v(home)
and
other such directories are on your disk, you can use
K95's orient
command.
Another tip, if your SSH configuration is in home directory and need to run
older K95 versions (Beta 6 or earlier) on the same computer where you
have installed Beta.7, and it can't make SSH connections although the older
version can, you can put something like this in your k95custom.ini file:
if match \m(vbeta) Beta.07 set ssh directory \v(home).ssh
About Kermit 95
[
Skip ahead to New Features in K95 3.0
]
- K95 is a communications software application for Microsoft
Windows offering support for network, serial-port, and modem connections
in clear text or encrypted; emulation of over 40
different terminals, error-free and fast file
transfer, and a built-in script-programming language for automation of
communications, file-management, and other tasks. The list of supported
terminal types is HERE. Note: so far
xterm is not among them, although some progress is being made;
if it comes to pass, hopefully it won't be subject to the kinds of criticisms
seen here,
that apply to the many terminal emulators that claim xterm emulation but
fall short.
- K95 is Open Source: free of charge, freely downloadable; fully
copyable and shareable, no registration required, no serial numbers, no
unlocking codes, and source code is available.
- Due to changes in US export law, K95 can
be downloaded to all countries — Including Cuba and Iran.
- K95 is a text-mode command-line program, just like C-Kermit
itself on Unix, VMS, and other platforms, but it runs in a GUI window (not a
CMD window like the original K95) and it has some GUI features like
scrolling, dropdown menus, popups, and window-resizing with the mouse. And,
as a GUI application, it has access to modern Windows features such as long
filenames. As always, there is also a CMD-window version version for those
who need or prefer it, e.g. for use on early Windows versions.
- Kermit 95's point-and-click drag-and-drop user interface
— the former K95 Dialer —
is also included thanks to the Open-Sourcing of the application framework with
which it was developed, called Zinc.
- K95 is based
on C‑Kermit 10.0. In fact
it is the Windows version of C‑Kermit 10.0, and
therefore includes all the bug fixes and new features added to C-Kermit
since version 8.0.206 when C‑Kermit 2.1.3 was released in 2003.
- A major difference between K95 and other C-Kermit versions is that
K95 does its own terminal emulation, with a built-in selection of
over 40 terminal
types (VT52, VT100, VT220, VT320, Wyse 30/50/60/320,
SNI–97801, ANSI‑BBS, TVI, QNX, Linux, HP, IBM3151, Hazeltine,
Heath, DG Dasher, etc etc), with conveniences like key mapping, keyboard
macros, scrollback, resizing, clickable URLs, screen capture, copy/paste,
etc.
- Features that K95 shares with the other C-Kermit implementations include
Kermit-protocol file transfer (and also X-,
Y, and Zmodem protocols) across the communications connection; support for
more than 50 national, international, and corporate
character sets — including Unicode
UTF-8 — with the ability to convert among them;
a full-featured scripting language for
automation of communication and file-transfer/management tasks;
(etc etc)...
- Although K95's command language is English, the K95 terminal emulator
lets you type and read in your own language at the far end of your terminal
connection, e.g. Russian
(see recent
example, a web page created in a K95 Emacs session on a
Linux host in a mixture of Roman and Cyrillic letters).
- K95 does its best to remain compatible with old Windows versions,
but some features (notably the built-in SSH client) might not work
on them. Thus different configurations of K95 are necessary
for different OS's (Windows and OS/2), OS versions, and computer
architecture (see table).
- Once the final version is released it will be installed on the
Kermit Project Github
where it can take on a new life of its own in the future.
- For daily updates on
David's progress, see
his change
log.
New features in K95 3.0.0 Beta 7
- As of the second Beta, K95 3.0 includes its own built-in SSH client
based on the LibSSH DLL 0.10.3 that interoperates with all known
SSH V2 servers 1998 and later (but no longer with SSH V1).
- As of the third Beta, K95 3.0 can make Telnet, FTP, and HTTPS connections
secured by OpenSSL versions 1 and 3.
- As of the fourth Beta, K95 3.0 includes built-in
X-, Y-, and ZMODEM file transfer protocols using the same code that
was written by and licensed
from Oy
Online Soluntions, Helsinki, Finland, for Kermit 95, newly
open-sourced and included in K95 with permission. Other versions of
C-Kermit (e.g. UNIX) continue to use external XYZMODEM clients for this.
- As of the fourth Beta, DECnet support has been re-enabled. To make LAT
or CTERM connections you must have a licensed copy of
Pathworks32
installed.
- SSH Port forwarding (tunneling) is now supported again in both the
Direct/Local and Reverse/Remote forms. You can add forwards before
establishing a connection with
SSH ADD { local, remote }
and
remove all forwards of a given type with SSH CLEAR { local, remote
}
. As in past releases of Kermit 95, these commands don't have any
effect on an already established SSH connection - this may be changed in
the future.
- New command to allow removing individual port forwards (
SSH REMOVE
{ local, remote }
) - previously Kermit 95 only had commands to
remove all forwarded ports of a given type.
- X11 forwarding is back. Turn on with
SET SSH X11 ON
, and
set your display with SET TELNET ENV DISPLAY
- The SSH backend has been moved into a DLL. On startup, K95 attempts to
load the backend DLL provided the
-#2
command line argument
has not been supplied. If no SSH backend gets loaded, you can load one
manually with the new ssh load
command. This allows K95 to
load the appropriate backend automatically based on operating system
(Windows XP or not) and presence of MIT Kerberos for Windows. This removes
the need to manually shuffle around ssh.dll variants, and also means that
alternative SSH backends not based on libssh can now be supported should
anyone want to build one, opening the door to SSH on vintage windows or
OS/2 systems.
- SSH is now supported on 32bit ARM devices (Windows RT) for the first
time
- Initial very limited SSH agent support has been added. Libssh is
currently the limiting factor here and SSH agent support in K95 likely
won't get much better without significant improvements to libssh in this
area. See the SSH Readme file in the your K95 3.0 Beta directory
for details.
- REXX support has been extended to x86 systems running Windows XP or
newer. This was previously an OS/2-only feature. You can now run REXX
scripts and commands from the K95 command mode with the
rexx
command, and REXX scripts run from K95 can execute any Kermit 95 command
by enclosing the K95 command in single quotes (eg, 'set parity
none'
). For full details, see:
https://davidrg.github.io/ckwin/current/rexx.html.
- New command to turn the menubar on or off:
set gui menubar visible
{ on, off }
. When the menubar is turned off in this way (rather
than with the command line parameter), important menu items are moved on
to the system/control/window menu (right-click on the title bar for the
actions menu and a few other things):
- New command to turn the toolbar on or off: set gui toolbar visible { on, off
}
- New command to turn the statusbar on or off: set gui statusbar { on, off }
- New screen scroll kverbs:
- \Kuphscn - Scroll up half a screen
- \Kdnhscn - Scroll down half a screen
- IBM OS/2 support is back! It should work on IBM OS/2 2.0 or newer with
optional TCP/IP support provided by IBM TCP/IP 2.0 or newer. No SSH or
Presentation Manager GUI as in past Kermit/2 releases. Additionally:
- No PC/TCP 1.2 or IBM TCP/IP 1.2.1 support (no SDK license; the DLLs from
- K95 2.1.2 should work if you need it)
- No dialer yet (crashes when built with Open Watcom)
- No SSL/TLS support (can't be built with Open Watcom)
- No legacy telnet encryption (no longer useful, but may return in a
future release anyway)
- Reimplementation of the three checkboxes in the Dialers GUI settings
page for the menu bar, toolbar and status bar. These options were new in
Kermit 95 2.1.3 but were not present in previous open source releases of
the dialer as it's based on code from K95 2.1.2. Any dialer entries edited
with the dialer from C-Kermit for Windows betas 4-6, or Kermit 95 2.1.2 or
older, will have these checkboxes default to ON. Entries last edited with
the K95 2.1.3 dialer will have these three settings preserved. Turning off
the GUI bars in this way does so via command line arguments rather than
the new set gui commands so they can't be turned back on with the new set
gui commands.
- Added support for xterm's Bracketed Paste feature
- Most of the users guide has been revised for this release and is now
included as part of the release. The Kermit Security Reference and
sections dealing with installing and uninstalling kermit 95 are still
waiting to be overhauled.
Minor Enhancements and other changes
- All executables (*.exe, *.dll) now have proper versioninfo resources
- Upgraded to OpenSSL 3.4 which fixes a number of bugs and security issues
and will receive security fixes until October 2026.
- K95G no longer opens COM1 by default. If you still want this behaviour,
add set port com1 to your k95custom.ini
- The command set gui toolbar off has been renamed to set gui toolbar
disabled to better describe what it actually does and to make room for
new commands to turn it on and off. The previous syntax (set gui toolbar
{ off, on }) is still accepted for compatibility with existing
scripts. set gui toolbar on still does nothing as it always has
(disabling the toolbar is a session lockdown feature)
- The command set gui menubar off has been renamed to set gui menubar
disabled to better describe what it actually does and to make room for
new commands to turn it on and off. The previous syntax (set gui menubar
{ off, on }) is still accepted for compatibility with existing
scripts. set gui menubar on still does nothing as it always has
(disabling the menubar is a session lockdown feature)
- Implemented the set ssh identity-file command
- Added new command set ssh directory which allows you to set the default
location where K95 looks for user known hosts and identity files.
- The default SSH directory has changed from
\v(home).ssh
back to \v(appdata)ssh
- The ssh key commands will now default to opening or saving keys in the
SSH directory.
- The skermit command now has help text
- The default mouse wheel configuration has changed:
- Wheel up/down now scrolls up/down half a screen (like PuTTY) rather
than a single line. This provides better much speed than a line at a
time with better usability than a screen at a time.
-
Shift+Wheel up/down now scrolls up/down one line
- Improve exit time when the console version (k95.exe) is just being run
to show usage information (k95.exe -h or k95.exe --help). Previously K95
would pause for about 5 seconds after printing usage information before
returning you to the shell.
- Fixed the telnet.exe and rlogin.exe stubs - these now behave as in K95
2.1.3
- Added the ssh.exe, ftp.exe and http.exe stubs that were included in K95
2.1.3
- iksdnt.exe is now included.
Bugs fixed in K95 3.0 Beta 7
- Fixed fopen causing a crash. This issue seems to have come in some recent
version of the Microsoft C Runtime.
- Fixed hitting backspace in an empty search-in-buffer crashing
- Fixed pty dir (or trying to run anything else that isn't a valid program)
causing a crash
- Fixed POTS modem support not being available on NT 3.50
- Fixed OpenSSL libraries not being included in the ARM32 distribution
- Fixed \Kexit (Alt+x by default) not updating the state of the associated
toolbar button
- Fix the SSH global known hosts file not being set to something sensible
on windows. It's now set to the value used by past Kermit 95 releases by
default: \v(common)ssh\known_hosts2
- Fixed generation of 4096 RSA SSH keys
- Fixed stdout parameter not working correctly
- Fixed a pair of issues in the OS/2 NetBIOS implementation which has
likely been totally broken since Kermit 95 v1.1.17:
- SET HOST doing nothing for NetBIOS connections
- NetBIOS name not being correctly padded when making a connection to
a NetBIOS Server
- Fixed emacs turning off mouse reporting when started
- Fixed K95G hanging when closing the window or using File->Exit with when
a connection is active and GUI dialogs are turned off
- Fixed K95 bug 797: Dialer generated connection scripts will no longer
include SET LOGIN PROMPT or SET LOGIN PASSWORD commands if those fields
do not have a value as this broke the use of the standard login.ksc
script.
- Fixed K95 bug 770: When editing an FTP entry in the dialer the general
settings page doesn't load the port number causing it to be cleared on
save.
- Fixed TYPE command error "The /HEIGHT switch is not supported without
/GUI" when the /HEIGHT switch has not been supplied.
Configurations
Download Link |
CPU Architecture |
Minimum Operating System Version |
Description |
Runtime Download Link |
k95-3.0.0beta7-x86-64.zip
|
x86-64 |
Windows XP SP3 64bit |
For 64bit PCs with an x86 CPU. This is most likely the version you want. |
For Windows 7 or newer,
For Windows XP SP3 or Windows Vista
|
k95-3.0.0beta7-arm64.zip
|
ARM64 |
Windows 10 |
For 64bit ARM devices running Windows 10 or 11. No Kerberos/GSSAPI support. |
ARM64 Visual C++ Runtime |
k95-3.0.0beta7-x86.zip
|
x86 |
Windows XP SP3 |
For 32bit PCs with an x86 CPU. |
For Windows 7 or newer,
For Windows XP SP3 or Windows Vista
|
k95-3.0.0beta7-arm32.zip
|
ARM32 |
Windows RT |
For 32bit ARM devices running Windows RT, 10 or 11 pre-24H2. No Kerberos/GSSAPI authentication support. Windows RT devices must be "jailbroken".
|
ARM32 Visual C++ Runtime
|
k2-3.0.0beta7.zip
|
x86 |
IBM OS/2 2.0 |
Optional TCP/IP support requires IBM TCP/IP 2.0 or newer, or
IBM Internet Connection (dialup). Extract to a temporary location
and run setup.exe to install. No SSH or GUI support as in past
releases. No SSL/TLS, legacy telnet encryption or dialer at this
time.
OS/2 support is new in this release so reports from anyone
using this (successfully or otherwise) would be helpful; either on
github discussions
or this thread on os2world.com.
Knowing the OS/2 version has users helps to prioritise future work
for this platform.
|
|
k95-3.0.0beta7-vintage.zip
|
x86 |
Windows NT 3.51, Windows 95 |
If you're running Windows 95/98/ME or Windows NT/2000, this is
probably what you want. Feature (and security) reduced for
compatibility with vintage PCs.
|
Visual C++ 6.0 runtime
|
k95-3.0.0beta7-ia64.zip
|
IA64 (Itanium) |
? |
For Workstations and Servers with an Intel Itanium CPU. Past
releases have been tested on Server 2008 R2, may work on older
versions. Includes SSL/TLS support but no SSH.
The Kermit Project lacks Itanium hardware to test on, so if you're
successfully using this (especially on Windows versions older than
Server 2008 R2) it would be great to
hear about it.
|
|
k95-3.0.0beta7-axp.zip
|
DEC Alpha |
Windows NT 3.51 |
For Workstations and Servers with a DEC Alpha AXP CPU (eg,
AlphaStation, AlphaServer, DECpc AXP 150, Multia, etc) running
Windows NT 3.51, 4.0 or Windows 2000
|
|
k95-3.0.0beta7-ppc.zip
|
PowerPC |
Windows NT 3.51 |
For Workstations and Servers with a PowerPC CPU running Windows NT 3.51 or 4.0
|
|
k95-3.0.0beta7-mips.zip
|
MIPS |
Windows NT 3.51 |
For Workstations and Servers with a MIPS CPU running Windows NT 3.51 or 4.0
|
|
k95-3.0.0beta7-nt350.zip
|
x86 |
Windows NT 3.50 |
GUI version lacks the toolbar and some GUI dialogs. No dialer,
NTLM auth and TAPI. May work on Windows NT 3.10 for serial
connections only (TCP/IP is known to be broken).
|
|
k95-3.0.0beta7-axp-nt350.zip
|
DEC Alpha |
Windows NT 3.50 |
No GUI version, dialer, NTLM auth or TAPI. May work on
Windows NT 3.10 for serial connections only (TCP/IP is known to be
broken).
|
|
k95-3.0.0beta7-mips-nt350.zip
|
MIPS |
Windows NT 3.50 |
No GUI version, dialer, NTLM auth or TAPI. May work on
Windows NT 3.10 for serial connections only (TCP/IP is known to be
broken).
|
|
k95-3.0.0beta7-axp64.zip
|
DEC Alpha |
n/a |
Special 64bit build for Microsoft-internal 64bit versions of
Windows 2000/XP for the Alpha. Does not work on Windows NT or the
Windows 2000 RC versions.
|
|
Other Source Changes
Fixed a selection of build warnings, and improved compatibility with the
Open Watcom compiler.