ллллллллл ллллллллл ллллллллл ллллллллл ллллллллл ллллллллл АллАААААА АллАААААА АллАААААллАллАААААллАллАААААА АААААллАА Алл Алл Алл АллАлл ллАлл Алл Аллллл Аллллл АлллллллллАлллллллллАллллл Алл АллАА АллАА АллААААлл АллААААлл АллАА Алл Алл Алл Алл ААллАлл ААллАлл Алл Алл АлллллллллАлл АллАлл АллАллллллллл Алл АА ААААААААА АА АА АА АА ААААААААА АА Ferret V1.00 Reference Manual (c) Copyright 1992, 7th Illusion. All rights reserved. Released April 20th, 1992 Documentation written by J.S. Morisset FERRET V1.00 Reference Manual, (c) Copyright 1992 Page 1 Table of Contents 1. License Agreement . . . . . . . . . . . . . . . . . . . . . . . 2 2. Disclaimer of Warranty . . . . . . . . . . . . . . . . . . . . 2 3. Contacting the Author . . . . . . . . . . . . . . . . . . . . . 2 4. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . 3 5. Configuration . . . . . . . . . . . . . . . . . . . . . . . . . 4 5.1 Ferret.Ctl . . . . . . . . . . . . . . . . . . . . . . . . 4 LogFiles . . . . . . . . . . . . . . . . . . . . . . . . . 4 Pcbdat . . . . . . . . . . . . . . . . . . . . . . . . . . 4 Dlpath . . . . . . . . . . . . . . . . . . . . . . . . . . 4 MstrList . . . . . . . . . . . . . . . . . . . . . . . . . 5 ExportLst . . . . . . . . . . . . . . . . . . . . . . . . 6 ExportFmt . . . . . . . . . . . . . . . . . . . . . . . . 6 5.2 Password.Ctl . . . . . . . . . . . . . . . . . . . . . . . 7 Flag . . . . . . . . . . . . . . . . . . . . . . . . . . . 7 Address . . . . . . . . . . . . . . . . . . . . . . . . . 8 Password . . . . . . . . . . . . . . . . . . . . . . . . . 8 PCBoard User Name . . . . . . . . . . . . . . . . . . . . 8 6. Usage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9 6.1 Command Line Switches . . . . . . . . . . . . . . . . . . 9 6.2 ErrorLevels . . . . . . . . . . . . . . . . . . . . . . . 9 7. Revision History . . . . . . . . . . . . . . . . . . . . . . . 11 FERRET V1.00 Reference Manual, (c) Copyright 1992 Page 2 1. License Agreement Ferret is released under the Shareware concept. As such, you may distribute Ferret freely, provided you do not charge copying, or any distribution fees; an exception is granted to non-profit user's groups, which are permitted to charge a small fee (not to exceed $5.00 U.S.) for materials, handling, postage, and general overhead. No other organization is permitted to charge any amount for distribution of copies of the software or documentation, or to include copies of the software or documentation with sales of their own products. You may not alter, modify, or adapt the software or documentation, including, but not limited to translating, decompiling, reverse assembling, or creating derivative works. You may use Ferret free of charge for a thirty day evaluation period, after which you are expected to register or discontinue using the program. Registration permits continued use on a regular basis on a single computer. A registered user may use the program on a different computer, but may not use the program on more than one computer at the same time. Registration includes licensed use of all upgrades. To register, send $15.00 (US or CDN) in check or money order payable to 7th Illusion (no cash please) at the mailing address listed bellow. 2. Disclaimer of Warranty THIS SOFTWARE AND MANUAL ARE PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS OF PURPOSE. THE USER OF THIS SOFTWARE AND MANUAL ASSUMES ALL RISKS. SHOULD FERRET OR ITS ASSOCIATED DOCUMENTATION PROVE DEFECTIVE, YOU ASSUME THE COSTS OF ALL NECESSARY SERVICING, REPAIR, OR CORRECTION. 3. Contacting the Author Netmail and/or E-Mail Fidonet 1:167/281 Internet storm.widow@f281.n167.z1.fidonet.org Compuserve >INTERNET:storm.widow@f281.n167.z1.fidonet.org BBS (514) 338-1193, 14400 HST (514) 338-1680, 2400 Generic Surface Mail 7th Illusion Post Office Box 1334, Station H Montreal QC, Canada H3G 2N6 FERRET V1.00 Reference Manual, (c) Copyright 1992 Page 3 4. Introduction I have written this manual with the assumption that readers have a basic understanding of fidonet technology. If any terms are unclear, you should review the documentation supplied with your front-end mailer. SysOps with point setups will find this program especially useful in controlling and accounting for file requests. Ferret enables System Operators using PCBoard with BinkleyTerm, and/or FrontDoor, to credit callers for their File Requests. Session passwords may be assigned and removed automatically based on several criteria, including security level. You can therefore control F'Req privileges just as you would control downloads on your BBS. With a minimum of configuration, Ferret can be installed within minutes. Multi-node installations require little more hassle than a single line BBS. Examples herein are shown for standard BinkleyTerm setups. If you are using FrontDoor, I would appreciate any comments illustrating the differences. FERRET V1.00 Reference Manual, (c) Copyright 1992 Page 4 5. Configuration Included within this archive are two sample configuration files, herein after referred to as 'control files'. The following sections show the configuration of each. Please read section 3.2 on password assignment carefully, as this is the most flexible feature of Ferret. 5.1 Ferret.Ctl Each configuration item is controlled by a leading keyword. Values may be in upper, or lower case, and must be separated with at least one space. Semi-colons are used to comment out a line of text. LogFiles Following this keyword, you must enter a complete path/filename to your front-end log file, and report file. You may use a maximum of 128 entries with this keyword, making multi-node configurations possible. Entries to the report file reflect record adjustments, request filenames, and totals. It is suggested you review this report file before deleting it. Example: logfiles d:\bt0\log\bt1.log d:\matrix\ferret\ferret.rpt logfiles d:\bt0\log\bt2.log d:\matrix\ferret\ferret.rpt . . . logfiles d:\bt0\log\bt100.log d:\matrix\ferret\private.rpt Notice that one or more report files may share the same filename. Pcbdat Enter the complete path/filename to your primary PCBoard.dat file. Ferret will use Pcboard's data file to gather path information on your userfile, index files, fsec, and minimum download security level. Example: pcbdat d:\pcb0\pcboard.dat DlPath Complete path/filename of download path list file. This file is identical to Pcboard's dlpath.lst file. In fact, it is expected you use the same one specified in Pcboard's configuration. Paths listed within this file are entered one FERRET V1.00 Reference Manual, (c) Copyright 1992 Page 5 per line. Example: F:\Main\Up\ F:\Main\DiskFile\ . . . F:\Main\DiagUtil\ PCBoard offers an extra feature, called dlpath indexing. These index filenames are entered in your dlpath.lst with a leading percent sign. Example: F:\Main\Up\ F:\Main\DiskFile\ . . . %F:\Cd-Rom.Idx Ferret does NOT need, or use these index files. Ferret only uses path information to recognize files belonging to the BBS. If you use index files, create another dlpath file expressly for Ferret. Example: dlpath e:\locl\main\dirs\dlpath.lst . . . dlpath e:\locl\alde\dirs\cd-rom.lst Note; there is a limit of 128 possible dlpath keywords. Ferret also supports the practice of assigning FREE downloads. After scanning your download paths, and finding a match, Ferret will investigate your fsec file for possible exceptions. Your fsec contains path, filename, security, and password information. Ferret ignores security, and any other password than 'FREE'. MstrList Master password control path and filename. It is referred to as the 'Master' password file since it's values are exported to other text files. Nodelist compilers would then use the exported information to assign session passwords within the nodelist. FERRET V1.00 Reference Manual, (c) Copyright 1992 Page 6 Example: mstrlist d:\matrix\ferret\password.ctl ExportLst Path/filename used to export nodelist information. ie: address, password, etc. The format this information takes may be configured with the exportfmt keyword. Example: exportlst d:\matrix\nodelist\xlaxnode.pwd In the case of XlaxNode, one of the more popular nodelist compilers, this external password file also specified in XlaxNode's control file. Example: Node 1:167/281 SortWork H:\ Buffers 6 MyList Points.Lst Progress NoForceScan Update XlaxDiff.Exe /C /E=D:\Matrix\Nodediff\Nodediff AllZones PasswordFile XlaxNode.Pwd ; ^^^^^^^^^^^^ Comments Nodelist.Cmt Report Version7 Userlist . . . ExportFmt Each node listed in the Master list may be exported to the external password file, outlined above. The format which the exported information takes is controlled by three macros; @address@, @password@, and @name@. Other values may be included and would be transferred relative to the macros. Example: ; XlaxNode's password file format ; exportfmt @address@ @password@ ; Imaginary sample with leading keyword and trailing flags ; exportfmt Password @address@ @password@ F:N A:Y L:2 FERRET V1.00 Reference Manual, (c) Copyright 1992 Page 7 5.2 Password.Ctl - Master List Flag % Export user information if his access is higher, or equal, to the d/l security level specified in PCBoard.Dat. This flag would be useful for systems adjusting user levels, and want to cut a node's file request privileges when his access drops too low. # Instructs Ferret to ignore a users access level. Although, the user _must_ have an record in the user file, otherwise his information is not exported. * Always export information. The users access level, or whether he has a record in the userfile is irrelevant. I would suggest this flag for fidonet nodes. You wouldn't want to compromise security for netmail and echomail transfers. These flags control the exporting of information for nodelist compilers only. All listed users will be credited for their downloads regardless (providing they have a userfile record). BinkleyTerm users can control F'Reqs with a three tiered configuration. As the following example shows, three different 'Okfile' statements are used. The last 'ProtReqList' makes all BBS archives accessible to systems with passwords. 'KnownReqList' would _not_ list BBS file paths. Using the '%' flag, you can therefore remove BBS archive privileges from users who's level has dropped bellow the download command security. Example: . . . ReqOnUs MaxReq 3 MaxTime 30 MaxBytes 100000 Okfile D:\Matrix\Freq\NormlReq.Lst Avail D:\Matrix\Freq\f167_281.Lst About D:\Matrix\Freq\About281.Txt ReqTemplate D:\Matrix\Freq\Bad_Freq.Tpl ; KnownReqLim 5 KnownMaxTime 45 KnownMaxBytes 200000 KnownReqList D:\Matrix\Freq\KnownReq.Lst ; ProtReqLim 10 ProtMaxTime 60 FERRET V1.00 Reference Manual, (c) Copyright 1992 Page 8 ProtMaxBytes 500000 ProtReqList D:\Matrix\Freq\ProtdReq.Lst . . . Address Network address used by remote system. This address may be as complete as you wish. Ferret will recognize different domains, zones, etc. provided you enter the proper information. Example: 167/281 1:167/281 1:167/281.10 1:167/281@fidonet.org 1:167/281.10@fidonet.org Password Session password compiled in nodelist (max. 8 chars). PCBoard User Name Name used in pcboard user file (max. 25 chars). No matter what flag you assign a node, Ferret will always credit users for their file requests. Provided they have a record in the userfile, of course. Example: Fl Address Password PCBoard User Name -- ------------------ -------- ------------------ * 1:167/0 xxxxxxxx Steve Monteith * 1:167/90 xxxxxxxx Renald Loignon * 1:167/121 xxxxxxxx Andre Coulombe * 1:167/133 xxxxxxxx Steve Monteith * 1:167/141 xxxxxxxx Denis Grenier * 1:167/166 xxxxxxxx Shawn O'Connor * 1:167/176 xxxxxxxx Renald Loignon * 1:167/179 xxxxxxxx Sylvain Aube * 1:167/208 xxxxxxxx Alex Muprhy * 1:167/237 xxxxxxxx Frederic Hutow * 1:167/620 xxxxxxxx Steven Dworzak ; Bellow are point addresses. Session passwords are not assigned ; if their security level would disallow downloads on the BBS. % 1:167/281.100 xxxxxxxx Matt Pugliese % 1:167/281.110 xxxxxxxx Steve Greenspon FERRET V1.00 Reference Manual, (c) Copyright 1992 Page 9 6. Usage To execute Ferret, simply enter it's name followed by a command line switch, and the control path/filename. You should _not_ run Ferret while PCBoard and/or your front-end mailer is loaded. If you have a midnight maintenance run where all nodes are downed, this would be an ideal occasion to execute Ferret. Example: D:\FERRET>Ferret.Exe /cFerret.Ctl After running Ferret, you should delete or rename the log files of your front-end mailer. Example: . . . Rem /// Begin Ferret Execution D: Cd\Matrix\Ferret Ferret /cFerret.Ctl Rem /// Keep BinkleyTerm log file backups. D: Cd\Bt0\Log DayNbr.Com If Exist Bt*.Log Ren Bt*.Log Bt*.@### Rem /// Kill log files older than 3 days. Dk.Exe /D;3/F;Bt*.* . . . 6.1 Command Line Switches Command line arguments are preceded by a forward slash, a switch character, and it's value. Only one switch is currently available. C Configuration file name and path. 6.2 ErrorLevels Ferret should always exit with an errorlevel of zero. If you attempt to execute Ferret while PCBoard and/or your mailer is running, it will most definitely exit with one of the error codes bellow. FERRET V1.00 Reference Manual, (c) Copyright 1992 Page 10 (5) Error writing to file. (4) Error reading from file. (3) Unexpected EOF or out-of-sync. PCBNDX files do not match your user file. Load PCBoard's System Manager and re-create the index files. (2) Array bounds exceeded. Too many 'LogFiles' or 'DlPath' keywords have been entered in Ferret's control file. (1) Error opening file. You have specified and incorrect path or filename in Ferret's control file. (0) Default. FERRET V1.00 Reference Manual, (c) Copyright 1992 Page 11 7. Revision History Version 1.00 Released April 20th, 1992 Initial release.