home *** CD-ROM | disk | FTP | other *** search
/ High Voltage Shareware / high1.zip / high1 / DIR24 / PSRT_10B.ZIP / PKTSORT.DOC < prev    next >
Text File  |  1993-12-04  |  9KB  |  272 lines

  1. PacketSorter v1.0b
  2. Copyright 1993, Rolf K. Wilms
  3.  
  4.  
  5. Contents
  6.  
  7. 0.     A warning
  8. 1.    System requirements
  9. 2.    Introduction
  10. 3.    Quick installation for Squish users
  11. 4.    Installation 
  12. 5.    Command line options and modes of operation
  13. 6.    Packets recognized and created
  14. 7.    Return codes
  15. 8.    Disk space consumption
  16. 9.    Technology
  17. 10.    Author
  18. 11.    Contents of the archive
  19. 12.    Thanks
  20. 13.    License and NO WARRANTY
  21.  
  22.  
  23. 0. A warning
  24.  
  25. PacketSorter has only been tested a few different systems. 
  26. Although PacketSorter performed well on these  systems there is 
  27. no guarantee that it does not break yours. It is no bad idea to back 
  28. up your mail packets before you try PacketSorter the first time.
  29.  
  30. 1. System requirements
  31.  
  32. Operating system:    OS/2 2.x 
  33.             or DOS 3.0 or higher 
  34.  
  35. Processor:        i386 or higher
  36.  
  37.  
  38. 2. Introduction
  39.  
  40. PacketSorter is a utility for defragmentation and splitting FidoNet 
  41. (FTS-0001) message packets. It has been developed because the 
  42. time the echomail tosser Squish needs to toss messsages into the 
  43. messagebase heavily depends on the fragmentation level of the 
  44. packets received. The packets you receive from your links are 
  45. usually not sorted in any order. PacketSorter groups the messages 
  46. contained in the packets by their area tag. On my system the 
  47. packets defragmented with PacketSorter are tossed up to 5 times 
  48. faster than the original packets. PacketSorter is not limited to be 
  49. used only with Squish. You may use PacketSorter with any other 
  50. echomail processor.
  51.  
  52. FTS-0001 specifies no limit to the size of messages. Some echomail 
  53. processors crash if they're fed with messages that exceed a certain 
  54. size or those messages get dumped. The following echomail 
  55. tosssers are said to have limits:
  56.  
  57. GroupMail         8K
  58. QMail            16K
  59. ConfMail        14K
  60. QEcho        10K
  61. TosScan        32K
  62. Squish        16K
  63.  
  64. PacketSorter can split large messages according to FSC-0047.
  65.     
  66.  
  67. 3. Quick installation for Squish users
  68.  
  69. If you are using OS/2, copy EMX.DLL in OS2\DLL.
  70. If you are using DOS, copy EMX.EXE in your Squish directory.
  71.  
  72. Copy PKTSORT.EXE in your Squish directory.
  73.  
  74. Edit the EXTRACT commands in your compress.cfg file: 
  75. Insert 'pktsort -s16000' before each call to an unpacker. Examples:
  76.  
  77. OS2    Extract    unzip -n %a %f
  78. becomes
  79. OS2    Extract    pktsort -s16000 unzip -n %a %f
  80.  
  81. OS2    Extract    doswrap pkunzip -n %a %f
  82. becomes
  83. OS2    Extract    pktsort -s16000 doswrap pkunzip -n %a %f
  84.  
  85. DOS    Extract    pkunzip -n %a %f
  86. becomes
  87. DOS    Extract    pktsort -s16000 pkunzip -n %a %f
  88.  
  89. 4. Installation 
  90.  
  91. If you are using OS/2, copy EMX.DLL in OS2\DLL. If you are 
  92. using DOS, copy EMX.EXE in one directory with PKTSORT.EXE. 
  93. If you have EMX allready installed, then check the version. The 
  94. EMX version distributed with PacketSorter is 0.8g. I do not know 
  95. how PacketSorter performes with other versions than 0.8g, 
  96. because I did not try it.
  97.  
  98. 5. Command line options and modes of operation
  99.  
  100. Syntax: 
  101. pktsort [-d<dir>] [-w<size>] [-a<count>] [-s<size>] [-h] 
  102.     [-l<file>] [<program-with -args>]
  103.  
  104. Parameters to command line options have to follow immediately 
  105. after the option letter. Thus 
  106. pktsort -w 2000  is wrong but
  107. pktsort -w2000   is correcct.
  108.  
  109. -d<dir> Specify dir as the directory where PacketSorter finds 
  110. FidoNet packets to process. Default is the current directory.
  111.  
  112. -w<size> Specify the size of the message window, that is the 
  113. maximum number of messages to keep in main memory during 
  114. defragmentation. If this number is less than the actual number of 
  115. messages to process, the messages can only be partially 
  116. defragmented. Contiguous blocks of <size> messages are allways 
  117. completely defragmented. The default size is 1000. With an 
  118. average message size of 1k a maximum of 1M of main memory 
  119. would be used for messages. Do not specify a size that would 
  120. need more than your free memory, because your system would 
  121. then start  swapping memory to disk, yielding poor performance 
  122. (this also applies to DOS!). A <size> of 1 means no 
  123. defragmentation.
  124.  
  125. -a<count> Reserve space for <count> different areas. If space for 
  126. more than <count> different areas is needed, this space is 
  127. allocated dynamically. I recommend not to use this option 
  128. because the dynamic allocation in this version of PacketSorter is 
  129. so fast, that you would not notice a difference. The default is 100.
  130.  
  131. -s<size> Enable message splitting acording to FSC-0047. Messages 
  132. larger than <size> are split into smaller parts. Message-id kludges 
  133. are stripped from all parts but the first to prevent those parts to be 
  134. killed by dupe detection. The default is no splitting. The 
  135. minimum <size> is 8000.
  136.  
  137. -h Display a very short help.
  138.  
  139. -l<file> Log info on messages processed and split to <file>. The 
  140. default is no logging.
  141.  
  142. [program-with-args] Execute a program (with optional 
  143. arguments) before processing packets. Only packets that are 
  144. created by that program will then be processed by PacketSorter. If 
  145. the program returns another code than zero, PacketSorter will not 
  146. process packets. The program will usually be an archive 
  147. extraction program like unzip. You can let your echomail tosser 
  148. call PacketSorter by specifiying PKTSORT as your archive 
  149. extractor and using the actual archive processor (with options) as 
  150. program-with-args. See "Quick installation for Squish users" for 
  151. examples. If program-with-args is not specified, PacketSorter will 
  152. process all FTS-0001 packets it finds in the current directory or 
  153. that one specified by -d. This is useful if you receive 
  154. uncompressed pakets.
  155.  
  156.  
  157.  
  158. 6. Packets recognized and created
  159.  
  160. PacketSorter will process those packets that have the filename 
  161. extension .pkt and that have a valid packet id in the packet 
  162. header. 
  163.  
  164. PacketSorter merges all packets that originate from the same node 
  165. and contain the same password into one packet. Only zone, net 
  166. and node are recognized. The name of the packet created will be 
  167. one of the names of the input packets. If you do not have area 
  168. passwords with your points their packets could be merged into 
  169. one if they send uncompressed packets and you do not process 
  170. the packets immediately after receiving them, but this should not 
  171. be a problem. 
  172.  
  173. PacketSorter uses a hashing technique to perform the 
  174. defragmentation. So there is no 'real' sorting done and the 
  175. defragmented areas are unordered. The order of the messages 
  176. within an area remains unchanged. 
  177.  
  178. 7. Return codes
  179.  
  180. PacketSorter returns the return code of the program executed 
  181. (program-with-args) or zero. If PacketSorter encounters any 
  182. problem, the original packets are retained and the tosser may try 
  183. to toss the undefragmented packets.
  184.  
  185.  
  186. 8. Disk space consumption
  187.  
  188. PacketSorter needs exactly as much additional disk space as is  
  189. occupied by the packets to process.
  190.  
  191.  
  192. 9. Technology
  193.  
  194. PacketSorter is written in C++ and compiled with GNU GCC. 
  195. Runtime system is EMX. As a consequence PacketSorter runs both 
  196. under OS/2 and DOS in 32-BIT flat memory model. It does not 
  197. run in MS-Windows or OS/2 DOS emulation.
  198.  
  199.  
  200. 10. Author
  201.  
  202. The autor of PacketSorter is Rolf K. Wilms. He may be contacted 
  203. via 
  204. Fidonet:    2:2401/301.8
  205. Internet:    rwilms@kottan.bo.open.de
  206. Mail:        Rolf K. Wilms, Franziska- 44a, 45131 Essen
  207.  
  208. Bug reports are welcome. I'm also interested how PacketSorter 
  209. performs with echomail tossers other than Squish.
  210.  
  211.  
  212. 11. Contents of the archive
  213.  
  214. The original distribution archive of PaccketSorter includes the 
  215. following files:
  216.  
  217.     pktsort.doc    this file
  218.     pktsort.exe    PacketSorter executable for DOS and OS/2
  219.     emx.exe    EMX runtime module for DOS
  220.     emx.dll    EMX runtime module for OS/2
  221.     file_id.diz    A small description of PacketSorter
  222.     history.doc    What has been done
  223.  
  224.  
  225. 12. Thanks
  226.  
  227. Thanks to Peter Scheffer, Peter Kaszanics and Robert Dahlem for 
  228. testing PacketSorter.
  229.  
  230.  
  231. 13. License and NO WARRANTY
  232.  
  233. The author grants you the right to use PaketSorter in any 
  234. environment. The author grants you the right to distribute the 
  235. unmodified archive as long as you do not charge for the contents 
  236. of the archive or the distribution. 
  237.  
  238.                             NO WARRANTY
  239.  
  240. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, 
  241. THERE IS NO WARRANTY FOR THE PROGRAM, TO THE 
  242. EXTENT PERMITTED BY APPLICABLE LAW.  EXCEPT WHEN 
  243. OTHERWISE STATED IN WRITING THE COPYRIGHT 
  244. HOLDERS AND/OR OTHER PARTIES PROVIDE THE 
  245. PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, 
  246. EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT 
  247. LIMITED TO, THE IMPLIED WARRANTIES OF 
  248. MERCHANTABILITY AND FITNESS FOR A PARTICULAR 
  249. PURPOSE.  THE  ENTIRE RISK AS
  250. TO THE QUALITY AND PERFORMANCE OF THE PROGRAM 
  251. IS WITH YOU.  SHOULD THE PROGRAM PROVE DEFECTIVE, 
  252. YOU ASSUME THE COST OF ALL NECESSARY SERVICING, 
  253. REPAIR OR CORRECTION.
  254.  
  255. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR 
  256. AGREED TO IN WRITING WILL ANY COPYRIGHT HOLDER, 
  257. OR ANY OTHER PARTY WHO MAY MODIFY AND/OR 
  258. REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE 
  259. LIABLE TO YOU FOR DAMAGES, INCLUDING ANY 
  260. GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL 
  261. DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE 
  262. THE PROGRAM (INCLUDING BUT NOT  LIMITED TO LOSS 
  263. OF DATA OR DATA BEING RENDERED INACCURATE OR 
  264. LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A 
  265. FAILURE OF THE PROGRAM TO OPERATE WITH ANY 
  266. OTHER PROGRAMS), EVEN IF SUCH HOLDER OR OTHER 
  267. PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH 
  268. DAMAGES. 
  269.  
  270.                      END OF TERMS AND CONDITIONS
  271.  
  272.