The first new Kermit release for Windows in TWENTY YEARS
(and the first free and Open Source version ever)...
CKW: C-Kermit 10.0 for Microsoft Windows
BETA TEST:
Download
Install
Run
Export
Coexist
Documentation
Problems
Screenshots
Also see:
CKW How-To
(Ini files, SSH setup, ...)
See daily progress notes
Frank da Cruz
fdc@kermitproject.org
ckw@kermitproject.org
← questions, problems, reports
Page created: 14 December 2022
CKW Beta date:
Last page update:
Mon Sep 25 16:22:54 2023
New York time
Contents:
This page assumes a degree of familiarity with Kermit software;
if you need an introduction, look HERE.
The new (2022-23) Open Source release of the Program Formerly Known as
Kermit 95
— K95 for short — and which is now called C-Kermit for
Windows — CKW for short — draws ever closer to final release,
thanks to
David Goodwin in New Zealand, who has
been working on it since July 2022. His
Beta test version is
available as of
. The previous Windows Kermit
version, K95 2.1.3, was released when when Windows ME was current.
CKW Beta test numbers are different from C-Kermit's, which is (as of the
same date)
,
so this one is called C-Kermit for Windows
; it is built
using C-Kermit .
OS/2 support... About the same as the previous Beta, when David said
"OS/2 status is unchanged — it builds and runs but I've not tried to
make any serial connections with it. Network support is currently disabled
as I don't know how to build the TCP/IP bits with OpenWatcom yet and leaving
NetBIOS enabled causes it to crash on startup for an unknown reason. Might
not be too hard for someone who knows what they're doing to get it all going
nicely."
By the way, it would also seem to be appropriate to call C-Kermit for
Windows "W-Kermit", which looks better than "CKW" in menus like the
one at the top of this page, where "C-Kermit for Windows" is too long and
"CKW" too short. Also W-Kermit follows the pattern of E-Kermit and
G-Kermit, not to mention C-Kermit itself. By the same token, the OS/2
version might be called O-Kermit.
Links:
About C-Kermit for Windows
[
Skip ahead to New Features in
]
- CKW is a communications software application for Microsoft
Windows offering support for network, serial-port, and modem
connections; 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.
- CKW 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 recent changes in US export law, CKW can
be downloaded to all countries — Including Cuba and Iran.
- As of the second Beta, CKW 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, CKW can make Telnet, FTP, and HTTPS connections
secured by OpenSSL versions 1 and 3.
- As of the fourth Beta, CKW 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 CKW 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.
- CKW 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 modern Windows features such as long
filenames. As always, there is also a CMD-window version version for those
who need (e.g. for use on early Windows versions) or prefer it.
- 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.
- CKW 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 CKW and other C-Kermit versions is that
CKW 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 CKW shares with the other C-Kermit implementations include
Kermit-protocol file transfer 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)...
- The CKW terminal emulator lets you type and read in your own language,
e.g. Russian
(see
recent example, a web page created in a CKW Emacs session
on a Linux host in a mixture of Roman and Cyrillic letters).
- CKW 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 CKW 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 (approximately) daily updates on
David's progress, see
his change
log.
The
CKW Beta announces itself as:
C-Kermit 10.0 Beta.10/Windows-05, Jul 3 2023, for Windows (64-bit)
Copyright (C) 1985, 2023,
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\] CKW>
The copyright remains with Columbia U, in accordance with the separation
agreement of 2011. The LICENSE command shows the new Open Source license.
CKW uses the C-Kermit version number, not the old K95 one, which was
different (the last K95 release was 2.1.3, which was contemporary with
C-Kermit 8.0.207). CKW Beta-test numbers, however, are independent of the
C-Kermit ones; for example, CKW Beta 5 is contemporary with (and is
based on) C-Kermit 10.0 Beta.10.
Major new features in C-Kermit for Windows
- In addition to the original 32bit flavor, CKW is now available for
the first time ever in 64-bit form for x86-64, ARM64, IA64 (Itanium) and
AXP64 (for the never released 64bit Windows 2000 for Alpha). Given the
nature of this change, the 64bit version *may* come with some new and
exciting bugs — if people encounter problems they should give the
32-bit version a go and if that fixes the issue they should
log a bug for whatever the 64-bit version did
differently.
- CKW should now be buildable with all released 32bit or better versions
of Visual C++ (from 1.1 32-bit Edition up to the latest version) plus
OpenWatcom 1.9 plus GCC/MinGW. Using older compilers will result in fewer
features and reduced security but support for more versions of Windows. I
don't have access to the Visual C++ RISC editions (for MIPS, PowerPC and
Alpha) so I'm reliant on others reporting any build errors they encounter
there. The PowerPC linker in particular is known to have issues with the
number of global symbols defined in CKW (turns out there is a limit!) so
disabling some features will likely be required in order to get it to link.
- Kerberos V security now works on Windows XP SP3 up to Windows 11. David
says "This requires MIT Kerberos for Windows v4.1 which is only available
on x86 and x86-64 from here
http://web.mit.edu/kerberos/dist/index.html. Using Kerberos
authentication with SSH requires swapping around the SSH DLLs —
the
ssh readme has the details. I've not managed to
test Kerberos auth for telnet or ftp due to difficulty finding any
kerberized telnet/ftp servers to test against but if it works on Unix I
expect it should work on Windows as it's all the same code."
- GSSAPI authentication in the SSH client (requires MIT Kerberos for
Windows; see ssh-readme.txt for more
information).
- Updated to libssh 0.10.5 and OpenSSL 1.1.u.
- New less-crowded status line in the terminal screen (the bottom line
within the window frame, that shows the emulation, the Help key, the current
hostname, and the network protocol. The previous status had TMI — too
many items — and they wrote over each other.
- The old K95 hostmode and other scripts are now included with no
substantial changes.
- The fifth CKW Beta announces itself with a July 3, 2023, build date but
the vintage, NT 3.50 and Alpha builds a July 4 build date due to
New York / New Zealand timezone differences.
- Unlike previous CKW Betas, Beta 5 has the exact same code base as
the corresponding C-Kermit 10.0 Beta, which is Beta.10.
CLICK HERE for a detailed list of new features in
.
I hope that CKB's revived support for secure Telnet, FTP, and HTTP
connections will encourage the redeployment of secure Telnet and FTP servers
around the Internet, since Kermit's client implementations are vastly
superior to the SSH regime in power, functionality, flexibility, features,
customizability, automatability, and user-friendliness.
C-Kermit for Windows problems fixed in
- Using Alt-n to enter Plane-1 unicode values now
works correctly, e.g. Alt-n and then typing 2022 into the box
sends a Unicode bullet like the one on the left of this item. This feature
was broken in K95 2.1.3 (2001); at best it didn't work, at worst it crashed
the program.
- Received files are (once again) stored with the correct date.
- The sample customization file, k95custom.ini, is
now installed only if no other k95custom.ini can be found in the usual
places, so any customizations you made in previous Betas are preserved.
- The default action when receiving files while in terminal mode has
always been "ask", so K95/CKW pops up a window every time a file comes
at you while you're in the terminal-emulation screen for you to specify the
directory ("folder") to put it in. This feature is annoying, interferes
with scripted transfers, and allows only a restricted set of directories, so
it is virtually useless. The change Beta 5 is for new users
only because this change was not made in the CKW code, but in the sample
k95custom.ini file that is distributed with Beta.05 and used only if you
don't already have your own k95custom.ini. So for new users, the default
action when receiving files while in terminal mode is to simply receive and
save the file. If you can't find it, escape back to the command screen
(normally Alt-h) and type "where".
- Similarly, the sample k95custom.ini was changed so if you change the
screen dimensions by pulling or pushing the edge or corner with the
mouse, this simply makes space for more (or fewer) characters or lines.
The command that controls this is SET GUI WINDOW RESIZE-MODE, whose options
are CHANGE-DIMENSIONS and SCALE-FONT. SCALE-FONT (stretch or squish
characters) is the default, and probably not what most people want.
Known Problems with C-Kermit for Windows
Beta
Send bug reports, questions, and comments
to
ckw@kermitproject.org.
or file them in
CKW Issue Tracker
on GitHub.
- If you download a file to CKW whose name contains accented or
non-Roman characters (for example "Grüße" in ISO Latin-1 or UTF-8), the
file will arrive but its name will be garbled, as (for example)
"GrüÃ\237e". This is only the tip of the iceberg. Ever since Day 1, K95's
(and CKW's) default TRANSFER CHARACTER-SET has been TRANSPARENT, and its
default FILE CHARACTER-SET is LATIN1.
But Windows
supposedly requires
that all filenames be encoded as Unicode UTF-16, so any Kermit partner
(such as C-Kermit for Unix or VMS) should, in theory, convert both the
text-file's name and its contents to UTF-16 when constructing the packets to
be sent. This is well and good, but Windows versions have differences and
early 32-bit Windows versions didn't support Unicode at all. So how would
the Kermit file sender know whether (and how) to encode a non-ASCII
filename? (That said, it is still a deficiency of the protocol that it
ignores the issue of filename encoding... not to mention
length!)
Windows can't enforce any rule about the encoding of files (or their names)
because files can be imported from all different non-Windows OS's in all
different encodings. Nobody has ever filed any complaints related to this
issue, so I think it's best to let sleeping dogs lie because:
- Any conceivable change would involve either dangerous assumptions
or significant modifications to the Kermit protocol definition;
- Any change could be an unwelcome surprise to people who depend on the
current behavior;
- Storing text files in Latin-1 encoding on Windows doesn't seem to
bother Windows applications like Powershell, Notepad, or Wordpad, which
shows them correctly (even though CMD.COM does not).
- The best advice has always been to use only ASCII characters in
filenames (and, for that matter, not put put spaces in them).
- The terminal character-set menus (both the dropdown and the "set
terminal/file/transfer character-set ?" menus) are a mishmash of
official MIME character-set names and made-up pre-MIME "Kermit names"
(see THIS TABLE).
This is unavavoidable because (a) Kermit predates MIME, and
(b) many of the character sets supported by Kermit do not have MIME
names. In the menus, all names that are not MIME names for character sets
that do have MIME names should also have the corresponding MIME name
in the menu; for example "latin1-iso" and "iso-8859-1". Whenever a MIME
name exists, it should be accepted but this is not always the case because
C-Kermit has so many character-set-name tables: terminal, file, transfer,
etc.
- In Windows 11 the terminal beep randomly stops working. This is
not a problem with CKW, it's a bug in Windows 11. See
this
page ("Windows 11 application alert sounds go missing after updates")
at Microsoft.com. Workaround: "set terminal bell visible".
- Also in Windows 11... SSH key exchange works for
passwordless SSH connections to hosts that have ancient SSH servers, but
for some reason (only on Windows 11) a password popup appears. You don't
have to enter a password, you can just hit the Enter key (not Esc!)
to make the popup go away, and then key exchange proceeds normally.
- In recent Windows versions, apparently half-duplex serial connections
regulated by RTS/CTS flow control no longer work. Kermit does not do
the flow control itself, it simply tells the serial port device driver which
kind of flow control to use. RTS/CTS used to work (e.g. to make a
helf-duplex connection to an IBM mainframe through a serial connection to a
protocol converter such as the IBM 7171). Since none of this code has been
changed in decades, the working theory is that at some point Microsoft
reinterpreted RTS to be READY TO RECEIVE rather than REQUEST TO SEND, which
would wreck half-duplex connections. Possible workarounds include using CKW
on an older Windows version, or C-Kermit on Unix
or VMS, or MS-DOS Kermit on a DOS PC.
- The maximum for the SET TERMINAL WIDTH command is 256; there's no
reason it can't be much larger, especially since CKW's screen can be widened
to any width with the mouse, and since modern screens can be extremely wide.
If the screen has been stretched to wider than 256, however, SHOW TERMINAL
still says its width is 256.
- SET TERMINAL HEIGHT has a similar problem: although the screen
height can be stretched with mouse, the maximum height for the command is
supposedly 79, but SET TERMINAL HEIGHT to (e.g.) 80 or 90 seems to work.
- (This one seems to be fixed?
It's too soon to know
...)
Sometimes when CKW switches from the terminal screen to the command
screen (e.g. when you escape back, when you log out, or when the
connection is broken), the CKW prompt is not issued. It is still in
command mode, however, and ready to accept commands. If you type the Return
or Enter key, you'll get the prompt (but you shouldn't have to).
What are the four dots on the left side of the status line?
They are the
VT100
LEDs (
lights above its 6, 7, 8, and 9
keys). Host applications can control them by sending
escape sequences. To see for yourself, execute this script in
C-Kermit on the host while connected to Unix or VMS from CKW:
# Run to see the LEDs; Ctrl-C to stop it.
while true { for i 0 4 1 { xecho \{27}[\m(i)q, sleep 1 } }
To clear the LEDs tell C-Kermit to:
xecho \{27}[0q
Download
C-Kermit for Windows
is available as of
,
downloadable in various configurations from here:
https://ftp2.zx.net.nz/pub/CKW/test_builds/ckw10b10-beta5/
The configurations are:
Package link
| CPU Architecture
| Minimum Windows version
| Description
|
ckw-b5-x86-64.zip
| x86-64
| Windows XP Service Pack 3
| For 64bit PCs.
Visual C++ Redistributable: for Windows 7 and newer,
or Windows XP SP3 and Vista
|
ckw-b5-x86-32.zip
| x86
| Windows XP Service Pack 3
| For 32bit PCs
Visual C++ Redistributable: for Windows 7 and newer,
or Windows XP SP3 and Vista
|
ckw-b5-arm64.zip
| ARM64
| Windows 10
| For 64bit ARM devices. No Kerberos/GSSAPI support.
Visual C++ Redistributable.
|
ckw-b5-arm32.zip
| ARM32
| Maybe Windows 8/RT or newer
| For 32bit ARM devices. It should work on ARM versions of windows older than Windows 10 but this has not been tested. No SSH or Kerberos/GSSAPI support.
|
ckw-b5-vintage.zip
| x86
| Windows NT 3.51, Windows 95
| Feature (and security) reduced for vintage PCs.
Visual C++ Redistributable
|
ckw-b5-nt350.zip
| x86
| Windows NT 3.50
| Even more feature reduced for Windows NT 3.50. This may also work for serial connections on Windows NT 3.1. No dialer.
|
ckw-b5-ia64.zip
| IA64 (Itanium)
| Windows Server 2008 R2
| For Itanium Workstations and Servers running Windows. Only
tested on Server 2008 R2 but may work on older versions. Has SSL/TLS
support but no SSH or Kerberos/GSSAPI
|
ckw-b5-nt350-axp.zip
| DEC Alpha
| Windows NT 3.50
| Feature-reduced build for NT 3.50 though due to some tools used in the build process it may actually require NT 3.51 or 4.0.
|
ckw-b5-axp64.zip
| DEC Alpha
| 64bit Windows 2000/Whistler
| For Microsoft-internal 64bit versions of Windows 2000/XP for the Alpha
|
ckw-b5-src.zip
| x86, x86-64, ARM64, ARM32, IA64, MIPS, PowerPC, Alpha, Alpha64
| Windows NT 3.1, OS/2
| Source code. Visual C++ is recommended but it should also work with OpenWatcom 1.9 and MinGW
|
If you're upgrading from Beta 4, you might want to consult
Whats New in Beta 5. If you're upgrading
from an earlier release or upgrading from Kermit 95, the
full change log and
SSH Readme are probably worth a look.
Download procedure
- Make a new folder on your desktop named (you can name it whatever
you want, but the following instructions refer to ).
- Download the desired CKW configuration package from the "Package link"
column in Table 1. The appropriate choice for
most people (i.e. those using Windows Vista or later) would
be
.zip,
(we'll assume this in the rest of the instructions).
- Move (drag) the downloaded zip archive to folder.
- Open (double-click) the folder.
- Right-click on the .zip file
and choose "Extract All...". This creates a subdirectory
called (or other suffix,
depending on which archive you downloaded). Don't be surprised if
there are actually two levels, not just one, e.g. if your
directory winds up with a
a subdirectory with the same name, which contains the CKW files.
- (optional) Delete the .zip file
(right-click → delete).
Installing
There is (as yet) no "one-click" installer for CKW. Here is the procedure
for the current Beta. A distinct advantage of this do-it-yourself method is
that, not only can you have CKW and K95 installed at athe same time, you can
also have multiple versions of CKW on your PC. Case in point: there is a
host that I use on a daily basis that has an antiquated SSH server. The
second Beta worked with it, but the third did not because it is built with a
newer version of LibSSH, which has dropped support for old SSH servers (this
problem was fixed in the 4th Beta). Anway, here is the installation process
for the current Beta:
- Open the "" folder
(double-click it).
- The folder
contains 46 files, which include:
- k95g.exe - The executable C-Kermit 10.0 for Windows (K95) program
- k95.exe - Ditto, but runs in "console mode" (like DOS, not recommended)
- libcrypto-1_1.dll - Required for SSH
- ssh.dll - Required for SSH
- libssl-1_1.dll - Required for SSH
- And a bunch of others that can be ignored
The DLL's are required for Kermit to run, so
don't delete them.
- If you already have an icon on your desktop called
"k95g.exe - Shortcut" from the previous CKW test version,
rename it (for example to "k95gB4.exe") so you can still have access to
to it. Similarly for each CKW Beta you have installed.
- In the " folder,
Right-click on k95g.exe and choose "Create shortcut" (in Windows 11
you have choose "Show more options" and then choose
"Create shortcut").
This creates a file called "k95g.exe - Shortcut" in the same folder.
- Drag the "k95g.exe - Shortcut" to your Windows desktop or wherever else
you want to run Kermit from. Recommend you rename it to something
like CKWB4 so the name doesn't wrap around or get lost on crowded desktops.
Leave the folder as it is;
don't move, rename, or delete it, or delete anything that's in it.
The new built-in SSH client is ready to use with password authentication.
To set up passwordless key exchange authentication, read
these instructions.
Running
Start (run) the new C-Kermit for Windows program by double-clicking the icon
you just made in the previous step.
The first time you start it you'll
get warnings from Windows and/or your antivirus software because this is
a new program and it's free and open-source. Examples of warnings:
-
Windows protected your PC
Microsoft Defender SmartScreen prevented an unrecognized app from
starting. Running this app might put your PC at risk.
More info ← click this
App:
| k95g.exe
|
Publisher:
| Unknown publisher
|
[ Run anyway ] ← click this
(see screenshot)
- Symantec Endpoint Protection Download Insight
Our information on this file is inconclusive.
We recommend not using this file unless you know it is safe.
k95g.exe
[ Remove this file from my computer ]
[ Allow this file ] ←
click this
Unproven: There is not enough information about this file to recommend it.
Very few users: This file has been seen by fewer than 5 Symantec users.
Very new: Symantec has known abou this file approximately 2 days.
Permission: If you press OK, an application exemption will be created
for this file. You should allow only files you are sure are safe.
Are you sure you want to allow this file?
[ Cancel ]
[ OK ] ← click this
These warnings appear only the first time you start the new CKW.
But they come back when you download a new release (and then they
go away again after you follow instructions above).
Coexistence with K95 2.1
If you already have Kermit 95 2.1.3 (or earlier) installed on your PC, CKW
won't interfere with it and you can use both versions, and you can still use
the K95 Dialer. At present CKW is installed in a folder on your desktop,
whereas K95 2.1 was installed in the normal Windows way:
Table 2: K95 2.1 directories
File
| Filename
| Directory
| Kermit variable
|
Executable (GUI)
| k95g.exe
| C:\Program Files (x86)\Kermit 95 2.1\
| \v(exedir)
|
Executable (console)
| k95.exe
| C:\Program Files (x86)\Kermit 95 2.1\
| \v(exedir)
|
Root startup file
| k95.ini
| C:\ProgramData\Kermit 95\
| \v(inidir)
|
Sitewide initialization file
| k95site.ini
| C:\ProgramData\Kermit 95\
| \v(inidir)
|
User's customization file
| k95custom.ini
| C:\Users\username\AppData\Roaming\Kermit 95\
| \v(appdata)
|
The actual directory names can vary according Windows version, but the
variables should always work.
CKW *presently* uses the same initialization and customization files as
Kermit 95. If these files contain any commands not supported by CKW or
by K95, you can protect them with:
if < \v(version) 1000000 {
commands for K95
}
if >= \v(version) 1000000 {
commands for CKW
}
\v(version) is the all-numeric
version number of the C-Kermit code used for the Windows build. The last
three digits are the edit number. 800207 is C-Kermit 8.0.207 and 1000400 is
C-Kermit 10.0 Beta.01. Subsequent Betas have higher numbers, e.g. 1000405.
When CKW is finally released it will still peacefully coexist with K95,
although the exact mechanisms have yet to be worked out, but most likely all
of its file names will start with "ckw" rather than "k95" (as in the table),
and it will have its own separate
\v(exedir)
,
\v(inidir)
, and
\v(appdata)
directories. Or maybe it's best to just keep the
k95 prefix.
The CKW Initialization File
More about "Ini files"
In Betas 1 through 4 CKW uses K95's initialization and customization files
(Table 2) if they exist. Future Betas might have
their own set, e.g. ckwcustom.ini instead of k95custom.ini. Currently, the
same directories as for K95 are used for the k95.ini, k95site.ini, and
k95custom.ini files. These are plain-text files that contain C-Kermit/K95/CKW
commands. The k95custom.ini is where you would set up your preferences.
For making connections to other computers, you can define
macros for each host that include the access details, the connection
and login procedure, and the desired fonts, font-sizes, screen dimensions,
colors, position, resize behavior, and so on, for each host you connect to.
You can use different attributes (e.g. color) for each host so when you
have many connections going at once, you can tell the difference by their
distinct appearances, as in this example.
Exportability of SSH client
The US Department of Commerce Bureau of Industry and Security (BIS) Export
Administration Regulations (EAR) govern the export of software that includes
encryption features. These rules have changed since Kermit 95 was last
released in 2003, at which time certain countries were barred from obtaining
such software from the USA by mail order, download, or other means. As of
2021, however,
Kermit software is no longer subject to export
restrictions, and C-Kermit for Windows can include a built-in SSH client
based on LibSSH that is, indeed,
exportable to all countries.
See these references:
- Understanding
US Export Controls with Open Source Projects, The Linux Foundation
- Understanding
US Export Controls and Open Source Projects (2021 Update),
The Linux Foundation
- Publicly
Available - Public Domain - Open Source,
MIT Office of the Vice President for Research
- Bureau
of Industry and Security
Export Administration Regulations, US Department of Commerce (2022)
- Bureau
of Industry and Security Commerce
Control List Category 5 - Telecommunications and Information Security
In brief (paraphrasing from item 5): Publicly available ready-to-use
software whose primary function is other than information security, that
includes an openly available encryption component without modifications, and
that is of interest to a wide range of individuals and businesses, is exempt
from the BIS Export Administration Regulations. That's why LibSSH and
numerous SSH clients are downloadable on the Internet by anybody at all, no
matter what country they are in. CKW will be no different.
Similar considerations apply to Kermit's built-in OpenSSL and
Kerberos 5 features, such as its Telnet, FTP, and HTTP clients.
Documention
Specific to C-Kermit for Windows:
A "How To" document for getting started with CKW:
https://www.kermitproject.org/ckwhowto.html
David Goodwin's notes:
http://www.ext.zx.net.nz/software/notes/kermit95/
Since
C-Kermit for Windows
is C-Kermit, you can refer to the C-Kermit
documentation for most everything else:
https://www.kermitproject.org/ckbindex.html
https://www.kermitproject.org/ck90.html#doc
For an introduction to the Kermit scripting language (which lets you
write procedures to automate common tasks), see this page:
https://www.kermitproject.org/ckscripts.html
For CKW's Windows-specific aspects, see:
- Chapter 6 of
the Kermit 95 manual: Using the Command Screen,
-
Chapter 7
of the Kermit 95 manual: Using the Terminal Emulator,
and
-
Chapter 8
of the Kermit 95 manual: File Transfer.
Building C-Kermit for IBM OS/2
David was asked in September 2023
how to build C-Kermit 10 for OS/2;
the rest of this section is his response.
the OS/2 and Windows versions descend from Kermit 95 and share a fair bit of
code and so are both developed in the same repository over on github here: https://github.com/davidrg/ckwin/.
The 32bit OS/2 version of Kermit 95 2.1.2 was built with some version of
IBMs VisualAge C++ compiler but I don't have a license for that so I use
OpenWatcom 1.9 at the moment. As no one has run the code through VisualAge
C++ in over 20 years I wouldn't be surprised if there were a few build
errors at this point.
With OpenWatcom 1.9 you can build either directly on OS/2, or cross-compile
from Windows. Instructions for building it are here:
https://github.com/davidrg/ckwin/blob/master/doc/os2-building.md.
Github Actions also automatically produces 32bit OS/2 binaries which are
available as the "ckos2-ow1.9-x86" artifact on any recent build.
When built with OpenWatcom 1.9 there are a number of bugs that currently
impact its usability though, documented here:
https://github.com/davidrg/ckwin/issues?q=is%3Aissue+is%3Aopen+label%3AOS%2F2+label%3Abug.
At this stage I don't know if these are a result of switching compilers (and
so wouldn't exist/be visible when built with VisualAge C++) or if they're a
result of going 20 years without maintenance. Probably a mix of both.
There is still at least some code present for 16bit OS/2 (1.x) but it's not
been supported since C-Kermit 5A(190) of October 1994 so it's probably some
way from being buildable at this point.
As for Windows, this page covers supported compilers and which ones are
required for various features:
https://github.com/davidrg/ckwin/blob/master/doc/compilers.md.
Build instructions for Visual C++ and OpenWatcom are here:
https://github.com/davidrg/ckwin/blob/master/doc/building.md, and for
MinGW:
https://github.com/davidrg/ckwin/blob/master/doc/mingw-building.md.
Choice of compiler is mostly down to target windows version and CPU
architecture. With the right compiler, C-Kermit for Windows will run on
every 32bit or 64bit non-embedded/mobile version of Windows except for NT
3.10 (it does run there but there are issues —
https://github.com/davidrg/ckwin/issues/164), and on all CPU architectures
windows has officially supported (x86, x86-64, MIPS, Alpha, PowerPC,
Itanium, ARM, ARM64) as well as the never released 64bit Windows for the Alpha.