Copyright: ® 1995 InterSoft International, Inc.


Help Contents
Contents

Introduction

Getting Started

Quick Login

Configuring NetTerm

Modem Setup

Fonts

Colors

Desktop

ToolBar

StatusBar

Floating Input

QuickButtons

Host Printing

Host Mouse Support

Host Editing

Command Line

Printer Logging

Session Logging

BBS Internet Doors

Firewall Support

WWW Browser Support

132 Column Support

Rlogin

Phone Directory

Keyboard Definition

Special Escape Sequences

International Video/Keyboard Mapping

Special netterm.ini entries

FTP Server

File Transfer Considerations

Security Support

General

S/Key

Public Access Support

Using Scripts

Overview

Script Syntax

Example Dialup Script

Example Ethernet Script

Example Firewall Scripts


Getting Started

NetTerm is a general purpose communications program designed to work with bulletin boards, local area networks, and the Internet network.  Terminal emulation includes VT-52, VT-100, VT-220, VT-320, QNX 2, TVI-925, WYSE-50, IBM-3101, IBM-3151, IBM-3161, IBM-3163, XTERM, SCO ANSI,  ANSI, Nixdolf BA-80, and FTTERM.

So what is the difference between bulletin boards, local area networks, direct connections and the Internet?  In short, the method that you use to connect to the host.  If your computer contains a network card, you are on a local area network;  if your local area network is connected to the Internet, you are both locally connected as well as Internet connected.  If you must dial an Internet provider and establish a PPP or SLIP connection, then you are connected to the Internet.  If you  must dial a site direct, without using Trumpet or the Windows 95/NT dialup services, then you are using a direct modem connection, normally a bulletin board.  NetTerm supports all of these.  You should also be aware that NetTerm can handle any combination of the above.  For example, you can have a NetTerm session connected to a host on the local area network, a site connected via the Internet, and a site connected by a direct modem connect all at the same time.  All of the combinations are controlled through the phone book.

So what emulation do I need?  Well the answer to that depends upon the host that you connect to.  Most sites will document the required emulation in their access documents, while others will provide a menu selection at connect time which allows you to specify the emulation type.  In either case you must provide the emulation type in the phone book for that host.  A good selection is ANSI if you are not sure.

To use NetTerm, you first must determine your connection type and create a phone book entry for the host that you desire to connect to.  In general, there are two major ways to connect to a host, (1) via direct modem dialup or (2) by a network either connected directly or by a dialup line.  The connection type is referred to as Modem and TCPIP respectively.

Although NetTerm contains many options, a new user can get up and running very quickly once the connection type is determined.  For example, most users connect to the Internet with the Windows 95/NT dialup software or Trumpet under Windows 3.x.  In this case, your phone book connection type will be TCPIP.  NetTerm ships with several example phone book entries to help new users to get online quickly.

For example, lets say that your system is Windows 95 and you connect to the Internet using a modem or you are connected to the Internet through your companies local area network.  Now you want to connect to a host on the Internet.  Simply select the phone book by a left mouse click on the phone book icon (it looks like a rolodex) and select the entry Telnet Default.  Now enter a descriptive name in the field where Telnet Default is (such as Government Bid) and enter the full network name of the host in the HOST/IP field or enter the IP address of the host.  In the case of the Government Bid site, enter 131.74.160.39.  Now press the "Add" button.  This will create a new phone book entry for that host.  Now press the "Connect" button.  NetTerm will now connect to that host.  In general, it is not a good idea to use an IP address, instead use the fully qualified network host name such as "www.netterm.com".  NetTerm will determine what the IP address should be.

So what is a fully qualified network name and an IP address?  Each computer on a network, connected directly or through the Internet, has a unique name and IP number.  Think of the network name as you would your name.  Then think of the IP address as your telephone number.  As with the telephone system, you cannot connect by name but by phone number.  However if NetTerm knows either one, it can determine the other using a technique similar to looking it up in the yellow pages.  The only thing important is that one must be entered into the phone book entry.  Of course, if the site is a bulletin board, the phone number is all NetTerm needs to connect to the site.  Using the network name is of course the best way, since if the IP number changes, NetTerm can still connect by looking up the new number based upon the qualified network name.  IP numbers are just as dynamic as phone numbers, but the network name normally remains the same.

To connect to a host that is not on a network (such as an bulletin board), select the phone book entry "CompuServe", enter a descriptive name in the Host field, select a connection type of "Modem" and enter the phone number in the phone number field.  Now press the "Add" button.  This will create a new phone book entry for that host.  Now press the "Modem Settings" button and setup NetTerm for your modem.  Once you have the modem setup, return to the phone book and press connect.

It's that simple.  Once you have successfully connected to the host, you can review the many options contained within NetTerm to customize the phone book entry for your new hosts.


Quick Login

Many times it is desirable to have a small menu popup when NetTerm is started where one can simply enter the network host name or IP address to connect to.  Although this feature is normally used to specify hosts that are not in the phone book, you can also specify a phone book name.  To enable this feature, select the Options-Setup-Global Settings and check the "Allow Quick Login" item.


Modem Setup

In order to dial a system direct, such as a bulletin board, you must first define your modem to NetTerm.  If you do not connect to these type of systems, you can ignore this section.

To set up the modem, open the phone book and select the "Modem Test" host.  Now press the "Modem Settings" push button.  This will bring up the Communications Setup dialog panel.  The dialog panel is composed of two major areas, the "Com Options" and how NetTerm should dial the modem.

In order for NetTerm to communicate with your modem, you must define the communication port, baud rate, data bits, parity and stop bits for the serial port.  Next set the "Control Types".  Normally these are set to "RTS/CTS", and "Tone dialing".  If you are connecting direct to a host (no modem) select the "Direct Connect" and "Ignore Carrier" options.  The "Maximum Connect Time" is the length of time NetTerm will wait while trying to connect to the host.

Next, you must determine how NetTerm should dial the modem.  If you are on Windows 95/NT, just select the "Use TAPI" option.  This allows Windows to dial the modem using rules supplied by the modem company.

If you cannot use TAPI, you must now determine what the "Modem Initialize Command" and "Modem Hang Up Command" should be.  To assist in the determination of the "Modem Initialize Command", NetTerm has a table of common modems available.  To view the table, press the "Modem" push button.  Note that the default supplied by NetTerm will work with most modems.

Normally, NetTerm will hang up the phone by dropping data terminal ready (DTR) to the modem, so the "Modem Hang Up Command" is not needed.  If however your modem fails to hang up when you disconnect, you will have to supply a "Modem Hang Up Command" such as "+++ATH0".  Refer to your modem manual for complete details.

Once the modem has been setup, return to the phone book by pressing the "OK" button.

If you are using a modem, connect to the modem by pressing the "Connect" push button.  Then enter the string 'ati4' followed by a carriage return.  If all goes well, the modem will display its setup values on the screen.  Now disconnect from the modem by pressing the "Disconnect" icon and return to the phone book and select the "Modem Test" entry.

The global dial prefix is provided for those users which must use NetTerm for both home and work.  Most office switchboards require a prefix of '9' to access an outside phone line.  Normal Hayes modem support is provided, allowing special dial codes of 'W' (Wait for Dial Tone) and the comma (delay one second).

The model phone book entry "Modem Test" setup has now been completed.  To test this model with a host you wish to dial up, place the phone number for that host in the phone number field and press the "Connect" push button.  If the connection to the host is successful, modem setup is now complete.

IMPORTANT: Once you have the "Modem Test" host setup, use that as a model for all hosts that require a modem.  Modem setup is by host since a Windows system can have multiple modems.  To create a new host entry, simply select the "Modem Test" phone book entry, enter a descriptive name where "Modem Test" is, then enter the phone number.  Now press the "Add" push button.  This will create a new phone book entry for the new host and copy all the necessary modem setup information.  If you have more than one type of modem, create a new model using the steps above.


Fonts

The control file, NETTERM.INI, contains a user-defined section which allows for the definition of special font files for the main window.  The UserFonts section contains three entries (FON1, FON2 and FON3) which allows for the definition of custom user font support.  To include your favorite .fon file, simply add the full path of the font after the keyword.  For example, to define a user font named myfont.fon located on the d: disk under the directory /fonts, add the following to the NETTERM.INI file:

FON1=d:\fonts\myfont.fon

When NetTerm is started, it checks for valid entries for all three custom font entries.  If present, each defined font will be loaded and available within the font dialog panel.  Upon program termination, each font will be removed from memory and will not be available to Windows.  Once a custom font is selected, NetTerm will continue to use that font until another selection is made.


Colors

Color within the NetTerm environment is divided into two main areas, text and graphic attributes.  Text attributes are composed of normal, underscore, blinking and reverse video.  Graphic attributes are the set of colors which can be specified by the ANSI graphics attribute for background/foreground colors.  This set contains sixteen colors, composed of the  basic eight colors; black, blue, green, cyan, red, magenta, brown and white.  Each base color is associated with the ANSI graphics color attribute zero through seven.  Each of the base colors also has a corresponding high-intensity value that is used when the bold attribute is active.

Each base color and its corresponding high-intensity value are placed within the main section of the windows control file 'netterm.ini', located within the Windows directory.  Each color can be identified with the keyword AnsiColorx= where x is the color index ranging from zero to seven for the base colors and eight to fifteen for their high-intensity counterparts.  Although these values are normally not changed, the basic graphic attributes' colors can be refined by changing the values of these entries.

The text attribute colors can be changed by using the color dialog panel.  To change an attribute, select the radio button corresponding to the text color you desire to change, then press the 'Change Color' push button.  When the Windows color dialog panel appears, simply left mouse click on the desired new color, then press the 'OK' push button.  The sample screen at the bottom of the color dialog panel will provide a preview of what the new color will look like.


Desktop

The desktop or window to the host system can be controlled through the desktop icon.  This activates a dialog panel which allows you to control host-dependent display information such as the number of rows displayed and the number of columns.  Most systems which support the VT-100 terminal have been setup to display a maximum of 24 lines on the video display.  However, some special applications have a need for more, so you are given a choice.  All this really controls is the screen model for those applications which create menus and expect to have a defined number of lines.  Most applications simply write lines, thus the screen will scroll whenever the maximum number of lines have been displayed.  The same is true for the maximum number of columns which can be displayed.

NetTerm supports the Telnet option NAWS which will allow it to convey window size to the Telnet server.  This option is defined within RFC-1073 and is supported by the newer Telnet servers.  When used in conjunction with the desktop number of rows/columns option, larger screen sizes can be obtained.   Refer to the 'resize' command on your UNIX host for additional information on  the use of larger screen sizes.

The return sends, line control, and scroll-back options further allow you to enhance the display.  The 'return sends' option determines the type of end-of-line sequence to send to the host.  Local echo determines how characters typed locally are treated.  If characters typed on the local keyboard do not appear on the screen, it probably means that you need to select this option.  The auto-wrap options controls what happens whenever a line sent from the host exceeds the number of columns you have selected.  If auto-wrap is on, any characters received after the maximum have been exceeded will be displayed on the next line.  If it is off, each character received after the maximum has been reached will be displayed in the last column.  The scroll-back option determines how many received lines are saved in a memory buffer.  The contents of the scroll-back buffer can be viewed by the normal Windows scroll bar action and can also be saved to disk for later editing.

The scroll-back option allows you to define the number of lines that are kept in the scroll-back buffer.  As lines get scrolled off the screen, they are transferred to this buffer, up to a maximum of 32,767 lines.  The vertical scroll bar will use the number of lines contained within the scroll-back buffer to control the relative position of the scroll button.

The 'Answer Back:' option provides a method to identify your terminal to the host system.  The contents of this text field will be sent to the host when it is requested.

The 'Terminal Type' field allows you to override the terminal identification string sent to the host when requested.  If this field is defined, it will override the default terminal type information associated with the emulation selected.  For example, if VT220 emulation is selected in the phone book for a host, NetTerm will send the string "vt220" as the terminal type.  If you set the 'Terminal Type' field to "vt200", that value will be sent instead of "vt220".

The 'FTP Command' push button allows you to provide a startup information to the user defined FTP program.  This can be used with many FTP programs to provide default connection information such as user id, password, and initial startup directories.  NetTerm will pass the information specified as a part of the command line used to start the FTP program.  Refer to your FTP program documentation for valid command line options.

The following extended options further define how NetTerm controls the host connection.

The 'Add LF to received CR' and ' Add CR to received LF' can be selected if the host does not provide the normal CRLF sequence that NetTerm expects at the end of each line.

The 'Disable Application Mode' controls how the numeric keypad is handled.  In general, the keypad can be placed in one of two modes by the host, numeric or application.  Note that under both of these modes, the cursor keys, Home, PgUp, PgDn, End, Ins and Del keys do not send the same values as their 'gray' key equivalents.  Although this follows normal VTXXX protocol, some application programs expect the keypad keys to send the same values as the 'gray' keys.  The 'Disable Application Mode' will override the host requested application mode, and will treat the keypad keys the same as the 'gray' keys.  Note that this is the default option whenever ANSI is selected as the emulation.

The 'Exit NetTerm on disconnect' option provides a quick method of quitting NetTerm any time the line connection has been closed.  When this option is selected (checked), NetTerm will exit whenever the 'disconnect icon' is pressed or when the host has closed the current connection as a result of the log off command 'exit'.

The 'Do not disconnect if session active' options prevents closing the Telnet connection as long as you are logged into the host.  The option is helpful for those sites that require an orderly shutdown of applications such as databases.

The 'Add CR to received LF' and 'Select linemode for local input' is required for some 'Talker' applications.  If you Telnet to a site and the lines appear not to be followed by a carriage return, try the first option.  If the host complains that the input is incorrect when you type just one character, the second option is required.

The 'Exclude this host from firewall setting' option will bypass all firewall support for this host.

The 'Add input data window to the StatusBar' places an edit window within the StatusBar, allowing host data input independent of the screen area.

The left mouse click options specify the action to take when NetTerm detects a left mouse click within its window.


ToolBar

The toolbar, located at the top of the main window, provides one-click access to commonly used functions. The toolbar contains thirteen icons, divided into three major groups.

The first four icons provide basic screen, clipboard, and printer management for NetTerm.  The first two icons, Copy and Paste, provide standard Windows clipboard support.  Text-within-the-text window is selected using normal Windows text selection.  In addition, a block copy can be performed by selecting the upper left corner and the lower right corner of the text with the shift key and left mouse click.  This method supports multiple page text selection.  When pasting into NetTerm, position the cursor where the text should start, then depress the Paste icon.  The third icon, Picture, will capture the current screen to a user-specified file.  The fourth icon, Printer, will start a user-definable printer program to print text files such as those generated by the SmartPrint option.

The second group of icons provides network and file transfer control.  The first icon, Connect, will connect to the selected network.  If the 'Modem' network connection has been specified, the phone number will be dialed to establish the connection.  The next icon, Disconnect, will disconnect the network connection, including hanging up the phone and disconnecting the modem.  The third icon, File Transfer, will start either a user-defined FTP server for network file transfers or will activate NetTerm's internal FTP server.  Refer to the section "FTP Server" for setup and detailed usage information.  The fourth icon, FTP, will start a user-defined FTP program.  An optional startup command can be passed to the FTP program.  The optional startup command is host specific and is defined in the desktop dialog panel.

The third group of icons provide for custom configuration of NetTerm.  They have the following functions:

Directory	Select the phone directory dialog

Font	Font dialog panel

Color	Set the screen colors

Keyboard	Select the keyboard configuration dialog panel

Desktop	 	Select the desktop configuration panel

The Directory dialog box contains unique entries for hosts that you commonly connect to.  NetTerm is shipped with several host examples which provide a template for creating new hosts.

The Font, Color, and Desktop options are unique to a specific host.  Changes made within any of these dialog boxes will only be applied to the active host.  The one exception to this is the option to define the sixteen ANSI colors, located within the Color dialog box.

The Keyboard dialog box allows for custom definition of selected keys.  This allows for the creation of special key definitions which can be saved within the netterm.ini file, then attached to specific hosts.  Refer to the Keyboard Definition section for a detailed description  on how to change problematic keys.

The Desktop dialog box provides the ability to identify special requirements for each host.  Refer to the Desktop section for a detailed description of options located within this dialog panel.

The Menu contains six primary selections; File, Edit, Options, Send, Receive, and Help.  The File menu contains an alternative method for network connection and disconnect.  In addition, the Exit option will terminate the program.  The Edit menu contains normal clipboard copy and paste selections, as well as an item to allow for screen capture.

The Options menu contains the user setup and configuration items for defining the modem setup, the FTP server, general Setup, Colors, Network type, Keyboard selection and Emulation type.

Menu items Send and Receive allow selection of commonly used file transfer protocols.

The Help menu item provides extensive on-line help, as well as ordering and registration support.


StatusBar

The status bar is composed of nine informational areas composed of:

1.  Connection status

2.  FTP Server status

3.  Printer status

4.  Security indicator

5.  Emulation type

6.  Host type

7.  Current or elapsed time

 	8.  LED display

9.  Message area

The connection status area provides a visual indication of the current connection status to the host.  A red ball indicates that the connection is closed.  A green ball means the connection is open or active.  The FTP server status area will contain a blue ball if the server is active.  If the printer is active, a small printer icon will be displayed in the Printer status area.  The security area will contain a key if NetTerm is in secure mode.  The LED display contains four LED lights that can be turned on by the VT100 escape command ESC[xq where x is the LED number to turn on.

The message area can be cleared at any time, simply by placing the mouse cursor over the text and clicking the left mouse button once.

The StatusBar can also contain an optional data input area, where host input can be entered independent of the normal screen area.  This option is selected in the Desktop dialog box, and is selected by host.  If selected, the data input window will appear above the normal status bar as shown above.  Note that input is transferred to the normal screen area and is sent to the host when the enter key is pressed.


Floating Input

The floating input tool is an adjustable text edit dialog box which allows data to be entered and edited prior to sending to the host system.  This is most useful for conferences and text-related communications hosts.  There are two ways data contained within the edit dialog box can be sent to the host.  The 'Auto' mode will send all data when the enter key is pressed on the keyboard.  This mode can also be used to send control characters such as Ctrl-c, etc. to the host.  When the 'Auto' mode is not selected, all the data in the edit dialog box will be sent when the 'Send' push button is pressed.

The floating input tool is adjustable in both width and height, allowing for easy viewing and editing of input data.  This option is selected within the Options-Tools menu.

In addition to the floating input tool, the status line can be modified to contain a one-line text edit window.  This line will always send the data whenever the enter key is pressed.  Refer to the StatusBar section for additional details.


QuickButtons

QuickButtons provide a quick and easy way to send keystrokes to the host using the mouse.  The buttons are located directly below the toolbar and can contain up to eight buttons; each one can be defined with a button label and up to 255 characters that will be sent to the host system when pressed.  Control characters such as carriage return can be a part of the string and follow the same conventions as defining keys within the keyboard dialog box.  An example of the use of QuickButtons to perform several commands is:

cd statbot^Mrm *.db^Mstatbot^Mcd ..^M

The QuickButton processing also detects a html URL.  If an URL is detected, NetTerm will start the user-defined browser and pass it to the URL.  This is a very powerful feature, allowing unique uses of NetTerm with the browser.  For example, you could use this feature to start a ftp request to the host as shown below:

ftp://user@myhost.com

QuickButtons also allow NetTerm menu items, programs, key definition selection, and user-written scripts to be selected, providing a quick and easy way to access commonly used menu items, run programs, and control a complex program startup on the host.  The menu feature is enabled by placing the internal menu identifier in the dialog box instead of the host command.  The menu identifier must be prefixed with the '~' character.  For example, the internal identifier for the print screen menu item is 10005 so the entry would be:

~10005

The key definition selection requires the ~ character combined with the desired key definition name, such as:

~EMACS

~DEFAULT

The script feature is enabled by prefixing the full path of the script with the '@' character.  For example, to start a script named runtime.txt located on the 'd' drive under the directory \scripts, the entry would be:

@d:\scripts\runtime.txt

The program feature is enabled by prefixing the full path of the program with the '@' character.  NetTerm looks for a string of .exe in the name, and if found, treats this as a request to start a program.  Note that the string .exe must be in lower case.  For example, to start the Windows program Notepad, the entry would be:

@notepad.exe

Since the internal menu identifiers can change, and new ones can be added, the most current values will be listed in the FAQ file for reference.

QuickButtons are defined within the Option-Setup menu item.  Labels can contain up to thirteen characters, but keep in mind that the size of the buttons will vary with the screen width.  Once any button is defined, the bar will be displayed each time the host is selected.  To remove the QuickButton bar, simply remove the definitions from the QuickButton dialog box.  QuickButtons can also be enabled/disabled on a global basis by the Options-Setup item 'Allow Quick Button Bar'.  A unique QuickButton bar can be defined for each host.

Up to three unique sets of QuickButtons can be defined, for a total of 24 buttons.  Clicking the right mouse button anywhere on the QuickButton bar will change to the next set.

QuickButtons can also be defined dynamically from the host, allowing host applications to control both the label and the keystrokes.  Refer to the special escape sequence section for complete programming details.


Host Printing

NetTerm has the ability to recognize the standard UNIX escape sequences for printing.  Whenever the escape sequence CSI[5i is received, a temporary file will be created and opened.  Any data received after this point will be written to the file.  When the escape sequence CSI[4i is received, the file will be closed.    The following is an example of a UNIX script which will send the contents of a UNIX file to a local file for printing:

#!/bin/sh

echo '\033[[5i'

cat $1

echo '\033[[4i'

There may be times when it would be useful to toggle transparent printing directly from the workstation.  NetTerm provides this support with the options 'Transparent Printing On' and 'Transparent Printing Off,' located within the file menu.

Data received after the transparent print option has been turned on will be captured in a temporary disk file.  Once the printer data has been received and transparent printing is turned off, the file will be printed on your default Windows printer or processed according to the print option selected.  The default font and font size for the printed file can be selected with the menu option "Options-Setup-Global Settings-Printing".  The temporary file which was created will be deleted by NetTerm, if the 'delete file option is selected'.  The following options control the handling of the printer data:

1.  Receive File Only - Place the print data into a file.

2.  Send to Windows printer - Send to the default Windows printer driver for processing.

3.  Write directly to the printer - Bypass the Windows printer driver and write directly to local printer.

4.  Start user defined print program - Start the user defined print program, passing the file name.

5.  Start user editor program and edit the file - Start the user defined edit program, passing the file name.

6.  Add the print file directly to the Windows spooler queue - Add file directly to spooler queue.

7.  SmartPrint -   Queue all printout - Print on user demand.

Options three and six are designed to handle print files which contain special printer control characters.  These two options should be used when printer formatting is done on the host.  An example of this is a host-based application that creates a form which includes laser jet print commands to set the font size, orientation, etc.  Option three should be used if the printer is directly attached to your computer.  Option six should be used if the printer is network-attached.  Note that the File option 'Print Screen'  is also controlled by the six print options, although option two is normally used.

The SmartPrint option allows for the receipt of multiple print documents throughout the session to be placed within a common print file.  The file can be printed, saved to another file, edited or deleted at any time.  If the file has not been processed at the session logoff, NetTerm will request  a final disposition of the file.

The file 'netprint', located within the NetTerm directory, should be uploaded to your host using the rz command.  Then issue the command chmod +x netprint.  To print a file, simply enter netprint xxxxxx on the host, where xxxxxx is the file name to be printed.  In essence, the netprint script can download any ASCII file to your machine.  It passes all data received from the UNIX host to the local file, except for the binary zero character.


Host Mouse Support

NetTerm supports two models for host mouse support.  The first is the standard XTERM style and is active only when the XTERM emulation is selected.  The second is the Locator Input Model for ANSI Terminals which is for all other emulations.  In both models, the host must activate the mouse support.  If mouse support has not been activated by the host, then normal Windows style mouse support will be in effect.  Note that pressing the right mouse button will activate the right mouse popup menu containing many of the same items contained within the NetTerm menu.  If you have a three button mouse, pressing the middle button will bring up the Options-Setup-Global Settings dialog panel.


Host Editing

The host editing feature allows text-based files to be downloaded from the host, and passed to a user-defined editor for modification or viewing.  This feature requires a special program (named netedit.c) to be uploaded to your host and then compiled and linked .  Simply transfer the file netedit.c (located in the netterm directory) to your host then issue the following commands:

cc netedit.c -o netedit

chmod +x netedit

On some systems, you can also replace the first line with make netedit, then do the chmod +x netedit command.

To edit a host file, simply enter 'netedit xxxxxx' where xxxxxx is the file name to be edited.  The file will then be transferred to your system, and the user-defined editor will be started with the file name received as a command line input.  The Windows program 'Notepad' is sufficient for most cases.  If you make any changes to the file, be sure to save it.  NetTerm can then detect that changes were made, and will then upload the file back to the host system.  If no changes are made, NetTerm will inform the host base netedit program of that fact.  If changes are made, the host-based netedit program will create a new file, and if successful, it will replace the current file with the new file.

The host editing feature described above uses the same logic as transparent printing to transfer files to the local machine and uses the same basic logic as ASCII file transfers to return the file back to the host.  Although effective on most UNIX machines, some text files contain data that will prevent successful uploads back to the host.  This is caused by text files containing 'long lines' such as those produced by word processors or some HTML editors.

A second, more powerful way for editing host files is with the SmartEdit feature.  This method uses the standard Zmodem file transfer to move files between the host and NetTerm for editing, thus allowing binary files such as bitmaps and other graphic files to be edited with a graphical editor.  Since the standard Zmodem file transfer routines are used, all the normal file transfer options apply.  This allows a file to be transferred, retaining its file name on the local machine.  For the 32-bit version of NetTerm, long file names are supported.  The SmartEdit feature requires that the file 'se' be transferred to the host.  Once it is on the host, just enter chmod +x se to enable it for operation.

SmartEdit uses the normal Windows extension support to determine which program to use to edit the file.  If a file association is not found, the default user defined editor will be used.  If a default editor has not been defined, Notepad will be used.  As with the first editing method, NetTerm will examine the file length, date, and time to determine if the file was changed when the editing program exits.


Command Line

When started, NetTerm will check for command line arguments.  The first argument must be a host name, followed by an optional Telnet port for tcpip hosts.  If a host name is given, NetTerm will attempt to locate that name in the phone book.  If found, a connection will be attempted using the phone book settings.  If the host name is not located within the phone book, then NetTerm will assume that the host name is an Internet host  consisting of either an IP address or a network host name.  If a network host name is given, a DNS lookup will be issued to determine the IP address.

If  a phone book host name contains spaces, and a Telnet port is required as a part of the command line, then the host name must be enclosed in quotes.  The following are examples of valid command line arguments:

myhost.com

myhost.com 23

"my phone book name"

"my phone book name" 23

The command line can also contain an optional script name to control the connection to the host.  If supplied, the script will override any script attached to a host's phone book entry.  The script must be the last command line argument and be preceded by the keyword "-s".  For example, to connect to myhost.com on port 9000 using the script myscript.txt, the following would be entered on the command line:

myhost.com 9000 -s myscript.txt

The optional command line argument -t can be used to pass a host name into a script.  This is primarly used by sites that are behind a firewall.  For example, the command line argument could contain:

netterm firewall -s proxy.txt -t target.host

The script 'proxy.txt' would contain a line such as:

output "c ^t"

and NetTerm's script processor would place target.host in place of the ^t.

The optional command line argument -i can be used to pass an optional netterm.ini file to NetTerm.  If present, NetTerm will use the new .ini file instead of the normal .ini file.  This command conforms to the Netscape standard for passing an optional .ini file into a program.

NetTerm can also be called from a browser such as the Netscape Navigator and the Microsoft Internet Explorer.  If you use Navigator, select the Navigator Options-General Preferences-Apps tab and use the Browse button to select NetTerm as your Telnet application.  If you use the Windows 95/NT Internet Explorer, select the NetTerm Options-Setup-Set Registry Telnet Handler menu item.  Refer to your browser  instructions on defining a Telnet application helper for all others.


Printer Logging

Printer logging allows everything that is displayed on the screen to be sent directly to the printer at the same time.  It is turned on from the File menu by selecting the 'Printer Logging' option.  To use this option, your printer must be directly attached to your computer and available for printing.  Logging can be toggled on/off during the session simply by selecting the option.  When the option is checked, logging is on.  Note that information received from the host in full screen mode may not be printed correctly.


Session Logging

Session logging provides an audit trail of data received from the host.  It is turned on from the File menu by selecting the 'Session Logging' option.  The first time logging is requested, you will be asked to provide the disk file name for saving the session information.  If the file does not exist, it will be created.  If it does exist, data will be appended to the file.  Logging can be toggled on/off during the session simply by selecting the option.  When the option is checked, logging is on.  Note that information received from the host in full screen mode may not be fully captured.

Under most conditions, a unique log file name should be selected for each session.  NetTerm will however allow two or more sessions to share a common log file.


BBS Internet Doors

Many modern BBS's have the capability to allow access to the Internet, providing full SLIP/PPP support.  Since the connection to the BBS is with a normal dial-up phone connection, those desiring to use this feature must also have the Trumpet Winsock loaded on their system.  Since this option is BBS specific, refer to the detailed instructions provided by your BBS for instructions on how to set up and use NetTerm with their service.


Firewall Support

NetTerm can support sites that require a firewall in several different ways.  The most basic method is to create a phone book entry for the firewall computer providing a name of 'firewall', the IP address, and the Telnet port of the firewall.  Then use the command line argument of 'netterm firewall -s proxy.txt -t target.host' to start NetTerm.  The -s command line argument specifies the script file to use for the firewall host and the -t specifies the host to Telnet to after connecting to the firewall.  Refer to Example Firewall Script for the contents of the firewall script.

The second method is to use the Options-Setup-Firewall to specify the firewall host name/IP address, Telnet port and script file to use.  Then select the 'Standard Firewall' checkbox.  When a host is selected from the phone book, NetTerm will first connect to the firewall using the firewall script, then will transfer script control over to the script file specified in the host phone book entry.  Refer to the Enhanced Firewall Script for the contents of the firewall script file.

The third method is to use the SOCKS 4 protocol.  Select the Options-Setup-Firewall option to specify the firewall host name/IP address, Telnet port, and user name.  Then select the 'SOCKS Firewall' checkbox.

Once the firewall support has been enabled, it will apply to all hosts within the phone book.  The desktop dialog panel can be used to exclude a host from the current firewall setting.  Simply select the host in the phone book, press the 'Desktop' push button and then select the option 'Exclude this host from the firewall setting'.  The firewall support can be disabled for all hosts by selecting the option 'Disable' in the firewall dialog box.


WWW Browser Support

NetTerm is designed to be the preferred client of choice for Netscape.  Select any Telnet URL within Netscape and NetTerm will connect to that site.  In addition, if you come across any type of URL while in a Telnet session, simply right mouse click on the URL and NetTerm will use its internal DDE client logic to tell Netscape to connect to that URL.  NetTerm will also work with most other WWW browsers, but instead of using DDE to tell the browser to process the URL, it will start the browser with the URL on the command line.

The location of your browser must be defined with the Options-Setup-Define Browser Program prior to using the URL display function.  In order to define NetTerm as the Telnet client for Microsoft Explorer and the Netscape Communicator, use the NetTerm Options-Setup-Set Registry Telnet Handler.


 132 Column Support

Applications that require 132-column support normally issue a command to let NetTerm know that it should alter its internal emulation to handle lines greater than eighty columns.  NetTerm can do this in one of two ways.  It can change the window width to process 132 columns, or it can accept the data in the current window size, and allow horizontal scrolling to view data that exceeds 80 columns.  On screens that support the VGA enhanced mode, the larger width screen makes for easy viewing of report-type data.  However, on those systems that only have VGA mode, the horizontal scrolling logic allows the report to be viewed.

The choice between a larger screen size or horizontal scrolling is provided within the Options-Setup menu.  If the option 'Allow 132-Column Scrolling' is checked, then horizontal scrolling will be enabled; otherwise, the screen size will be adjusted.


Rlogin

To change any phone book entry to a Rlogin type connection, select the phone book entry for that host, change the telnet port to 513, press the Desktop push button and enter your  userid in the Rlogin userid section.


Phone Directory

Get quick access to the phone book with this icon.

A phone book is maintained for commonly accessed Ethernet and dial-up hosts.  It consists of a list box which contains the names of the hosts and a section where detailed information regarding the host can be entered.  The detail section is divided into the following major areas:

Host Name

Host Number

Modem Control Information

The host name can take one of two forms, depending upon its type.  If the host is a dial-up service, the name can be any descriptive name.  If the host is a network host, the name can be any descriptive name, or it can be the actual network name of the host.  Network names must be fully qualified.  The host name has a maximum length of 255 characters.

The host number can also take one of two forms, depending on the host type.  If the host is a dial-up service, this field must contain the basic phone number of the host.  If the host is a network host, this field may be left blank, or it can contain the network IP address of the host or the fully qualified name of the host.  If the network IP address is placed in this field, it will be used by NetTerm to establish a network connection.  If a fully qualified network name is entered, NetTerm will use DNS to determine the IP address.  If this field is left blank, the host name field must contain the fully qualified network name of the host.  NetTerm will use this name to do a DNS (Domain Name Service) search to determine the network IP address.

The modem control information area only applies to dial-up hosts.  This area consists of the phone number suffix, PIN (Personal Identification Number), baud rate, and modem settings.

The phone number suffix further defines the basic phone number field.  Under normal conditions, the basic phone number consists of the area code (optional), and the seven-digit phone number.  The phone number suffix allows for the addition of special control information required by corporate and other specialized phone systems.  The phone suffix can also be coded to include a PIN.  If a PIN has been defined, it will be inserted wherever the 'P' character appears in the suffix.  The PIN can be defined within the Options-Setup-menu, and is encrypted when placed in the netterm.ini file.  The basic phone number can also be further defined to include a global dial prefix, located within the modem dialog panel.  The final number that NetTerm will use for dialing will consist of the prefix, phone number, suffix and the PIN number.

The modem control area contains data related to the modem.   It contains an entry for baud rate, parity, data bits, and the number of stop bits.  All modem control values are set by pressing the Modem push-button, which will bring up the modem dialog panel.

The control data area has four entries; keyboard type, emulation, connection type, and an optional script name.  Keyboard definitions refer to both default and custom user-defined definitions, covered in more detail within the Keyboard Definition area.  The ANSI emulation type supports full color and can be used on most dial up bulletin board systems.  The connection type can be either modem or tcpip.

All Ethernet hosts are of the type "tcpip", even if they are connected over a modem using SLIP/PPP.  Ethernet hosts can have their network address specified in the phone number field.  If specified, that address will be used for the connection.  If it is not specified, normal network database lookup will be used to find the address.  The actual method(s) depends upon the network software you have installed on your system.  NetTerm also has a built in 'resolve' routine (under the Options menu-Resolve)  to lookup the IP address or host name, if either is supplied.  This option also allows the host to be 'pinged' to test the network connection.

Modem-connected hosts are of the type "modem".  NetTerm supports the  modem standard for all communications with the modem.  If desired, you can enter a modem startup command within the modem dialog panel.  This command will be sent to the modem prior to sending the phone number and dial command.

Internet providers, connected via a modem, are also of the type "modem".  Once the modem connection is established to this type of host, control is normally passed to the SLIP/PPP Ethernet control program (such as Trumpet).  NetTerm is simply acting as a dialer and manager of the modem port.  Once the Ethernet control program has stopped, control is then passed back to NetTerm, to hang up the phone.  These types of entries must have a valid script (see the example neosoft1.txt) to set up and start the Ethernet control program.

If a phone book entry contains a script, it will be executed upon connection to the host.  The script name must contain the full path and file name, unless the file name is prefixed with the '~' character.  If the script name is prefixed with the `~' character, it is replaced with the path of the directory from which NetTerm was started.  If NetTerm was installed in the directory c:\tcpapps, an entry of ~unix.txt would be expanded to c:\tcpapps\unix.txt.

Although scripting allows for storing and processing of passwords, it is highly recommended that passwords be left out of script files or at the very least you should encrypt script files whenever you are away from your computer, or secure your computer from unauthorized access.  The best way is to use the 'password' script keyword which will interrupt the script and ask you for your password.

If NetTerm is started with a host name on the command line, it will attempt to look up the host name in the phone book.  If it is found, it will be used for the connection.  If the entry is not in the phone book, the entry "Telnet Default" will be used.  This allows NetTerm to be called from a WWW client program such as Netscape.

The 'LocalNet' entry has special meaning to NetTerm.  If selected, NetTerm will treat the 'Connect' request as a request to connect to local Ethernet network.  This entry must have a valid script (see the example localnet.txt file) which will be used to set up Trumpet (or other local network TCP/IP software).  This option is only used on those systems which are locally attached to an Ethernet network.  This option can be used to flip back and forth between a locally attached network and dialup networks using SLIP/PPP.

Before selecting baud rates above 28 kbps, your should be aware that under most conditions you will have to replace your Windows communications driver with one designed for high-speed data transfers.  We have found that the cybercom.drv (cyberdrv.zip) is a good  replacement for the standard Windows driver, allowing data transfers up to 115 kbps.  In addition, you must have a 16550 serial port chip and operate Windows 3.1 in enhanced mode at these transfer rates.

More:

Directory Maintenance


Directory Maintenance

The phone book is designed to provide fast access to commonly used hosts.  Hosts can be one of two types, TCPIP  or modem (refer to the "Phone Directory" for more detailed information).  Hosts are selected within the phone book by clicking once with the left mouse button on the host name within the host list box.  The selected host will then be highlighted.  Double clicking the left mouse button on a host name will close the phone directory and connect to the host.

TCPIP hosts are those that are accessed over a local Ethernet connection, or through a dialed-up SLIP/PPP connection.  In order to connect to this type of host, NetTerm must know either its fully qualified host name or its IP address.  If only the host name is given, NetTerm will attempt to do a DNS lookup in order to get the IP address.  If an IP address is contained within the phone book, it will be used directly (resulting in faster connects since the DNS lookup is not required).  Modem information for this type of host is not required, and will not be used if given.

Modem style hosts normally are bulletin boards, services such as CompuServe, or an Internet Provider.  This style of host entry must have complete modem information and phone number.  If the host is an Internet Provider, then it also is a Telnet-style host.

The quickest way to add a host is to select an existing one which is like the one you would like to add.  For example, to add a new TCPIP host, select the "Telnet Default" entry, then enter the new host name and/or IP Address.  Then press the "Add" button.  To connect to the host, simply double click on the new host entry.

To change information for a host, select the desired host and enter the new information in the data entry area directly below the host list box.  If the host is of  modem type, press the Modem push-button to get the modem dialog box.  Change whatever is desired and press the "OK" button to exit the modem dialog box.  Once all changes have been made, press the "Change" button.

To delete a host, select the desired host and press the "Delete" button.

Under most conditions, the ANSI emulation type should be selected.  This emulation contains all the normal VT-100 abilities, and includes support for background/foreground text colors.  The prime difference between VT-100 and ANSI is the way the numeric keypad is handled.  Refer to the section on Keyboard Definition for additional details.  The FTTERM mode, although supported, is for communication to IBM mainframe computers and is not normally used.

Once a host is selected, it becomes the active host.  Changes to styles such as font, font color, background color and desktop top settings are always applied to the active host.  All style changes are immediately applied to the active host and are saved in the netterm.ini file .

Connection to the active host can be done in one of four ways.  While the phone book is opened, you can double click on the host entry within the host window, or you can press on the '"Connect" button.  When the phone book is closed, you can press the "Connect" icon or use the File-Connect from the menu.  If you are currently connected to a host, the first two methods will request a new instance of NetTerm.  The current connection will remain connected.  This process can be repeated for as many copies of NetTerm as needed.  To switch between open connections (or instances of NetTerm), use the normal 'Alt-Tab' sequence.


Keyboard Definition

Keyboard definition for problematic keys are supported through a standard dialog panel.  Selected keys, displayed within the dialog panel, can be programmed to transmit strings of your choosing.  Each key can be set up to transmit one string when pressed by itself, a second string when pressed together with the <Shift> key, a third string when a key is pressed together with the <Ctrl> key, a fourth string when the Num Lock key is on, a fifth string when a key is pressed together with both <Ctrl> and <Shift>, and a sixth string when a key is pressed together with the <alt> key.  The key definitions are stored concatenated together into a single string, whose total length cannot exceed 60 characters. The sub-strings are separated by the pipe character ('|', ASCII 0174).  Keys should not be defined when you are connected to a host.

Special sequences such as escape, carriage return, and line feed are specified with the '^' symbol along with the printable 'equivalent' of the character.  For example <Ctrl-c> would be encoded as ^C.  To send the '^' symbol, you must escape it with the '\' character.  The following are some additional samples:

^[	Escape

^M	Carriage Return

^J	Line Feed

Special sequences can appear at any point within the user-defined string for the specified key.  For UNIX systems, the definition must match that within the corresponding TERMCAP or TERMINFO file.  For dial-up lines, the keys can be defined to send any string.  For example, you could define F1 to send the string 'ftp ftp.cica.indiana.edu^M', and F2 could be defined to send your Email address.  Custom keyboard definitions are saved in the NETTERM.INI file for later use.

The Windows Common User Access: Advanced Interface Design Guide gives special meaning to the F1 key and the ALT key sequence.  This presents programs such as NetTerm with some design problems, since it must pass keys to another host, which in turn will process the keys according to their rules.

The F1 key is defined by the CUA guide as a user help key.  NetTerm will treat F1 as a user help key if it is not connected to any host; otherwise it will be passed on the host system as any other key.  The ALT key sequence will normally be treated according to the CUA guide, that is these key codes will not be sent to the host.  There are two exceptions to this.  The first exception is for the twelve keys F1-F12.  If these keys are defined with the ALT key modifier, then the defined data with be sent to the host.  If the key is not defined, normal window actions will be honored.  For example, ALT-F4 is normally used to terminate a program.  If you define ALT-F4 using the keyboard dialog panel, then that definition will be sent to the host, and the normal Windows action will not take place.  The second exception is for the ALT-Pause.  This key combination is used on network-type connections to flush all received network data, and to send a Telnet abort request to the host.  This is useful for programs that get in a print loop or by entering a command such as 'ls -R' by accident.  When the ALT-Pause is pressed, a stop symbol will be displayed on the statusbar indicating that all network data is being flushed.  To resume normal operations, press the ALT-Pause sequence again.  The stop symbol will be removed from the statusbar and normal operations will resume.

 Keyboard Icon

To setup custom values for keys, press the keyboard icon to bring up the keyboard dialog panel.  Check to see if the keyboard definition you desire to change is loaded (lower left corner of the panel).  If it is not, press the "Load" push-button and select the desired definition.  To define a key, simply click the key with the mouse button and enter the new definition within the edit box at the bottom of the panel.  After you have entered the new definition, press the "Change" push-button to make the change.  If you want to define a Shift or Ctrl key sequence, click either Shift or Ctrl first, then click on the desired key.  The Shift or Ctrl will stay on (as indicated by the buttons on the upper right of the panel) until you click on this again.  Once you have made all your changes, save the values by depressing the "Save" push-button.  If you want to give the definition a new name, do so now.  The left Ctrl, Alt, Shift, and Caps Lock keys cannot be programmed.  Normally, the only keys you should program are the twelve function keys.  The most common reason to program any key is to reduce a long sequence of characters to a simple keystroke.

More:

Accelerators

Numeric Keypad


Accelerators

Since NetTerm is designed to provide keyboard input for another host, the use of accelerators has been minimized to avoid conflicts with key definitions required by the host.  The two exceptions to this are for the clipboard copy and paste functions.  The accelerators Ctrl+Ins and Shift+Ins have been chosen for these.  In addition, an option has been added to the Options-Setup menu to turn on/off the use of accelerators.  The default is off, which means the accelerators are not active.  To allow the use of accelerators,  simply select the 'Allow Edit Accelerators' option.   A check mark will indicate that the option is turned on.


Numeric Keypad

The numeric keypad presents some additional requirements upon NetTerm.  The definition of the keys depends upon the state of the Num Lock key, and the type of emulation.  The emulation type, VT-100, ANSI and FTTERM will determine what value gets sent to the host, and whether the key can be programmed.  For this discussion, emulation types ANSI and FTTERM will be treated as the same and simply referred to as ANSI.  Since the comma key is not contained on the PC numeric keypad, the keypad plus (+) key is used as the numeric keypad comma.

If VT-100 or VT-200 emulation has been selected for the host, the keypad is controlled by the host computer.  Under normal conditions, the keypad is placed into 'application mode'.


Special Escape Sequences

NetTerm contains several special escape definitions that are not a part of the published VT-XXX or ANSI standard.  These have been requested by several of our clients to enhance the functionality of NetTerm and provide a more flexible client interface for their UNIX programs.  The following are the special escape codes:

^[[]URL^[[0*	Send the URL to the client's WWW browser for processing.

^[[]COMMAND^[[1*	Start/run the program specified by COMMAND.

^[[]COMMAND^[[2*	Define the International keyboard/video map to use.

^[[]COMMAND^[[3*	Define the keyboard definition template to use.

^[[]COMMAND^[[5*	Define and execute a QuickButton style command .

^[[]DIRECTORY^[[6*	Change the file transfer download directory to DIRECTORY.

^[[]DIRECTORY^[[7*	Change the file transfer upload directory to DIRECTORY.

^[[]FILENAME^[[8*	Define the file(s) to upload on the next upload request.  FILENAME must

contain the complete pathname.  If FILENAME has a quote delimited

string prior to the actual filename, the quotes will be stripped and the

resulting text will be sent to the host  For example, the following will

define c:\work\myfile.txt as the file to upload and NetTerm will send

the string rz to the host, resulting in an automatic zmodem upload.

"rz" c:\work\myfile.txt

The special ^[[]COMMAND^[[5* command can also be used to start the transfer.

^[[]COMMAND^[[9*	Start/run the program specified by COMMAND and wait till it terminates.

COMMAND can contain both the program to run and command line arguments.

^[[]COMMAND^[[10*	Check the status of the 1, 9, 12 and 13 special escape requests.

If the operation was successful,  an ascii 1 will be sent to the host, else an ascii 0.

^[[]TEXT^[[11*	Place the string TEXT on the Windows clipboard.

^[[]FILENAME^[[12*	Start the program associated with the extension contained within FILENAME.

^[[]DIRECTORY^[[13*	Change the current working directory to DIRECTORY.

^[[80m	Change the font to the default 80 columns font.

^[[132m	Change the font to isi_132 (132 columns).

^[[7i	Turn on the locator controller mode.

^[[6i	If the locator controller mode has been selected, this will turn it off.

^[[=MMESSAGE^[[=S	Display MESSAGE in the StatusBar

^[[=mTITLE^[[=S	Set the NetTerm window title to TITLE.

^[[=K0	Clear all the QuickButton labels.

^[[=k0	Clear all the QuickButton transmitted key data values.

^[[=KnbDATA	Set the QuickButton labels.

^[[=knbDATA	Set the QuickButton transmitted key data values.

Where ^[ is the ESC character (0x1b), URL is any valid URL and COMMAND is any valid DOS or Windows program.  The maximum length of values MESSAGE and TITLE is 80 characters; URL, COMMAND, DIRECTORY, FILENAME and TEXT have a maximum length of 2047 characters.  When a full path and filename is specified, use the forward slash instead of the backward slash.  For example:

d:/user/files/myeditor.exe

The QuickButton escape sequences to set the label and transmitted key data values must be in the following format:

n	 The total number of label(s) or transmitted key data value(s) following (maximum of 9).

b 	 The button this entry pertains to (valid values are 1-9).

DATA	The value to set the label/data value to.

Note that DATA has a maximum length of nine characters and a required length of nine characters.  Trailing spaces must be used to make each DATA field nine characters long.  A maximum of nine buttons can be defined in BA-80 emulation,  eight buttons in all others.   The QuickButton definitions are not saved when NetTerm exits.

The ability to start/run programs on the local workstation can create serious security problems.  For this reason, a global flag controls whether NetTerm will honor a host request to start/run local programs.  The default is not to allow any host to start/run local programs.  If NetTerm detects such a request, a message will be displayed indicating a security violation.  In order to enable the ability to start/run programs, the option 'Allow Program Calls' must be enabled.  This option is located in the Options-Setup-Global Settings-General tab.

The 'Allow Program Calls' option does not apply to operations relating to the browser (URL) or to the editor (such as the transparent printing/netedit requests).

NetTerm has also implemented the Locator Input Model for ANSI Terminals (sixth revision).  This model defines a method to control a serial device located on a serial communication port, and the ability to control a pointing device such as a mouse.

The locator controller mode allows the host to communicate directly with the locator device without terminal intervention.  When locator controller mode is set,  all data received at the host port is transferred directly to the locator port without interpretation by NetTerm.  All data received from the locator device will be sent directly to the host.  The serial port for the locator device must be defined in the Options-Setup-Setup Locator Controller dialog panel.

In addition to support for the locator controller device, NetTerm has implemented the Locator Input Model as defined by DEC.  The Locator Input Model allows for maximum flexibility and control of mouse events from the host system.  Refer to the DEC specification for complete details and required escape sequences.


International Video/Keyboard Mapping

NetTerm maintains an internal mapping table for both the video and keyboard which allows defining what gets displayed/processed for  both.  The video table, composed of 256 entries, allows the mapping of incoming network data to match the language where the program is being run.  In general, mapping should only be used with an ANSI style font such as Courier New and isi_ansi.  The Options-Setup-International-Video Mapping dialog panel allows each unique incoming network data character (above the decimal value of 31)  to be mapped to another value.  Values below the decimal value of 31 can be changed, but only by manually editing the mapping table (see below).

The keyboard mapping option allows for mapping the 'normal' keys to match the language where the program is being run.  These keys are the ones that cannot be mapped in the keyboard definition dialog panel.  Mapping is done based upon the keyboard scan code.  To determine the scan code for a key, use the 'Show Scan Codes' option.

In addition, you can also use a character based keyboard mapping method which allows you to map any of the 256 possible outgoing characters to any other character.  This method required manual editing of the mapping table.

The first step in Video/Keyboard mapping is to copy the model country.ini file (located in the NetTerm directory) to another file prefixed with the desired country name, such as norway.ini.  Then define this mapping file to one of your hosts and use the Options-Setup-International menu items to map both the video and keyboard sections.  The example sample file, norway.ini, contains the following mappings:

Video	Keyboard Normal	Keyboard Shifted

0x7b · 0xe6	0x1a · 0x7d	0x1a · 0x5d

0x7c · 0xf8	0x27 · 0x7c	0x27 · 0x5c

0x7d · 0xe5	0x28 · 0x7b	0x28 · 0x5b

0x5b · 0xc6

0x5c · 0xd8	Note that the keyboard mapping uses the

0x5d · 0xc5	unique Windows key scan code.

The Options-Setup-International menu also has a global flag that will enable/disable mapping for all hosts.

In addition to these mapping methods, NetTerm also supports the National replacement character sets (NRCs).  To use an NRC set, you must select this mode with the selecting character sets (SCS Sequences) escape sequence to designate the set, then map the designated set into the in-use table.  Refer to the DEC specification for complete details and required escape sequences.


Special netterm.ini entries

The netterm.ini file contains several special entries, referred to as keywords, that also controls the behavior of NetTerm.  These keywords must be set/reset by editing the netterm.ini file which is normally located in the Windows directory.  Note that the complete behavior of NetTerm is controlled by the netterm.ini file, so you should always create a backup copy of this file prior to any manual edit.  Before editing the netterm.ini file, end all instances of NetTerm.  Keywords that are not documented should not be changed.  If a keyword is not present or has spaces for the value, the resulting state will be the NetTerm internal default.

MAXINSTANCE=x	Where x is the maximum number of NetTerm sessions.

PROTECT=x	Where x = 1 turns on the menu protection logic, 0 turns it off

PROTECTFILE=x	Where x is the complete path to the protect.ini file.

LANGUAGE=x	Where x is the desired language (see netterm.ini for values).

READONLYINI=x	Where x = 1 prevents any updates to the netterm.ini file by NetTerm.

NOBLINK=x	Where x = 1 prevents blinking characters.

CONTROLS=x	Where x = 8 forces processing of 8 bit C1 control codes.

ZMODEMSHELL=x	Where x = 1 tells NetTerm not to start a zmodem file transfer, if requested.

WINSOCK=x	Where x = the full pathname to an alternate custom winsock.dll.

NOACTIVITYTIMER=x	NetTerm will exit if no input/output has been received in x seconds.

PROTECTPHONEBOOK=x	Where x = 1 will prevent major changes to the phone book.

LOGOONDISCONNECT=x	Where x = 1 will display the logo on disconnect.

LOGO=x	Where x is the complete path to the logo to be displayed.


FTP Server

NetTerm provides support for both a user-defined FTP server and its own FTP server, NetFtpd.  The included server provides the most common features of an FTP server, but in some cases, a  special purpose server may be desired.  By default, NetTerm uses its own server when the File Transfer icon is pressed.  If a special purpose server is desired, it can be specified within the Options, Setup, Define FTP Server menu or by editing the NETTERM.INI file and setting the keyword ftpserver=  to the full path of the desired program.

When the File Transfer icon is pressed, the FTP server will be started.  If the File Transfer icon is pressed again, the server will be stopped.  Once the server is started, the status bar will be updated to include a blue colored ball indicating the willingness of the server to accept external connect requests.  Once the server is stopped, the ball will be removed.  Two features are provided within NetTerm to allow easier use of the server program while you are logged onto a UNIX host system.  Within the Options, Tools menu is an item labeled "This host".  When this option is selected, the current IP address and host name of the local system will be displayed.  This feature is primarily useful for those who have a dynamic IP address assigned by the host system.  The second feature, located within the Edit menu, will paste the command "ftp xxx.xxx.xxx.xxx' at the current cursor position within the NetTerm window.  The xxx.xxx.xxx.xxx will be replaced by the current IP address.  This allows for fast ftp requests to your local system.

The data transfer speed of data sent from your machine to another machine is very dependent upon buffer size and the type of network you are attached to.  Within the Options-Define FTP Server access dialog panel is an item that contols the buffer size for all file sends from the local machine.  If you are directly attached to a LAN or other high-speed network connection, set this value to 32000 (the maximum).  If you are attached to the modem-based dial-up network, set this value to 966 (the default).  This values specifies the maximum amount of data that will be sent to the Winsock.dll per call.  For optimum performance with your system, you should try various values for this parameter.

Currently, NetFtpd supports user directory access, general access control, and provides the ability to require and process user passwords.  The passwords are encrypted and stored within a file of your choice, but you should be aware that the encryption process is a very simple one.  If you are concerned about the privacy of these passwords, you should take additional steps to prevent this file from being accessed.

General access is controlled by the Options-Define FTP Server Access item.  When selected, a dialog panel will appear, allowing you to define the current access level for all connect requests.  By default, the FTP server has unrestricted access, including the anonymous user request.  The following access rights are supported:

No Access

Accept anyone who calls

Requires a userid and password

Allow anonymous access

The 'No Access' option will prevent the starting and operation of the FTP server by anyone.  If you do not desire to accept any FTP requests to your system, then select this option.  The 'Accept anyone who calls' options allows anyone to connect to your machine with a valid userid.  The 'Requires a userid and password' option will only allow selected userid's to access your machine.  In addition, a valid password must be entered in order to gain access.  The 'Allow anonymous access' option is like the 'Accept anyone who calls' option, but the userid anonymous can be used and an e-mail address will be accepted as the password.  This dialog panel also contains the location of the userid/password file and should be specified if you desire to restrict access by userid and password.  The full path and filename must be provided.

When the option 'Requires a userid and password' is selected, then you must create a file which will contain a list of userid's and passwords.  This is done by using the Options-Setup FTP Server Passwords option.  The location of this file must have been defined when you select the 'Requires a userid and password' option.  The file consists of one line for each user, containing both the userid and an encrypted password.  Both the userid and password is limited to eight characters in length.

User access control allows you to define both the read and write directories that a user, including the anonymous user,  has access to on your system.  The read access allows directory listings, viewing, and downloading of files contained within the read directory and all directories below the read directory.  The write access directory allows writing and deleting of files within the write directory and all directories below the write directory.  The write directory must be a directory below, or the same as, the read directory.  The default for both the read and write user directory is the NetTerm download directory.  The NetFtpd Option-Setup User Directories provides the facility to define the user read/write directories.  Note that once a user has been added with this facility, the only way to remove that user is to manually edit the netterm.ini file and delete the user from the [FTP-Users] section.

All FTP server transactions are recorded in the file 'ftpd.txt' located within the directory specified by the 'Log File' keyword within the netterm.ini file.  The default location is c:\temp.  The file will contain detailed information about each connection request such as date/time, userid, and commands processed.  Each connection request is appended to this file so it can be maintained for future reference.


File Transfer Considerations

NetTerm currently supports the ASCII, Xmodem, Kermit, Zmodem file, and FTP file transfer types.

The ASCII transfer is not really a file transfer protocol.  It simply provides a method of transferring data with hosts that cannot support the normal file transfer protocols.  The Send ASCII option requires the host to be in a state in which it is ready to receive a continuous flow of data.  Normally this would be used within an editor or mail program at the point that data is expected to be input in a continuous flow from the keyboard.  Selecting the Send ASCII option will request a file name, open the local file, and send the contents to the host.  When the entire file has been sent, it will close the local file and terminate the file transfer request.  The Receive ASCII option also requires some type of host action, such as typing the contents of a file with the UNIX cat command.  When this option is selected, it will request the name of the local file, open it and then will capture all data sent from the host.  It will continue to capture data until the option is selected again.  At that point, the local file will be closed and the file transfer will terminate.  Any time the Receive ASCII option is active, a check mark will appear to the left of the Receive ASCII menu item.  Both the Send and Receive ASCII requests will honor the CRLF file transfer option within the Options-Setup-Set File Transfer Options dialog box.

The Zmodem protocol is by far the fastest file transfer protocol available.  Numerous options are available, selected from the menu Options-Setup-Set File Transfer Options dialog panel.  When sending files to a remote host, NetTerm honors the following file management options:

ZMNEWL	Transfer file if destination file is absent, else overwrite if source is newer or longer.

ZMAPND	Append local file to the contents of the destination file.

ZMCLOB	Replace the destination file, even if it exists.

ZMDIFF  	Transfer file if destination file is absent, otherwise replace if different length or date.

ZMPROT	Transfer file only if it does not exist on the host.

ZMNEW	Transfer file if destination file is absent.  If present, overwrite if source is newer.

NetTerm also supports 'crash recovery' with Zmodem.  This simply means that if an error occurred while transferring a file, any subsequent transfers of the same file will proceed where the error occurred.  This is extremely useful for long file transfers interrupted by loss of carrier or other errors.  The option 'Do not buffer on send' should only be checked if you are having problems sending data to a host.  NetTerm normally buffers all outgoing data to achieve maximum transfer rates.  On some hosts, buffering forces an overrun condition;  this option should be used for these types of hosts.

ASCII Zmodem downloads are also supported (using the sz -a option on the host).  If NetTerm receives a download request which specifies the ZCNL option (convert received end of line to DOS end of line), all new line characters are preceded with a carriage return prior to writing to the local file.  The ZCNL option is sent by the host when you request sz with the -a option.  Please use this option with care: if the host file already contains normal DOS end of line characters, you will end up with a file that contains an extra carriage return.  Also, since the host file was expanded in size (by the addition of the carriage return for each line), crash recovery will not work properly!

If the Zmodem option sz -f is used for downloads, the full path name must exist on the local machine.  For example, if the command sz -f ~/work/file.c was issued at the UNIX host, it would be expanded by the UNIX host to its full path name.  This could be something like /u/z/zkrr01/work/file.c on the UNIX system.  On the local machine, the path /u/z/zkrr01/work must already exist or the transfer request will fail.  Use this option with extreme care.

The 'block before write' option can be selected if overruns occur on file download.  For SLIP/PPP and local Ethernet connections, this options has no meaning, since flow control is under the control of the TCP/IP protocol.  For other types of modem transfers, it will correct most overflow conditions.

Under most conditions, the Zmodem options should be no window, overwrite existing file always (zmclob).


General

With the rapid advances in encryption technology, InterSoft International, Inc. recommends the use of third-party-secure socket solutions which can be used by all network clients on the workstation.  While there are several on the market, we have found the SSR and SSR-SSL product from Medcom to be easy to set up and use.  Secure Socket Relay (SSR) encrypts data traffic between clients and servers and will work with all TCP-protocols with a static port such as http, Telnet, Sybase, SQL Server, and Oracle.  It works well under Windows 95 and NT 4.0 and the newer version (SSR-SSL) supports the SSL encryption technology.  Complete details can be found at the http://www.medcom.se site.


S/Key

NetTerm supports  Bellcore's S/Key and  OPIE if the Windows file winkey.exe (written by David Aylesworth) is present on your system.   This file can be found on the Internet at ftp://ftp.bellcore.com/pub/nmh and several other major sites.  The file must be in the Windows directory, or any directory within the DOS path.  When a challenge is presented, simply right click on the line that contains the challenge and select the 'Compute S/Key or OPE Response' from the popup menu.  NetTerm will then start winkey.exe and place the challenge on the clipboard for winkey processing.  Once the response has been calculated and winkey has been closed, NetTerm will then read the contents of the clipboard and paste the response at the current cursor position.  The winkey options "Auto Paste Challenge" and "Auto Copy Response" must be selected for proper operation.  Refer to the documentation of winkey for available options and proper operation.


Public Access Support

Many times NetTerm is used in areas or situations where some of the menu, toolbar and right mouse items are not needed or wanted.  In order to support this, NetTerm looks for a special keyword within the netterm.ini file called "PROTECT".  If this keyword is set to any value other than zero, it then looks for the keyword "PROTECTFILE".  If this keyword is set to a valid Windows drive:pathname\protect.ini file, it will process that file upon startup.  The protect.ini file has three major areas; toolbar, menu, and right mouse menu protection.  To disable an icon, menu item or right mouse menu item, simply change the value from ON to OFF.  If you turn off a high level menu item, it is not necessary to turn off its lower level menu items.  If the entire toolbar is to be turned off, it is best to use the option to remove the toolbar in the Options-Setup-Global Settings dialog panel.  A sample protect.ini file is included within the NetTerm directory with all items set to the ON state.


Overview

Script files can automate some tedious tasks such as logging into a system.  A script file is an ASCII text file and may be entered or edited using any standard text editor.  The script file is read line by line.  Empty lines (consisting of white space only) are ignored.  Comments are lines whose first non-space character is a pound sign (#).  The script processor reads each script line, ignoring leading white space, into "words".  A word is defined as either:

A sequence of characters delimited by white space; or

A sequence of characters enclosed in single or double quotes.

The first word of a script file is considered the "command word."  If the last character of the command word is a colon (:), the line is considered to be a LABEL (the object of a GOTO statement).  Otherwise, it is assumed to be a script command and is interpreted as such.  Command words are case insensitive.  Some commands take one or more arguments.  Each argument is parsed as a single word as defined above.  If blanks are required in an argument, the argument MUST be quoted using single or double quotes.  Scripts can be called from the Options menu or from the phone book.

When a string is required for a parameter, all characters up until the end of the command line are processed as the string.  Strings conform to the following format.

A quote character (") means that all characters are to be taken as is without any special meaning until a corresponding closing quote (") has been found.  The string is not permitted to extend over more than one line.

If a caret "^" is found, it denotes that the character following has a special meaning.  Here is a list of the most common special character meanings.

^H	Place a backspace character into the string (control character 8).

^A	Place the port number that the SLIP driver is using into the string.

^L	Place a form feed character into the string (control character 12).

^I	Place the current IP address into the string.

^J	Place a line feed character into the string (control character 10).

^M	Place a carriage return character into the string (control character 13).

^P	Place the password into the string.

^S	Place the modem baud rate into the string.

^U	Place the username (userid) into the string.

^W	Place the domain name (NT Domain name) into the string

^T	Place the command line argument host name (-t) option into the string.

^V	Place the host's script file name into the string (see the section on firewalls).


Script Syntax

ABORT

Terminate the script file prior to the end of the script file.  This will also disconnect the connection, if connected.  To exit a script without disconnecting, use the GOTO command, combined with a label placed at the end of the script.

ADDRESS <timeout>

Scan the current line for an IP address.  This command is useful for those Internet Providers which provide dynamic Internet IP addresses for the caller.  An IP address has the format of 999.999.999.999 where '9' represents a numeric value.  If a valid address is found,  it will be placed in a variable which can be accessed by the script.

BREAK <time>

The BREAK command will send a break signal to the modem for a time period of "time" milliseconds.  If time is not given, it will default to five milliseconds.  The optional time value cannot exceed 32767 milliseconds.

COUNT <number>

The COUNT command will load the value "number' in a variable named count.  It will be diminished by one each time it is tested with the IF command.  This value can be used to control the number of times a loop is executed.

DOMAINNAME [<prompt>]

The domainname keyword will stop the script and request your NT domain name within a dialog box.  If the optional "prompt" is given, it will be placed in the title line of the dialog box.  The supplied domain name can then be used in an OUTPUT command to send it to the host computer using the ^W variable.  If a carriage return is also required by the host, follow the OUTPUT password command with a OUTPUT with "^M" as the argument.  The script will continue execution when the domain name has been entered.  If the keyword DOMAINNAME=1 is present in the netterm.ini file, NetTerm will try to obtain the NT environmental variable USERDOMAIN and use that value.

ECHO ON|OFF

The ECHO command specifies whether or not characters received from the modem will be displayed on the local terminal.  Since the only time that the script processor looks at the receive queue is during EXPECT processing, the displays may look a bit erratic.  Use the ECHO OFF command to disable local display of received characters during script processing.

EXEC programname

The EXEC command will start the program specified by 'programname'.  Note that if the program is not within the normal Windows/DOS path, the full path must be provided as a part of the name.  For example:

exec \trumpet\tcpman.exe

will start the program tcpman.exe which is located in the \trumpet directory.  Once NetTerm starts the program, the script will continue to the next statement.

EXPECT  timeout arg1 <arg2> <arg3> <arg4> <arg5>

Wait for the specified text string to appear from the host.  The text argument should be quoted (using single or double quotes) if there are spaces in the text string.  Special characters are interpreted the same as for OUTPUT.  The time out argument  specifies the maximum number of seconds to wait for the string to appear.  During EXPECT processing, characters received (up to and including the last character found in the text or in the time out) can be displayed to the screen (if TTY ON was specified).   The four optional arguments specify alternative strings that may be received in lieu of the primary argument arg1.  If any one of the arguments are received, the EXPECT statement will set the result TRUE with a value of the argument received.  For example, if argument 2 is received prior to argument 1 or argument 3, the EXPECT result will be set to 2.  The IF EXPECT statement can then be used to check which argument was received.  For example, if it is possible to receive the values of "login:", "Expired Password," and "Enter Application Desired", then these three strings should be included in the EXPECT statement.  If any one of the three are received, then the EXPECT statement will be set to TRUE with the positional argument received.  This will allow for IF EXPECT testing to determine which argument was received.  For example:

EXPECT 30 "login:" "Expired Password" "Enter Application Desired"

IF !EXPECT

GOTO ERROR

ENDIF

IF EXPECT 2

GOTO GETNEWPASS

ENDIF

IF EXPECT 3

GOTO APPLICATION

ENDIF

GOTO label

Go to the specified label in the script file and continue execution from that point.  The label may either precede or follow the actual GOTO statement.

IF <condition>

<statements>

 ELSE

<statements>

ENDIf

Conditionally execute statements based on specified condition.  NetTerm supports the following conditions:

COUNT              TRUE if count is greater than zero.  (See the count command.)

EXPECT	See expect command.

Conditions may be negated using the prefix NOT or the character "!":

!EXPECT	See expect command.

NOT EXPECT	Same as !EXPECT above.

The ELSE and ENDIF keywords must appear on their own lines.  IF statements may not be nested.

HANGUP

The HANGUP command will terminate the current connection, including hanging up the phone if it is offhook.

MENU menu-number

The MENU command allows the selection of a NetTerm menu item.  This allows a script to perform all operations that   can normally be done by manual menu item selection.  The current list of menu-number values can be found in the NetTerm-Help-FAQ section.  For example, if the Print Screen menu item has a value of 10005, then the script command of menu 10005 will inform NetTerm to print the current screen.

ONLINE

Transfer control from NetTerm.  This command is normally used when a program such as tcpman.exe is started with the 'exec' scrip command with a show value of 2.  NetTerm will place itself into an iconic state and will monitor the status of the started program (referred to as task).  When the task terminates, NetTerm will activate itself.  Any communication port opened by NetTerm prior to starting the task will be closed but the modem connection will remain open.  The communication port will be opened again when NetTerm activates itself upon termination of the task.

OUTPUT  [<text>]

Transmit the specified text to the remote.  The text argument should be quoted (using single or double quotes) if there are spaces to be transmitted.  The text is transmitted AS IS (no case conversions are performed).

^   Control character prefix - The next character is made into a control character.

\   Quote prefix - The next character is transmitted verbatim.

The control character prefix ^M would transmit a carriage return and a ^J would transmit a return line.  The quote prefix \^  would transmit the character  ^.

The ^P  variable will transmit the last password obtained from the PASSWORD command word .

If there is no text specified (no data or ""), NetTerm will display a dialog box requesting the data to be sent.  If a carriage return is also required for the input data, follow the OUTPUT with another OUTPUT with "^M" as the argument.

PASSWORD  [<prompt>]

The password keyword will stop the script and request your password within a dialog box.  If the optional "prompt" is given, it will be placed in the title line of the dialog box.  The supplied password can then be used in an OUTPUT command to send it to the host computer using the ^P variable.  If a carriage return is also required by the host, follow the OUTPUT password command with an OUTPUT with "^M" as the argument.  The script will continue execution when the password has been entered.

QUIT

Terminate the script and the NetTerm program.

REDIAL

Dial the last number dialed.

SAVE <variable> [<ini section> [<ini file>]]

The save command will place the keyword-value "variable" within the "ini section" of the specified "ini file".  If the "ini section" is not given, it will default to default vars.  If the "ini file" is not given, it will default to trumpwsk.ini.  The following are examples of this command.

save "slip-enabled=1" "Trumpet Winsock" "\windows\trumpwsk.ini"

save "netmask=255.255.255.0" "Trumpet Winsock" "\windows\trumpwsk.ini"

SET <parameter> <value>

Sets the specified parameter to the specified value.  The following are supported:

SET NETWORK MODEM

SET NETWORK TCPIP

SET KEYBOARD XXXXXX

SET EMULATION XXXXXX

SET MODEM PARITY X         (E=Even, O=Odd, N=None, M=Mark, S=Space)

SET MODEM WORD X           (x = 5, 6, 7 or  8)

SET MODEM STOP X             (x = 1.0, or 2.0)

SET MODEM BAUD XXXX     (Any valid rate such as 1200, 2400, 4800, 9600, etc)

SET LOGGING OFF

SET LOGGING fn

The 'LOGGING' command will turn on/off session logging.  When turning session logging on, the full path and name of the log file (fn) must be provided.  If NetTerm determines that the file exists, it will append the session data to this file, otherwise it will create a new file.

Refer to the phone book documentation for a description of what xxxxxx can be for keyboard and emulation.

SLEEP <time>

Suspend execution of the script for the specified number of seconds.  This is usually used for timing considerations; for example, waiting a couple of seconds after receiving the CONNECT message and typing ^C to CompuServe.

SHOW <value>

The SHOW command is used in conjunction with the EXEC command for starting programs.  The optional value determines what state the program should be started in.  Valid values are:

0 = Show task window normal.

1 = Place the task in an iconic state.

2 = Show task window in an iconic state and monitor task status for termination.

STATUSLINE <text>

The STATUSLINE command will display the provided text on the NetTerm StatusBar.

TRACE ON|OFF

If the argument to the TRACE command is ON, all subsequent command lines that are processed will be displayed on the local screen.  The exception to this is lines containing an OUTPUT command.  These lines will just print "OUTPUT ...", so that passwords, etc., can be protected.  If the argument to the TRACE command is OFF, scripts will execute quietly (this is the default setting).

TRANSFER filename

Transfer control to the script file specified by file name.  The argument should be quoted and must contain the complete path and name of the new script file.  The forward slash should be used to separate path names.  If the control variable ^V is specified, then the current host's script file will be used as the file name.  Refer to the section on firewalls for more information on the use of this special control sequence.  Example names would be:

"c:/user/scripts/firewall.txt"

"^V"

USERNAME [<prompt>]

The username keyword will stop the script and request your userid within a dialog box.  If the optional "prompt" is given, it will be placed in the title line of the dialog box.  The supplied userid can then be used in an OUTPUT command to send it to the host computer using the ^U variable.  If a carriage return is also required by the host, follow the OUTPUT password command with a OUTPUT with "^M" as the argument.  The script will continue execution when the userid has been entered.  If the keyword USERNAME=1 is present in the netterm.ini file, NetTerm will try to obtain the NT environmental variable USERNAME and use that value.

ZMODEMSEND filename

The ZMODEMSEND command allows files to be sent to the host using the Zmodem protocol.  If more than one file is to be sent, the file name should be quoted and one space placed between each file name.  If a directory path is included in the file name, the forward slash should be used.  For example:

zmodemsend /temp/myfile.txt

zmodemsend "/temp/myfile.1 /temp/myfile.2"


Example Dialup Script

# Script to Login to Internet Provider (Dialup Slip Account)

count 5

loop:

    if !count

        hangup

        display "^M^JAborting Script, Maximum count exceeded^M^J"

        abort

    endif

    expect 10 "login:"

    if !expect

        hangup

        redial

        goto loop

    endif

output "myuserid^M"

expect 15 "Password:"

output "mypassword^M"

expect 15 "(unknown)"

output "^M"

expect 15 "$"

sleep 1

output "dslip^M"

expect 10 "Your ip address is "

if !expect

    display Aborting... Could not get IP Address

    abort

endif

address

save "ip=^I"                      "Trumpet Winsock" c:\trumpet\trumpwsk.ini

save "slip-port=^A"               "Trumpet Winsock" c:\trumpet\trumpwsk.ini

save "slip-baudrate=^S"           "Trumpet Winsock" c:\trumpet\trumpwsk.ini

save "netmask=0.0.0.0"            "Trumpet Winsock" c:\trumpet\trumpwsk.ini

save "gateway=0.0.0.0"            "Trumpet Winsock" c:\trumpet\trumpwsk.ini

save "dns=198.64.6.1 198.64.6.7"  "Trumpet Winsock" c:\trumpet\trumpwsk.ini

save "domain=neosoft.com"         "Trumpet Winsock" c:\trumpet\trumpwsk.ini

save "slip-enabled=1"             "Trumpet Winsock" c:\trumpet\trumpwsk.ini

save "slip-handshake=1"           "Trumpet Winsock" c:\trumpet\trumpwsk.ini

save "slip-compressed=1"          "Trumpet Winsock" c:\trumpet\trumpwsk.ini

save "ppp-enabled=0"              "Trumpet Winsock" c:\trumpet\trumpwsk.ini

save "mtu=1500"                   "Trumpet Winsock" c:\trumpet\trumpwsk.ini

save "rwin=6000"                  "Trumpet Winsock" c:\trumpet\trumpwsk.ini

save "mss=1460"                   "Trumpet Winsock" c:\trumpet\trumpwsk.ini

display "^J^MStarting tcpman.exe^J^M"

show 2

exec c:\trumpet\tcpman.exe

online


Example Ethernet Script

expect 10 "login:"

output "myuserid^M"

expect 10 "Password:"

password "Enter Password"

output "^P^M"


Example Firewall Scripts

expect 10 "Username:"

output "myuserid^M"

expect 10 "Password:"

password "Enter Password"

output "^P^M"

expect 10 "tn-gw>"

output "c ^T^M"

Enhanced Firewall Script

expect 10 "Username:"

output "myuserid^M"

expect 10 "Password:"

password "Enter Password"

output "^P^M"

expect 10 "tn-gw>"

output "c ^T^M"

transfer "^V"

Enhanced Firewall Script for Wingate

# Example Script for Windows 95 WinGate gateway

expect 10 "WinGate>"

output "^T^J"

transfer "^V"


Glossary of Terms

FTP

FTP server

Hayes

Modem

PIN

RGB

ZMODEM


FTP

File Transfer Protocol - A method of transferring files over the Internet.


FTP server

The server program for the FTP file transfer protocol.  In a client/server environment, there must be at least one client (FTP) and one server (ftpserve).  A server can handle multiple clients.


Hayes

A common term used to refer to modem command standards.


Modem

A modem provides another protocol in data communications.  Modems connect to one another using a pre-defined electrical protocol, usually over dial-up phone lines.  A modem connects to your PC via an RS-232 connection.


PIN

Personal Identification Number - Many corporate dial-up systems require a PIN as a part of the dial sequence.  If a PIN  is selected, it will be stored in the NETTERM.INI file in an encrypted format.


RGB

A Windows term meaning red, green, and blue.  It is commonly used to refer to a method of specifying a screen color in terms of the amount of red, green, and blue that is to be used to define a specific color.


ZMODEM

The most common file transfer protocol on a RS-232 dial up line.  The ZMODEM protocol provides reliable file and command transfers with complete data integrity between application programs.