home *** CD-ROM | disk | FTP | other *** search
/ ftp.wwiv.com / ftp.wwiv.com.zip / ftp.wwiv.com / pub / PPPBCKP / SRC / SRC15B53.ZIP / CHANGES.DOC next >
Text File  |  1997-10-19  |  41KB  |  910 lines

  1. Beta-53
  2.  
  3.     - Fixed a quirk which caused NEWSRC to be retrieved entirely on subsequent
  4. runs on a new month or a forced update.
  5.  
  6.     - Changed display of expired and skipped articles to remain on a single
  7. line during retrieval.
  8.  
  9.     - Recast newsgroup count variable from a short to long integer.  For ISPs
  10. with more than 32,767 newsgroups (!), this caused the display to corrupt while
  11. retrieving a NEWSRC listing.
  12.  
  13.     - Figured out the CONTACT.NET update problem (finally!).  Somehow, in B-42,
  14. the structure for net_networks_rec had a far pointer declaration removed for
  15. two variables which control that relationship.  Yeesh...
  16.  
  17.     - Recompiled under Borland C++ v3.1... have now got TC3/BC3/BC4 installed
  18. for a broad selection!
  19.  
  20. Beta-52
  21.  
  22.     - Recompiled with Turbo C++ v3.0 instead of Borland C++ v4.52 which
  23. returned a significant amount of memory (25K) to the program.  Some of that
  24. was immediately used to increase NETWORK's stklen to 15K (in the hope that
  25. it preserves enough space to update CONTACT.NET for everyone!)
  26.  
  27.     - #defined a macro for min() in UU.C in order to use .cpp mode with
  28. compilers earlier than BC4.
  29.  
  30.     - Added self-maintaining routine to update NEWSRC with each news callout.
  31. A full NEWSRC listing is retrieved the first of each month, and updates are
  32. retrieved daily.
  33.  
  34. Beta-51
  35.  
  36.     - Returned to previous method of enclosing recipient information entirely
  37. within the focus during SMTP relay, e.g.
  38.  
  39.                 To:<user@whatever.domain (User Information)>
  40.  
  41. The changes in B-50 didn't resolve the QMail imcompatibility problem.  Adding
  42. USERMAIL=N to NET.INI bypasses extended user information and should allow it
  43. to cooperate with QMail.  (Alternately, use 138.145.3.3 for SMTP relay!)
  44.  
  45.     - Now deletes "441 Duplicate messages" during postings.  You should never
  46. see these, except when the NEWS times out during posting, in which case the
  47. duplicate message is genuine, i.e. the first message did get posted.
  48.  
  49.     - Nailed the culprit causign NEWS lockups!  I wasn't allocating enough
  50. room for a buffer when extracting information from the header, particularly
  51. the "Newsgroups:" and "Path:" fields.  This was most evident on binary groups
  52. with lots of crossposts.  When the buffer overflowed, it crashed!
  53.  
  54.     - Changed source modules to .cpp extension to force stricter bounds check
  55. and typecasting.  Got rid of POP.H and #defined what we need explicitly within
  56. the POP and NEWS modules, including Mail_Socket structures.
  57.  
  58.     - Changed most conditional routines within NEWS to switch() statements in
  59. order to track/detect socket errors more accurately and quickly.  It seems to
  60. respond flawlessly here now! :)
  61.  
  62.     - Chased my tail for a few days figuring out why the certain NEWS routines
  63. appeared to be called improperly (and overwrote memory areas allocated for
  64. other things, including the sockets!)  Turned out a global string variable was
  65. oversized at 4096 bytes (on the static heap!)  RFC 977 provides a maximum of
  66. 512 bytes for returned strings in NNTP, so that's how we're now cast.
  67.  
  68.     - Added checks to ensure the socket was alive in NEWS and POP using the
  69. Waterloo tcp_tick() routine.  Hopefully, this obviates extended periods where
  70. the server falls asleep!  Ensure "INACTIVE" and "SOCK_DELAY" in NET.INI aren't
  71. excessive.  (INACTIVE=60 and SOCK_DELAY=30 are appropriate.)
  72.  
  73.     - Returned makefile options used in B-39 to see if that solves problems on
  74. some systems with memory allocation routines, e.g. allocating for sockets.  One
  75. of the flags was for a standard stack frame.  I think this should fix the case
  76. where the POP mailbox wasn't checked unless there was outbound SMTP.
  77.  
  78.     - Revamped the BAD*.UUE check for mail originating locally, so it accepts
  79. mail in which the original message had been quoted and the original "From:"
  80. line appeared in text.  (Some mail systems, like cc:Mail, quote with just a
  81. separator line, leaving the original "From: you@where" in tact.)  It now looks
  82. only in the header for a match to determine if it's BAD*.
  83.  
  84.     - Added a definable Reply-To: field in NET.INI.  If defined, this address
  85. (up to 80 characters) will be used in the text of newsgroup posts.  It can be
  86. something like:
  87.  
  88. REPLYTO = edare{at}ix{dot}netcom{dot}com (change before responding!)
  89.  
  90.     - Fix from Zu Digital revamps NEWSNAME/NEWSPASS logic.  His local POP for
  91. Mindspring required authentication when the socket was initially opened, so the
  92. NEWSNAME and NEWSPASS are now presented at time of connection.  If your host
  93. does *not* require authentication, you *must* comment out the NEWSNAME and
  94. NEWSPASS lines in NET.INI, otherwise you'll get authentication errors!
  95.  
  96.     - Tweaked the socket error label completely in NEWS, so it does a clean
  97. exit when timeouts and session errors occur.
  98.  
  99.     - Changed the use of the "abort" variable while saving the text body in
  100. NEWS articles so it didn't chop off the message (stop writing it) after a
  101. [Space] or [Esc] command was issued.  The message now gets completed and
  102. processed normally as the last message read in that group.
  103.  
  104.     - Added a time synchronization routine (NTIME.EXE) which sets your DOS
  105. clock using a time server.  If you are unsure of your time server, use the one
  106. in the example below.  If the TIMEHOST is not defined in NET.INI or NTIME.EXE
  107. isn't in the BBS main directory, this routine will be skipped.  Add the
  108. following to NET.INI, below the SMTPHOST definition:
  109.  
  110.         TIMEHOST = ns.nctsw.navy.mil
  111.  
  112.     - Enhanced directory checking when receiving file so it places non-FDL
  113. files in the defined NOREQUEST_DIR in FDLFTS.CFG.  (If FDLFTS.CFG isn't there
  114. or the flag isn't defined, it will go to Sysop directory.)  Also, fixed a
  115. place where it wouldn't have found FDLFTS.CFG under normal circumstances.
  116.  
  117.     - Saw a first today -- a 0 octet (no size!) message was queued in my POP
  118. mailbox.  This returned a '0' to the calling routine (which uses the size), so
  119. I added code to delete it, close and update the mailbox when this happens.
  120.  
  121.     - Revised NEWS packet naming method to pass a complete filename to the
  122. routine which saves the message body.  In this manner, nothing in memory should
  123. corrupt the contents.  Added a "wait_closed()" upon error just in case.
  124.  
  125.     - Shortened up some oversized global variables in NETWORK to keep stack
  126. requirements below the default 4K.
  127.  
  128.     - Changed the display on total mailbox size to conform to the same display
  129. as sent SMTP messages, i.e. "(nnK)" vice "(nnnnn bytes)".
  130.  
  131.     - Removed a spurious "Maximum posts -" output string when retrieving binary
  132. groups.  (The max articles check in //BOARDEDIT is bypassed on binaries!)
  133.  
  134.     - Standardized/prettied up some displays when sending/receiving POP/SMTP
  135. messages.
  136.  
  137. Beta-50
  138.  
  139.     - Added a USERMAIL=Y/N option to NET.INI (see SAMPLE.INI).  This option
  140. bypasses the creation of an extended address form, i.e. the (USERNAME) which
  141. follows the user@domain in the originator field.
  142.  
  143.     - Changed the way RCPT TO passes recipient addresses during SMTP to conform
  144. to RFC, as I now understand it.  The MTA portion now relays outbound messages
  145. with any extended information outside of the wrapper, e.g.
  146. "RCPT TO:<user@whatever.domain> (extended_user_info)".
  147.  
  148.     - Incorporated Goose's fixes to stop NEWS crashing by waiting until the
  149. socket is closed before exiting.  Without this wait, there was still junk
  150. coming in the socket, even after the program exited!
  151.  
  152.     - Another Goose fix to address PPPSTATE error #255, by waiting two seconds
  153. to allow the PPP TSR to load and exit before running PPPSTATE, eliminating the
  154. possibility that PPPSTATE erroneously found no memory available.
  155.  
  156.     - In UU, added a routine to ensure the directory path for uploads to
  157. Sysop directory were explicit, e.g. "C:\WWIV\DLOADS\SYSOP" vice "DLOADS\SYSOP"
  158. (which is allowable on the BBS, but dangerous in external file operations!)
  159.  
  160.     - Eliminated an attempt to "QUIT" the POP session when encountering an
  161. error at initial connection.  (This meant the path was bad or the host was
  162. unavailable, therefore the "QUIT" command is unanswered, anyway!)
  163.  
  164.     - Added a QUIT directive during POP sessions where there is a clear fail
  165. returned to the client, e.g. bad mailbox or password, etc.  This is a nicety
  166. for our ISPs, so we always "clean up" after our POP session.
  167.  
  168.     - Now creates a backup of NEWS.RC at runtime as NEWS.BAK (in the FILEnet
  169. directory).  This was requested as a means of ensuring last read message
  170. pointers don't get trashed/lost as easily.
  171.  
  172.     - Modified the logic in an aborted NEWS sessions so the host would clear
  173. remaining buffers before returning to the calling routine, i.e. to empty the
  174. contents of any inbound stream so no junk got carried back!
  175.  
  176.     - Removed spurious "as UNK*.UUE" display when Internet mail is received
  177. and moved from the INBOUND to SPOOL directories.
  178.  
  179.     - Another Goose fix to prevent terminating an already null string in the
  180. treat() routine inside NEWS (causing the "attempt to access memory area already
  181. in use" error under some operating systems).
  182.  
  183. Beta-49
  184.  
  185.     - Oops... had a 50/50 shot and picked wrong!  Have now standardized memory
  186. allocation using malloc() calls vice farmalloc() calls, as was the case in B-39
  187. (which appears to have worked properly in retrieving mail!)
  188.  
  189.     - Again, changed the way the net_data variable is handled throughout NEWS.
  190. Last attempt caused more problems than it solved!  :(
  191.  
  192. Beta-48
  193.  
  194.     - Standardized memory allocation for the sockets in all modules.  This
  195. should address the problem of not picking up mail unless there's outbound
  196. mail to send.
  197.  
  198.     - Nailed down the variable overrun in NEWS causing abnormal exit after a
  199. line of garbage, i.e. "Can't create temporary packet <garbage>\INPUT1.MSG".
  200. The contents of a global variable ("net_data" which points to the network
  201. data directory) were getting trashed!
  202.  
  203.     - Redid NET.LOG update routine.  No longer reads entire existing file,
  204. line-by-line, but rather allocates the file as a memory block and writes the
  205. block after the additional entry is added to the top.  Measurably faster.
  206.  
  207.     - Added additional error checking to copy/move operations to prevent lost
  208. files.  Now ensures the directoryrec is unmodified before reading/uploading
  209. received files.  If modified directoryrec, e.g. filepoints, the files are kept
  210. in CHECKNET, as before.
  211.  
  212.     - Removed the unnecessary "Path:" field in email.  (This is used solely
  213. for Usenet posts in determining whether an article originated on the local
  214. system and should, thus, be skipped during retrieval.)
  215.  
  216.     - Added an "X-Reply-To:" field for hosted mailing lists to assist in
  217. allowing responses to the list from mailers which don't support the extended
  218. parentheses addressing.  The field is formatted using the originator, domain
  219. and mail list subtype, e.g. "MAILTYPE <user@whatever.domain>".
  220.  
  221. Beta-47
  222.  
  223.     - Fixed lost cursor after exiting news.
  224.  
  225.     - Recast strings in NEWS to 1024 bytes vice 512 and cast the temporary
  226. packet name as static, hopefully to prevent the overrun on some subjects
  227. (which bled into the temporary packet name!)
  228.  
  229.     - Added support for a secondary DNS.  Add "SDNS=<IP address>" under the
  230. current DNS (primary) tag in NET.INI.
  231.  
  232.     - Went back to standard malloc() calls for allocating memory for the
  233. sockets.  I had mismatched these in POP in B-46.
  234.  
  235.     - Added an explicit call to close the input file before proceeding in UU.
  236. This should eliminate any sharing violations, such as across a LAN.
  237.  
  238. Beta-46
  239.  
  240.    - Tweaked much more and built in lots of error checking into POP and NEWS,
  241. particularly.  Think we've got all potential lockups fixed.
  242.  
  243.    - Changed returned values in NEWS to standard, i.e. 0 or less for error
  244. and a positive integer for success.  This allowed me to standardize the
  245. sock_err routine for more accurate responses to socket problems.
  246.  
  247.    - Added internal FDL processing to UU.EXE.  For FDL feeds received via
  248. Internet mail, UU now puts them directly into the BBS (rather than using
  249. DE555.EXE) to keep the description and FDL type together with the file.
  250.  
  251.     - Added a "SLAVE" directive to NEWS before any transactions.  On some
  252. NNTP servers, the SLAVE command is used to give priority treatment to a
  253. connection, on the premise it's a "slave server" rather than a user.
  254.  
  255. Beta-45
  256.  
  257.     - B-44 was a lemon!  I distributed the wrong executables with the archive,
  258. and immediately after I found problems in error handling!  These caused nearly
  259. certain death crashes!
  260.  
  261.     - Fine-tuned error handling again.  (Found a condition which returned a
  262. (null) SMTP reply, which gave me something to work with!  This version really
  263. does respond to errors!
  264.  
  265. Beta-44
  266.  
  267.     - Returned to standard stack size (4K) in all modules.  These tweaks
  268. appear to have addressed only tertiary problems.  Reduced runtime memory
  269. requirements by about 20K.
  270.  
  271.     - Went back to basics on POP, starting with the core code of B-32 and
  272. progressing through the more recent changes.  Tweaked fallthroughs on socket
  273. errors.  Found an area where an attempt to close an open file would causing
  274. sharing violations.
  275.  
  276.     - Fixed a problem which incorrectly identified a quoted response to mail
  277. as BAD*.UUE (because it found the original "From:" line from the originating
  278. system).  It will now only perform a "bad" match that if the "From:" line is
  279. part of the new header.
  280.  
  281.     - Fixed a situation which has existed since the project began!  ALLMAIL
  282. wasn't honoring "ALLMAIL=N" if it detected the message as any type of UUE.
  283. This caused graphics files, archives and other UUEs to be retrieved, despite
  284. the ALLMAIL setting.  Thanks to Robert Kish for pointing this out (and anyone
  285. who may have in the past, although I didn't catch it!)
  286.  
  287.     - Corrected a problem which generated hard locks on NEWS retrieval (again
  288. in the sock_err handling! :(
  289.  
  290.     - Returned to linear display of sent/received messages, so now all
  291. transfers appear on a single line (for viewing at runtime).
  292.  
  293.     - Removed *lots* of unnecessary static data from NEWS (which is what
  294. allowed the return to default stack size!)  Now carrying the same mail socket
  295. allocation globally through routines, as opposed to one static allocation.
  296.  
  297.     - Killed the cstat() routine.  This returned the article-ID for any given
  298. article, but we weren't using that anywhere.  (I also suspect this is what
  299. caused the NEWS retrieval to randomly skip to the last message in the group!)
  300.  
  301. Beta-43
  302.  
  303.     - Squashed a nasty bug in POP which would cause SMTP to hang.  While I
  304. was in there, I tweaked the "sock_err:" label (the fallthrough for Waterloo
  305. problems), and it now appears to be more responsive now to errors.
  306.  
  307.     - Squashed a bug in the export() routine which caused a hard lock when
  308. certain types of messages were exported.  While I was in there, I tweaked
  309. handling of pipe codes and soft returns.
  310.  
  311. Beta-42
  312.  
  313.     - Changed the Path: field for newsgroups to use the FWDNAME and FWDDOM
  314. parameters if specified in NET.INI.
  315.  
  316.     - Removed closes to non-open files in the UU routines.
  317.  
  318.     - Added support for the "X-Sender:" parameter when EXP parses mailing
  319. list headers.
  320.  
  321.     - Re-fixed the problem where outgoing messages would be considered
  322. duplicates because the Message-ID field was the same as another message.
  323.  
  324.     - Made a change to the header detection logic to fix a problem where
  325. message text would sometimes be marked as hidden lines.
  326.  
  327.     - Removed the EXP limit of 14 mails processed at a time.  The problem of
  328. "too much mail" or "duplicate posts" was fixed in the previous beta.
  329.  
  330.     - Removed the code that tried to unload PPP.EXE if it returned an error
  331. code of "not loaded".
  332.  
  333.     - Fixed a longstanding problem with NEWS routine chead() which caused a
  334. premature "End of new messages" while scanning newsgroups.
  335.  
  336. Beta-41
  337.  
  338.     - Fixed problem in UU which caused received archive files (ARC-*.UUE) to
  339. remain in INBOUND.  (EXP decoded them repeatedly as SOME.MSG, SOME.001, etc.)
  340.  
  341.     - Rewrote max posts on sub lookup routine to solve problem with incorrect
  342. article number returned during news retrieval (which often caused only last
  343. message to be retrieved).
  344.  
  345.     - Allocated memory for POP and SMTP sockets on far heap (to match the
  346. method used in NEWS, which has been working successfully!)  Hopefully, this
  347. fixed the problem which caused POP to find no mail on host (when, in fact,
  348. there was mail waiting).
  349.  
  350.     - Added a second call to resolve SMTP host via DNS (mainly to compensate
  351. for slow nameservers).  This should reduce the occurrence of the "SMTP Socket
  352. failure" errors during outbound mail delivery.
  353.  
  354.     - Updated contact information in header to my new ix.netcom.com address.
  355. (This actually happened in B-39 or B-40, but wasn't noted in CHANGES.DOC!)
  356.  
  357. Beta-40
  358.  
  359.     - Returned to some known good values for stack (B-32 and B-34).
  360.  
  361.     - Cleaned up excess variables in various modules.
  362.  
  363.     - Fixed [Spacebar] group skip during news retrieval so it responds when
  364. someplace else than message retrieval.
  365.  
  366.     - Fixed a couple bad read-write opens for CONFIG.DAT -- shouldn't have
  367. been doing that.
  368.  
  369. Beta-39
  370.  
  371.     - Added a "Path" field to outbound articles.  This will now be used to
  372. track whether articles originated locally (and are skipped during retrieval),
  373. instead of the "Organization" field in previous versions.  This was required
  374. because some news servers assign their own Organization field.
  375.  
  376.     - Strips pipecodes and heart colors from newsgroup articles during
  377. export process (including titles, which got lost a few betas ago!)
  378.  
  379.     - Compiled with stack checking, hopefully to narrow down the problems
  380. associated with low stack.  If you receive any warnings, please advise me.
  381.  
  382.     - Fixed a problem which caused "441 Duplicate Article" responses for
  383. newsgroup posts (resulting from exported articles during the same second).
  384.  
  385. Beta-38
  386.  
  387.     - Played with the _stklen a bit more to tweak varying requirements among
  388. several systems reporting problems with B-36/37.
  389.  
  390. Beta-37
  391.  
  392.     - Distributed wrong NETWORK.EXE with Beta-36!
  393.  
  394. Beta-36
  395.  
  396.     - Changed stack length declarations in the main and support modules to see
  397. if that fixes symptoms of no stack, i.e. lockups after NEWS runs, etc.
  398.  
  399.     - Repositioned the file pointer close routines in UU so all files were
  400. closed prior to copying/moving/deleting (to fix reported sharing violations).
  401.  
  402. Beta-35
  403.  
  404.     - Supports outbound mailing lists (i.e. hosted lists).  Create a file
  405. M<subtype>.NET for the list of recipients (subscribers) to your list.
  406.  
  407.     - Handles CONTACT.NET update without allocating memory on the heap, which
  408. caused insufficient memory errors in Beta-33/34 on several systems.
  409.  
  410.     - Now is case-insensitve while matching the mailing list owner fields
  411. (in NET.INI) for mailing lists you belong to.
  412.  
  413.     - Uses the actual date from articles and mail, if one is found.
  414.  
  415.     - Replaces soft returns (from QWK packets) with normal returns.
  416.  
  417. Beta-34
  418.  
  419.     - Hopefully, a fix for memory allocation routines on CONTACT.NET update
  420. by allocating/deallocating memory each time CONTACT.PPP (the pointer files to
  421. your Internet connections) is created.
  422.  
  423.     - Changed the method for outbound packet naming, eliminating the one
  424. second delay between encoding each packet.  That should run appreciably
  425. faster now.
  426.  
  427.     - Stuck in support for the "Sender:" parameter when EXP parses mailing
  428. list headers (requested by Eileen Stone).  This is Goose's realm, but it
  429. seemed like an easy change! :)
  430.  
  431. Beta-33
  432.  
  433.     - Removed the @###.FILEnet from the default tagline, as some sysops are
  434. using the PPP Project Software without actually being a member of FILEnet.
  435.  
  436.     - Fixed a problem where messages that had a line starting with the word
  437. "begin" would be incorrectly identified as network packets.
  438.  
  439.     - Changed the connect time code so that all Internet based systems will
  440. have their last time of connect reset after a successful SMTP/POP session.
  441. The time of connect of any direct dial systems is not affected.
  442.  
  443.     - Fixed the code so that it will properly use the ADDRESS.# files
  444. rather than ADDRESS.NET.  Also fixed the problem with the - sign in ADDRESS.0
  445. to indicate a direct dial connection not working.
  446.  
  447.     - Put the return path back into the logic for the name matching routines
  448. for the maillist to sub logic.  Some listservers use one and some use the
  449. other.
  450.  
  451.     - Changed the success and failure levels for the PPP modules so that
  452. Ctrl-C will return a fail result, rather than a pass.  This keeps outgoing
  453. packets from being improperly deleted.
  454.  
  455.     - <Space> now aborts transfer of the current message during an SMTP
  456. session.  This allows you to bypass a message on the current run, while
  457. saving it for transfer later.
  458.  
  459.     - Changed some of the text display, during transfers and (lesser seen)
  460. error result messages.
  461.  
  462. Beta-32
  463.  
  464.     - Email messages containing the encoded WINMAIL.DAT or WINMAIL.MSG files
  465. will not be erroneously identified as UUE files.  The WINMAIL encoded lines
  466. are also marked with the ^D0R header to prevent display on the BBS.
  467.  
  468.     - Changed the name matching routines for mailling lists (again) to fix a
  469. problem introduced in beta 30 which made the name match routines always fail.
  470.  
  471.     - Made some changes to the logic for creating the WATTCP.CFG file to
  472. try to prevent the "Can't create WATTCP.CFG" problem.
  473.  
  474.     - Removed POP.DBG.  Now uses "MOREINFO" flag in NET.INI to provide debug
  475. (extended dialog) information with POP/SMTP hosts.
  476.  
  477. Beta-31
  478.  
  479.     - Recompiled under BC4 to address the "Can't create WATTCP.CFG" problem.
  480.  
  481. Beta-30
  482.  
  483.     - Fixed a problem where the memory for mailling lists was improperly
  484. allocated or freed.
  485.  
  486.     - The code now ignores the Return-Path line in messages.  This would
  487. sometimes cause the return address to get assigned incorrectly.
  488.  
  489.     - Fixed a problem where the message Name is *after* host would be
  490. displayed when the < > surrounded the id but no user name was included.
  491.  
  492.     - Fixed a problem where Beta-29 which left the INSTANCE.DAT file open.
  493.  
  494.     - The "N*.NET is missing" warning message was removed, since it won't
  495. exist if @32767 is set up as the host rather than a subscriber.
  496.  
  497.     - Fixed a problem in the display of the sub type when message were
  498. received to a maillist sub.
  499.  
  500. Beta-29
  501.  
  502.     - Changed the multitasker detection logic so that Windows 95 and OS/2
  503. will be reported correctly, even if NETBIOS support is also enabled.
  504.  
  505.     - Fixed a problem where the newsgroup pointer could be incorrectly set if
  506. <Esc> or <Space> was pressed to abort newsgroup retrieval.
  507.  
  508.     - Newsgroups are no longer deleted from NEWS.RC when an unrecoverable
  509. error occurs.  Instead, an SSM is sent to the sysop account, so that the
  510. appropriate action can be done.
  511.  
  512.     - Fixed a problem in NEWS where the crossposted or returned messages
  513. were not being deleted for the first group listed in NEWS.RC.
  514.  
  515.     - Fixed a problem that would be created by messages with long subject
  516. lines or recipient name.
  517.  
  518.     - EXP now reports if the *subtype (asterisk before subtype) is missing in
  519. the mailling list section of NET.INI.
  520.  
  521.     - Fixed a problem which resulted in mailling list messages not ending
  522. up on the subboard if the "reply-to" address format included any additional
  523. information han the Internet mailing address.
  524.  
  525.     - Fixed a problem where Internet mail would not get sent out on the
  526. current connect if no network packets were pending.
  527.  
  528. Beta-28
  529.  
  530.     - Added the first cut at support for putting Internet Mailing Lists to a
  531. subboard.  To do this, you need to add a section to the NET.INI file as
  532. shown.  The email name should be the name that the emails are posted from,
  533. the subtype can be alpha or numeric (don't forget to make the N*.NET file).
  534.  
  535. ;
  536. ; Mailing List Section - used to define internet mailing lists that are to
  537. ; be retrieved into a message base rather than EMAIL.
  538. ;
  539. [MAILLIST]
  540. ; email_name   subtype    (NOTE: Asterisk (*) is required!)
  541. my_listserv@domain.com *1000
  542.  
  543.     - Changed the open mode for the WATTCP.CFG configuration file, to fix the
  544. problem some systems see with the software trying to read this file before it
  545. has been rewritten by the TCPWAT program.
  546.  
  547.     - Makes sure any received packets are renamed before the NETWORK routines
  548. are called, so all received packets are processed after the current call.
  549.  
  550.     - Changed the return address for messages which are received with the
  551. format "User Name <id@site>" to the more standard "id@site (User Name)"
  552. format.  This keeps replies from hosing the SMTP server and getting the
  553. SMTP socket connect failed error message (at least for this case).
  554.  
  555.     - Fixed a problem where posts that were sent out on a newsgroup would be
  556. reposted when the message was received back from the newsserver.
  557.  
  558.     - Allows Internet-based subs to be set up with @32767 as the host rather
  559. than a subscriber.  This allows Network Validation for outgoing posts, but
  560. prevents the subs from being networked to other BBS's.
  561.  
  562.     - Added support for XPOSTS=0, which turns off cross-post detection
  563. for newsgroups.
  564.  
  565.     - Changed the originator on network packets to be the real account name
  566. rather than the forwarding service name, to allow for the correct
  567. identification of bounced packets.
  568.  
  569.     - Changed the NEWS log file logic that seemed to sometimes cause crashes
  570. while retrieving newsgroups.
  571.  
  572. Beta-27
  573.  
  574.     - Increased _stklen variable in the hope it addresses problems from some
  575. systems running out of stack space during runtime.
  576.  
  577.     - Supports Waterloo TCP/IP "INACTIVE" vice "SOCK_INACTIVE" in WATTCP.CFG,
  578. which should properly respond to lost carrier, poor IP connections, etc.
  579.  
  580.     - The CLEANUP option in NET.INI now will execute FLINK and LINKER only,
  581. instead of spawning NETWORK1/2 for normal BBS cleanup.  Some systems were
  582. running out of memory during this process, and it was redundant of the BBS.
  583.  
  584.     - Makes two passes in MQUEUE on each run to assist those whose provider
  585. didn't settle handshaking immediately after connect.
  586.  
  587.     - Reads in alpha subtypes from NEWS.RC in upper case now to prevent
  588. problems in finding subtypes on the BBS.
  589.  
  590.     - Honors the <TAB> character in received newsgroup articles.  This was
  591. causing some text to be skewed (originating from mail readers which didn't
  592. substitute space).  Also properly terminates the received strings, so the
  593. spurious characters at the end-of-line on newsgroups should be fixed.
  594.  
  595. Beta-26
  596.  
  597.     - Fixed bug which caused binary groups to get sent into the bit bucket
  598. during retrieval.  Self-inflicted wound in Beta-25 with addition of alpha
  599. subtypes.
  600.  
  601.     - Changed CONTACT.NET update to a new method.  CONTACT.NET is now
  602. updated for each system for whom the program prepares a packet.  In this
  603. manner, it now reflects what gets sent to each system uniquely.
  604.  
  605.     - Tweaked the routines which read/write WATTCP.CFG.  This should get rid
  606. of any problems associated with that, including creating 0 byte files and
  607. inability to create WATTCP.CFG at runtime.
  608.  
  609.     - Forced a newline at the beginning of each newsgroup article.  This
  610. ensures that the text of a message doesn't begin on the same line as the
  611. RE:.
  612.  
  613. Beta-25
  614.  
  615.     - I didn't get all the changes/enhancements into this beta which I'd
  616. hoped.  There are a great deal of functional changes below, and the todo
  617. list is a bit smaller, but there's still work before the release of
  618. version 2.  Please report any problems you find.
  619.  
  620.     - First stab at "AUTHINFO" directive used by NNTP to validate username
  621. and password.  I could find no governing RFC, so a lot of this is in the
  622. blind until I can set up an NNTP host which supports it.  If your news host
  623. requires a Userid and Password for login (such as GTE), add the following to
  624. the [NEWS] section of NET.INI:
  625.  
  626.         NEWSNAME = <username>
  627.         NEWSPASS = <password>
  628.  
  629. The initial feedback is that this function is working properly, but it may need
  630. fine-tuning.
  631.  
  632.     - The trailing '.' on each Internet email message is now bypassed in email
  633. retrieval, so it won't be displayed to users viewing it on the BBS.
  634.  
  635.     - Nailed down the stacked "RE: RE: RE:" found in newsgroup responses.
  636.  
  637.     - Added "Continued in next message..." as the final line in newsgroup posts
  638. which exceed 32K (and become split into multiple parts) and "Continued from
  639. previous message..." on trailing parts.
  640.  
  641.     - Fixed the news and mail time/byte entries in NET.LOG, so each is
  642. maintained uniquely now.  If you use ONECALL in NET.INI, you will get two
  643. entries (one for @32767 and the other for the system you called), each with
  644. its own bytes and time.
  645.  
  646.     - Added definable maximum cross-posts before newsgroup article is skipped.
  647. New entry to NET.INI in [NEWS] section reads:
  648.  
  649.         XPOSTS = nn
  650.  
  651. where 'nn' is a number between 1 and 99.  (Setting this to '1' will reject any
  652. message crossposted to another newsgroup.)
  653.  
  654.     - Added support for the PPPURGE utility which cleans up the SENT directory
  655. externally.  By adding "PURGE=N" to the [GENERAL] section in NET.INI, you can
  656. bypass packet cleanup during normal network routines.  You must then add
  657. "PPPURGE <days>" to your external event batch file to kill SENT files.
  658.  
  659.     - Tweaked internal stack size which seems to stabilize problems resulting
  660. from line noise (modem), lost connections during transfers, etc.  Need more
  661. feedback on reliability of these changes, so we don't introduce new bugs!
  662.  
  663.     - Overrides net validation for newsgroup posts received from the Internet,
  664. but leaves normal validation intact for other methods.  This is useful for
  665. anyone who gates newsgroups with netval, as it lets the Internet stuff flow
  666. through unimpeded but still validates BBS-originating posts.
  667.  
  668.     - Added internal support for the FWDNAME and FWDDOM parameters from
  669. NET.INI.  If defined in the [GENERAL] section, these will be used for the
  670. headers of email and newsgroup posts.  This is helpful for anyone using a
  671. forwarding service, such as bigfoot.com, as their BBS mail host.
  672.  
  673.     - Fixed a problem in the UUDECODE routines where the output file was
  674. not being deleted if an error was detected during processing.  This would
  675. cause the partial file to be processed by the remaining NETWORK routines,
  676. which could result in crashes.
  677.  
  678.     - Added support for individual ADDRESS.* files.  ADDRESS.1 and up are
  679. maintained by the GC's.  ADDRESS.0 is a local file, which can be used to
  680. limit callouts to particular systems.  To force a normal (modem) callout to a
  681. system, create ADDRESS.0 in the following format:
  682.  
  683.         @node -      (the minus sign indicates use direct call)
  684.  
  685.     - Added another check for returned packets.  If the packet "from:"
  686. name matches the name and domain defined in the INI file, the packet is
  687. assumed to be a returned packet as well.  Apparently not all ISP's use the
  688. standard "mailer-daemon" approach for identifying returned packets.
  689.  
  690.     - Changed the sleep() call in NETWORK.EXE to a delay() call used when
  691. the socket is being established.  Some systems appear to hang using the
  692. sleep() call.
  693.  
  694.     - Added the KLOSV146.ZIP file to the archive.  These are the latest PPP
  695. drivers from KLOS, patched to remove the Windows detection code.
  696.  
  697.     - Added support for alpha subtypes in NEWS.C (defined in NEWS.RC).
  698.  
  699.     - Fixed routines to clean up after a file is received via Internet mail.
  700. Copies are no longer saved in CHECKNET and SPOOL.
  701.  
  702.     - Added PURGE option to [GENERAL] area, intended to be used with new
  703. PURGE.EXE utility.  PURGE.EXE will clean out your SENT directory as part of
  704. the external event (and not when the program runs).  Set PURGE=N in NET.INI,
  705. then add PURGE.EXE to your external batch file.
  706.  
  707.     - Added support for '_' in CALLOUT.NET to indicate non-Internet system.
  708.  
  709.     - Added support for user-definable anti-spam originating address.  If
  710. 'SPAMCONTROL=Y' is defined in NET.INI, you can also add:
  711.  
  712.         SPAMADDRESS=whoever@whatever.address
  713.  
  714. If SPAMADDRESS is not explicitly defined, the anti-spam address now reads:
  715.  
  716.         realname@dont.spam.me.real.address (Username)
  717.  
  718.     - Cosmetic modification to NET.LOG entry when nothing is sent.  Adds a
  719. comma (,) to conform to the normal network software method.
  720.  
  721.     - Now auto-trims NEWS.LOG, keeping a maximum of 800 lines (about three
  722. days worth) of NEWS entries.  Trim is accomplished at the last full session
  723. entry (a complete news session) at or above the 800 line mark.
  724.  
  725.     - Supports random signature files for newsgroups and email.  Naming format
  726. for the signature files is:
  727.  
  728.         I<subtype>.Txx
  729.  
  730. where 'xx' is a number between 0 and 99.  For example, to create random
  731. tags for subtype "12345", create files "I12345.T01", "I12345.T02", etc.  If
  732. no random tags are found, "I12345.TAG" will be used, as before.
  733.  
  734.     - Now properly removes BBS tagline indicators (the ^Dx prefix for each
  735. line in a BBS or personal tagline).  Note that these will be preserved, in
  736. addition to the I*.T* signature files.
  737.  
  738. Beta-24
  739.  
  740.     - Added hook to EXP to call after network packets/mail are received, so
  741. any Internet mail is processed immediately after receipt.
  742.  
  743.     - Count transfers (sending/receiving packets) in 512 byte increments vice
  744. 1K now... cosmetic.
  745.  
  746.     - Encoding and transfer of packets is now kept on a single line vice
  747. scrolling down the screen... again, cosmetic.
  748.  
  749.     - Tweaked import() routine in EXP to narrow down scrambled headers
  750. reported by some systems.
  751.  
  752.     - Added total files/bytes detail to display after successful packet
  753. transfers.
  754.  
  755.     - Added SSMs to be sent to the #1 account upon receipt of archive
  756. files or bad packets moved into CHECKNET.
  757.  
  758.     - Added file-sharing, timeslicing routines to EXP.
  759.  
  760.     - Added board-specific tagline file support.  File should be in the
  761. BBS DATA\ directory and be named I<subtype>.TAG, for example on subtype
  762. 10001 file would be I10001.TAG.
  763.  
  764.     - Fixed logic when an invalid newsgroup is requested and server returns
  765. 501 response.  It now skips the group and removes the invalid group name from
  766. NEWS.RC automatically.
  767.  
  768.     - INSTALL.C/EXE is in here now.  It needs some work before broader
  769. release, though.
  770.  
  771. Beta-23
  772.  
  773.     - Messed up parsing logic in EXP when comparing against name fields with
  774. an underscore replacing the space.  Fixed, I hope.
  775.  
  776.     - Various tweaks to socket code.  I hope these address the problems some
  777. folks have been having with the modem falling asleep.
  778.  
  779.     - Included POP.DBG in this archive to show dialog between you and your
  780. servers and help in the debugging process.  Copy POP.DBG to POP.EXE before
  781. installing.
  782.  
  783. Beta-22
  784.  
  785.     - Implements controls for Waterloo TCP socket inactivity across modules,
  786. SOCK_DELAY and SOCK_INACTIVE.  By default, these are set to 30 and 60 seconds,
  787. respectively.  They may be defined in NET.INI, as follows:
  788.  
  789. ; Time from sending an IP packet to response from DNS.
  790. SOCK_DELAY = 30
  791. ; Max time without socket activity.
  792. SOCK_INACTIVE = 60
  793.  
  794.     - The sockets are now malloc() on the far heap again (as Goose properly
  795. had them before).  I thought this may have been the culprit in the lost
  796. activity timer.  When I fixed the item above, it actually crashes the client
  797. when trying to free them from the near heap!
  798.  
  799.     - Removes WWIV heart color codes from titles and originator names.
  800.  
  801.     - Implemented ONECALL=Y/N in NET.INI to retrieve messages and newsgroups
  802. on a single call.
  803.  
  804.     - Added timeslicing routines in POP and NEWS.  Would appreciate feedback
  805. from anyone using "activity meters" to see if this helped anything, although
  806. I suspect I have to use a different buffered I/O routine aside from fprintf()
  807. to accomplish anything.
  808.  
  809. Beta-21
  810.  
  811.     - Urgent fix for dial-out problems to modem users.  Beta-20 was showing
  812. "must specify phone number" because of the way I was constructing the
  813. commandline.
  814.  
  815.     - Various other tweaks/enhancements which will be detailed better in the
  816. next beta.  (It's late!)
  817.  
  818. Beta-20
  819.  
  820.     - Urgent fix for a problem in news retrieval where it wasn't finding the
  821. NEWS.RC, I hope!
  822.  
  823.     - NET.INI addition:
  824.  
  825. ; Will retrieve mail and newsgroups on single call
  826. ONECALL = Y
  827.  
  828. Beta-19
  829.  
  830. Additions to NET.INI (for now, grab Quixotic Quest's FAQ for a full NET.INI
  831. and meanings).  Under [NEWS] tag, add:
  832.  
  833. ; If defined, puts a bogus originating address on newsgroup posts.
  834. SPAMCONTROL = Y
  835. ; If defined, uses file as a signature file to all newsgroup posts.
  836. SIGNATURE = D:\WWIV\GFILES\INTERNET.TAG
  837.  
  838. Various code changes:
  839.  
  840.     - POP now receives messages to an INBOUND directory under the network data
  841. directory instead of syscfgovr.tempdir.  This will help in case of lost
  842. connections... received packets will remain in the INBOUND area until cleaned
  843. out by other routines (UU, etc.)
  844.  
  845.     - Waterloo wasn't returning from the macro for sock_err:.  Tweaked quite a
  846. bit, including allocating the tcp sockets on the near heap (again!).  I wish
  847. we could return(x) from sock_err: but return values vary among different
  848. functions... consistency is something for a future release.  If this doesn't
  849. clear things up, we can exit(x) from the macro and allow the OS to do its own
  850. cleanup for file handles, memory and such.
  851.  
  852.     - parse_ini() in network.c wasn't toupper() on s[0] properly, so lower
  853. case 'y' and 'n' parameters weren't being honored.
  854.  
  855.     - Places ^D0R before header lines on received email.  These lines are
  856. suppressed on display to user on the BBS, but may be extracted to provide
  857. routing info.  Required changes both to POP and EXP, in order to detect/skip
  858. ^D0R when comparing strings.
  859.  
  860.     - Uses underscore between multiple parts of user name on exported mail
  861. (e.g. The_Great_White_Whale).  For backward compatibility, it matches both
  862. space and underscore when comparing against user list.
  863.  
  864.     - Detects bounced mail by comparing originating address (from: line)
  865. against known mail-bouncers, including "Mailer-Daemon", "Administrator", etc.
  866. Bounced packets are named as BAD*.UUE and will remain in INBOUND for review,
  867. as they're skipped during UU decode routines.  To recycle a packet, rename it
  868. from BAD*.UUE to PKT*.UUE.
  869.  
  870.     - Displays 20 characters of packet originator while receiving (purely
  871. cosmetic).  Tracked that for the above item, so figured we'd display it.
  872.  
  873.     - "SPAMCONTROL=Y" in NET.INI [NEWS] tag uses a bogus originating address
  874. ("nowhere@no.net") to prevent email scoopers from finding a good address.
  875. Also when defined, the "Reply-To:" field is omitted but a correct return
  876. address is prepended as text to the body of message.
  877.  
  878.     - Supports a "signature" file defined in NET.INI [NEWS] tag, as described
  879. above.  Format is: "SIGNATURE = [path/filename]".  Contents are read into
  880. outbound mail during export, so length is unlimited.  If it finds ANSI, it'll
  881. choke!  If a SIGNAURE is not defined or the file doesn't exist, it uses the
  882. previous "Origin: * blah" tagline.
  883.  
  884.     - If mh.toUserName is "ALL" (ie. a first post on topic), skips the
  885. "Responding to: ALL" in body of message... seemed redundant.
  886.  
  887.     - NEWS now skips the following messages during retrieval:
  888.  
  889.       - messages cross-posted to more than 10 newsgroups on the assumption
  890.         that they're spammed across multiple groups.  The figure 10 is an
  891.         arbitrary but hard-coded for now into NEWS.
  892.  
  893.       - any message cross-posted to another group defined earlier in NEWS.RC,
  894.         e.g. if you define comp.games and comp.games.adventure in NEWS.RC, it
  895.         will skip messages on comp.games.adventure which were cross-posted to
  896.         comp.games.
  897.  
  898.       - any message which originated from your system as indicated by the
  899.         "Organization:" field appended during export.
  900.  
  901.     - NEWS now allows you to hit <space> to skip to the next group defined in
  902. NEWS.RC.  It doesn't "catch-up" lastread pointers for the skipped group, but
  903. simply writes the current message pointer to NEWS.RC for your next run.  If
  904. there's reason for a "catch-up" key, let's discuss it.
  905.  
  906. There are probably others, but you'll find them as you go.
  907.  
  908. Frank
  909.  
  910.