home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
OS/2 Shareware BBS: 2 BBS
/
02-BBS.zip
/
teldr110.lzh
/
teldor.doc
< prev
next >
Wrap
Text File
|
1996-10-01
|
23KB
|
461 lines
Documentation for Telnet Door version 1.10, the universal interface between an
OS/2 BBS and the Internet.
INDEX
(1.0.0) Introduction
(2.0.0) Legal Statement (this is commercial software)
(2.1.0) Disclaimer
(2.2.0) Trial Usage Conditions
(2.3.0) My Committment to Future support
(3.0.0) System requirements
(4.0.0) Usage of Telnet Door
(4.1.0) Help Screen
(4.2.0) Command Line Parameters and Environment Variables
(4.2.1) Specifying the Target Address
(4.2.2) Using a Door Configuration File
(4.2.3) Passing a Hot File Handle
(4.2.4) Opening a Serial Port Without a Hot File Handle
(4.2.5) Limiting User's Online Time
(4.2.6) Log Files
(4.2.7) Hostname resolution timeout
(4.2.8) Options
(5.0.0) Development of Telnet Door
(5.1.0) Test System
(5.2.0) Compiler used
(6.0.0) Environment considerations - how to get best performance
(7.0.0) Error Levels
(8.0.0) Applying your registration key
(9.0.0) Registering:
(1.0.0) Introduction
Telnet Door is a program that I initially wrote because I wanted to connect
my BBS to the Internet via a UNIX system. I wrote this door to enable users
of my system to login to my UNIX system via OS/2s TCP/IP networking, and from
access the Internet from there (once I got a connection). I soon realised that
many other sysops want to do the same thing, so I decided to release this as
shareware. Now I am starting work on commercial projects based on this code.
(2.0.0) Legal Statement (this is commercial software)
If you wish to use this program for more than 30 days from the date you
received it you must register it (see the file TELDOR.REG for details).
Users who register this software will receive free updates to fix bugs. Also
small new features will be free, however for major new features I may at some
future time request an upgrade fee.
(2.1.0) Disclaimer
This product is not guaranteed to do anything other than consume space on
your hard drive. If by any failure to operate or through operation in an
unexpected fashion it causes you to suffer data, monetary, or other losses then
I will not be held responsible. However if a bug is reported to me I will do
my best to fix it so that the problem does not happen again.
Your agreement to this disclaimer and the other legal conditions I impose
are a condition for running any program that forms part of this product.
(2.2.0) Trial Usage Conditions
You may use this program for 30 days before registering it. During that
time you will be limited to either running no more than 2 copies of Telnet Door
concurrantly with a maximum time limit of 45 minutes, or to running 16 copies
with a maximum time limit of 10 minutes for each login. If you wish to use
the 16 lines with 10 minutes option for the unregistered version of Telnet
Door then you must use the command line option of "UNREGMODE=2".
After you have exceeded your trial usage period Telnet Door will display
reminder messages to inform you (and the users of your BBS) that it is time
to register.
(2.3.0) My Committment to Future support
I intend to support this product as long as it is being used. I have plans
to implement many new features. Those new features which are minor
enhancements to the current product will be free to all registered users, and
the same applies with bug fixes. All major new features will require payment
of upgrade fees.
(3.0.0) System requirements
This program requires at least OS/2 version 2.0 running IBM's TCP/IP
networking software version 2.0 (I believe that my program is compatible with
FTP software's TCP/IP for OS/2, but I haven't been able to test it). OS/2 Warp
with it's built-in TCP/IP system is just as good for running this program.
Requirements for RAM and hard drive space are so small that it won't make an
impact on the typical BBS system.
(4.0.0) Usage of Telnet Door
(4.1.0) Help Screen
Here's the help screen which is displayed when you give it incorrect command
line parameters, no command line arguements or run it with the "?" parameter:
------------------------------------------------------------------------------
Registered to Russell Coker of Multi BBS for 16 nodes.
Serial number:1.
Usage: teldor [ OPTIONS ] A=host address
hostname is in dotted decimal or *domain name* convention
Options: h=file handle file handle of open serial port passed from
external program
c=com port device name for serial port
fd=door config file full file and path name for DORINFO1.DEF file
t=mins time in minutes that the user may be logged in
d=filename debugging file name
l=filename logging file name
o=options misc on/off options, see manual
If multiple hostnames are entered then a menu will be displayed.
Telnet Door VX.XX, copyright 1995 Russell Coker.
------------------------------------------------------------------------------
(4.2.0) Command Line Parameters and Environment Variables
All command line parameters have the form TOKEN=VALUE, all environment
variables have the form "TELDOR."TOKEN=VALUE where TOKEN is the name of some
data type that Telet Door may require, EG the token "H" is used for a hot file
handle and the value it requires must be a number. So the command line
parameter "H=3" could be used with the same affect as the environment variable
"TELDOR.H=3".
If a command line parameter is used for the same token as an environment
variable then the environment variable is ignored.
Further sections of this document will only refer to "parameters" with the
"H=3" form, the environment variable form of all these works.
(4.2.1) Specifying the Target Address
The way to specify the target address of the telnet connection is via the
"A" token. For example the commands "teldor A=202.12.87.129" and
"teldor A=snoopy.virtual.net.au" will both connect to my UNIX system. Addresses
can be specified by either machine names or IP addresses. If the given address
is an IP address then the program will attempt to find it's name to display to
the user for cosmetic reasons.
If you wish to connect to the host system using a port other than port 23
or a service other than the LOGIN service then this program allows you to
specify a different port or service. Ports are numbered from 0 to 32767 and
services are named using the text names. The way to tell Telnet Door that you
wish to use a particular port or service is to append it to the host name with
a "+" character. EG to connect to my UNIX system via the FINGER protocol (port
79) you could use either "teldor A=202.12.87.129+finger" or
"teldor A=202.12.87.129+79".
NB These examples all use the internet address of my UNIX box. If you
actually use this address you should be able to connnect to that system.
However I don't currently have a guest account set up (so you won't be able
to log in).
(4.2.2) Using a Door Configuration File
The "FD" token specifies the fully qualified path name of a DORINFO1.DEF
file which contains all necessary information on the user. The 'F' stands for
the file name of a settings file, and the 'D' stands for DORINFO1.DEF format.
The "FS" token specifies the fully qualified path name of a DOOR.SYS file which
contains the same information. These tokens are mutually exclusive.
In future I will support other formats on demand.
The "COMx" line in the door file is taken to contain the number of the open
OS/2 file handle for the serial port. So "COM3" does not mean serial port 3
it means file handle 3 which points to a serial port. If you don't understand
this then read the documentation for Maximus or BinkleyTerm. I don't agree
with that feature being used in that way, but I know 99% of you have BBSs set
up like that. The preferred way of passing an open serial port handle is via
the "H=x" command line parameter which overrides the parameter in the door
file (all command line parameters take precedence over door file parameters).
The graphics option in the door file is taken to indicate whether the
connection should operate in binary mode. If the BBS user doesn't support
graphics then binary data will not be transmitted to their terminal. This
means that Zmodem transfers over Telnet Door probably won't work.
(4.2.3) Passing a Hot File Handle
Telnet Door operates best when provided with a "Hot" file handle for a
serial port. This is when an external program (such as Maximus or
Binkleyterm) has opened the serial port and tells Telnet Door which numbered
file handle it should use. The number of the file handle bears no great
resemblance to the number of the serial port. On my system BinkleyTerm has
always given a handle number of 3 for every line (serial ports 1 to 16),
however I can't count on it continuing to use the same number (so I haven't
hard-coded the number 3 in my REXX programs). If you are running Telnet Door
from Bink or Max then you should use whatever number that program gives you.
To pass a hot file handle you use the "H" token. EG "H=3" on the command
line will tell it to use file handle 3.
(4.2.4) Opening a Serial Port Without a Hot File Handle
If you want Telnet Door to open the serial port (EG when called from a DOS
BBS) then use the option "C=COMn" where 'n' is the number of the serial port
to use. This option will cause Telnet Door to open the serial port and
initialise it before doing anything else.
NB You generally should not call it that way from an OS/2 BBS package. The
preferred way is via the "H=handle" parameter.
(4.2.5) Limiting User's Online Time
This program will exit if a user tries to stay online longer than they are
allowed. It does not hang up on them, it merely tells them that their time
is up and exits. This allows the BBS software to decide exactly what to do
when someone stays online too long. The amount of time in minutes that they
are allowed is taken from the command line via the "T=x" parameter, or from
the door file if it's not specified on the command line (NB the doorfile is
strictly optional, if you don't specify a time limit on the command line and
the doorfile isn't being used then they are allowed to stay online forever).
The user is given a warning 5 minutes before their time is due to expire to
give them time to save files etc.
(4.2.6) Log Files
The parameters "D=" and "L=" are for specifying the debugging and logging
file names respectively. The logging file will store all data sent to the
user on disk and may be useful to a sysop. The debugging file will only store
information on the state of my program. The intended usage of the debugging
file is for you to send it to me if you encounter a bug in my program, however
if you feel curious then feel free to try and decipher it.
(4.2.7) Hostname resolution timeout.
I have added support for changing the timeout for looking up host names
using the Domain Name System. By default TelDor will spend 8 seconds looking
up a host name, but using the "DNS=" parameter you can tell it to spend as
long as you like looking up the host name. If your name server is on the wrong
end of a slow SLIP link then 8 seconds probably won't be long enough. This
parameter accepts values between 0 and 65 seconds.
If given a value of 0 it disables the DNS timeout which means that when the
target address is a numeric address then a host name will not be resolved for
it (TelDor will just connect to the numeric address). If the taget address is
a host name it will wait as long as it takes for the name to be resolved.
(4.2.8) Options
The "O=" command line parameter is used for specifying options to change the
operation of Telnet Door. It can be used in the following ways:
"O=C" will turn the local console off. This is useful for BBS sysops who
don't want to see what the user is doing. It turns off all local display and
keyboard input. This will greatly reduce the amount of CPU time used by the
program.
"O=7" will turn off binary mode. This is necessary if you wish to login to
an OS/2 system and not have the screen garbled. In general this option
disables binary mode because some host systems make such feeble attempts at
supporting it.
"O=8" will force my program to pass binary data in both directions when not
in binary mode! It should never be necessary to use this feature, but I expect
that there are some telnet servers out there that are buggy and require this.
"O=L" will tell Telnet Door to consider the serial port a "Lame" port. This
is useful when using something other than a standard serial port (eg a named
pipe over a network, a serial port that has a badly written device driver, or
some other interface that acts like a serial port but doesn't have the full
capabilities). It tells TelDor to not try changing serial port settings. If
Telnet Door doesn't run and you are using non-standard serial drivers then try
using this option.
If you wish to have all data displayed locally except for BEL characters
then the setting O=Q (for quiet) will cause all beeps to be filtered out from
local display (they will still be sent to the remote user however). This
option will also enable filtering of some VT100 control sequences which get
interpreted badly by the ANSI parser in OS/2 Warp 3.0.
You use multiple options in the following way "O=7C" to turn console output
off and to use non-binary mode, or "O=8Q" to force binary transmission and
filter out beeps from local display.
NB The options "8" and "7" should be avoided if at all possible. They
should only be necessary for some buggy Telnet Daemons and you should not need
to ever use them. I have not seen a system that needs the "8" option, but I
assumed that there would be one so I implemented the feature. I regularly do
transfers of binary data (including Zmodem file transfers) over Telnet Door
without using the "8" option. It is theoretically possible that use of the "8"
option where it is not appropriate could cause problems resulting in a loss
of the TELNET connection.
(4.2.8) Registration File
If you want Telnet Door to access registration information from a file on
disk instead of from an INI file, then use the "R=filename" option to tell
it which file name to look for.
(5.0.0) Development of Telnet Door
(5.1.0) Test System
This program is developed and tested on a Pentium System running OS/2 Warp
version 3.00. It is connected to a Linux system via an Ethernet network. The
Linux system is running the Slackware Linux Distribution version 2.0.0 with
kernel version 1.1.94.
Previously this program was tested on target machines running older versions
of Linux (as far back as version 1.0.0) and versions of OS/2 as old as 2.10.
I don't often test on the lower systems any more - if I tested on every system
I would not have any time for development. So I am not doing as much testing
as I would like and I am relying on the users of this program to report
problems to me. If you find a bug or a feature that is lacking in this package
then please let me know and I will work on it. If you have reported a bug or
lack of a feature to me and it has not been fixed within 2 weeks then please
send me a reminder message. I receive so many messages requesting new features
that youur message might have got forgotten.
(5.2.0) Compiler used
This program was compiled with IBM's Cset++ version 2.1 using the OS/2 Warp
3.0 toolkit and header files and the TCP/IP libraries and header files from
the DevCon CD.
(6.0.0) Environment considerations - how to get best performance
This program is not particularly susceptible to changes in the CONFIG.SYS
file, it should work fairly well no matter what settings you have in place.
However there are some guidelines that may help you in setting up your system
to get maximum performance.
If you are running many copies of Telnet Door you generally should not
change the TIMESLICE parameter in CONFIG.SYS in an attempt to improve
performance. Some people may think that when running many copies of a program
they will get faster user-response time by decreasing the size of a time
slice - this is generally not true and definately not true for this program.
Telnet Door spends most of it's time (99.9%) blocked on IO or sleeping, so
when it is doing something (which will generally be of short duration) it is
better if it is allowed to complete the operation before blocking on IO or
sleeping again. Otherwise CPU time will be wasted on excessive task switching
and user response may be slowed down as a result.
If you are running Telnet Door on a system that also runs badly behaved
applications (or DOS and Windows applications which are badly behaved by
definition) then it may be necessary to use the MAXWAIT parameter in your
CONFIG.SYS file to ensure that users of Telnet Door (and other BBS
applications) get keyboard response in a reasonable amount of time. It may
be necessary to change this value to 2 or 1 to give users of your BBS an
acceptable response time. This will affect all programs not just Telnet Door
so any setting that works well with your favourite OS/2 BBS package should
work well with Telnet Door.
When you are running Telnet Door you must ensure that you have enough threads
set in your CONFIG.SYS file. Telnet Door requires 4 threads for modem
operation when time-limits are enforced, and 2 threads for non-modem
operation without time-limits, so a 16 line BBS could require up to 64 threads
for Telnet Door alone! Increasing the number of threads for the system has
not been found to lower system performance so I recommend a minimum of 256
threads for a typical BBS system. More may be required depending on the
number of lines and the amount of networking that is being performed.
(7.0.0) Error Levels
Telnet door will exit with the following error levels which you may want to
use in batch files etc:
0 Normal exit - no error.
1 Command line error.
2 Carrier loss.
3 Socket error (crash of UNIX host?).
4 Serial port error (connected to wrong serial port or another program is
interfering with the serial port).
5 Display error - shouldn't happen.
6 Keyboard error - shouldn't happen.
255 Really serious or unplanned error, could be a bug in Telnet Door. If this
happens then let me know.
(8.0.0) Applying your registration key
The program APPLY.EXE is used to apply your registration key file (that you
will receive after registering Telnet Door) to your system. The command is
simply "APPLY nnnnn.KEY" where "nnnnn" is the serial number of your key. Do
not delete your key file after running this program as you will need it in
future. The APPLY program will apply the registration file to your INI files.
If you do not want this data stored in your INI files or if you have problems
with this method then you can use the "R=filename" command line option to tell
Telnet Door the name of a file to open to read the registration data.
Do not let anyone else receive a copy of your KEY file, distributing a KEY
file is piracy (and it has your name in it so it will be well advertised
piracy too). If you believe that someone may have stolen a copy of your KEY
file then contact me immidiately and I will cancel it as of the next release
of Telnet Door.
When I send you your key file it will be in an LHArc archive which has a
name based on your name, that archive will contain a file named nnnnn.KEY where
nnnnn is the serial number of the key. For example if I was sending myself a
KEY file I would send an LHArc archive named RUSSELL.LZH containing a file
named 1.KEY.
(9.0.0) Registering:
To register post a cheque or International bank draft, or credit card payment
program to the address listed in TELDOR.REG. I accept payment by VisaCard,
MasterCard, and BankCard from any country in the world through my agent
Multifunction Computing. If you pay me by credit card you will see the name
Multifunction Computing on your next bank statement.
The file TELDOR.REG contains all information necessary to register this
program including pricing information.
The next full release of Telnet Door will require a key file to provide full
functionality. Make sure you send me your EMAIL address when you register so
I can send you your key.
To get the latest version and for technical support you can send EMAIL to
your choice of the following addresses:
rjc@snoopy.virtual.net.au.
Russell Coker @ 3:633/363.0 @ fidonet
Or call my BBS directly on +61-3-739-7145.
You can now login to my BBS via the Internet by using the VMODEM function
that is built into Ray Gwinn's SIO drivers. Use address multi.apana.org.au
which is IP address 202.12.87.130 with the default VMODEM port.
To get the absolutely latest version FREQ "TELDOR" from 3:633/363@fidonet,
download it from files area OBBS in my BBS as the latest file that matches
"TELDR" (do a locate to find it), or do an anonymous FTP from my Internet
system (snoopy.virtual.net.au). Also many other sites have copies of my program,
the systems hobbes.nmsu.edu and ftp-os2.cdrom.com get copies soon after release
and they both have Internet links that are thousands of times faster than mine
so you may prefer to FTP from them instead of from me. But if you are paranoid
about corrupt files or something then feel free to download it from
snoopy.virtual.net.au. Snoopy is an Internet host that is totally administered
by myself.
If you wish to logon to my BBS using the Internet (to avoid paying long
distance phone charges if you don't live in the same city or country as me) you
can login to multi.apana.org.au using either the Telnet or Vmodem protocols.
Also if you experience problems with this product and you are on the
Internet then you can use either snoopy.virtual.net.au or multi.virtual.net.au
as telnet targets for testing. These are the systems that I use for testing
Telnet Door during development so you can count on these working.
I am currently running a mailing list for UUencoded copies of this program.
This means that people who have Internet EMAIL addresses don't have to do
anything to keep up to date with the very latest versions of my program, they
can just automatically receive copies in their mail account without having to
do anything. If you are interested in this idea then just send me an EMAIL
message to my Internet address and I'll put you on the list.