DICS Version History File ========================= Version 4.5 Alpha 14/11/94 M A E Gibbons - mgibbons@oemcomp.demon.co.uk * Correction of small bug in SMTP Mail Client where occasionaly DICS failed to connect when sending the 2nd message in the mail queue. * The Pre-Release 2 version of 4.4 will be regarded as the Final release of 4.4. Too much has changed to that "Solid" version to release the revised build under the 4.4 banner! Hence 4.5 is here and will go through a series of Pre-Releases as 4.4 did - in fact the pre-release concept is here to stay with the following RULES and REGULATIONS: 1) Pre-Releases can only be downloaded from the OEM BBS - The BBS number and download instructions are available in DICS.TXT which comes with every DICS release. 2) Any Problems, Bugs etc MUST be reported BY MAIL ONLY and not through the Newsgroup. 3) Anybody may download the Pre-Release, but if you do you are EXPECTED to submit a report by mail within 48 hours of first using it. This report may be as short or as long as you like - "it works" would be sufficient but slightly more informative reports would be helpful. :) 4) You will be regarded as a "tester" of the software - your name may be passed to other people who may be experiencing a similar problem or for any other reason. If you do not want to be *knowingly* associated with the DICS product then do not use it under the pre-release program. * CMDIALOG.VBX and THREED.VBX are now shipped in the DICS package to support new features - these should be copied to your \windows\system directory unless you already have these present. * DICS now returns failed mail to the sender - you also have options with what to do with the failed mail in the mail queue. You can Delete it, rename the .WRK file so re-transmission is'nt attempted or just leave it. Since your mail is returned, the Delete option is recommended - the other options are for the cautious! * DICS will now send "local" mail without going through the gateway - make sure you have an entry for your machine in your HOSTS file. * A finger client has been added - the default finger is yournode at the gateway - once the finger client form is visible, you can however change the finger command to point to any user/host combination. * A liberal sprinkling of icons have been distributed around the DICS interface to keep you "artistic" types happy! * DICS will now return MAPI mail to sender on the MAPI network if the program cannot parse the "Subject:" line for the Internet recipient. It informs the sender of the problem and gives the correct format of the subject line. * Added a setting to the Time Client which specifies the difference that your PC clock must be out before your PC Clock is set to Internet Time. Before this value was fixed at 10 Seconds * A liberal sprinkling of icons have been distributed around the DICS interface to keep you "artistic" types happy! * DICS now has a wonderful help file! This was generously constructed by Nick Stevens (nstevens@starbase.demon.co.uk) and I thank him enormously for his hard work. If you spot any errors or have any suggestions re the help file please feel free to mail him directly. * Mail forwarded through the MAPI gateway now has the explicit email reply address appended to the subject line. In previous versions the mail path was also left in which confused things when the mail was replied to. * A lot of SMTP procedures have been broken down into subcomponents for better logical flow and for code reuse reasons. File copying, appending, writing have been streamlined down to a few shareabele routines between the SMTP client, SMTP server and MAPI modules. * NNTP code is 99% the same as 4.4, however I have forgotten what the 1% change was! Version 4.4 Alpha 21/10/94 M A E Gibbons - mgibbons@oemcomp.demon.co.uk * DICS now has a "Dual Session - Turbo News" option - this is a test system and may be disabled in future versions. However, by opening up two sessions with the news server it is possible to interleave the tasks of getting NEWNEWS article headers and the actual ARTICLES themselves. THIS OPTION HAS TO BE SPECIFICALLY SET "ON" IN THE NEWS SETUP SECTION. * Removed STOP statement debugging trap. A Stop statement had been left in 4.3 during testing for the "Duplicate key problem" - This has now been removed. * Changed check for local mail to be case Insensitive - had a report of mgibbons@OEMCOMP.DeMoN.co.uk (for example) not being treated as local. * Changed Mapi "Received:" header so that the "from Mapi Compliant System" is now in comment "( )" parenthases. This information should now be ignored by mailing systems and not generate a parsing error Version 4.3 Alpha 16/10/94 M A E Gibbons - mgibbons@oemcomp.demon.co.uk * DICS now supports the standard GET/KILL file mechanisms - both these files should be in your \SPOOL\NEWS subdirectory. Basic details are given in DICS.TXT, if you want more detail, re file formats read DISPC.TXT, which is part of the standard DIS installation pack. Make sure you switch on "Use Get/Kill mechanism" in the news setup section if you want to use get kill. * DICS now reports duplicate and unavailable news items as they happen. Generally tidied up NNTP client messaging and summary indicators. * DICS has been given a facelift - New 3D image - Hope you like it! * DICS has pull down Menus * Client "child" windows now only appear when activated i.e kicked. * Corrected bug with regards to news updating where it was possible to get the "duplicate primary key" message. * Corrected bug with mail send where client would hang if Mail Exchange reported "unkown host". Client now carries on to next mail in the queue for processing. * SMTP Client now automatically kicks if new mail has arrived (VIA the server) and needs forwarding to MAPI or another system. Version 4.2 Alpha 08/10/94 M A E Gibbons - mgibbons@oemcomp.demon.co.uk * DICS distributions now contain two EXE's. The DICS.EXE executable does NOT contain any MAPI calls and therefore can run on any non-mapi compliant version of windows 3.1,3.1X. The DICSMAPI.EXE executable, believe it or not, DOES contain the MAPI gateway functionality. * NNTP client code was generally scrutinised and made ready for the implementation of GET and KILL functionality - This I also intend to release in version 5.0 although it may appear in late intermediate 4.X derivitives at the end of October. * A small bug in the NNTP client was also corrected - Basically the log on response 201 was not being recognised by DICS. 201 specifies that a connection has been made to the server BUT you are not allowed to post. This only ever occurs on NEW demon accounts that have been open for less than 48 hours due to the unavailability of reverse DNS Lookup. * DICS will now start minimized (again!), A slight gremlin which appeared in 4.1 meant that DICS always started "normal" screen size. * The Winsock VBX is now the last module to be initialised - This means that there is less for DICS to do once a SLIP connection has been established. The result is that the SMTP listener should now start even quicker than before. * Added a Touch of Grey and Red to break up the White! * No other reported BUGS in 4.1 - We all now know that PROGRAM FUNCTIONALITY will be increased in 5.0 to handle MX records - enough said on this subject! Version 4.1 Alpha 01/10/94 M A E Gibbons - mgibbons@oemcomp.demon.co.uk * DICS Is now Shareware - All versions. Please, If you use it, pay for it. * Documentation file "DICS.TXT" has been improved slightly - Now has ".TXT" extension rather than ".DOC" to show that it is textual rather than word format. * Forced delivery to Mail Exchange option - Improves speed of delivery of all inter-demon traffic AND resolves EINPROGRESS error problem with Trumpet winsocks beta 6 onwards. PLEASE SEE END OF 4.1 RELEASE INFO BELOW FOR FULL EXPLANATION. DICS 5.0, to be released at the end of November, will include a recompiled VBX to remove EINPROGRESS problems totally. At that stage proper MX record lookup will take place aswell so that DICS always attaches to the preferred mail host. * HISTORY.?DB files are now compressed and repaired automatically each time DICS is started IF the history option is enabled. * If the HISTORY.?DB files are not in your SPOOL\NEWS directory OR they are corrupted beyond repair then you are now told this in plain english and that particular DICS session will continue without history checking. * The SMTP server for mail reception has been overhauled to say the least. Mail Fowarding routines have been introduced together with full support for the ALIAS file ala KA9Q. LOCAL addresses are expanded using the ALIAS file so that you can receive the same mail to multiple mailboxes. You can also translate a LOCAL address to one or more remote or local addresses and DICS will stuff appropriate mail files in the SPOOL\MQUEUE directory. * The SMTP client will now also despatch to multiple recipients correctly. * DICS can now act as an SMTP/MAPI gateway. This will excite some people or bore you rigid, it really depends if you run an Workgroups network with MS Mail. Microsoft charge $3000 for their SMTP gateway! Its a DOS program and has to run on a seperate machine WITH a seperate Unix SmartHost!!!!! Ok its fully functional and integrates fairly seamlessly but it is expensive and overkill for most people. You also require MSMail 3.2! The DICS approach is for people with bog standard WfWg Mail and is quite simplistic - but it works and will solve 99% of what people need. Futher details are found in the DICS.DOC file Summary of investigation into problems with DICS 15/09/94 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ For a long time now we have had the situation where DICS works flawlessly for most people and hardly at all for others! I have spent a lot of time trying to understand the reasons for this and an explanation follows: The BIG problem is WSAEINPROGRESS errors reported by winsock. This error is generated by the winsock when a blocking function has been called and then there is activity on another socket. The most common occurence of this in terms of DICS is usually when news is in full flow and you have pending mail to go out. The SMTP client does a gethostbyname(), a DNS call to resolve the address of the recipient; this is a blocking call and whilst inprogress, when news is next received (albeit on an already opened asynchronous socket i.e. non-blocking) news hangs because the winsock is INPROGRESS on the DNS and (correctly according to winsock spec) fails the recieve function. Versions beta5 and earlier would not fail the occurence of an async receive in the middle of a blocking call. Beta6 onwards does and that is the difference. Technically, in terms of the way DICS handles things, there is no need for the winsock to fail the receive with a WSAEINPROGRESS error, however it is in the spec and that is what Mr Tattam is writing to (correctly). So why don't I change DICS? DICS uses the WSANET.VBX as a low level winsock interface - the DNS resolution calls are in the vbx and it is not a simple matter to change them to asynchronous non blocking calls. I am however going to make some modifications to the vbx source to correct this situation. This should be available for the scheduled release of version 5.0 at the end of November. HOWEVER THERE ARE WORKAROUNDS!! ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ The simplest is to use Trumpet Beta5 - DICS works well with this version ALTERNATIVELY: (Prefered method) There is a wrinkle in the winsock 1.1 spec which Tattam also programs to. If a DNS resolution call can be resolved by your LOCAL HOSTS file then it is treated as a non-blocking call and therefore no WSAEINPROGRESS errors occur. By analysing why we do DNS lookup in DICS we can see the solution - It is on outgoing mail. The newsserver we already suggest as having an entry in your local hosts file - all we need to do is put every entry you may possibly send mail to in your hosts file! (Only kidding) :). HOWEVER since demon is basically an offline service most mail goes to post anyway for onward despatch. IF WE FORCE all mail to go to post AND WE HAVE an entry for post in our local hosts file then we do not cause any blocking calls. So how do we force mail to post? Well we wait until I make the changes to DICS 4.0 to make it 4.1 which will include the option to "Deliver all mail to mail exchange"! Then you can use whatever winsock you like. Alternatively set the kick time on your SMTP client to 0 and only manually kick it after all news has been downloaded. I appreciate that these are not perfect solutions so please do not castigate me for suggesting it - I do however believe that the above explanation will be useful to you in understanding the situation. Version 4.0 Alpha 01/05/94 M A E Gibbons - mgibbons@oemcomp.demon.co.uk * Version 4.0 heralds the start of a new development cycle for the DICS program. Although "DICS Time" is still in short supply, I do hope to be able to allocate a few more "hours" to this project than has been possible over the last few months. * New DLL's distributed - Read DICS.DOC for location information. * Corrected GMT/BST handling in the news client so that all TIME is held in GMT format. This is to keep compatibility with KA9Q. * The tasking between the seperate processes is now handled better and will hopefully cure some problems users experience of news hanging/not starting etc. Rest assured that problems in this regard will have a high priority for resolution in this next development phase. Please bear in mind however that I am unable to duplicate these problems on my setup. This does mean that solving these problems is difficult and therefore FULL information about your setup is required for debugging these problems. * History file Use/Update options have been introduced. The NEWS Client setup screen has changed. In the frame at the bottom left corner is the option "Use/Update History File(s)". If this box is unchecked no history file processing will be attempted. If this box is checked then history file processing will be fulfilled based upon the options selected in the right hand bottom frame. If you require COMPLETE compatibility with the KA9Q then BOTH the Import and Export External file check boxes should be checked. I.E. Select this if you will be CONSTANTLY switching between DOS/WINDOWS. The drawback with Importing the external history is the creation of internal tables from the external history file each time NNTP is kicked - On my system here it processes about 100 external records every second - If you have an external history file with 1000 records this will take 10 seconds to "build" internally before a connection attempt is established. The option I would suggest for "backstop KA9Q'ers" is Exporting the history file but NOT importing it. This means that when your system crashes using Mosaic ( :) :) ) you can EITHER use KA9Q or DICS to recover. In normal processing however DICS maintains its OWN history and therefore there is no need to Import KA9Q type history file. The third check box "Purge History Continuously" is to do with how DICS cleans the (INT) HISTORY file to the NUMBER of history records selected. If this box is checked then DICS will maintain a FIFO history file of EXACTLY the number of records specified. I.E as soon as it receives a new piece of news it records the new id and discards the oldest id in the table. This means that the history file is always stable in size and that there is no delays in purging files. There is a possibility of a throuput delay using this option however - on my system there are NO problems - but I would anticipate on slower systems that throughput may be affected. Let me know. If you uncheck this box then the internal history file will be purged to its set limit at the START of each NNTP session. I.E. if the history file is empty and the purge limit set to 1000 and you receive 1243 records in the 1st nntp session, the next time you run it it will purge the OLDEST 243 records from the internal file BEFORE a connection attempt is established - throuput should not be affected however. * Corrected a bug in NEWS where if the last piece of news requested was "unavailable" at demon, the NEWS client would hang and never finish. Version 3.8 Alpha 11/04/94 M A E Gibbons - mgibbons@oemcomp.demon.co.uk * A very very small maintenance release to fix BST timezone correction from GMT. In the Time Setup screen you now have the option to enter a "local" variance from GMT. In the case of BST its 1!!. The time client will now display both GMT and LOCal times and set the clock to local time if the difference is greater than 10 secs. Version 3.7 Alpha 30/01/94 M A E Gibbons - mgibbons@oemcomp.demon.co.uk * A very small maintenance release to try and correct a very few peoples problems with regards to "hidden" buttons and news not starting. I have *NOT* been able to replicate the problems on my machine so really this is just a stab in the dark - it may even cause problems!! Version 3.6 Alpha 18/01/94 M A E Gibbons - mgibbons@oemcomp.demon.co.uk * Added "Sound" on receipt check boxes for NEWS Client and MAIL server so you can select if you want an audible sound when you receive new NEWS and/or MAIL. * Added option to Play ".wav" files instead of just the beep on new MAIL and NEWS reception. Each can play a different ".wav" file so you can distinguish between NEWS and MAIL arrivals. Included is "sample" wave files for this purpose. PLEASE MAKE SURE YOU MOVE THE >>> MCI.VBX <<< FILE WITH THIS RELEASE TO YOUR 'WINDOWS\SYSTEM' DIRECTORY. * Added "Run Minimized" option so that DICS will start AND process as an ICON * Added "Notificational" ICONS so that you are informed of Mail and/or News arrival - if DICS is minimized. When you restore or maximize the DICS interface the ICON flags are reset so that you can minimize DICS once again with a "virgin" icon. The receipt of FURTHER mail or news will then be notified once again by a changed icon. These ICON files MUST BE PUT IN THE SAME DIRECTORY AS DICS.INI * Added Exit On Idle Time option so that you can make DICS automatically close down if it has'nt RECEIVED anything for the specified number of seconds. This option is disabled with a figure of 0 and will not shut you down if you are in the Setup section (for obvious reasons). * Added Log files to all services. The Log files will have written to them everything that appears in the services' window. If you increase the trace level, more info will be written to the log file. The Log files are hardcoded as follows: "....\SPOOL\NEWS\NNTPINW.LOG" - Nntp Reception Log "....\SPOOL\MAIL\SMTPINW.LOG" - Smtp Reception Log "....\SPOOL\MAIL\SMTPOUT.LOG" - Smtp Transmission Log * Corrected News "Type Mismatch" problem which occured very infrequently and only with certain binary "uuenc" transfers and other mail. Many thanks to "nrichard@ttech.demon.co.uk" who tracked down this particular problem. * Re-arranged Main Setup window with Service buttons down the right. Version 3.5 Alpha 11/01/94 M A E Gibbons - mgibbons@oemcomp.demon.co.uk * Corrected NEWNEWS bug where if a concatenated grouplist from several lines in NNTP.DAT was greater than 512 bytes, the number of expected NEWNEWS responses was not being incremented correctly. This meant that news would effectively hang after receipt of only the messages relating to the FIRST newnews line. * If a destination address cannot be resolved by SMTP client IT SAYS SO - rather than the "cannot connect message" being used for unresolved and unavailable. * "Modularised" client code for SMTP and NNTP services. This to enable future expansion to multiple concurrent SMTP an NNTP connections. * Restructured calling sequence for autokicking of services. The main reason for this from the users perspective is that it is now possible to run DICS minimized from the start. * Increased the connection Timeout for SMTP client from 2 seconds to 4 Version 3.4 Alpha 03/01/94 M A E Gibbons - mgibbons@oemcomp.demon.co.uk * Corrected Multiple Mailbox Dropping First letter * Corrected Multiple Mailbox Enable/Disable not being read from DICS.INI Version 3.3 Alpha 02/01/94 M A E Gibbons - mgibbons@oemcomp.demon.co.uk * Added Support for Multiple Mailboxes * Added Option to Load SMTP Server BEFORE Time syncronization - this is to accomodate slower machines not receiving mail from Demon. Version 3.2 Alpha 02/01/94 M A E Gibbons - mgibbons@oemcomp.demon.co.uk * Changed Event Handling to give more time to processing news - should enable processing even on slow machines. * Can now accept Articles > 64K * Writes Directly to BATCH.TXT thus elieviating "Out Of String Space" Problem (hopefully) * Added "From" and "To" info to "New Mail Arrived" Message * Added Count of New Mail Received * Corrected ICON management so that Minimized Icon same As PM Icon * Corrected legend on NEWS setup from "Time" to "News" on kick setting * Corrected NNTP.DAT writeback problem - Commented DATES were updated aswell Version 3.1 Alpha 01/01/94 M A E Gibbons - mgibbons@oemcomp.demon.co.uk * Fixed problem of events processing where NNTP client could loose incoming Data if not serviced regularily * Article Names are now strored to disk rather than just to the list box - This overcomes the 64K limitation of total headers in previous releases. * News has been tested by myself over 600+ articles with incoming and outgoing mail at the same Time * New Mail and Completion of New News Now generates a BEEP from PC Speaker * General Stability of this release is much improved over 2.2/3.0 Version 3.0 Alpha 31/12/93 M A E Gibbons - mgibbons@oemcomp.demon.co.uk * New Style MDI Interface * SMTP Server Incorporated to receive Mail * Resizeable Client Windows * Save Window Settings for Next Time inc Maximized, Minimized Clients * Choose between Microsoft Default Win layout, DICS Default or your own * Checks made for Unwanted reentrancy on receive events Version 2.2 Alpha 23/12/93 M A E Gibbons - mgibbons@oemcomp.demon.co.uk * Tidy-Up of Existing NNTP and SMTP Client Code * BATCH.TXT only opened if News Exists (Cures 0 Bytes Problem) * NEWGROUP only opened if Option Checked (Cures 0 Bytes Problem) * WARNING! It is *NOT* a good idea to change the setting for NEWGROUP capture/don't capture when in the *MIDDLE* of an NNTP session. You will get a "File Not Open" message. This will be made BombProof in time. * NNTP/SMTP Send Routines "modularised" and checks made on FIFO buffer which cures "Send Buffer Overflow" problem. * NNTP/SMTP Receive Routines enhanced. Cures Subscript out of Range Problem * Parsing of NNTP.DAT much enhanced to accomodate multiple groups on a line seperated by either a comma or a space. Blank line signifies to start a new NEWNEWS line, and a "#" in the first column signifies a comment Version 2.1 Alpha 19/12/93 M A E Gibbons - mgibbons@oemcomp.demon.co.uk * Bug fix with regards to DICS.INI not being stripped of MAILOUT SubDirectory Version 2.0 Alpha 18/12/93 M A E Gibbons - mgibbons@oemcomp.demon.co.uk * Switching to WSANET cures both the WOULDBLOCK and INPROGRESS problems * Includes SMTP Client for SENDING news and mail * This SMTP Client WILL send unconnected Mail to the Gateway/Mail Exchange * SETUP Screens now split to handle TIME,SMTP,NNTP and general config * Settable Kick Interval for ALL Clients - 0 Means never auto-kick * Settable NNTP options for Updating files - useful for testing if nothing else! * Settable Trace Verbosity Levels for NNTP,SMTP * Ability to scan AUTOEXEC.NET for other settings Version 1.1 Alpha 13/12/93 M A E Gibbons - mgibbons@oemcomp.demon.co.uk * Switched to Ian Blenke's WSANET VBX * THIS VERSION NOT RELEASED Version 1.0 Alpha 11/12/93 M A E Gibbons - mgibbons@oemcomp.demon.co.uk * Initial Release * Utilises VT Socket WinSock VBX * Time Client * NNTP Receive Client * NNTP Trace Levels 1-4 (Not Same as KA9Q) -