Menu
May 02, 2013 How can I transfer files from my DOS laptop? I have spent several hours Googling the transfer of DOS files. I use an IBM laptop running DOS for. Mar 09, 2017 How to transfer softwares/programs from PC to PC without an install CD. Lost install cd? How to transfer files from one PC to another PC using LAN Cable.
Let’s clear up some misconceptions about Vinyl Express LXi Cloud and LXI 12. At one end of the spectrum, we have users who fear they can never switch computers because they have already downloaded their one and only copy of LXi. At the other end, some users think they can download the software multiple times onto an infinite number of computers. After all, if the software doesn’t require a security hardware key, what’s stopping users from downloading multiple copies? This article will address licensing and explain what to do if you ever need to reinstall to the same or new computer.
Part 1: License Removal or Upgrade
The standard purchase of Vinyl Express LXi Cloud or LXi 12 includes one license. Prior to LXi Cloud, previous versions prohibited simultaneous usage on multiple computers by requiring that a security hardware key (or dongle) be plugged into the computer while using the program. In the same manner, when Cloud users try to download to a second computer, they are prompted that the software has already been licensed to the first computer and is therefore unavailable for download.
LXi Cloud’s license registration prevents illegal copies and unauthorized usage, but what about a legitimate need to reinstall? Maybe our computer crashed; maybe it caught a virus and we had to reformat; maybe we just want to upgrade to a new computer. Isn’t there a way to transfer (not copy) the license from one computer to the next? Of course there is! The key is you must remove your current license before you can license a new (or even the same) computer. There are a few different ways to go about this depending on your situation.
A. “My software is still working, but I want to transfer it to a different computer.”
The license will be released as part of the uninstall process as long as the computer is connected to the internet when you do. Still, you may want to remove the license manually just to be certain. Here’s how.
1. Click “Start” in Windows and go to “All Programs.”
2. Find the LXi Cloud folder and open the “License Manager.”
3. Select “Remove License from This Computer.”
That’s how easy license removal can be. Unfortunately, we don’t always have the option of removeing the license before unexpected computer failure. In those cases, users of Vinyl Express LXi Cloud will need to take other measures.
2. Find the LXi Cloud folder and open the “License Manager.”
3. Select “Remove License from This Computer.”
That’s how easy license removal can be. Unfortunately, we don’t always have the option of removeing the license before unexpected computer failure. In those cases, users of Vinyl Express LXi Cloud will need to take other measures.
B. “I no longer have my software due to crash or reformat, and I’m in a hurry to reinstall (for the first time).”
SAi, the software manufacturer, typically oversees re-licensing to prevent abuse. However, every user has the ability to release his/her license at least once for reinstallation. Follow these steps.
1. Login to www.saicloud.com using the email and password you submitted when originally setting up your account.
2. Click on the name of your software. If you have more than one program on your account, choose the one you wish to reinstall.
3. Click “License Removed.”
4. If you don’t have a removal code, click “No Removal Code.”
5. Finally, click “Remove License.”
You may get a confirmation that your license was successfully removed, or you may simply be redirected to your account’s home page. As long as you didn’t get a notification of too many removals, you were successful. If you do get a notice that there have been too many removals, you are left with one final option.
2. Click on the name of your software. If you have more than one program on your account, choose the one you wish to reinstall.
3. Click “License Removed.”
4. If you don’t have a removal code, click “No Removal Code.”
5. Finally, click “Remove License.”
You may get a confirmation that your license was successfully removed, or you may simply be redirected to your account’s home page. As long as you didn’t get a notification of too many removals, you were successful. If you do get a notice that there have been too many removals, you are left with one final option.
C. “I need the manufacturer to release my license.”
Don’t be surprised if you got the “too many times” notification when trying to remove the license yourself. This may have been caused by multiple attempts during your initial download. There is no need to fear. We simply need to contact the manufacturer to release the license.
• Submit your request for LXi Cloud license release by calling SignWarehouse Technical Support at 1-800-966-1783 or email [email protected].
We will forward your request to SAi. The request can take anywhere from 20-minutes to a few hours depending on the manufacturer’s workload. We will promptly contact you as soon as we receive confirmation that the license was successfully released.
We will forward your request to SAi. The request can take anywhere from 20-minutes to a few hours depending on the manufacturer’s workload. We will promptly contact you as soon as we receive confirmation that the license was successfully released.
Part 2: Download and Re-install
Once you have successfully removed your license, you can download the software from your Cloud account just like you did during the initial installation.
1. Login to your SAi account on the computer to which you wish to download.-click
2. Click “Download License.” Make sure to save it to the desktop or somewhere you can easily find it later.
3. Click “Download Now” to retrieve the LXi program.
(Time-saving tip: If you still have the SAI Installer folder on your desktop from the original
installation, you can just open that folder, find the AutoRun.exe file and double-click that to quick-start the process. )
4. If you’re having trouble downloading the installer, just click here to download the zipped installation file. Extract it, open the mail folder and right-click on the Autorun.exe file. From the fly-out menu, select Run as Administrator, and launch the installer. This method bypasses some issues with internet connectivity that can interfere with downloading the installer from the SAI server.
5. A popup at the bottom of your screen will give you the options to run or save the download. Click “Run” to begin the installation.
2. Click “Download License.” Make sure to save it to the desktop or somewhere you can easily find it later.
3. Click “Download Now” to retrieve the LXi program.
(Time-saving tip: If you still have the SAI Installer folder on your desktop from the original
installation, you can just open that folder, find the AutoRun.exe file and double-click that to quick-start the process. )
4. If you’re having trouble downloading the installer, just click here to download the zipped installation file. Extract it, open the mail folder and right-click on the Autorun.exe file. From the fly-out menu, select Run as Administrator, and launch the installer. This method bypasses some issues with internet connectivity that can interfere with downloading the installer from the SAI server.
5. A popup at the bottom of your screen will give you the options to run or save the download. Click “Run” to begin the installation.
Fig 1: Rename the folder to prevent over-writing the installed program
Note! Do Not Overwrite the existing installation. Reinstall LXi in a new folder so that your old files and preferences are saved. This will also help in any future troubleshooting. When the LXI Choose Destination Location window appears, click the Browse button at the bottom of the window next to the “Destination Folder Location” text. Then, in the Choose Folder window, type in a new folder name; i.e. LXI12_NEW (Fig 1)
5. After the program has been installed, find the LXi Cloud program and open the License Manager.
6. Select the option, “Import a License File.”
7. In that window, browse to the location where you saved the license earlier. Select the license and click “Open.”
8. Once complete, click “Finish” in the License Manager.
9. Now go back to the LXi Cloud program and open the Install Manager. Select “Install to Desktop” and “Clear Application’s Previous Preferences.” Click “OK.”
10. Follow the prompts to complete the installation on the new computer.
6. Select the option, “Import a License File.”
7. In that window, browse to the location where you saved the license earlier. Select the license and click “Open.”
8. Once complete, click “Finish” in the License Manager.
9. Now go back to the LXi Cloud program and open the Install Manager. Select “Install to Desktop” and “Clear Application’s Previous Preferences.” Click “OK.”
10. Follow the prompts to complete the installation on the new computer.
You should see new icons (LXi 12 and Production Manager 12) on your computer’s desktop once complete.
Installing Upgrades
The process for installing an upgrade from LXI 10 to 12 is similar. Once you’ve purchased the upgrade, you will receive and email with the new activation code. You’ll need to create an SAI Cloud account and download the new software. Download and install LXI 12 license, but do not override the existing LXI folder. Save it to a new folder (see above) so you can retain your old files and import them into the new LXI 12 license. At the end of the installation process, you will be prompted to enter the activation code. This can be found in your email or your SAI Cloud account.
As you can see, reinstalling VE LXi Cloud is a bit more involved than the simple click of a button. While the software is not intended to be copied onto multiple computers, we certainly want you to be able to access your software whenever you want. By following the steps outlined in this article, you should be back in the business of designing and cutting in no time.
C-Kermit 8.0 Installation Instructions for VMS
[ Contents ][ C-Kermit ][ Kermit Home ]As of C-Kermit version:9.0.300, 30 June 2011
This file last updated:Sun Aug 21 12:16:39 2011(New York City time)
Note: Edits 301 and 302 are identical to 300 for VMS.
This file last updated:Sun Aug 21 12:16:39 2011(New York City time)
Note: Edits 301 and 302 are identical to 300 for VMS.
IF YOU ARE READING A PLAIN-TEXT version of this document, note that thisfile is a plain-text dump of a Web page. You can visit the original (andpossibly more up-to-date) Web page here:
- Authors:
- F. da Cruz, C. Gianone, M. Evarts, Columbia University, New York, NY.
Terry Kennedy, Saint Peters College, Jersey City, NJ.
And: Peter Mossel, James Sturdevant, Richard Gilbert, Sebastian Bazley.
CONTENTS
1. QUICKSTART GUIDE
To install VMS C-Kermit on VAX/(Open)VMS 5.0 or later, and Alpha OpenVMS (allversions), please follow the instructions in the next three major sections ofthis file. VMS C-Kermit will also be available for the IA64 (Itanium) assoon as the IA64 version of VMS is released.Section 3, Configuring VMS for Best Results withKermit, contains important information needed to achieve solid performancefrom C-Kermit. Please read it and follow the suggestions or give it to yoursystem manager. Section 4, Decoding VMS C-Kermit Hex Files,explains the process required to create an executable image from the'text-only' HEX files. These HEX files are distributed on the ANSI tapes fromColumbia University and are decoded using an assembly-language program whichis also provided. If you have received VMS C-Kermit on TK50 tape in BACKUPformat, then you already have binary executable files included on the tape.Section 5, Installing VMS C-Kermit, gives step-by-stepinstructions for making C-Kermit available and fully configured for yourusers.If you are running a version of VMS *prior* to 5.0, or need to customizethe C-Kermit sources, please refer to Section 5.
[ Contents ][ C-Kermit ][ Kermit Home ]
2. BOOTSTRAPPING
In many cases, you can get C-Kermit onto your VMS system using FTP, an oldversion of Kermit that is already there, or some other existing file transfermethod, or by copying it from magnetic tape, diskette, or CDROM.In case none of those methods are available to you, here is a method to'bootstrap' C-Kermit onto a VAX system from another computer. It uses theolder and smaller 'Kermit-32' program (which runs only on VAXes, not Alphas)to load the newer and larger C-Kermit program.
Suppose, for example, you have a PC with DOS, Windows, or some form of UNIXsuch as Linux, which has FTP capability, and the PC is connected to your VAXthrough its serial port (directly, with a null modem cable, or else through amodem), and the PC already has its own Kermit program installed (MS-DOSKermit, Kermit 95, or C-Kermit, depending on the OS). Here are specificinstructions you can try; this example assumes the PC has Linux and C-Kermit:
- Get the files vmsmit.hex and vmsdeh.mar with anonymousftp in text mode onto your PC from:Also get the appropriate version of VMS C-Kermit on your PC from the C-Kermit website:
- Use C-Kermit on Linux to log in to VMS:
- Log in to VMS, SET DEFAULT to the desired directory, and then givethe following commands at the VMS prompt:
- Give the following command at the VMS prompt:
- Escape back to C-Kermit on Linux with Ctrl- C.
- Tell C-Kermit to:
- Repeat steps 4-6 for VMSDEH.MAR.
- Now you should have VMSMIT.HEX and VMSDEH.MAR in yourVMS directory. Give the following commands to VMS:
- When VMSDEH prompts for a filename, type 'vmsmit.hex'.
- When VMSDEH is finished, it prompts you for another filename.Just press the Enter (Return) key.
- Now VMSMIT.EXE should be in your directory. To run it, type:at the VMS prompt.
- Use this program to transfer the appropriate version of C-Kermitto VMS, and then you will have a modern, fast, up-to-dateversion of Kermit.
WARNING: You can't use Kermit-32 ('Bliss Kermit') to receive a VMS binaryprogram. If you have to use Kermit-32 to get C-Kermit onto your VAX, you'llneed to transfer a hex-encoded version of the binary, rather than the straightbinary, and then 'dehexify' the result as shown above. This is becauseKermit-32 stores incoming binary files in a format that is not appropriate forVMS executables (variable 510 instead of fixed 512).
[ Contents ][ C-Kermit ][ Kermit Home ]
3. CONFIGURING VMS FOR BEST RESULTS WITH KERMIT
3.1. Terminal Buffer Size
VMS is shipped with default installation parameters designed to function onall possible configurations. Some of these parameters have not been changedsince the 'average' VMS system was a VAX-11/780 with 1Mb of memory.The main parameter that affects Kermit is the terminal type-ahead buffer size,which applies to serial terminal devices (with the TT or TX prefix). Thereare two possible values in VMS - the 'normal' size and the 'alternate' size.The defaults for these are 78 and 200 bytes, respectively. If more dataarrives at the terminal driver than these buffers can hold (which is a likelyoccurrence during file transfer), it will be discarded and file transfers willbe slowed down or terminated by errors.
This is most frequently seen when receiving files on a slow VAX, particularlywhen using long packets and/or sliding windows. File reception requireslarger system buffers (to hold arriving packets), and the speed of the VAXcontrols how quickly Kermit can empty them.
The recommended minimum size for each of these buffers is the number shown as'Buffer size' by the C-Kermit SHOW PROTOCOL command, which is the total amountof memory allocated by C-Kermit for packet buffers (window slots times packetlength). VMS C-Kermit is shipped with a buffer size of 9065, which can bealtered by the user with a SET BUFFERS command.
To change the values of the VMS typeahead buffer sizes, you should edit thefile SYS$SYSTEM:MODPARAMS.DAT. Determine the new values you want touse and add lines like the following to the end of the MODPARAMS.DATfile:
for example:
The TTY_ALTYPAHD size should be at least as great as the TTY_TYPAHDSZ.Digital recommends a value of 2064 or greater for TTY_ALTYPAHD if you arerunning VMS V5.5 or higher, or if you are running the optional LATmaster codeunder VMS V5.4-1, -2, or -3.
You should also examine this file to be sure there aren't any otherdefinitions for TTY_TYPAHDSZ or TTY_ALTYPAHD. If there are, you'll getwarning messages in the next step.
You may wish to simply set TTY_TYPAHDSZ=TTY_ALTYPAHD=2064, sincemost common VMS 'TTY ports' these days are actually LAT or TCP/IPdevices, which cannot easily be configured to use the alternatebuffer. Also, it takes a privileged user or program to set a portto use the alternate buffer, and since we do not recommendinstalling Kermit with privileges, this would restrict Kermit accessto privileged users.Let's consider a medium-sized VAX with perhaps 64 'ports' (eitherserial ports or LAT or TCP/IP network ports). This system probablyhas at least 16 megabytes of memory. Configuring TTY_TYPAHDSZ to2064 will take up 64 * 2064 bytes of memory, or 132096 bytes. Thisis less than 1 per cent of available memory. Most systems wouldhave more than 16Mb of memory for 64 simultaneous users, loweringthe percentage even further.
In some cases, it might also be necessary to increase your system's MAXBUFparameter. It should be somewhat longer than the longest packet you wantKermit to be able to send or receive, to allow for SYS$QIO overhead (thebigger the value, the more overhead). DEC currently recommends 2300, whichshould be sufficient for 2K (2048-byte) packets. If you want to useC-Kermit's maximum packet length, 9024, then your MAXBUF should be set toabout 12000. Do this in the SYS$SYSTEM:MODPARAMS.DAT file:
You should also ensure that PQL_MBYTLM is at least MAXBUF + 2300; otherwise,at least on early 5.x VMS releases (reportedly), the system can crash.
To have these changes take effect, run the 'AUTOGEN' procedure:
or:
or:
(Read about AUTOGEN in the VMS Guide to System Management)
This incorporates the new buffer sizes into the system configuration, and theywill take effect the next time the system is reloaded.
To examine your system parameters:
In an emergency, or for testing purposes, you can also change your MIN_MAXBUFvalue 'on the fly':
This operation should be used with caution, and should probably NOT be usedwith values greater than about 3000. The AUTOGEN procedure is safer becauseit understands the relationships among the major parameters.
NOTE: Although it is still recommended that you make your MAXBUF settinglarge enough for Kermit packets, it is (as of C-Kermit edit 190) no longerstrictly necessary. C-Kermit's packet writer now recovers from MAXBUF andquota-exceeded errors automatically by backing off and retransmitting thepacket in appropriate-size chunks (size determined by trial and error).But this involves a small amount of additional overhead, so it's still bestto have adequate MAXBUF and quotas.
3.2. User Quotas and Privileges
C-Kermit communications are also affected by the user's BYTLM quota andpossibly also the process page quota (PGFLQUO). Also the BIOLM quota(should be at least 10 or 20).In modern versions of VMS, the default BYTLM quota is 8192, which shouldnormally be adequate. If C-Kermit users experience error messages informingthem that a quota was exceeded during terminal emulation or file transfer, thesystem manager should increase the user's BYTLM and/or process page quota. Tofind out the user's quotas, the system manager should:
Then look for the relevant quotas and adjust them as required. The BYTLMquota should be somewhat greater than the product of Kermit's window sizeand packet size, for example, 8192 for 4 window slots and 2000-byte-packets.PGFLQUO should be 20,000 or higher.
If users will be using C-Kermit's PUSH command or issuing REMOTE commands (suchas REMOTE DIR) to the VMS C-Kermit server, the user will need to have theability to create subprocesses (AUTHORIZE parameter PRCLM). If Kermit willitself be invoked as a subprocess (for example, from within a menu system) thisshould be considered as well. Kermit uses local mailboxes for remote commandexecution, so users will also need the TMPMBX privilege if these commands areto be used.
3.3. Configuring Serial Communication Ports
If your system has a port that is frequently used for file transfers (forexample, with a modem), you should have your system manager enable thealternate type-ahead buffer, and direct memory access, by placing the command:in the system-wide startup command file, where ddcu: is the name of thedevice, for each such device. If DMA is not enabled, Kermit will run moreslowly and use a lot more CPU time. (Note: DMA is only available on certaintypes of devices; e.g. TX but not TT or LTA).
If the device is connected to a modem, and is to be used for dialing out,also include the /MODEM qualifier:
The modem must also be configured to make DSR follow CD. In modems that usethe Hayes AT command set, the command is AT&S1. If you can't configureyour modem this way, then VMS will hang up on it during the dialing process,preventing you from completing calls (C-Kermit's DIAL command will make thissetting in the modem for you on a per-call basis, but only if this informationis in its internal modems database; tell C-Kermit to SET MODEM TYPE xxx andthen SHOW MODEM to find out). A less desirable workaround is to configure themodem to ignore DTR (AT&D0), but this can block normal hangup methods evenwhen you want to use them, thus opening security loopholes. A thirdpossibility is to jumper theCD and DSR wires in your modem cable.
If the VMS port is not connected to a modem or other data communicationsdevice that follows the RS-232 (V.24) signaling conventions, or if the VMSport does not have a full complement of RS-232 wires (which are lacking inmodular MMJ ports, for example), you might have to set the /NOMODEM qualifierinstead:
Even with these settings you might experience what UNIX users know fondly as'getty babble', which occurs when logins are enabled on the device. Thisoccurs with Kermit, SET HOST/DTE, or any other method of communication; forexample, AT<CR> is sent to the modem, the modem echoes AT<CRLF>and then says OK<CRLF>. VMS thinks a user named AT is trying to log inwith a password of OK, and says 'User authorization failure', but the modemechoes this too, and so on, back and forth, many times, maybe forever.Reportedly, this can be prevented by giving the SECURE attribute to the portin question, e.g.:
which disables logins on the port until a BREAK signal is received.
Additionally, for non-privileged users to access a terminal device, they needto be granted access to it. The default for terminals is access only by userswith SYSTEM privileges (UIC group less than or equal to MAXSYSGROUP, or withSYSPRV privilege). See the VMS documentation for the SET PROTECTION commandfor more information. Note that if you grant everyone access to the port,anyone can make phone calls via the modem, so you might want to limit this toparticular users, possibly by using a device ACL (VMS V5.0 and later only).
3.4. Configuring LAT Devices
In this discussion, we are using a DECserver 700-16 (the kind with MMJ/RJ45connectors that lack a full complement of modem signals). (For examplesof configuring the DECserver 200, also see Section 5.)3.4.1. Connecting a LAT Port to a PC
We'll begin by connecting a PC's serial port to DECserver Port 2. Commandsare given at the DECserver's console, normally Port 1. In case it is a newDECserver and you haven't yet given it a name:We'll be using the server name 'latbox' in the examples. Now set up portminimally for a test:
Then:
- Plug a BN25G-04 cable into LAT port 2.
- Plug the appropriate adapter (H8585-something) into the other endand connect it to the PC's serial port. In this case, the PC hasa DB-9, so we use the H8585-AA.
- Start Kermit on the PC and tell it to:
- Press the Enter key. You should see the Local> prompt, and you shouldbe able to type commands, e.g. to connect to your VMS system.
OK, so it works in local mode. If not, check your cabling. Now to set it upfor remote mode, i.e. to allow VMS to make a connection to the PC through theDECserver port:
Take note of the port's name; by default it is PORT_2, but you can change itto anything you like with:
We'll stick with PORT_2 in this discussion.
With Kermit on the PC is still in CONNECT mode, do:
This should put a test pattern on PC screen.
Now to set up the port for use from VMS. First enable SYSPRV, CMKRNL, LOG_IO,and SYSNAM privileges, then:
The /NODE switch gives the nodename of the DECserver; the /PORT switch givesthe port *name* (not number) of the port on the DECserver. The /NOQUEUEswitch is important; otherwise if somebody does 'set port lta600' when it isin use, they will sit there and wait until it becomes free.
Then in VMS:
This sets the typeahead buffer and makes the speeds match. You can use LATCPagain to verify the setup:
(Use 'show port' without any port number to look at all defined LAT ports.)
That's it. Now start kermit and assign the port:
This should display the name and speed of the LAT device, as configuredabove. Then to make the connection:
Type some characters to VMS C-Kermit -- you should see them come out on thePC's screen. Type some characters on the PC keyboard and they should come outon VMS C-Kermit's screen.
On the PC, escape back to the Kermit prompt and type 'show comm' or 'showmodem' to see what modem signals are being presented by the connection.DECservers that have 25-pin serial connectors, such as the 200 and the 700-8,can do full modem control, but those with mini connectors, such as the 700-16,make you choose between limited sets of modem signals; the DECserver can beconfigured for either hardware flow control (recommended for high-speedconnections) or DTR/CD (allowing each end of the connection to tell when theother end has hung up), but you can't have both. On the DECserver, use:
where xxx is CTS-DSR-RTS-DTR or RI-DCD-DSR-DTR, to select the desiredcomplement of modem signals; the first one for hardware flow control, thesecond one for ring/hangup control.
On the PC, use 'show comm' to make sure the PC sees the CTS signal. If so,tell Kermit to:
Then put the PC Kermit in server mode and, using VMS C-Kermit as client,transfer some files. Experiment with window size, packet length, andunprefixing to achieve the highest transfer rate. Then experiment with higherserial speeds -- this will require a LATCP command on VMS, 'change port' and'logout port' commands on the DECserver, and a 'set speed' command in PCKermit.
3.4.2. Setting Up a Dialout Port
Now let's connect a modem to DECserver Port 3 for high-speed data transfer(RTS/CTS, but no RI/CD). In this example the modem is a USR Courier.Connect port 3 (in this case with BN25G-04 cable with an H8585-AC adapter)to the modem. Then at the DECserver:
Back at VMS:
Now start C-Kermit and assign the port:
And off you go.
For other configurations, refer to your DECserver and LATCP documentation.You can set up port 'hunt groups', you can assign logical names to the VMSports, which can refer to single LAT ports or entire hunt groups, and so on.You can even define 'bidirectional' ports for both calling in and calling out,but these are difficult to troubleshoot when there are problems.
3.4.3. DECservers and Telnet
DECservers that support TCP/IP connections can be used by C-Kermit for shareddialout modem access. The DECserver can be configured for this using acommand like:This associates TCP socket 2001 with serial port 1 on the DECserver.Then you can use Kermit to Telnet to port 2001 on the DECserver and dialthe modem that is on the DECserver's serial port 1.
If you cannot get reverse LAT working, but LAT is working, it is stillpossible to use Kermit via LAT so long as your system (and Kermit) supportTCP. Start Kermit, tell it to 'set host localhost' (the TCP loopback name).In connect mode you can log back on to the same system (see the cautions in Using C-Kermit about 'C-Kermit in theMiddle').
Then you can use SET HOST/LAT from the CONNECT session to dial out, login tothe remote system and start the remote Kermit. Now go back to the originalKermit session to transfer the files. You should try it first with SETPREFIXING ALL in C-Kermit, and probably also SET PARITY SPACE, and relativelyshort packets. If that works, you can try settings that give higherperformance at your own risk.
3.5. The Virtual Terminal Driver
For incoming modem connections, it can be very useful if the VMS system is setup to support Virtual Terminals. Once these have been set up, then if anincoming connection fails because of line problems, it should be possible toreconnect to the original session by redialling and logging in again. Youshould then get a prompt asking if you wish to connect to your disconnectedsession, allowing you to resume where you left off. You should see somethinglike this:There is a timeout of something like an hour, after which the disconnectedsession is deleted entirely.
[If on re-dialing the host you find you are reconnected to the originalsession without needing to login, then that host has a security problem, aswell as a misconfigured DECserver and/or modem or lead...]
The virtual terminal driver is loaded at startup (or later) using SYSGEN orSYSMAN as appropriate. The definition for TTY_DEFCHAR2 in MODPARAMS.DAT alsoneeds to be changed to set the appropriate bit to enable the disconnectprocessing by default on all terminals. [This change needs a reboot.]
Something like the following should work (check the VMS manuals):
- VAX:
- $ MCR SYSGEN VTA0/NOADAPTER/DRIVER=TTDRIVER
- Alpha:
- $ MCR SYSMAN IO CONNECT VTA0/NOADAPTER -
/DRIVER=SYS$LOADABLE_IMAGES:SYS$TTDRIVER.EXE - MODPARAMS.DAT:
- TTY_DEFCHAR2 = 135170 ! = %x21002. Check the manual!
(%x20000 = Disconnect, %x1000 = Line Edit, %x2 = Autobaud)
3.6. Captive Accounts and Restricted Access
Some VMS sites restrict users from getting at the DCL prompt and services bysetting their accounts to be 'captive'. This should automatically preventC-Kermit's DCL-access commands (such as PUSH) from working. Any attempt toexecute such a command should result in C-Kermit issuing an error message.Should a user circumvent this, VMS will automatically terminate the user'sprocess. In addition to CAPTIVE, accounts can also be set to RESTRICTED, todisable all types of spawning. Note that DEC says that RESTRICTED is onlyused 'to ensure users complete login processing without interruption'. DECfurther states that they intend to modify VMS utilities to no longer prohibitspawning in a future release.Further, you should be aware that preventing users from getting to DCL onlyprovides an illusion of security. There are many ways of getting to DCL whichare non-obvious. For cases where absolute security is required, you should in-vestigate the AUTHORIZE flags CAPTIVE and DISIMAGE. Consult the VMS SecurityManual for more information.
C-Kermit itself can be configured to prevent system access, by compiling itwith the NOPUSH option (for this you would have to edit CKVKER.COMfile and add a definition for the symbol NOPUSH to the CFLAGS). This disablesnot only the PUSH command and its synonyms (RUN, @, SPAWN), but also OPEN!READ, OPEN !WRITE, as well as the server's execution of REMOTE HOST commands.See CKCCFG.DOC for further information.
There is also a runtime approach for this: put the (invisible) command NOPUSHsomeplace where it will always be executed; for example, the system-wideCKERMIT.INI file, or in the 'kermit' command definition:
You can also define the logical name (environment variable) CK_NOPUSH toachieve the same effect.
The NOPUSH command does at runtime exactly what defining the NOPUSH symbolat compile time does.
[ Contents ][ C-Kermit ][ Kermit Home ]
4. DECODING VMS C-KERMIT HEX FILES
VMS C-Kermit hex files are not kept up to date. In fact, we only have afew of them -- nonet versions for old versions of VMS on VAX and Alpha.Once you have it on your VMS system and decode it, you can use it to downloada more current and appropriate version.
If you have obtained the executable VMS C-Kermit program encoded in printable'hex' format on magnetic tape or over a network, you can decode it back into arunnable .EXE program image using the CKVDEH.MAR program.This is an assembly-language program for the VAX or Alpha, which you shouldassemble, link, and run as follows:
CKVDEH prompts you for the input file name and then creates a .EXEfile with the same root name. For example, if you enter CKVKER.HEXas the source file, the resulting executable will be CKVKER.EXE.This procedure works on both the VAX and the Alpha -- the same program,CKVDEH.MAR, compiles and runs on both platforms.
The C-Kermit .EXE files were built under VAX/(Open)VMS 5.x and AlphaOpenVMS 1.x (whenever possible; otherwise under 6.1). The VAX versions willnot run under pre-5.0 VMS releases. If you have a VMS 4.x system with Ccompiler, however, you should be able to build C-Kermit using theCKVOLD.COM procedure.
Since VMS C-Kermit can be built with no TCP/IP support or with support forseveral different TCP/IP packages, and it can be built on both the VAX andAlpha platforms, you should pick the right .HEX file for yourenvironment.
The naming conventions are as follows:
where:
When there is no TCP/IP support built in, tttvv is 'NONET'.
- It's a bit of a task to keep up with all the buyouts and renaming.Any of these companies or products can be snapped up and/or renamedat any time, and most of them have been, including DEC itself.
Examples:
Not every combination is necessarily available. In general, an .EXEbuilt under a certain version of VMS will also run under later VMS versions,but the opposite is usually not true. Also, if a version was built under thesame VMS version that you have, but with a higher ECO level (OS or librarypatches), it might not run.
So try to pick one that was built under a VMS version less than or equal toyours, and with the same TCP/IP product you have having with a versionnumber less than or equal to yours. If that doesn't work, try the nextearlier one, etc. If you can't find one for your TCP/IP product, try thelowest-numbered UCX (DEC TCP/IP) version; most third-party TCP/IP productsalso support UCX applications. In any case, after getting the appropriateexecutable onto your VMS disk, rename it to KERMIT.EXE, e.g.:
The 'labeled file converter' is simple; it comes in a VAX version,CKVVCVT-VMSnn.{HEX,EXE}, and an Alpha version, CKVACVT-VMSnn.{HEX,EXE}.Rename it to CKVCVT.EXE so VAX and Alpha users don't have to use differentnames for the same program.
[ Contents ][ C-Kermit ][ Kermit Home ]
5. INSTALLING VMS C-KERMIT
VMS C-Kermit must be installed on your VMS system by hand. There is noVMSINSTAL kit because it would have to include many megabytes of differently-configured executables to choose from, and many of system-configuration itemsdiscussed above are best done by the system manager manually, in privilegedmode, after some thought and consideration.IMPORTANT:DO NOT INSTALL VMS C-KERMIT AS A PRIVILEGED PROGRAM! Instead, install itas a foreign command.
To install C-Kermit, follow this procedure:
- If you have the old Bliss Kermit-32 on your system, rename it toKERMIT32.EXE. If you have a symbol KERMIT defined to run Kermit-32,change the symbol name to KERMIT32.
- Identify the directory where you want to install the C-Kermit program.Normally this would be a directory that is unaffected by installation of DECsoftware, such as SYS$TOOLS = SYS$SYSDEVICE[SYSTOOLS]. From now on,we will assume you are using SYS$TOOLS:.
- Copy the desired .EXE file (VAX or Alpha, with the appropriatenetworking support) to that directory, rename it to KERMIT.EXE, andgive users permission to run it, for example:If Kermit is going to be used a lot, you can have it preloaded andits pure memory segments shared:
- Copy the standard CKERMIT.INI file to the same directory:
- Add the following line to SYS$COMMON:[SYSMGR]SYSTARTUP_V5.COM (orwhatever your system startup file is):
- Find your system-wide login DCL command procedure:and then add the following line to it:This defines SYS$TOOLS:KERMIT.EXE as a 'foreign command'.NOTE: VMS 6.2 and later support automatic creation of foreign commands byplacing the corresponding .EXE (or .COM) files in anydirectory that is included in the DCL$PATH logical name; e.g.:
- Install the C-Kermit HELP file in your VMS HELP library. First deleteany earlier KERMIT help entry, then install the new one:
- Create a publicly accessible directory, such as [KERMIT], in which to makeother C-Kermit files available to your users:
- CKERMIT.KDD
- Sample dialing directory file.
- CKERMIT.KSD
- Sample services directory.
- CKERMIT.KND
- Sample network directory.
- CKEDEMO.KSC
- Macro definitions from 'Using C-Kermit'.
- CKEVT.INI
- Command file to demonstrate special screen effects from 'Using C-Kermit'.
- CKCKER.UPD
- A supplement to the book, 'Using C-Kermit', describing features addedsince the book was published.
- CKCKER.BWR
- The general C-Kermit beware file.
- CKVKER.BWR
- The VMS-specific C-Kermit beware file.
If the Kermit program is not installed as a 'foreign command' as in (6) above,you can still RUN it, but you can't pass command-line arguments to it thisway. However, you can pass command-line arguments if you invoke it with theMCR command:or:
[ Contents ][ C-Kermit ][ Kermit Home ]
6. USING MODEMS
If you have a VAX or Alpha with a real serial port (DB-9 or DB-25), youcan use it with a modem. If your machine has MMJ (asymmetrical RJ-45)modular jack sockets (like a VAXstation 3100), you won't be able to makevery good use of modems since these ports do not support modem signals.Before attempting to use a modem on port (say) TTA0, you (or the systemmanager) will need to configure the port as a modem port:
From section 5.2.3.1 of the I/O User's Reference Manual:
Remote terminal connections have a timeout feature for the security of dial-uplines. If no channel is assigned to the port within 30 seconds, or a port withan assigned channel is not allocated, the DTR signal is dropped. Such actionprevents an unused terminal from tying up a line. However, there areconfigurations (such as a printer connected to a remote line) in which theline should not be dropped even though it is not being used interactively. Tobypass the 30-second timeout, set the system generation parameter TTY_DIALTYPEto 4. (Note that if TTY_DIALTYPE is equal to 4, all dial-up lines will skipthe timeout waiting for a channel to be assigned.)
The following is reprinted by permission; references to Kermit-32 areobsolete.
How to Use a MODEM With Your VMS System
Richard B. Gilbert
Computer Systems Consultant
[email protected] July 30, 1996
Most MODEMs come with factory defaults intended for dialout use withPCs. The MODEM is typically set to ignore DTR; e.g., assume that it is alwaysasserted and to assert CD at all times regardless of the actual state of thereceived carrier. The user is not required to do much, if anything, to get itto work. Such a MODEM requires some configuration before it will workproperly, or at all, with a VMS System.
Be sure that the serial port you are using supports MODEM controlsignals. On the DMF32, for example, only ports 0 and 1 can be used withMODEMS. These ports on the DMF32 must have DIP switches set to enable MODEMcontrol signals. The VAXStation 3100 does NOT support MODEM control! (It ispossible to use a MODEM but the VAXstation cannot detect the loss of theconnection; the next person to dial in could find himself logged in to youraccount!) The MicroVAX 3100 does support MODEM control. As a general rule,anything with a DEC Modified Modular Jack (MMJ) connector does not supportfull MODEM control; the MMJ has only six pins and nine are required. Eightpin RJ45 connectors are sometimes used; e.g. on some models of the DECserver700, where a choice is offered as to the signals supported.
Connect the MODEM with a cable that supports MODEM control signals,such as Digital's BC22E. The BC22F, connecting all twenty-five pins, isoverkill but will work quite well. A twenty-five conductor ribbon cable willalso work but a shielded cable is highly recommended in order to comply withRadio Frequency Interference (RFI) requirements.
Note that while it was possible to 'fake it' with VMS V4.x andearlier, VMS V5 requires that all of the MODEM control signals be connected.(Pins 2-8, 20 and 22 should be connected straight through; i.e., 2-2, 3-3,4-4, ...). If you are forced to sacrifice one signal, try RI (Ring Indicator)first. For reference, here is the standard pinout for the RS-232-C DB-25connector.
Pin | Description |
---|---|
1 | Protective ground (may be connected to shield at ONE end only) |
2* | Transmitted data (TxD) |
3* | Received data (RxD) |
4* | Request to send (RTS) |
5* | Clear to send (CTS) |
6* | Data set ready (DSR) |
7* | Signal ground |
8* | Carrier detect (CD) |
12 | Speed Mode Indicate (or secondary CD) |
15 | Synchronous transmit clock |
17 | Synchronous receive clock |
19 | Speed select (or secondary RTS) |
20* | Data terminal ready (DTR) |
22* | Ring indicator (RI) |
23 | Data Signal Rate Select (DSRS) |
It should be noted that not all devices connect or support all thesepins and not all those listed are necessary for 'full MODEM control'. Thepins marked with an asterisk are generally essential to satisfactory andsecure operation of your modem.
You will need to make some switch settings on your MODEM. Thefollowing settings are for a U.S. Robotics Courier V32bis FAX Modem. OtherU.S. Robotics MODEMs use quite similar switch numbers and settings. Othermanufacturers may use different switch numbers but the functions available aretypical. See your MODEM's instruction manual for the sordid details. Thesettings marked with an asterisk are critical to the successful use of yourMODEM. Some settings can also be made from the CPU via the MODEM's ATcommand set, in which case the hardware switch settings determine the MODEM'spower on defaults. The AT commands in parentheses, following the switchsettings, are the commands for a U.S. Robotics Courier HST Dual StandardMODEM. Check your manual for the proper commands for your MODEM.
- (*) DTR Normal (controlled by CPU) (AT&D2&W)
- Verbal result codes (Useful during dialout) (ATV1)
- (*) Do not display result codes (Quiet mode) (ATQ1)
- Echo off line commands (Useful during dialout) (ATE1)
- (*) Auto answer (MODEM will answer the phone if DTR is asserted) (ATS0=1)
- (*) Normal Carrier detect (controlled by MODEM) (AT&C1&W)
- Display originate result codes only.
- Normal At command set (Must be enabled for auto dial.)
- Online after +++
- Load NVRAM defaults on power up.
Many users have observed a VMS System dropping DTR (Data TerminalReady) while a user is trying to dial in, causing the MODEM to hang up thephone. The terminal driver will drop DTR if it sees DSR (Data Set Ready) formore than thirty seconds, without also seeing CD (Carrier Detect). If it ispossible to configure the MODEM so that it does not assert DSR until itasserts CD (AT &S1&W), do so. Otherwise it will be necessary to use amodified cable. At the VAX end of the cable, cut the wire leading to pin 6(DSR) and jumper pin 6 to pin 8 (CD).Commands similar to the following should be placed in yourSYS$MANAGER:SYSTARTUP_VMS.COM (SYSTARTUP_V5.COM for VMS V5.X) file to set upan asynchronous port for use with a MODEM. You may want to add some morequalifiers but this will get you going.
- Many modern MODEMs are capable of using a fixed DTE rate to talk to thecomputer; e.g. if they are set to 19200, they will talk to the computer at19200 regardless of what speed they are using to talk to the remote MODEM.This feature has performance implications for MODEMs that do data compressionusing either CCITT V.41 or MNP. For such MODEMs, set a speed that is at leastfour times the rated DCE speed of the MODEM or the highest available speedusing /SPEED=xxxxx rather than using /AUTOBAUD. The MODEM must be set to usethe corresponding speed. The U.S. Robotics Courier series are set to aparticular DTE rate by the most recent AT&W command; the rate set is thecurrent speed of the port. See your MODEM's instructions for details.
The following commands should probably go in SYS$SYLOGIN, yoursystem-wide login command file:
To set the terminal for temporary dialout use, execute the followingcommands:
You may need to add a /NOECHO qualifier if your terminal program is toostupid to read with no echo. It is not necessary with SET HOST/DTE, KERMIT,XMODEM, or HOST32.
To support a MODEM on a DECServer 200:
- Set up the terminal server as follows: (assuming port 8)Other port characteristics may be defined 'to taste'.
- Insert the following statements in SYS$STARTUP:LAT$SYSTARTUP.COM(SYS$MANAGER:LTLOAD.COM for VMS V5.4 and below):The LTA number is more or less arbitrary but must take into accountthe fact that LAT startup creates a few ports temporarily (starting atLTA1) and the number you choose must not conflict.The server_name and service_name must correspond exactly to thenames used in the DECserver DEFINE SERVER server_name and DEFINE SERVICEservice_name commands!
- Insert the following statements in SYS$MANAGER:SYSTARTUP_VMS.COM(SYS$MANAGER:SYSTARTUP_V5.COM for VMS V5.X):
- Reboot or execute the commands in steps 2 and 3.
[ Contents ][ C-Kermit ][ Kermit Home ]
7. BUILDING VMS C-KERMIT FROM THE SOURCE CODE
If you have the VMS C-Kermit source files in a ZIP archive, unpack thearchive with:C-Kermit is written in the C programming language. To build C-Kermit on theVAX, you must have VAX C, DEC C, or GNU GCC. At some sites, the C headerfiles are archived in a VMS library and then VMS C-Kermit might not becompilable. If the C compiler (preprocessor) complains about not being ableto find header files, you'll have to extract them from the library. A sampleDCL procedure for this can be found at the end of this file.
WARNING: When building with GCC on a VMS system that has Multinet installed,you must ensure that the GCC TIME.H file is used instead of the MultinetTIME.H; otherwise there will be a fatal error in CKVTIO.C at the declarationof 'tcount', around line 450. Other warnings appear to be harmless.
WARNING: DEC C 4.0 has a bug in which the XABALL struct member xab$b_bkz (usedin CKVFIO.C) is not defined. DEC gives a simple example -- compiling thefollowing code with DEC C using either /DECC and /VAXC:
Results in:
BEWARE: Certain versions of VAX C can generate incorrect code when a functionis used before it is declared, and it generates a return value (via a returnstatement) that is not used; other functions might have their entry masks(argument lists) corrupted. If you experience bizarre behavior from a versionof C-Kermit built with VAX C, try recompiling with /OPT=NOINLINE and /NOOPT,or some other reduced optimization level.
Both VAX C and DEC C are moving targets. A version of C-Kermit that was builtsuccessfully with version x.y of the compiler almost always fails to buildunder version x.y+1. Thus you will find increasing numbers of #ifdefs in thecode (mostly CKCNET.C and .H and the CKV*.* modules) keyed on explicit Ccompiler version numbers. Note the form of these carefully -- they have to bejust right). Also note that you can't use constructions like:
ANYWHERE in a portable module because neither '#if' nor relational operatorsin preprocessor statements are portable.
The number of possible VMS C-Kermit configurations is large, perhaps not evencountable: VAX vs Alpha, VAXC vs DECC vs GCC, no network support vs Multinetvs TCPware vs Wollongong vs UCX vs CMU/Tek, and this release of VMS versus allthe others. The kicker is in the releases; for example DEC C 4.0 vs 4.1 vs5.0 vs 5.3 (etc) versus the TCP/IP product's header files, which themselves gothrough all sorts of releases and patches. We can't guarantee that C-Kermitcan be successfully built on every combination, but in version 6.0 we are muchcloser to that goal than ever before.
Before leaving this topic, let's look at how to find out the relevant versionnumbers. SHOW SYSTEM (among other commands) tells you the VMS version number.To find the C version number, try:
which works for recent DECC versions, or:
or (when the above doesn't work):
and then look at the first line of FOO.LIS.
The method for finding out the TCP/IP product version number depends on theproduct. For Multinet:
For DEC TCP/IP (UCX) versions 3.0 and later:
For earlier releases, or ones where the above command doesn't work, try:
or:
or:
For others: (somebody please fill this in)
Before trying to compile, make sure you've got the disk space and quotas, etc,that are needed. In version 6.0 and later, you'll probably need as much as 8or 10 megabytes for all the sources, objects, and binaries.
The User Authorization File (UAF) parameters of the account in which C-Kermitwill be built must be set to accommodate the large size of some source modules.Recommended values are:
To modify: Suppose a user KERMIT is the VMS account from which Kermit ismaintained. To set these values, the system manager must do the following:
If errors such as:
occur during the build procedure, these parameters may need adjustment(upwards).
To build C-Kermit, create a new directory and make it your current directory:
and put the C-Kermit source files and build procedures there, for example bycopying them from the distribution tape or cartridge.
Two build procedures are provided for C-Kermit 6.0 and later; one (CKVOLD.COM)for VMS 4.x, the other (CKVKER.COM) for VMS 5.0 and later. The two areequivalent except for syntax, and should work everywhere. No extra products(MAKE, MMS, MMK, etc) are required (but MMS or MMK will be used if present).The auxiliary file CKVKER.MMS is used if MMS or MMK are present. To buildC-Kermit:
Please read the comments at the top of CKVKER.COM itself for furtherinstructions and information.
NOTE: if you get messages like this in the link step:
it probably means you have a LNK$LIBRARY symbol defined in your job (orsystem-wide) and the definition is inappropriate. DEASSIGN it if possible.If not, and if the LINK step produced no other error messages, and theWERMIT.EXE binary seems to run OK, then you can ignore the error messages.
If you get huge amounts of warnings like:
this indicates that some essential header file is not being executed, whichcan happen for all sorts of reasons (usually some symbol was defined by someother header file that interferes with a subsequent one). The trick here isto get an include-file listing, which is possible with DECC (maybe VAXC too):
and then look through the CK????.LIS file of the offending module.
7.1. Programming Tips
For testing the DEC C version number:Note: the version number is vvuuteeee; vv is the major version (like 5),uu is the update number (like the '3' in 5.3), t is a code for field test,real release, etc, and eeee is the edit suffix. This is available only inDECC 5.0 and later. It also has a __VMS_VER... Note #2: Remember not toadd a leading zero because that changes it to octal.
7.2. VMS TCP/IP Networking Support for C-Kermit
VMS C-Kermit is capable of establishing TCP/IP TELNET connections and actingas a TELNET program with built-in file transfer, script programming,character-set translation, etc, if it is built appropriately. If you have oneof the following products installed on your system, complete with librariesand header files:- DEC TCP/IP (UCX)
- TGV MultiNet TCP/IP
- Wollongong WIN/TCP or PathWay
- Process Software TCPware
- CMU-OpenVMS/IP with Mike O'Malley's sockets library
then you can include TCP/IP capability in your version of VMS C-Kermit.
The TCP/IP product is selected automatically by the build procedure based onthe presence or absence of certain files on your system. To override theautomatic selection, define the symbol NET_OPTION in one of the following waysbefore running the build procedure:
That is, type one of the commands listed above at the DCL prompt (shown aboveas '$') before running the build procedure. You can also force a 'NONET'build with the CKVKER.COM 'N' command-line option.
Note: If you are building a version with TCP/IP support, and you have therequired TCP/IP libraries and header files, but the #include files can't befound at compile time, then maybe they were put into a text library, in whichcase you need to unpack the include-file library into separate files using theVMS LIBRARY command.
7.2.1. DEC TCP/IP (UCX)
If the C-Kermit build procedure does not notice that you have DEC TCP/IPinstalled when you really do, it is likely because the fileSYS$STARTUP:UCX$STARTUP.COM is read-protected (e.g. because your siteruns DECinspect). Turn on READONLY privilege.If the DEC TCP/IP version of KERMIT.EXE crashes immediately upon startupwith a message like:
it means the system manager has to install the UCX sharable library:
Wollongong (now Attachmate (now defunct)) support should work for both new(PathWay) and older (WIN/TCP) versions, and C-Kermit versions linked underolder Wollongong versions should still run under the newer version. But notethat the pieces of the Wollongong package are now unbundled -- you have to buythe runtime, access, API, etc, pieces separately, and (of course) you need theAPI to compile C-Kermit with Wollongong TCP/IP support.C-Kermit 7.0 has been verified to build on VMS ... with Pathway 3.1 with afew harmless warning messages, but the following change is required to theAttachmate-supplied file TWG$TCP:[NETDIST.MISC]DEF.COM to remove thedefinition of DECC$SYSTEM_INCLUDE:
You can't build VMS C-Kermit with Wollongong TCP/IP support using GCC due tothe use of 'noshare' in the Wollongong header files.
Reportedly, when building C-Kermit with WIN/TCP support with older versions(5.1 and earlier?) of WIN/TCP, the symbol WIN$PERROR is undefined at linktime and the build fails. Workaround: change the one reference towin$perror(), which occurs in the contti() function in CKVTIO.C, to besimply perror().
If your VAX has the TGV MultiNet TCP/IP networking product, CKVKER.COMautomatically builds C-Kermit with MultiNet TCP/IP support included. However:- In older (pre-V3.1) MultiNet installations, the header files might not beinstalled. Without these, C-Kermit will not build correctly. The systemmanager can add Multinet 3.1 programming support by installing MNETLIB031from the Multinet distribution, if licensed to do so.
- Anyone building the VMS version with certain versions of TGV MultiNetsupport under VAX C 3.1 might get an error message about conflictingdefinitions of 'time_t'. This is because of a conflict between DEC's<types.h> and MultiNet's <types.h> caused because DEC changed thedefinition between VAX C 3.0 and 3.1. Kermit can't do anything about thisbecause CKVTIO.C #includes <time.h>, which itself includes<types.h>. The warning is not fatal.
BSD socket support for C-Kermit is supported thanks to a new CMU-OpenVMS/IPsocket library written by Mike O'Malley of Digital Equipment Corporation. Ifyou have this library installed on your VMS system, the build procedure willfind the file CMUIP_ROOT:[SYSLIB]LIBCMU.OLB and C-Kermit will be builtautomatically with CMU-OpenVMS/IP support unless you define NET_OPTION to sayotherwise. The LIBCMU socket library can be found on the kermit.columbia.eduanonymous ftp server.
As of C-Kermit 8.0.208 it is possible to build VMS C-Kermit binaries withSSL/TLS security, allowing securely authenticated and encrypted SSL/TLS orSSL-TELNET connections to be made (but not FTP, since as yet Kermit's FTPclient has not been ported to VMS). To build a secure version of VMSC-Kermit, include CK_SSL in P3 and define logicals OPENSSL and SSLLIB to pointto OpenSSL and libs, or install Compaq SSL V1.0A. Note that SSL-enabledbinaries are restricted by USA export law, and therefore can not be put onpublicly accessible FTP or Web sites.[ Contents ][ C-Kermit ][ Kermit Home ]
8. CASE STUDY: ALPHA SETUP AND TEST RESULTS
Written by Peter Mossel.Model number: | DEC3000/400, a workstation with 64MB of memory. |
Ports used: | OPA1: (a MMJ connector for the alternate operator console) TTA1: (a 25-pin male D-connector on the back) |
Operating System: | OpenVMS V1.0 |
Firmware: | V1.1 |
Upon power-up, the console displays something like:
Testing setup 1: OPA1:
In words, plug a DECconnect cable with MMJ plugs on both ends in thealternate console port on the back of the DEC3000/400. Make sure S3 isin the 'up' position. The workstation screen is now the console (OPA0:)and the extra port, OPA1:, is available for connecting a terminal orprinter. This MMJ plug is the only MMJ plug on the back of this machine.
My other host for the test is a DECpc 466, a 66MHz i486 with DOS 5.0 andMS-DOS Kermit 3.12. The 466 has 2 serial ports, both 9-pin. I attached astandard 9-pin to 25-pin modem cable (the ones that came into existence withthe IBM PC/AT which originally had only a 9-pin serial port) to the serialport on the 466.
Now we must join a 25-pin connector and a MMJ connector. This is done with apassive adapter (H8571-A) which converts the RS423 signalling standard(balanced TX+ TX- RX+ RX-, DTR, DSR) to RS-232. All this is fairly standardfor DEC sites. Note that when connecting a modem to an MMJ connector, we haveonly a subset of the required modem signals, so this is not supported via MMJ.The other port (TTA1) has full modem control. Note that the DECconnect cablealways reverses TX and RX, so it effectively functions as a NULL-modem cable.
Testing setup 2: TTA1
Use the (only) 25-pin D-connector on the back. Now we need a null modemcable (see the Kermit book), and, because my PC has a 9-pin serialport, I also need a 9-pin to 25-pin modem cable.
Testing setup 3: LAT
Connect the PC with a standard cable to the terminal server, which speaksLAT to my DEC3000/400. The speed can be set up to 19200 baud with theterminal server in use.
Test script for setup 1 and 2:
- On DEC3000:
- On the PC:
- On the DEC3000:
- On the PC
Test script for setup 3 (LAT):
( Now log into DEC3000 as host )
( back to the PC )
Results:
In all three cases, the data transfer speed is excellent. Over 80% of thebandwidth of the communication channel is used for the file transfer,sometimes even more. The DEC3000 is loaded with processes (MOTIF, SybaseDBMS, NFS clients and servers,...) and heavy network activity (DECnet, LAT,TCP/IP but no characters have ever been lost, even when the DBMS fires up. Nospecial SYSGEN parameters, just configured for a normal workstation withMOTIF.
Notes:
- Device protectionIn a system like this out of the box, the device protection on TTA1 andOPA1 does not allow an unprivileged user to use these lines for DIAL-OUTfrom Kermit. Thus, the system manager must set every time the system isrebooted:Without these special protections, a terminal connected to these portswill still be able to login and get the 'Username:' prompt.
- Console device speedThe Alpha VMS V1.0 cover letter mentions that the commandwill have no effect on the speed of OPA1. In practice, there is no problemwith Kermit file transfers. The data just get thru fine and file transfersare OK. The release notes also mention that setting the speed of OPA1 canbe accomplished by setting the console environment variable 'tta1_baud' to thedesired speed. See the hardware guide on how to do this. The problem will befixed in a future release.
[ Contents ][ C-Kermit ][ Kermit Home ]
9. MAKING AND USING VMSINSTAL KITS
(NOTE: This section is only for future reference, in case it becomespractical to distribute VMSINSTAL kits for C-Kermit. For now, please ignore.)(The reason it isn't practical to build VMSINSTAL kits is that they wouldbe HUGE -- we have five networking options times two processors (VAX andAlpha) times two choices of whether you want to build from the source codeor accept the included binary, and the resulting kit still would not solvethe many VMS configuration problems discussed above.)
After building C-Kermit using one of the procedures outlined above, executethe DCL procedure CKVMSI.COM to create a VMSINSTAL kit. This kit can becreated either with or without the source code. In any case, it includes theC-Kermit executable program, the C-Kermit help file (for installation in yourHELP library), plus a sample CKERMIT.INI (C-Kermit initialization) file, andrelease notes. You may now install C-Kermit using the command:
It will prompt you for which components you want installed, and where to putthem. CKVMSI and CKVKIT were written by Terry Kennedy of Saint Peters College.
9.1. Sample Header-File Extraction Procedure
This one is for VAX C, and probably needs a few more files extracted from itthan are shown below.[ Top ][ Contents ][ C-Kermit Home ][ C-Kermit 8.0 Overview ][ Kermit Home ]
C-Kermit 8.0 VMS Installation Instructions /The Kermit Project / Columbia University /30 June 2011