kCOMt, the Kerberized version of COMt

Please read this document before attemtpting to install or use kCOMt.

COMt is a solution to underpowered Windows Telnet client programs. Many winsock shareware and commercial telnet clients offer limited capabilities when compared to existing serial communications packages such as Procomm Plus. COMt allows you to use your favorite Windows communications program (i.e., Procomm Plus for Windows, Crosstalk for Windows, etc.) to communicate over TCP/IP as a Winsock telnet client.

The original version of COMt is a product from Performance Designs, Inc. It is shareware. MIT has purchased a site license and has modified version 1.04 to include support for Kerberos Authentication and DES data encryption. At this time the Kerberized version of COMt, kCOMt, may only be distributed to members of the MIT community. If you are not a member of the MIT community you should contact Performance Designs for further information.

Export of kCOMt software from the United States of America is assumed to require a specific license from the United States Government. It is the responsibility of any person or organization contemplating export to obtain such a license before exporting.

For information about volume discounts, site licenses, and technical questions outside of MIT please contact Performance Designs. Performance Designs, P.O. Box 1005 Concord, MA 01742 CompuServe: 73017,1375 MCI Mail: 572-1706 GEnie: PERFORM.DES Internet: comt@world.std.com

MIT users should contanct net-help@mit.edu or 3-0124.


Table of Contents

Preface 		
MIT license 	The shareware license 	non-MIT registration 		
Introduction 	System requirements 	Installation 
Configuration 	Using COMt 		Hayes modem emulation 
S registers 	Auto initialization 	Application Notes 
notes on the Kerberos additions 	Known BUGS and PROBLEMS 

Use of COMt at MIT

Binaries of COMt, including any modified binaries developed by MIT, may be used on any computer and on any network owned and maintained by MIT, including MIT's facilities at Lincoln Laboratories.

Students and staff should note that once they have left MIT they are no longer licensed to use this software.

MIT agrees to use reasonable efforts not to distribute COMt to anyone other than MIT's faculty, students, employees and consultants. MIT may, however, upon receiving authorization from Performance Designs, distribute its modified binaries to third parties who have a current license agreement for COMt. MIT agrees to instruct its faculty, students, employees, and consultants as to their obligations under the agreement.

See also: The shareware license.

Table of Contents


License and Warranty:

COMt is copyright (C) 1994 by Performance Designs.

Installation of COMt on your computer system implies agreement with the terms and conditions below.

COMt is distributed as Shareware. It is not free, freeware, or in the public domain. Non- registered users are granted a limited license to use COMt on an evaluation basis for thirty days, for the purpose of determining whether COMt is suitable for their needs. Use of COMt, except for this limited purpose, requires registration. Use of non-registered copies of COMt by any person, business, corporation, governmental agency or other entity institution is strictly forbidden.

Registration grants to the user the rights and limitations set forth by the End-User Agreement.

Please read the agreement carefully before registering.

No user may modify COMt in any way, including but not limited to decompiling, disassembling or otherwise reverse-engineering the program.

All users are granted a limited license to copy the SHAREWARE version of COMt only for the trial use of others subject to the above limitations, and also the following:

COMt must be copied in unmodified form, complete with the file containing this licenseinformation.

The provided COMt documentation must be included with the copy. No fee, charge or other compensation may be accepted or requested by any licensee.

Operators of electronic bulletin board systems may post the SHAREWARE version of COMt for downloading by their users only as long as the above conditions are met. Shareware catalog businesses are welcome to post COMt in their catalog listings.

End-User Agreement

SOFTWARE LICENSE AGREEMENT FOR "COMT 1.04" OF PERFORMANCE DESIGNS. PERFORMANCE DESIGNS ("LICENSOR") IS WILLING TO LICENSE THE PROVIDED SOFTWARE TO YOU ONLY IF YOU ACCEPT ALL OF THE TERMS IN THIS LICENSE AGREEMENT. PLEASE READ THE TERMS CAREFULLY BEFORE YOU REGISTER THIS SOFTWARE, BECAUSE BY REGISTERING THIS SOFTWARE YOU ARE AGREEING TO BE BOUND BY THE TERMS OF THIS AGREEMENT. IF YOU DO NOT AGREE TO THESE TERMS, LICENSOR WILL NOT LICENSE THIS SOFTWARE TO YOU, AND IN THAT CASE YOU SHOULD IMMEDIATELY CEASE USE OF THE SOFTWARE, DESTROYING ANY AND ALL COPIES YOU HAVE MADE OF THE SOFTWARE.

Ownership of the Software

The enclosed Licensor software program ("Software") and the accompanying written materials are owned by Licensor and are protected by United States copyright laws, by laws of other nations, and by international treaties.

Grant Of License

Licensor grants to you the right to use one copy of the Software on a single computer. You may load one copy into permanent memory of one computer and may use that copy, or the enclosed diskettes, only on that same computer.

Restrictions on Use and Transfer

You may not copy the Software, except that (1) you may make one copy of the Software for backup or archival purposes, (2) you may transfer the Software to a single hard disk provided you keep the original solely for backup or archival purposes. You may not copy the written materials.

You may permanently transfer the Software and any accompanying written materials (including the most recent update and all prior versions) if you retain no copies and the transferee agrees to be bound by the terms of this Agreement. Such a transfer terminates your license. You may not rent or lease the Software or otherwise transfer or assign the right to use the Software, except as stated in this paragraph.

You may not reverse engineer, decompile, or disassemble the Software.

Limited Warranty

Licensor warrants that the Software will perform substantially in accordance with the accompanying written materials for a period of 90 days from the date of your receipt of the Software. Any implied warranties on the Software are limited to 90 days. Some states do not allow limitations on duration of an implied warranty, so the above limitation may not apply to you.

LICENSOR DISCLAIMS ALL OTHER WARRANTIES, EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, AND NON-INFRINGEMENT, WITH RESPECT TO THE SOFTWARE AND THE ACCOMPANYING WRITTEN MATERIALS. This limited warranty gives you specific legal rights. You may have others, which vary from state to state.

LICENSOR'S ENTIRE LIABILITY AND YOUR EXCLUSIVE REMEDY SHALL BE, AT LICENSOR'S CHOICE, EITHER (A) RETURN OF THE PRICE PAID OR (B) REPLACEMENT OF THE SOFTWARE THAT DOES NOT MEET LICENSOR'S LIMITED WARRANTY AND WHICH IS RETURNED TO LICENSOR WITH A COPY OF YOUR RECEIPT. Any replacement Software will be warranted for the remainder of the original warranty period or 30 days, whichever is longer. These remedies are not available outside the United States of America.

This Limited Warranty is void if failure of the Software has resulted from modification, accident, abuse, or misapplication.

IN NO EVENT WILL LICENSOR BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY LOSS OF PROFITS, LOST SAVINGS, OR OTHER INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF YOUR USE OR INABILITY TO USE THE SOFTWARE. Because some states do not allow the exclusion or limitation of liability for consequential or incidental damages, the above limitation may not apply to you.

This Agreement is governed by the laws of the State of Massachusetts.

If you have any questions concerning this Agreement or wish to contact Licensor for any reason, please write:

Performance Designs

P.O. Box 1005

Concord, MA 01742

U.S. Government Restricted Rights. The Software and documentation are provided with Restricted Rights. Use, duplication, or disclosure by the Government is subject to restrictions set forth in subparagraph (c)(1) of The Rights in Technical Data and Computer Software clause at DFARS 252.227-7013 or subparagraphs (c)(1)(ii) and (2) of Commercial Computer Software - Restricted Rights at 48 CFR 52.227-19, as applicable. Supplier is Performance Designs, P.O. Box 1005, Concord, MA 01742.

Table of Contents


Registering COMt

This program is shareware. It is not free software. If you obtained this copy either from a BBS or a friend, thenyou are using an UNREGISTERED copy. You may run the program for an evaluation period of one month. After this time if you wish to continue using the program you must register by filling out the Program Registration form and sending in the Registration Fee. This will help guarantee that the program is well supported and enhanced in the future. The shareware copy of COMt will present a registration reminder dialog on the first usage of a Telnet port.

Currently the price to register COMt is US $15.95, payable by VISA, MasterCard, check/money-order, or in the SWREG forum of CompuServe.

Getting Technical Help:

Technical support for COMt is available via email. You can reach us at one of the following email addresses:

CompuServe: 73017,1375

MCI Mail: 572-1706

GEnie: PERFORM.DES

Internet: comt@world.std.com

Updates:

You can always find the latest release of COMt in either the IBMCOM forum of CompuServe or via anonymous- ftp to ftp.std.com:/customers/software/rfdmail/comt.zip. At this time the Kerberized version of COMt is only available from the MIT distribution site.

Registering:

To register COMt, simply fill out and print the regform.txt file. If paying by check you will need to mail the form and payment to the address listed on the form. If you are paying by CompuServe or Credit Card, you can simply email the form to one of the email addresses listed.

You will receive via US Mail (and via email if you specified an email address) a special alphanumeric code which will fully register COMt. To apply this code, simple follow these steps:

1) Using Windows Notepad open the system.ini located in the Windows directory (usually c:\windows)

2) Locate the section under the heading [COMt]. If there is no such section, add one.

3) In that section, add a line which reads UnlockCode=<code>, where <code> is the alphanumeric code youreceived for your registration.

4) Also in that section, add a line which reads Licensor=<addr>, where <addr> is the licensor your received for your registration.

5) Save out the file.

This complete the registration process. The next time you run Windows, you should no longer get registration reminders from COMt.

Table of contents


	    Program Registration - COMt  1.04

$15.95				Single User License	$_____
MA residents add state sales tax ($0.80)		$_____
Total							$_____

Make Check or Money Order payable to Performance Designs,  or 
provide the following Credit Card Information:

VISA/MasterCard (circle one)
Card #		__________________________________________
Expires		_____
Signature	__________________________________________
Address/Phone:
Name		__________________________________________
Company		__________________________________________
Address		__________________________________________		
		__________________________________________		
		__________________________________________
Phone		__________________________________________
Email Address	__________________________________________

Email Service	CompuServe  MCI-Mail  GEnie  Internet (circle one)
Please include any comments or suggestions on the lines  which follow.  
Use an additional page if necessary.
_________________________________________________________
_________________________________________________________
_________________________________________________________
_________________________________________________________

For information about volume discounts, site licenses, and 
technical questions please contact Performance Designs.

Mail form to:		
Performance Designs			
P.O. Box 1005			
Concord, MA 01742

If paying by credit card, this form can be emailed, although 
this is not recommended due to the insecurity of computer 
networks, to:	
CompuServe:	73017,1375	
MCI Mail:	572-1706	
GEnie:		PERFORM.DES	
Internet:	comt@world.std.com

COMt version 1.04

Version 1.04

Copyright © 1995, Performance Designs

Overview

Introduction:

Thank you for using COMt, the Telnet Modem for Windows! COMt is the perfect solution to underpowered Windows Telnet client programs. COMt allows you to use your favorite Windows communications program (i.e., Procomm Plus for Windows, Crosstalk for Windows, etc.) to communicate over TCP/IP. COMt does this by installing itself ahead of the standard Windows COMM driver (comm.drv), and intercepts accesses to the COM ports of your choosing, routing them to TCP/IP. Requests to access other ports are passed on to the original COMM driver, allowing you to continue to use those devices.

COMt also emulates a Hayes-compatible modem, so your existing Windows communications programs will have no trouble interfacing to TCP/IP.

In addition, COMt can also be used to access network modems, assuming you have modems available via a TCP connection. See the Auto Initialization chapter for more details.

Table of Contents


System Requirements:

In order to use COMt, you need an IBM-PC compatible system with the following:

- Windows 3.1, Windows for Workgroups 3.1, or Windows for Workgroups 3.11

- 286 processor

- 4 meg RAM

- 256K free disk space

- WINSOCK 1.1-compliant TCP/IP software

Table of Contents


Installing COMt:

COMt comes with an automated installation utility. To use this utility, simply copy the distribution files to a floppy or temporary directory, then double-click on the install.exe file from the Windows File Manager.

Once INSTALL starts, you will be given the opportunity to read the readme.txt file. Then you will be asked to choose a directory to install the COMt files. Enter a directory name or just press OK to keep the default of c:\comt. INSTALL will then copy the distribution files to the directory of your choosing, with the exception of the commt.drv file, which is always copied to the \windows\system directory.

Once all the files have been copied, you will be given the opportunity to allow INSTALL to create Program Manager icons. This is recommended. Once the icons are created, you will be presented with a dialog allowing you to choose which COM port numbers will be assigned to be Telnet ports. It is recommended that you choose any unused ports. You can change these settings after installation using the COMt configuration program.

This completes the installation. To begin using COMt, simply restart Windows. If the installation fails at any point, please see the readme.txt file for instructions on manual installation.

Table of Contents


Configuring COMt:

You can configure COMt to provide Telnet connections on up to eight COM ports (COM1-8) by running the COMt configuration program. Simply double-click the COMt Config icon from the Windows Program Manager. You will be then asked to check off which COM port number you wish to be used for Telnet connections. Simply select the desired ports and click OK. You can also use this program to uninstall COMt from your system. Please see the readme.txt for complete details on this. Note that any changes you make to the port assignments will not take effect until you restart Windows.

Notes on selectiong COM ports. It is highly recommended that you choose all port numbers which you are not using. This gives you the maximum number of simultaneous Telnet connections possible. There does not need to be a physical port for a particular COM device in order to use it for Telnet connections. In fact, you should not select ports which do have devices attached (i.e., a modem) as you will be unable to access that device while COMt is installed. If you have a serial mouse connected to a COM port, you will be unable to use that port number for COMt.

Notes on COM5-8. As mentioned earlier, COMt is able to provide Telnet connections on the ports COM1 through COM8. Unfortunately, because of a limitation in how Windows operates in 386-Enhanced mode, most machines will only be able to use COM1-COM4. You may be able to use the higher port numbers if you have a multi-port board which was provided with a 386 Virtual Device-Driver (usually serial.386) which supports port numbers higher than 4.

Notes on COM3-4. On some machines you may run into problems when redirecting COM3 and COM4. Certain terminal programs (Procomm Plus for Windows in particular) try to be intelligent about which ports can be accessed without causing hardware conflicts, and may either give unnecessary warnings or refuse to access the port altogether. To overcome this type of problem, add the following lines to the [386Enh] section of the system.ini file:

COM3Irq=11

COM3Base=3E8

COM4Irq=15

COM4Base=2E8

IMPORTANT: If any of the above lines already exists in the [386Enh] section of the system.ini file, especially if you have real hardware attached to COM3 and/or COM4, do not replace them with the above lines. Doing so may cause you to be unable to access the physical port. If after adding the above lines the problem is not rectified, you may find that it's necessary to adjust the numbers given above.

Table of Contents


Using COMt

To use COMt, simply instruct your communications program (such as Windows Terminal) to use one of the COM ports you selected to access Telnet. Since COMt emulates a Hayes-compatible modem, configure your application to use one of the Hayes Smartmodem, OPTIMA, or ULTRA modems. For the communications parameters, set the connection to any baud rate, with 8 bits, No Parity, and 1 stop bit.

For a phone number, you can specify either the actual IP address of the host to which you wish to connect (i.e., 13.104.22.1) or the name of the host (i.e., world.std.com). Note that by using a hostname, some terminal programs may try to out-smart you by substituting the Touch-Tone™ equivalents for each letter in the hostname (Windows Terminal does this: since when have people used their modem to dial 1-800-24PIZZA?). In this case you will need to use the IP address rather than the hostname. If you find that this still results in an incorrect dialing (some programs will even strip out the periods in the IP address), you should change the IP address such that you remove all the periods and expand each number to three digits. For example, the address 13.104.22.1 would be changed to 013104022001. Also, if your hostname begins with "t" or "p", you may need to insert either a space or a comma in front of the name in order for it to work properly.

If you wish to connect to a port on the remote host other than the Telnet port (port number 23), simply add the port number in brackets after the IP address. For example, specifying a phone number of 123.456.222.111[25] will connect you to the SMTP server on that host.

If you want your remote host to automatically recognize a particular terminal emulation, add a section to your modem initialization string which reads S1000="terminal", where terminal is the terminal type you are using. See the Hayes™-Compatible Modem Emulation section for more details on S-registers.

Notes on baud rate. You can specify any baud rate for the Telnet port, but you should be aware that COMt will inform the remote Telnet server of the baud rate you chose. For this reason, you should choose either a very high baud rate (i.e., 38400 or 57600) for TCP connections through a network or the actual baud rate you are using for your SLIP or PPP connection.

Table of Contents


Hayes-Compatible Modem Emulation:

In order to work as seamlessly as possible with standard modem-oriented programs, COMt provides a Hayes- compatible modem emulator. If your application allows to you select a modem type, select one of the Hayes Smartmodem, OPTIMA, or ULTRA modems. This will ensure that the program initializes and dials the modem emulator properly.

The modem emulator supports the standard "AT" command set. Most AT commands are ignored, as they only have relevance when controlling a real modem. The AT commands which are acted upon are listed in the next section.

Modem Emulator AT Command Set:

D -- Dial Command

This command instructs the modem emulator to attempt to establish a connection to the named-host or IP address following the D command. This works similarly to a modem, except that a network address is specified instead of a phone number. The "T" and "P" (tone or pulse) modifiers are allowed to follow the D command, and they are simply ignored. The modem emulator attempts to connect to the specified host, returning a CONNECT response string on success or NO CARRIER upon failure. If the connection fails, an additional error message beginning with WINSOCK: is output, providing more detail as to why the connection failed. As with a normal modem, if you press any key while the connection attempt is in progress, the connection will be aborted and NO CARRIER will be output.

E0 or E1 -- Command-mode echo

This command enables or disables character echoing while the modem emulator is in "command mode" (i.e., accepting "AT" commands). E1 enables echo and E0 disables echo. The default is E1.

F0 or F1 -- Online echo

This command enables or disables character echoing while the modem emulator is in "online mode" (i.e., actually connected to a remote host). F1 enables echo and F0 disables echo. The default is F0.

H0 -- Go off-hook

This command is only valid when the modem emulator has established a connection, and causes the emulator to close the current connection.

O -- Return to online mode

This command is only valid when the modem emulator has established a connection, and causes the emulator to exit "command mode" and returns control of the serial line to the current Telnet connection.

Sr=n -- Write to an S-register

This command writes a value n into the S-register numbered r. The list of S-registers supported is listed later. Any write to an unsupported S-register is simply ignored.

Sr? -- Query an S-register

This command outpus the current value of the S-register numbered r. The list of S-registers supported is listed later. Any write to an unsupported S-register causes the word ERROR to be output and parsing of the current command line is terminated.

W0, W1, W2 -- Negotiation progress messages

In addition to the CONNECT response string, this command can be used to enable the CARRIER, PROTOCOL, and COMPRESSION messages that are available with some MNP or v.42 modems. W0 and W2 disables the extended progress messages, and W1 enables the CARRIER and PROTOCOL messages. Note that any value other than zero in S95 will override this setting. Also note that since no compression or transmission protocols are actually being used, they are always reported as NONE. The default is W0.

Z -- Reset

This command resets the modem emulator to use the default settings, and will close any currently open connection.

&C0, &C1, &C2 -- Data Carrier Detect options

This command controls how the Data Carrier Detect (DCD) line is reported by the modem emulator. &C0 causes the emulator to always report the DCD line as ON. &C1 causes the emulator to report the DCD line as OFF while there is no connection, is switched to ON immediately after the CONNECT message and OFF again when the connection is lost. &C2 causes the emulator to report the DCD line as ON while there is no connection, and as OFF while a connection is being established, then ON again once the connection is made. The default is &C1.

&D0, &D1, &D2, &D3 -- Data Terminal Ready options

The command controls how control of the Data Terminal Ready (DTR) line by an application is interpreted by the modem emulator. &D0 causes the emulator to ignore the DTR line. &D1 causes an ON-to-OFF transition of the DTR line to simply put the emulator in command mode while maintaining any currently open conenction. &D2 or &D3 causes an ON-to-OFF transition of the DTR line to close any currently open connection (issuing a NO CARRIER response if one was open) and puts the emulator in comand mode. The default is &D0.

&F -- Factory Defaults

This command acts exactly like the "Z" command.

&S0, &S1, &S2 -- Data Set Ready options

This command controls how the Data Set Ready (DSR) line is reported by the modem emulator. &S0 causes the emulator to always report the DSR line as ON. &S1 causes the emulator to report the DSR line as OFF while there is no connection opened, switches it to ON when attempting to open a connection, then OFF again once the connection is closed. &S2 causes the emulator to report the DSR line as OFF while there is no connection opened, switches it to ON when a connection is opened, then OFF again once the connection is closed. The default is &S0.

&V -- View current settings

This command displays the current settings being uses by the modem emulator. A sample output (using the default settings) is shown below:

ACTIVE PROFILE:

E1 F1 W0 &C1 &D0 &S0

S02:043 S03:013 S04:010 S05:008 S12:050 S95:000

S1000:000

S1001:002 S1002:000 S1003:001 S1004:001 S1005:003

S1006:000 S1007:243

Table of Contents


Modem Emulator S-registers:

Escape Sequence Character	Carriage Return Character
Line Feed Character		Backspace Character
Escape Sequence Gaurd Time	Terminal Type
Negotiation progress messages	Interpret IAC characters
Telnet Echo			Request Binary Connection
Verbose Connection Failure	Deadlock Timer
Carriage-Return Padding		BREAK Handling
AUTHENTICATION			ENCRYPTION
Debugging Information

S2 -- Escape Sequence Character

This register holds the ASCII value of the escape character used in the escape sequence. The escape sequence is defined by a period of silence (as defined in S12) followed by three escape characters followed by another period of silence. This causes the modem emulator to switch from online mode to command mode while a connection is open. The default is 43 (the "+" character).

S3 -- Carriage Return Character

This register holds the ASCII value of the character which is both understood and output for a carriage return. The default is 13.

S4 -- Line Feed Character

This register holds the ASCII value of the character which is both understood and output for a line feed. The default is 10.

S5 -- Backspace Character

This register holds the ASCII value of the character which is both understood and output for a backspace. The default is 8.

S12 -- Escape Sequence Gaurd Time

This register holds the value of the silence period required when issuing an escape sequence, in 1/50th of a second increments. The default value is 50 (1 second).

S95 -- Negotiation progress messages

This register, when set to anything other than zero, overrides the W setting in how the emulator reports connection progress. Setting bit 2 of the register enables the CARRIER message. Setting bit 3 of the register enables the PROTOCOL message. Setting bit 5 of the register enables the COMPRESSION message. The default is 0.

Modem Emulator extended S-registers:

For the purpose of setting Telnet-specific options, the modem emulator supports an extended set of S- registers, numbered 1000 through 1005.

S1000 -- Terminal Type

This register is somewhat unique in that it can accept both a numeric and a string value. By setting this register to a value other than zero, any Terminal-Type query by the remote Telnet server is answered with the current value of this register. By setting this register to a string value (i.e., ATS1000="vt100") , the verbatim string is reported. By setting this register to a numeric value (i.e., ATS1000=5), the numeric value (presumably a well-known terminal id) is reported. The default is 0.

S1001 -- Interpret IAC characters

The Telnet protocol is based on an escape character (ASCII 255) known as the IAC character. This register controls whether COMt will interpret and deliver these escape sequences. Setting this register to 0 causes the client to treat the IAC character as any other. Setting this register to 1 causes COMt to always interpret IAC. Setting this register to 2 causes COMt to interpret/ignore based upon the requested port number. If a connection to port 23 is made (the default in the D command, and the standard Telnet server port), then IAC escapes are interpreted. If a connection to any other port number is made (by using [nn] in the D command), then IAC characters are treated like any other. The default is 2.

S1002 -- Request Binary Connection

The Telnet connection can be used either in Terminal and Binary modes. This register controls whether or not a Binary connection is requested by COMt. Setting this register to 0 causes COMt to never request a Binary connection. Setting this register to 1 causes COMt to always request a Binary connection. Setting this register to 2 causes COMt to request a Binary connection only if the port was opened using a byte length of 8 bits. The default is 0.

S1003 -- Telnet Echo

The Telnet server can be operated in either Echo and Non-Echo modes. This register controls whether or not an Echo mode connection is requested by COMt. Setting this register to 0 causes COMt to never request an Echo mode connection. Setting this register to 1 causes COMt to always request an Echo mode connecton. The default is 1.

S1004 -- Verbose Connection Failure

This register controls whether or not the additional WINSOCK: error message is reported before the NO CARRIER response. Setting this register to 0 disables the WINSOCK message, and setting it to 1 enables the message. The default is 1.

S1005 -- Carriage-Return Padding

The Telnet protocol specifies that all Carriage-Return characters (ASCII 13) which are sent without a Line-Feed character (ASCII 10) should be sent as "CR NUL" (ASCII 13 followed by ASCII 0). Setting this register to 1 causes COMt to strip away any NUL character received which follows a Carriage-Return. Setting this register to 2 causes COMt to add NUL characters to any outbound Carriage-Return which is not directly followed by a Line-Feed. Setting this register to 3 enables both inbound and outbound translations, and setting it to 0 disables both. Note that S1001 will override this setting, such that if IAC characters are not being processed, neither will CarriageReturn characters be processed. The default is 3.

S1006 -- Deadlock Timer

This register takes a value from 0 to 100, which specifies (in 1/10ths of seconds) how often COMt should check for incoming data. This is used to handle applications which cause deadlock by continually checking for incoming data from the modem without allowing Windows to process messages. In particular, adding S1006=4 the modem init string in WinCIM 1.3.1 should eliminate the deadlock caused when WinCIM enters a forum when using COMt.

S1007 -- BREAK Handling

This register takes a value of zero, or a value from 243 through 248 inclusive. When COMt sees a "break" request from the application, it either ignores it (if this register is set to zero) or sends an IAC byte followed by the value of this register. This will be interpreted by the Telnet server according to the following table:

	S1007 Interpretation	
===== =======================	
243	BRK (break)	
244	IP (Interrupt Process)	
245	AO (Abort)	
246	AYT (Are You There)	
247	EC (Erase Character)	
248	EL (Erase Line)
The default value is 243, the Break character.

S2000 - AUTHENTICATION

This register is specific to kCOMt, it is used to enable or disable Kerberos Version 4 authentication

	S2000	Interpretation	
=====	===========	
0	no authentication	
1	Use Authentication (Default)	
2	Destroy all Kerberos tickets on logout	
3	Use authentication and destroy tickets on logout

S2001 - ENCRYPTION

This register is specific to kCOMt, it is used to enable or disable the encryption of the data stream.

	S2001 Interpretation	
=====	===========	
0	No encryption	
1	Encrypt the session (Default)

S2002 - Debugging Information

This register is specific to kCOMt, it is used to set the level of debugging information displayed to the user. The values may be added together. E.g. a value of 7 would mean that options 1, 2, and 4 would all be enabled.

	S2002 Interpretation	
=====	===========	
0	no debugging information (Default)	
1	display telnet negotiation in the application's display window	
2	display verbose encryption negotiation information *	
4	display encryption debugging information *

* Note: These options require the use of a debugging console such as dbwin.exe, CVW, S-ICE/W, or a seperate debugging monitor.

Table of Contents


Auto Initialization:

COMt supports an automatic initialization feature which allows you to specify a string to send to the modem emulator upon opening the port. This can be used as a convenience feature, such that the modem emulator can be always initialized to a known state each time it is opened. In addition, this feature can be used as the basis for accessing remote network modems.

For example, to automatically initialize the modem emulator when COM3 is opened, add a line to the [COMt] section of system.ini which reads:

COM3init=AT &C1 &D2 S1000="vt100"

That would enable DCD and DTR handling (as described in the previous section), and set the reported terminal to be "vt100" every time an application opens COM3.

To illustrate using COMt to access networked modems, let's assume that on a remote server (IP address 123.456.789.111) there is a modem which can be accessed by connecting to port 4006. To cause an application to be automatically connected to that modem every time COM3 is opened, add a line to the [COMt]section of system.ini which reads:

COM3init=AT &C1 &D0 S2=0 D:123.456.789.111[4006]

Note the colon after the "D" command. This is very important, as it causes COMt to "hold" the port until the connection is made, making the connection transparent to the application. Also note the "S2=0", which effectively disables local interpretation of the escape sequence so that an escape sequence can be used for the remote modem.

Please note: because the application will be unable to see the true status of the network modem's status lines, and will be unable to manipulate that modem's control lines, some applications may not work correctly when used in conjunction with this feature.

Table of Contents


Application Notes:

Using WinCIM:

COMt can be made to work with CompuServe's WinCIM, although you either need WinCIM version 1.3 or the latest support files. Of key importance is the ability to dial using the network setting of "Internet". If that option is not available in your copy of WinCIM, you need to either upgrade to version 1.3 or obtain the latest support files from CompuServe.

To use COMt with WinCIM, change the Session Settings as follows:

Phone: compuserve.com

Baud Rate: 9600

Network: Internet

Connector: (one of the Telnet Modems)

In addition, set the Modem Control String as follows:

Initialize: AT&F &C1 &D2 S1005=1 S1002=1 S1006=4^M

Transferring Binary Files:

Transferring binary files through a Telnet connection can be extremely problematic, as the interpretation of Binary Mode and Carriage-Return padding is quite varied among Telnet implementations. To get binary file transfer to work properly you may need to experiment with S1002 and S1005 to find the best settings. On at least one SPARC-based telnet server, S1002=1 and S1005=0 works best with binary files, although many files will transfer fine with S1002=0 and S1005=3. As noted above, S1005=1 and S1002=1 works best for the HMI protocol used by WinCIM. You also might try switching to YMODEM protocol rather than ZMODEM protocol, as in some cases better results can be had using YMODEM.

Using Smartcom for Windows:

COMt can be made to work with Hayes' Smartcom for Windows, and to do so you need to check the "Use reduced command set" box in the Modem Settings. Failure to do so will prevent dialing using COMt.

Using Reflection:

Reflection uses its own datacom driver, bypassing COMt and the Windows COMM driver. In order to get COMt to work with Reflection, issue the following command in the Reflection Command Window.:

SET ENHANCED-SERIAL-DATACOMM NO

Table of Contents


Kerberos Additions

Before using kCOMt Telnet, be sure that you've gotten the TGT using Leash. There is a bug in kCOMt in that the Leash dialog box will be displayed, and the TGT will be obtained, but the terminal window may or may not display anything. If this happens, select the Phone menu item, and Hangup. Close the terminal app, and start again. You will have the TGT, so you can proceed normally.

Run Dr.Watson so that any app GPFs can be traced. Be sure to include *detailed* comments in the Dr.Watson log to facilitate bug fixing.

To test the installation first start Leash and obtain your TGT. Then start MS Terminal. This will normally be in your Accessories group. In the main window of terminal type:

telnet express.dialup

This should get you logged into an Athena express dialup server.

To telnet to an alternate port you can type the port number after the machine name but the port number has to be enclosed in square brackets. For example:

telnet express.dialup [25]

will attempt to connect to port 25 on express.dialup. Please note that express.dialup does not support connections on port 25.

Table of Contents


Known Bugs and Problems as of COMt 1.04

- Although COMt is capable of tracking COM1 through COM8, the serial port VxD (serial.386) prevents the Windows kernel from requesting ports higher than COM4. Replacements for this VxD (such as those provided with multi-port boards) may cure this problem, but this has not been tested.

- Along the same lines as the above, the Windows kernel refuses to request the port which has a mouse attached, presumably because it has detected this condition either through the mouse VxD or the serial port VxD. This is unfortunate, as that port would make a good candidate for a Telnet COM port.

- The Kerberized version COMt from MIT will generate a GPF when the Novell slip-ppp driver is loaded in non-exclusive mode. You should change the line in you lanwp.bat file that looks like this:

@C:\NET\bin\slip_ppp

to

@C:\NET\bin\slip_ppp -e

- MIT users are being presented with a notice that this is not a registered copy of COMt when first opening a telnet port. This is actually on purpose during the beta period. The release version will disable this for MIT users.

- If a user does not have Kerberos tickets starting a telnet session will invoke Leash allowing users to obtain tickets however the telnet session will not be established. For now users should first obtain a ticket granting ticket (TGT) before attempting to establish a telnet session. Tether (SLIP/PPP) users should first establish a network connection, then use Leash, before attempting to start a telnet session.

Copyright © 1995, Performance Designs

Table of Contents