home *** CD-ROM | disk | FTP | other *** search
/ Current Shareware 1994 January / SHAR194.ISO / email / dove0793.zip / DOVEMAIL.DOC < prev    next >
Text File  |  1993-04-08  |  23KB  |  399 lines

  1. Documenatation for DoveMail
  2. Copyright 1991, 1992, 1993 by Jack Decker
  3.  
  4. PLEASE NOTE:  The version of DoveMail shipped with this documentation is a
  5. BETA TEST version.  It may not be totally bug-free at this point in time.
  6.  
  7. PLEASE NOTE:  This documentation is not intended to be a tutorial on how to
  8. handle UseNet newsgroups.  If you do not understand how UseNet newsgroups
  9. differ from Fidonet echomail, you may wish to obtain a feed to the UFGATE
  10. echomail conference and ask appropriate questions there.
  11.  
  12. WHAT IS DOVEMAIL?
  13.  
  14. DoveMail is a program that will read an uncompressed UseNet batched newsgroup
  15. file, extract the messages and send them on to other nodes according to a
  16. control file.  It is written primarily for use in Fidonet, and other
  17. Fidonet-technology networks.  DoveMail is Copyrighted software and may be used
  18. only under the conditions set forth at the end of this document.
  19.  
  20. The reason for this program is this:  Currently, when a UseNet newsgroup is
  21. gated into Fidonet, the usual practice is to convert it to Fidonet echomail
  22. and then send it down the line in that format.  Unfortunately, no conversion
  23. process is perfect, and some potentially useful control information is usually
  24. lost in the conversion.  In addition, most Fidonet echomail processors don't
  25. handle long messages well at all.
  26.  
  27. My idea is that if the newsgroups can be transported within Fidonet in
  28. something resembling their native format, they can be converted to echomail
  29. (if necessary) by appropriate software running at each system.  In other
  30. words, the newsgroups will be transmitted through the network in something
  31. pretty close to their original UseNet format, and only converted to echomail
  32. (or some other message format) as necessary when a destination system is
  33. reached.  While there may still be some errors in the conversion process, at
  34. least they won't be cumulative... that is, you'll only have to worry about how
  35. the conversion software you're running mangles the messages, and not about
  36. what may have happened somewhere upstream.
  37.  
  38. Also, those messages cross-posted to multiple newsgroups will only be
  39. transmitted once in UseNet format, whereas if the messages are converted to
  40. echomail, a separate copy of the message is transmitted for each echomail area
  41. that the message winds up in.
  42.  
  43. You can figure out most of what you need to know abut DoveMail by reading this
  44. documentation file and DoveMail.Cfg, the sample configuration file included
  45. with this package.  It is liberally commented and most of the options are
  46. fully explained.  Actually, there aren't that many options to deal with, so
  47. setup should be relatively easy for anyone who has experience with handling
  48. echomail.
  49.  
  50. If you're only using DoveMail as a "passthru" for newsgroups (for example, on
  51. an intermediate system between two other nodes) the DoveMail program will be
  52. just about all you need.  However, if you have a need to convert UseNet format
  53. mail to and from echomail, you may need another package such as Ufgate or
  54. FredGate.  The difference is that those packages will (hopefully) only be
  55. tossing mail for your system, not for other systems you may wish to feed.
  56. Therefore, any errors you may have during the conversion process will only
  57. affect you, not those you feed newsgroups to.  And, you'll be able to retain
  58. only the control line information that you personally need in the messages you
  59. convert to Echomail.
  60.  
  61. If your system can use messages stored in the *.msg (standard Fidonet single
  62. message per file) format, then you may be able to get by with just the NewsToss
  63. and NewsScan programs included in the DoveMail archive.  See the read.me file
  64. included in the archive for more information.
  65.  
  66. As far as DoveMail is concerned, your system is just another system it's
  67. feeding.  When it receives mail from other systems, it can create a mail
  68. packet just for your system with only the newsgroups you want.  When your
  69. system sends out mail, if it can create a batched newsgroup packet, DoveMail
  70. can process it and send it to your uplinks and downlinks.
  71.  
  72. Here are some things DoveMail cannot do on its own:
  73.  
  74. 1) Handle compressed mail... you need to uncompress it first via your batch
  75. file (or some other mechanism) if necessary.  If you are receiving your feed
  76. from another Fidonet system, I suggest using a program like GUS, POLYXARC, or
  77. SPAZ that can determine the compression program used to create the archive,
  78. and call the proper uncompression program.  If you are receiving a feed from
  79. UseNet system, you may need to use the CUNBATCH.EXE program found in this
  80. archive (see separate documentation file) and an MS-DOS version of the Unix
  81. COMPRESS program (one is included in the archive, or you may wish to use
  82. another version such as one you might find in the distribution archives of
  83. programs like FredGate, UfGate, or Waffle) to decompress the files you receive.
  84. Note that you may need to use the -i option of certain versions of COMPRESS
  85. (see "PROGRAM LIMITATIONS" below).  Of course, if you wish to receive
  86. newsgroups directly from a UseNet system, you may need to use certain other
  87. utilities packaged with programs like FredGate, UfGate, or Waffle.
  88.  
  89. 2) Handle UNbatched mail... DoveMail is a newsgroup processor only, and simply
  90. doesn't understand unbatched mail (this capability may come later).  That also
  91. implies that it will not handle mail (what we in Fidonet call "netmail")
  92. messages.  There are considerations involved in handling mail messages that I
  93. don't fully understand yet, so in the interim you'll have to settle for
  94. routing netmail through the UUCP gateway that serves your net or region, or
  95. the nearest node running a program like FredGate or UfGate.
  96.  
  97. 3) Directly convert mail to or from *.msg, *.pkt, or any other common Fidonet
  98. format.  It may do some of that later on as well, although I'd prefer to see
  99. development of BBS's and message readers that could directly view and create
  100. batched newsgroup files.  For now you can use FredGate or UfGate if you need
  101. to convert to Fidonet formats, or if your system uses the *.msg file format,
  102. the NewsScan and NewsToss programs found in this archive may be adequate for
  103. the purpose.
  104.  
  105. Dovemail DOES maintain the "Path:" line of messages it passes, and it DOES put
  106. outgoing newsgroup files in their proper outbound mail directories when
  107. BinkleyTerm (or a similar compatible mailer program) is used.  It is Domain,
  108. Zone, and Point aware when used with BinkleyTerm.
  109.  
  110. [Please note that I am only familiar with BinkleyTerm, so please don't ask me
  111. questions about how to interface DoveMail with other mailers.  It SHOULD work
  112. with just about any system, but no guarantees!]
  113.  
  114. THE DOVEMAIL.CFG FILE
  115.  
  116. This version of DoveMail uses a relatively short configuration file (if you
  117. don't count the comment lines).  If you read the DoveMail.Cfg file, you'll
  118. find that most of the options are explained fully.  Note that you can have
  119. multiple DoveMail.Cfg files; just specify the name of the file you want to use
  120. in the command line when you invoke DoveMail.  For example:
  121.  
  122.      DOVEMAIL DOVE2.CFG
  123.  
  124. Would use DOVE2.CFG as the configuration file.  If you don't specify anything
  125. on the command line, it will look for the file DOVEMAIL.CFG.
  126.  
  127. You can specify an optional switch on the command line, -I.  If this switch
  128. is used, it reverses the effect of the IgnoreFirst command in the configuration
  129. file.  See the sample config file for more information.
  130.  
  131. A few lines found in the sample DoveMail.Cfg file might require some
  132. additional explanation:
  133.  
  134. INFILES contains the filename mask (including path) of filenames that MIGHT
  135. appear on your system containing batched newsgroups.  These should be the
  136. filenames of the UNCOMPRESSED batched newsgroup files.  If you are being fed
  137. by another system that uses DoveMail, the filename mask you'll probably use is
  138. *.pku (prepend a pathspec if these files will not be in the current
  139. directory).  On the other hand, if you get your feeds from a true UseNet
  140. system, then the filenames might be something more cryptic, like fps????.d.
  141. If you get batched newsgroups from several different systems and they each use
  142. a different pattern, you may be further ahead to designate a particular
  143. subdirectory for incoming newsgroup files only, uncompress all incoming
  144. newsgroup archives into that directory, and use a statement like
  145.  
  146.      Infiles C:\NEWSGRUP\*.*
  147.  
  148. to cause DoveMail to examine every file in that directory.
  149.  
  150. OUTBOUND denotes the path to the Outbound directory for Fidonet mail for YOUR
  151. zone and domain.  If you feed mail to other domains or zones, or to point
  152. address, DoveMail will attempt to put the outbound batched newsgroup files in
  153. outbound directories using the same naming conventions that BinkleyTerm would
  154. use.  If you don't specify a zone or domain for a feed address, the outbouund
  155. batched newsgroup files will be put into the directory specified by the
  156. OUTBOUND statement, as if your own zone and domain were used.  If this is not
  157. satisfactory, you can explicitly specify an output filespec (path and
  158. filename) for a node you feed (you'd also do this to create a file for use on
  159. your own system).
  160.  
  161. PKTEXT specifies the default extension to be used for outgoing batched
  162. newsgroup files to be sent to other nodes.  Normally, uncompressed outgoing
  163. batched newsgroup files will be placed into the appropriate outbound area in
  164. files with the extension ".UUT", which is the batched newsgroup equivalent of
  165. a Fidonet ".OUT" file.  In other words, if you are sending mail to a Fidonet
  166. address, a mail packet will be generated in the proper outbound directory
  167. using the filespec [net][node].UUT, where [net] and [node] are four digit
  168. hexadecimal values (which your mail packer should change to a file with the
  169. extension ".pku").  A .UUT file is treated exactly like an .OUT file for
  170. Fidonet format mail except that it contains messages in UseNet format.
  171.  
  172. Consider the way that a normal echomail message is exported.  First, your
  173. echomail processor (ConfMail, QMail, etc.) takes the messages from your
  174. message base and exports them to a file in your outbound area with the
  175. filename [net][node].OUT, where [net] and [node] are four digit hexadecimal
  176. values as mentioned above.  Then, the processor or another external program
  177. (such as oMMM) finds the .OUT file, renames it to a new file with an extension
  178. of .PKT, and calls a compression program (such as LHARC or PKZIP) to add the
  179. .PKT file to a mail archive file (which has an extension of .MO?, .TU?, .WE?,
  180. .TH?, .FR?, .SA?, or .SU?).  It is expected that a .UUT file will be treated
  181. in much the same way as an .OUT file, except it will be renamed to a file with
  182. an extension of .PKU (rather than .PKT) before being archived into the mail
  183. archive.  There is no reason I can think of that .PKU files cannot be archived
  184. into the same mail archives (the .MO? ..... .SU? files) as .PKT files,
  185. particularly if the recipient of the mail archive uses a program like GUS,
  186. POLYXARC, or SPAZ to unarchive the mail archives before DoveMail and an
  187. echomail processor is turned loose on the .PKU and .PKT files, respectively.
  188.  
  189. At present, programs like oMMM don't recognize a .UUT file, so you will
  190. probably have to use some batch file magic or an external program (such as
  191. DovePack, included in this archive with this program) to get the .UUT files
  192. sent out.  It is hoped that authors of such programs will include support for
  193. the .UUT/.PKU files in future revisions.  In the meantime, the PKTEXT command
  194. gives you a way to have output files named with an extension other than .UUT,
  195. if that will help you any.  For example, you might find it more convenient to
  196. create .OUT files for "dummy" net/node numbers, IF you are EXTREMELY CAREFUL
  197. to not send .OUT files created by DoveMail to nodes that might also receive
  198. .OUT files created by your netmail or echomail processor (mixing .OUT files
  199. created by the two programs could result in files unreadable by either
  200. DoveMail or your echomail processor!!!).
  201.  
  202. OTHER CONFIGURATION FILE OPTIONS are explained in the sample DoveMail.Cfg file
  203. included with this program.  If anything is unclear in regard to the use of
  204. these options, please let me know and I will try to provide better
  205. documentation in later revisions.
  206.  
  207. SQUISH USERS - If you are using Scott Dudley's SQUISH echomail processor,
  208. please be aware that the default configuration WILL cause incoming *.PKU
  209. files to be discarded without ever being unpacked from the mail archive.  To
  210. avoid this, either use a program like GUS, POLYXARC, or SPAZ to unarchive
  211. incoming mail archives before SQUISH can get at them, or else change
  212. COMPRESS.CFG as follows:  In COMPRESS.CFG you will see a comment that reads
  213. as follows:
  214.  
  215.   ; The Extract command tells Squish how to remove packets from an
  216.   ; archive of the specified type.  "%a" will be translated to the name
  217.   ; of the archive, and "%f" will be translated to the name of the
  218.   ; file to extract.  (The "%f" specification may be translated into
  219.   ; a wildcard!)
  220.  
  221. Then you will see "Extract" lines of the following format:
  222.  
  223.   Extract       pkunpak /r %a %f
  224.  
  225. Wherever you see %f in an Extract line, change it to *.PK? and SQUISH should
  226. unpack your *.PKT and *.PKU files without problem.  Note, however, that if
  227. you do this and you're also running the Maximus BBS, you'll need to use an
  228. original COMPRESS.CFG for Maximus, and a modified COMPRESS.CFG for Squish
  229. (that is, you'll need a separate COMPRESS.CFG for each program), or your
  230. Maximus users will have problems!
  231.  
  232. ERRORLEVELS - DoveMail may exit with any of the following errorlevels.  Note
  233. that anything above 1 should be considered a serious error:
  234.  
  235. 0 - Batched newsgroup files found and processed,
  236. 1 - No batched newsgroup files were found
  237. 2 - Bad path was given on command line
  238. 3 - Unexpected error (probably a program bug, hope you never get this one)
  239. 4 - Serious config file error
  240. 5 - Error while opening/reading input files
  241. 6 - Error while opening/writing output files
  242.  
  243. PROGRAM LIMITATIONS (Please be sure and READ THIS SECTION):
  244.  
  245. Incoming batched newsgroup files may not be greater than 2,147,483,647 bytes
  246. in length.  In other words, there is NO practical limit!  Nor is there a
  247. practical limit on the size of a single message.
  248.  
  249. No more than 100 incoming batched newsgroup files may be processed in a single
  250. run of DoveMail.  This can be modified by using the "MaxFiles" line in the
  251. DoveMail.Cfg file.
  252.  
  253. There is no specified limit on the number of newsgroups that DoveMail can
  254. process, but if too many are specified in the config file you could run out
  255. of memory, although this is highly unlikely (however, this program has not
  256. been tested with a large number of feeds).  A newsgroup specified with the
  257. wildcard ending characters ".all" counts as only one newsgroup for memory
  258. allocation purposes.
  259.  
  260. You can feed up to 32 nodes (including yourself) with this version of
  261. DoveMail.  I hope that is adequate for everyone, since it would be a fair
  262. amount of work to increase that number.  Please note that DoveMail opens a
  263. file for each node receiving newsgroups (that are found in the packet
  264. currently being tossed), plus the input file and the console device are open,
  265. so if you feed a number of nodes you may need to increase the value associated
  266. with the FILES statement in your CONFIG.SYS file.
  267.  
  268. No individual line in a message may be greater than 32,767 characters in
  269. length.
  270.  
  271. This version of DoveMail expects to find linefeeds (ASCII 10 decimal
  272. characters) ONLY at the end of each line in a message.  It may not (and
  273. probably will not) be able to handle feeds that use other terminator(s) at the
  274. ends of lines.  If your feed sends you batched newsgroup files that have other
  275. terminators and DoveMail won't process them, send me a sample of a batched
  276. newsgroup file that falls into this category and I'll see what I can do (no
  277. promises, though).  PLEASE NOTE:  If you are receiving your feed from a UseNet
  278. system and using one of the MS-DOS versions of COMPRESS to decompress the
  279. files, you may first need to use the CUNBATCH.EXE program included in this
  280. archive (see separate documentation).  If you are using a version of COMPRESS
  281. OTHER THAN the one supplied in the DoveMail archive, and if it offers the
  282. option to convert UseNet text files to MS-DOS format, DON'T DO IT!!!  For
  283. example, with one version of COMPRESS that's making the rounds, you'll need to
  284. use the -i switch to avoid adding Carriage Returns to the file.  That
  285. particular version of COMPRESS defines usage of the -i switch as follows:
  286.  
  287.      -i: Image mode (defined only under MS-DOS).  Prevents conversion
  288.          between UNIX text representation (LF line termination) in
  289.          compressed form and MS-DOS text representation (CR-LF line
  290.          termination) in uncompressed form.  Useful with non-text files.
  291.  
  292. Some versions of COMPRESS, INCLUDING THE ONE IN THE DOVEMAIL ARCHIVE, do not
  293. attempt to convert text files to MS-DOS format (adding CR's) so this may not
  294. apply to you.  Check the options for the version of COMPRESS you are using.
  295. Again, DoveMail most likely WILL NOT WORK properly if there are CR's in the
  296. file.  This is a design decision made in the attempt to keep message files as
  297. close to native UseNet format as possible, in an attempt to retain some measure
  298. of portability across platforms.
  299.  
  300. Messages may not have more than 30 header (control) lines at the top of the
  301. message.  You can change this limit by using the "HeaderLines" line in the
  302. DoveMail.Cfg file (however, any attempt to set it to a value of less than 20
  303. will have no effect).
  304.  
  305. This version of DoveMail will never split a message header line (e.g. a Path:
  306. line), no matter how long it is (I'm assuming that message header lines will
  307. never approach the 32,767 character maximum... if one does, you've got other
  308. problems besides DoveMail to worry about!).  I have been unable to find
  309. anything referring to a maximum line length in the UseNet standards, but if
  310. you find that this causes a problem with a system you feed (or with your
  311. feed), please let me know what maximum line length is required and I may be
  312. able to add something in.
  313.  
  314. DoveMail will attempt to process incoming batched newsgroup files in file
  315. timestamp order, in an attempt to try and keep messages in some semblance of
  316. order (the NewsToss and CUnBatch programs in the DoveMail distribution archive
  317. will also do this). 
  318.  
  319. LEGAL STUFF:
  320.  
  321. [PLEASE NOTE:  I give up.  I've had so many negative comments over the
  322. "license agreement" in previous versions of this program that I've revised it
  323. once more.  Now, almost everyone can use Dovemail freely, and hopefuly no one
  324. other than bona-fide "control freaks" should find anything objectionable
  325. here.]
  326.  
  327. This is preliminary documentation for DoveMail.  DoveMail is NOT public domain
  328. software.  However, DoveMail users will NOT be required to pay for the use of
  329. DoveMail, now or ever.  DoveMail is Copyrighted software which may be used
  330. under the following conditions:
  331.  
  332. DoveMail is offered with no warranty, expressed or implied, of any kind.  If
  333. you live in a place that disallows this type of limitation, you may not use
  334. this software.  Under no circumstances is DoveMail warranted to do anything
  335. other than take up space on your hard drive, and if by some chance it manages
  336. to destroy some data that you consider valuable, I assume no responsibility
  337. for that (though I'd certainly like to hear about it).  IF YOU USE DOVEMAIL,
  338. YOU DO SO AT YOUR OWN RISK.  If you cannot accept this, or if the laws of your
  339. area do not permit the author of software to absolve himself of all legal
  340. liability that may result from the use of the software, then you may not use
  341. DoveMail.
  342.  
  343. There is only one other remaining restriction on the use of DoveMail.  If you
  344. are NOT a Fidonet sysop, the following restriction DOES NOT apply to you.
  345. Otherwise, if you ARE a Fidonet sysop, you may NOT use DoveMail in any
  346. newsgroup distribution scheme that refuses newsgroup feeds to other sysops
  347. based solely on where they are grographically located.  In other words, you
  348. are not required to feed newsgroups you receive to any other system, but if
  349. you do, you may not refuse a newsgroup feed to a node solely because they are
  350. not in your net or region.  Nothing in this paragraph should be construed as
  351. requiring you to provide feeds to anyone at your expense, but if they are
  352. willing to pay for the call, you have to give them a feed under the same
  353. conditions you would give feeds to anyone in your own net or region (for
  354. example, if you will only give feeds to nodes that can connect at 1200 bps or
  355. higher in your own region, you are perfectly justified in refusing a 300 bps
  356. pickup from any region).
  357.  
  358. Your duty to provide feeds to others is not diminished by the fact that
  359. newsgroup feeds may be available at some other node (for example, one that is
  360. closer to them).  It is and should always be their right to NOT receive their
  361. feeds from the "nearest" node.  Fidonet echomail policy tries to force people
  362. into relationships even though they simply may not be able to get along with
  363. each other.  This should never be the case with DoveMail users.
  364.  
  365. UseNet newsgroups are NOT echomail, and should never be confused with
  366. echomail.  UseNet does not have the stupid, idiotic, assinine (substitute a
  367. stronger word if you can think of one) geographic restrictions that have
  368. plagued Fidonet echomail for many months now.  The UseNet philosophy is best
  369. summed up in a verse in a rather cute signature line I saw at the end of a
  370. message in comp.dcom.modems (attributed to wb8foz@mthvax.cs.miami.edu):
  371.  
  372.           A host is a host from coast to coast
  373.           & no one will talk to a host that's close
  374.           Unless the host (that isn't close)
  375.           is busy, hung or dead!
  376.  
  377. (If this sounds familiar but you can't quite place it, think about the theme
  378. song of an old TV comedy series where the horse had all the good lines...)
  379.  
  380. Just because a newsgroup is imported into Fidonet does NOT mean that Fidonet
  381. echomail rules or policies apply.  So if you are a "control freak" that
  382. insists on imposing geographic restrictions on others, you're just going to
  383. have to find or write some other software to do it with.  The ONLY intent of
  384. this section is to prevent sysops from refusing to feed newsgroups to other
  385. sysops based on their geographic location, as is (unfortunately!) common
  386. practice with Fidonet echomail feeds.
  387.  
  388. If the above creates some unusual problem for you, please write to me and I
  389. may grant you partial relief from the above restriction, on a case by case
  390. basis, considering the unique circumstances of your situation.
  391.  
  392. If you have questions or comments, please direct them to Jack Decker at
  393. Fidonet address 1:154/8 (Internet address jack.decker@f8.n154.z1.fidonet.org).
  394. Please note that my node is private, unlisted since it is only accessible
  395. during the late night hours.  If you have a need to send me something via file
  396. attach, please send me a netmail message first and I'll get back to you with
  397. further instructions, or if it's a short file just UUENCODE or XXENCODE it and
  398. send it in a netmail message.
  399.