home *** CD-ROM | disk | FTP | other *** search
/ Media Share 9 / MEDIASHARE_09.ISO / bbs / vfy_29a.zip / VERIFY!.DOC < prev    next >
Text File  |  1993-07-24  |  33KB  |  713 lines

  1.         **************************************************************
  2.         *                                                            *
  3.         *         VERIFY!.EXE v2.9a Copyright (c) 1992, 1993         *
  4.         *                                                            *
  5.         *                Sagerquist Micro Engineering                *
  6.         *                                                            *
  7.         *                   1414 W. Kerrick Street                   *
  8.         *                    Lancaster, Ca. 93534                    *
  9.         *                    Data  (805) 723-6908                    *
  10.         *                                                            *
  11.         **************************************************************
  12.  
  13.  
  14. DESCRIPTION
  15. -----------
  16.     VERIFY! is a program designed to verify a BBS caller.  When invoked,
  17.     VERIFY! will ask for specific information from the caller, hang up,
  18.     return the call, and ask for the same data for verification.  If the
  19.     information matches, the caller is verified.  ERRORLEVELs are returned
  20.     to the calling batch file which will allow the sysop to make the
  21.     necessary adjustments to the BBS as appropriate.  A log file is kept
  22.     and maintains the caller's name and phone number for future reference.
  23.  
  24. SYNTAX
  25. ------
  26.     VERIFY! [/B:(bbstype)] [/D:(directory)] [/L:(optional log file)]
  27.  
  28.     /B:...  BBS switch. Choose from the list under SUPPORTED BBS's.
  29.  
  30.     /D:...  Directory (no file name) where the BBS's caller information
  31.         file is located.  If this switch is not used, VERIFY! will
  32.         look for this file in the current directory only.
  33.  
  34.     /L:...  Optional log file path and name.  If you want VERIFY! to log
  35.         its operations in your BBS log file, use this switch to
  36.         define the full drive:\path\filename.ext.  If this switch
  37.         is not used, the default file VERIFY!.LOG will be created
  38.         and updated.
  39.  
  40. EXAMPLES
  41. --------
  42.     VERIFY! /B:MH1
  43.     VERIFY! /B:MH1 /D:C:\MEGAHOST\DATA
  44.     VERIFY! /B:WILDCAT /D:C:\WC30\WCWORK /L:C:\WC30\WCWORK\WC.LOG
  45.  
  46.     Note: # is Node Number
  47.  
  48.     SUPPORTED BBS's          Switch:         Caller Info File:
  49.     ----------------------------------------------------------
  50.         MegaHost:                MH#             MEGAHST#.DEF
  51.         PcBoard:                 PCBOARD         DOOR.SYS
  52.         QuickBBS:                QBBS#           DORINFO#.DEF
  53.         RBBS:                    RBBS#           DORINFO#.DEF
  54.         Remote Access:           RA              DOOR.SYS
  55.         Remote Access:           RA#             DORINFO#.DEF
  56.         Teleguard:               TELEGUARD       CHAIN.TXT
  57.         TGP:                     TGP             CHAIN.TXT
  58.         TRIBBS:                  TRIBBS_D        DOOR.SYS
  59.         TRIBBS:                  TRIBBS_T        TRIBBS.SYS
  60.         Wildcat:                 WILDCAT         CALLINFO.BBS
  61.         World War IV:            WWIV            CHAIN.TXT
  62.  
  63. FILES IN THIS ZIP PACKAGE
  64. -------------------------
  65.     VERIFY!.EXE    <----------- Executable program.
  66.     VERIFY!.DOC     <----------- Document for VERIFY!.EXE - this file.
  67.     SETUP.EXE       <----------- Set up program, sets sysop's variables.
  68.     SETUP.DOC       <----------- Document for SETUP.EXE.
  69.     TRAPDOOA.BAT    <----------- Example of a Trap Door batch file.
  70.     TRAPDOOB.BAT    <----------- Example of a GAME Trap Door batch file.
  71.     REGISTER.FRM    <----------- Fill-Out form for registration.
  72.     VERIFY!.DAT    <----------- Created or adjusted by SETUP.EXE, holds 
  73.                      the reg number, modem strings, phone 
  74.                      numbers for screening, etc.
  75.     FIX_DAT.EXE     <----------- Adjusts the file VERIFY!.DAT created by
  76.                                      version 2.7 and earlier.
  77.     4-TRIBBS.ZIP    <----------- Utility programs for use with TRIBBS.
  78.     FILE_ID.DIZ    <----------- Description file for BBS use.
  79.     
  80. OTHER FILES
  81. -----------
  82.     VERIFY!.LST     <----------- Created by VERIFY!, contains a list of
  83.                                      verified callers and their phone numbers.
  84.                      VERIFY! checks this list for duplicate
  85.                                      phone numbers, and to ensure that a caller
  86.                      isn't verified more than once.
  87.     VERIFY!.LOG     <----------- Default log file created by VERIFY!, logs
  88.                                      the caller's actions, for sysop's
  89.                      information, if the /L: switch is not
  90.                      used.
  91.  
  92. SETUP
  93. -----
  94.     SETUP.EXE must be run prior to going on line.  All data, modem
  95.     strings, authorized area codes and prefixes, long distance call
  96.     back times, registration number, etc., must be edited with this
  97.     program.  ALT S saves the new data.  ALT X exits.  Use ALT (n) 
  98.     for the data windows: ALT R for Registration, etc.
  99.  
  100.     SETUP.DOC explains the setup operation in better detail.
  101.  
  102.     Your calling batch file must be edited, or renamed.  TRAPDOOA.BAT
  103.     and TRAPDOOB.BAT is supplied to help you start.
  104.  
  105. VERIFY!.DAT ADJUSTMENT
  106. ----------------------
  107.     If you've been using VERIFY!.EXE v2.7 or earlier, you'll need to
  108.     run FIX_DAT.EXE to adjust the binary file VERIFY!.DAT for use with
  109.     v2.9.  Then run SETUP.EXE to ensure that all data is in its proper
  110.     places.  The program FIX_DAT.EXE will not alter VERIFY!.DAT more
  111.     than once.
  112.  
  113. REGISTRATION AND SUPPORT
  114. ------------------------
  115.     This is important!  Until VERIFY! is registered with the programmer,
  116.     one very important feature is inhibited:  The call screening.  After
  117.     the sysop name and registration number is entered via SETUP.EXE,
  118.     you will be able to screen out toll and long distance calls, and
  119.     designate the time of day to make these calls.  Your number will be
  120.     mailed upon receipt of the registration fee.
  121.  
  122.     Without this feature, (BEFORE REGISTRATION), any request to call back
  123.     verify is granted!  If your BBS is in Los Angeles, Ca., and a caller
  124.     from New York, Ny. requests to be verified, YOUR PHONE BILL WILL
  125.     REFLECT THIS EXPENSIVE CALL!
  126.  
  127.     With this feature (after registration), you can adjust VERIFY! to
  128.     call back verify ONLY local calls, or long distance numbers ONLY
  129.     within the area code(s) you designate.
  130.  
  131.     This is a user supported product.  VERIFY! represents many hours
  132.     of work.  This software is Shareware, not free or public domain.
  133.     You are granted a 30 day limited license to evaluate this program,
  134.     after which you must either register the product, or discontinue its
  135.     use.  If you choose to register this program, please make out a check
  136.     or money order for $15.00 payable to:
  137.  
  138.     Sagerquist Micro Engineering
  139.     1414 W. Kerrick St.
  140.     Lancaster, Ca. 93534
  141.  
  142.     California residents add 8.25% Sales Tax of $1.24, total: $16.24.
  143.  
  144.     Your registration number will be mailed on receipt of your payment.
  145.     It is recommended that you register this program promptly, as the
  146.     toll charges for long distance call backs have the potential to far
  147.     exceed the $15.00 requested!
  148.  
  149.     Payment is a one time investment which allows you all further revisions
  150.     at no extra expense.
  151.  
  152.     Please distribute this program, i.e. place it in your communications
  153.     program download area for others to evaluate and use.  Your comments
  154.     on this program are gladly accepted (requested, actually) at the number
  155.     below.  Please use the BBS as our communication vehicle.  I will gladly
  156.     respond to all comments through the BBS.
  157.  
  158.     The Antelope Valley Aviator
  159.     Carl Sagerquist - Programmer/Sysop
  160.     300-16800 BAUD 24 Hours
  161.     (805) 723-6908
  162.  
  163.     Thank you for supporting VERIFY!!
  164.  
  165. OVERVIEW
  166. --------
  167.     VERIFY! was written by request from a MAXIHOST BBS sysop who had 
  168.     some difficulty with some rude callers.  These people would call
  169.     under fake names and leave foul messages, upload rude material,
  170.     etc.  This sysop needed a program that would validate each caller
  171.     prior to authorizing access.  VERIFY! performs this duty by 
  172.     returning the call to the user, and comparing the name and password
  173.     left behind with the name and password typed in after the call back.
  174.     If verified, VERIFY!.LST keeps a ready reference of verified callers
  175.     and their phone numbers, and is read by VERIFY! to avoid double
  176.     verification, and duplicate phone numbers.  After verification, the
  177.     callers are accountable, and they know it!
  178.  
  179. OPERATION
  180. ---------
  181.     VERIFY! performs a series of steps to complete the task of on-line
  182.     verification.  The caller is given the opportunity to stop the process
  183.     and exit the program, if desired.
  184.      1 - Caller is asked if he wants to be verified for access.
  185.      2 - The caller's name is compared to the names in the file
  186.          VERIFY!.LST.  If found, the caller is advised that verification
  187.          has already been successful, and the program exits.
  188.      3 - Instructions are issued, then caller is asked if he wants to
  189.          proceed.
  190.      4 - The caller must type in his personal information:  
  191.         First and last names are placed for the caller.
  192.         Caller types in a password.
  193.         Caller types in phone number with area code.
  194.         Caller is then asked if the information is correct.  Process
  195.         is repeated if necessary.
  196.      5 - Phone number is checked against all others within the file
  197.          VERIFY!.LST.  If the number provided by the caller is already
  198.          in this list, the verification process stops and the caller is 
  199.          notified to leave a message to the sysop regarding his access.
  200.          It could be that this caller is a previous verified user under
  201.          a fake name!  You might want to place other BBS phone numbers
  202.          here, so a prankster won't have your BBS hook to another BBS!
  203.      6a- REGISTERED VERSION ONLY:  Phone number is checked against the
  204.          local prefixes, non-local prefixes, and area codes from 
  205.          SETUP.EXE.  If the area code and/or prefix is not found, the
  206.          call is not placed, and the caller is notified to leave a
  207.          message to the sysop, regarding BBS access.  This controls the
  208.          sysop phone bill.
  209.      6b- UNREGISTERED VERSION:  All requests for call back verify will
  210.          be granted.  The sysop phone bill will reflect any long distance
  211.          call backs!  It is recommended that you register this program
  212.          promptly, as your increased phone bill will quickly exceed the
  213.          registration price if you have a lot of long distance callers!!!
  214.      7 - BOTH REGISTERED and UNREGISTERED:  Certain calls can be very
  215.          expensive.  Calls to a 976 prefix or area code 900 can be 
  216.          extremely costly.  From SETUP.EXE, define the unauthorized area
  217.          codes or prefixes and these numbers will not be dialed.
  218.          The first prankster that gets upset through your use of this
  219.          program might try to get even by typing in a 976 number, or 911! 
  220.          VERIFY!.EXE is one step ahead!
  221.      8 - REGISTERED VERSION ONLY:  If the call back will be a long distance
  222.          number, and it checks out OK, the time is checked to be within the
  223.          two times defined from SETUP.EXE.  If this function is not
  224.          disabled, (with 0 - 0), VERIFY! will either return the call, or
  225.          advise the caller of the normal times that his call back can be
  226.          placed.
  227.      9 - Modem hangs up.
  228.     10 - The caller's phone number is dialed.
  229.     11 - When the caller answers, he will be given the opportunity to type
  230.          in his name and password again.  VERIFY! compares this data to
  231.          the data left behind before the call back.  If it matches, the
  232.          caller is advised that he is verified.
  233.     12 - If verification is successful, caller is thanked for proper 
  234.          verification.  If the call was local, the caller is returned
  235.          to the BBS.  If the call was long distance, a message is issued
  236.          stating that this is a toll call, and that access will be granted
  237.          on next call.  The phone line is then disconnected.  Without this
  238.          feature, the BBS would continue at the sysop's expense.  If the
  239.          call back was long distance, it could become extremely costly to
  240.          the sysop.  The UNREGISTERED version WILL disconnect on toll
  241.          calls.
  242.     13 - The log file is created or appended with information regarding
  243.          the caller's actions.  The data includes the caller's name, phone
  244.          number (if he got that far), the date and time, and the result of
  245.          VERIFY!.  Results include statements like:
  246.          "*****   VERIFIED!   Local   *****", "Carrier lost", 
  247.          "Decided not to be verified", etc.
  248.          The log file is either VERIFY!.LOG, or the file name defined on
  249.          the command line with the /L: switch.
  250.     14 - On exit of VERIFY!, ERRORLEVELs are returned to the calling
  251.          batch file.  It is then your responsibility to invoke a BBS
  252.          utility program to adjust your caller's BBS security level
  253.          or perform what ever duty you need.  Even if nothing is done
  254.              to the BBS at all, you will have the new name in VERIFY!.LST 
  255.          with the correct phone number.  If you don't understand DOS
  256.          ERRORLEVELs, you'll need to review your DOS manual.
  257.  
  258. AREA CODES AND PREFIXES FROM SETUP.EXE
  259. --------------------------------------
  260.     If VERIFY! calls back the user, how can you keep a tab on your
  261.     phone bill?  This was a major consideration for this program.
  262.     There are 5 different number windows in SETUP.EXE:
  263.  
  264. 1 - Local Area Code for the BBS
  265.  
  266.     This is the local area code at the location where the BBS is run.
  267.  
  268. 2 - Unauthorized Numbers
  269.  
  270.     If the caller's AREA CODE or PREFIX matches any 3 digit number
  271.     on this line, then the call is not placed.  This protects you
  272.     from those very expensive 976 numbers and area code 900 numbers.
  273.     This function is operational whether registered or not.  Place any
  274.     area code or prefix you need.  Be sure 911 is listed here.
  275.  
  276. 3 - LOCAL Prefixes
  277.  
  278.     If the caller's area code matches the Local Area Code for the BBS,
  279.     then these numbers is checked for a match.  If the prefix is found,
  280.     then the callback will be a local call, and the dial string will
  281.     only contain the 7 digit local number.  Defining the local prefixes
  282.     allows you to screen out those toll calls that look like local
  283.     calls.  If this line contains the number 000, then ALL numbers within
  284.     the area code will be called, just as they are before registration.
  285.  
  286.     For example:  These numbers are in the window of Local Prefixes:
  287.               943 944 945 948 949 723 722 264
  288.               and the Local Area Code for the BBS is 805.
  289.  
  290.     (805) 723-6908 is the caller's number.  The caller's area code 805
  291.     matches the BBS's area code, so the Local line is searched for the
  292.     prefix 723.  723 is found, so the dialed number will be 7236908.
  293.     If the prefix is not found, the next set of numbers labeled
  294.     "Authorized toll prefixes within the local area code" is checked.
  295.  
  296. 4 - Authorized toll prefixes within the local area code
  297.  
  298.     If the caller's area code matches the Local Area Code for the BBS,
  299.     and the caller's prefix is NOT found among the Local Prefixes, then
  300.     this group of numbers is checked for the caller's prefix.  If the
  301.     prefix is found, then the callback will be an authorized toll call
  302.     within the local area code.  The dial string will only contain the
  303.     7 digit number.  If this line contained the number 000, then ALL
  304.     numbers within the area code will be called, just as they are before
  305.     registration.  
  306.  
  307.     For example:  These numbers are on the line of 
  308.               Authorized toll prefixes...:
  309.               724 942
  310.  
  311.     The search in 3 above was unsuccessful, so this line is searched for
  312.     the prefix.  (805) 942-0889 is the caller's number.  The line is
  313.     searched for the prefix 942.  942 is found, so the dialed number
  314.     will be 9420889.  If the prefix is not found, then the call back
  315.     is not within the local area code.  This allows you to designate the
  316.     toll calls within your local area code you will allow to be called.
  317.  
  318.     Depending on your entry from SETUP.EXE, the number dialed here may
  319.     or may not begin with a '1'.  The number in this example will either 
  320.     be 9420889 or 19420889.
  321.  
  322. 5 - Authorized long distance area codes
  323.  
  324.     If the caller's area code does not match the BBS's, the prefix
  325.     checks are skipped, and this group of numbers is searched for the 
  326.     area code.  If it is found, the number is called.  If the number
  327.     000 is in this line, then ALL long distance calls will be placed,
  328.     just as they are before registration.  
  329.  
  330.     For example:  These numbers are on the line of 
  331.               Authorized long distance area codes:
  332.               602 818 213
  333.  
  334.     (602) 555-1212 is the caller's number.  602 is found, but the number
  335.     is incomplete.  First, the number 1 is appended to the dial string,
  336.     then the full number, resulting in the dial string being 16025551212.
  337.     If the area code is still not found, then the call is not placed.  
  338.  
  339.     SYSOP HAS FULL CONTROL OF WHAT NUMBERS MAY BE CALLED!
  340.     (REGISTERED VERSION ONLY!!!!!)
  341.  
  342.     NOTE: If the number called is a toll call (inside or outside the local
  343.           area code), the line will hang up (be disconnected) after 
  344.           verification.  This controls the sysop phone bill.  Caller is
  345.           advised that access is authorized on next call.
  346.  
  347. REDIALS
  348. -------
  349.     VERIFY! can reattempt the phone call if the first attempt does not
  350.     work.  Often, an unsuspecting family member will pickup the phone
  351.     on VERIFY!'s call back and break the modem connection.  Sometimes,
  352.     a caller is confused and just needs to try it more than once.
  353.     Designate the amount of redial attempts through SETUP.EXE, Other
  354.     window.
  355.  
  356. TOLL CALL BACK HOURS
  357. --------------------
  358.     Most long distance carriers (phone companies) offer reduced rates
  359.     within certain times.  You can define your call back time for
  360.     long distance calls to be within these times.  These times are 
  361.     defined in SETUP.EXE, Other window.  The numbers to be placed
  362.     are the hours from the 24 hour clock.  1:00 pm is 13, 12:00 am is
  363.     24, etc.  Hours only, no minutes.  
  364.     Example:   21   6   is for performing long distance call backs 
  365.     between 9:00 pm and 6:00 am.
  366.  
  367.     If you do not require screening your long distance call back time, 
  368.     place the number 0 (zero) for both:   0   0   to disable this 
  369.     function, allowing long distance call back at any time.
  370.  
  371. CARRIER MONITOR
  372. ---------------
  373.     VERIFY! monitors the Carrier Detect.  If a caller hangs up, or gets
  374.     disconnected, VERIFY! will exit clean and return to the BBS.  The 
  375.     BBS will then reset and await the next call.  You can test this
  376.     feature by typing the ~ character at any prompt.
  377.  
  378. TIME LIMIT
  379. ----------
  380.     The caller has 60 seconds to complete each entry, or carrier is
  381.     dropped and the program exits.  That way, if your caller's computer
  382.     freezes, you aren't stuck on line!  This feature was added to
  383.     disallow remote's control of the carrier.  Without this feature, the 
  384.     call back could last as long as the remote caller would allow.  If 
  385.     the call back was long distance, your phone bill could sink you.
  386.     You can test this feature by typing the  (^A) character at any prompt
  387.     or waiting 60 seconds without input.
  388.  
  389. ALTERNATE OPERATION
  390. -------------------
  391.     If you want to use VERIFY! to screen users of on-line games, place a
  392.     copy of VERIFY!.EXE and its data files in the game directory.  Copy
  393.     DOOR.SYS (or the appropriate BBS file) to this directory.  The game
  394.     Trap Door must be available to all callers.  After verification, 
  395.     allow entry into the game.  On exit of the door, run your BBS utility 
  396.     program for adjusting security levels for the caller's next entry.
  397.     BATCH file commands should check the security level of the caller and
  398.     he/she should be entered into the VERIFY! program, or directly into 
  399.     the game.  This protects the BBS game door from having callers play
  400.     under multiple names, because two callers cannot be automatically
  401.     verified from the same originating phone number.  If its legitimate,
  402.     like brother and sister both want to play the game, the message left
  403.     to the sysop will explain, and you'll have to manually adjust the
  404.     security for that player.  See the file TRAPDOOB.BAT included in
  405.     this ZIP package for an example of this operation.
  406.     
  407. BBS ADJUSTMENTS
  408. ---------------
  409.     VERIFY! does no adjustments to your BBS itself.  You, as sysop, are
  410.     responsible to code your calling batch file appropriately to effect
  411.     change.  The returned ERRORLEVELs from VERIFY! will allow you to
  412.     to do this.
  413.  
  414. ERRORLEVELS
  415. -----------
  416.     VERIFY! will return different errorlevels for further processing
  417.     by the calling batch file:
  418.  
  419.     ERRORLEVEL  0 means the caller is verified, and all data matched.
  420.               Call back was LOCAL.
  421.     ERRORLEVEL  1 means the caller is verified, and all data matched.
  422.               Call back was LONG DISTANCE.
  423.     ERRORLEVEL  2 means the caller has already been verified.
  424.     ERRORLEVEL  3 means the caller reentered the wrong data on callback.
  425.               Caller not verified.
  426.     ERRORLEVEL  4 means no modem on callback. Caller not verified.
  427.     ERRORLEVEL  5 means the caller's phone number duplicates another
  428.               verified caller's phone number.  Could be a bogus call.
  429.     ERRORLEVEL  6 means the callback phone number is not authorized.
  430.     ERRORLEVEL  7 means long distance callback not within time envelope.
  431.     ERRORLEVEL 10 means the caller decided not to be verified.
  432.     ERRORLEVEL 15 means the remote input time limit (60 seconds) exceeded.
  433.     ERRORLEVEL 20 means carrier was dropped.
  434.     ERRORLEVEL 30 means the BBS file (DOOR.SYS, DORINFO1.DEF, CALLINFO.BBS,
  435.               CHAIN.TXT) cannot be found, or another file could not be
  436.               be opened or created.
  437.     ERRORLEVEL 35 means an unsupported COM port is in use.
  438.     ERRORLEVEL 40 means the log file could not be written to.
  439.  
  440. SAMPLE BATCH FILE FOR MEGAHOST
  441. ------------------------------
  442.  
  443.     @echo off
  444.     cls
  445.     C:
  446.     CD\MEGAHOST\VERIFY!
  447.     VERIFY! /B:MH1 /D:C:\MEGAHOST\DATA /L:C:\MEGAHOST\DATA\MEGAHST1.LOG
  448.     IF ERRORLEVEL 1 IF NOT ERRORLEVEL 2 goto SET
  449.     IF ERRORLEVEL 0 IF NOT ERRORLEVEL 1 goto SET
  450.     GOTO END
  451.     :SET
  452.     CD\MEGAHOST
  453.     rem  MEGAAPI1 svc 5 will increase the caller's security while on line.
  454.     rem  MEGAAPI1 svc 7 will increase the caller's time limit while on line.
  455.     MEGAAPI1 5 10, 7 60
  456.     :END
  457.     CD\MEGAHOST\UPLOADS
  458.  
  459. PRANKSTER CONTROL
  460. -----------------
  461.     If everyone was honest and respectful, there would be no need for this 
  462.     program.  Some people spray paint on walls.  Some people throw rocks
  463.     through windows.  The same mentality will call a BBS incognito and
  464.     raise havoc with the sysop and his users through foul messages, 
  465.     uploaded dirty files, etc.  When a prankster is caught by this program,
  466.     he may feel a desire to get even.  This program was written with this
  467.     prankster mentality in mind.  The controlling features are:
  468.  
  469.     1 - 60 second timer for user input.  A caller cannot hook you to his
  470.         computer indefinitely, thus controlling your phone bill (long
  471.         distance/toll calls).
  472.     2 - No duplicate phone numbers on automatic verify.
  473.         - A new caller with the same phone number of a previously verified
  474.           caller could be the same person under a different name!
  475.         - A prankster might try to make your BBS hook up to another BBS!
  476.           Place ALL possible BBS numbers into the file VERIFY!.LST, and 
  477.           this will not happen!
  478.     3 - Numbers defined as UNAUTHORIZED NUMBERS (through SETUP.EXE) are
  479.         screened out.  A prankster might try to make your computer call
  480.         a 976 or area code 900 number.  Also, if the call back was 
  481.         911-####, the 911 would connect you to the emergency dispatch in 
  482.         your city!  These numbers should be placed in the window labeled:
  483.         UNAUTHORIZED NUMBERS through SETUP.EXE.  This feature is 
  484.         operational prior to registration.
  485.     4 - Long distance numbers are not called unless the area code is
  486.         designated.  (REGISTERED VERSION ONLY).  Lets face it, even honest
  487.         people will use this program without compensation to the programmer
  488.         if every feature was operational!  Use caution, though, ALL long
  489.         distance calls are placed until VERIFY! is registered, and your
  490.         phone bill will quickly exceed the $15.00 requested.
  491.     5 - Log file appended after caller is done.  The result of the caller's
  492.         actions are placed in the file VERIFY!.LOG with the date and time.
  493.  
  494.     If you find a need for more techniques on handling pranksters, please
  495.     make the suggestion via my BBS at (805) 723-6908.
  496.  
  497. CREDITS
  498. -------
  499.     Many thanks to Tim Gimber of Phoenix, Az., who suggested this program,
  500.     directed its features, and tested its operation.
  501.  
  502.     Many thanks to David Swift of Waldorf, Md., for advising me of the
  503.     fatal error fixed with revision 2.2.  This problem didn't occur on
  504.     my modem, and I still don't understand why.  VERIFY! is now 
  505.     compatible with many more modems.
  506.  
  507.     Many thanks to Kent Craig of Vincennes, In., for advising me of the
  508.     methods used by the Indiana phone system:  Toll Local numbers there
  509.     require the number to begin with a '1'.  Now, through SETUP.EXE, 
  510.     the sysop may choose to prefix a Toll Local number with a '1'.  
  511.     Verify! is now compatible with more phone systems.
  512.  
  513.     Thanks to Raymond Swigirt of Baltimore, Md., for requesting room
  514.     necessary to handle all 281 of the local prefixes available in
  515.     Baltimore.  The suggestion motivated me to revise the serial port
  516.     routines, command line switches, and shared file access for multi-
  517.     tasking environments.
  518.  
  519.     Thanks to James Mann of Littlerock, CA. for requesting the TRIBBS 
  520.     support programs and testing them online.
  521.  
  522. DISCLAIMER
  523. ----------
  524.     This program is distributed as is.  No warranty, either expressed or
  525.     implied is offered and the programmer is not responsible for any
  526.     damages or expenses that may occur through the use of this program.
  527.     The user shall determine its suitability.  Please communicate any 
  528.     difficulties with the programmer through the BBS at (805) 723-6908.
  529.  
  530. History
  531. -------
  532.     Version 2.9a - 07/24/93 - Revised programs that support TRIBBS v4.0+,
  533.                   all of which are found in the file
  534.                   "4-TRIBBS.ZIP".  
  535.  
  536.     Version 2.9  - 07/11/93 - Utilities created for security level
  537.                   adjustment on a TRIBBS BBS, through
  538.                   TRIBBS.SYS.
  539.  
  540.                 - Fatal error found:  If all data in the
  541.                   file VERIFY!.LST is removed, yet the zero
  542.                   length file still exists, the program 
  543.                   would freeze.  FIXED!
  544.  
  545.     Version 2.8  - 04/04/93 - Comm port routines overhauled.  Now, all
  546.                   data transmitted and received is interrupt
  547.                   driven, and more thorough error checking
  548.                   is performed.
  549.  
  550.                 - All file access is performed in share mode.
  551.                   Files are "locked" prior to writing which
  552.                   allows for a clean operation in a multi-
  553.                   tasking environment where a multi-line BBS
  554.                   might be operating VERIFY! simultaneously
  555.                   on more than one node.
  556.  
  557.                 - Command line switches overhauled.
  558.  
  559.                 - VERIFY! may now log its actions into the
  560.                   BBS's log file through the /L: command
  561.                   line switch.
  562.  
  563.                 - Amount of definable local prefixes is now
  564.                   510, double from v2.6.
  565.  
  566.                 - MEGAHOST now supported through MEGAHST#.DEF
  567.                   rather than DOOR.SYS.
  568.  
  569.                 - TRIBBS now supported through TRIBBS.SYS and
  570.                   DOOR.SYS.
  571.  
  572.                 - WILDCAT! v3.0+ now supported through the 
  573.                   new format of DOOR.SYS.
  574.  
  575.     Version 2.7  - ??/??/?? - Beta test only, not released to the public.
  576.  
  577.     Version 2.6  - 04/24/92 - Local Prefixes, Toll Local Prefixes, and
  578.                   L/D Area Codes are increased from 3 lines
  579.                   to 9 lines of 67 characters.
  580.  
  581.                 - Toll Local call back number may be prefixed
  582.                   with a 1 if necessary.  Use SETUP.EXE to
  583.                   make the adjustment.
  584.  
  585.     Version 2.5  - 04/08/92 - Added an option allowing the caller to quit.
  586.                   For example:
  587.                   "Are you ready to proceed? (Y/n)"
  588.                   is replaced with
  589.                   "Are you ready to proceed? (Y/n/q)"
  590.                   where 'Y' is default, and 'Q' exits the
  591.                   program.
  592.  
  593.                 - SETUP.EXE adjusted.  New features:
  594.                 - If data is changed, you are prompted to save.
  595.                 - <CTRL> Right Arrow moves the curser to the
  596.                   beginning of the next number in the "Numbers"
  597.                   window.
  598.                 - <CTRL> Left Arrow moves the curser to the
  599.                   beginning of the previous number in the
  600.                   "Numbers" window.
  601.                 - Up Arrow/Down arrow moves to different lines
  602.                   in the "Numbers" window.
  603.  
  604.     Version 2.4  - 01/01/92 - SETUP.EXE added to automate the setup
  605.                   operation.  All data from SETUP.EXE is
  606.                   written to VERIFY!.DAT, which is now a
  607.                   binary structure file.
  608.                 - VERIFY!.NUM is no longer needed.
  609.                 - MAXIHOST no longer listed as supported
  610.                   since M-VERIFY v 1.09 is still available.
  611.  
  612.     Version 2.3  - 12/15/91 - Beta test version not released.
  613.  
  614.     Version 2.2  - 12/10/91 - Fatal error found with some modems (not mine)
  615.                   that would disrupt the comm port interrupts.
  616.                   Unnecessary code removed that set some modem
  617.                   parameters.  Thanks, Dave!
  618.                 - More BBS's supported:
  619.                     PcBoard
  620.                     Remote Access
  621.                     Teleguard
  622.                     TGP
  623.                     World War IV
  624.  
  625.     Version 2.1  - 10/14/91 - Bug in toll/long distance call timer fixed.
  626.                 - When the toll/ld call is screened out, the
  627.                   current time is displayed before the message
  628.                   explaining the time window for toll calls.
  629.                 - Caller is now informed how many attempts
  630.                   will be made to call back and connect.
  631.  
  632.     Version 2.0  - 10/10/91 - Program renamed from M-VERIFY to VERIFY!.
  633.                 - Supports MAXIHOST, MEGAHOST, QBBS, RBBS,
  634.                   PCBoard, and WILDCAT.  Syntax different
  635.                   while retaining the old method.
  636.                 - No adjustments to MAXIHOST or its assoc'd
  637.                   files anymore.
  638.                 - ERRORLEVELS returned.  The sysop must make
  639.                   the appropriate adjustments to the BBS 
  640.                   depending on the ERRORLEVEL returned.
  641.  
  642.     Version 1.09 - 11/29/91 - Modem parameters (BAUD, Parity, Stop bits,
  643.                   and Character length) are no longer set.
  644.                   This was causing trouble with some modems.  
  645.                   Unfortunately, not mine.  This may have
  646.                   been the culprit causing trouble with
  647.                   earlier versions.  These parameters are
  648.                   set by the BBS anyway, so there's no harm
  649.                   in removing this code.  Same code removed
  650.                   from version 2.1.
  651.  
  652.     Version 1.08 - 09/16/91 - Sorry about that, another bug got by me.
  653.  
  654.     Version 1.07 - 09/16/91 - Some code rewritten for efficiency and
  655.                                   safety.  No changes in operation from 1.06.
  656.  
  657.     Version 1.06 - 09/15/91 - Fixed FATAL ERROR in delay function that
  658.                   violated memory not its own which eventually
  659.                   caused system to crash.
  660.  
  661.     Version 1.05 - 08/09/91 - 'REDIALS = ' added to M-VERIFY.DAT to
  662.                   control the amount of attempts to recontact
  663.                   the caller.
  664.  
  665.     Version 1.04 - 08/07/91 - Long Distance call back time now definable,
  666.                   since most long distance carriers allow for
  667.                   cheaper rates at different times.
  668.                 - Removed the advertisement at beginning of
  669.                   output on registered version.
  670.  
  671.     Version 1.03 - 07/28/91 - Fixed bug in log file entry that says 
  672.                                   "**** VERIFIED  (Long Distance) ****"
  673.                                   when caller really "Already Verified".
  674.                 - Fixed bug that created M-VERIFY.LOG in the
  675.                   root directory if M-VERIFY.EXE was called
  676.                   without the proper command line parameters.
  677.  
  678.     Version 1.02 - 07/26/91 - Registration required.  Without the reg #,
  679.                   all call backs are placed regardless of the
  680.                   area code or resultant phone charges.  Call
  681.                   back screening enabled with registration.
  682.                 - M-VERIFY now screens OUT certain area codes
  683.                   or prefixes, like 976 and 900, while author-
  684.                   ized numbers are screened IN.  (Sysop can
  685.                   define these numbers in M-VERIFY.NUM).
  686.                                 - M-VERIFY now checks for toll calls within
  687.                                   the local area code.  Caller is disconnected
  688.                                   after verification if callback is a toll 
  689.                                   call.
  690.                 - ERRORLEVELs 1 through 5 become 2 through 6,
  691.                   and ERRORLEVEL 1 redefined: ERRORLEVEL 1 
  692.                   returned if caller is verified and call back 
  693.                   is long distance.  ERRORLEVEL 0 if call back
  694.                   is local.
  695.  
  696.     Version 1.01 - 07/21/91 - Delay added after "Returning Your Call" sent,
  697.                   as it was being cut off by hanging up too
  698.                   quick.
  699.                 - Bug in hangup routine:  After verification,
  700.                   if call back was long distance, dropping DTR
  701.                   wasn't enough to disconnect.  Hangup routine
  702.                   fixed.
  703.  
  704.     Version 1.0  - 07/19/91 - Initial release.
  705.  
  706.     Version 0.2  - 07/14/91 - Beta test released to requesting official,
  707.                       not to be released to public.  Partially 
  708.                   completed.
  709.  
  710.     Version 0.1  - 07/09/91 - Beta test released to requesting official,
  711.                   not to be released to public.  Partially 
  712.                   completed.
  713.