home *** CD-ROM | disk | FTP | other *** search
/ ftp.wwiv.com / ftp.wwiv.com.zip / ftp.wwiv.com / pub / INTERNET / GIGO0209.ZIP / NOTES < prev    next >
Text File  |  1994-02-09  |  67KB  |  1,476 lines

  1.  
  2. Most recent updates: 01-08-94 to present.
  3. Please read all of them, they affect you!
  4.  
  5.     NOTE * THIS UPDATE WILL REQUIRE ABOUT 5 MINUTES OF YOUR TIME
  6.          * UPDATING YOUR CONFIG FILES.  READ THE NOTES FILE!
  7.  
  8.  
  9. GIGO IS NOW RUNNING 32-BIT PROTECTED MODE,
  10. AND REQUIRES DOS4GW.EXE TO LOAD!
  11. PLEASE, CONTACT ME IF THERE ARE ANY PROBLEMS.
  12.  
  13.  
  14. Notes & Updates to GIGO
  15. Jason Fesler, 1:203/7707
  16. jfesler@wmeonlin.sacbbx.com
  17.  
  18. If you are interested in the GIGO echo or the GIGO-L mailing list, [net/e]mail
  19. me at one of the above addresses.
  20.  
  21. To do list:
  22.   support for post-by-email servers (if anyone gets me the info!)
  23.  
  24.      *   Please, when reporting bugs, do the following:
  25.              Get sample .X/.D files if it's a usenet->fidonet problem
  26.              Get sample .PKT files if it's a fidonet->usenet problem
  27.              Get your configuration and mapping files
  28.              Make a small note file, ie README.1st, that contains
  29.                 information about the problem
  30.  
  31.              Package all of this up into an archive (pkzip, arj, lzh)
  32.              and UUENCODE them to my email address, or file attach
  33.              them to my fidonet address.
  34.  
  35.              New:  Send to uudecode@wmeonlin.sacbbx.com, so that my
  36.              system will automaticly reincarnate the files back to
  37.              binaries for me.. :-)
  38.  
  39.              The reason for all of this is that telling me that
  40.              "it's not working" is not enough; I need to be
  41.              able to trace it and see it happening.  Also, a lot of
  42.              bugs I can not reproduce, as I get different data packets
  43.              than you. :-)
  44.  
  45.              Kudos to everyone who have followed these instructions..
  46.  
  47. (In reverse-chronological order)..
  48.  
  49. [02-09-94]  ML recompiled to handle over 256 messages.  Now handles 2048
  50.             *.MSG messages or 5000 squish messages.
  51.  
  52.             ORIGINADDRESS - you may now have the Origin: line state
  53.             a different fidonet address other than your gateway.
  54.             Ie, if your gateway is 1:203/7707.999, and your main
  55.             address is 1:203/7707.0, you can state ORIGINADDRESS 1:203/7707,
  56.             and origin lines will use that address instead of your point
  57.             address.  (This was added against my better judgement.  Speed
  58.             wise, nothing should be affected.)..
  59.  
  60.             Fixed .f.n.z... parsing (after I made GIGO case insensitive)
  61.  
  62.             BURT_JUDA_HACK had a bug on the From and Received: lines
  63.  
  64.             Added switch:  NOVIDEO (or /NOVIDEO on command line).
  65.             Turns off all video after the configs initialize.
  66.             I mean _all_ video.  Really.  Every bit of it.
  67.             I considered making it switchable, depending on the job that
  68.             was being processed, but there is not enough of a speed increase
  69.             to justify that much work.  Instead, I modified the actual
  70.             video routines, to globally turn them on and off.  I was able
  71.             to see a 20% speed increase this way.   Note that video is turned
  72.             off _AFTER_ GIGO has initialized, so that if there are any
  73.             errors in the config, you'll see them.
  74.  
  75.             BLOCKADDRESS now understands two forms:
  76.              BLOCKADDRESS + *LISTSERV*     will block all listserv processors
  77.              BLOCKADDRESS - *@wmeonlin.*   except mine.. :-)
  78.             If you don't specify + or - , it will assume +
  79.  
  80.             USER bounce 1:2/3.4   USER NAME     should now work as expected.
  81.             USER bounce *:*/*.*   USER NAME     should also work.
  82.  
  83.  
  84.             Kludge lines in the middle of messages should no longer
  85.             truncate messages prematurely.  Thanks to JOHO who places
  86.             *&@#! kludge lines in the _middle_ of forwarded messages..
  87.  
  88.             Whoops.  Forgot to take the 64k limit out of the mapping
  89.             section, a limit from the ancient 8088'able version. :-)
  90.             Same goes for the config section.
  91.  
  92.             Provisions made for when there IS no map file
  93.  
  94.             Map file + lines now honor moderated newsgroups (only = did before)
  95.             Map file = lines had a problem when only the newsgroup
  96.                name was mentioned and the fidonet echo name was not. fixed
  97.  
  98.             GIGO has stopped being case-sensitive (I hope).  GIGO will
  99.             _always_ make everything lowercase before doing any kind of
  100.             comparisons; when generating outbound mail, it will preserve
  101.             the case that you specify in the config files.
  102.  
  103.             Messages from any address with "daemon" or "bounce" in it
  104.             are automaticly rerouted to the admin if they were
  105.             headed towards any automated address; the fidonet TO field
  106.             will contain "root:" followed by the address that was
  107.             being sent to.
  108.                Affects:
  109.                    mailing lists
  110.                    fileserv/ftpmail
  111.                    external functions
  112.  
  113.             The return address for external functions will always be
  114.             the same as the address originally emailed to (ie,
  115.             mail sent to listserv@wmeonlin.sacbbx.com will be answered
  116.             by the same address).
  117.  
  118.             The return address for fileserv has changed from fileserv-sender
  119.             to fileserv, so that people may directly reply to the fileserv
  120.             mechanisms.  Bounced messages, etc, will be handled by
  121.             provisions mentioned above.
  122.  
  123.             PARTIAL-35, similiar to FSC-35.
  124.             Tells the gateway to only use FSC-35 when the return
  125.             address is different from the fidonet header, ie when the
  126.             address is too long to fit or when real names are used.
  127.             Using it will slow down your gate with yet another string
  128.             copy and comparison, but some people want it.
  129.  
  130.             If the nodelist index is empty, nodelist checking disables
  131.             itself, instead of bouncing everybody.
  132.  
  133.             Grunged messages _were_ looping.  Not any more.  It will no
  134.             longer get hung up on them.
  135.  
  136.             COMPILE.EXE modified to allow for blank lines that don't have
  137.             a semicolon at the front.  [Groglist.017 has this problem.]
  138.  
  139.             CASE_INSENSITIVE no longer needed.  Too many people are getting
  140.             mail from their host with the improper case.  I'll just make GIGO
  141.             not be case-sensitive.  You can now get rid of multiple copies
  142.             of the same SITE or USER command if the only difference is the
  143.             case.  When _generating_ addresses, the first matching address will
  144.             be honored; when _receiving_ addresses, case will not matter.
  145.  
  146. [01-14-94]  Netmail request a receipt (either kind allowed in netmail)
  147.             will illicit a response from the gateway, acknoweledging
  148.             the gateway itself got it.  In addition,p "Return-Receipt-To:"
  149.             now gets added to the message headers.  Not many sites support it,
  150.             but I've heard that sendmail does.
  151.  
  152.             (I love standards, so MANY to choose from!)
  153.  
  154. File Attaches!
  155.  
  156.             This is bound to open a rather large bag of worms, but ..
  157.  
  158.             To set up GIGO to allow file attaches, you will need to do
  159.             the following steps:
  160.  
  161.           -Add to your config:
  162.             FILESERV-ATTACH                ; enables attachments
  163.             FILESERV-INBOUND  c:\fd\files\ ; Your fidonet inbound directory
  164.             FILESERV-HOLD     c:\fd\hold\  ; Where to move files that the
  165.                                            ; gateway wants to send out
  166.                                            ; (facilitates YOUR cleaning things
  167.                                            ; up, by keeping things together)
  168.                                            ; DON'T FORGET TRAILING BACKSLASHES
  169.  
  170.  
  171.             You will _also_ need to enable FILESERV services for your gateway.
  172.  
  173.  
  174.             When GIGO sees a message with the file attach attribute on it,
  175.             GIGO will attempt to move the file from the inbound to the hold
  176.             directory.  It is up to you what to do with the files in the HOLD
  177.             directory after GIGO is done; you can keep them, delete them,
  178.             save them for a week, whatever.
  179.  
  180.             Once GIGO has decided what files are being sent, GIGO will
  181.             generate a .REQ file in your spool directory - the same type of
  182.             file that gets generated whenever GIGO gets a ftpmail request.
  183.  
  184.             The recipient will receive a status message, followed by the
  185.             files, from the account "ftpmail-sender".  The status message
  186.             will state who triggered the send, as well as instructions for
  187.             decoding the file.
  188.  
  189.             Enabling this option in GIGO is going to be opening yourself up
  190.             to a can of worms - potential problems you may experience are
  191.             listed below.  You will have to decide if you want to allow
  192.             it (most gateways don't).
  193.  
  194.               Potentional Problems         Solution
  195.  
  196.               - "HOLD" directory fills up  Make an event to clean it out
  197.                                            once a day, or after each run.
  198.               - Users may send to a        None.   :-(
  199.                 fidonet address
  200.               - If you pay metered rates   None.   :-(
  201.                 for UUCP connections,
  202.                 things can get expensive.
  203.  
  204.             Note that you, the administrator, will need to take special note
  205.             that you can ONLY file attach things that are in a requestable
  206.             directory on your hard drive.  The file-attach mechanism WILL
  207.             strip any directory names etc from the filename.  The only way
  208.             to bypass this is to not use file attaches, but to insteasd
  209.             generate .REQ files manually.  See the 01-06-94 notes.
  210.  
  211.  
  212.  
  213.             Account name expansion is now double checked, and reran, if not
  214.             completely expanded.  SITE GATEWAY x:x/x statements were not
  215.             expanding correctly, and neither were SITE *FTN or SITE *FNZ
  216.             statements.  They would subsitute user.name@*ftn.mysite.domain,
  217.             instead of expanding the *ftn part.
  218.  
  219.             Crude checking on SITE statements now being done.  Not perfect,
  220.             but should catch some of the errors.  GIGO will tell you which
  221.             line it knows it's going to have problems on.
  222.  
  223.             Same as above for USER statements.
  224.  
  225.  
  226. [01-13-94]  BLOCKADDDRESS  *listserv*
  227.             BLOCKADDRESS   *fileserv*
  228.             BLOCKADDRESS   *ftpmail*
  229.             BLOCKADDRESS   *BITFTP*
  230.  
  231.             The above will block most attempts (not all) for users to
  232.             receive massive amounts of mail that you might be paying
  233.             long distance for.  You may actually specify any address
  234.             pattern you want; wildcards are accepted for this parameter.
  235.  
  236.             You can extend this to BLOCKADDRESS *.z[123456].fidonet.org,
  237.             to stop people from being able to email to their fidonet
  238.             address equivalent.  (By defualt, GIGO turns such requests
  239.             back to netmail, and never sends them out to the internet
  240.             in the first place.  This is just one step further.)
  241.  
  242.             Note that BLOCKADDRESS _can_ be easy to fool, by the user
  243.             rearranging the address.  I suggest keeping the rules simple,
  244.             using wildcards (like the above examples).
  245.  
  246.          o  The BURT_JUDA_HACK option.  This option is probably going to
  247.             be useless under most circumstances.  Anyone that can use it
  248.             without pissing off their host, cool.  What it does is
  249.             change the top line of outgoing email from
  250.             "From site!user date+time remote from site" to
  251.             "From user@site date+time".  This is apparently needed for
  252.             (at least)Burt Juda's SMTP mailer or scripts.  If it works for
  253.             you, cool.  If you break something by using this option, may your
  254.             host suspend you by your genitals. =O You've been warned.
  255.  
  256.                                 :-)
  257.  
  258.  
  259.          o  Mapping file:
  260.             ! newsgroup.name SAVETEXT dirname\
  261.             ! newsgroup.name SAVETEXT dirname\  FIDONETNAME
  262.             ! newsgroup.name LOGTEXT filename.log
  263.             ! newsgroup.name LOGTEXT filename.log FIDONETNAME
  264.  
  265.             You can capture a specific newsgroup, and save that newsgroup
  266.             to individual files (*.IN files in the directory specified) or
  267.             to a single file.  This is for external processing.  You may
  268.             also specify the fidonet echoname to save it as (one way,
  269.             to fidonet only).  If you need both directions, you'll need to
  270.             _also_ make a = nesgroupname FIDONETNAME   _after_  these
  271.             lines.
  272.  
  273.             Usefulness?  Some people want to trap and convert the
  274.             *.binaries.* groups, and some want to trap areas like
  275.             news.answers.   I personally keep updated copies of all of the
  276.             .FAQ's posted to news.answers, and have a batch file set up
  277.             that takes the new ones, grabs the "Archive-Name:" out of it,
  278.             and puts it in the file directory for me.
  279.  
  280.  
  281. [01-11-94]  Made a modification to the COMPRESS program to speed up
  282.             performance...  Instead of copying to temp files
  283.             we let the compress program worry about creating or eliminating
  284.             the "#! cunbatch" line.   This cuts _my_ time down significantly,
  285.             as there are is 8-10 megs less copying back and forth on my
  286.             system a day..
  287.  
  288.             Note:  You may run with (1) of the following setups..
  289.  
  290.  [old compress]   COMPRESS compress.exe
  291.                   DECOMPRESS compress.exe -d
  292.                   ; FASTCOMPRESS  is commented, as this is the old program
  293.  
  294.  [new compress]   COMPRESS compress.exe -m
  295.                   DECOMPRESS compress.exe -d
  296.                   FASTCOMPRESS; make sure you have COMPRESS -m
  297.  
  298.  
  299.  [old gzip]       COMPRESS gzip.exe ; only use gzip if your host will take it
  300.                   DECOMPRESS gzip.exe -d
  301.                   ; FASTCOMPRESS  is commented, as gzip doesn't support it
  302.  
  303.   [no new gzip yet]
  304.  
  305.       o   other minor bugs fixed, can't remember them off hand.
  306.  
  307.  
  308. [01-06-94]  IMPORTANT!!!!!!!!!!!!!!!!!!!!!!
  309.  
  310.         NOTE BOTH CHANGES TO FTPMAIL AND MAPSTYLE HAVE BEEN MADE.
  311.         IF YOU DO NOT UPDATE YOUR CONFIGS, THINGS ___WILL___ BREAK.
  312.   ┌─
  313.   │ .   MAPSTYLE usage has changed, and is now definable for any
  314.   │     situtation you have.  You specify the way you want it to look.
  315.   │     Even the strange addresses that are needed by Gary Rux are
  316.   │     acheivable.  (Hiya Gary! :-)
  317.   │
  318.   │     MAPSTYLE:  Obsolete.
  319.   │
  320.   │     Replaced by:
  321.   │       MAPSTYLELOCAL  [format string]    ; Used when SITE LOCAL is specified
  322.   │       MAPSTYLESITE   [format string]    ; Used when SITE sitename .. parameters are used
  323.   │
  324.   │         Format string may be a template of the address you would like
  325.   │         formed by the gateway.  Valid variables are:
  326.   │             *site     ; Used with MAPSTYLESITE; current user
  327.   │             *user     ; Used with any template; current site
  328.   │             *mysite   ; Your "mysite" variable
  329.   │             *domain   ; Your "domain" variable
  330.   │             *myfeed   ; Your "myfeed" variable
  331.   │
  332.   │       Examples for MY site:
  333.   │         MAPSTYLELOCAL   *user@wmeonlin.sacbbx.com
  334.   │         MAPSTYLESITE    *user@*site.wmeonlin.sacbbx.com
  335.   │
  336.   │      The sample config file has more details and examples.  This overhaul
  337.   │      on the address generator should be able to accomodate everyone.
  338.   │      Bugs are likely to creep up, see the top of this file for sending
  339.   │      me bug reports.
  340.   │
  341.   │
  342.   │ .   All config verbs with "FTPMAIL" as part of it's name should be
  343.   │     renamed to "FILESERV" (ie, FTPMAIL-LIST  should be FILESERV-LIST).
  344.   │     GIGO will now process files to either "fileserv" or to "ftpmail",
  345.   │     but will be known as "fileserv".
  346.   │
  347.   │     The reason for this is because GIGO is not doing true ftpmail, which
  348.   │     involves ftp'ing to a remote site, getting a file, and sending to the
  349.   │     user.  More than a few people actually on the internet expressed
  350.   │     their desire to not confuse people on this concept, and suggested
  351.   │     the more common standard of "fileserv".
  352.   │
  353.   │     For now, GIGO will update it's config files internally, replacing every
  354.   │     instance of the keyword "FTPMAIL" with "FILESERV", for backwards
  355.   │     compatibility.
  356.   │
  357.   └ .   worked on ASCII transfers with ftpmail again..  Word wrapping has
  358.         been removed; it's causing problems for some people.  Most text files
  359.         are already wrapped at 80 columns; the gateway will no longer mutilate
  360.         anything that was formated differently.  With luck, no exception errors
  361.         for Scott..
  362.  
  363.     .   Added ability to read CR/LF delimited files from your host
  364.         (You must add CRLF to your config file, as this slows things down,
  365.         so is off by default).  I have no way of confirming that this
  366.         works; if anyone still has problems, see the top of this file
  367.         for sending me bug reports (ie, I need SAMPLES! to fix it if it's
  368.         broken!)
  369.  
  370.     .   Fixed the missing blank line between message body and header.
  371.  
  372.     .   ftpmail (ahem) fileserv limits are being honored now.. if you
  373.         specify maximum values, they will be honored.
  374.  
  375.     .   fileserv:  If you manually make a .REQ file, and you specify
  376.         filenames _with_ their drive+directory name, the files you are
  377.         sending do not have to be in the okfiles area, and bypass all
  378.         limits.  You can use this to manaully send something out.
  379.         Also, if the file name (with dir names etc) starts with a
  380.         # or ^ (binkley users will understand..)  the file will be nuked
  381.         after transmitting.  This is useful for people using their gateways
  382.         to tunnel fidonet mail via uucp.   Note, wildcards are NOT allowed
  383.         when you specify the directory name etc (sorry).
  384.  
  385.          Sample  .REQ files
  386.       ┌─────────────────────────────────┐
  387.       │myfriend@somesite.com            │ First line is where to send to
  388.       │; comment sent to user           │ ; lines are sent verbatim
  389.       │; comment sent to user           │
  390.       │gigo0103.zip                     │ sends if found in your list of dirs
  391.       │e:\gateway\gigo0103.zip          │ will send specifically this file
  392.       │^E:\outgoing\00001eba.mo1        │ will send, and _then_ kill it.
  393.       │^E:\outgoing\tic\tk001234.tic    │ will send, and _then_ kill it.
  394.       └─────────────────────────────────┘
  395.  
  396.           (Don't let this give you guys any bad ideas, grin!)
  397.  
  398.  
  399. [01-03-94]  Happy new year, folks
  400.  
  401.     .   When a message doesn't have a message body, GIGO will now
  402.         properly detect it, and write "message grunged / no body" in it.
  403.         If it can't find a body because the headers were too long (geez,
  404.         100-300k of HEADERS?!?) GIGO will simply junk the message.
  405.  
  406.     .   FTPMAIL additions..
  407.  
  408.           FTPMAIL-DEFAULT 75000 will specify that the default segment size
  409.           for split uuencoded binary files being sent back out will be of
  410.           75000 byte segments (which will expand to be 100k of text).  The
  411.           requesting party may choose an alternate size if desired.  The help
  412.           screen will reflect the default split size.
  413.  
  414.           Note that if the person requesting a file is from fidonet (ie, the
  415.           gateway KNOWS that it will be sending it back out as netmail right
  416.           away), ftpmail will change the default for him/her to 9990 bytes; it
  417.           will be up to him/her to switch it as desired.  Too many mail
  418.           processors puke on messages larger than 16k.
  419.  
  420.           FTPMAIL will now, when a user requests a name without wildcards
  421.           or regular expressions, stop after it finds the first match.  No more
  422.           sending out 2-3 copies of the same file..  If the user _does_ use
  423.           wildcards, multiple sends are still possible however.
  424.           Only exception:  "magic" names, even if they have wildcards, will
  425.           allow multiple instances; you can use one magic name multiple times
  426.           to indicate multiple files.
  427.  
  428.  
  429.     .   MULTIPLEHEADERS tells GIGO to place the usenet headers in all of
  430.         the fidonet messages, instead of just the first message, when it
  431.         comes accross a usenet message that is too large for fidonet.
  432.  
  433.     .   MAXNEWSGROUPS xx tells GIGO to allow up to xx copies of the
  434.         same message to be cross-posted.  If the message is cross-posted
  435.         to more newsgroups than the number you specify, GIGO will publish
  436.         only the first copies.  Default & maximum = 20.
  437.  
  438.     .   (Just a note)
  439.  
  440.         GIGO will have problems if your host is sending carriage returns
  441.         in the mail he sends you.  I will later add the option of
  442.         handling carriage returns in the files, but it will drasticly
  443.         slow down GIGO's ability to read the files having to translate
  444.         things.  It is better if you can get your feed to simply not
  445.         send the carriage returns, as is standard.
  446.  
  447.     .   Make sure you get a new copy of COMPILE.ZIP; it contains
  448.         a bug fix.  Especially if you have any "down" or "hold"
  449.         systems in your area.. :-)
  450.  
  451.     .   CASE_INSENSITIVE will force Gigo to change all incomming email
  452.         messages to all lowercase.  All outgoing addresses will also
  453.         be forced to lowercase.
  454.  
  455.     .   BACKWARDSFEED will tell Gigo, when creating outgoing spool
  456.         files to your host, to use the wrong site name (ie, using HIS
  457.         site's name isntead of YOUR site name) in the file names.
  458.         Don't use this unless you really need it, and UNDERSTAND why you
  459.         need it.  Serious.
  460.  
  461.     .   FastReturn verb wasn't 100% perfect - when you had the key to
  462.         disable 'Fidonet.Org' being a built-ion FastReturn, it still
  463.         wasn't taking fidonet.org out..   Fixed.
  464.  
  465.     .   /TEST can now be specified on the command line; I've kludged
  466.         things in a way that it inserts the TEST verb for you in the config
  467.         memory.
  468.  
  469.     .   Allow_ lines were not being recognized, due to a bug in using the
  470.         wrong type of search command.  Fixed.
  471.  
  472.     .   Date: lines modified slightly; they no longer show the name
  473.         of the timezone, just the actual number.  Appears to have
  474.         caused conflicts with C_NEWS, despite the standards.
  475.  
  476.     .   X-Mail-Agent line can be turned off for special circumstances
  477.         only; if your host says that this line is causing network problems,
  478.         email me, and I will give you a key to turn it off.
  479.  
  480.         In general, I am leaving this line IN.  Half the messages I see
  481.         in the newsgroups _also_ have a similiar line; in any case,
  482.         X-... lines are supposed to be ignored; they are like fidonet
  483.         kludge lines.  I want to leave this line IN messages, so that if
  484.         there are network problems, they can be directly traced back
  485.         to GIGO if it GIGO is causing the problem (as well as vsn info);
  486.         or, if it's not GIGO, I have claims to support it.
  487.  
  488.      .  At the request of garux@mdtn_bbs ..  a specialty option to
  489.         allow outgoing _email_ only to be routed to different spools, based
  490.         on where it is headed.  If you don't understand this option,
  491.         don't use it.
  492.  
  493.         _Most_ sites don't need this, and the inclusion of
  494.         even one of these statements will slow down _all_ outbound email,
  495.         as it turns on the extra checking needed to figure out where to
  496.         send things.  The routines had to make use of scanning the config
  497.         memory every pass, and make use of regex routines (which are
  498.         always slower processing).
  499.  
  500.             ROUTESPOOL  spoolname <sitename optional, defaults to spoolname>
  501.         As example:
  502.  
  503.             ROUTESPOOL  citrus  citrus
  504.             ROUTESPOOL  sacbbx  sacbbx
  505.             ROUTESPOOL  frackit uucp      ; All .uucp feeds assumed to
  506.                                           ; be routable via frackit
  507.  
  508.         I have _no_ plans on expanding this to news, or mailing lists.
  509.         The mailing list processor will have no ideas what is going on;
  510.         if you need to seperate the various newsgroups to different feeds,
  511.         run seperate config files with seperate addresses.  It is strictly
  512.         for email.
  513.  
  514.         I'm not even sure if this will work as expected.  Good luck..
  515.  
  516.  
  517. [12-29-93]
  518.     .   ASCII files via ftpmail were sporadic.  I rewrote it;
  519.         it will no longer attempt to split lines (now assumes that
  520.         your textfiles are already split, not too unreasonable for most).
  521.         In addition, the ASCII files are NOT split across multiple messages;
  522.         it is now left to the receiver's software to either display it
  523.         correctly or split it to multiple messages.  I can not get
  524.         it to properly stop at the end of a line.
  525.  
  526.         Hopefully, this won't be much of a problem, I don't know many
  527.         people that have huge ASCII documents online; almost everyone's
  528.         software can handle a couple hundred K without a problem.
  529.  
  530.         Good news; it will transfer back to your host a lot faster,
  531.         since it's not in tiny peices.
  532.  
  533.         Note that binaries are still sent in split form.
  534.  
  535.     .   ML.EXE updated to look at the MSGSENT flag.
  536.  
  537. [12-28-93]
  538.     .   Don't know why the KEEP_.. and KEEP.. statements worked at all
  539.         for me.  Fixed them for everyone else.
  540.  
  541.     .   Newsgroups were not ensuring that the message ended with a
  542.         line feed.  Didn't seem to affect anyone, but does look confusing
  543.         when reading the generated output.
  544.  
  545.     .   Another USER statement..
  546.            USER logme  LOGTEXT C:\FILES\LOGME.LOG
  547.         Any messages set to the specified user will be saved to the log
  548.         file specified, seperated by a line of ________ between messages.
  549.         What this will be useful for, beats me, but what the heck, it's
  550.         only 1k of code.
  551.  
  552.     .   New MAPPING statements..
  553.  
  554.          ! newsgroupname SAVETEXT C:\FILES\UUIN\
  555.          ! newsgroupname LOGTEXT  C:\FILES\NEWSGRP.LOG
  556.  
  557.         Note that they start with "!" on the line; they will signify
  558.         to GIGO that it is an extended command (so that I can add other
  559.         commands in this way without slowing things down for any other
  560.         newsgroup).
  561.  
  562.         You will need to specify the newsgroup name, the extended command,
  563.         and the optional data for that command.
  564.  
  565.         Usefullness?  You can monitor a .binaries newsgroup, saving
  566.         all of the messages to text files, so that you can have an
  567.         intelligent uudecoder (ie, UUDO, or the one I am building now)
  568.         go through and recreate the binary files.
  569.  
  570. [12-27-93]
  571.     .   New USER function
  572.            USER  uuin  SAVETEXT C:\FILES\UUIN\
  573.  
  574.         Whenever email is sent to uuin@yoursite, the message is
  575.         saved to a textfile ( xxxxxxxx.in ) in the c:\files\uuin\
  576.         directory.  This is for use with external processors
  577.         such as "UUDO", a processor that recreates binary files from
  578.         uuencoded messages.  (Freq UUDO*.* from my system)
  579.  
  580.         Note that messages made with this function are not split into
  581.         15k segments, but are instead left in their entirety.  The
  582.         maximum message limits made by memory limits are going to be
  583.         the maximum message size here.
  584.  
  585.     .   With mailing list conversion, the moderator or mailing-list
  586.         address is no longer required, and will be assumed to be "NULL"
  587.         if it is missing.  This is for converting one-way mailing lists.
  588.  
  589.     .   Lots of little stuff, most of which I don't remember.
  590.         Mostly bug fixes, thanks to the files that people have sent to
  591.         me.
  592.  
  593.     .   Added option for Mark Prado; new keywords:
  594.          RETURNADDRESS_EMAIL
  595.          RETURNADDRESS_NEWS
  596.  
  597.         They act exactly like RETURNADDRESS does.
  598.      => *If either of these are defined, then the original
  599.      =>  RETURNADDRESS is going to be ignored.*
  600.  
  601.         Mark Prado's usage:
  602.          RETURNADDRESS_EMAIL UUCP  ; To make email come from "UUCP"
  603.          ;RETURNADDRESS_NEWS  ; Commented, so that the real name is used
  604.                               ; in the newsgroups instead of an address etc
  605.         My usage:
  606.          RETURNADDRESS_EMAIL  ; Both of these will contain the person's
  607.          RETURNADDRESS_NEWS   ; email address in the fido header, unless
  608.                               ; the address is over 35 characters
  609.  
  610.     .   Another attempt at putting the cursor in the right place. (:-)
  611.  
  612.     .   People having problems tossing "grunged" packets should
  613.         try this version.  Apparently, some people are getting
  614.         8 bit data on what is supposed to be a 7 bit channel;
  615.         that 8 bit data makes some mail processors treat the
  616.         message as grunged.
  617.  
  618.     .   Nodelist lookup was somehow flawed.  I changed it a bit, now
  619.         it works.  Beats me, I just program the thing..
  620.  
  621.     .   GIGO will _not_ email user@...fidonet.org addresses; now, with
  622.         a special key, it will.  Normally it turns it back to netmail
  623.         immediately, for political reasons.
  624.  
  625.         Also put in provisions for "FASTRETURN orgname.org", so that
  626.         if email is sent to "user@f#.n#.z#.orgname.org", it will be
  627.         immediately treated as netmail, instead of being sent out.
  628.  
  629.     .   On converting mailing lists, gigo was not simplifying
  630.         the address specified in your map file; therefor,
  631.         "user@yoursite" didn't equal "user" like it should
  632.  
  633.     .   Worked on date again; people on other side of timezone line
  634.         were getting the fidonet header's dates incorrect.  Presumably,
  635.         corrected.  Someone in that other side of the world will need
  636.         to let me know :-)
  637.  
  638. [12-20-93]
  639.  
  640.     .   arg, 2 days later than expected..
  641.     .   Extra logging to detect ftpmail failures for Gary
  642.     .   doc'd the source for FIXMAP and LISTSERV
  643.     .   Modified subject lines of the ftpmail requests
  644.         for testing with a program I found (converts
  645.         ascii uuencoded message files to binaries, pretty neat)
  646.         I'll let everyone know how well it works, and if it can be used
  647.         to send groups of files to other people in a more automated
  648.         manner.  (ie, sending zone echomail via internet!)
  649.  
  650. [12-18-93]
  651.  
  652.     .   Attempting better intelligence at finding the tearline and
  653.         origin lines, even in netmail... trying to make it differentiate
  654.         between signatures, no signatures, tearlines, no tearlines..
  655.         It's a messy process with netmail!
  656.  
  657.     .   "HIDE" parameters were not working.  They would have if everyone
  658.         did the same typos I did, oh well. ;-)
  659.  
  660.     .   SPLIT caused problems when not specified.  Fixed.
  661.         (This possibly affected .f.n.z.fidonet.org address parsing?)
  662.  
  663.     .   The mailer-daemon was picking up the null-pointer as an address
  664.         to it's string that got bounced.  Fixed.
  665.  
  666.     .   Added the ability to generate user@f#.n#.z#.organization type
  667.         addresses.  Default is .fidonet.org; you may now specify
  668.         alternate settings (ie, .chigate.com,   .pronet.org,  etc)
  669.  
  670. [12-17-93]
  671.     .   GIGO will now process ".BAG" files as though they are
  672.         newsgroups.  These .BAG files are the files you get from
  673.         receive-only stations such as Plannet Connect, a service that
  674.         provides fidonet, usenet, etc.  Their usenet bundles are
  675.         called .BAG files.
  676.  
  677.         To use this feature, specify BAGS C:\BAGS\ (or the appropriate
  678.         directory of your choice).  You will still need to specify things
  679.         like your spool directory, etc; this is just one of those "optional"
  680.         extras to make life a little bit easier.
  681.  
  682.  
  683.     .   GIGO now supports "function requests" that are triggered when
  684.         emailing special USER accounts.  GIGO will dump the entire message
  685.         to FUNCTION.REQ, and then run the designated program.
  686.  
  687.         Upon return from that program, GIGO will look for FUNCTION.REP, and
  688.         if found, email it back to the person who triggered the response.
  689.  
  690.         Example:
  691.            (in your .Cfg)   USER trigger FUNCTION MyFunc.Bat
  692.  
  693.            (myfunc.bat)
  694.                 echo Public files available from my site
  695.                 Dir c:\pub\*.* /s >>function.rep
  696.  
  697.         You may implement the function request mechanism for just about
  698.         any purpose; some people have expressed an interest in setting
  699.         up outgoing fax.  If anyone gets this working, let me know!
  700.  
  701.     .   Implemented a simple LISTSERV program to manage your mailing lists.
  702.         Source is included.
  703.  
  704.     .   Implemented a rude & crude parser so taht your areafix program
  705.         on the fidonet side can send the gateway it's requests.  The program
  706.         does not have the functionallity of asking your host for the new
  707.         areas, due to no standard being around.  However, it will update
  708.         the map file for you.
  709.  
  710.         Some hosts require that you send your entire active entry;
  711.         if your feed is Netcom, I have a 4dos batch file that will convert
  712.         the map file to a AutoNews request.
  713.  
  714.  
  715.  
  716. [12-16-93]   Figures..
  717.     .   Fixed a bug with the windowing that would lock things up after
  718.         about the 3rd rmail or rnews.  The window kept moving down further
  719.         and further (as far as the computer was concerned, anyways) until
  720.         it locked.
  721.  
  722.     .   Removed 386 detection; hopefully, this will clear up
  723.         the "endless loop" problem that one person had.   The banner
  724.         now simply states "(386)".
  725.     .   Couple of other cosmetic problems.
  726.  
  727.  
  728. [12-15-93]   Finally releasing the 32 bit version
  729.  
  730.     LOGBOUNCED logfilename.ext
  731.  
  732.              Logs all bounced email to this file
  733.  
  734.     LOGFTPMAIL logfile.ext
  735.  
  736.              Logs all ftpmail requests
  737.  
  738.     Files that come to you compressed, but missing the "#! cunbatch"
  739.     header line, will now recognized as long as their first character
  740.     is the  character (which is used at the beginning of any .gz or
  741.     .Z file made by their appropriate compressors).  When compressing,
  742.     however, GIGO will _always_ make the appropriate "#! cunbatch" headers.
  743.  
  744.     Netmail messages that had ----- in them, but no tearline, were being
  745.     truncated because the gateway inadvertantly thought it found the
  746.     tearline.  Now, GIGO will not truncate at the tearline during netmail,
  747.     which means that if a user _does_ have one, it will be sent out.
  748.  
  749.     This should also by the same token stop signatures from being chopped.
  750.  
  751.     MAPUF functionallity added - you can now tell the gateway that if
  752.     someone sends a message to "sysop" at the gateway address, that the
  753.     sysops's email address is "root@site".  Or, you can do things like
  754.     if the message is written to "Jason Fesler", have it subsitute
  755.     "jfesler@wmeonlin.sacbbx.com".
  756.  
  757.  
  758.     Problems with not having a blank line after the header are fixed
  759.  
  760.     Zone properly placed in INTL lines now (big oops)
  761.  
  762.     Virtual memory mananger information is included
  763.     If you are running low of extended memory etc, read the
  764.     PROTECTED.MODE file in the archive.  It has information on
  765.     how to enable virtaul memory (For defaults, set DOS4GVM=1).
  766.     This will allow GIGO to use your hard disk when it comes across
  767.     the really big messages, instead of truncating them.
  768.  
  769.     (For grins, I told my system to allow up to 4 megs - even though
  770.     it only has enough _memory_ to hold up to half a meg - just in
  771.     case someone sends me that massive uuencoded email message
  772.     or something...)
  773.  
  774.     Finally hacked a way to start allocating that huge region of
  775.     DOS memory.  As soon as I modify the startup code of the
  776.     extender, GIGO will use the DOS area of memory if Shroom is
  777.     found in the current directory (shroom handles the swapping).
  778.  
  779.  
  780.  
  781.     Spent a LOT of time on a stupid 30 byte bug that would make
  782.     things die during usenet->fidonet conversion.  I believe this
  783.     was a bug incurred during the actual code port to 32 bit.
  784.  
  785.     Messages that were bounced are from "mail-daemon" instead
  786.     of "bouncer" to conform to usenet standards
  787.  
  788.     "USER infoaccount  INFO INFOFILE.TXT" in your config files
  789.     will tell gigo that if someone emails "infoaccount@yoursystem",
  790.     gigo's mail-daemon will send back the INFOFILE.TXT to the user.
  791.  
  792.     Common usage would be "USER info INFO status.doc" with status.doc
  793.     containing the status of current projects, ie gigo, wme, etc.
  794.  
  795.  
  796. [12-08-93] - no release; initial 32bit port done
  797.  
  798.     Wow   *   What a _big_ freak'in file!
  799.  
  800.     GIGO is now a 32-bit application, with a dos extender.
  801.     This hatch will include the extender; it will be requestable
  802.     seperately until version 1.00 is ready.  No sense resending that
  803.     part over and over again.
  804.  
  805.     GIGO requires at least a 386-sx.  Sorry, but to do the fancy stuff,
  806.     it's required.
  807.  
  808.     I need to dig up the docs, but the dos extender allows you to
  809.     use virtual memory.  I wouldn't suggest it, because
  810.     of the speed hit, but .. who knows, someone may need to handle a
  811.     4 meg postscript message..  ;-)
  812.  
  813.     Speedups in the output code; since things are no longer multi-section,
  814.     but instead one big single buffer, things will move just a
  815.     tad faster.  I can now also remove the redundant string length
  816.     checks.
  817.  
  818.     If you are having problems, let me know.  See the top section
  819.     of this file for what I need.  Chances are new bugs got introduced
  820.     when porting to 32 bit.
  821.  
  822.  
  823.     Points are now recognized properly when they write netmail
  824.     to the gateway.  Scott Parks will probably finally be happy ;-)
  825.  
  826.     Nodelist compiler added - when GIGO is processing mail, it will
  827.     check for the compiled nodelist, and if found, will verify
  828.     any address in the form of user@f##.n###.z###.fidonet.org, or
  829.     in the style of user@###-###-###.yoursite.domain.  If they are not
  830.     in the nodelist, the message is immediately bounced back to the
  831.     sender.
  832.  
  833.     I added this ability since MsgTrack, the main netmail bouncer used
  834.     by zone and region backbone operators, does not recognize the
  835.     kludges from FSC-35, which state how to email someone via a gateway.
  836.     Messages bounced by MsgTrack get bounced by GIGO and sent back to
  837.     MsgTrack since MsgTrack improperly addressed the mail, making a loop.
  838.  
  839.     Messages from "bouncer" or "daemon" (or any of their derivitives)
  840.     are _not_ checked for a valid address; once again, to prevent dupes
  841.     (ie, a fake node sending email to another fake node).
  842.  
  843. //-----------------------------------------------------------------------//
  844.  
  845. [11-29-93]
  846.  
  847.     1.  Pointer wasn't initialized when checking fido->usenet names.
  848.         Sometimes it would consider the newsgroup to be moderated.
  849.  
  850.     2.  Munging error?  Note sure why, might be a compiler bug; sometimes
  851.         when it was told to copy the numeric part over, it would leave the
  852.         name buffer empty instead, even when the source _wasn't_ empty.
  853.         I've reorganized the code, and it seems to function correctly now.
  854.  
  855.     3.  Added ì -> linefeed translation.  ì is a special character in
  856.         fidonet mail; it signifies where the BBS was word-wrapping at.
  857.         GIGO was not translating that function, and I never saw it
  858.         since none of my software has this behavior.
  859.  
  860.     4.  Added ability for ML to filter out bounce messages from the
  861.         mailing lists.  See attached ML.BAD file for examples and info.
  862.         This will stop messages that get bounced back to the mailing list
  863.         from being re-distributed yet again.  Note, they will still be
  864.         in the message base - just not sent out twice.
  865.  
  866.     5.  Slightly modifed mail packet creation - the U line in .XQT files
  867.         will reflect "Errors-To:" correctly when overriden by ML or by a
  868.         user.
  869.  
  870.     6.  RETURNADDRESS may now be followed by an optional parameter -
  871.         who you want to have the fidonet headers to say they are from.
  872.  
  873.         You have 3 options now:
  874.  
  875.         ;RETURNADDRESS
  876.            When the verb is ommited, the person's real name is
  877.            placed in the fido header when possible, otherwise their
  878.            email address is subsituted.
  879.  
  880.         RETURNADDRESS
  881.            attempts to put the other person's email address in the
  882.            fidonet header, allowing primitive editors to do a netmail
  883.            reply (to the same email address at the gateway's fidonet
  884.        location).
  885.  
  886.            When their return address will not fit, their real name is
  887.            subsituted.
  888.  
  889.         RETURNADDRESS UUCP (or other name, ie Gateway, internet, UFGATE,etc)
  890.            This will place the given string in the fidonet header,
  891.            ie always being from "UUCP".
  892.  
  893.  
  894. [11-20-93]
  895.  
  896.     1.  My host can't handle RMAIL lines that are longer than about 400
  897.         characters - in effect, breaking ML.  I am modifying ML (again)
  898.         to now use a CCLIST klude instead of CCFILE; the CCLIST will have
  899.         the list of recipients, up to about 250 characters.
  900.  
  901.         Current special kludge lines allowed by GIGO:
  902.           ^aPASSWORD  password        Tells GIGO that it's secure
  903.                                       (ie mailing list) and to open all
  904.                                       abilities up to that message
  905.           ^aCCFILE    filename        List of people to send to
  906.                                       (make sure the list is short, or
  907.                                       else your uplink may have problems)
  908.  
  909.                                       GIGO itself will not have ANY problems
  910.                                       with the size of "filename"; if your
  911.                                       host can handle it, feel free to use it.
  912.  
  913.           ^aCCLIST   name name name   List of people to send to
  914.                                       (make sure the list is short, or
  915.                                       else your uplink may have problems)
  916.  
  917.                                       GIGO's limit is 512 characters; try
  918.                                       keeping to 256 instead though, for safety
  919.                                       sake.  ML will create up to 256 per
  920.                                       netmail when handling the mailing list.
  921.  
  922.       2.  People noticing a "u" at the beginning of your messages -
  923.           let me know if this version does it.  It should be fixed now.
  924.  
  925.       3.  A bit more cleanup is done now.  (whoop-dee?)
  926.  
  927. [11-19-93]
  928.  
  929.     1   When posting in an echo that is gated to a mailing list, GIGO was
  930.         accidently including a "Newsgroups: *" line (which as a "Newsgroups: ■"
  931.         line before 7 bit translation).  When I made mailing list modifications,
  932.         I forgot to tell the new routines to watch for that special character
  933.         which meant "Mailing list, do not send as a newsgroup or moderated
  934.     newsgroup".
  935.  
  936.     2   Some speed-ups made by the gateway going from usenet -> fidonet.
  937.         Not likely to be a _major_ speedup, but every bit helps when you
  938.         process multiple megs of mail a day.
  939.  
  940.     3   Newsgroups weren't putting a newline character after the
  941.         Organization: line.  Fixed.
  942.  
  943.     4   Origin lines were sometimes 1-2 characters too long and GMD running
  944.         at backbone sites would bitch.  Fixed.
  945.  
  946. [11-18-93]
  947.  
  948.      Changes made to ML.EXE; it is now a dual-purpose program.
  949.      It is a combination netmail packer and mailing list manager.
  950.      Possibly, future versions will allow for subscriptions
  951.      and desubscriptions; right now, this is not an option.
  952.  
  953.      You CAN run ML.EXE without actually running any mailing lists;
  954.      ML's usefulness will be strictly as a netmail packer.
  955.  
  956.      Note that there are a couple of extra options now; please,
  957.      check these out before running the new ML program.
  958.  
  959.      ML will scan your netmail directory, and any netmail written to the
  960.      gateway's address WILL be packed up.  In addition, it will check
  961.      for any mail to your main address, and if it sees a "@","!", or "%"
  962.      in the To: address, or if it was written to "UUCP" etc, it will
  963.      assume that it should go to your gateway's address as well, and
  964.      redirect it there.
  965.  
  966.      ML's .PKT files are not 100% FTSC compliant; I am ommiting some
  967.      kludge line information that GIGO does not need.  However, if you try
  968.      tossing the .PKT files instead of letting GIGO, they may/may not
  969.      turn out as expected.
  970.  
  971. [11-17-93]
  972.      Had to spend a lot of time on the BBS software; this is my first
  973.      real chance back at things.
  974.  
  975.      1.  Making ML and GIGO more integrated; ML will only write one copy
  976.          of the netmail message, with a special CCLIST line pointing
  977.          to the file of email addresses.  GIGO will write a single
  978.          email message, and will expect the smarthost to be able to
  979.          handle "rmail user user user user .." lines (standard).
  980.  
  981.      2.  You can use "ORIGIN=ORGANIZATION" or "ORGANIZATION=ORIGIN"
  982.          without specifying any actual text now.
  983.  
  984.      3.  GIGO puts it's speil in a PID kludge only for fidonet mail;
  985.          it's too long to put on the tearline.  The tearline itself
  986.          is now blank, to keep FTSC police happy.
  987.  
  988.          GIGO is now placing your serial number (so you can show it
  989.          off to the world), and also your sitename, to help track
  990.          dupes that may occur.
  991.  
  992.      4.  Received: lines (actually, these were already here, just now
  993.          documenting them..) for outgoing email.
  994.  
  995.      5.  If you have somehow MISSED the "SITE LOCAL <your site address"
  996.          information, SEE THE NOTES FOR 11-10-93 #6 ..
  997.  
  998.      This will take care of MANY of your problems!
  999.  
  1000.      6.  Messages that your site was not able to translate, ie because
  1001.          of a bad sitename, and you did not specify KEEP_UNKNOWN,
  1002.          were being bounced back... to the postmaster of your
  1003.          smarthost instead of to the original sender.  Fixed.
  1004.  
  1005. [11-13-93]
  1006.  
  1007.      1.  Memory corruption was taking place on the last version.
  1008.          Don't know why.
  1009.  
  1010.          This version has extensive debugging; if it gives problems, I want
  1011.          the relevant portions of the log files.  If you still have
  1012.          the input files, send me those with your .cfg's.
  1013.  
  1014.      2.  Slightly new behavior for GIGO:  If a user enters a header line
  1015.          at the top of his message, GIGO will check the validity of it.
  1016.          If you allow it ("Allow_Reply-To:", "Allow_From:", etc), GIGO
  1017.          will go ahead and take it.  If you DON'T allow it, GIGO will
  1018.          assume that it's the start of the message.
  1019.  
  1020.          Reason for change: stability
  1021.  
  1022.      3.  PID fixed for unregistered sites.
  1023.  
  1024.      4.  LOGO stuff changed a bit..
  1025.            /NOLOGO  skips the opening screen.
  1026.            Opening screen does not say anything about shareware etc
  1027.            Opening screen flashes just once now, runs a bit faster
  1028.            Non-registered people get ending screen, with a small
  1029.              two second pause; shareware screen shows this time
  1030.              /NOLOGO will _not_ turn this screen off
  1031.  
  1032. [11-12-93]
  1033.  
  1034.      1.  GIGO was previously word-wrapping _all_ lines of the fidonet
  1035.          message LINESPLIT was defined.  Now, GIGO will do all but one
  1036.          line - the "* Origin:" line.  Some people had origin lines
  1037.          that were even just one character too long, so GIGO was cutting
  1038.          their address off, thereby eliminating it's ability to figure out
  1039.          what address the user was from.   Thanks to Scott Parks..
  1040.  
  1041.      2.  Incorrect keywords.. "FSC-38" should be replaced with "FSC-35"
  1042.          anywhere you find it in GIGO.
  1043.  
  1044.      3.  Changed the wording on the docs and cfg files for "DOMAIN"
  1045.  
  1046. [11-10-93]
  1047.      1. [See also #5]
  1048.  
  1049.         Attempted DV compatibility.  I have successfully made
  1050.         GIGO to be DV aware - ie, if DV is loaded, GIGO locks like a
  1051.     mother..
  1052.  
  1053.     Needless to say, I can't get DV compatibility on here.
  1054.  
  1055.      2. Added "LOGKEPT filename.ext"  and  "LOGDUMPED filename.ext".
  1056.         LOGKEPT will log all newsgroups that were kept, and
  1057.         what echo names they were given.  LOGDUMPED simply logs which
  1058.         areas were dumped.
  1059.  
  1060.         These are not sorted, and dupes are not removed.  These were
  1061.         only added at the request of some gateway admins; I will leave
  1062.         it to them to determine a way to make these files useful.
  1063.  
  1064.         If you don't need them, turn them off - they _will_ slow
  1065.         things down.
  1066.  
  1067.     3.  Path line fixed.
  1068.  
  1069.     4.  Checked on "Organization" line; put it under all 4 combinations
  1070.         of possibilities.   No problems.   If you continue to have problems,
  1071.         send me your config.
  1072.  
  1073.     5.  GIGO will no longer use direct video; it now uses BIOS calls to
  1074.         handle all of it's video.  If you want to re-enable direct
  1075.         screen writes, put DIRECTVIDEO in your config file.  It will take
  1076.         effect _after_ the .CFG file is loaded.
  1077.  
  1078.         This will slow down the logo screen, as well as general
  1079.         message output.  If it slows down too much, put DIRECTVIDEO
  1080.         back into the config file.   The BIOS stuff is strictly as
  1081.         a way for DesqView people to not have to use the "Program
  1082.         uses direct writes" option, as that slows them down considerably,
  1083.         and is about the closest I can make Borland come to being DV
  1084.         happy.
  1085.  
  1086.     6.  People who had users posting from the gateway's BBS were noticing
  1087.         that GIGO was putting in a system address instead of just puting
  1088.         in the site & domain (ie, joe.blow@1-2-3-4.site instead of
  1089.         simply joe.blow@site).
  1090.  
  1091.         Add the following:
  1092.  
  1093.             SITE  local  1:203/7707 ; (use YOUR main address!)
  1094.  
  1095.         Alternatively, you can use an actual sub-site name, or tell
  1096.         GIGO to use the fidonet.org style addresses.  Examples are in order..
  1097.  
  1098.         SITE local       1:203/7707.0; produces joe.sysop@gateway.site
  1099.         SITE home        1:203/7707.0; produces joe.sysop@home.gateway.site
  1100.         SITE gateway     1:203/7707.0  produces joe.sysop@1-2-3-4.gateway.site
  1101.         SITE fidonet.org 1:203/7707.0; produces joe.sysop@p4.f3.n2.z1.fidonet.org
  1102.  
  1103.         Use the one that you prefer mail from your own system to look like.
  1104.  
  1105. [11-08-93]
  1106.  
  1107.      1.  FTPMAIL command added: SIZE
  1108.          Requester can now specify a block size from
  1109.          1500 to 45000 bytes (before encoding).  By default,
  1110.          files are sent in 9990 byte blocks (approx 12k after encoding)
  1111.          so that fidonet gateways don't have to break the message up;
  1112.          this command allows the _REAL_ internet sites choose a real
  1113.          block size instead of the weeny fidonet limits.
  1114.  
  1115.      2.  Compression of outbound mail should work now.  I forgot the path.
  1116.  
  1117.      3.  FSC38 must now be specified.  If not, then the ^aREPLYTO
  1118.          and ^aREPLYADDR kludges will not be generated on fidonet mail.
  1119.          Added because RA has bugs handling FSC38 (grr)
  1120.  
  1121.      4.  You may now specify /MAIL, /NEWS, and/or /FIDO on the command
  1122.          line to specify which actions you want to do.  These WILL
  1123.          override whatever is in your .CFG file.
  1124.  
  1125. [11-07-93]
  1126.  
  1127.      1.  Nasty bug when there was a usenet HEADER, but no MESSAGE.
  1128.          Fixed.
  1129.  
  1130.      2.  If you have problems with the SWAPEMS, SWAPXMS, SWAPEXT, or
  1131.          SWAPPATH options, disable them.  Play with the settings.
  1132.          Some of these options are incompatible with some machines.
  1133.  
  1134.          If all else fails, disable _ALL_ of them, and get a copy
  1135.          of SHROOM.  It will reliable and cleanup (albeit only to disk)
  1136.          swap out GIGO for you.
  1137.  
  1138.      3.  Took out some of the status messages that were bogging the logging
  1139.          down.  Now, only truely informational messages are put into the
  1140.          log, as well as all errors.
  1141.  
  1142.      4.  Trying to sqeak just a bit more of the memory down, but.. (sigh)
  1143.          GIGO definately eats a lot of it.
  1144.  
  1145.      5.  For bernd@... in the config file, "MYPATH" may now be defined.
  1146.          It defaults to the MYSITE value.  It will be used for all
  1147.          newsgroups, on the "Path: MYPATH!user" line.  If used, it will
  1148.          be up to you to make sure it's legal.  No checking is done by
  1149.          GIGO to check it's legality.
  1150.  
  1151.  
  1152.      6.  Typo in source code fixed; now, if you specify ORGANIZATION,
  1153.          but do not specify the ORGANIZATION=ORIGIN, it should work
  1154.          properly.
  1155.  
  1156.      7.  Screwed with date code again; this time, it's not the incomming
  1157.          dates getting mangled.  This time, (theoreticly) I've got the
  1158.          outgoing dates correct, too.  Let me know if you find otherwise.
  1159.  
  1160.      8.  GIGO is now being compiled with 8088 code.  If this seems to be
  1161.          a speed hit, let me know, and I'll start bundling both versions
  1162.          into the archive.
  1163.  
  1164. [11-05-93]
  1165.  
  1166.      1.  Removed SHROOM support.  It's only option for swapping is
  1167.          via disk.
  1168.  
  1169.      2.  Added SPAWNO.LIB to the project; GIGO will now swap on it's own.
  1170.          New config options
  1171.             SWAPEMS
  1172.             SWAPXMS
  1173.             SWAPEXT
  1174.             SWAPPATH  pathname
  1175.  
  1176.          By default, if none of these are defined, GIGO will check
  1177.          the dos environment for TMP or TEMP; if found, GIGO will swap
  1178.          to that directory.  IF not, then GIGO will use the current
  1179.          directory.
  1180.  
  1181.          Using the SWAPEMS, SWAPXMS, and SWAPEXT config verbs will make
  1182.          swapping a LOT faster!
  1183.  
  1184.      3.  Fixed SPAWNO support.  (Don't ask.. just take my word for it..)
  1185.  
  1186.      4.  GIGO will no longer make a Path: line on email, just newsgroups.
  1187.  
  1188.      5.  NEW COMMANDS in FTPMAIL requests:  "BINARY" and "ASCII".
  1189.          By default, GIGO will now autodetect the type of file being
  1190.          requested, and if it is straight ASCII, send it as a regular
  1191.          email message.  If it's binary, it will uuencode it first.
  1192.  
  1193.          BINARY and ASCII allow the user to override the autodetection.
  1194.  
  1195.      6.  If TEST is defined, GIGO will now only scan the spool directory
  1196.          _once_ instead of twice, preventing your getting two of everything.
  1197.          A side effect is, if a fidonet person sends a ftpmail requests,
  1198.          his email message(s) back will not be converted to netmail
  1199.          until next time you run GIGO.
  1200.  
  1201.  
  1202. [11-04-93]   version 0.80
  1203.  
  1204.      I've seen some wierd stuff that was off-standards and all, but
  1205.      this definately takes the cake..
  1206.  
  1207.      1.  File names where the sitename in the data file were truncated
  1208.          prematurely at 4-5 characters instead of 6 are now properly
  1209.          detected.
  1210.  
  1211.          GIGO should be having no problems with munging now.  GIGO takes
  1212.          up to 8 passes parsing the file names and site names in memory
  1213.          to find the appropriate string, testing munging with your site
  1214.          name and your feed's site name, to handle non-standard .X/.D files.
  1215.  
  1216.      2.  Fixes on handling *.X files..
  1217.           a. "C NEWS" and "C RNEWS" mean the same thing
  1218.           b. "C NEWS " will now be handled properly (why the heck is
  1219.              there a space in there?!?).  Anyhow, some people experienced
  1220.              this problem.
  1221.  
  1222.           c. If the command is unknown (not rnews, news, or rmail),
  1223.              I am going to start logging it.
  1224.  
  1225.      3.  Slightly faster when generating fidonet messages; the
  1226.          \n -> \r conversion has been rewritten (wow - 3 lines of
  1227.          code, rewritten for faster logic.. :-).  Anything to
  1228.          make gating faster.
  1229.  
  1230.      Stupid Stats as of 11/4/93
  1231.           GATEWAY.EXE:  6940 lines of code, not counting headers
  1232.           ML.EXE:       1420 lines of code, not counting headers
  1233.                              or the MSGAPI code by Scott Dudley
  1234.  
  1235.  
  1236. [11-02-93]
  1237.      1.  Fixed ML.EXE; it no longer locks up for Rick Christian.. :-)
  1238.          (Sorry, I don't remember what the bug was, I just know it works..)
  1239.  
  1240.      2.  Added integrity check to ML.EXE.
  1241.  
  1242.      3.  New config variable:  "KEEP_UNKNOWN".  If defined, if you
  1243.          get email that the gateway does not now how to deliver
  1244.          (ie, to john.doe@bogus.yoursite.domain), GIGO will keep the
  1245.          message, and send it to your netmail address for you to manually
  1246.          forward or bounce.
  1247.  
  1248.          If "KEEP_UNKNOWN" is _not_ defined, GIGO will automaticly return
  1249.          any undeliverable mail back to the sender.
  1250.  
  1251.      4.  ^aPASSWORD kludge fixed, hopefully for the last time.  ML should
  1252.          be working fairly flawlessly now.
  1253.  
  1254.      5.  Email messages that were too long for GIGO's internal buffer
  1255.          were locking GIGO up.  Fixed.
  1256.  
  1257.  
  1258. [10-31-93]
  1259.      1.  Munge code replaced by code from Waffle 1.63
  1260.          Thanks, Bernd..
  1261.  
  1262.          Let's see how well this works for people with those
  1263.          really long packet names like foobarBC125423532515151512... :-)
  1264.  
  1265.      2.  Received approval to include "Shroom" with GIGO.  Now, all
  1266.          I need is to get permission for the compress program, and
  1267.          for uucico..
  1268.  
  1269.      3.  Fixed a lastread problem with ML.
  1270.  
  1271. [10-27-93]
  1272.      1.  ftpmail requests are processed _quite_ a bit faster now.
  1273.          Before running ftpmail requests, I dump the message buffers,
  1274.          and reallocate it for using with uuencode input and output
  1275.          buffering.  MUCH faster reading/writing 60k at a time than it
  1276.          is to write 60 bytes at a time!
  1277.  
  1278. [10-24-93]
  1279.  
  1280.      1.  Improved .fidonet.org address detection;
  1281.          user@f##...fidonet.org is considered netmailable, and
  1282.          bheese@mcws.fidonet.org is considered emailable, for purposes
  1283.          of deciding whether to use email or netmail to deliver the
  1284.          message, and in determining if ftpmail requests are allowed.
  1285.  
  1286.      2.  Improved detection of ^aPASSWORD kludge lines in conjuction wiht
  1287.          the mailing list.
  1288.  
  1289.      3.  ML.ZIP is now included; it's a preliminary form of
  1290.          a mailing list processor.  It leaves most of the gating work to
  1291.          GIGO; ML.ZIP is just the message base interface.
  1292.  
  1293.          It supports Squish/*.MSG now.  If you feel that a Hudson or
  1294.          JAM implementation should be written, contact me, so that I
  1295.          can give you the few specifications needed to use GIGO as I
  1296.          am.  If you would like your version for your message base
  1297.          distributed, contact me :-)
  1298.  
  1299. [10-13-93]
  1300.  
  1301.      1.  Damn date bug, different one.  This house is infested with
  1302.          the creatures.  Pulled out the can of RAID, sprayed that bugger,
  1303.          and now the timezone names (in parenthesis following the dates)
  1304.          are now showing the proper names instead of gibberish.  Now, if
  1305.          only I would stop talking gibberish..
  1306.  
  1307.      2.  Some people are having problems with the D.* and X.* file names
  1308.          being mis-translated.  I can't find a problem with the code.
  1309.          However, I have treated the code in such a way, that if it gets the
  1310.          wrong size file name, it automaticly reverses the names, and
  1311.          tries it in the other direction - if it gets a proper file name,
  1312.          cool, it will use it.
  1313.  
  1314.      3.  GIGO will allow for extra header lines to be specified in the
  1315.          messages.  Ie,
  1316.             To: user@domain
  1317.             Reply-To: jfesler@wmeonlin.sacbbx.com
  1318.             X-Disclaimer: My views are my own.  Problems >/dev/null
  1319.  
  1320.             This is a sample message
  1321.  
  1322.          GIGO will actually UNDERSTAND the extra header lines.
  1323.          Only those that you, the site administrator, allow, will be
  1324.          actually in the header itself; any that are not directly
  1325.          allowed are passed in the message body instead.
  1326.  
  1327.          To enable any user-defined headers, add to your config file:
  1328.             Allow_HeaderName:
  1329.             Allow_Reply-To:
  1330.             Allow_X-Disclaimer:
  1331.  
  1332.      4.  If tke kludgeline PASSWORD ML exists in the netmail or
  1333.          echomail message, _all_ header lines are considered valid,
  1334.          whether or not they are defined in your setup.
  1335.  
  1336.          In a VERY near future, you will have your choice of passwords
  1337.          in this field.
  1338.  
  1339.          This is for compatibility with the mailing list that I am writing,
  1340.          as well as any 3rd party utils, that need to send extra header
  1341.          lines.  They can be told in include the PASSWORD line,
  1342.          enabling Gigo to import all headers.
  1343.  
  1344.      5.  If FTPMAIL-MAXBYTES or FTPMAIL-MAXFILES is missing, default
  1345.          is (practically) no limit.  Okay, there is a limit.   If you have
  1346.          more than 4 gigs, it will stop at 4 gigs.  Oh well, sue me.
  1347.  
  1348.          If FTPMAIL-FIDONET is missing, fidonet ftpmail requests will
  1349.          be returned with a message stating that it's not allowed.
  1350.          Be sure to include FTPMAIL-FIDONET if you want fidonet users
  1351.          to be able to use ftpmail services via your system.
  1352.  
  1353.          (This does NOT affect ftpmail requests from other sites, just
  1354.          yours.).
  1355.  
  1356.     6.   It's possible that outbound names were not always correct; I
  1357.          noticed a problem late tonight on my programming machine,
  1358.          but haven't been noticing it on the actual gateway for my net.
  1359.  
  1360.          Any case, I squashed that bug.
  1361.  
  1362.  
  1363. [10-12-93]
  1364.  
  1365.      0.  (Missing from docs)
  1366.  
  1367.          Samples on USER statements
  1368.            USER jfesler 1:203/7707.0 Jason Fesler
  1369.            USER jfesler 1:203/7707.1 Jason Fesler
  1370.            USER jfesler                     BOUNCE
  1371.            USER jfesler                     BOUNCE he-died.txt
  1372.            USER jfesler@wmeonlin.sacbbx.com BOUNCE jfesler@heaven.com
  1373.            ; Above three bounces bounce the internet->fidonet side
  1374.  
  1375.            USER bounce 1:203/8055 Sysop
  1376.            ; Above bounces only "Sysop" from 203/8055, fido->internet
  1377.  
  1378.          Sample SITE statements
  1379.            SITE local       1:203/7707 ; anything from here is
  1380.                           ; user@wmeonlin.sacbbx.com, no sub site
  1381.            SITE home        1:203/7707.1 ; where I personally post from
  1382.            SITE purgatory   BOUNCE     ; This site does NOT exist any more!
  1383.            SITE cherynoble  BOUNCE        nuked.txt
  1384.            SITE BOUNCE      1:203/8055 ; Don't take his mail, he's an ass
  1385.            SITE GATEWAY     1:*/*   ; Gate for all other parts of zone 1
  1386.            SITE FIDONET.ORG *:*/*   ; standard f.n.z.fidonet.org
  1387.  
  1388.            ;The third line bounces any mail to the site
  1389.            ;cherynoble, giving back the message in nuked.txt
  1390.  
  1391.            ;The fourth line bounces fidonet netmail from
  1392.            ;1:203/8055, eliminating his/her users from being
  1393.            ;able to use the gateway.
  1394.  
  1395.      1.  FTPMAIL requests were incorrectly putting some of the text
  1396.          into the .REQ file (basically, the lines weren't commented,
  1397.          so the find & uuencode section was searching for the actual
  1398.          files..
  1399.  
  1400.      2.  Cleaned up fidonet name -> internet name conversion.
  1401.          Whenever there is the potention for multiple dots,
  1402.          ie "Dr. Dobbs" -> "Dr..Dobbs", GIGO will subsitute
  1403.          an underscore for the dot.
  1404.  
  1405.      3.  You can now control ftpmail requests a bit better.
  1406.            FTPMAIL-MAXFILES 10  ; Max 10 files returned per req
  1407.            FTPMAIL-MAXBYTES 1000000; max bytes returned per req
  1408.            FTPMAIL-FIDONET ; if defined, allows fidonet users
  1409.                            ; to use ftpmail requests.  If not
  1410.                            ; defined, stops .fidonet.org and
  1411.                            ; stops .yoursite requests ...
  1412.  
  1413.      4.  Fixed yet another date bug.  Numeric time zone codes
  1414.          were being improperly applied.  Seems to work now.. but
  1415.          then again, thought it was fixed _last_ time.
  1416.  
  1417.      5.  In outgoing date/time strings, the numeric time zone
  1418.          is always placed into the string relative to UTC.
  1419.          The time zone name is placed in parenthesis following
  1420.          the date, as a standard comment, stating the time zone
  1421.          that the message was sent from (as in the gateway's tzone).
  1422.  
  1423.      6.  In the subject line of split messages, the split number was
  1424.          always off by 1.  Fixed.
  1425.  
  1426.      7.  Version number now shows on GIGO tearline (does not include
  1427.          compile date).
  1428.  
  1429.      8.  ORGANIZATION line now fixed; if you specify an ORGANIZATION
  1430.          but do not specify ORGANIZATION=ORIGIN, GIGO will no longer
  1431.          add the origin line to the organ line.
  1432.  
  1433.      9.  Via lines and other kludge lines are no longer sent via
  1434.          email.  All tracking information from the fidonet side of
  1435.          a message's travels will be lost as it hits the gateway.
  1436.  
  1437.     10.  IMPORTANT
  1438.           Add to your cfg file..
  1439.            FTPMAIL-MAXFILES  10        ; ten files
  1440.            FTPMAIL-MAXBYTES  1000000   ; one meg
  1441.            FTPMAIL-FIDONET ; Allows fidonet people to route via netmail
  1442.                            ; not allowed in fidonet..
  1443.  
  1444.  
  1445.  
  1446. [10-07-93]
  1447.  
  1448.     The date field in the FidoNet header was incorrect if the usenet header
  1449.     showed 1993 instead of 93 (causing the fidonet header date to be off by
  1450.     literally _years_ .. :-).  This bug has been eradicated.
  1451.  
  1452. [10-06-93]
  1453.  
  1454.     "USER" statements are now properly working; anybody defined in a USER
  1455.     statement will be allowed to use the gateway for outgoing email.  Also,
  1456.     the email address in the USER statement will be their prefered email
  1457.     address when generating outgoing messages.
  1458.  
  1459.     If multiple USER lines are listed for the same person, the top one takes
  1460.     precedence, and the lower ones are alternate addresses for _incomming_
  1461.     mail.
  1462.  
  1463.     Thanks to _everyone_ who found this bug and pointed it out..
  1464.  
  1465.  
  1466. [10-03-93]
  1467.  
  1468.     First public beta release given to other people.
  1469.     Thanks to Jim Northrup for helping thus far :-)
  1470.  
  1471. [09-01-93]
  1472.  
  1473.     Started working on GIGO
  1474.  
  1475.  
  1476.