home *** CD-ROM | disk | FTP | other *** search
/ PC Online 1997 October / PCO1097.ISO / FilesBBS / DOS / PRP115.EXE / PRP.DOC < prev    next >
Encoding:
Text File  |  1997-08-21  |  40.0 KB  |  928 lines

  1. ╔══════════════════════════════════════════════╗
  2. ║       ProBoard Request Processor v1.15       ║
  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 but not
  18. limited to FrontDoor, MainDoor, InterMail, McMail, BinkleyTerm,
  19. Xenia, Cantaloup, T-Mail. PRP should work with all mailers that
  20. support external file request processors either through a command
  21. line interface or through the SRIF interface.
  22.  
  23. PRP can send TIC files along with requested files, which can be
  24. used for automated file processing by the requesting system.
  25.  
  26. PRP comes in the following flavours:
  27.    PRP.EXE   : 16-bit DOS version
  28.    PRP2.EXE  : 32-bit OS/2 version
  29.    PRP32.EXE : 32-bit Windows 95/NT version
  30.  
  31. PRP runs fine on multi-node systems; all it's file access is
  32. done in shared mode and you can configure a retry delay if it
  33. encounters a sharing violation while accessing the ProBoard
  34. index files.
  35.  
  36. Both normal file requests and update requests (only if a file
  37. is newer than a certain date) are supported. Separate request
  38. limits for secure and unsecure sessions, and unlimited requests
  39. from free areas (optionally) are also supported.
  40.  
  41. You can selectively prevent systems from requesting files
  42. through a trashcan file (both address & sysop based),
  43. allowing only listed systems to request files and/or not
  44. allowing points to request files.
  45.  
  46. You can also give selective access to secure and unsecure
  47. systems via security levels, flags and groups.
  48.  
  49. Passwords are supported for magic files (for example to send
  50. gamma or registered versions of a program only to authorized
  51. people). Passwords for files in general are not supported,
  52. and will most likely not be supported in the future either,
  53. as the usefulness of such a feature seems doubtful to me.
  54.  
  55. If you are looking for bells and whistles, like timeslots,
  56. multi-colour windowed screens and setup programs, this program
  57. is not for you.
  58. If you are looking for a simple, robust and most of all
  59. fast file request processor for your ProBoard-based BBS,
  60. this is what you've been waiting for.
  61.  
  62. *** INSTALLATION ***
  63.  
  64. First unpack the archive into a separate directory
  65. (recommended) or into your mailer's directory.
  66.  
  67. To upgrade from a previous version of PRP, simply unpack the
  68. archive into the PRP directory. Your configuration and template
  69. files will be left intact. However, to use some of the new
  70. features, changing the configuration file will be necessary.
  71.  
  72. For any mailer, you should use the PRP version for the same
  73. operating system as the mailer itself. So use PRP.EXE for
  74. DOS mailers, PRP2.EXE for OS/2 mailers and PRP32.EXE for
  75. Windows 95/NT mailers.
  76.  
  77. A) FrontDoor/MainDoor
  78.  
  79. Set SRIF=NO in PRP.CFG.
  80.  
  81. Launch FDSETUP/MDSETUP and set the following information
  82. in Mailer/File requests/Request processor:
  83.  
  84. Program   C:\FD\PRP\PRP.EXE =R =T =X =A "=O"                (*)
  85. Enabled   Yes
  86. Swapping  No                                                (**)
  87.  
  88. (*) use the correct path, of course
  89. (**) set to Yes if you're really low on memory
  90.  
  91. This requires the registered version of FrontDoor. It works
  92. with the unregistered version of MainDoor, though.
  93.  
  94. B) InterMail
  95.  
  96. Set SRIF=NO, PREPENDPLUS=NO and SAMEFILE=YES in PRP.CFG.
  97.  
  98. Set up the following command string for the request processor:
  99.  
  100. C:\IMAIL\PRP\PRP.EXE %F %X %A %O                            (*)
  101.  
  102. (*) use the correct path, of course
  103.  
  104. C) McMail
  105.  
  106. You can install PRP either using the SRIF interface or the command
  107. line interface.
  108.  
  109. 1) Command line interface
  110.  
  111. Set SRIF=NO in PRP.CFG.
  112.  
  113. Set up the following command string:
  114.  
  115. ReqProcessor C:\MCMAIL\PRP\PRP.EXE =PFL =PXL =SU =PA "=RS"  (*)
  116.  
  117. 2) SRIF interface
  118.  
  119. Set SRIF=YES in PRP.CFG.
  120.  
  121. Set up the following command string:
  122.  
  123. ReqProcessor C:\MCMAIL\PRP\PRP.EXE =SRIF                    (*)
  124.  
  125. (*) use the correct path, of course
  126.  
  127. D) BinkleyTerm 2.60 XE or later
  128.  
  129. Set SRIF=YES in PRP.CFG.
  130.  
  131. Insert the following line in BINKLEY.CFG:
  132.  
  133. SRIF C:\BT\PRP\PRP.EXE $s                                   (*)
  134.  
  135. (*) use the correct path, of course.
  136.  
  137. The $s will be replaced with the full path to the SRIF file.
  138.  
  139. Note: BinkleyTerm prior to version 2.60 XE does not support
  140. external request processors.
  141. BinkleyTerm 2.60 XE currently does not support SRIF external
  142. request processors when using the Janus protocol.
  143. Therefore you should also add NoJanus to your BINKLEY.CFG.
  144.  
  145. E) Xenia 1.98.04 or later
  146.  
  147. Set SRIF=YES in PRP.CFG.
  148.  
  149. Remove the line Request from the Xenia configuration file if
  150. that is present. Then add the following line:
  151.  
  152. ExtReq C:\XENIA\PRP\PRP.EXE                                 (*)
  153.  
  154. (*) use the correct path, of course.
  155.  
  156. Xenia will append the full path to the SRIF file.
  157.  
  158. Note: SRIF does not function properly with Xenia prior to
  159. version 1.98.04
  160.  
  161. F) Cantaloup
  162.  
  163. Set SRIF=YES in PRP.CFG.
  164.  
  165. Create the file FREQPROC.CMD with the following contents:
  166.  
  167. @C:\CLOUP\PRP\PRP.EXE %6                                    (*)
  168.  
  169. (*) use the correct path, of course.
  170.  
  171. Alternatively, you can also set up Cantaloup without using the
  172. SRIF interface. Cantaloup passes the following command line parameters
  173. to FREQPROC.CMD:
  174.  
  175. FREQPROC <baud> <task> <time> <originator> <secure> <srif> <req> <attach>
  176.  
  177. G) T-Mail
  178.  
  179. Set SRIF=YES, PREPENDPLUS=NO and ERASECHAR=^ in PRP.CFG.
  180.  
  181. Add the following lines to T-MAIL.CTL:
  182.  
  183. FLAG_DIR C:\T-MAIL\SEM                                            (*)
  184. FLAG_SESSION BUSY.%TASKNO%
  185. PROCESS FREQ C:\T-MAIL\PRP\PRP.EXE C:\T-MAIL\SEM\BUSY.%TASKNO%    (*)
  186.  
  187. (*) use the correct path, of course.
  188.  
  189. H) Others
  190.  
  191. Find out if your mailer supports external request processors, and whether
  192. it can call these using a command line interface or through the SRIF
  193. interface.
  194.  
  195. 1) Command line interface with different request/response file
  196.  
  197. Set SRIF=NO and SAMEFILE=NO in PRP.CFG.
  198.  
  199. Set up the command line as follows (look in your mailer's manual
  200. for the required macros):
  201.  
  202. PRP.EXE <infile> <outfile> <SECURE|UNSECURE> <address> "<sysopname>"
  203.  
  204. 2) Command line interface with same request/response file
  205.  
  206. Set SRIF=NO and SAMEFILE=YES in PRP.CFG.
  207.  
  208. Set up the command line as follows (look in your mailer's manual
  209. for the required macros):
  210.  
  211. PRP.EXE <in & outfile> <SECURE|UNSECURE> <address> "<sysopname>"
  212.  
  213. If you provide me with the correct command line for another mailer,
  214. it will be added to this doc and I will give credit to you.
  215.  
  216. 3) SRIF interface
  217.  
  218. Set SRIF=YES in PRP.CFG.
  219.  
  220. Set up the mailer so that it will call PRP.EXE with the full path and
  221. filename of the SRIF-file as only parameter.
  222.  
  223. Now also check if your mailer requires a special character before
  224. filenames that should be and that should not be deleted in the response
  225. file and set the PREPENDPLUS, KEEPCHAR and ERASECHAR keywords accordingly.
  226. (usually they should be left to the defaults: YES, + and -, resp.)
  227.  
  228. *** CONFIGURATION ***
  229.  
  230. The configuration file must be named PRP.CFG and must be in the
  231. same directory as PRP.EXE/PRP2.EXE. It is a text file configuration,
  232. and can contain the following keywords (in alphabetical order).
  233. Everything after a semicolon (;) is treated as a comment and ignored.
  234.  
  235. ADDRESS=<zone>:<net>/<node>[.<point>]
  236. Your main address, in the form zone:net/node.point. Any omitted fields
  237. in the address (e.g. point) are assumed to be zero.
  238. This address will be used as the origin for the file request response
  239. message if no other AKA is matched, and as the destination for the
  240. local carbon copy of the response messages.
  241.  
  242. AKA=<zone>:<net>/<node>[.<point>],<minzone>[-<maxzone>]
  243. Your main address or an AKA, in the form zone:net/node.point. Any
  244. omitted fields in the address (e.g. point) are assumed to be zero.
  245. If maxzone is omitted, it will be assumed to be equal to minzone.
  246. The first AKA that contains the receiver's main zone number in
  247. the minzone-maxzone range, will be used as the origin for the file
  248. request response message. If no AKA is matched, the main address
  249. will be used instead.
  250. There may be upto 16 AKAs.
  251.  
  252. ALLOWPOINTS=<YES|NO>
  253. If set to NO, points are not allowed to request any files.
  254. If set to YES , points are allowed to request files (however, if
  255. LISTEDONLY=YES the LISTEDPOINTS setting applies).
  256. The default is YES.
  257.  
  258. AVOIDMULTI=<YES|NO>
  259. If set to YES, PRP 'remembers' how much a system requested today,
  260. and will prevent the request limits being exceeded by multiple
  261. calls.
  262. The default is NO, which is also the behaviour of PRP versions
  263. prior to 1.13.
  264. To implement this, PRP creates a binary file called PRPTODAY.DAT
  265. in the same directory as PRP.EXE, which is erased every day.
  266. This file has the following structure:
  267. 2 bytes  current day (1..31)
  268. 2 bytes  current month (1..12)
  269. 2 bytes  current year (1996..?)
  270. 2 bytes  number of nodes in file
  271. For every node:
  272. 2 bytes  zone
  273. 2 bytes  net
  274. 2 bytes  node
  275. 2 bytes  point
  276. 2 bytes  number of files requested today upto now
  277. 4 bytes  number of bytes requested today upto now
  278. NOTE: People can of course still masquerade as someone else
  279.       to request files. There's nothing I can do about that.
  280.  
  281. CCFROMADDR=<address to be used as from in carbon copy messages>
  282. If you omit this option, your main address will be used (note that
  283. in that case some tossers may have problems with tossing the messages
  284. so it may be a good idea to use e.g. a fake point for this address).
  285.  
  286. CCPKTPATH=<path where local pkt's should be created>
  287. If you use this option, PRP will make a carbon copy of the
  288. response message addressed to the local sysop's name (see
  289. SYSOPNAME keyword). The PKT file for this message will
  290. be created in the path you specify. This should be the
  291. same path as your mailer/tosser's "inbound mail packets"
  292. path.
  293. The message will be processed by your mail tosser the
  294. next time you toss your mail.
  295.  
  296. CHECKEXTENSION=<YES|NO>
  297. When set to NO, the default and also the behaviour of previous
  298. versions of PRP, the extension of files is ignored, and the first
  299. matching file will be sent. For example, if someone freqs TEST.ARJ
  300. and you have TEST.ZIP and TEST.LZH, TEST.ZIP will be sent.
  301. This option also implies that if somebody freqs for example
  302. TEST.*, he will only receive the first file, the others will be
  303. considered duplicates.
  304. If set to YES, the file extension is significant. So if someone
  305. freqs TEST.ARJ and you have TEST.ZIP and TEST.LZH, neither of them
  306. will be sent.
  307. This option also implies that if somebody freqs for example
  308. TEST.*, he will receive all matching files, like TEST.ZIP,
  309. TEST.ARJ, etc.
  310. NOTE: There are two exceptions to this option:
  311. 1) extensions that end in two digits (most often some form of nodelist)
  312.    will always be treated as if this option was set to YES. So if someone
  313.    freqs NODEDIFF.Z96 and you have NODEDIFF.Z89 and NODEDIFF.Z82, neither
  314.    of them will be sent, regardless of this setting.
  315. 2) if the base filename contains only a *, the extension will always be
  316.    significant. So if someone freqs *.RUL, not the entire filebase will
  317.    be sent.
  318.  
  319. COPYLOCAL=<path>
  320. If this option is present, files from CD-ROM areas will be copied
  321. to <path> before sending them. If this option is left out, the files
  322. won't be copied to a local drive. The <path> must be a valid
  323. directory, with or without trailing backslash. If the <path> is
  324. invalid, PRP will not function properly.
  325.  
  326. ERASECHAR=<character>
  327. The character that should be prepended to filenames in the response file
  328. that should be deleted after sending (e.g. the response message packet
  329. and CD-ROM files that have been copied locally). By default (and for
  330. most mailers) this is -.
  331.  
  332. FILEWAIT=<retries>
  333. Defines the number of times PRP will retry to open the ProBoard index
  334. files if an access denied error occurs, e.g. because PBUTIL FI is
  335. running in another task. PRP will wait one second between every retry,
  336. so this is effectively the time in seconds during which it will retry
  337. opening the files.
  338. Especially multi-node systems are recommended to use a high enough
  339. value here (also the more files there are, the longer PBUTIL FI will
  340. take and the higher this value should be).
  341. You can always abort the retry sequence manually by pressing ESC.
  342. The default setting is 0 (no retry).
  343.  
  344. FLAGS=<flaglist>
  345. List of flags the requesting system will be assigned. Valid flags are
  346. A..Z and 1..6. There are no commas between the different flags. Default
  347. is no flags.
  348. In the ProCfg File Area Manager you can specify flags that a user is
  349. required to have to be able to access a specific area and flags that a
  350. user may not have to access it.
  351.  
  352. FLAGS_SECURE=<flaglist>
  353. Same as FLAGS but for secure sessions. If omitted, the FLAGS setting will
  354. be used for secure sessions as well.
  355.  
  356. FREEFILES=<YES|NO>
  357. If set to YES, request limits are ignored for file areas marked
  358. as 'free' in ProBoard. This is also the default behaviour.
  359. This only affects number of files & kb limits, security level
  360. limits and flags & group access restrictions are still respected even
  361. if the area is marked as free.
  362.  
  363. FREEMAGIC=<YES|NO>
  364. If set to YES, request limits are ignored for files requested
  365. using magic names. This is also the default behaviour.
  366.  
  367. GROUPS=<grouplist>
  368. List of groups the requesting system has access to. A group is
  369. identified by a number between 1 and 255. Different groups are
  370. separated by a comma. You can specify a range of groups with
  371. a hyphen, e.g. 1-255. The default is all the groups.
  372.  
  373. GROUPS_SECURE=<grouplist>
  374. Same as GROUPS but for secure sessions. If omitted, the GROUPS
  375. setting will be used for secure sessions as well.
  376.  
  377. KEEPCHAR=<character>
  378. The character that should be prepended to filenames in the response file
  379. that should not be deleted after sending. By default this is +. This
  380. character is prepended only if PREPENDPLUS=YES.
  381. NOTE: I don't currently know any mailer that requires changing this,
  382. but if you need it, the feature is there.
  383.  
  384. LISTEDONLY=<YES|NO>
  385. If set to YES, only nodes listed in the nodelist(s) can request files.
  386. For points, the bossnode must be listed if LISTEDPOINTS=NO. They must
  387. be listed separately - with Point status - if LISTEDPOINTS=YES.
  388. The default is NO.
  389. NOTE: This feature requires that the NODE_IDX.PRO file is kept up
  390. to date by running PBUTIL NC when a new nodelist comes in. If you
  391. use nodelists other than NODELIST.nnn (e.g. nodelists of other
  392. networks and/or pointlists), you must specify these on PBUTIL NC's
  393. commandline (see the ProBoard documentation for more info). Point-
  394. lists are sometimes distributed in a so-called Boss-format; this
  395. format is incompatible with ProBoard (and PRP). You must use the
  396. so-called Point-format (where points are identified with Point
  397. in the status field).
  398. If NODE_IDX.PRO or any of the nodelists referenced within can't be
  399. read, PRP will assume the system is listed (of course an error message
  400. will be written to the logfile as well).
  401.  
  402. LISTEDPOINTS=<YES|NO>
  403. If set to YES, points must be listed separately in the nodelist (see
  404. LISTEDONLY). If set to NO, it is enough that their bossnode is listed.
  405. This setting is ignored if LISTEDONLY=NO and/or if ALLOWPOINTS=NO.
  406. The default is NO.
  407.  
  408. LOGFILE=<logfile>
  409. Defines the path and filename of the logfile. Leave empty, or
  410. simply omit, to disable logging.
  411.  
  412. MAGIC=<list with magic file names>
  413. Defines the path and filename of the file containing a list
  414. of magic filenames (same file as the alias file in FrontDoor).
  415. If MAGICFORMAT=NORMAL, each non-blank line in the magic file list
  416. should have the following structure. If MAGICFORMAT=BINKLEY, only
  417. the lines beginning with the @-sign will be read.
  418. <magic name>[<space>!<password>] [<filespec> [<filespec> ...]]
  419. (see SAMPLE.MAG for an example)
  420. If a password is specified, it must be preceded by at least one
  421. space and an exclamation mark (!). The password itself may not
  422. contain spaces (it may contain exclamation marks though), and
  423. it is case insensitive.
  424. The file specifications must be separated by at least one space.
  425. The file specifications may contain wildcards, but they should always
  426. be the full paths, including drive letter and directories.
  427. In case of wildcards, all files conforming to the file specification
  428. will be sent (note that this is different from earlier versions of PRP).
  429. If this option is omitted, no magic files will be available.
  430. NOTE: When magic files are requested, the files will be searched
  431. in the ProBoard filebase (even in areas normally not authorized
  432. by the security level). If they are found, the description will be
  433. taken from there, and the download counters will be updated if
  434. that option is set. If it fails, no description will be provided
  435. and no download counters will be updated.
  436.  
  437. MAGICFORMAT=<NORMAL|BINKLEY>
  438. When set to NORMAL, the default and also the behaviour of previous
  439. versions of PRP, a standard magic file list as described above will
  440. be expected to be found in the file specified in the MAGIC= setting.
  441. When set to BINKLEY, a magic file list such as used by BinkleyTerm,
  442. Allfix, etc. will be expected instead. This implies that all magic
  443. files should be preceded by the @-sign. All the other lines in the
  444. file will be ignored.
  445.  
  446. MAXFILES=<maximum number of files>
  447. Defines the maximum number of files a system may request per
  448. session. If you omit this or set it to zero, there is no
  449. limit.
  450.  
  451. MAXFILES_SECURE=<maximum number of files>
  452. Same as MAXFILES but for secure sessions. If you omit this the
  453. setting from MAXFILES will be used.
  454.  
  455. MAXKB=<maximum number of kilobytes>
  456. Defines the maximum number of kilobytes a system may request
  457. per session. If you omit this or set it to zero, there is no
  458. limit.
  459.  
  460. MAXKB_SECURE=<maximum number of kilobytes>
  461. Same as MAXKB but for secure sessions. If you omit this the
  462. setting from MAXKB will be used.
  463.  
  464. MAXLEVEL=<maximum security level>
  465. Defines the maximum security level a file area may have in
  466. ProBoard for a system to be allowed to request from it. Set
  467. this to 32767 (or omit it) if you want no limit.
  468.  
  469. MAXLEVEL_SECURE=<maximum security level>
  470. Same as MAXLEVEL but for secure sessions. If you omit this the
  471. setting from MAXLEVEL will be used.
  472.  
  473. MAXFREQS=<n>
  474. The maximum number of separate file requests that can be processed
  475. at a time. The default is 256, as in the previous versions of PRP.
  476. In the DOS version, if you set this value too high you will get a
  477. "not enough memory" error. In the 32-bit versions that should not
  478. be a problem.
  479.  
  480. MAXMATCHES=<n>
  481. The maximum number of matching files that can be processed at a time.
  482. The default is 256, as in the previous versions of PRP.
  483. In the DOS version, if you set this value too high you will get a
  484. "not enough memory" error. In the 32-bit versions that should not
  485. be a problem.
  486.  
  487. MAXMAGICS=<n>
  488. The maximum number of magic filenames that can be processed. The
  489. default is 128, as in the previous versions of PRP.
  490. In the DOS version, if you set this value too high you will get a
  491. "not enough memory" error. In the 32-bit versions that should not
  492. be a problem.
  493.  
  494. MAXSPECSPERMAGIC=<n>
  495. The maximum number of file specifications per magic filename that can
  496. be processed. The default is 16. If you don't use multiple file
  497. specifications per magic, you can safely change this to 1.
  498. In the DOS version, if you set this value too high you will get a
  499. "not enough memory" error. In the 32-bit versions that should not
  500. be a problem.
  501.  
  502. PBPATH=<path to ProBoard system directory>
  503. If you omit this, the environment variable PROBOARD will be read,
  504. and if that isn't set, C:\PB will be assumed.
  505.  
  506. PREPENDPLUS=<YES|NO>
  507. If set to YES (the default), PRP will prepend the character you
  508. define in KEEPCHAR ('+' by default) to the filenames in the response
  509. file that should not be deleted. This should usually be left to the
  510. default: YES.
  511.  
  512. REPORT=<ALWAYS|ERROR|NEVER>
  513. Selects when a report message should be sent to the remote sysop:
  514. ALWAYS : always send a report message (default)
  515. ERROR  : send a report message only if an error occurred
  516.          (file not found, limit exceeded)
  517. NEVER  : never send a report message, send the files only
  518.  
  519. SAMEFILE=<YES|NO>
  520. This option is only significant if SRIF=NO. If set to NO (the default),
  521. PRP will take 5 parameters of which the first two will be the request
  522. file and the response file. If set to YES, PRP will take 4 parameters
  523. of which the first one will be both the request and response file. This
  524. is only required by InterMail as far as I know.
  525.  
  526. SENDDUPENAME=<YES|NO>
  527. If set to NO, the default and also the behaviour of previous
  528. versions of PRP, of more files with the same file name, including
  529. extension, only the first will be sent.
  530. If set to YES, the other files will be sent. Depending on the
  531. remote sysop's software, the files will be renamed, skipped,
  532. or the first files will be overwritten.
  533. If the files are copied to a local disk first, they are renamed,
  534. for example TEST.ZIP becomes TEST.ZI1, TEST.ZI2, etc.
  535. Two files with the same file name are sent *only* if they have
  536. different file sizes.
  537.  
  538. SRIF=<YES|NO>
  539. Whether your mailer uses the SRIF interface (e.g. Binkley 2.60 XE,
  540. Xenia) or a command line interface (e.g. FrontDoor). For more
  541. information see the installation instructions. The default is NO.
  542.  
  543. SYSOPNAME=<local sysop name>
  544. Your name. This is the name that the local carbon copy message will
  545. be addressed to if you use the CCPKTPATH option.
  546. The default is Sysop.
  547.  
  548. TICSYSTEM=<address>[,<password>[,<multidesc>]]
  549. This keyword specifies a system that will receive TIC files
  550. together with the requested files.
  551. <address> is the system's address, in the form zone:net/node[.point].
  552. <password> is the system's file password; when omitted the TIC
  553. files will not contain a password. The password is case-insensitive
  554. and is limited to 20 characters.
  555. <multidesc> is either YES or NO, depending on whether the system
  556. supports multiple description lines in the TIC file. The default
  557. is NO, which means the entire description will be put on a single
  558. description line (truncated at 255 characters).
  559. NOTE: The directory name the files are in will be used as the file area
  560. name after conversion to uppercase; e.g. if a certain file comes from the
  561. path E:\FILES\NODEDIFF\ then the file area name in the TIC will be NODEDIFF.
  562. You can configure upto 256 TIC-receiving systems.
  563.  
  564. TRASHCAN=<name of file containing locked-out systems>
  565. This file is an ASCII list of either sysop names or node numbers
  566. (or a mixture of them) that are not allowed to request any files
  567. except free files.
  568. No wildcards are allowed. Example:
  569. Julius Caesar
  570. 1:2/3.4
  571. Would lock out everybody whose name is Julius Caesar and also
  572. everybody whose nodenumber is 1:2/3.4.
  573. NOTE: People can of course still masquerade as someone else
  574.       to request files. There's nothing I can do about that.
  575. If you omit this option, all systems will be allowed to request.
  576.  
  577. UPDATECOUNTERS=<YES|NO>
  578. If set to YES, PRP will append the requested files to the download
  579. logfile, so that on the next PBUTIL FC the download counter for this
  580. file will be updated. The default is NO.
  581.  
  582. *** RESPONSE TEMPLATE ***
  583.  
  584. The response template file must be named PRP.TPL and must be in
  585. the same directory as PRP.EXE. If this file isn't found, no
  586. response will be generated.
  587.  
  588. The first character of each line can define when a line should
  589. be included in the response:
  590.  
  591. ;       comment, always ignored
  592. +       only if the request succeeded entirely
  593. *       only if the request succeeded at least partly
  594. -       only if the request didn't succeed entirely
  595. !       only if the request limits were exceeded
  596. %       only if a password error occurred
  597. ?       only if some of the requested files weren't found
  598. &       only if the system was found in TRASHCAN.CTL
  599. $       only if ALLOWPOINTS=NO and the system is a point
  600. ^       only if LISTEDONLY=YES and the system is unlisted
  601. #       always include this line
  602.  
  603. All other characters will cause the line to be always included. The
  604. # character is useful if you want a line beginning with any of the
  605. above characters to be always included.
  606.  
  607. You can use the following macros in the response template (case
  608. sensitive):
  609.  
  610. @SYSOPNAME@     name of sysop of requesting system
  611. @SYSOPFIRST@    first name of sysop of requesting system
  612. @FILES@         number of files sent
  613. @KB@            number of kilobytes sent
  614. @FREEFILES@     number of free files sent
  615. @FREEKB@        number of free kilobytes sent
  616. @MAXFILES@      maximum number of files this system can request
  617.                 per session (UNLIMITED if 0)
  618. @MAXKB@         maximum number of kilobytes this system can request
  619.                 per session (UNLIMITED if 0)
  620. @SENTFILES@     names and descriptions of sent files (everything
  621.                 else on this line will be ignored)
  622. @OVERLIMIT@     names and descriptions of files which exceeded limits
  623.                 (everything else on this line will be ignored)
  624. @BADPASSWORD@   names and descriptions of files for which the
  625.                 required password was not given
  626.                 (everything else on this line will be ignored)
  627. @NOTFOUND@      names of files for which no match was found
  628.                 (everything else on this line will be ignored)
  629.  
  630. See the example SAMPLE.TPL for an example on how to use these.
  631.  
  632. *** FILES.BBS ***
  633.  
  634. When a match is found, the file size and date/time stamp are
  635. looked up. It ignores this info in the FILES.BBS if present, so
  636. that an incorrect FILES.BBS doesn't cause incorrect results (like
  637. an attempt to send a missing file you forgot to delete from
  638. FILES.BBS etc.). Only the description is read from the FILES.BBS,
  639. with all optional information like file size, date/time, download
  640. counters etc. stripped.
  641. This way I also avoid compatibility problems with the different
  642. date formats etc.
  643. Extended descriptions are supported. The first non-whitespace character
  644. on each extended description line must be a +, | or >.
  645.  
  646. *** ERRORLEVELS ***
  647.  
  648. 0 = all OK
  649. 1 = syntax error
  650. 2 = file error
  651. 3 = memory error
  652.  
  653. *** CONTACTING THE AUTHOR ***
  654.  
  655. Although this is a freeware program, I am willing to give (limited)
  656. support for it. You can write netmail to me at 2:292/516@fidonet.org
  657. or e-mail to tomtorfs@mail.dma.be or tomtorfs@iname.com or call my BBS
  658. at 32-15-24.62.32 and leave a message.
  659.  
  660. You can always download the latest versions of my software and read
  661. about new features on my homepage: http://bewoner.dma.be/tomtorfs
  662. or http://80x86.home.ml.org.
  663.  
  664. *** SOURCE CODE ***
  665.  
  666. Sorry, no source code for this one. If you want to write your own
  667. file request processor, you'll find enough information in the
  668. FrontDoor development kit (FDDEV) and in the file SRIF.DOC (inside
  669. the MaxF'Req archive) to do so without having to see my source.
  670.  
  671. *** HISTORY OF PRP ***
  672.  
  673. Version         Release date    Changes
  674.  
  675. 1.0             9 Apr 1996      Original version
  676.  
  677. 1.01            3 May 1996      * Added file sharing support for
  678.                                   multiline BBSes
  679.  
  680. 1.02            27 May 1996     * Unlimited requests from free
  681.                                   file areas & free magic names
  682.                                   (configurable)
  683.                                 * Logging now possible
  684.                                 * Added documentation for setup
  685.                                   with McMail mailer
  686.                                 * Miscellaneous small changes to
  687.                                   the documentation & code
  688.  
  689. 1.02a           3 Jun 1996      * OS/2 problem fixed
  690.  
  691. 1.03            2 Aug 1996      * 32-bit OS/2 version included
  692.                                 * Copy local for cd-rom drives
  693.                                 * Supports ^AINTL,^AFMPT and ^ATOPT
  694.                                   for correctly creating messages
  695.                                   to points and/or other zones
  696.                                 * A tearline is now added to the
  697.                                   response message
  698.                                 * Fixed bug in wildcard matching
  699.  
  700. 1.10            20 Aug 1996     * Now supports SRIF interface, used
  701.                                   by Binkley 2.60 XE, Xenia, McMail,
  702.                                   Cantaloup, ...
  703.                                 * Option to update download counters
  704.                                 * More selective dupe-checking
  705.                                 * Limits are no longer hardcoded and
  706.                                   can now be set in PRP.CFG
  707.                                 * Proper descriptions are now given
  708.                                   with magic names if they are in the
  709.                                   PB filebase, the listingfile needs
  710.                                   no longer be FILES.BBS in the same
  711.                                   directory as the magic file
  712.                                 * Fixed a small bug that caused
  713.                                   download counters >99 not to be
  714.                                   stripped off properly
  715.                                 * Fixed another small bug in wildcard
  716.                                   matching; should be all fixed now
  717.                                 * If PBPATH is not defined in PRP.CFG,
  718.                                   PRP now reads PROBOARD environment
  719.                                   variable instead of PB
  720.  
  721. 1.11            7 Sep 1996      * Binkley 2.60 XE seems to expect ERPs
  722.                                   to create the necessary outbound
  723.                                   subdirectories themselves; PRP does
  724.                                   this now
  725.                                 * Documented the fact that Janus protocol
  726.                                   should be disabled in Binkley 2.60 XE
  727.                                 * Temporary mail packets are now created
  728.                                   in the directory where the environment
  729.                                   variable TEMP points at, instead of
  730.                                   always in the current directory
  731.                                 * Added REPORT option to disable generating
  732.                                   a response message if no errors occurred
  733.                                 * Added macros @FILES@, @KB@, @FREEFILES@
  734.                                   and @FREEKB@ in message template
  735.                                 * Error messages are now also written to
  736.                                   the logfile for later examination
  737.                                 * Added PREPENDPLUS keyword to disable
  738.                                   the '+' before the filenames in the
  739.                                   response file
  740.                                 * Added SAMEFILE keyword for mailers that
  741.                                   use the same file for the request and
  742.                                   the response file (e.g. InterMail)
  743.                                 * Added InterMail setup information
  744.                                 
  745. 1.12            30 Sep 1996     * Added support for passwords with
  746.                                   magic names; added @BADPASSWORD@
  747.                                   macros and % condition character
  748.                                   to handle password errors
  749.                                 * Magic files with wildcards will
  750.                                   now always send the most recent
  751.                                   file instead of the first file
  752.                                 * Comments now allowed in magic list
  753.                                 * Added sample magic list SAMPLE.MAG
  754.                                 * Added CCPKTPATH & SYSOPNAME options
  755.                                   to send a carbon copy of the report
  756.                                   message to the local sysop
  757.                                 * Fixed bug introduced in v1.10 that
  758.                                   caused files requested using magic
  759.                                   names to not have descriptions in
  760.                                   the response message sometimes
  761.                                 * Fixed bug that caused the very first
  762.                                   file in the file-index to never be
  763.                                   found
  764.                                 * Fixed bug that caused undefined
  765.                                   behaviour when a SRIF file doesn't
  766.                                   contain a RemoteStatus statement
  767.                                 * PRP now works properly with filepaths
  768.                                   that end with a (back)slash already
  769.  
  770. 1.13            16 Nov 1996     * T-Mail is now supported
  771.                                 * Added KEEPCHAR and ERASECHAR keywords
  772.                                 * Added the AVOIDMULTI keyword to prevent
  773.                                   people from avoiding the request limits
  774.                                   by doing multiple calls after each other
  775.                                 * Added support for TRASHCAN.CTL; also
  776.                                   added the & condition character for
  777.                                   systems found in TRASHCAN.CTL
  778.                                 * Fixed bug that caused local carbon
  779.                                   copies of the response message to
  780.                                   only display the first line of
  781.                                   multiline descriptions
  782.                                 * Fixed bug that caused PRP to always
  783.                                   use the last AKA of the remote system
  784.                                   when operating in SRIF mode, instead
  785.                                   of the first
  786.                                 * Fixed bug that caused bogus requests
  787.                                   like ROCKWELL*.* to fail
  788.                                 * Re-organized the configuration keywords
  789.                                   for better clarity; in this doc they
  790.                                   are listed alphabetically now and in
  791.                                   the sample configuration file they are
  792.                                   listed systematically
  793.  
  794. 1.13a           28 Nov 1996     * Fixed bug that caused the AVOIDMULTI
  795.                                   feature to be quite unstable (crashed
  796.                                   under some circumstances)
  797.  
  798. 1.14            15 Jun 1997     * Added the LISTEDONLY and LISTEDPOINTS
  799.                                   keywords to prevent unlisted nodes
  800.                                   and/or points from requesting files
  801.                                   (reads ProBoard's nodelist index);
  802.                                   added ^ condition character
  803.                                 * Added the ALLOWPOINTS keyword to
  804.                                   prevent points from requesting files;
  805.                                   added $ condition character
  806.                                 * Added support for multiple AKAs
  807.                                 * The response message is now sent
  808.                                   after the files, so that if the
  809.                                   connection is aborted, no message
  810.                                   is sent
  811.                                 * You can now use wildcards in the
  812.                                   magic name definitions and you
  813.                                   can put multiple filenames with
  814.                                   one magic
  815.                                 * Ignores the CHECKEXTENSION=NO setting
  816.                                   if the base filename contains only
  817.                                   a *
  818.                                 * PRP wrote 'sent' to the logfile if a
  819.                                   wrong password was specified; it writes
  820.                                   'bad pwd' now
  821.  
  822. 1.14a           21 Jun 1997     * Fixed bug that caused a general
  823.                                   protection fault in the OS/2 version
  824.  
  825. 1.15            21 Aug 1997     * Included Win95/NT version
  826.                                 * Added support for selective access based
  827.                                   on access flags and/or file groups
  828.                                 * Added support for Binkley-style
  829.                                   magic lists (with @-signs)
  830.                                 * Now supports sending TIC files together
  831.                                   with requested files
  832.                                 * Can now use a different address as
  833.                                   'from' in the carbon copy message
  834.                                 * Can now retry during a configurable time
  835.                                   if access to the ProBoard index files is
  836.                                   denied (for multi-node systems)
  837.                                 * Reformatted the logfile slightly (now
  838.                                   includes subdirectories)
  839.                                 * The subject line of the CC messages now
  840.                                   also includes the requester's address
  841.                                 * Added WHATSNEW.115 file which contains
  842.                                   the latest changes
  843.  
  844. *** CREDITS ***
  845.  
  846. Thanks to the following people for giving me useful suggestions and/or
  847. reporting bugs: (in chronological order)
  848.  
  849. v1.01
  850. Jacques Theys     suggested file sharing compatibility
  851.  
  852. v1.02
  853. Jacques Theys     provided the McMail setup string
  854.  
  855. v1.10
  856. Jurre Van Dijken  requested download counter update option
  857.  
  858. v1.11
  859. Hans Waasdorp     requested option to disable report if no errors
  860. Tobias Ernst      informed me that Janus must be disabled in Binkley XE
  861. David Moufarrege  informed me that InterMail didn't work with PRP 1.10
  862.  
  863. v1.12
  864. Lots of people reported the bug with no descriptions being sent when
  865. requesting using magic names in PRP 1.11.
  866.  
  867. v1.13
  868. Jacques Theys     informed me about the last-AKA bug in SRIF mode
  869. Hans Waasdorp     informed me about the "ROCKWELL*.*" problem
  870. Christoph Grigo   reported the bug with multiline descriptions in
  871.                   the local carbon copy & requested the TRASHCAN.CTL
  872.                   support and the AVOIDMULTI feature
  873. Ken Givens        requested T-Mail support and provided me with the
  874.                   correct settings for T-Mail
  875.  
  876. v1.13a
  877. Multiple people reported the bug with the AVOIDMULTI feature in
  878. PRP 1.13.
  879.  
  880. v1.14
  881. Christoph Grigo   requested the listed systems only feature
  882. Ronald Glaeser    requested the support for multiple AKAs
  883. Holger Riedl      requested that the response message be sent
  884.                   after the files
  885. Felix Mueller     requested the support for wildcards in the
  886.                   magics and multiple filenames per magic
  887. Rudolf Paege      reported the problem with CHECKEXTENSION=NO
  888.                   and base filenames with only a *
  889.  
  890. v1.15
  891. Sean Rima         requested the Win95/NT version and accepted
  892.                   to become the betatester for it
  893.                   & requested the CCFROMADDR feature
  894. Holger Riedl      requested the support for flags & groups
  895. Jochen De Smet    requested the support for Binkley-style
  896. & Jacques Theys   magic lists
  897. Hans Gras         requested the retry if access denied
  898.                   & the minor logfile reformatting
  899. Steven Leeman     requested adding the requester's address to
  900.                   the subject line of the CC messages
  901.  
  902. Thanks to the following people for helping me test PRP:
  903. (in alphabetical order)
  904.  
  905. Olivier Baum
  906. Jochen De Smet
  907. Joost Luyten
  908. David Moufarrege
  909. Sean Rima
  910.  
  911. Some of the SRIF-mailer settings were taken from the documentation
  912. of MaxF'Req file request processor written by Wilfried Brinkmann.
  913.  
  914. The SRIF (Standard Request Information File) file format is Copyright
  915. (c) 1994,95 by Gordian Schuermann & Mirko Mucko.
  916.  
  917. *** DISCLAIMER ***
  918.  
  919. I EXCLUDE ANY AND ALL IMPLIED WARRANTIES, INCLUDING WARRANTIES OF
  920. MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. I MAKE NO WARRANTY
  921. OR REPRESENTATION, EITHER EXPRESS OR IMPLIED, WITH RESPECT TO THIS SOFTWARE,
  922. ITS QUALITY, PERFORMANCE, MERCHANTABILITY, OR FITNESS FOR A PARTICULAR
  923. PURPOSE. I SHALL HAVE NO LIABILITY FOR SPECIAL, INCIDENTAL, OR CONSEQUENTIAL
  924. DAMAGES ARISING OUT OF OR RESULTING FROM THE USE OR MODIFICATION OF THIS
  925. SOFTWARE.
  926.  
  927. *** END OF DOCUMENT ***
  928.