PacketSorter v1.4 page 1/19 PacketSorter v1.4 Copyright 1993, 1994 Rolf K. Wilms Key Features ------------ - defragment FidoNet mail packets for up to 5 times faster tossing - split and unsplit large messages to fit your systems limits - sort messages by subject and/or time for easy thread-following - break down large inbound packets to a handy size - remove the garbage from 'bad' packets - operates stand-alone or can be called from echomail tosser - 32-BIT OS/2 and DOS version (needs i386 or higher) PacketSorter v1.4 page 2/19 Contents of this document ------------------------- 1.Brief license and warranty information ......................3 2.A warning ...................................................3 3.System requirements .........................................3 4.Introduction ................................................4 5.Installation ................................................5 As a VCPI client ..........................................5 As a DPMI client ..........................................5 Under OS/2 ................................................5 Quick installation for Squish users .......................6 Quick installation for CrossPoint users ...................6 Quick installation for IMail users ........................7 Quick installation for FastEcho users .....................8 Installation for users of other tossers ...................9 6.Ways of configuration .......................................9 7.Command line options ........................................10 -c configuration file name ........................10 -w number of messages to keep in memory ...........10 -s limit in bytes for (un)splitting messages ......10 -p max. number of messages in output packets ......11 -otime sort messages by time ..........................11 -osubject sort messages by subject and time ..............11 -g remove garbage from packets ....................11 -e select Archiver entry from cfg file ............12 -l log file name ..................................12 -d

directory where packets are searched ...........13 -h help ...........................................13 [program-with-args] exec. archiver before processing .....13 8. Setting the options via an environment variable ............13 9. Setting the options via a configuration file ...............14 10.Packets recognized and created .............................14 11.Return codes ...............................................15 12.Disk space consumption .....................................15 13.Removing garbage from packets ..............................15 14.Technology .................................................16 15.What is different in the registered version ................16 16.Other operating systems ....................................17 native MS-Windows .........................................17 Linux/Unix/Nextstep .......................................17 17.Author .....................................................17 18.Contents of the distribution archives ......................18 19.Thanks .....................................................19 PacketSorter v1.4 page 3/19 1. Brief license and warranty information ----------------------------------------- You may copy and distribute the unmodified distribution archives (PSRT_14.ZIP) as you receive it in any medium. You may use PacketSorter for testing if it is of value to you. You must not use PacketSorter for more than 30 days without registering it. After a period of 30 days you must either stop using PacketSorter or register. Look at the file 'ORDER.FRM' on how to register. The registration fee is US $15. There is no warranty. Please read the file 'license.doc' for details. 2. A warning ------------ This version of PacketSorter has only been tested on a few different systems, as it is any time when a new public release comes out. Although PacketSorter performed well on these systems there is no guarantee that it does not break yours. It is no bad idea to back up your mail packets before you try PacketSorter the first time. 3. System requirements ---------------------- Operating system: OS/2 2.x or DOS 3.0 or higher Processor: i386 or higher Memory: A minimum of 2MB is needed for DOS PacketSorter v1.4 page 4/19 4. Introduction --------------- PacketSorter is a utility for defragmenting, splitting, unsplitting, cleaning and sorting inbound FidoNet (FTS-0001) message packets. It has been developed in the first place because the time the echomail tosser Squish needs to toss messsages into the messagebase heavily depends on the fragmentation level of the packets received. The packets you receive from your links are usually not sorted in any order. PacketSorter groups the messages contained in the packets by their area tag. On my system the packets defragmented with PacketSorter are tossed by Squish up to 5 times faster than the original packets. The performance gain you will notice depends on the tosser you use, the messagebase you use and the performance of your disk subsystem. People using a Hudson-style messagebase or a hardware cache controller for the harddisk may notice no performance gain at all. PacketSorter is not limited to be used only with Squish. You may use PacketSorter with any other echomail processor. FTS-0001 specifies no limit to the size of messages. Some echomail processors crash if they're fed with messages that exceed a certain size or those messages get dumped. The following echomail tosssers are said to have limits: GroupMail 8K QMail 16K ConfMail 14K QEcho 10K TosScan 32K Squish 16K FastEcho 64K (configurable) PacketSorter can split and unsplit large messages according to FSC- 0047, so that your echomail processor operates well. Systems capable processing large messages can get the messages unsplit to their original size. See option -s. Large inbound packets can be broken down into several smaller ones. Some echomail processors benefit from this by saving disk space during tossing for downlinks. If packets are considered as "bad" by the echomail processor you may like to have smaller packets to examine manually. Messages within the echo areas can be sorted by subject and time or by time only. Sorting by time usually does not "look" different from unsorted messages when you list the messages in your mail reader but helps to put original messages before the replies. Sorting by subject and time does look different: all messages with identical subject are grouped together so you can quickly see what's going on in a thread. See options -otime, -osubject. PacketSorter v1.4 page 5/19 Sometimes you receive packets not only containig messages but also some "garbage". This garbage is introduced by poor software or transmission errors. The consequence of such "grunged" packets is that your tosser complains about "grunged messages", "data beyond logical end of file" or just loses messages. PacketSorter can clean such packets by throwing out the garbage, thus creating proper packets. Proper messages before and following a bad chunk will not be lost. Messages beyond the logical end of file will be recovered. Grunged packets can be renamed to *.bad depending on the amount of garbage removed. See option -g and the section 'Removing garbage from packets' for details. 5. Installation --------------- PacketSorter can be run in three different environments (DOS-VCPI, DOS- DPMI and OS/2). There are two DOS extenders (emx.exe and rsx.exe) and one DLL (emx.dll for OS/2) packed with PacketSorter in the distribution archives. As a VCPI client ---------------- This is the 'normal' mode under DOS. Make sure that you either have EMM386.EXE installed with EMS or don't have EMM386.EXE installed. If you have EMM386 installed without providing EMS memory you will see an error message 'Virtual mode not supported without VCPI'. The VCPI mode uses the file emx.exe. Make sure that emx.exe can be found in one of the directories of the PATH. You may look at the file emxinst.doc for advanced installation options available for the EMX DOS extender. As a DPMI client ---------------- This is to use if you want PacketSorter to run in Windows or OS/2 DOS-emulation (DOS box). PacketSorter needs the file RSX.EXE to run as a DPMI client. Make sure that rsx.exe can be found in one of the directories of the PATH and add the following to your environment: RSXOPT=-e You can do this by putting the following line in your autoexec.bat: SET RSXOPT=-e If you forget to set up the environment variable RSXOPT, you'll get an error message 'Can't find rsx387' when you start PacketSorter. You may look at the file rsxinst.doc for advanced installation options available for the RSX DOS extender. PacketSorter v1.4 page 6/19 Under OS/2 ---------- Copy emx.dll to \os2\dll You may look at the file emxinst.doc for advanced installation options available for the EMX runtime system. Quick installation for Squish users ----------------------------------- Follow the instructions for setting up PacketSorter to run as a DPMI, VCPI or OS/2 client. Make sure that Squish can swap to disk (swap keyword in squish.cfg). Copy PKTSORT.EXE in your Squish directory. Edit the EXTRACT commands in your compress.cfg file: Insert 'pktsort -s15000 -p500' before each call to an unpacker. Examples: OS2 Extract unzip -n %a %f becomes OS2 Extract pktsort -s16000 -p500 unzip -n %a %f OS2 Extract doswrap pkunzip -n %a %f becomes OS2 Extract pktsort -s16000 -p500 doswrap pkunzip -n %a %f DOS Extract pkunzip -n %a %f becomes DOS Extract pktsort -s16000 -p500 pkunzip -n %a %f If your system has less than 2 MB of free memory above the first megabyte, please read the section about the command line option -w in this document. Quick installation for CrossPoint users --------------------------------------- Follow the instructions for setting up PacketSorter to run as a DPMI or VCPI client. Copy PKTSORT.EXE to your CrossPoint directory. For each Fido-Box you have set up in 'Edit/Boxen' do the following: PacketSorter v1.4 page 7/19 Select 'Edit/Point' (in 'Edit/Boxen'). In the dialog, change the 'Download-Packer' entry by inserting '\xp\pktsort -s256000 -osubject' before the call to the packer (this assumes that CrossPoint is located in \XP). Example: pkunzip $DOWNFILE becomes \xp\pktsort -s256000 -osubject pkunzip $DOWNFILE As CrossPoint has no (known) limits to the size of messages that can be processed, the setting -s256000 will only split messages that exceed 265000 bytes and all already split messages that are smaller will be unsplit, so that you get most of the messages back to their original size. This is useful if you get Usenet news via a Usenet/Fidonet gateway. A lot of messages from the Usenet get split at the gateway, especially large UUENCODED files. Having these messages unsplit to their original size, you can directly UUDECODE them from within CrossPoint without unsplitting them manually. The setting -osubject sorts the messages by subject. If you want to use different options, refer to the section 'Command line options' in this document. If your system has less than 2 MB of free memory above the first megabyte, please read the section about the command line option -w in this document. Quick installation for IMail users ---------------------------------- Follow the instructions for setting up PacketSorter to run as a DPMI or VCPI client. Copy PKTSORT.EXE to your IMail directory. Copy the sample configuration file pktsort.cfg in your IMail directory. You will have to edit the configuration file in a later step. Set up the environment variable PKTSORT and specify the configuration to be used. Best is to include this in your AUTOECEC.BAT like that: SET PKTSORT=-cc:\imail\pktsort.cfg Edit the configuration file pktsort.cfg. You will have to set up some Archiver definitions for the archiver (decompression) programs you use: Eg. (add this to the configuration file): Archiver ARJ c:\tools\arj.exe PacketSorter v1.4 page 8/19 Archiver ZIP c:\tools\pkunzip.exe Archiver LHA c:\tools\lha.exe Archiver GUS c:\tools\gus.exe Now run Imsetup to change the decompression program settings in the following way: in each decompression program definition replace the name of the decompression program by PKTSORT.EXE -eKEY, where KEY is the abbreviation for the Archiver definition in the configuration file. Examples: ARJ ARJ.EXE e -y becomes ARJ PKTSORT.EXE -eARJ e -y PkZip PkunZip.exe -o -ed becomes PkZip PKTSORT.EXE -eZIP -o -ed You may edit the other settings in pktsort.cfg to fit your needs. Thanks to Johann H. Addicks for finding out how to set up PacketSorter in IMail. Quick installation for FastEcho users ------------------------------------- Follow the instructions for setting up PacketSorter to run as a DPMI or VCPI client. Copy PKTSORT.EXE to your FastEcho directory. Start FESetup and look which directory is set up as the TEMP-INBOUND directory for FastEcho. You'll find this setting in the menu SYSTEM/PATHNAMES/Temp. Inb. If there is no temporary inbound directory specified, please choose one, because the way installing PacketSorter for FastEcho is described here will not work without a temp. inbound directory. Check the maximum message size you have configured for FastEcho. You can find the value in SYSTEM/PARAMETERS/MESSAGEBUFFERSIZE. If the value there is zero, it means a maximum message size of 32000. Now change to the dialog where the decompession programs are set up. It's in SYSTEM/DECOMPRESSION PROGRAMS. Change each decompression program definition in the following way: preceed each definition with 'PKTSORT.EXE -d - s'. is the directory you looked up before. is the maximum message size you looked up before minus 1000 (for additional SEEN-BYs etc.). PacketSorter v1.4 page 9/19 Examples: I assume your temporary inbound directory is c:\fastecho\temp and the maximum message size is 32000. The decompression program definitions look like this: PKZip PkunZip.Exe -o -ed becomes PKZip PKTSORT.EXE -dc:\fastecho\temp -s31000 PkunZip.exe -o -ed LHa LHa.Exe e -m1 becomes LHa PKTSORT.EXE -dc:\fastecho\temp -s31000 LHa.exe e -m1 ARJ arj e -y becomes ARJ PKTSORT.EXE -dc:\fastecho\temp -s31000 arj.exe e -y Other options to PKTSORT.EXE may be specified before the name of the decompression program. Example: ARJ PKTSORT.EXE -dc:\fastecho\temp -s31000 -g3000 -osubject arj.exe e -y Another way to specify additional options to PacketSorter is to use a configuration file. Copy pktsort.cfg into the FastEcho directory and edit it to your needs. Installation for users of other tossers --------------------------------------- PacketSorter needs to be run on inbound packets, i.e. before the packets are tossed. Usually, inbound packets are received in compressed form in archives. Many tossers are smart enough to unpack the archives by calling an uncompression utility which you may specify in the tosser setup. This is the point where to 'hook' up PacketSorter: you specify PacketSorter as an uncompression program and let PacketSorter first call the 'real' uncompression program and then process the uncompressed packets. This way only packets received in compressed form will be processed by PacketSorter. If you want to process packets received uncompressed too, start PacketSorter before starting the tosser without specifying an archiver. See [program- with-args] in the 'Command line options' section of this document for further explaination. If you don't let your tosser unpack the archives, for example because you use an archiver shell like GUS before tossing, just run PacketSorter from the batch file after unpacking the archives. PacketSorter v1.4 page 10/19 6. Ways of configuration ------------------------ PacketSorter can be configured in three different ways. One is to use command line parameters, the second is to use an environment variable and the third is to use a configuration file. Theese three methods can be combined. If a configuration option is set by more than one method the following rule determines which one will be used: environment setting overrides configuration file setting and command line setting overrides environment setting. Archiver entries can only be defined in the configuration file. 7. Command line options ----------------------- Syntax: pktsort[-c] [-w] [-s] [-p] [-osubject | -otime] [-l] [-d] [-g] [-h] [-e [args] | program-with-args] -c configuration file name Specify the name of the configuration file. The default is "pktsort.cfg" which is searched in the current directory. Note that the current directory is not neccessarily the same as that where PKTSORT.EXE is located. If you want to be sure that the configuration file can allways be found, use the full path and filename. PacketSorter does not complain if the default configuration file cannot be found, only if a configuration file explicitly specified with -c cannot be found. -wnumber of messages to keep in memory Specify the size of the message window, that is the maximum number of messages to keep in main memory during defragmentation and subject/time sorting. If this number is less than the actual number of messages to process, the messages can only be partially defragmented or sorted. The default size is 1000. With an average message size of 1.3 kbytes a maximum of 1.3 MB of main memory would be used for messages. Do not specify a size that would need more than your free memory, because your system would then start swapping memory to disk, yielding very poor performance (this applies both to DOS and OS/2!). A of 1 means no defragmentation/sorting. (Un)Splitting messages and packets and removing garbage from packets still works fine with a of 1. -s limit in bytes for (un)splitting messages PacketSorter v1.4 page 11/19 Enable message splitting and unsplitting according to FSC-0047. Messages larger than are split into smaller parts. Message-id kludges are stripped from all parts but the first to prevent those parts to be killed by dupe detection. Messages which are already split according to FTS-0047 will be unsplit internally and will be re-split if the size of the unsplit messages exceeds . Incoming split messages can only be unsplit if all split parts are seen during a run of PacketSorter. Messages split multiple times, as it is possible with versions of PacketSorter up to v1.1b, will be unsplit 'recursivly'. The default is no splitting/unsplitting. The minimum is 8000. Use the maximum message size minus 1000 (for SEEN-BYs etc.) your system can handle for . -pmax. number of messages in output packets Create several smaller output packets instead of one large packet. is the maximum number of messages to put into one packet. If a message is split into several parts, these parts count as one message in this context. The default is 1000. -otime sort messages by time Sort messages within the areas by their creation time. This will help keeping original messages before their replies. The sorting will only affect as much messages as are kept internally (as specified with option -w). If not all messages to process are kept internally the sorting will only be partial. -osubjectsort messages by subject and time Sort messages within the areas by their subject. This will help you to follow echomail threads with your message reader. Messages with identical subject are sorted by their creation time. Leading 'Re: ', 'Re^2:' etc. in the subject line are ignored while sorting, so that messages containing a 'Re:' in the subject appear near the messages with the original subject. Complete sorting is only possible if all messages to process can be kept internally (see option -w and comment in option -otime). Please note: while you may like the messages sorted by their subject, others may prefer the 'unordered' style. If you have other nodes linked to your system and sort the messages by subject, be prepared that one or the other node complains about the new look. -g remove garbage from packets PacketSorter v1.4 page 12/19 With this option, PacketSorter will remove garbage from bad packets instead of refusing to process them. If garbage is removed from a packet, PacketSorter exactly reports which packet it is, where it came from and which portions of the packet have been removed. The original packets may automatically be saved by renaming them to *.bad (or *.b00, *.b01 etc. if the file already exists) for later examination. You can control if a "bad" packet is renamed to *.bad by the value you specify for . If more than bytes of garbage have been removed from the packet, it will be renamed to *.bad. Thus, -g0 will rename any packet with removed garbage and - g999999999 is probably enough to disable renaming completly. So if you don't care about say 3000 lost bytes, you specify -g3000. If more than 3000 bytes are removed, you'll have the original packet renamed for later examination. The valid portions in the packet are processed in any case, not regarding whether the packet is renamed to *.bad or not. See section 'Removing garbage from packets' in this document for further details. -eselect Archiver entry from cfg file This option selects an Archiver entry which is defined in the configuration file. is the key which selects the Archiver entry from the configuration file. -e must allways be the last option to PacketSorter. Options following -e will only be seen by the uncompression program selected. When PacketSorter is defined as an archiver program in the echomail tosser, usually [program-with- args] is used to tell PacketSorter which uncompression program to call before processing packets. Some echomail tossers (like IMail) strip all paths from their uncompression program definitions, so that specifying a path to the uncompression program in [program-with-args] is not possible. One way to get around this would be to specify [program-with-args] in the PKTSORT environment variable, but this way only one uncompression program could be specified which is usually not enough. Using -e, a complete archiver definition can be retrieved from the configuration file. Options needed by the uncompression program may follow -e. Here is an example: Assume you have the following Archiver definition in the configuration file: Archiver UNZIP c:\packer\unzip.exe and the uncompression program definition in the tosser is unzip -d %a %f Then you can use PKTSORT -s15000 -osubject -eUNZIP -d %a %f -l log file name Log processing information to . The default is no logging. PacketSorter v1.4 page 13/19 -d directory where packets are searched Specify dir as the directory where PacketSorter finds FidoNet packets to process. Default is the current directory. Be careful if you use this option. Squish for example will unpack packet files to the current (Squish) directory. It should not be necessary to use this option if you let your echomail tosser call PacketSorter (except when using FastEcho). -h help Display a short help. [program-with-args]exec. archiver before processing Execute a program (with optional arguments) before processing packets. Only packets that are created by that program will then be processed by PacketSorter. If the program returns another code than zero, PacketSorter will not process packets. The program will usually be an archives extraction program like unzip. You can let your echomail tosser call PacketSorter by specifiying PKTSORT as your archives extractor and using the actual archives processor (with options) as program-with-args. See "Quick installation for Squish users" for examples. If program-with-args is not specified, PacketSorter will process all FTS-0001 packets it finds in the current directory or that one specified by -d. This is useful if you receive uncompressed packets and run PacketSorter from a batch file before calling the tosser. See also option -e. 8. Setting the options via an environment variable -------------------------------------------------- You may specifiy the options for PacketSorter in the environment variable PKTSORT. This is useful if you run PacketSorter from an archiver entry of an echomail processor and the entry field size is too short to include all options you would like to specify. The format and syntax is the same as if the options are given at the command-line. If you specify the options via the environment *and* the command line, the command line options will overwrite the options specified in the environment, as long as [program-with-args] is not specified in the environment. If [program-with-args] is specified in the environment, all command line option are treated as additional parameters for [program-with-args]. Example: SET PKTSORT=-s15000 -lc:\logs\pktsort.log pktsort unzip -n %a %f PacketSorter v1.4 page 14/19 is the same as pktsort -s15000 -lc:\logs\pktsort.log unzip -n %a %f 9. Setting the options via a configuration file ----------------------------------------------- The configuration file consits of lines starting with a keyword followed by a value. All lines not starting with a keyword are considered comments. Keywords never start with a semicolon and it is good style to preceed comment lines with a semicolon. There is a 1-to-1 correspondence between the command line options and the keywords in the configuration file, so I just present a list of the keywords with the corresponding command line option instead of repeating all the information contained in the section 'Command line options'. Keyword command line option possible values ------- ------------------- --------------- MessageWindowSize -w 1 - 4294967295 SplitMessages -s 8000 - 4294967295 SplitPackets -p 1 - 4294967295 SortMessagesBy -o Subject or Time RemoveGarbage -g 0 - 4294967295 LogFile -l any valid path\file PacketDirectory -d any valid directory DefaultArchiver -e any valid Archiver entry key The keyword "Archiver" has no corresponding command line option. An Archiver entry (definition) in the configuration file looks like this: Archiver KEY path-and-filename eg. Archiver UNZIP c:\packer\unzip.exe There may be as many Archiver definitions as you like. See option -e for details. The file 'pktsort.cfg' is a sample configuration file. 10. Packets recognized and created ---------------------------------- PacketSorter will process those packets that have the filename extension .pkt and that have a valid packet id in the packet header. PacketSorter v1.4 page 15/19 PacketSorter merges all packets that originate from the same node or point and contain the same password. The name of the packets created will be of the form ????????.PKT, where ???????? is the creation time according to FSC-0015. PacketSorter uses a hashing technique to perform the defragmentation. So there is no 'real' sorting done and the defragmented areas are unordered. The order of the messages within an area remains unchanged, unless the options -otime or -osubject are used. 11. Return codes ---------------- PacketSorter returns the return code of the program executed (program- with-args) or zero. If PacketSorter encounters any problem, the original packets are retained and the tosser may try to toss the undefragmented packets. 12. Disk space consumption -------------------------- PacketSorter needs exactly as much additional disk space as is occupied by the packets to process. This is needed because of security reasons. 13. Removing garbage from packets --------------------------------- This section is for those who want to understand how garbage is removed from packets by PacketSorter in detail. A (proper) FidoNet FTS-0001 packet consists of a packet header, zero or more packed messages and an end-of-packet marker. The packet header is identified by a packet ID and is not of real interest here, because PacketSorter does not process packets with an invalid packet header. The packed messages consist of a packed message header and four zero- terminated strings which contain the originator name, the destination name, the subject and the message text. The packed message header is identified by a packed message ID. Without specifying -g, PacketSorter considers those messages as being valid, that have a correct packed message ID, a correctly sized date field (non-FTS one-space format is corrected on the fly without notification) and the from-name, to-name and subject not longer than FTS-0001 allows. The message ID is the first two bytes of a packed message. If a previous message is not properly terminated, i.e. there are some extra bytes following the last of the four strings, the correct message ID cannot be detected and you'll get the error message 'invalid packed message header, skipping packets from...'. PacketSorter v1.4 page 16/19 Now, if -g is specified, PacketSorter tries to repair a grunged date field and truncates too long from-name, to-name and subject. If one of these is truncated, from-name, to-name and subject must not be empty and the message text must be longer than one byte, else the message will be deleted. If this fails, PacketSorter skips bytes in the packet until a vaild packed message header is found. If the next (potential) message is found this way, PacketSorter is a bit more restrictive as to the contents of this message, because I don't want PacketSorter to turn "real garbage" into messages. The message must start with a packed message ID (of course), contain a valid date/time field (one or two spaces format) and the lengths of the first three strings must conform to FTS-0001. If one of these criteria is not met, PacketSorter continues skipping bytes in search for the next (proper) message. Grunged date repair goes like that: If it is one-space format, it will be corrected to two-space format. If it is shorter than one-space format + 2, longer than 6 characters and is accepted by the regular expression [0-9A-Za-z:.- ]+ it will be replaced by 1-1-80. If it is longer than two-space format it is considered uncorrectable and the message will be invalid. Additionally, PacketSorter continues searching for messages beyond the end of packet marker if the physical end of the file is not yet reached. In this case, the end of packet marker is just treated as "garbage". This has a recovery effect because other software might stop processing messages beyond the end of packet marker, thus losing messages. A missing end of packet marker at the physical end of the file (i.e. because the packet has been truncated) will be ingnored. Messages that passed PacketSorter but contain other "dangerous" data, such as missing or too long origin lines or non ASCII characters in the message text may still confuse other software. If you want additional protection against such messages, you could run GMD (which is great) on the packets before or after they have been processed by PacketSorter. 14. Technology -------------- PacketSorter is written in C++ and compiled with GNU GCC. Runtime system is EMX for XMS and VCPI operation and RSX for operation as a DPMI client. PacketSorter runs both under OS/2 and DOS in 32-BIT flat memory model. 15. What is different in the registered version ----------------------------------------------- The unregistered version says that it is unregistered and it beeps between 20:00 and 20:59. The registered version does not do this. PacketSorter v1.4 page 17/19 16. Other operating systems --------------------------- PacketSorter might be used on other operating systems than DOS and OS/2, as long as they run on an i386 (or higher). If you choose to go that way you are probably on your own, as several questions may arise I cannot answer (eg. how do I call a native MS-Windows program from within Squish running in MS-Windows DOS emulation). Also note that you must not distribute PacketSorter in another form as in the original distribution archives. If you come up with PacketSorter for another opertating system, you may use it only for your own purposes. native MS-Windows If you'd like to run PacketSorter as a native MS-Windows application (rather than in Windows' DOS emulation) get the archives named rsxwin2a.zip from the FTP-server ftp.uni-bielefeld.de in the directory /pub/systems/msdos/misc. RSXWIN is free software by Rainer Schnittker. Follow the instructions contained in that archives to make PacketSorter run as a native MS-Windows application. (Simply execute 'RSXWIN.EXE -e PKTSORT.EXE [options]'.) When I tried it, it seemed to work pretty good. Linux/Unix/Nextstep If you are a programmer: the distribution archives contain the files needed to link the PacketSorter executable (except for some FSF libraries) in the sub-archives devobj.zip. Maybe you are able to link the .o files under Linux or other operating systems using an i386. I never tried this, but if you do, I'd be interested in hearing about your experiences. 17. Author ---------- The autor of PacketSorter is Rolf K. Wilms. He may be contacted via Fidonet: Rolf Wilms@2:2447/107.8 or Rolf Wilms@2:2445/10.9 (R24-Classic) Internet: rwilms@kottan.bo.open.de Fido via Internet: Write a netmail to UUCP@1:105/42 PacketSorter v1.4 page 18/19 and make the following line the FIRST line in the message text: to: rwilms@kottan.bo.open.de Mail: Rolf K. Wilms, Franziskastr. 44a, 45131 Essen, Germany Comments and bug reports are welcome. 18. Contents of the distribution archives ----------------------------------------- The original distribution archives of PacketSorter contains the following files: pktsort.doc this file license.doc PacketSorter copying and usage license order.frm how to get your registration key pktsort.exe PacketSorter executable for DOS and OS/2 register.exe program that turns PKTSORT.EXE into the registered version (you need a 'key', see license.doc and order.frm) pktsort.cfg sample configuration file emx.exe EMX runtime module for DOS emx.dll EMX runtime module for OS/2 emxrt.doc Advanced installation information for EMX rsx.exe DPMI compliant DOS-extender file_id.diz a small description of PacketSorter desc.sdi an even smaller description of PacketSorter history.doc what has been done upgrade.doc upgrading PacketSorter from earlier versions devobj.zip contains the files needed to link a new PKTSORT executable otherlic.zip contains licenses of the free software used by or aggregated with PacketSorter. The sub archives otherlic.zip contain the following files: copying GNU General Public License copying.lib GNU General Public Library License copying.emx EMX Copying License copying.rsx RSX Copying License The sub archives devobj.zip contain the following files: hash.o, makefile.pst, mkkey.o, offset.cc, pktsort.o, readme.dev, reginfo.h, register.cc PacketSorter v1.4 page 19/19 19. Thanks ---------- Thanks to Peter Scheffer, Peter Kaszanics, Robert Dahlem and Johann H.


The views and opinions stated within this web page are those of the author or authors which wrote them and may not reflect the views and opinions of the ISP or account user which hosts the web page. The opinions may or may not be those of the Chairman of The Skeptic Tank.

Return to The Skeptic Tank's main Index page.

E-Mail Fredric L. Rice / The Skeptic Tank