home *** CD-ROM | disk | FTP | other *** search
/ Beijing Paradise BBS Backup / PARADISE.ISO / software / BBSDOORW / ACIDO100.RAR / ACID.DOC next >
Text File  |  1995-04-13  |  76KB  |  1,612 lines

  1.  
  2.                           ┌───┐   ┌────   ──┌──   ┌───┐
  3.                          ┌│──┐│  ┌│───   ──┌│─   ├│──┐│
  4.                          ││  ││  ││        ││    ││  ││
  5.                          ││  ││  ││        ││    ││  ││
  6.                          │├──┤│  ││        ││    ││  ││
  7.                          │┴  │┴  │└────   ──┘──  │├───┘
  8.                          ┴   ┴   └────   ──┘──   └───┘
  9.  
  10.  
  11.             ACID - The (A)dapatable (C)alller (I)dentification (D)oor
  12.  
  13.                                   Version 1.00
  14.  
  15.                      Documentation for DOS and OS/2 versions
  16.  
  17.                                 By Paul Sidorsky
  18.  
  19.                          Copyright 1994, 1995 - ISMWare
  20.  
  21.  
  22.  
  23.  
  24.  
  25.  
  26.  
  27.  
  28.  
  29.  
  30.  
  31.  
  32.  
  33.  
  34.  
  35.  
  36.  
  37.  
  38.  
  39.  
  40.  
  41.  
  42.  
  43.  
  44.  
  45.  
  46.  
  47.  
  48.  
  49.  
  50.  
  51.  
  52.  
  53.  
  54.  
  55.  
  56.  
  57. ===============================================================================
  58.  
  59.                                 Table of Contents
  60.  
  61. ===============================================================================
  62.  
  63. 1.0 Introduction  . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
  64.     1.1 What ACID Does  . . . . . . . . . . . . . . . . . . . . . . . . 1
  65.     1.2 Why I Wrote ACID  . . . . . . . . . . . . . . . . . . . . . . . 1
  66.     1.3 DOS And OS/2 Versions . . . . . . . . . . . . . . . . . . . . . 1
  67.     1.4 Shareware Notice  . . . . . . . . . . . . . . . . . . . . . . . 2
  68.     1.5 Using This Manual + Quick Install . . . . . . . . . . . . . . . 2
  69.     1.6 Compatibility Issues  . . . . . . . . . . . . . . . . . . . . . 2
  70.  
  71. 2.0 Explanation Of Terms Used In This Manual  . . . . . . . . . . . . . 4
  72.     2.1 Caller ID Terms . . . . . . . . . . . . . . . . . . . . . . . . 4
  73.     2.2 BBS Terms . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
  74.     2.3 Phone Terms . . . . . . . . . . . . . . . . . . . . . . . . . . 5
  75.     2.4 Verification Terms  . . . . . . . . . . . . . . . . . . . . . . 5
  76.  
  77. 3.0 Installation & Configuration  . . . . . . . . . . . . . . . . . . . 7
  78.     3.1 System Requirements . . . . . . . . . . . . . . . . . . . . . . 7
  79.     3.2 Unpacking ACID  . . . . . . . . . . . . . . . . . . . . . . . . 8
  80.     3.3 Configuring ACID  . . . . . . . . . . . . . . . . . . . . . . . 8
  81.     3.4 Installing ACID Into Your BBS . . . . . . . . . . . . . . . . . 9
  82.     3.5 Command Line Parameters . . . . . . . . . . . . . . . . . . . . 10
  83.     3.6 Errorlevels . . . . . . . . . . . . . . . . . . . . . . . . . . 11
  84.  
  85. 4.0 Example Uses For ACID . . . . . . . . . . . . . . . . . . . . . . . 13
  86.     4.1 Simple CID Protection . . . . . . . . . . . . . . . . . . . . . 13
  87.     4.2 Using ACID As A "Sentry"  . . . . . . . . . . . . . . . . . . . 15
  88.     4.3 Using ACID To Emulate A CBV . . . . . . . . . . . . . . . . . . 16
  89.     4.4 The Author's Setup  . . . . . . . . . . . . . . . . . . . . . . 18
  90.     4.5 Uses For Certain Features . . . . . . . . . . . . . . . . . . . 20
  91.  
  92. 5.0 External Support Files  . . . . . . . . . . . . . . . . . . . . . . 22
  93.     5.1 ASCII, ANSI, AVATAR, And RIP Files  . . . . . . . . . . . . . . 22
  94.     5.2 Other External Files  . . . . . . . . . . . . . . . . . . . . . 23
  95.  
  96. 6.0 Final Words . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
  97.     6.1 Plans For Future Versions . . . . . . . . . . . . . . . . . . . 25
  98.     6.2 How To Contact The Author . . . . . . . . . . . . . . . . . . . 25
  99.     6.3 Where To Get ACID . . . . . . . . . . . . . . . . . . . . . . . 25
  100.     6.4 Credits And Acknowledgements  . . . . . . . . . . . . . . . . . 26
  101.  
  102.  
  103.  
  104. ===============================================================================
  105.  
  106.                                1.0 - Introduction
  107.  
  108. ===============================================================================
  109.  
  110.     Security is an important concern for most, if not all, BBS sysops.  Up
  111. until recently, Call Back Verifiers (CBVs) were the only means available to
  112. verify a user.  Unfortunately, CBVs aren't reliable.  Anybody who wants to
  113. bypass one can do so with ease.  So, sysops are seeking new, more reliable
  114. means of verifying their users.
  115.  
  116.     Somewhat recently, the phone companies have been introducing services like
  117. Call Display, which let you see who's calling you before you even answer the
  118. phone.  This lead to the development of Caller ID (CID) modems, which can take
  119. this information and send it to your computer, just like a modem result code.
  120. Caller ID is the ultimate BBS user verification tool.  Since the CID
  121. information is usually dumped into a log (for example, by a mailer like
  122. BinkleyTerm), sysops can maintain a complete trace log of who calls their
  123. system, and when.
  124.  
  125.     1.1 - What ACID Does
  126.  
  127.     ACID takes the information from this log and uses it to regulate access to
  128. your system.  You can use it every time a caller logs on to verify the person
  129. using the account is the "right" person, or you can just use it for new users
  130. to upgrade their access.  Either way, you maintain complete control over who
  131. accesses your system.
  132.  
  133.     1.2 - Why I Wrote ACID
  134.  
  135.     A few months ago, a user I knew shockingly demonstrated to me how easily he
  136. could bypass a CBV.  Fortunately for me, I was about to purchase a new modem
  137. with Caller ID, so I didn't have to worry for too long about security breaches.
  138. Once I got this modem and was hooked up to my phone company's Call Display
  139. service, I looked around for Caller ID software, but nothing suited my needs.
  140. So, I wrote ACID.  I'm releasing it as shareware in the hope that others will
  141. find it as useful as I do.
  142.  
  143.     1.3 - DOS And OS/2 Versions
  144.  
  145.     ACID comes in two versions:  DOS and OS/2.  The DOS version works with BBS
  146. systems running under DOS.  The OS/2 version will work with OS/2-based BBS
  147. systems, or with DOS-based BBS systems running under OS/2.
  148.  
  149.     It is recommended that if you are running a DOS-based system under OS/2
  150. that you use the OS/2 version of ACID, because the OS/2 version is faster and
  151. more friendly to your system.  However, you can use the DOS version under OS/2
  152. without problems, if you wish.
  153.  
  154.     In this manual, where differences between versions exist, they will be
  155. referred to specifically.  The DOS version will be referred to as ACID/DOS, and
  156. the OS/2 version as ACID/2.  Otherwise (if the version isn't specified), the
  157. information applies to both versions.
  158. ===============================================================================
  159.  ACID v1.00 Documentation    <-+->    Copyright 1994, 1995    <-+->    Page 1
  160.  
  161.  
  162.     1.4 - Shareware Notice
  163.  
  164.     ACID is a shareware program.  You are permitted to use it for a 30 day
  165. trial-period without charge.  After this period, you are required to register
  166. your copy with the author.  For more information on registration and how to
  167. register, see the file named REGISTER.DOC that came in the ACID archive.
  168.  
  169.     The complete shareware licence, along with distribution restrictions, can
  170. be found in LICENCE.DOC.  Please be sure to read this files so you do not
  171. inadvertantly break the licence.  Remember, though shareware programs are
  172. usually freely distributable, you must still follow the guidelines set forth by
  173. the program author.
  174.  
  175.     1.5 - Using This Manual + Quick Install
  176.  
  177.     This manual is written with a "top-down" approach, which means that the
  178. easiest way to read it is to start at the top and read every section in order
  179. until you get to the end.  Doing this will give you an intimate knowledge of
  180. all of ACID's uses, features, and operation requirements.
  181.  
  182.     However, that is not the only way to use this manual.  The reading of
  183. certain key sections will give you enough knowledge to install ACID
  184. successfully and effectively into your system.  If you're in a hurry and don't
  185. want to read this entire manual, it is recommended you read/skim the following
  186. parts of this manual, in the order listed:
  187.  
  188.     1) The entire chapter called "Explanation Of Terms Used In This Manual" so
  189.        you know what certain terms mean.
  190.     2) The entire chapter entitled "Installation And Configuration".
  191.     3) The example section called "Simple CID Protection".
  192.     4) The entire chapter entitled "External Support Files".
  193.  
  194.     If you are having problems with ACID, please consult this manual before
  195. contacting the author.  Though I will answer questions no matter how common or
  196. redundant they are, I don't take kindly to people not reading things before
  197. asking, so please check the manual first.  Besides, the more informed you are
  198. about ACID, the easier solving problems will be.
  199.  
  200.     1.6 - Compatibility Issues
  201.  
  202.     ACID was written and tested using RemoteAccess 2.02+, BinkleyTerm 2.59a, a
  203. SupraFAXModem 288e, and Caller ID services provided by AGT in Calgary, Alberta,
  204. Canada.
  205.  
  206.     Unfortunately, because Caller ID in the BBS world is relatively new, it is
  207. hard to obtain information on how various modem manufacturers implement the
  208. reporting of Caller ID information to the computer.  So, I've done the most
  209. logical thing. I went ahead and wrote ACID with the information I have, and
  210. made it as configurable as possible to allow for possible minor diffferences.
  211.  
  212.     However, it's possible ACID may still not be compatible with some modems,
  213. and this is something I want to fix ASAP.  So if you find ACID won't work for
  214. you as it is now, _PLEASE_ tell me so I can remedy this!  If you report
  215. incompatibility issues to me, I will likely be able to correct them WITHIN A
  216. ===============================================================================
  217.  ACID v1.00 Documentation    <-+->    Copyright 1994, 1995    <-+->    Page 2
  218.  
  219. FEW __HOURS__!  I'm not afraid to release three or four updates right off the
  220. bat to resolve these kinds of problems, so please tell me about them rather
  221. than giving up on ACID.
  222.  
  223.     The most likely incompatibility will be that a certain modem does not
  224. displaying information in the predicted way.  ACID expects to find one item of
  225. CID info on each line, and expects each item to be prefixed by a header, like
  226. this:
  227.  
  228. DATE = 0327
  229. TIME = 1234
  230. NAME = SIDORSKY PAUL
  231. NMBR = 4036860449
  232.  
  233.     The actual CID information is not important, but the way it is identified
  234. is.  For example, ACID would not work with a modem that provided the CID
  235. information all on one line.
  236.  
  237.     If you find a problem like this, or any other problem that you can't solve
  238. by changing the configuration settings, please contact me using one of the
  239. means described in the section called "How To Contact The Author".  As I said
  240. above, I can probably correct the problem within hours and release a new
  241. version the same day.  I'll also send you the new release at my own expense as
  242. a thank you for reporting the problem (sorry, no free registrations
  243. though...<grin>).
  244.  
  245.     Naturally, suggestions and comments are also welcome.  Please send them to
  246. me as described above.  I'm especially interested to hear if you have
  247. successfully implemented ACID with modems or phone companies other than the
  248. ones I've been able to test ACID with (as described above), and how you did it.
  249.  
  250.  
  251.  
  252.  
  253.  
  254.  
  255.  
  256.  
  257.  
  258.  
  259.  
  260.  
  261.  
  262.  
  263.  
  264.  
  265.  
  266.  
  267.  
  268.  
  269.  
  270.  
  271.  
  272.  
  273.  
  274. ===============================================================================
  275.  ACID v1.00 Documentation    <-+->    Copyright 1994, 1995    <-+->    Page 3
  276.  
  277.  
  278. ===============================================================================
  279.  
  280.                  2.0 - Explanation Of Terms Used In This Manual
  281.  
  282. ===============================================================================
  283.  
  284.     In order to make both reading this manual and setting up ACID easier, this
  285. manual frequently refers to certain terms.  This chapter defines these terms.
  286. In addition, it also tells what ACID does in relation to these terms, to make
  287. the context of their use more apparent.  Think of this chapter as a glossary.
  288.  
  289.     NOTE:  Although in this chapter, the terms appear in quotation marks for
  290. clarity, the do not appear in quotation marks throughout the rest of this
  291. manual.
  292.  
  293.     2.1 - Caller ID Terms
  294.  
  295.     "Caller ID", "CID" - Stands for "Caller IDentification".  This is what a
  296. modem or phone reads between the first and second rings of a phone call, and
  297. tells you or the modem who is calling.
  298.  
  299.     "CID Information", "CID Info." - This refers to the text that your modem
  300. sends to the computer one it has detected and read the Caller ID.  Usually,
  301. this text shows up in a log file generated by your mailer or BBS software.  In
  302. fact, ACID currently needs this information to be in a log file in order for
  303. it to work properly.
  304.  
  305.     "CID Date", "CID Time", "CID Name", "CID Number", "CID Message(s)" - These
  306. terms all refer to the various information given by the CID Info.  "CID Date"
  307. and "CID Time" are the date and time that the call was registered,
  308. respectively.  "CID Name" is the name of the person calling as given by the CID
  309. Information.  "CID Number" is the phone number of the person calling, as given
  310. by the CID Info.  A "CID Message" is a part of the CID Info. which your modem
  311. cannot parse, so it is passed directly to the computer.  My modem calls these
  312. "Messages", hence their name in this manual.
  313.  
  314.     "CID Log" - The log file that ACID reads to find the CID Info.  Not to be
  315. confused with ACIDCID.LOG, which is the file that ACID uses to log all of the
  316. CID Info. after it has been read.
  317.  
  318.     2.2 - BBS Terms
  319.  
  320.     "BBS Door", "Door" - A seperate program not part of the BBS software, which
  321. must be run within a "shell".  ACID is a BBS Door.
  322.  
  323.     "Drop File" - This is a file that your BBS software writes to tell external
  324. doors, such as ACID, information about the user currently logged on.  Examples
  325. include DORINFOx.DEF and DOOR.SYS.
  326.  
  327.     "Local Mode", "Run(ning) Locally" - Not to be confused with a "Local Call".
  328. These terms refer to ACID being run either using COM0 or a 0bps rate.  This
  329. always occurs when, say, you or somebody else is logged on locally and is
  330. typing into the computer from which the BBS is run off of.  Since no phone call
  331. occurs in "Local Mode", ACID simply displays a message and exits without
  332. ===============================================================================
  333.  ACID v1.00 Documentation    <-+->    Copyright 1994, 1995    <-+->    Page 4
  334.  
  335. performing any kind of verification.
  336.  
  337.     2.3 - Phone Terms
  338.  
  339.     "Area Code" - A phone code that designates the area you are calling from.
  340. This is three digits in North America, and has variable lengths elsewhere.
  341.  
  342.     "Phone Number", "Number" - A user's phone number.  Usually this refers to a
  343. phone number PLUS the "Area Code", but this is not always so.  When just the
  344. phone number is being referred to, this will be mentioned in the appropriate
  345. section.
  346.  
  347.     "Local Call(er)", "Calling Locally", "Local" - Not to be confused with
  348. "Local Mode".  These terms refer to a caller who is calling from inside the
  349. geographical "Local Calling Area".  That is, the area to which you can dial
  350. calls from your BBS's number(s) without paying any extra charges.  The opposite
  351. of a "Local Call", is, of course, a "Long Distance" call.  Note that the term
  352. "Local" on its own is only used when it is clear that the call type is being
  353. discussed.
  354.  
  355.     "Long Distance Call(er)", "LD Call(er)", "LD" - These terms refer to a
  356. caller who is calling from outside your local calling area, i.e. somebody
  357. calling outside of your "Local Calling Area".  Often, this caller will not have
  358. the same area code as yourself, but this is not always the case.
  359.  
  360.     2.4 - Verification Terms
  361.  
  362.     "Action" - This term refers to the action that is performed by ACID in a
  363. certain situation. The configuration keywords that end in Action control these
  364. "Actions".
  365.  
  366.     "Good Call(er)", "Okay Call(er)" - These terms refer to when a caller
  367. passes the verification process.  If the caller's name and/or number is not
  368. "Duplicate", "Bad", or "Mismatched", the caller is presumed to be "Good" or
  369. "Okay".  Unless "Local" or "Long Distance" calls are mentioned specifically,
  370. these terms refer to both types of calls.  The words "Good" and "Okay" may also
  371. be applied to the user's name or phone number, which means that the specific
  372. item has passed verification as described above.
  373.  
  374.     "Unknown Call(er)" - This term refers to when ACID cannot get the phone
  375. number from the CID Info. but the CID Info. is already present.  Usually this
  376. means that the area the person from calling from does not yet have CID service.
  377. This manual will also refer to "Unknown Name" and the "Unknown Message".  Both
  378. mean that the name or message (respectively) is unknown.  Note that for
  379. "Unknown Message", this does not mean a message ACID doesn't recognize, but
  380. instead means the message that signifies an Unknown Name.  However, only
  381. callers with an "Unknown Number" will be treated as "Unknown".
  382.  
  383.     "Private Call(er)" - This term is similar to "Unknown Call(er)", but
  384. instead means that ACID has got the CID info. and found certain parts to be
  385. private, or "blocked".  As with "Unknown", only a "Private Number" will
  386. actually mean the call will be treated as "Private".
  387.  
  388.     "Mismatched Call(er)", "Mismatch" - These terms mean that the CID Number
  389. did not match one of the phone numbers listed in the user's account
  390. ===============================================================================
  391.  ACID v1.00 Documentation    <-+->    Copyright 1994, 1995    <-+->    Page 5
  392.  
  393. information. This is only applicable if the drop file you are using can pass
  394. this information to ACID.
  395.  
  396.     "Duplicate Call(er)", "Duplicate Number", "Dupe" - This term refers to when
  397. ACID encounters a duplicate caller.  A duplicate caller, or "Dupe" for short,
  398. is a caller who has a "Duplicate Number".  Duplicate numbers are detected by
  399. matching the phone number in the CID Info. to the numbers contained in
  400. ACID.DUP.  If a match occurs, the caller is considered a dupe.  Dupe callers
  401. are also detected by looking through ACIDUSER.DAT.  If a number occurs in more
  402. than one user record, the caller is considered a dupe.
  403.  
  404.     "Bad Call(er)", "Bad Name", "Bad Number", "Bad" - This term means that ACID
  405. has determined the caller to be "Bad", i.e. the caller has failed verification.
  406. Detection of either a "Bad Name" or "Bad Number" means that the caller will be
  407. considered "Bad".  A "Bad Name" is detected by matching both the CID Name and
  408. the user's login name to the info. in ACIDNAME.BAD.  If a string in
  409. ACIDNAME.BAD occurs in either of the above names, the caller has a "Bad Name".
  410. "Bad Numbers" work the same way, but use ACIDNMBR.BAD for detection instead.
  411. Also, only the CID Number will be used when checking for a "Bad Number".
  412.  
  413.     "Good After" - This term occurs either in "Good After Bad" or "Good After
  414. Mismatch".  It refers to a user who's last call was either "Bad" or a
  415. "Mismatch", but is now "Good", i.e. has now passed verification.  Note that if
  416. the Action for a "Good After" call is defined a certain way, the "Goodness" of
  417. the current call may be cancelled out, which is handy if you don't want people
  418. to be able to call after having either a Bad or Mismatched call.
  419.  
  420.  
  421.  
  422.  
  423.  
  424.  
  425.  
  426.  
  427.  
  428.  
  429.  
  430.  
  431.  
  432.  
  433.  
  434.  
  435.  
  436.  
  437.  
  438.  
  439.  
  440.  
  441.  
  442.  
  443.  
  444.  
  445.  
  446.  
  447.  
  448. ===============================================================================
  449.  ACID v1.00 Documentation    <-+->    Copyright 1994, 1995    <-+->    Page 6
  450.  
  451.  
  452. ===============================================================================
  453.  
  454.                        3.0 - Installation & Configuration
  455.  
  456. ===============================================================================
  457.  
  458.     Installation of ACID consists of three steps:
  459.  
  460.     1) Unpacking the archive.
  461.     2) Configuration.
  462.     3) Installation in your BBS.
  463.  
  464.     The following sections will guide you through these steps.
  465.  
  466.     3.1 - System Requirements
  467.  
  468.     To use ACID, you will require the following:
  469.  
  470.     Hardware:
  471.  
  472.     - An 8086 or compatible computer.
  473.     - A hard drive, and about 256kB of free hard drive space.
  474.     - A modem capable of processing Caller ID information.
  475.  
  476.     Software:
  477.  
  478.     - If you're running ACID/DOS, you need an operating system fully compatible
  479.       with MS-DOS 3.3 or higher, such as MS-DOS, PC-DOS, or OS/2.  Your BBS
  480.       software must run under DOS.
  481.     - If you're running ACID/2, you need OS/2 version 2.0 or above.  Your BBS
  482.       software can run under OS/2 in native mode, _OR_ under DOS in an OS/2 VDM
  483.       session.
  484.     - BBS software capable of producing one of the following drop files:
  485.       DORINFOx.DEF, DOOR.SYS, EXITINFO.BBS, CALLINFO.BBS, SFDOORS.DAT,
  486.       CHAIN.TXT.  If you want to use ACID's security alteration capability, the
  487.       BBS must be able to reread one of the above drop files (except for
  488.       DORINFOx.DEF or CALLINFO.BBS, which are _NOT_ updated by ACID).
  489.     - A working BBS that can capture Caller ID information in a log file.  Many
  490.       BBS programs capture and log input from the modem.  If your BBS does not
  491.       do this, most front-end mailers do.
  492.     - ACID/DOS requires a FOSSIL driver for communication with the modem.
  493.       Most DOS BBS programs use a FOSSIL driver already, so this should not be
  494.       a problem.  For those that don't, FOSSILs can usually be run temporary
  495.       inside a shell from the BBS.  Consult the FOSSIL documentation for more
  496.       details.
  497.     - If you wish to run ACID/2 in conjunction with a DOS BBS, you need a
  498.       program called OS2EXEC.  This program is available from the author's
  499.       system, as well as many many other systems with OS/2 files.
  500.  
  501.     Other:
  502.  
  503.     - You will also need a Caller ID compliant service from your phone company.
  504.       In my area this service is called Call Display, but it may have different
  505.       names elsewhere.  If you're in doubt, check with your phone company about
  506. ===============================================================================
  507.  ACID v1.00 Documentation    <-+->    Copyright 1994, 1995    <-+->    Page 7
  508.  
  509.       a service that lets your phone display who's calling before you answer
  510.       the phone.
  511.  
  512.     3.2 - Unpacking ACID
  513.  
  514.     The first step to installing ACID is to unpack the ACID archive.  You've
  515. probably already done this, but in case you haven't, here's how:
  516.  
  517.     1) Create a new directory for ACID.
  518.     2) Change to this directory.
  519.     3) Unpack the ACID archive, which is named ACIDD100.* for ACID/DOS and
  520.        ACIDO100.* for ACID/2.  The extension will be different depending on
  521.        which archiver ACID has been compressed with.  For unpacking
  522.        instructions, see the documentation for the required archiver.
  523.  
  524.     ACID does not _need_ its own directory, but having one is recommended.  If
  525. you don't wish to do this, however, you can unpack ACID*.* from the ACID
  526. archive to whatever directory you wish.  Then if you ever want to uninstall
  527. ACID, all you need to do is delete ACID*.*.
  528.  
  529.     Users of ACID/DOS can move onto the next step now.  Users of ACID/2,
  530. however, have one additional small step.  Copy DRS2V2B3.DLL to a directory on
  531. your OS/2 LIBPATH.  The recommended directory is \OS2\DLL.  DRS2V2B3.DLL is
  532. the Doors/2 Dynamic Link Library, which ACID/2 uses for its communications,
  533. keyboard input, and screen output.  Doors/2 is a multithreaded, 32-bit library,
  534. so execution speed is lightning fast.
  535.  
  536.     The reason for copying DRS2V2B3.DLL to \OS2\DLL is so that other doors
  537. which may need the Doors/2 DLL can find it automatically.  There are an
  538. increasing number of OS/2 doors written with Doors/2, so it is very likely that
  539. a door you get in the future will need this DLL.  By using a DLL, we door
  540. authors don't need to include the door code in our executable files, which
  541. means you save lots of space because you only have one copy of the door code on
  542. your hard drive.  For every Doors/2 door you run, you save between 100 and 200
  543. kilobytes. If you're running ten Doors/2 doors, then that's over a megabyte
  544. (and as much as 2MB) of space saved!  For information on how to get other doors
  545. written using Doors/2, see the section entitled "Where To Get ACID".
  546.  
  547.     3.3 - Configuring ACID
  548.  
  549.     First of all, rename the file called SAMPLE.CFG (which is distributed in
  550. the ACID archive) to ACID.CFG.  This is the configuration file that ACID uses.
  551. It will be referred to as ACID.CFG from this point on.  The reason the file is
  552. distributed as SAMPLE.CFG is so people upgrading to new versions of ACID will
  553. not accidentally overwrite their configuration files, which is something the
  554. author has had happen a few times with other programs.  <grin>
  555.  
  556.     To configure ACID, load ACID.CFG into an ordinary text editor.  DOS's
  557. EDIT.EXE or OS/2's E.EXE will work fine.  Once this file is loaded, edit the
  558. keyword settings to suit your needs.  The settings described in ACID.CFG are
  559. fully commented (self-documented), and you should have no problem with them.
  560. However, you might wish to read the chapter entitled "Example Uses For ACID" to
  561. get an idea of how to set ACID up to perform certain tasks.  If you know what
  562. your verification needs are, though, then this isn't neccessary.
  563.  
  564. ===============================================================================
  565.  ACID v1.00 Documentation    <-+->    Copyright 1994, 1995    <-+->    Page 8
  566.  
  567.     For those who prefer configuration programs to ASCII configuration files,
  568. please bear with me for this release.  I don't like ASCII config. files either,
  569. and an editor will be included in a future release.  A configuration editor is
  570. in the works, but I have to register the toolkit that I'm using to help create
  571. it before I distribute it, otherwise I could run into legal trouble.  <grin>
  572. In the meantime, don't let the size of ACID.CFG scare you.  There is not very
  573. much to actually configure (most of it is just descriptions), and many of the
  574. keywords have the same possible settings.
  575.  
  576.     There is one optional (but highly recommended) step to configuring ACID,
  577. and that is editing the External Support Files.  You will almost certainly want
  578. to edit the files that ACID displays to the user.  Instructions for doing this
  579. is described in the section entitled "ASCII, ANSI, AVATAR, And RIP Files" which
  580. appears in chapter four of this manual.  Information on the other external
  581. files and whether you should edit them appears in the section called "Other
  582. External Files", also in chapter four of this manual.
  583.  
  584.     3.4 - Installing ACID Into Your BBS
  585.  
  586.     !!!BEFORE YOU BEGIN!!! - If you are running ACID/2, BE SURE TO READ THE
  587. INFORMATION IN THE LAST TWO PARAGRAPHS OF THE SECTION CALLED "Unpacking ACID"!
  588. If you don't do this, ACID may fail to work correctly!
  589.  
  590.     For the most part, you install ACID into your BBS like you would any other
  591. door.  However, consider these things when deciding where and how to run ACID:
  592.  
  593.     1) ACID looks for its configuration and data files in the same directory
  594.        that ACID.EXE is located in, and will look for door drop files in the
  595.        current working directory.  For this reason, you need only to call ACID
  596.        directly from your menus, like so:
  597.  
  598.        \RA\PROGS\ACID\ACID.EXE
  599.  
  600.        \RA\PROGS\ACID is the directory that you unpacked ACID to.  Also, if
  601.        you're using ACID/2, change ACID.EXE to ACID2.EXE, and be sure to read
  602.        the section entitled "Command Line Parameters" for further
  603.        !!!IMPORTANT!!! installation information.  People using ACID/2 with
  604.        DOS-based BBS programs should consult the documentation for OS2EXEC to
  605.        find out what modifications are needed to the command line that runs
  606.        ACID/2.
  607.  
  608.        No batch file is needed unless you wish to use one.  If you do, you're
  609.        on your own, though the batch file you use for ACID probably won't be
  610.        much different than one you use for any other door.
  611.  
  612.     2) If you are running a BBS that can _reread_ one of the drop files listed
  613.        below upon returning from a door shell, and wish to use ACID's user
  614.        verificiation capabilities, you need to make sure that ACID is not
  615.        prevented from rewriting the drop file.  ACID will rewrite the drop file
  616.        in the same place that it reads it from (using the same name), so
  617.        usually this will not be a problem.
  618.  
  619.        You must also make sure that the rewritten version of the drop file is
  620.        placed (either directly by ACID or by a COPY command) in the right
  621.        location, i.e. the path your BBS expects to find it in.  If this is not
  622. ===============================================================================
  623.  ACID v1.00 Documentation    <-+->    Copyright 1994, 1995    <-+->    Page 9
  624.  
  625.        the case, your BBS may fail to recognize any changes made by ACID, and
  626.        verification will be useless!
  627.  
  628.        The drop files that ACID will write upon exit (for rereading by your
  629.        BBS) are:  DOOR.SYS, EXITINFO.BBS (QBBS 2.6x and 2.7x, and RA 1.xx and
  630.        2.xx versions), SFDOORS.DAT, and CHAIN.TXT.
  631.  
  632.     3) Nearly all of the time, you'll want ACID to run automatically, rather
  633.        than have the user press a key to activate ACID.  This gives the maximum
  634.        amount of security because there is no way the user can avoid going
  635.        through verification.  However, this is not a requirement, and whether
  636.        or not you run ACID automatically depends on how you want to use it.
  637.  
  638.        You also need to decide whether you'll be running ACID each time a user
  639.        calls, only when new users call, or somewhere else to suit your
  640.        individual needs.  This will affect which menu(s) you run ACID from, and
  641.        is important in getting ACID to work properly.
  642.  
  643.        The example uses, described in the chapter called "Example Uses For
  644.        ACID", will guide you in deciding where and how to run ACID.
  645.  
  646.     Finally, be sure to consult the section entitled "Command Line Parameters"
  647. so you know what to put on the command line. As mentioned above, THIS IS OF
  648. PARAMOUNT IMPORTANCE IF YOU ARE RUNNING ACID/2!!
  649.  
  650.     3.5 - Command Line Parameters
  651.  
  652.     This section describes the command line parameters than can be passed to
  653. ACID.  There are different parameters for ACID/DOS and ACID/2, as well as some
  654. common parameters used by both versions.
  655.  
  656.     Both versions of ACID support this parameter:
  657.  
  658.     /NODExx   This parameter is used to set the node number.  Replace xx with
  659.               the actual node number, and do not put a space between /NODE and
  660.               the number.  You need this parameter if you are running a
  661.               multinode system, and are using a drop file that does not contain
  662.               the node number, such as DORINFOx.DEF.  It is optional on
  663.               single-node systems, and on multinode systems that use drop files
  664.               with the node number in them.  This is the only special
  665.               requirement for multinode operation.  ACID/DOS will automatically
  666.               detect if SHARE.EXE is in use, and use file sharing if SHARE
  667.               compatibility is found.  ACID/2 will always use file sharing,
  668.               because OS/2 has it built in.
  669.  
  670.     ACID/DOS has no additional command line parameters.
  671.  
  672.     If you are running ACID/2, there are three additional command line
  673. parameters that you may or may not need to use, depending on your system
  674. requirements.  These are described below.  The case (upper or lower) of these
  675. parameters is unimportant, as is the order that they appear in.
  676.  
  677.     /PORT     The /PORT parameter is used to tell ACID/2 to expect a comport
  678.               number, rather than a communications handle (which ACID/2 expects
  679.               by default).  Maximus/2 is the only system I am aware of that
  680. ===============================================================================
  681.  ACID v1.00 Documentation    <-+->    Copyright 1994, 1995    <-+->    Page 10
  682.  
  683.               passes a comm handle, so you will most likely need this
  684.               parameter.  Consult your BBS manual for more details.  NOTE:  If
  685.               you are running a DOS-based BBS and using ACID/2, BE SURE TO
  686.               INCLUDE THIS PARAMETER!
  687.  
  688.     /NICE     ACID/2 can use one of three different priorities:  Nice, Normal,
  689.               and Nasty.  The Normal priority is used by default, and should
  690.               suit most systems.  The /NICE parameter invokes Nice (low)
  691.               priority, which will suit any system that uses all-OS/2 software
  692.               and is not strained heavily (by you doing other work in the
  693.               foreground, etc.).  Nasty mode is described along with the /NASTY
  694.               parameter below.
  695.  
  696.     /NASTY    This parameter invokes Nasty (high) priority.  If you run a lot
  697.               of CPU-hogging software, you may need the /NASTY parameter.  DOS
  698.               doors are notorious for hogging the CPU, as are applications that
  699.               do a lot of computations or disk I/O.
  700.  
  701.     3.6 - Errorlevels
  702.  
  703.     ACID exits with certain errorlevels, depending on the situation it
  704. encountered.  This allows you to react to what ACID read from the CID
  705. informatiomn in a batch file, and respond to it with other programs and such.
  706. The errorlevels ACID uses are as follows:
  707.  
  708.      Errorlevel | Meaning
  709.     ------------+--------------------------------------------------------------
  710.           0     | No action taken.  Should only occur if ACID is run locally.
  711.        *  1     | The CID info was not found.  Appropriate action was taken.
  712.        *  2     | Caller was local and passed verification.
  713.        *  3     | Caller was long distance and passed verification.
  714.        *  4     | Caller was local and treated as unknown.
  715.        *  5     | Caller was long distance and treated as unknown.
  716.        *  6     | Caller was local and treated as private.
  717.        *  7     | Caller was long distance and treated as private.
  718.        *  8     | Caller had a dupe. number and was under the max. dupe limit.
  719.        *  9     | Caller had a dupe. number and the dupe limit was reached.
  720.        * 10     | Caller was a bad caller and no maximums have been reached.
  721.        * 11     | Caller was bad and the consec. bad call limit was reached.
  722.        * 12     | Caller was bad and the total bad call limit was reached.
  723.        * 13     | Caller had a number mismatch and no maximums were reached.
  724.        * 14     | Caller had a number mismatch & the consec. limit was reached.
  725.        * 15     | Caller had a number mismatch and the total limit was reached.
  726.        * 16     | Caller passed verification after a previous bad call.
  727.        * 17     | Caller passed verification after a previous number mismatch.
  728.         100     | ERROR - Can't create/load user record.
  729.         101     | ERROR - Can't react to the situation.
  730.         102     | ERROR - Can't open a needed file.
  731.         200     | User hung up.  Normal verification was still completed.
  732.         201     | Sysop hung up the user with Alt-H.  Verification was done.
  733.         202     | User ran out of time.  Normal verification was still done.
  734.         203     | User was inactive too long.  Verification was still done.
  735.         204     | Sysop ejected user with Alt-D.  Verification was done.
  736.         255     | Critical door error (no drop file, etc.)
  737.  
  738. ===============================================================================
  739.  ACID v1.00 Documentation    <-+->    Copyright 1994, 1995    <-+->    Page 11
  740.  
  741.     * These errorlevels correspond directly to the Action keywords in ACID.CFG.
  742.       The LAST action performed determines the errorlevel that will be used.
  743.       See ACID.CFG itself for more information on these keywords.
  744.  
  745.  
  746.  
  747.  
  748.  
  749.  
  750.  
  751.  
  752.  
  753.  
  754.  
  755.  
  756.  
  757.  
  758.  
  759.  
  760.  
  761.  
  762.  
  763.  
  764.  
  765.  
  766.  
  767.  
  768.  
  769.  
  770.  
  771.  
  772.  
  773.  
  774.  
  775.  
  776.  
  777.  
  778.  
  779.  
  780.  
  781.  
  782.  
  783.  
  784.  
  785.  
  786.  
  787.  
  788.  
  789.  
  790.  
  791.  
  792.  
  793.  
  794.  
  795.  
  796. ===============================================================================
  797.  ACID v1.00 Documentation    <-+->    Copyright 1994, 1995    <-+->    Page 12
  798.  
  799.  
  800. ===============================================================================
  801.  
  802.                            4.0 - Example Uses For ACID
  803.  
  804. ===============================================================================
  805.  
  806.     This chapter details some example uses for ACID in real-life situations.
  807. You can duplicate the examples exactly as explained here, or use them as
  808. guidelines for your own system's needs.
  809.  
  810.     In the examples to follow, the following security levels are used/assumed:
  811.  
  812.      5 - "Twit" (bad) user.  Can only leave a message to sysop or logoff.
  813.     10 - New user.  The level granted to users when they sign up.
  814.     25 - Limited access user.  Limited access to file areas and some other
  815.          unimportant BBS functions (configuration menu, etc.).
  816.     50 - Fully verified user.
  817.  
  818.     For all of the examples, it is also assumed that you do NOT allow users to
  819. change their phone numbers (via a BBS menu).  This decreases the chances of
  820. users being able to bypass some of ACID's actions by altering their phone
  821. numbers.  While this isn't necessary to run ACID, it is HIGHLY recommended.
  822.  
  823.     All of the sample configurations can be copied directly and used as
  824. ACID.CFG.  You will obviously have to make minor changes to the securities and
  825. paths so suit your needs, but not much more.
  826.  
  827.     4.1 - Simple CID Protection
  828.  
  829.     This example shows how to use ACID in a simple, effective way.  It deals
  830. fairly leniently with all callers, and upgrades good callers.  The sample .ASC
  831. files included with ACID are to complement this example setup.  The SAMPLE.CFG
  832. file (also included with ACID) contains the settings listed in this section.
  833.  
  834.     Since this example uses user security altering, you need to have a BBS
  835. capable of rereading its drop files.  More information on this is described
  836. above in the section called "Installing ACID Into Your BBS".  To use this
  837. example effectively, you need to run ACID every time a user calls your system.
  838. The CID strings use work with a SupraFAXModem 288e, and the mailer used is
  839. BinkleyTerm 2.59a, though the mailer does not matter very much, as it only
  840. affects the first two settings.  The BBS used is RemoteAccess.
  841.  
  842.     The ACID.CFG settings for simple CID protection are as follows:
  843.  
  844. ACIDPath                 D:\RA\PROGS\ACID\
  845. CIDLog                   D:\RA\BINKLEY.LOG
  846. CIDLogScanBytes          275
  847. CIDChangeUnderscores     Yes
  848. CIDStartString             DATE_=_
  849. CIDAreaCodeLength         3
  850. CIDPhoneNumberLength     7
  851. CIDYourAreaCode          403
  852. CIDDateString             DATE_=_
  853. CIDTimeString             TIME_=_
  854. ===============================================================================
  855.  ACID v1.00 Documentation    <-+->    Copyright 1994, 1995    <-+->    Page 13
  856.  
  857. CIDNameString             NAME_=_
  858. CIDNumberString          NMBR_=_
  859. CIDMessageString         MESG_=_
  860. CIDNameUnknown             Unknown_Caller
  861. CIDNamePrivate             Private_Caller
  862. CIDNumberUnknown         O
  863. CIDNumberPrivate         P
  864. CIDMessageUnknown         08014F
  865. CIDMessagePrivate         080150
  866. CIDMessageLongDist         06014C
  867. MandatoryInfoItems         Date Time Number
  868. InfoNotFoundAction       HangUp
  869. OkayAction               Security>50
  870. LDOkayAction             Security>50
  871. UnknownAction            Security=25
  872. LDUnknownAction          Security=25
  873. PrivateAction            Security=25
  874. LDPrivateAction          Security=25
  875. MaxDupeCallers           1
  876. MaxDupeAction            Security=25
  877. MaxConsecBadCalls        3
  878. MaxTotalBadCalls         5
  879. MaxConsecMismatchCalls   5
  880. MaxTotalMismatchCalls    100
  881. FirstBadCallAction       Security=25
  882. MaxBadCallAction         Security=5
  883. FirstMismatchCallAction  None
  884. MaxMismatchCallAction    Security=25 Force
  885. GoodAfterBadAction       Security=25 Force
  886. GoodAfterMismatchAction  Restore
  887. AddAllNumbersToLogs      Yes
  888. StorePhoneNumbers        Data Voice
  889.  
  890.     This example has the following characteristics:
  891.  
  892.     - The CID info is in BinkleyTerm's log.
  893.     - CID strings for the SupraFAXModem 288e.
  894.     - The phone number lengths used are for the North American format.
  895.     - Standard user security upgrading if the verification is good.  Because
  896.       ACID is run with every call in this setup, the security is not changed if
  897.       it is higher than 50.  Otherwise, callers with special access would lose
  898.       this access each time they call!
  899.     - Unknown and Private callers get limited access, presumably until you can
  900.       verify them more thoroughly.
  901.     - Two callers from each number are allowed.  This allows for, say, a
  902.       brother and sister to call from the same number without hassle.
  903.     - Further duplicates get limited access so you can deal with their
  904.       situation on a case-by-case basis.
  905.     - Bad callers are given limited access (so they can "plead their case")
  906.       for a short time, then are downgraded to Twit access.
  907.     - Mismatches are not considered a major offence.  Five consecutive
  908.       mismatches are tolerated, after which a user's access will be lowered,
  909.       just in case.  Good calls after a mismatch restore the user's security to
  910.       what it was.
  911.     - Good calls after a Bad call will be granted limited access.
  912. ===============================================================================
  913.  ACID v1.00 Documentation    <-+->    Copyright 1994, 1995    <-+->    Page 14
  914.  
  915.     - Data & Voice phone numbers are stored for dupe detection.  The CID number
  916.       is not stored for simplicity's sake.
  917.  
  918.     This setup should work for most leisure BBSs where problem users are rare
  919. and verification is little more than a formality or form of insurance.  It is
  920. pretty straightforward (after reading the keyword descriptions in ACID.CFG),
  921. and can be easily modified in many ways to suit your needs.
  922.  
  923.     4.2 - Using ACID As A "Sentry"
  924.  
  925.     This setup shows how to use ACID if your BBS can't reread drop files (as
  926. described under "Installing ACID Into Your BBS"), or if you don't need ACID's
  927. user security manipulation features and just want something to guard against
  928. bad callers.  It is probably the easiest type of setup, because many of the
  929. settings can be ignored entirely.  In this setup, ACID should be run every time
  930. a user calls, but _can_ be run just once (for new users) using the same
  931. settings.
  932.  
  933.     The CID strings used are again for a SupraFAXModem 288e.  BinkleyTerm 2.59a
  934. is again the mailer, and RemoteAccess is the BBS software.  This setup should
  935. work with nearly any BBS/mailer combination, though, because it does not need
  936. any complicated drop file information, and does not need to have the BBS reread
  937. the drop file.
  938.  
  939.     The settings for "sentry" mode are:
  940.  
  941. ACIDPath                 D:\RA\PROGS\ACID\
  942. CIDLog                   D:\RA\BINKLEY.LOG
  943. CIDLogScanBytes          275
  944. CIDChangeUnderscores     Yes
  945. CIDStartString             DATE_=_
  946. CIDAreaCodeLength         3
  947. CIDPhoneNumberLength     7
  948. CIDYourAreaCode          403
  949. CIDDateString             DATE_=_
  950. CIDTimeString             TIME_=_
  951. CIDNameString             NAME_=_
  952. CIDNumberString          NMBR_=_
  953. CIDMessageString         MESG_=_
  954. CIDNameUnknown             Unknown_Caller
  955. CIDNamePrivate             Private_Caller
  956. CIDNumberUnknown         O
  957. CIDNumberPrivate         P
  958. CIDMessageUnknown         08014F
  959. CIDMessagePrivate         080150
  960. CIDMessageLongDist         06014C
  961. MandatoryInfoItems         Date Time Number
  962. InfoNotFoundAction       HangUp
  963. OkayAction               None
  964. LDOkayAction             None
  965. UnknownAction            None
  966. LDUnknownAction          None
  967. PrivateAction            HangUp
  968. LDPrivateAction          HangUp
  969. MaxDupeCallers           9999
  970. ===============================================================================
  971.  ACID v1.00 Documentation    <-+->    Copyright 1994, 1995    <-+->    Page 15
  972.  
  973. MaxDupeAction            None
  974. MaxConsecBadCalls        1
  975. MaxTotalBadCalls         1
  976. MaxConsecMismatchCalls   9999
  977. MaxTotalMismatchCalls    9999
  978. FirstBadCallAction       HangUp
  979. MaxBadCallAction         HangUp
  980. FirstMismatchCallAction  None
  981. MaxMismatchCallAction    None
  982. GoodAfterBadAction       None
  983. GoodAfterMismatchAction  None
  984. AddAllNumbersToLogs      Yes
  985. StorePhoneNumbers        All
  986.  
  987.     This example has the following characteristics:
  988.  
  989.     - The CID info is in BinkleyTerm's log.
  990.     - CID strings for the SupraFAXModem 288e.
  991.     - The phone number lengths used are for the North American format.
  992.     - Okay and Unknown callers are considered harmless and allowed.
  993.     - Private callers are considered unwanted and hung up on.
  994.     - Duplicate callers are permitted gratuitously.
  995.     - Bad callers are immediately dumped off the system.
  996.     - Mismatches are a non-issue, because it's assumed that the phone number is
  997.       not available in the drop file.
  998.     - Good callers are always allowed, even if the user was previously calling
  999.       from a bad number.
  1000.     - All numbers are stored.  This is done simply for your own convenience, as
  1001.       duplicate callers are not an issue here.
  1002.  
  1003.     This example is obviously extremely lenient, but still very effective,
  1004. because it completely shuts down unwanted users.  There are many ways to modify
  1005. this setup to be more "tough".  For example, duplicate users could be protected
  1006. against.  Also, if your BBS can write a drop file that contains phone
  1007. number(s), you can use ACID's mismatch detection features.  DOOR.SYS is one of
  1008. the more popular drop files that has phone numbers in it.  You can also deal
  1009. with Unknown and Long Distance callers differently if you need to.  The
  1010. possibilities are many, and this isn't even using ACID to it's full potential!
  1011.  
  1012.     4.3 - Using ACID To Emulate A CBV
  1013.  
  1014.     ACID can emulate a CBV (CallBack Verifier) with regard to how it behaves.
  1015. CBVs, as you probably know, are a one-time method of verifying a new user.
  1016. Most CBVs also have support for Bad User and Dupe User detection, but do not do
  1017. much more than toss them off the system or deny them verification.
  1018.  
  1019.     This setup will make ACID behave more-or-less like a CBV, which is handy if
  1020. you just want to use ACID as a drop-in replacement for your CBV.  You will
  1021. natually need to be able to upgrade the user's security, so be sure your BBS
  1022. can reread its drop file, as described in the section called "Installing ACID
  1023. Into Your BBS".
  1024.  
  1025.     Again, because it's the only CID modem I have access to, the CID strings
  1026. are for a SupraFAXModem 288e.  The mailer used is BinkleyTerm 2.59a, though
  1027. that really doesn't matter very much.  With this setup, ACID should only be run
  1028. ===============================================================================
  1029.  ACID v1.00 Documentation    <-+->    Copyright 1994, 1995    <-+->    Page 16
  1030.  
  1031. once, typically from a new user menu.  You can choose to run ACID
  1032. automatically, or have the user select "Verification" from a menu and run ACID
  1033. from there.
  1034.  
  1035.     Here are the settings to use to mimic a CBV:
  1036.  
  1037. ACIDPath                 D:\RA\PROGS\ACID\
  1038. CIDLog                   D:\RA\BINKLEY.LOG
  1039. CIDLogScanBytes          275
  1040. CIDChangeUnderscores     Yes
  1041. CIDStartString             DATE_=_
  1042. CIDAreaCodeLength         3
  1043. CIDPhoneNumberLength     7
  1044. CIDYourAreaCode          403
  1045. CIDDateString             DATE_=_
  1046. CIDTimeString             TIME_=_
  1047. CIDNameString             NAME_=_
  1048. CIDNumberString          NMBR_=_
  1049. CIDMessageString         MESG_=_
  1050. CIDNameUnknown             Unknown_Caller
  1051. CIDNamePrivate             Private_Caller
  1052. CIDNumberUnknown         O
  1053. CIDNumberPrivate         P
  1054. CIDMessageUnknown         08014F
  1055. CIDMessagePrivate         080150
  1056. CIDMessageLongDist         06014C
  1057. MandatoryInfoItems         Date Time Number
  1058. InfoNotFoundAction       HangUp
  1059. OkayAction               Security=50 Log
  1060. LDOkayAction             Security=50 Log
  1061. UnknownAction            HangUp
  1062. LDUnknownAction          HangUp
  1063. PrivateAction            HangUp
  1064. LDPrivateAction          HangUp
  1065. MaxDupeCallers             0
  1066. MaxDupeAction            HangUp
  1067. MaxConsecBadCalls         1
  1068. MaxTotalBadCalls         1
  1069. MaxConsecMismatchCalls     3
  1070. MaxTotalMismatchCalls     10
  1071. FirstBadCallAction       HangUp
  1072. MaxBadCallAction         HangUp
  1073. FirstMismatchCallAction  HangUp Force
  1074. MaxMismatchCallAction    HangUp Force
  1075. GoodAfterBadAction       None
  1076. GoodAfterMismatchAction  None
  1077. AddAllNumbersToLogs      No
  1078. StorePhoneNumbers        None
  1079.  
  1080.     This example has the following characteristics:
  1081.  
  1082.     - The CID info is in BinkleyTerm's log.
  1083.     - CID strings for the SupraFAXModem 288e.
  1084.     - The phone number lengths used are for the North American format.
  1085.     - Standard user upgrading is granted if the verification is good.  ACID is
  1086. ===============================================================================
  1087.  ACID v1.00 Documentation    <-+->    Copyright 1994, 1995    <-+->    Page 17
  1088.  
  1089.       only run once with this setup, so the security level is forced to 50,
  1090.       which is what most CBVs do.
  1091.     - Unknown, Private, Duplicate, Bad, and Mismatch callers are treated as
  1092.       failed verifications and hung up.  Most CBVs do not downgrade users, so
  1093.       no security alteration is performed.
  1094.     - Only the verified number is logged, which is what most CBVs do.  No phone
  1095.       numbers are stored in the user file, because ACID.DUP is a simpler way of
  1096.       detecting dupes.
  1097.  
  1098.     Remember, this example is intended more to duplicate a CBV, and not for
  1099. optimum security.  Furthermore, it does not take very much advantage of ACID's
  1100. features.  Because of this, however, it is VERY simple to set ACID up this way.
  1101. All you will probably need to do is copy the above settings into ACID.CFG and
  1102. make slight alterations to your existing CBV batch file.
  1103.  
  1104.     I recommend this setup if you don't have much time and want to take
  1105. immediate advantage of CID verification in the simplest and fastest way.  You
  1106. can always come back later and modify the settings to take advantage of ACID's
  1107. more advanced features.
  1108.  
  1109.     4.4 - The Author's Setup
  1110.  
  1111.     This is the exact setup that I myself use on my BBS, and thus it's
  1112. naturally the one I recommend using.  It provides maximum security against
  1113. blacklisted callers.  It also grants limited access to Long Distance callers so
  1114. they can download files (like) that I distribute for myself and other authors.
  1115.  
  1116.     The modem I use is a SupraFAXModem 288e, and the mailer I use is
  1117. BinkleyTerm 2.59a.  My BBS software is RemoteAccess, so ACID will detect and
  1118. use EXITINFO.BBS, and RA will read it back, thus allowing the security changes
  1119. to take effect.  I run ACID automatically when each caller logs on, right
  1120. before the Main Menu is displayed.  I suggest you run it even earlier if you
  1121. can, right after the user enters his/her password if possible.  The Main Menu
  1122. is just the easiest place for me to run it, so I have it there instead.
  1123.  
  1124.     Here are the configuration settings I use:
  1125.  
  1126. ACIDPath                 D:\RA\PROGS\ACID\
  1127. CIDLog                   D:\RA\BINKLEY.LOG
  1128. CIDLogScanBytes          275
  1129. CIDChangeUnderscores     Yes
  1130. CIDStartString             DATE_=_
  1131. CIDAreaCodeLength         3
  1132. CIDPhoneNumberLength     7
  1133. CIDYourAreaCode          403
  1134. CIDDateString            DATE_=_
  1135. CIDTimeString             TIME_=_
  1136. CIDNameString             NAME_=_
  1137. CIDNumberString          NMBR_=_
  1138. CIDMessageString         MESG_=_
  1139. CIDNameUnknown             Unknown_Caller
  1140. CIDNamePrivate             Private_Caller
  1141. CIDNumberUnknown         O
  1142. CIDNumberPrivate         P
  1143. CIDMessageUnknown         08014F
  1144. ===============================================================================
  1145.  ACID v1.00 Documentation    <-+->    Copyright 1994, 1995    <-+->    Page 18
  1146.  
  1147. CIDMessagePrivate         080150
  1148. CIDMessageLongDist         06014C
  1149. MandatoryInfoItems         Date Time Number
  1150. InfoNotFoundAction         Hangup
  1151. OkayAction               Security>50
  1152. LDOkayAction             Security>50
  1153. UnknownAction            Security<25
  1154. LDUnknownAction          Security<25
  1155. PrivateAction            Security=5 Hangup
  1156. LDPrivateAction          Security<25
  1157. MaxDupeCallers             0
  1158. MaxDupeAction             Security=25
  1159. MaxConsecBadCalls         1
  1160. MaxTotalBadCalls         1
  1161. MaxConsecMismatchCalls     3
  1162. MaxTotalMismatchCalls     10
  1163. FirstBadCallAction         Security=5 Hangup
  1164. MaxBadCallAction         Security=5 Hangup
  1165. FirstMismatchCallAction  Security=25 Force
  1166. MaxMismatchCallAction    Security=25 Force
  1167. GoodAfterBadAction       Security=5 Hangup Force
  1168. GoodAfterMismatchAction  Restore
  1169. AddAllNumbersToLogs      Yes
  1170. StorePhoneNumbers        Data Voice
  1171.  
  1172.     This example has the following characteristics:
  1173.  
  1174.     - The CID info is in my BinkleyTerm log.
  1175.     - CID strings for a SupraFAXModem 288e.
  1176.     - The phone number lengths used are for the North American format.
  1177.     - Standard user security upgrading if the verification is good.  Because
  1178.       ACID is run with every call in this setup, the security is not changed if
  1179.       it is higher than 50.  Otherwise, callers with special access would lose
  1180.       this access each time they call!
  1181.     - Unknown callers are given limited access until I can verify them further,
  1182.       or so they can download the files I distribute.  The exception is if the
  1183.       user already has Twit access (level 5), in which case they retain the
  1184.       Twit level.
  1185.     - Local private callers are given no access and LD private callers are
  1186.       given limited access, unless they already have Twit access (5).
  1187.     - No duplicate callers are allowed, though they are given limited access
  1188.       until they can be verified further.
  1189.     - Zero tolerance for bad callers.  If they get on my blacklist, they're off
  1190.       the system for good, even if they call from a different location later.
  1191.     - A few mismatch calls are allowed, but not many.  I stress to my users
  1192.       that if they call from two different places a lot that I will change
  1193.       their user record so they can call from both places (RA supports two
  1194.       different phone numbers in the user record).  Full access is restored
  1195.       after a mismatch call.
  1196.     - Data & Voice phone numbers are stored for dupe detection.  The CID number
  1197.       is not stored for simplicity's sake.
  1198.  
  1199.     I suspect most people will consider this approach a little too harsh, but
  1200. you can always modify the parts you don't like.  There is little doubt that
  1201. this method is extremely secure.  However, it could be made even more secure by
  1202. ===============================================================================
  1203.  ACID v1.00 Documentation    <-+->    Copyright 1994, 1995    <-+->    Page 19
  1204.  
  1205. restricting Mismatch callers and Duplicate callers even more.
  1206.  
  1207.     4.5 - Uses For Certain Features
  1208.  
  1209.     Some of ACID's features may seem a little obscure, so this section will
  1210. describe what the intended use of these features are for.  If, while reading
  1211. this manual or the descriptions in ACID.CFG, you found yourself asking "What
  1212. the heck is _THAT_ for?!?!?", this is the place to look!  The features are
  1213. referred to by the keyword(s) used in ACID.CFG, so look there if you need
  1214. further information after reading this section.
  1215.  
  1216.     CIDChangeUnderscores     The reason for use of this keyword is described in
  1217.                              ACID.CFG.
  1218.  
  1219.     MaxDupeCallers           Every once in a while, you might get two people
  1220.     MaxDupeAction            from the same family, or roommates, who want to
  1221.                              use your BBS.  Or, if your BBS doesn't support
  1222.                              handles "naturally", you might want to allow each
  1223.                              user to have two accounts - one using a handle,
  1224.                              and one with their real name.  Either way, these
  1225.                              keywords let you allow multiple callers/accounts
  1226.                              from the same number without causing both them and
  1227.                              yourself big headaches.  The user(s) is/are spared
  1228.                              the hassle of waiting, and you are spared the
  1229.                              hassle of having to verify people in situations of
  1230.                              this type.  This feature should, however, be used
  1231.                              with care, and you should monitor ACID's logs for
  1232.                              Dupe callers just to be on the safe side.
  1233.  
  1234.     MaxConsecBadCalls        The features controlled by these keywords allow
  1235.     MaxTotalBadCalls         you to allow a bad caller to call a few times
  1236.     FirstBadCallAction       before you take more drastic action.  Why?
  1237.     MaxBadCallAction         Because you're probably not a cold person, and
  1238.                              want to give people a chance to defend themselves.
  1239.                              Or, you might want a user to be able to read an
  1240.                              explanation of why they were kicked off before
  1241.                              dispensing with them entirely.  These keywords will
  1242.                              let you do that.  Furthermore, they are a great
  1243.                              way to outsmart hackers, who may call once and
  1244.                              think they can get on their system (to try and
  1245.                              break into it, for example), then call back again
  1246.                              and find themselves being continuously dumped off.
  1247.  
  1248.     MaxConsecMismatchCalls   The features controlled be these keywords let you
  1249.     MaxTotalMismatchCalls    control where a user calls from, and for how long.
  1250.     FirstMismatchCallAction  Chances are that a user will occaisionally call
  1251.     MaxMismatchCallAction    from a location other than the one they normally
  1252.                              call from, and when this happens you don't want to
  1253.                              inconvenience this users.  When this starts to
  1254.                              become a more frequent occurence, it may signal a
  1255.                              hacker, or more than one person using an account
  1256.                              (which many sysops do not like).  Once it becomes
  1257.                              a more frequent occurence, you can have ACID
  1258.                              automatically do something about it until you can
  1259.                              check on the situation.
  1260. ===============================================================================
  1261.  ACID v1.00 Documentation    <-+->    Copyright 1994, 1995    <-+->    Page 20
  1262.  
  1263.  
  1264.     GoodAfterBadAction       In the ever-changing world of computers, nothing
  1265.     GoodAfterMismatchAction  is permanent.  This is true with user situations,
  1266.                              as well, so these keywords let you "forget the
  1267.                              past".  In the case of bad users, a situation may
  1268.                              be resolved, and/or you may decide to give a user
  1269.                              another chance.  With mismatch callers, you may
  1270.                              not want them to have full access unless they're
  1271.                              calling from the "right" place.  These keywords
  1272.                              can be used to grant a user higher/total access if
  1273.                              one of the above cases occurs.  They are also
  1274.                              useful in outsmart hackers.  By lowering a user's
  1275.                              access (or blocking a user entirely) when
  1276.                              something isn't right, there is NO CHANCE that the
  1277.                              "wrong" person can get into an account, unless
  1278.                              they're calling from the same place as the person
  1279.                              who normally uses the account anyhow!
  1280.  
  1281.     AddAllNumbersToLogs      Many BBS systems allow users to enter both a voice
  1282.     CIDPhoneNumberLength     and data phone number.  Because of this, it helps
  1283.     CIDAreaCodeLength        to be able to treat both numbers as a single
  1284.                              entity.  For example, once a user is verified at a
  1285.                              number, their number can be stored in ACID.DUP to
  1286.                              prevent duplicate accounts from the same number.
  1287.                              But if the user has two different numbers in the
  1288.                              user file, they can simply switch phone lines and
  1289.                              get themselves another account!  Not if the "Add
  1290.                              All Numbers" setting is turned on, though.  When
  1291.                              this setting is on, _all_ numbers in the user's
  1292.                              account will be logged when a "Log" action is
  1293.                              used.  Note that because the numbers used are not
  1294.                              always numbers from CID information, a user could
  1295.                              ban one or several users if they have entered
  1296.                              "wrong" or "garbage" phone numbers in their
  1297.                              account. Imagine if a user entered "0" as a phone
  1298.                              number, and this was logged to ACIDNMBR.BAD.
  1299.                              Everybody with a "0" in their phone number would
  1300.                              be considered a bad user!  Fortunately, ACID has
  1301.                              internal logic which helps verify that a number is
  1302.                              a real phone number, so that kind of thing cannot
  1303.                              happen.  The two "length" keywords assist ACID in
  1304.                              determining a valid phone number.  With this
  1305.                              logic, the worst that could ever happen is that a
  1306.                              user will enter the same number as another user,
  1307.                              and this is easily fixed with a one-time edit of
  1308.                              ACIDNMBR.BAD or ACID.DUP.
  1309.  
  1310.     All of the other features are (hopefully) self-explanatory, with the
  1311. assistance of the descriptions in ACID.CFG.
  1312.  
  1313.  
  1314.  
  1315.  
  1316.  
  1317.  
  1318. ===============================================================================
  1319.  ACID v1.00 Documentation    <-+->    Copyright 1994, 1995    <-+->    Page 21
  1320.  
  1321.  
  1322. ===============================================================================
  1323.  
  1324.                           5.0 - External Support Files
  1325.  
  1326. ===============================================================================
  1327.  
  1328.     ACID uses several external files, which may be created by yourself prior to
  1329. running ACID, or created by ACID when it runs, or both.  This chapter lists
  1330. those files and describes what they are used for.
  1331.  
  1332.     5.1 - ASCII, ANSI, AVATAR, And RIP Files
  1333.  
  1334.     Most of the external files ACID uses are ASCII, ANSI, AVATAR, and RIP
  1335. files.  These files should be created prior to running ACID, and can be changed
  1336. any time as necessary.  None of the files listed have to exist.  If a file is
  1337. not found, ACID will simply display nothing.
  1338.  
  1339.     Before listing this files, you should understand how they are searched for
  1340. and used.  Users of RA and similar systems will be well familiar with this
  1341. method.  There can exist up to four variations of each listed file.  These
  1342. variations are distinguished by their file extensions.  .ASC is used for ASCII
  1343. files, .ANS is used for ANSI files, .AVT is used for AVATAR files, and .RIP is
  1344. used for RIP files.
  1345.  
  1346.     If a user has ANSI, AVATAR, or RIP capability, that type of file will be
  1347. searched for first.  The precedence of the graphics modes is as follows:  RIP,
  1348. AVATAR, ANSI.  For example, say a user has both RIP and ANSI capability, which
  1349. is a common occurence.  ACID will look for the .RIP file first, and if it can't
  1350. find it, it will then look for the .ANS file.  If the user also has AVATAR
  1351. capability (in addition to ANSI and RIP), the order will be .RIP, .AVT, then
  1352. .ANS.  If the user's terminal does not support any of the above graphics modes,
  1353. or if the files for all supported graphics modes do not exist, ACID will use
  1354. the ASCII file (.ASC).  If the .ASC file doesn't exist either, ACID will
  1355. display nothing.
  1356.  
  1357.     ACID will look for all of the files listed in this section in the directory
  1358. specified by the ANSIPath configuration keyword.  If this keyword is not
  1359. specified, the directory where ACID.EXE or ACID2.EXE is located will be used.
  1360.  
  1361.     All of these files work in conjunction with the ACID Action keywords
  1362. (xxxxAction) in the configuration file ACID.CFG.  For this reason, to save
  1363. space and keep things simple, only the base file name and corresponding keyword
  1364. will be listed.  To get a further idea of what each file is used for, see the
  1365. description of the associated keyword in ACID.CFG.  Also, looking at the
  1366. example .ASC files provided in the ACID archive may prove beneficial.  These
  1367. example files work well with the example described in the section called
  1368. "Simple CID Protection".  The file extensions are not listed; their usage is
  1369. described above.
  1370.  
  1371.      BaseName | Associated ACID.CFG Keyword
  1372.     ----------+-----------------------------
  1373.      BAD1ST   | FirstBadCallAction
  1374.      BADCMAX  | MaxBadCallAction
  1375.      BADTMAX  | MaxBadCallAction
  1376. ===============================================================================
  1377.  ACID v1.00 Documentation    <-+->    Copyright 1994, 1995    <-+->    Page 22
  1378.  
  1379.      DUPE1ST  | MaxDupeAction
  1380.      DUPEMAX  | MaxDupeAction
  1381.      GOODAFTB | GoodAfterBadAction
  1382.      GOODAFTM | GoodAfterMismatchAction
  1383.      LDOKAY   | LDOkayAction
  1384.      LDPRIV   | LDPrivateAction
  1385.      LDUNKNOW | LDUnknownAction
  1386.      MIS1ST   | FirstMismatchCallAction
  1387.      MISCMAX  | MaxMismatchCallAction
  1388.      MISTMAX  | MaxMismatchCallAction
  1389.      NOINFO   | InfoNotFoundAction
  1390.      OKAY     | OkayAction
  1391.      PRIVATE  | PrivateAction
  1392.      UNKNOWN  | UnknownAction
  1393.  
  1394.     There is also one other file with a BaseName of LOCAL which is displayed to
  1395. local callers.  Unless you have a lot of people log on from the local console,
  1396. you probably don't need to worry about changing this, as it is merely to inform
  1397. you that the call is local and verification is being skipped.
  1398.  
  1399.     5.2 - Other External Files
  1400.  
  1401.     There are some other external support files used by ACID.  These are
  1402. described below.  All of the files listed here can be created and edited by
  1403. yourself before running ACID needed, except when noted.  All of these files
  1404. will be created by ACID if they don't exist, though it may take some time for
  1405. some of them to show up, since they are only used in certain situations.
  1406.  
  1407.     ACIDNAME.BAD   Contains a list of bad names or name parts, one per line.
  1408.                    Like ACID.CFG, lines beginning with a semi-colon (;) are
  1409.                    considered comment lines and ignored.  ACID will compare the
  1410.                    information in this file to both the user's account name and
  1411.                    handle (as passed by the drop file), as well as the name
  1412.                    given in the Caller ID information, if supported by the
  1413.                    phone company. If one of the bad names in this file is
  1414.                    found, ACID will flag the call as "bad".  The case of
  1415.                    the user's name, the name in the CID info., and the name
  1416.                    parts in this file are all unimportant.  Be sure to use this
  1417.                    file carefully, or you may inadvertantly ban users you don't
  1418.                    wish to.  For example, placing the word "pee" on a line in
  1419.                    this file will also block out people with the names Peers,
  1420.                    Peeters, etc.  Furthermore, this is not a very effective
  1421.                    means of locking out a user unless you have Name ID service.
  1422.                    I recommend using ACIDNMBR.BAD instead.  ACID will write to
  1423.                    this file as noted in ACID.CFG, so you should not delete
  1424.                    this file once it is created in order to preserve previous
  1425.                    user lockouts.
  1426.  
  1427.     ACIDNMBR.BAD   This file is very similar to ACIDNAME.BAD, but uses phone
  1428.                    numbers instead.  The phone number from the CID information
  1429.                    will be compared with the information in this file.  If
  1430.                    there is a match, the call will be flagged as "bad".  As
  1431.                    with ACIDNAME.BAD, be sure to use this file carefully, or
  1432.                    you can end up locking out users unintentionally.  For
  1433.                    example, if you put "000" in this file, anybody with "000"
  1434. ===============================================================================
  1435.  ACID v1.00 Documentation    <-+->    Copyright 1994, 1995    <-+->    Page 23
  1436.  
  1437.                    in their phone number (403-555-0004, 403-500-0999, etc.) or
  1438.                    will be flagged as bad!  All punctuation (hyphens, etc.) is
  1439.                    stripped from both the CID number and the information in
  1440.                    this file.  NOTE:  If you wish to, for example, mark all
  1441.                    private callers as "bad", don't do it with this file.
  1442.                    Instead, use one of the "DoXxxx" keywords for the Bad Caller
  1443.                    actions in ACID.CFG.  ACID will write to this file as
  1444.                    described in ACID.CFG, so you should not delete this file
  1445.                    once it is created in order to preserve previous user
  1446.                    lockouts.
  1447.  
  1448.     ACID.DUP       This file functions exactly like ACIDNMBR.BAD, but instead
  1449.                    of flagging calls as "bad", they will be flagged as
  1450.                    "duplicate".  Other than that, everything else in the
  1451.                    description for ACIDNMBR.BAD applies to this file as well.
  1452.  
  1453.     ACIDUSER.DAT   This file is the binary user data file created by ACID, and
  1454.                    should never be edited or played with.  ACID creates this
  1455.                    file when it is first run and uses it to store things such
  1456.                    as a user's name, security, phone numbers, bad call counts,
  1457.                    etc.  ACID uses this file to run a cross-account scan for
  1458.                    duplicate phone numbers, and also uses it to store a user's
  1459.                    original security for use with the Restore action.  You
  1460.                    should not delete this file unless you want to wipe clean
  1461.                    the statuses of every user who has passed through ACID.
  1462.                    Editing this file is not recommended, but if you find that
  1463.                    you have to, use a hex editor and not a text editor.
  1464.  
  1465.     ACIDCID.LOG    This is a complete transcript of all Caller ID info, as it
  1466.                    is read and used by ACID, as well as the name and some other
  1467.                    information about the user who called with it.  ACID writes
  1468.                    to this file each time it is run.  Though this file is
  1469.                    purely for your own information and can be deleted at will,
  1470.                    you should keep this around in case problems with users
  1471.                    arise.  If you're low on drive space, consider archiving this
  1472.                    file every so often and storing the archives on disk.  You
  1473.                    never know when they may come in handy...
  1474.  
  1475.     ACID.LOG       This is a normal, FrontDoor style log file that notes all of
  1476.                    the major actions performed by ACID.  It is very similar to
  1477.                    your BBS log files, and the logs created by many other
  1478.                    doors.  Use it to track down problems with ACID itself.
  1479.                    This file is written to each time ACID is run, and can be
  1480.                    deleted whenever you like, though you should skim over it
  1481.                    before deleting it in case any unforseen errors have
  1482.                    occured recently.
  1483.  
  1484.  
  1485.  
  1486.  
  1487.  
  1488.  
  1489.  
  1490.  
  1491.  
  1492. ===============================================================================
  1493.  ACID v1.00 Documentation    <-+->    Copyright 1994, 1995    <-+->    Page 24
  1494.  
  1495.  
  1496. ===============================================================================
  1497.  
  1498.                                 6.0 - Final Words
  1499.  
  1500. ===============================================================================
  1501.  
  1502.  
  1503.     6.1 - Plans For Future Versions
  1504.  
  1505.     If response to ACID is encouraging, I have _MANY_ more ideas planned.  Many
  1506. of them are so original and unprecedented that I'm not going to reveal them,
  1507. but there are some other important features that you can look forward to in
  1508. upcoming versions:
  1509.  
  1510.     - Configuration File and User Record Editors.
  1511.  
  1512.     - Support for "raw" Caller ID information.  This is information that
  1513. isn't formatted in any way, and is simply one continuous string of characters.
  1514.  
  1515.     - Support for a CBV-style "valid phone exchange list" to further help
  1516. detect LD callers.
  1517.  
  1518.     - More configuration keywords to offer you EVEN MORE control over
  1519. situations.
  1520.  
  1521.     - Ability to read and write back to ANY type of drop file (or user file),
  1522. opening up ACID's security verification to ANY BBS type!
  1523.  
  1524.     - Ability to post messages to yourself or the user as an action option!
  1525.  
  1526.     That's just a small sampling of what I have planned for ACID.  The cost of
  1527. ACID will go up as more features are added, so register early and save!  All
  1528. upgrades are FREE!
  1529.  
  1530.     6.2 - How To Contact The Author
  1531.  
  1532.     You can contact the author using one of the following methods:
  1533.  
  1534.     FidoNet Netmail - 1:134/31                  (Routed Netmail or CrashMail)
  1535.     Internet Email  - paul.sidorsky@t8000.com               (Primary, stable)
  1536.                       psidorsk@freenet.calgary.ab.ca      (Secondary, stable)
  1537.                       paulsid@f31.cambo.cuug.ab.ca    (Tertiary, semi-stable)
  1538.     BBS             - (403)686-0449     (Press . from menu to leave feedback)
  1539.     Canada Post     - 1414 45th Street SW                             (SLOW!)
  1540.                       Calgary, Alberta                                (SLOW!)
  1541.                       CANADA    T3C 2C2                               (SLOW!)
  1542.  
  1543.     Address all correspondence to Paul Sidorsky.
  1544.  
  1545.     6.3 - Where To Get ACID
  1546.  
  1547.     The latest version of ACID can always be freqed from FidoNet node 1:134/31
  1548. at any time but Zone Mail Hour, speeds up to 28800bps.  Use the magic name of
  1549. ACID (for ACID/DOS) or ACID2 (for ACID/2).  NOTE:  The files are compressed
  1550. ===============================================================================
  1551.  ACID v1.00 Documentation    <-+->    Copyright 1994, 1995    <-+->    Page 25
  1552.  
  1553. with a newer archiver called RAR.  If you cannot find RAR in your area, freq
  1554. the magic name UNRAR as well (it's a small, 40k file).
  1555.  
  1556.     Alternatively, call my BBS at (403)686-0449 and download the latest
  1557. versions from the ISMWare File Area.  You'll be granted access on your first
  1558. call, because, if you didn't already guess, my system runs ACID.  :-)
  1559.  
  1560.     You can also FTP ACID/2 _ONLY_ from ftp.cts.com, in the /pub/joeld
  1561. directory.  This is the Doors/2 FTP site (which was mentioned earlier in the
  1562. "Unpacking ACID" section earlier in this manual), and features OS/2 native
  1563. doors.  This is why only ACID/2 may be obtained from here.  You can also call
  1564. the Doors/2 support BBS if you're interested in OS/2 doors, including ACID/2.
  1565. The phone number is (619)462-8406, and the FidoNet node is 1:202/704.
  1566.  
  1567.     6.4 - Credits And Acknowledgements
  1568.  
  1569.     I wish to thank the following people who helped make ACID possible:
  1570.  
  1571.     - Borland International, for their excellent DOS and OS/2 C compilers.
  1572.     - Brian Pirie, who gave us OpenDoors, the door kit used for ACID/DOS.
  1573.       OpenDoors is by far the best C door kit around IMHO.
  1574.     - Joel Downer, for Doors/2, the door kit used for ACID/2.  He painstakingly
  1575.       ported OpenDoors to OS/2 to give all of us OS/2-using BBS sysops hope for
  1576.       the future, and made it multithreaded on top of that!  He is also the
  1577.       provider of the FTP site for ACID/2.
  1578.     - Matthew Mastracci, for his Manual Compiler, which was used to make this
  1579.       manual.  An excellent idea that was long overdue!
  1580.     - My mom, Ellen, for her financial support, which mostly came in the form
  1581.       of many bottles of Diet Coke.  I suppose I should thank Coca-Cola here as
  1582.       well.  <grin>
  1583.  
  1584.  
  1585.  
  1586.  
  1587.  
  1588.  
  1589.  
  1590.  
  1591.  
  1592.  
  1593.  
  1594.  
  1595.  
  1596.  
  1597.  
  1598.  
  1599.  
  1600.  
  1601.  
  1602.  
  1603.  
  1604.  
  1605.  
  1606.  
  1607.  
  1608. ===============================================================================
  1609.  ACID v1.00 Documentation    <-+->    Copyright 1994, 1995    <-+->    Page 26
  1610.  
  1611. This manual compiled using MC v1.04 by Matthew Mastracci
  1612.