home *** CD-ROM | disk | FTP | other *** search
Text File | 1992-04-22 | 83.1 KB | 2,045 lines |
-
-
-
-
-
-
-
-
-
-
-
- TINYHOST
-
- V 3.00
- April 21, 1992
-
-
- Copyright (C) 1991 by Bruce A. Krobusek
-
-
-
-
-
-
-
-
-
-
-
-
- A small, personal, Host / BBS program for
-
- IBM PC's and compatibles
-
-
-
-
-
- Created by : Bruce A. Krobusek
-
- 5950 King Hill Drive
- Farmington, NY 14425
-
-
-
-
-
-
-
- CompuServe : 74106,1335
- GEnie : B.KROBUSEK
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 1.0 INTRODUCTION 1
- 1.1 What is TinyHost? 1
- 1.2 Why TinyHost? 2
- 1.3 What is a SysOp? 2
- 1.4 Quick Start 2
-
- 2.0 INSTALLATION and SETUP 3
- 2.1 Host System Requirements 3
- 2.2 Connecting System Requirements 3
- 2.3 Installation of TinyHost 3
- 2.4 Running TinyHost 4
- 2.5 Modem Requirements 4
- 2.6 Modifying the TINYHOST.CFG File 5
- 2.6.1 Descriptor Summary 5
- 2.6.2 Communications Specific Descriptors 6
- BAUD 6
- CARRIER 6
- HANGUP 6
- INIT 6
- ISDN 7
- PORT 7
- RESET 7
- RINGBACK 7
- 2.6.3 General Descriptors 7
- ACCESS 7
- BOOT 8
- CHAT 8
- CHDIR 8
- EVENT 8
- EXTERNAL 8
- LOG 8
- OVERWRITE 8
- SHELL 9
- START 9
- SYSOP 9
- UPLOAD 9
- USER 9
- VIEW 9
- 2.7 Setting up Access Levels 10
- 2.8 Customizable Display Files 11
-
- 3.0 OPERATION 12
- 3.1 Ringback Operation 12
- 3.2 TinyHost Operation 12
- 3.3 File Oriented Commands 14
- 3.3.1 File Transfers 14
- 3.3.2 Changing Directories 14
- 3.3.3 List Directory 15
- 3.3.4 Typing out a File 15
- 3.4 Message Commands 15
- 3.4.1 Reading Messages 15
- 3.4.2 Entering a Message 16
- 3.4.3 Editing a Message 16
- 3.4.4 Killing (Deleting) Messages 17
- 3.4.5 Viewing User List 17
- 3.5 Miscellaneous Commands 17
- 3.5.1 Expert Mode 17
- 3.5.2 Operator Page 18
- 3.5.3 Shelling-to-DOS 18
- 3.5.2 Executing a Warm Boot 18
-
-
-
-
-
-
- 3.6 Command Chaining 18
- 3.7 User Inactivity and Disconnects 19
-
- 4.0 ADVANCED TOPICS 19
- 4.1 General Notes 19
- 4.2 ISDN Support 19
- 4.3 External Protocols 20
- 4.4 Shelling-to-DOS 21
-
- 5.0 TROUBLESHOOTING TIPS 21
- 5.1 General Comments 22
- 5.2 System Hang (Lockup) 22
- 5.3 Error in User Account 22
- 5.4 Modem Fails Reset 22
- 5.5 Modem Fails Initialization 23
- 5.6 Phone Call Not Answered 23
- 5.7 Garbage After Connect 23
- 5.8 Immediate Connect and Logoff 23
- 5.9 Garbage During Logon 23
- 5.10 Added Message Not Displayed 24
- 5.11 TinyHost Doesn't Hangup 24
-
- 6.0 MISCELLANEOUS INFORMATION 24
- 6.1 What is Shareware? 24
- 6.2 Distributing TinyHost 25
- 6.3 License Information 25
- 6.4 Warranty Information 25
- 6.5 Program Support 25
- 6.6 New User Logons 26
- 6.7 Message File Format 27
- 6.8 Logging User Activity 27
- 6.9 Using TinyHost with DesqView 28
- 6.10 Known Program Limits 28
- 6.11 TinyHost Plus 28
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Brand and product names used throughout this document are
- trademarks or registered trademarks of their respective holders.
-
-
-
-
-
-
-
-
-
- 1.0 INTRODUCTION
-
- 1.1 What is TinyHost?
-
- TinyHost is a small, personal, Host / BBS program I have
- developed for IBM PC's and compatibles. It permits the transfer
- of files (using modems) between two computers without the
- requirements or overhead of other programs, particularly the
- full-fledged BBS programs.
-
- TinyHost has the following features:
-
- * Operation can be via COM1, COM2, COM3, or COM4 using a
- Hayes compatible modem, and at rates of 300 to 38.4K bps.
-
- * Supports XModem, XModem/CRC, and 1K-XModem (sometimes
- called YModem) as internal file transfer protocols.
-
- * Up to 6 external file transfer protocols can be
- implemented.
-
- * Supports up to 25 users with 11 security levels.
-
- * Supports Ringback mode, which permits easy use of a voice
- phone line for data communications.
-
- * A text file that resides on the host system can be viewed
- without downloading.
-
- * Supports Personal and Public mail, and SysOp Comments.
-
- * The actions of a remote user are echoed to the local
- screen.
-
- * Unauthorized users are not able to logon to TinyHost.
-
- * Using the security level feature, access can be restricted
- to one directory or the entire system can be available.
-
- * An Operator Chat function exists to permit the local
- operator to chat on-line with the remote user.
-
- * Shelling-to-DOS while connected remotely can be permitted.
-
- * Support has been added for ISDN phone systems.
-
- * Uploads can be restricted to a minimum security level.
-
- * User activity can be logged to a file.
-
- * TinyHost performs a self-check on execution to ensure
- that it has not been tampered with by, for instance, a
- virus.
-
- * TinyHost is just that - tiny! The executable file is less
- than 90K, and the program only requires approximately
- 140K of system RAM to run in.
-
-
- Page 1
-
-
-
-
-
-
- Your version of TinyHost should include the following files:
-
- THOSTxxx.EXE - TinyHost's executable. The xxx
- refer to the version number of
- the program
- TINYHOST.DOC - The TinyHost manual in printer
- ready form (PRINT TINYHOST.DOC)
- TINYHOST.WEL - A sample welcome file
- TINYHOST.CFG - A sample configuration file
- THREMOTE.BAT - Sample batch file for Shell-to-DOS
- ZMXMIT.BAT - Batch file for DSZ ZModem downloads
- ZMRCV.BAT - Batch file for DSZ ZModem uploads
- REGISTER.FRM - Ready-to-print registration
- form (PRINT REGISTER.FRM)
- HISTORY.TXT - A file describing the release
- history of TinyHost
- READ.ME - A short text file describing
- TinyHost
- IN-NODE.LST - A text file with a list of all
- current Intelec nodes (BBSes)
-
-
- 1.2 Why TinyHost?
-
- Why did I create TinyHost? I needed a method to transfer
- files with friends without hassle. I also found that, since I use
- computers at work and at home, I was constantly leaving needed
- files at one location or another, which resulted in duplicated
- (or lost) effort.
-
- TinyHost is also ideal for the company that needs to keep in
- touch with remote employees, such as a sales force. With the file
- transfer and message capability, it is easy to provide a single
- transfer point for up-to-date information.
-
- TinyHost was written using Borland's C++, and consumes
- approximately 140K bytes of memory space when running. The small
- memory requirements, along with the small .EXE and other
- associated files, permits even floppy-disk based systems to be
- used for TinyHost operation.
-
-
- 1.3 What is a SysOp?
-
- When the term SysOp is used in this manual it refers to the
- person who installs TinyHost on his computer (you), decides who
- can logon to his system, and what directories they are able to
- access.
-
-
- 1.4 Quick Start
-
- It is recommended that the manual be read before trying to
- use TinyHost. However, it is always tempting to fire up a new
- program to see how it works. To print out the manual and
- registration form, simply enter PRINT TINYHOST.DOC and PRINT
- REGISTER.FRM at your DOS command prompt.
-
-
- Page 2
-
-
-
-
-
-
- Here is a summary of what must be changed (at a minimum) to
- get TinyHost to work.
-
- First, the following comments assume that the target system
- has a hard disk (Drive C), and that TinyHost will have its own
- directory. Create a directory called TINYHOST in the root (main)
- directory of the hard disk (C:\TINYHOST). Then create a sub-
- directory called BIN within the TINYHOST directory
- (C:\TINYHOST\BIN). Copy the THOSTxxx.EXE, TINYHOST.CFG, and
- TINYHOST.WEL files to the C:\TINYHOST\BIN subdirectory. Then move
- to this directory.
-
- Using an ASCII editor (even EDLIN will do), edit the
- TINYHOST.CFG file as follows: set the PORT descriptor to the
- serial port that the modem is connected to (1, 2, 3, or 4). Set
- the BAUD descriptor to the initial data rate of the modem,
- usually the fastest speed of the modem (valid values are 300,
- 1200, 2400, 4800, 7600, 9600, 14400, 19200, or 38400). Finally,
- edit one of the default USER accounts (or create a new one) and
- create an account with your name, a password, and your security
- level (8 or 9 is adequate). Exit your editor and save all of
- these changes.
-
- To run TinyHost, simply enter THOSTxxx.EXE at the DOS prompt
- and, after a few seconds of setup, TinyHost should respond with
- its standby screen while it waits for a call.
-
-
-
- 2.0 INSTALLATION and SETUP
-
- 2.1 Host System Requirements
-
- TinyHost does not need an elaborate system in order to be
- used. A minimal system would consist of a single floppy drive,
- 256K RAM, any type of display, a serial port, and a Hayes
- compatible modem. TinyHost supports COM1-4 using the normal
- hardware interrupts for each port (IRQ4 for COM1 and COM3; IRQ3
- for COM2 and COM4).
-
-
- 2.2 Connecting System Requirements
-
- Any type of system and communications package should work
- with TinyHost. Communications requirements are 8 bits, no parity,
- and 1 stop bit.
-
-
- 2.3 Installation of TinyHost
-
- It is recommended that TinyHost be installed in its own sub-
- directory. The directory that holds THOSTxxx.EXE is called the
- "execution directory", and it is here that the .CFG and other
- TinyHost specific files should be kept. Only two files are needed
- for operation - THOST.EXE and TINYHOST.CFG. Specific information
- as to the expected config file format follows in section 2.6.
- Please remember that user accounts MUST be created prior to using
- TinyHost - the program does not permit new user logon!
-
- Page 3
-
-
-
-
-
-
- For security reasons, it is STRONGLY suggested that the
- TinyHost execution directory be different from the start-up
- directory!
-
-
- 2.4 Running TinyHost
-
- To start TinyHost, move to the execution directory and type
- "THOSTxxx", where the 'xxx' refers to the version number of
- TinyHost.
-
-
- 2.5 Modem Requirements
-
- TinyHost expects a modem that supports the Hayes compatible
- command set and ASCII return codes. Because of the many different
- modem configurations (switch settings) there would be no point in
- attempting to provide a definitive setup for each. However, I can
- describe what TinyHost expects - refer to the manual for your
- modem to see how to make it fit these needs.
-
- Most modems support two types of result codes - numeric
- values (non-verbose) and ASCII strings (verbose). TinyHost
- expects to receive verbose result codes of the following types:
-
- OK - Informs the host that the modem has executed the
- command string successfully.
-
- RING - Informs the host that an incoming call has been
- detected.
-
- CONNECT - Denotes that the modem has made a 300 bps
- connection.
-
- CONNECT 1200 - A 1200 bps connection.
-
- CONNECT 2400 - A 2400 bps connection.
-
- CONNECT 4800 - A 4800 bps connection.
-
- CONNECT 7200 - A 7200 bps connection.
-
- CONNECT 9600 - A 9600 bps connection.
-
- CONNECT 14400 - A 14.4K bps connection.
-
- CONNECT 19200 - A 19.2K bps connection.
-
- CONNECT 38400 - A 38.4K bps connection
-
- Most modems support a switch setting that controls the state
- of the RS-232 Data Terminal Ready (DTR) handshake line. The
- switch setting can either force DTR TRUE at all times at the
- modem, or it can be set to permit the host computer to control
- DTR. If DTR is supported with the selected host computer and
- modem, then a modem hangup string will be unnecessary as TinyHost
- will toggle DTR when it wishes to drop carrier. However, if DTR
- is unavailable, then the modem hangup string must be defined (see
-
- Page 4
-
-
-
-
-
-
- HANGUP below) or TinyHost will be unable to terminate a call and
- will never drop carrier.
-
-
- 2.6 Modifying the TINYHOST.CFG File
-
- When TinyHost is run it looks for TINYHOST.CFG in its
- execution directory. If it doesn't find it the program aborts. If
- the file is located, TinyHost reads in the information that it
- needs to run. The config file can be created or modified using a
- simple ASCII editor. If the editor used places an EOF character
- ($14) at the end of the file, make sure that at least one blank
- or commented line is at the end of the file.
-
- Each line in the config file can be up to 80 characters in
- length. At any point in the line a comment can be added by
- placing a pound sign (#) in the line - everything following it
- will be ignored.
-
- TinyHost requires specific information to run. To this end I
- have implemented what I call 'descriptors' which denote what type
- of information is specified on the line. The descriptor must
- begin in the first column of the line. The descriptor can be in
- either upper or lower case, it must be followed by a colon (:),
- and the descriptor must be spelled properly. If a required
- descriptor does not exist TinyHost will abort and display an
- error message. Descriptors can be defined in any order.
-
- The descriptors fall into two categories: communications
- specific and general. The following table summarizes each
- descriptor, with more detailed information in the following
- sections.
-
- Embedded spaces must be eliminated from any descriptor
- command line - even from the USER account fields. For instance, a
- USER descriptor account such as:
-
- USER:Joe,De User,Password,8
-
- is invalid because of the embedded space in the user's last name.
- The valid way to set up this account would be:
-
- USER:Joe,DeUser,Password,8
-
- The only exception to this is when adding an EXTERNAL descriptor
- for External Protocols.
-
-
- 2.6.1 Descriptor Summary
-
- *BAUD - Beginning baud (bps) rate
- CARRIER - Monitor Carrier Detect select
- HANGUP - Modem hangup string
- *INIT - Modem initialization string
- +ISDN - ISDN support select
- *PORT - COM port to be used
- RESET - Modem reset string
- RINGBACK - Ringback mode select
-
- Page 5
-
-
-
-
-
-
- ACCESS - Directory access security level
- BOOT - Warm boot security level
- CHAT - Chat mode default
- CHDIR - Change directory security level
- EVENT - Event time
- +EXTERNAL - External Protocol definition
- LOG - Log file enable
- OVERWRITE - File overwrite security level
- +SHELL - DOS Shell security level
- *START - TinyHost start-up directory
- SYSOP - SysOp security level
- UPLOAD - Upload security level
- VIEW - View User List security level
- *USER - User account information
-
- * Required Descriptor
- + Explained in Advanced Topics section
-
-
- 2.6.2 Communications Specific Descriptors
-
- The following are the descriptors used in setting up TinyHost
- communications. Sample uses are given for each command.
-
- BAUD - This specifies the baud (bps) rate that the TinyHost
- serial port is to operate at. Legal values are 300, 1200, 2400,
- 4800, 7200, 9600, 14400, 19200, and 38400. BAUD is required. In
- addition, the COM port baud rate may be locked at the specified
- value by adding ",LOCK" after the baud rate:
-
- BAUD:19200,LOCK
-
- This has been added for use with error-correcting modems. When
- using this mode the proper command(s) must be added to the modem
- init string to lock the modem's serial port communications rate
- as well.
-
- CARRIER - Specifies whether or not the modem's Carrier Detect
- (CD) handshake should be monitored. A 'Y' or 'N' is expected.
- Monitoring the CD line permits TinyHost to see if a caller has
- been disconnected unexpectedly. CARRIER is optional.
-
- CARRIER:Y # Monitor CD for disconnect
-
- HANGUP - Specifies the command string necessary to tell the
- modem to hang up the phone (go on hook). Refer to the section on
- modem requirements (2.5) to see if this string is necessary.
- HANGUP is Optional.
-
- HANGUP:ATH0 # Sample hangup (on hook) command
-
- INIT - This is the initialization string used to configure
- the modem. INIT is required. The string included with TinyHost
- includes some modem commands that are necessary for proper
- operation:
-
-
-
-
- Page 6
-
-
-
-
-
-
- INIT:ATE0M0Q0V1X2S0=0S2=43 # Sample init string
-
- E0 - Controls echo from the modem. Must be
- set to 0, which is for no echo. Required.
- M0 - Controls the modem speaker. A value of
- 0 turns the speaker off. Optional.
- Q0 - Determines the kind of result codes sent
- by the modem. Must be set for 0 (result
- codes sent). Required.
- V1 - Determines the type of result codes sent.
- Must be set to 1 which specifies English
- (ASCII) codes are sent. Required.
- X2 - Selects extended modem result codes. Must
- set to 2 or greater. Required.
- S0 - Determines the number of rings on which
- the modem will answer the phone. Must be
- set to 0. Required.
- S2 - Sets the value of the escape code for the
- modem. Must be set to 43 ("+"). Required.
-
- ISDN - Specifies whether or not ISDN support should be used.
- A 'Y' or 'N' setting is expected. Refer to section 4.2 for
- further information regarding ISDN support.
-
- ISDN:Y # Enable ISDN support
-
- PORT - This specifies the COM port that is to be used. Valid
- values are 1, 2, 3, or 4. PORT is required.
-
- PORT:1 # Use COM port 1
-
- RESET - Specifies the command string necessary to reset the
- modem. If RESET is specified then the modem must default to
- verbose text responses for proper TinyHost operation. RESET is
- optional.
-
- RESET:ATZ # Modem reset string
-
- RINGBACK - Specifies whether or not TinyHost will operate in
- ringback mode. RINGBACK is not required - TinyHost will default
- to Ringback Enabled Mode.
-
- RINGBACK:Y # Enable Ringback mode
-
-
- 2.6.3 General Descriptors
-
- ACCESS - Can be used to specify a security level needed to
- access a directory. Up to 25 Access restrictions can be defined.
- If no access restrictions are specified then anyone with CHDIR
- permission can move to any system drive or directory. This could
- be troublesome when floppy drives are specified and they contain
- no diskettes. ACCESS expects a valid directory path (up to the
- DOS limit of 63 characters), followed by a comma, followed by a
- numeric value between 0 and 10 indicating a security level. A
- typical ACCESS descriptor would be:
-
- ACCESS:C:\TINYHOST\BIN,9
-
- Page 7
-
-
-
-
-
-
- which would limit access to the C:\TINYHOST\BIN directory to
- users with a security level of 9 or greater.
-
- A default access value can also be specified as follows:
-
- ACCESS:DEFAULT,9
-
- This means that any unspecified directories can only be accessed
- by users with a security level of 9 or greater. This will make
- securing a typical computer system much easier. Access settings
- are reloaded with the Warm Boot command.
-
- BOOT - Specifies the security level needed to perform a warm
- boot of the host system. This command can be used with Overwrite
- to update TinyHost's config file from a remote location. If Boot
- security is not specified then no user will have Boot permission.
- BOOT expects a numeric value between 0 and 10.
-
- BOOT:9 # Security level to execute a Warm Boot
-
- CHAT - Specifies the default setting for Chat Mode on
- TinyHost execution. A 'Y' enables Operator Chat; a 'N' disables
- it. CHAT is optional, and defaults to enabled.
-
- CHAT:Y # Enable Operator Chat on start-up
-
- CHDIR - Specifies the minimum security level necessary to be
- able to move between directories of the system. If not specified
- then no security level will be permitted to change directories.
- CHDIR expects a numeric value between 0 and 10.
-
- CHDIR:3 # Sets Change Directory security to 3
-
- EVENT - Used to set a time for TinyHost to quit and return to
- DOS. The time must be entered in 24-hour (military) format (0000-
- 2359, 0000 = midnight). All four digits must be entered. If a
- user is logged on when the Event time occurs, TinyHost will not
- exit until the user has logged off. The Event time is reset when
- executing a Warm Boot.
-
- EXTERNAL - Used to add an external protocol (such as ZModem)
- for use with TinyHost file transfers. Refer to Section 4.3 for
- further information. EXTERNAL is optional.
-
- LOG - Enables the logging of user activity to a file. LOG
- expects a 'Y' or 'N' setting. LOG is optional.
-
- LOG:Y # Logs user activity to TINYHOST.LOG
-
- OVERWRITE - Specifies the security level needed for file
- overwrite permission. This can be used to update TinyHost's
- config file remotely when used with the Warm Boot command. If
- Overwrite security is not specified then no user will have
- Overwrite permission. OVERWRITE expects a numeric value between 0
- and 10.
-
- OVERWRITE:9 # Sets Overwrite security level
-
-
- Page 8
-
-
-
-
-
-
- SHELL - Used to set the security level for executing the
- Shell-to-DOS function. Refer to Section 4.4 for further
- information. SHELL is optional.
-
- START - Specifies the start-up directory for TinyHost. This
- is the directory that TinyHost moves to after its initialization
- is complete. This is also the directory that is available to the
- remote user that logs onto TinyHost so care should be taken that
- no sensitive files are available for download from this
- directory. START is required. A terminating backslash should not
- be used except when specifying a root directory that is being
- used for the start-up directory.
-
- START:C:\TINYHOST # Directory at initial logon
-
- SYSOP - Specifies the minimum security level necessary to
- perform SysOp level functions. SysOp functions include the
- ability to delete Public mail, and read and delete SysOp
- Comments. SYSOP expects a numeric value between 0 and 10. If
- it is not specified then remote SysOp privileges will be
- disabled.
-
- SYSOP:9 # Sets SysOp security level at 9
-
- UPLOAD - Specifies the minimum security needed to upload a
- file to TinyHost. UPLOAD expects a numeric value between 0 and
- 10. If it is not specified then anyone can upload a file.
-
- UPLOAD:3 # Sets Upload security level to 3 or greater
-
- USER - Defines a user account. The line should contain (in
- order) the users first name (15 characters maximum), last name
- (30 characters), password (8 characters), and security level (2
- characters). Each item must be separated from the other by a
- comma (,). The security level should be specified by a numerical
- string ranging in value from 0 to 10, with 10 being the highest
- permissible security level. At least one, and up to 25, user
- accounts can be created. User accounts are reloaded when the
- Warm Boot command is executed.
-
- The following USER descriptor:
-
- USER:Joe,Shmoe,JOEUSER,7 # User with security of 7
-
- creates a user account for Joe Shmoe with the password of
- JOEUSER. Joe has a security level of 7.
-
- VIEW - Minimum security necessary to perform a View User List
- function. It may be desired to prevent lower level users from
- viewing the names of the TinyHost user base, and setting VIEW
- high enough will do this. View expects a numeric value between 0
- and 10. Not specifying a VIEW security level will result in all
- users being able to view the User List.
-
- VIEW:3 # Sets View Users security level at 3
-
-
-
-
- Page 9
-
-
-
-
-
-
- 2.7 Setting up Access Levels
-
- The first thing to remember is that if a user's account
- hasn't been created in the TINYHOST.CFG file he will never be
- able to log on! (See Section 6.6 for a method to permit new users
- to log on).
-
- From there, things get a little more complicated (but not
- *too* complicated!). The SysOp will have to make decisions as to
- how much system access to give to the user accounts he creates.
- It is recommended that security level 10 be used to deny access
- to items such as the floppy drives, etc. when a hard disk based
- system is used. Trying to remotely access a floppy drive that
- does not have a diskette in it will cause TinyHost to hang.
-
- As noted above, a remote user can be restricted to the Start-
- Up directory for his uploads and downloads. This is accomplished
- by setting the CHDIR access to a higher level than that of the
- remote user.
-
- To limit access to other areas of the system, the ACCESS
- descriptor should be used. For instance, it is recommended that
- only the SysOp have remote access to the sub-directory that
- contains the TinyHost program, config file, and message files.
- Since there is no specific file upload or download restrictions,
- permitting access to these files (particularly the config file)
- would then give access to the entire user log.
-
- Entire disk drives (floppy, hard, and RAM) can be locked out
- by simply setting up the following ACCESS descriptor:
-
- ACCESS:X:,10
-
- This would force a security level of 10 or greater to access
- drive X. As long as no user (SysOp included) has a security of
- 10, then no access of drive X is possible. To lock out the root
- directory of a drive the descriptor would be changed to:
-
- ACCESS:X:\,10
-
- Note the trailing backslash after the drive designation. This is
- the only time that the backslash is necessary. To lock out a
- particular directory:
-
- ACCESS:C:\TINYHOST\BIN,9
-
- would permit access to the TINYHOST\BIN subdirectory by people
- with security levels of 9 or greater. Note that a trailing
- backslash should not be used when specifying a complete directory
- path.
-
- For example, suppose that one wanted to have two separate
- subdirectories, each with its own access level, within the
- TINYHOST directory. Assuming that one directory is called LEVEL7
-
-
-
-
-
- Page 10
-
-
-
-
-
-
- and the other is LEVEL8, the directory structure would look like
- this:
-
- C:\ --- TINYHOST --+--- LEVEL7
- |
- +--- LEVEL8
- |
- +--- BIN
-
- Also, assume that the access levels within TINYHOST.CFG are set
- as follows:
-
- ACCESS:C:\TINYHOST\BIN,9
- ACCESS:C:\TINYHOST\LEVEL7,7
- ACCESS:C:\TINYHOST\LEVEL8,8
-
- Users with a security level of 7 or higher would be permitted
- access to the LEVEL7 directory. A security level of 8 or more
- would be required to be able to move to the LEVEL8 directory. And
- a level of 9 or 10 (probably a SysOp) would have access to the
- BIN directory where all of the important TinyHost files are kept.
-
- By adding the following line:
-
- ACCESS:DEFAULT,9
-
- the system is also further protected by setting a default access.
- This means that any directory not explicitly mentioned in an
- ACCESS descriptor can only be accessed by a user with a security
- level of 9 or greater. Specifying a default access level does not
- use one of the 25 standard ACCESS directory resources.
-
- The config file that has been included with the TinyHost
- package is set up to lockout floppy drives A and B. Overwrite,
- boot permission, default directory access, and SysOp security
- levels are set to that of the "SysOp", Sam Sysop.
-
-
- 2.8 Customizable Display Files
-
- TinyHost permits the customizing of three display files by
- the SysOp that are shown at three different points within the
- program. TINYHOST.WEL is displayed after a connection has been
- made and before a user has logged on. TINYHOST.BUL is displayed
- after the logon process has been successfully completed.
- TINYHOST.BYE is shown after the user has logged off. A sample
- TINYHOST.WEL has been included on the TinyHost disk.
-
- Each file can have any number of lines, but each line should
- be no more than 80 characters long, and should be terminated with
- a carriage return and line feed. If the file is longer than 20
- lines TinyHost will pause at the 21st line (and every 21st line
- thereafter).
-
- These files should be placed in the same directory that
- THOSTxxx.EXE and TINYHOST.CFG reside (the execution directory).
- If any of the display files do not exist TinyHost will continue
- on its merry way!
-
- Page 11
-
-
-
-
-
-
- 3.0 OPERATION
-
- 3.1 Ringback Operation
-
- Ringback mode has been implemented to permit using the same
- phone line for both voice and data communications. In the case of
- the author, his computer (running TinyHost) shares a phone line
- with an answering machine. The use of ringback permits access to
- the computer while not affecting answering machine operation.
-
- To access TinyHost when ringback is implemented the caller
- must first dial into the computer and permit the phone to ring at
- least once (or permit the modem to detect at least one ring).
- Then the caller should hang up and wait at least 8 seconds before
- redialing the computer. As long as the redial is done within 1
- minute of the first call, TinyHost will answer the phone and data
- communications can begin. If more than 1 minute elapses then
- TinyHost resets and begins waiting for the first ring.
-
-
- 3.2 TinyHost Operation
-
- TinyHost is a very easy program to use - if for no other
- reason than there aren't too many options with which to become
- confused! After the program is started a status screen is
- displayed on the local monitor. This information includes whether
- or not TinyHost is in ringback mode, and, if so, whether or not
- the program is waiting for the ringback. A local operator is also
- able to view the progress of a remote connection since all
- activity is echoed to the computer's monitor.
-
- After TinyHost has been started, and while it is waiting for
- a phone call, a status screen is displayed. Information such as
- Ringback status (Enabled or Disabled), Chat Enabled or Disabled,
- etc. is displayed. Pressing the Escape key ( <ESC> ) at this time
- will exit TinyHost. A local user can logon by pressing <ENTER>
- (or <RETURN>). The user will then be presented with the same
- prompts that a remote user gets. Pressing <RETURN> again
- (entering nothing for a First Name) will also cause an exit from
- TinyHost.
-
- Whether logging on locally or remotely, if logon is desired,
- the user should enter his first name, last name, and password as
- requested. It is permissible to string together any and all user
- information (for instance, entering first and last name,
- separated by a space, at the First Name prompt). It is not
- recommended to enter ones password in this fashion as the
- characters would be echoed to both the local and remote screens.
- The names and password inputs are not case sensitive. TinyHost
- does not permit retries when entering this information - if it is
- entered improperly TinyHost will deny access and will hang up.
-
- After the user successfully logs on, TinyHost checks to see
- if any personal messages exist for the user. If so, TinyHost
- beeps once, and displays a message that Personal Mail is waiting.
- A check is also made for Public mail and SysOp Comments (security
- level permitting), and notices are displayed if either forms of
- messages exist.
-
- Page 12
-
-
-
-
-
-
- The user will then be presented with the Main Menu, which
- displays the following command options. Either upper or lower
- case characters can be used:
-
- *D - Download a file from TinyHost to the user.
-
- *U - Upload a file to TinyHost from the user (if
- permitted). If the user's security level
- permits, file overwrite is possible with or
- without backup.
-
- *C - If permitted, allows the user to move
- between drives and directories of the system.
-
- L - List the contents of the present directory.
-
- *T - Types out (lists) a text file that resides on
- the host system.
-
- *R - Read Personal or Public messages, or SysOp
- comments (security level dependent).
-
- *E - Enter a Personal or Public message or SysOp
- comment.
-
- *K - Kill Personal messages, or Private messages
- or SysOp comments (security level dependent).
-
- V - View User List (security level dependent).
-
- S - Shell-to-DOS (security level dependent).
-
- I - Displays an informative screen about TinyHost.
-
- H - Display a Help screen ('?' can also be used).
-
- X - Toggles TinyHost's Expert mode on and off.
- When Expert mode is ON the longer menu and
- informative messages are suppressed.
-
- B - Re-display the logon Bulletin.
-
- G - Goodbye. Ends the TinyHost connection.
-
- O - Page the Operator (SysOp) for chatting.
-
- W - Log off and reload the access, user, and event
- info from the config file. Subject to permission.
- This option is *not* displayed on the screen
- - it is a SysOp secret!!
-
- * Command Chaining possible
-
- When using TinyHost, and reading this manual, text surrounded by
- angle brackets refer to names of keys, such as <F1> and <RETURN>.
- Characters with square brackets around them ( [T] or [C] ) refer
- to characters that, when entered, will execute that appropriate
- action. Characters with curly braces ( {N} or {Y} ) denote
-
- Page 13
-
-
-
-
-
-
- default actions (actions executed on pressing the <RETURN> key
- with no other keys being pressed).
-
-
- 3.3 File Oriented Commands
-
- 3.3.1 File Transfers
-
- TinyHost provides internal XModem, XModem/CRC, and 1K-Xmodem
- upload and download capability (1K-XModem protocol is sometimes
- known as YModem). All uploads and downloads take place from the
- current directory that the user is in. If CHDIR access has not
- been given, then file transfers take place from the Start-Up
- directory. Note that if a user logs on locally file transfers are
- not permitted (for obvious reasons).
-
- Through the use of External Protocols TinyHost is able to
- support other protocols such as ZModem. Refer to Section 4.3 for
- further information on how to implement these.
-
- Xmodem and XModem/CRC transfers appear as a single selection.
- TinyHost will attempt to begin transfers using CRC as this is a
- more reliable protocol than checksum. If CRC attempts are ignored
- then the system will fall back to checksum.
-
- When uploading a file to the TinyHost system, if the file
- already exists the system will typically prevent overwriting the
- existing file. The exception to this is if the OVERWRITE
- descriptor has been set and the caller's security level matches
- or is greater than that value. If this is the case then the user
- will have the option of overwriting the existing file. If
- overwrite is selected then the user will also be asked if a
- backup of the current file is desired. If a backup already exists
- then the current backup will be overwritten by the new backup (no
- backups of backups are made!).
-
- The overwrite option was added to permit updating TinyHost's
- config file from a remote location. Since new users cannot
- normally logon to TinyHost it is necessary to create an
- appropriate account. By using both the overwrite and warm boot
- capability the SysOp can download the existing config file,
- modify it, upload it and overwrite the existing config file, then
- tell TinyHost to load the new information.
-
-
- 3.3.2 Changing Directories
-
- The Change Directory function of TinyHost acts much the same
- as the chdir (or cd) function from DOS. When Change Directory has
- been chosen the program will prompt for a new directory. The same
- type of input that is acceptable from a DOS command level is
- suitable for TinyHost - entering two dots (..) will take TinyHost
- to the next directory up the tree. Entering a complete path will
- take the user to the specified directory. All of this is, of
- course, assuming that the user has the necessary access to permit
- moving around the host system. To ensure security of the host
- system, TinyHost will return to the designated Start-Up directory
- after a user has logged off.
-
- Page 14
-
-
-
-
-
-
- 3.3.3 List Directory
-
- This function displays the files that reside in the currently
- selected sub-directory of the system. First, the current
- directory path is displayed. Then, any additional sub-directories
- that exist are shown. Finally, the individual files in the
- current directory are displayed along with their sizes.
-
-
- 3.3.4 Typing out a File
-
- This function permits typing out (listing) a file that
- resides on the TinyHost computer. It is strongly advised that
- this function be used only to view text (ASCII) files. Viewing
- binary files (those with .EXE, .COM, .ZIP, etc. extensions) can
- cause VERY unpredictable results!
-
- If the user has Expert Mode turned off when this feature is
- selected, a cautionary message similar to the above paragraph
- will be displayed, then the user will be prompted for a filename.
- If Expert Mode is enabled, then the user will be immediately
- prompted for the filename. If the file exists in the currently
- selected directory, then it will be displayed. TinyHost will
- pause every 21 lines and ask if it is to continue displaying the
- file. TinyHost will also automatically wrap the screen display if
- the line length exceeds 80 characters. TinyHost will keep track
- of added line feeds to be sure that the display is paused
- properly.
-
- The maximum line length that TinyHost will support (without a
- terminating carriage return or line feed) is 256 characters.
-
-
- 3.4 Message Commands
-
- 3.4.1 Reading Messages
-
- When a user logs onto TinyHost a notification is given if any
- Personal or Public mail is waiting, beeping once for Personal
- mail. If the user's security level is high enough, a notification
- of waiting SysOp Comments is also given. To read the messages,
- enter 'R' at the Main Menu prompt. A choice will then be given to
- read Personal ('P'), Public ('U'), or SysOp Comments ('C'). After
- the second choice is made the message(s) are then displayed. If
- more then one message is waiting, TinyHost pauses before
- continuing on to the next message. The very first line of the
- message notes who the message is from, and the time and date that
- the message was entered.
-
- If no mail is waiting of the selected type, a message
- reporting this is displayed. If the user does not have sufficient
- security to read SysOp Comments a notification is given and the
- Comments are not displayed.
-
-
-
-
-
-
- Page 15
-
-
-
-
-
-
- 3.4.2 Entering a Message
-
- To Enter a message or SysOp Comment, enter an 'E' at the Main
- Menu prompt. The user will be prompted for the type of message to
- be left (Personal, Public, or SysOp Comment). After the selection
- is made, a few notes regarding message input are displayed along
- with a ruler line showing the length of a message line.
-
- If entering a Personal (Private) message, the user will be
- asked for the name of the person to send the message to. TinyHost
- will then check to be sure that such a person exists in its user
- base, so it is imperative that the user's name be spelled
- correctly. To find out who exists in the user base, and to find
- the proper spelling of names, a View User list can be done
- (within security limits).
-
- Up to 20 lines of 70 characters each may be entered. TinyHost
- will automatically wrap input to the next line. When entering
- the message, do not put a period in the first (leftmost) column.
- This is how TinyHost distinguishes the end of a particular
- message (see Section 6.7). To end the message input, enter a
- blank line. At this point, the message can be edited, saved, or
- aborted.
-
- If the message is saved, TinyHost will automatically add the
- sending individual's name, and the time and date the message was
- entered, to the beginning of the message. The entire message will
- then be saved into the appropriate message file.
-
-
- 3.4.3 Editing a Message
-
- After entering a message, and before saving it, the message
- can be edited using the following editing commands:
-
- [L]ist - List the entire message
-
- [I]nsert - inserts a line after the line number specified.
- Entering a blank line will abort the insert process.
- If the message length is already 20 lines then an
- insert will not be permitted.
-
- [D]elete - deletes the specified line
-
- [E]dit - permits editing the specified line. After entering
- the line number the user is asked to enter the source
- string to be changed. TinyHost will do an exact, case
- sensitive search and if a match is found then the user
- is prompted for the string to be substituted. If the
- resulting line exceeds 70 characters then the end of
- the line will be truncated to fit.
-
- When editing the message is complete, the message can either
- be [S]aved or [A]borted.
-
-
-
-
-
- Page 16
-
-
-
-
-
-
- 3.4.4 Killing (Deleting) Messages
-
- TinyHost will retain all messages until they are deleted.
- This is accomplished by entering a 'K' at the Main Menu prompt.
- The user will then be prompted for the type of mail to delete -
- Personal, Public, or SysOp Comments. The user is then asked if
- all messages are truly to be deleted, and if the response is Yes,
- then the entire mail file is deleted.
-
- If the user's security is not high enough to delete Public
- Mail or SysOp Comments, an appropriate message will be displayed
- and the user will be returned to the Main Menu.
-
- It must be stressed that when Killing Messages, ALL such
- messages are deleted! There is presently no way, for instance, to
- just delete one Private message out of the group. However, since
- a DOS file delete is done, the file should be recoverable using
- an easily available file recovery utility.
-
- Non-deleted messages will hang around forever (or until the
- next disk crash!). Personal messages, though, will make a minor
- nuisance of themselves by beeping every time the user logs on.
- This should help remind users to purge their old messages.
-
- See Section 6.7 for information on editing the message files
- off-line using an ASCII editor.
-
-
- 3.4.5 Viewing User List
-
- To help users when entering Personal mail, a View User List
- function has been added. Entering a 'V' at the Main Menu prompt
- will display the list of users currently defined in TinyHost's
- user base. Both the first and last name of the individuals are
- displayed.
-
- The View User List function can be restricted to higher
- security levels simply by setting the VIEW descriptor value high
- enough. This may be desired when TinyHost is open to new callers
- (see Section 6.6), or when different security levels are
- implemented. If the VIEW descriptor is not found in the
- TINYHOST.CFG file, any users will be able to see the user list.
-
-
- 3.5 Miscellaneous Commands
-
- 3.5.1 Expert Mode
-
- Entering an 'X' at TinyHost's Main Menu will toggle the
- Expert User Mode on and off. When OFF, full menus and informative
- displays are given throughout TinyHost. When ON, these displays
- are suppressed and only a line showing the valid character inputs
- is displayed.
-
-
-
-
-
-
- Page 17
-
-
-
-
-
-
- 3.5.2 Operator Page
-
- Entering an 'O' will page the operator for online chat.
- This is assuming, of course, that the SysOp has enabled this
- function. If Chatting is enabled, TinyHost will beep every two
- seconds for 30 seconds to get the SysOp's attention. Any key
- pressed during this time by the remote user will cancel the page.
-
- On the local screen, TinyHost will display the name of the
- user who initiated the page. If the SysOp wishes to chat then the
- <F1> key should be pressed on the local keyboard. The remote user
- and SysOp can then chat back and forth simply by typing their
- messages. TinyHost will automatically wrap the input to the
- following line. To end the Chat, the SysOp must press <F1> again.
-
- While TinyHost is waiting for a call, the SysOp may enable or
- disable the Chat function by pressing <F1>. The status of Chat is
- shown on the local screen.
-
-
- 3.5.3 Shelling-to-DOS
-
- Entering an 'S' will select the Shell-to-DOS function.
- Depending upon the implementation the remote user will then be
- taken to the DOS prompt of the TinyHost machine. To return to
- TinyHost, the remote user must type 'EXIT' and hit <RETURN>.
-
- Whether or not a remote user can execute this command is set
- (in part) by the SHELL descriptor security level. There is no
- security requirement when executing this command from the local
- TinyHost keyboard.
-
- Because of the complexity of implementing this command at the
- TinyHost level, further information can be found in Section 4.4
- under Advanced Topics.
-
-
- 3.5.2 Executing a Warm Boot
-
- As described above, the warm boot option has been included to
- permit the SysOp to modify some settings remotely by updating and
- reloading the config file. TinyHost normally only reads its
- config file on initial start-up. Entering a 'W' will result in
- TinyHost logging off (same as if Goodbye had been selected). The
- program will then proceed to re-load its config file and retrieve
- ACCESS, USER, and EVENT info - everything else in its
- configuration (INIT, RESET, etc.) will remain untouched.
-
-
- 3.6 Command Chaining
-
- Many commands can be used with Command Chaining. This is the
- process of entering two pieces of information at the Main Menu
- prompt, with a space separating the items. For instance, to type
- out the file FOOBAR.TXT from the current directory, the command
- line would be:
-
- T FOOBAR.TXT <return>
-
- Page 18
-
-
-
-
-
-
- Command chaining can be used in or out of Expert Mode, and
- currently works with file and message commands. Section 3.2 lists
- the available TinyHost commands, and the ones where command
- chaining can be used are marked with asterisks ('*').
-
-
- 3.7 User Inactivity and Disconnects
-
- TinyHost monitors the COM port for keyboard activity to be
- sure that a user is still out there and awake. If no keyboard
- activity is seen for an extended period of time (at least 2
- minutes) TinyHost will hang up and recycle itself. The total
- length of time that TinyHost will wait depend upon what menu the
- user is in when the inactive period begins. A 5 minute delay is
- set when Viewing a file; a 2 minute delay exists at the Main Menu
- prompt. This activity monitor can also handle disconnects that
- occur in the middle of a logon session.
-
- In addition, if the CARRIER descriptor has been set to 'Y',
- TinyHost will monitor the status of the Carrier Detect (CD)
- handshake from the modem. If at any time the CD handshake is
- removed (denoting a broken connection), TinyHost will recycle
- itself.
-
-
-
- 4.0 ADVANCED TOPICS
-
- 4.1 General Notes
-
- The features covered in this section are NOT for the faint of
- heart!! In order to implement these properly a good knowledge of
- DOS, and of the system and environment that TinyHost is running
- in, is essential!
-
-
- 4.2 ISDN Support
-
- ISDN is a digital only phone system that is starting to
- become more widespread. With ISDN there is no modem, no init
- string, no result codes, and a fixed baud rate. All activity is
- controlled using the serial ports handshake lines. To enable ISDN
- support, the following descriptor must be added to TinyHost's
- config file:
-
- ISDN:Y # Enable ISDN support
-
- When ISDN is used, RINGBACK cannot be set to Yes, and a
- modem HANGUP string cannot be defined. It is also suggested that
- baud rate locking (for example, BAUD:9600,LOCK ) be used.
-
- When in ISDN mode, the DTR line is not asserted, as it
- is when in a modem application. TinyHost waits until the RING
- handshake becomes active and then asserts DTR. TinyHost then waits
- for DCD to be asserted to signify that a connection has been
- established. To break the connection, TinyHost simply drops the
- DTR handshake.
-
-
- Page 19
-
-
-
-
-
-
- 4.3 External Protocols
-
- For those that want to use protocols other than XModem (such
- as ZModem), TinyHost supports the use of external protocols. For
- instance, the author uses DSZ (by Chuck Forsberg) to implement
- ZModem file transfers. Up to 6 external protocols may be defined.
-
- The descriptor format for defining an External protocol is:
-
- EXTERNAL:<menu name>,<transmit batch>,<receive batch>
-
- for example::
-
- EXTERNAL:Zmodem,ZMXMIT,ZMRCV # Sample for ZModem
-
- <menu name> - The name of the protocol. This string may be up
- to 30 characters in length, and may include embedded spaces. This
- string will be displayed to the user at the Protocol Select menu
- within TinyHost - in this case, "ZModem".
-
- <transmit batch> - The name of the batch file used to invoke
- the external protocol when sending a file from TinyHost to the
- User (TinyHost Download). This batch file must reside in the
- TinyHost execution directory. In the above example, ZMXMIT will
- have TinyHost look for a batch file named ZMXMIT.BAT in the
- execution directory for downloads.
-
- <receive batch> - The name of the batch file used to invoke
- the external protocol when receiving a file from the User
- (TinyHost Upload). This batch file must reside in the TinyHost
- execution directory. In the above example, the name of the upload
- batch file is ZMRCV.BAT.
-
- The actual external protocol executable file must be in a
- directory pointed to by the DOS path command. The .BAT file
- extension should not be added when putting the filenames in the
- descriptor field.
-
- When an external protocol is selected, TinyHost starts a
- secondary command processor (usually COMMAND.COM). TinyHost also
- passes some necessary parameters to the batch file. These are, in
- order: 1) COM port number, 2) Port speed (baud rate), and 3) the
- filename. The COM port and baud rate are passed as ASCII
- characters.
-
- Two sample batch files have been included. These can be used
- with DSZ to implement ZModem transfers within TinyHost. For
- instance, the batch file for a TinyHost Upload would be:
-
- DSZ port %1 speed %2 rz %3
-
- The batch file for a ZModem Download would be:
-
- DSZ port %1 speed %2 sz %3
-
-
-
-
-
- Page 20
-
-
-
-
-
-
- 4.4 Shelling-to-DOS
-
- The SHELL descriptor permits setting the minimum security
- level necessary for accessing this command remotely. However, a
- lot of behind-the-scenes effort has to be done to make this work.
-
- In addition to the security level requirement, there must be
- a THREMOTE.BAT file in the *exact* directory the user is in when
- trying to shell out. There is a reason for this: Some SysOps may
- not want their users dropping to DOS in their machine, but they
- might want to make custom menus, programs, etc. available for
- their use. By customizing a THREMOTE batch file for the area the
- user is in, different functions can be implemented using the same
- command.
-
- When executing the Shell command, TinyHost passes two pieces
- of data to the batch file (much like it does when using an
- external protocol). First, the COM port number is passed, then
- the Baud rate. Both are passed as ASCII character strings.
-
- A sample THREMOTE.BAT file has been included with TinyHost.
- This file shows how a shell-to-DOS function can be implemented
- using the DOS CTTY command. When returning from calling this
- batch file, TinyHost will automatically reset the CTTY value to
- CON (the standard console).
-
- Caution should be taken when using the CTTY command to
- implement a DOS Shell. Depending upon circumstances that are
- unclear, when at the DOS level via remote a backspace character
- can sometimes cause the host system to go berserk. Unlimited
- space characters appear to be sent, and a Control-C may or may
- not work in halting them.
-
- When using CTTY, it is recommend that caution be used when
- executing other programs remotely. Direct video writes cannot be
- supported using this function, and system lockup may be
- experienced. When finished with DOS perations, entering "EXIT" at
- the DOS prompt will return to TinyHost. It is suggested that the
- user return to the directory the Shell command was called from.
- Failing to do so could cause the system to lock up.
-
- Also, if one were to hang up or suffer a broken connection
- while in DOS, there is no way for TinyHost to recover and the
- system would stay that way unless manually reset. A good solution
- here is to use a utility called WATCHDOG (or something similar)
- which automatically reboots the computer should the carrier be
- lost.
-
- One final note - there is no check for appropriate security
- level for the Shell-to-DOS function when a user has logged on
- from the local TinyHost keyboard.
-
-
-
-
-
-
-
-
- Page 21
-
-
-
-
-
-
- 5.0 TROUBLESHOOTING TIPS
-
- 5.1 General Comments
-
- Although I have done my best to make TinyHost an easy-to-use
- program, it is difficult (if not impossible) to take all of the
- different port and modem combinations into account. Here are some
- suggestions as to causes and cures of some common problems in
- getting TinyHost to work.
-
- A helpful debug feature has been incorporated into TinyHost.
- By adding the DBUG descriptor to a line in the TINYHOST.CFG file,
- modem response information will be displayed on the local
- monitor's screen. This can sometimes help pinpoint the problem
- area.
-
-
- 5.2 System Hang (Lockup)
-
- This failure is when the computer that is to be used locks up
- as soon as TinyHost is executed. Chances are, the last sign of
- life was the "Initialization..." message being displayed on the
- monitor screen.
-
- This is usually due to a problem with the selected serial
- port. It is possible that the specified serial port does not
- exist in the computer. When trying to use COM3 or COM4, it is
- also possible that an unsupported system interrupt is being used.
- TinyHost expects to use IRQ4 for COM3; IRQ3 for COM4.
-
- TinyHost can also hang the system if a remote user attempts
- to access a floppy drive that does not have a diskette in it.
-
-
- 5.3 Error in User Account
-
- This message will be displayed during the initialization
- process.
-
- This will be caused by an embedded space somewhere within the
- user account information. It could also be caused by an invalid
- security level.
-
-
- 5.4 Modem Fails Reset
-
- This will occur as TinyHost is being initialized. The program
- attempts to reset the modem, and has received no response. The
- expected response is an "OK" string.
-
- A number of causes are possible. Make sure that the modem is
- connected to the specified serial port, and that the default bps
- rate being specified with the BAUD descriptor is one that the
- modem's serial port can support. The modem could also be set (via
- DIP switches or non-volatile RAM) to default to no result codes
- or to numeric instead of verbose. The simplest solution is to
- remove the RESET descriptor from the TINYHOST.CFG file.
-
-
- Page 22
-
-
-
-
-
-
- 5.5 Modem Fails Initialization
-
- TinyHost displays a "Modem Initialization Failure" string
- when this happens.
-
- Again, a number of causes are possible. Make sure that the
- modem is connected to the specified serial port, and that a valid
- BAUD rate setting is being used. The initialization string also
- must have the Q0 and V1 modem commands set as shown (Q0 forces
- the display of result codes; V1 specifies that result codes as
- character strings rather than numbers).
-
-
- 5.6 Phone Call Not Answered
-
- If TinyHost does not answer the incoming call, make sure that
- the phone line is properly plugged into the modem. Also, make
- sure that the RINGBACK descriptor is set to 'N' (No).
-
-
- 5.7 Garbage After Connect
-
- This problem will only be seen by the remote caller, and will
- appear as all garbage characters being received instead of the
- expected Welcome file (if used) or First Name prompt.
-
- This is probably caused by different bps rate settings
- between the TinyHost system and the remote caller. This can be
- due to the Data Rate of the modem being locked to a particular
- value by an initialization command (usually available only with
- error correcting or MNP modems). Try adding (or removing) the
- LOCK command of the BAUD descriptor.
-
- If occasional incorrect characters are received, the problem
- is probably due to a noisy phone connection between the two
- systems.
-
-
- 5.8 Immediate Connect and Logoff
-
- Although difficult to describe, this is when TinyHost answers
- the phone, displays the requests for First Name, Last Name, and
- Password, then logs off without the remote user doing anything.
- The number of times each prompt is displayed can vary.
- Essentially, the remote user is never given the chance to logon.
-
- This is probably caused by an improper echo command setting
- in the Modem Init string. Command Echo must be set to off by
- using the E0 setting in the init string.
-
-
- 5.9 Garbage During Logon
-
- Here, TinyHost answered the call, established communications,
- but the remote user sees occasional garbage echoed during the
- logon process, and he is not permitted access to the system.
-
-
-
- Page 23
-
-
-
-
-
-
- The most likely cause is the remote users communications
- package is incorrectly set. TinyHost expects the connecting
- caller to be using 8-bits, no parity, and 1 stop bit.
-
-
- 5.10 Added Message Not Displayed
-
- This type of error usually occurs when a message is created
- off-line, using an ASCII text editor. What happens is that a
- message added via TinyHost does not appear to be added (appended)
- to the original message file.
-
- This is caused by the ASCII editor used to create the initial
- text file adding an End-Of-Text (EOT or EOF, $1A) to the file
- when it is saved. When adding a message via TinyHost, the new
- message is simply added on to the existing file. The EOT
- character is never erased or overwritten, and when it is seen
- TinyHost assumes that the entire message file has been read. This
- character can be removed from the message file using a hex
- editor, and this problem can be avoided by ensuring that the
- ASCII editor used will not add the EOT character.
-
-
- 5.11 TinyHost Doesn't Hangup
-
- If TinyHost doesn't hangup (disconnect) after a call is
- complete, the problem is probably due to a lack of a modem hangup
- string specification in the TINYHOST.CFG file. Refer to Section
- 2.5 (Modem Requirements) for further information
-
-
-
- 6.0 MISCELLANEOUS INFORMATION
-
- 6.1 What is Shareware?
-
- TinyHost is being released as Shareware, which means that you
- can try the program out *before* you buy it and make sure that it
- will do what you want. If you find it of use, you are requested
- to mail a contribution ($25 suggested) to the author to support
- the continued development of this and other products. Please send
- a check or money order (U.S. funds only) to:
-
- Bruce A. Krobusek
- 5950 King Hill Drive
- Farmington, NY 14425
-
- For your $25 you will receive the latest registered version
- of TinyHost on either 5 1/4 (360K) or 3 1/2 (720K) media (please
- specify). The registered version of TinyHost has the same
- functionality as the Shareware version, but the text requesting
- contributions will be removed. The start-up and exit delays will
- also be removed. You will also receive a registered version of
- the next major release of TinyHost, and notifications of future
- upgrades.
-
- A ready-to-print registration form has been included with
- TinyHost. Simply print out REGISTER.FRM using the DOS PRINT
-
- Page 24
-
-
-
-
-
-
- command, fill it out, and return it with your check or money
- order.
-
- For those interested, quantity discounts are available.
- Custom versions of TinyHost can also be created. Contact the
- author for more information.
-
-
- 6.2 Distributing TinyHost
-
- Even though TinyHost is Shareware it remains a
- copyrighted program. As such, it may be freely copied and
- distributed under the following guidelines:
-
- * The author retains the sole right to sell the program
- for a profit.
- * The author grants users the right to copy and distribute
- TinyHost so long as all program and documentation files
- remain unaltered and are distributed as a group.
- * The program may not be bundled with any other hardware
- or software without the permission of the author.
- * Recognized users groups may charge a maximum of $5 for
- duplication and/or distribution of TinyHost.
-
- Registered users are requested to distribute only the
- Shareware (Unregistered) version of TinyHost. There is no
- difference in functionality, but the Shareware version reminds
- the user to register.
-
-
- 6.3 License Information
-
- Unregistered users are granted a 60-day evaluation period.
- After that time, they are expected to either register TinyHost or
- cease using it.
-
- Registered users may use TinyHost on more than one machine,
- as long as there is no possibility of more than one copy being in
- use at a time. Site licenses are available.
-
-
- 6.4 Warranty Information
-
- The author (Bruce A. Krobusek) disclaims all warranties
- expressed or implied as to the quality and performance of this
- program (TinyHost). The author will not be held liable for any
- lost profits, lost savings, or any other direct, indirect,
- incidental, or consequential damages resulting from the use of
- this program. Your use of this program constitutes your agreement
- to this disclaimer and your release of the author from any form
- of liability or litigation.
-
-
- 6.5 Program Support
-
- Now that the legal technicalities are out of the way, let me
- state that I have done my best to ensure that TinyHost is error
- free. However, that is not to imply that one might not find
-
- Page 25
-
-
-
-
-
-
- errors that have been missed. If a problem should be found,
- contact me through one of the avenues mentioned below and I will
- do my best to correct it. Naturally, the more information that
- can be supplied as to the nature of the bug the better chance I
- will have of finding and squashing it!
-
- I am also interested in receiving any comments or suggestions
- regarding TinyHost. Although I have a few ideas for upcoming
- enhancements, I am always interested in hearing what other people
- think of TinyHost.
-
- Here are some methods that can be used in contacting me,
- starting with the most preferable:
-
- Micro Science BBS - (716) 594-1804 USR Dual Standard /
- V.32bis. This Bulletin Board is located in
- Rochester, NY, and is run by Larry Helber. The
- latest version of TinyHost will always be available
- as a free download. Do a file search (Z) and scan
- for TINYHOST, or download THOST*.ZIP. There is also
- a TinyHost support conference where messages can be
- left and received. No BBS registration is required
- for TinyHost download or support.
-
- Intelec Network - This is a national BBS network
- (Micro Science is a member). There are nodes all
- over the U.S. and Canada, with a few starting to
- appear in other nations. I will monitor the
- Communications, Shareware, and Central conferences
- for any mail addressed to me. Please try to spell
- my name correctly or I may not be notified of a
- message. The latest Intelec node (BBS) list has
- been included as IN-NODE.LST. There is probably
- a BBS that carries Intelec near you.
-
- CompuServe Informational Services - My account number
- is 74106,1335. I usually logon daily.
-
- GEnie - General Electric Network for Information Exchange
- My account name is B.KROBUSEK. I usually logon
- once a week or so.
-
- Internet - via CompuServe:
- 74106.1335@compuserve.com
-
- Home Address - 5950 King Hill Drive
- Farmington, NY 14425
-
-
- 6.6 New User Logons
-
- Although TinyHost does not permit a new user to register,
- there is a way to permit new users to logon. To do this, a user
- account can be created, with a password, and this information can
- be displayed as part of the TinyHost Welcome screen. For
- instance, an account could be created with the name New User, the
- password GUEST, and a security level of 0 (zero). A message could
- be left as part of the TINYHOST.WEL screen stating that new users
-
- Page 26
-
-
-
-
-
-
- should use this account to logon. These users would then be able
- to access the files in the Start-Up directory, read Public mail,
- and could leave any type of mail message. If the security levels
- were set properly (the settings in the included TINYHOST.CFG file
- would be fine), then the new user would not be able to do
- anything else. This would be an easy way of leaving the TinyHost
- system partially accessible to, for instance, the customers of a
- company.
-
-
- 6.7 Message File Format
-
- The TinyHost message files are standard ASCII text files.
- Each file has the extension ".TH". Files for Personal mail
- consist of filename made up of the user's first and last names.
- The user's first name is used, with characters from the last name
- being added to pad the filename for up to 8 characters (the DOS
- limit). For instance, if the user's name is Joe Fabeets, then his
- personal mail file will have the filename JOEFABEE.TH. Public
- mail is stored in PUBLIC.TH; SysOp Comments are stored in
- COMMENTS.TH.
-
- Although TinyHost limits message input to 70 characters per
- line and 20 lines, this is strictly a program limit. A message
- file created off-line does not have to adhere to these
- restrictions (although it is suggested that line length be kept
- under 80 characters). When creating a message off-line, each line
- should be terminated in a carriage return / line feed pair. The
- end of the message should be marked with a period ('.') in the
- first column of the terminating line, followed again by a
- carriage return / line feed. This terminating period is not
- displayed to the reader, but is used by TinyHost to determine the
- end of the message.
-
- By editing the Public Message file offline, the SysOp is able
- to keep desired messages in the file while leaving room for new
- messages.
-
- It is important to note that the text editor used should
- *not* add an End-of Text character (EOT or EOF, $1A) to the
- message file. If it does then messages entered from within
- TinyHost will not be added to that file.
-
-
- 6.8 Logging User Activity
-
- When the LOG feature is enable, TinyHost will keep track of
- user activity in a text file called TINYHOST.LOG. This file will
- be stored in the execution directory (with THOST.EXE, the config
- file, etc.). Monitored activity includes all user logins
- (including failures and wrong passwords), all files uploaded and
- downloaded, and the times of logon and logoff. While the call is
- in progress, information is stored in a file called TINYHOST.TMP.
- After the user has logged off, this file is copied to the normal
- log file. The file format is such that the most recent activity
- is available at the beginning of the file.
-
-
-
- Page 27
-
-
-
-
-
-
- 6.9 Using TinyHost with DesqView
-
- The author has had great success using TinyHost within a
- DesqView window. Although the normal memory requirements are 140K
- or so, more should be made available depending upon the TinyHost
- features used. External protocols, another copy of COMMAND.COM
- (when shelling to DOS), etc. all take up extra memory. Adjust the
- DV memory allocation accordingly.
-
- Also, when trying to shell to DOS from within a DV window, it
- may be necessary to set the "Manage Printer Contention" option to
- YES. I have no idea why - but it works.
-
-
- 6.10 Known Program Limits
-
- A few areas exist where there are some known limitations:
-
- First, I am somewhat confused as to the flexibility of
- 1K-XModem file transfers. The implementation within TinyHost
- supports both CRC and checksum error detection, yet in the
- testing that I have done I have never been able to implement a
- 1K-XModem checksum file transfer because the communications
- package I was using did not support it. As TinyHost is currently
- implemented it will attempt to start a CRC upload, and will retry
- for a total of 30 seconds. If the upload does not begin in that
- time it will fall back to attempting a checksum upload. However,
- after TinyHost falls back to checksum it will not return to a CRC
- mode of transfer. The upshot of all of this is that if it takes
- more than 30 seconds to initiate a 1K-XModem upload using CRC
- error checking then errors will occur and the upload will never
- begin (assuming that your communications package does not support
- 1K checksum). If this happens simply abort the upload and begin
- again.
-
- Secondly, file transfer errors have been observed when using
- the 1K-XModem protocol at 1200 bps with Windows 3.0 and having
- TinyHost running as a background task. The host machine was a
- 16MHz 386SX with 4Mb of RAM. These errors have *not* been seen
- running TinyHost within DesqView at rates of up to 2400 bps. It
- is entirely possible that by judicious time-slice selection
- within Windows that this problem could be eliminated.
-
-
- 6.11 TinyHost Plus
-
- Work is progressing on an extended version of TinyHost called
- TinyHost Plus. TinyHost Plus has been created to permit adding
- many advanced features that may be of interest, yet keep the
- original TinyHost program the way it is - small and simple. This
- is not to say that TinyHost will not be improved - just that it
- will not be burdened with specialty functions.
-
- The first addition to TinyHost Plus will be the capability of
- dialing another TinyHost system and transferring up to 5 files,
- all at a predetermined time, without operator assistance. Those
- interested should contact the author for further information.
- TinyHost Plus will also be released as Shareware.
-
- Page 28
-