home *** CD-ROM | disk | FTP | other *** search
/ CD Shareware Magazine 1996 December / CD_shareware_12-96.iso / DOS / Comunic / PRP111.ZIP / PRP.DOC < prev    next >
Encoding:
Text File  |  1996-09-08  |  21.7 KB  |  550 lines

  1. ╔══════════════════════════════════════════════╗
  2. ║      ProBoard Request Processor v1.11        ║
  3. ║ Written by Tom Torfs (2:292/516@fidonet.org) ║
  4. ╚══════════════════════════════════════════════╝
  5.  
  6. This is freeware. You are encouraged to copy this program
  7. and give copies to your friends. You may not, however,
  8. change this program or its documentation in any way
  9. or distribute modified versions of the original archive.
  10.  
  11. *** OVERVIEW ***
  12.  
  13. ProBoard Request Processor is a simple program that quickly
  14. generates responses to file requests, even from cd-roms, by
  15. reading the ProBoard index files directly.
  16.  
  17. It is compatible with most popular mailers, including FrontDoor,
  18. MainDoor, InterMail, McMail, BinkleyTerm, Xenia, Cantaloup and
  19. other mailers that support external file request processors either
  20. through a command line interface or through the SRIF interface.
  21.  
  22. PRP comes in both 16-bit DOS and 32-bit OS/2 versions.
  23.  
  24. Both normal file requests and update requests (only if a file
  25. is newer than a certain date) are supported. Separate request
  26. limits for secure and unsecure sessions, and unlimited requests
  27. from free areas are also supported.
  28.  
  29. If you are looking for bells and whistles, like timeslots,
  30. passwords for files, etc. this program is not for you.
  31. If you are looking for a simple, robust and most of all
  32. fast file request processor for your ProBoard-based BBS,
  33. this is what you've been waiting for.
  34.  
  35. *** INSTALLATION ***
  36.  
  37. First unpack the archive into a separate directory
  38. (recommended) or into your mailer's directory.
  39.  
  40. To upgrade from a previous version of PRP, simply unpack the
  41. archive into the PRP directory. Your configuration and template
  42. files will be left intact. However, to use some of the new
  43. features, changing the configuration file will be necessary.
  44.  
  45. A) FrontDoor/MainDoor
  46.  
  47. Set SRIF=NO in the configuration file.
  48.  
  49. Launch FDSETUP/MDSETUP and set the following information
  50. in Mailer/File requests/Request processor:
  51.  
  52. Program   C:\FD\PRP\PRP.EXE =R =T =X =A "=O"                (*)
  53. Enabled   Yes
  54. Swapping  No                                                (**)
  55.  
  56. (*) use the correct path, of course
  57. (**) set to Yes if you're really low on memory
  58.  
  59. This requires the registered version of FrontDoor. It works
  60. with the unregistered version of MainDoor, though.
  61.  
  62. MainDoor/2 setup is identical (except for using PRP2.EXE instead
  63. of PRP.EXE, of course).
  64.  
  65. B) InterMail
  66.  
  67. Set SRIF=NO, PREPENDPLUS=NO and SAMEFILE=YES in the configuration
  68. file.
  69.  
  70. Set up the following command string for the request processor:
  71.  
  72. C:\IMAIL\PRP\PRP.EXE %F %X %A %O                            (*)
  73.  
  74. (*) use the correct path, of course
  75.  
  76. I don't know if the PREPENDPLUS=NO statement is still required
  77. in more recent versions of InterMail. I would appreciate some
  78. more info on using PRP with InterMail.
  79.  
  80. C) McMail
  81.  
  82. You can install PRP either using the SRIF interface or the command
  83. line interface.
  84.  
  85. 1) Command line interface
  86.  
  87. Set SRIF=NO in the configuration file.
  88.  
  89. Set up the following command string:
  90.  
  91. ReqProcessor C:\MCMAIL\PRP\PRP.EXE =PFL =PXL =SU =PA "=RS"  (*)
  92.  
  93. 2) SRIF interface
  94.  
  95. Set SRIF=YES in the configuration file.
  96.  
  97. Set up the following command string:
  98.  
  99. ReqProcessor C:\MCMAIL\PRP\PRP.EXE =SRIF                    (*)
  100.  
  101. (*) use the correct path, of course
  102.  
  103. D) BinkleyTerm 2.60 XE or later
  104.  
  105. Set SRIF=YES in the configuration file.
  106.  
  107. Insert the following line in BINKLEY.CFG:
  108.  
  109. SRIF C:\BT\PRP\PRP.EXE $s                                   (*)
  110.  
  111. (*) use the correct path, of course.
  112.  
  113. The $s will be replaced with the full path to the SRIF file.
  114.  
  115. Note: BinkleyTerm prior to version 2.60 XE does not support
  116. external request processors.
  117. BinkleyTerm 2.60 XE currently does not support SRIF external
  118. request processors when using the Janus protocol.
  119. Therefore you should also add NoJanus to your BINKLEY.CFG.
  120.  
  121. E) Xenia 1.98.04 or later
  122.  
  123. Set SRIF=YES in the configuration file.
  124.  
  125. Remove the line Request from the configuration file if that is
  126. present. Then add the following line:
  127.  
  128. ExtReq C:\XENIA\PRP\PRP.EXE                                 (*)
  129.  
  130. (*) use the correct path, of course.
  131.  
  132. Xenia will append the full path to the SRIF file.
  133.  
  134. Note: SRIF does not function properly with Xenia prior to
  135. version 1.98.04
  136.  
  137. F) Cantaloup
  138.  
  139. Set SRIF=YES in the configuration file.
  140.  
  141. Create the file FREQPROC.CMD with the following contents:
  142.  
  143. @C:\CLOUP\PRP\PRP.EXE %6                                    (*)
  144.  
  145. (*) use the correct path, of course.
  146.  
  147. Alternatively, you can also set up Cantaloup without using the
  148. SRIF interface. Cantaloup passes the following command line parameters
  149. to FREQPROC.CMD:
  150.  
  151. FREQPROC <baud> <task> <time> <originator> <secure> <srif> <req> <attach>
  152.  
  153. G) Others
  154.  
  155. Find out if your mailer supports external request processors, and whether
  156. it can call these using a command line interface or through the SRIF
  157. interface.
  158.  
  159. 1) Command line interface with different request/response file
  160.  
  161. Set SRIF=NO and SAMEFILE=NO in the configuration file.
  162.  
  163. Set up the command line as follows (look in your mailer's manual
  164. for the required macros):
  165.  
  166. PRP.EXE <infile> <outfile> <SECURE|UNSECURE> <address> "<sysopname>"
  167.  
  168. (use PRP2.EXE for the OS/2 version)
  169.  
  170. If you provide me with the correct command line for another mailer,
  171. it will be added to this doc and I will give credit to you.
  172.  
  173. 2) Command line interface with same request/response file
  174.  
  175. Set SRIF=NO and SAMEFILE=YES in the configuration file.
  176.  
  177. Set up the command line as follows (look in your mailer's manual
  178. for the required macros):
  179.  
  180. PRP.EXE <in & outfile> <SECURE|UNSECURE> <address> "<sysopname>"
  181.  
  182. (use PRP2.EXE for the OS/2 version)
  183.  
  184. If you provide me with the correct command line for another mailer,
  185. it will be added to this doc and I will give credit to you.
  186.  
  187. 3) SRIF interface
  188.  
  189. Set SRIF=YES in the configuration file.
  190.  
  191. Set up the mailer so that it will call PRP.EXE with the full path and
  192. filename of the SRIF-file as only parameter.
  193.  
  194. Now also check if your mailer requires a '+' sign before filenames
  195. that should not be deleted in the response file or not and set the
  196. PREPENDPLUS keyword accordingly (usually this should be left to
  197. the default: YES).
  198.  
  199. *** CONFIGURATION ***
  200.  
  201. The configuration file must be named PRP.CFG and must be in the
  202. same directory as PRP.EXE/PRP2.EXE. It is a text file configuration,
  203. and can contain the following keywords. Everything after a semicolon
  204. (;) is treated as a comment and ignored.
  205.  
  206. ADDRESS=<your main address>
  207. Your main address, in the form zone:net/node.point. Any omitted
  208. fields (e.g. point) are assumed to be zero.
  209. This address is used as the origin for the file request response
  210. messages.
  211.  
  212. LOGFILE=<logfile>
  213. Defines the path and filename of the logfile. Leave empty, or
  214. simply omit, to disable logging.
  215.  
  216. MAGIC=<list with magic file names>
  217. Defines the path and filename of the file containing a list
  218. of magic filenames (same file as the alias file in FrontDoor).
  219. Each line contains a magic name, followed by at least one
  220. space and then the full path of the corresponding file name
  221. (wildcards supported).
  222. If this is omitted, no magic files will be available.
  223. *NOTE* When a magic file is requested, the file will be searched
  224. in the ProBoard filebase. If it is found, the description will be
  225. taken from there, and the download counters will be updated if
  226. that option is set. If it fails, no description will be provided
  227. and no download counters will be updated.
  228.  
  229. PBPATH=<path to ProBoard system directory>
  230. If you omit this, the environment variable PROBOARD will be read,
  231. and if that isn't set, C:\PB will be assumed.
  232.  
  233. MAXFILES=<maximum number of files>
  234. Defines the maximum number of files a system may request per
  235. session. If you omit this or set it to zero, there is no
  236. limit.
  237.  
  238. MAXKB=<maximum number of kilobytes>
  239. Defines the maximum number of kilobytes a system may request
  240. per session. If you omit this or set it to zero, there is no
  241. limit.
  242.  
  243. MAXLEVEL=<maximum security level>
  244. Defines the maximum security level a file area may have in
  245. ProBoard for a system to be allowed to request from it. Set
  246. this to 32767 (or omit it) if you want no limit.
  247.  
  248. MAXFILES_SECURE=<maximum number of files>
  249. Same as MAXFILES but for secure sessions. If you omit this the
  250. setting from MAXFILES will be used.
  251.  
  252. MAXKB_SECURE=<maximum number of kilobytes>
  253. Same as MAXKB but for secure sessions. If you omit this the
  254. setting from MAXKB will be used.
  255.  
  256. MAXLEVEL_SECURE=<maximum security level>
  257. Same as MAXLEVEL but for secure sessions. If you omit this the
  258. setting from MAXLEVEL will be used.
  259.  
  260. FREEFILES=<YES|NO>
  261. If set to YES, request limits are ignored for file areas marked
  262. as 'free' in ProBoard. This is also the default behaviour.
  263. This only affects number of files & kb limits, security level
  264. limits are still respected even if the area is marked as free.
  265.  
  266. FREEMAGIC=<YES|NO>
  267. If set to YES, request limits are ignored for files requested
  268. using magic names. This is also the default behaviour.
  269.  
  270. COPYLOCAL=<path>
  271. If this option is present, files from CD-ROM areas will be copied
  272. to <path> before sending them. If this option is left out, the files
  273. won't be copied to a local drive. The <path> must be a valid
  274. directory, with or without trailing backslash. If the <path> is
  275. invalid, PRP will not function properly.
  276.  
  277. CHECKEXTENSION=<YES|NO>
  278. When set to NO, the default and also the behaviour of previous
  279. versions of PRP, the extension of files is ignored, and the first
  280. matching file will be sent. For example, if someone freqs TEST.ARJ
  281. and you have TEST.ZIP and TEST.LZH, TEST.ZIP will be sent.
  282. This option also implies that if somebody freqs for example
  283. TEST.*, he will only receive the first file, the others will be
  284. considered duplicates.
  285. If set to YES, the file extension is significant. So if someone
  286. freqs TEST.ARJ and you have TEST.ZIP and TEST.LZH, neither of them
  287. will be sent.
  288. This option also implies that if somebody freqs for example
  289. TEST.*, he will receive all matching files, like TEST.ZIP,
  290. TEST.ARJ, etc.
  291. *NOTE* There is one exception to this option. Extensions that end
  292. in two digits (most often some form of nodelist) will always
  293. be treated as if this option was set to YES. So if someone freqs
  294. NODEDIFF.Z96 and you have NODEDIFF.Z89 and NODEDIFF.Z82, neither
  295. of them will be sent, regardless of this setting.
  296.  
  297. SENDDUPENAME=<YES|NO>
  298. If set to NO, the default and also the behaviour of previous
  299. versions of PRP, of more files with the same file name, including
  300. extension, only the first will be sent.
  301. If set to YES, the other files will be sent. Depending on the
  302. remote sysop's software, the files will be renamed, skipped,
  303. or the first files will be overwritten.
  304. If the files are copied to a local disk first, they are renamed,
  305. for example TEST.ZIP becomes TEST.ZI1, TEST.ZI2, etc.
  306. Two files with the same file name are sent *only* if they have
  307. different file sizes.
  308.  
  309. SRIF=<YES|NO>
  310. Whether your mailer uses the SRIF interface (e.g. Binkley 2.60 XE,
  311. Xenia) or a command line interface (e.g. FrontDoor). For more
  312. information see the installation instructions. The default is NO.
  313.  
  314. UPDATECOUNTERS=<YES|NO>
  315. If set to YES, PRP will append the requested files to the download
  316. logfile, so that on the next PBUTIL FC the download counter for this
  317. file will be updated. The default is NO.
  318.  
  319. PREPENDPLUS=<YES|NO>
  320. If set to YES (the default), PRP will prepend a '+' sign to the filenames
  321. in the response file that should not be deleted. This should usually be
  322. left to the default: YES.
  323.  
  324. SAMEFILE=<YES|NO>
  325. This option is only significant if SRIF=NO. If set to NO (the default),
  326. PRP will take 5 parameters of which the first two will be the request
  327. file and the response file. If set to YES, PRP will take 4 parameters
  328. of which the first one will be both the request and response file. This
  329. is only required by InterMail as far as I know.
  330.  
  331. REPORT=<ALWAYS|ERROR|NEVER>
  332. Selects when a report message should be sent to the remote sysop:
  333. ALWAYS : always send a report message (default)
  334. ERROR  : send a report message only if an error occurred
  335.          (file not found, limit exceeded)
  336. NEVER  : never send a report message, send the files only
  337.  
  338. MAXFREQS=<n>
  339. The maximum number of separate file requests that can be processed
  340. at a time. The default is 256, as in the previous versions of PRP.
  341. In the DOS version, if you set this value too high you will get a
  342. "not enough memory" error. In the OS/2 32-bit version that should
  343. not be a problem.
  344.  
  345. MAXMATCHES=<n>
  346. The maximum number of matching files that can be processed at a time.
  347. The default is 256, as in the previous versions of PRP.
  348. In the DOS version, if you set this value too high you will get a
  349. "not enough memory" error. In the OS/2 32-bit version that should
  350. not be a problem.
  351.  
  352. MAXMAGICS=<n>
  353. The maximum number of magic filenames that can be processed. The
  354. default is 128, as in the previous versions of PRP.
  355. In the DOS version, if you set this value too high you will get a
  356. "not enough memory" error. In the OS/2 32-bit version that should
  357. not be a problem.
  358.  
  359. *** RESPONSE TEMPLATE ***
  360.  
  361. The response template file must be named PRP.TPL and must be in
  362. the same directory as PRP.EXE. If this file isn't found, no
  363. response will be generated.
  364.  
  365. The first character of each line can define when a line should
  366. be included in the response:
  367.  
  368. ;       comment, always ignored
  369. +       only if the request succeeded entirely
  370. *       only if the request succeeded at least partly
  371. -       only if the request didn't succeed entirely
  372. !       only if the request limits were exceeded
  373. ?       only if some of the requested files weren't found
  374. #       always include this line
  375.  
  376. All other characters will cause the line to be always included. The
  377. # character is useful if you want a line beginning with any of the
  378. above characters to be always included.
  379.  
  380. You can use the following macros in the response template (case
  381. sensitive):
  382.  
  383. @SYSOPNAME@     name of sysop of requesting system
  384. @SYSOPFIRST@    first name of sysop of requesting system
  385. @FILES@         number of files sent
  386. @KB@            number of kilobytes sent
  387. @FREEFILES@     number of free files sent
  388. @FREEKB@        number of free kilobytes sent
  389. @MAXFILES@      maximum number of files this system can request
  390.                 per session (UNLIMITED if 0)
  391. @MAXKB@         maximum number of kilobytes this system can request
  392.                 per session (UNLIMITED if 0)
  393. @SENTFILES@     names and descriptions of sent files (everything
  394.                 else on this line will be ignored)
  395. @OVERLIMIT@     names and descriptions of files which exceeded limits
  396.                 (everything else on this line will be ignored)
  397. @NOTFOUND@      names of files for which no match was found
  398.                 (everything else on this line will be ignored)
  399.  
  400. See the example SAMPLE.TPL for an example on how to use these.
  401.  
  402. *** FILES.BBS ***
  403.  
  404. When a match is found, the file size and date/time stamp are
  405. looked up. It ignores this info in the FILES.BBS if present, so
  406. that an incorrect FILES.BBS doesn't cause incorrect results (like
  407. an attempt to send a missing file you forgot to delete from
  408. FILES.BBS etc.). Only the description is read from the FILES.BBS,
  409. with all optional information like file size, date/time, download
  410. counters etc. stripped.
  411. This way I also avoid compatibility problems with the different
  412. date formats etc.
  413. Extended descriptions are supported. The first non-whitespace character
  414. on each extended description line must be a +, | or >.
  415.  
  416. When a file is requested using a magic name, the description is searched
  417. for in FILES.BBS in the same directory as the file. For normal files, the
  418. File Listing name from the ProBoard file area configuration is used.
  419.  
  420. *** ERRORLEVELS ***
  421.  
  422. 0 = all OK
  423. 1 = syntax error
  424. 2 = file error
  425. 3 = memory error
  426.  
  427. *** CONTACTING THE AUTHOR ***
  428.  
  429. Although this is a freeware program, I am willing to give (limited)
  430. support for it. You can write netmail to me at 2:292/516@fidonet.org
  431. or e-mail to tomtorfs@www.dma.be or call my BBS at 32-15-24.62.32
  432. and leave a message.
  433.  
  434. *** SOURCE CODE ***
  435.  
  436. Sorry, no source code for this one. If you want to write your own
  437. file request processor, you'll find enough information in the
  438. FrontDoor development kit (FDDEV) and in the file SRIF.DOC (inside
  439. the MaxF'Req archive) to do so without having to see my source.
  440.  
  441. *** HISTORY OF PRP ***
  442.  
  443. Version         Release date    Changes
  444.  
  445. 1.0             9 Apr 1996      Original version
  446.  
  447. 1.01            3 May 1996      * Added file sharing support for
  448.                                   multiline BBSes
  449.  
  450. 1.02            27 May 1996     * Unlimited requests from free
  451.                                   file areas & free magic names
  452.                                   (configurable)
  453.                                 * Logging now possible
  454.                                 * Added documentation for setup
  455.                                   with McMail mailer
  456.                                 * Miscellaneous small changes to
  457.                                   the documentation & code
  458.  
  459. 1.02a           3 Jun 1996      * OS/2 problem fixed
  460.  
  461. 1.03            2 Aug 1996      * 32-bit OS/2 version included
  462.                                 * Copy local for cd-rom drives
  463.                                 * Supports ^AINTL,^AFMPT and ^ATOPT
  464.                                   for correctly creating messages
  465.                                   to points and/or other zones
  466.                                 * A tearline is now added to the
  467.                                   response message
  468.                                 * Fixed bug in wildcard matching
  469.  
  470. 1.10            20 Aug 1996     * Now supports SRIF interface, used
  471.                                   by Binkley 2.60 XE, Xenia, McMail,
  472.                                   Cantaloup, ...
  473.                                 * Option to update download counters
  474.                                 * More selective dupe-checking
  475.                                 * Limits are no longer hardcoded and
  476.                                   can now be set in PRP.CFG
  477.                                 * Proper descriptions are now given
  478.                                   with magic names if they are in the
  479.                                   PB filebase, the listingfile needs
  480.                                   no longer be FILES.BBS in the same
  481.                                   directory as the magic file
  482.                                 * Fixed a small bug that caused
  483.                                   download counters >99 not to be
  484.                                   stripped off properly
  485.                                 * Fixed another small bug in wildcard
  486.                                   matching; should be all fixed now
  487.                                 * If PBPATH is not defined in PRP.CFG,
  488.                                   PRP now reads PROBOARD environment
  489.                                   variable instead of PB
  490.  
  491. 1.11            7 Sep 1996      * Binkley 2.60 XE seems to expect ERPs
  492.                                   to create the necessary outbound
  493.                                   subdirectories themselves; PRP does
  494.                                   this now
  495.                                 * Documented the fact that Janus protocol
  496.                                   should be disabled in Binkley 2.60 XE
  497.                                 * Temporary mail packets are now created
  498.                                   in the directory where the environment
  499.                                   variable TEMP points at, instead of
  500.                                   always in the current directory
  501.                                 * Added REPORT option to disable generating
  502.                                   a response message if no errors occurred
  503.                                 * Added macros @FILES@, @KB@, @FREEFILES@
  504.                                   and @FREEKB@ in message template
  505.                                 * Error messages are now also written to
  506.                                   the logfile for later examination
  507.                                 * Added PREPENDPLUS keyword to disable
  508.                                   the '+' before the filenames in the
  509.                                   response file
  510.                                 * Added SAMEFILE keyword for mailers that
  511.                                   use the same file for the request and
  512.                                   the response file (e.g. InterMail)
  513.                                 * Added InterMail setup information
  514.  
  515. *** CREDITS ***
  516.  
  517. Thanks to the following people for giving me useful suggestions and/or
  518. reporting bugs: (in chronological order)
  519.  
  520. Jacques Theys     suggested file sharing compatibility + McMail strings
  521. Jurre Van Dijken  requested download counter update option
  522. Hans Waasdorp     requested option to disable report if no errors
  523. Tobias Ernst      informed me that Janus must be disabled in Binkley
  524. David Moufarrege  informed me that InterMail didn't work with PRP 1.10
  525.  
  526. Thanks to the following people for helping me test PRP before each
  527. release: (in alphabetical order)
  528.  
  529. Olivier Baum
  530. Jochen De Smet
  531. Joost Luyten
  532.  
  533. Some of the SRIF-mailer settings were taken from the documentation
  534. of MaxF'Req file request processor written by Wilfried Brinkmann.
  535.  
  536. The SRIF (Standard Request Information File) file format is Copyright
  537. (c) 1994,95 by Gordian Schuermann & Mirko Mucko.
  538.  
  539. *** DISCLAIMER ***
  540.  
  541. I EXCLUDE ANY AND ALL IMPLIED WARRANTIES, INCLUDING WARRANTIES OF
  542. MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. I MAKE NO WARRANTY
  543. OR REPRESENTATION, EITHER EXPRESS OR IMPLIED, WITH RESPECT TO THIS SOFTWARE,
  544. ITS QUALITY, PERFORMANCE, MERCHANTABILITY, OR FITNESS FOR A PARTICULAR
  545. PURPOSE. I SHALL HAVE NO LIABILITY FOR SPECIAL, INCIDENTAL, OR CONSEQUENTIAL
  546. DAMAGES ARISING OUT OF OR RESULTING FROM THE USE OR MODIFICATION OF THIS
  547. SOFTWARE.
  548.  
  549. *** END OF DOCUMENT ***
  550.