Bug List and Things To Do ------------------------- For Release 1.08 or later ------------------------- - simple MAPI support - IMAP support(extra) - UUCP support(extra) Documentation ------------- - add 'RFC 1153 - Digest Message Format' to spec lists - description of digests, bulks - new flags in system - warning for the forward to smarthost option - go through and make sure all of the new functions are documented - help buttons for new dialogs Install ------- - add to install program ability to uninstall - root having invalid password at startup Enhancements ------------ - Win32 Nt Service support - control panel applet - change XTRN -> ETRN - 8BITMIME support for ESMTP -> make sure chop off top bit otherwise - RMCP support with a little sample app - move all profile variables to a single module - finish disabling bits in dialogs if the smarthost is disabled - check screens for 640x480 - little applet to get mail from a POP3 source upon request - remote changing of name, CC, et al. - get the passwords for users from the NT database - ability to specify vacation text and to control it - ability to specify maximum size of mailboxes to prevent overflow - flow control to avoid overloading the network layer - ability to add name of list to subject lines unless the blurb is already there - make sure to add message-id line and organization line to the header - ability to doing timed routings to a given node family - force at time specified by user - ability to specify zones of timed connects and conect on demands - line in reporting file: from, to, date, filename, message date, message id, other node - qualify incoming node name - add separate options screen for the secondary domains... i.e. unknown users - move MX records to a MRU used scheme (move to end of list if used) - allow the ability to limit the life-span of an MX record - subject line to receipt Delayed ------- - ability to turn off the 'has been subscribed' message - make sure the handling of a local node within an .out file is somehow handled. Problems -------- - make sure to add something to clean in and out dirs of .wrm files on startup - take care of trailing dot in addresses (foo.com.) - make sure that we limit the amount of traffic that can go through a POP3 site if desired, else may bog down the system - check to make sure that protocol machines have no endless loops - check David's bug - check Bebe's bug - fix so that servers have no buffers - hide all winsock calls from other layers General ------- - verify that the sizes of the buffers used to hold the user data are consistant across the applications - check for cyclic references in the mail headers. Outgoing Mail Queue ------------------- - multiple outgoing messages - multithread the ougoing mail queue - ability to specify a window of connections so that we do not spend needless time opening and closing connections without cause - make limits as to the maximum number of outbound and inbound connections that can be open Mls --- - automatic timeouts on the lists, set by listowner or system admin - ability to perform maintenance remotely via mail messages - clean mode, clean mode if on user list, closed mode, and closed mode except if on list and passkey is verified - auto-expiry of members with a auto-renewal system Ars --- - ability to specify maximum chunk size for a given file so that sites that have limited bandwidth can have it broken down into separate parts Logs ---- No Progress ----------- - sometimes think that it needs to send an unknown user response back - all connections seem to route everything to the smarthost - problem saving timings between instances - seems to lock up with chameleon when it goes down. - modify on a list may wipe out that list - seems to have weird problems with lots of users and adding, cannot repro - seems to try and connect and gets weird response if force connect - info lists sometimes causes problems - better label for attachment checkbox in responders Need Testing ------------ Before Release -------------- Release 1.07beta1.3 ------------------- - added code to not send data if from 'mailer-daemon' - added code to properly allow the user to select which of multiple domains they wanted to access. - added automatic inclusion of listserver alias when creating new svd - added ability to specify node pattern matches such that nodes that match will not be auto-responded to - added code to handle depositing of information into a user defined mailbox type (ask for details) - add copy information to the registration dialog - add code that pops up a dialog box if the node name is not a FQDN when the user is trying to register - verified that mailing lists work properly on secondary domains - made sure that the sockets are set to sync before closing - made sure not freeing up network buffers twice - fixed problem with return receipt field not being correctly grabbed out of the message, and hence, improperly sent information - fixed problem with sonnet version timing out too early - fixed problem with not stripping whitespace off the end of the line in the bulk import formats - fixed listserver help file - fixed problem with win32 memory system and winsmtp - fixed problem with not locking and unlocking the files properly so that some mail messages may have got lost if the mailbox was kept open for long periods of time Release 1.07beta1.2 ------------------- - verified that auto-responders were including date line in generated msgs - fixed problem with multiple smarthosts not getting progreesed to if a timeout occured, as per looking up MX records - fixed problem with explicitly routing a given message to an ip address and not having a connection made; would keep on retrying - fixed problem with MX record not looking up properly due to misnamed variable for pruning algorithm - fixed problem with local node name being appended to the recipient of a message; mistake occured when did turnover to allow for svds Release 1.07beta1.1 ------------------- - fixed problem with MX record and unlimited pruning pruning too much - fixed problem with user dialog not appearing if there are no secondaries Release 1.07beta1 ----------------- - added better titles for the browser dialogs - added stopper for ars so that root accounts and root based accounts cannot use ars as that is how error messages are reported - added ability to limit the number of MX records that are kept in the system at any time. - added option to make sure that unless manually added, mailing lists can default to having a digest set for the user - added ability to set the digest mode via listserver - added code to automatically suggest new names for backuped log files - added 8K limit to the data that gets bounced in a message - added ability to specify multiple DNS hosts - added extra dialog with description of what happens and affirms reg'n process - added exporting of list members to comma separated file - added exporting of users to comma separated file - added a default finger message if the user is not found - added a default finger message if there is an error with the request - added ability to import the members for a mailing list from a given file - added ability for only listowners to post messages to mailing lists - added ability to send notifications out if a potential user or a message for a list enters into a status where moderation is needed; sent to owner - added ability to automatically reject user additions from listserver to a given mailing list, including option rejection message - added ability to have the POP3 daemon add the 'R/U' and 'N/O' fields to the pop messages when rewriting the mailboxes; should allow the Eudora leave mail on server option to work - added ability to rescan the stats for a given mailing list - added ability to handle 'return-receipt-to:' field processing - added ability to edit or print a log file - added ability not to load 3d controls - added ability to send a short message to the sender of a partially received message - added ability to turn off any response from ars, except when non-success - added end command to the ars - added user name field to the bulk user input - added comment field to bulk input lists - added ability to maintain secondary virtual domains - added ability to configure accounts for domain through user dialog - checked to make sure that all entries into the system with user names convert to lower case - checked to make sure that X-daemon line is not added in the registered versions. - checked to make sure that digest options are only available if the list has digesting enabled - modified forced connection times to add 12 and 24 hours marks for the forced connect - modified registration dialog to handle text field better - checked to make sure the processing to alias will occur properly -> will not get translated to .out file, otherwise must be in local nodes list - modified code in Edit members dialog to allow a mode in which the entered name will only be checked upon the pressing of a button, as when the list gets large, the search process (which gets repeated normally for each character) takes longer and longer - verified that debug output doesn't come up unless asked for - modified code so that an already existing mailbox can be used, but with a warning that it is already in use - verified and modified code so that static options are clearly stated when they are changed in the dialogs - verified that the scan for a binary file (ars) does not complain about having a Ctrl-Z as and EOF marker - verified that ars and lists qualify the names that they are using to build their responses - fixed problem with checking for writability in network code - fixed problem with dialup mode not working properly, as it would not send the files except at startup - fixed problem where entire message was being bounced, and not just the envelope - fixed problem that would occur if an error message was bounced back to an auto-responder - fixed problem that would occur with the logging option if there were no contents to an AR request. - fixed problem with Finger leaving the port open after it was supposed to close - fixed problems with mailing lists not showing up because prior to that in the list an alias was set to a forwarder, which was not taken care of in the name search routine previosuly - fixed problem where backing up other logs wasn't checking to see if the ar or ml logs needed backing up - fixed problems with some dialogs not setting the next item in the listbox properly when adding or deleting an item - fixed problem with the reverse finger sending extra data, due to specifying sizeof instead of strlen - fixed problem with finger daemon taking a while to disconnect - fixed two problems that came about because of not checking to make sure that a node was viable in the network layer before using the pointer. Release 1.06.f.2 ---------------- - added ability to touch a remote port using TCP/IP as a way of forcing a connection, above and beyond XTRN - added separate logging times for the main log file and the secondary logging files - added generating list of uses of a mailing list for bookkeeping - added ability to limit the number of MX records kept by the system - changed command listing so it now gives a symbolic name, not file name - changed building code for lists to make sure that digest means no active mail - fixed extended debug reporting of MX records to reflect proper IP - fixed problem with files not being bounced properly if no legal recipients - fixed problem with the iconized window and resizing - fixed problem with forced connect at startup not working for always present connections - fixed problem by making sure to mark entry if the address is not a legal recipient; else continuous retries - fixed problem with unknown addresses causing the entire message to sometimes be thrown out - fixed problem with retry dialog not having focus, disabling keyboard input - fixed some problems that would have prevented bug lists with a certain number of errors from continuing to send the file - fixed problem with other log file backing up not working properly in manual mode - fixed problem where messages with address lists of over 50 people would send some of the WinSmtp envelope along with their message - fixed problem with unknown names causing UAEs, disrupting the program - fixed problem with large files going through the router Release 1.06f.1 --------------- - added ability in code to function while in dialup mode, but also sending other files to reachable hosts at normal timeouts (i.e. mode timeout does no longer override the outgoing queue timeout) - added debugging information for MX records. - properly finished the mode where the smarthost is disabled, making the daemon bounce any messages that it cannot reolve to any local machines - made sure that if there was a critical error while routing that the message would be renamed to something that won't be scanned again... if possible - fixed problem with incorrect name being registered for retry - fixed problem with Mx lookup taking a really long time due to a boolean not being set correctly - fixed problem with dialup mode that would cause it not to force the connection as it was still trying to use the old way of forcing a connection; translated and modified for async smarthost acquisition - fixed problem with 'error resolving name for:' and then no node name - fixed problem with rejecting a user on a moderated add list - fixed problem that occured because not enough whitespace between messages by adding another line - fixed problem with debug information showing up for digest checking - fixed problem with not forwarding from mailing lists because it thought it was unable to open the file for reading - fixed premature closing warning by making sure that the node would be closed properly before going on to a new one. - fixed problem where registration was sometimes not working properly Release 1.06.f -------------- - added Win32 versions of the application - added closing down of system with WM_ENDSESSION to make sure that we clean up the stack for DOS based stacks - added tranmission support to the finger command - added ability to disable routing part of the system - change resolution code to bounce a message back if we get an authoritative no on the node name - made sure that wrmail and wrmail32 were compiled properly - fixed problem with finger not always returning the right data - fixed problem where logging options not being saved as they were being checked before the determination that the user was registered - fixed problem with nodes reporting they were not in a closing state and being closed when they really were - fixed problem with ESMTP SIZE of 0 by making sure that it is legal - fixed problem where the system thought it had an open connection with the host but didn't. if it detects this, it will try and open a new connection - fixed problem where attempts to send multiply addressed messages to a single node would work if it was the first record, but not for any of the other records - fixed problem with node connect state = -1 and doesn't clean it up... happens if remote side closes and then the same id was used for the new socket, check in code to make sure not the same before deleting - fixed problem where request level on addresses not being respected so it looked like connect was being sent over and over again because it didn't know to stop - fixed problems with retries not advancing properly - fixed problem with retries not being set off properly because the wrong name was kept around for the node - fixed bug with the POP3 DELEte command - fixed bug with routing multiple messages and one has to go to the smarthost; was setting the level of the search before we had ascertained the item that was going to the smarthost; hence would send to last found mx record - fixed problem where bounce right after retrying could sometimes lead to an error condition - fixed problem with it thinking that ctl3d was not there; ctl3d32 was - fixed problem where not all checkboxes in the system configuration item triggered a warning - fixed fragmentation problem with the MX record retrieval that could cause a UAE depending on how the item is fragmented Release 1.06.e.7 ---------------- - added POP3 timeout of 15 seconds after QUIT command - added ability to run withot 3d controls, but to take advantage if loaded - added better tracking of where messages are routed to and filenames - added more verbose pop3 diagnostics to the logfile - added user of TCP port 106 to change password from remote stations - added ability to add a file's worth of users in at the same time - added configuration modes for the system and for each of the users - UAE at 3:6829; was caused by code that was looking for names of the smarthosts, but didn't take into account that they can sometimes fail - fixed problem with weekly backups that was causing it to happen every day; specified weedday, not week in time string - fixed problem where volume increase should have been greyed out - fixed modify button for lists and auto-responders - fixed problem with routing files that end with the DOS Ctrl-Z - fixed problem with <> by mapping to 'mailer-daemon@' - fixed problem with message ending without a CR/LF and the Copy function was hanging - fixed problem with hanging with a NULL Mail From command - fixed problem with auto-responders responding to each other or themselves - fixed problem where 'owner-' was not being mapped to listowner on incoming rcpt to messages - fixed problem with error if come back from verification request and the session is no longer active - fixed 3:6fe2 - problem occured when pointer not reset properly - fixed weekly backups instead of weekday backups - fixed problem with saving digested items to digest file - fixed problem where an extra line was occasionally added into the data stream - fixed problem where we would continue to send after the host that we found in the MX records for ourself - fixed problem with 3:6aa8 - needed to make sure we had valid pointer - fixed problem with verifying a server name entry - fixed problem with multiple entries not always going to next item, but returning a -1 code to the log - fixed problem where a line was being dropped every once in a while because a scan wasn't fixing a buffer up after tampering with it - fixed problem where sometimes dleted mailing lists messages wouldn't be reflected. Release 1.06e ------------- - added ability to switch main log file - added ability to automatically backup main log file and mailing list and auto-responder logs - added shortened date field to the output for ar logs - added async request for smarthost entries as well, instead of sync request - added timeout when verifying name of node upon connection - added way to make sure that the Digest volumes are incremented - merged screen display and logfile display together - added ability to select which output is to appear in which logging list - fixed problem with footer not properly being appended to mailing list messages - fixed problem with 29:154a where commands could get into a sending loop when the connection disappeared - fixed problem with 29:1818 where still referencing socket pointer after possible disappearance of node - fixed problem with 7:056c where large headers were not getting processed properly - fixed problem with digest file not being deleted properly - fixed problem of crashing under NT at USER.EXE 1:7487 by making sure that duing the MX record cycle check, we have a legit pointer - fixed code so that AR lines in report have an action that is only one line long - fixed the mechanism for forwarding a pending list message to a given address - fixed 0003:408d; could have times where the response was not valid - fixed problem with current node and next node going away during the loops within the network layer - fixed connection timeouts so that the smarthost outgoings respect the connection timeouts - fixed problem in suballocator that would cause blocks to be rejected every once in a while Release 1.06d ------------- - added get command to auto-responders as an addition to the send command - added a list command to auto-responders to list available identifiers - added a help command to the auto-responders to give a brief help line - added an extra check so that the outgoing processor will go to the next MX record if there was no connection (already) or the from line was not requested (added). In last case, connection has not been open long enough. - added ability to do a forced connection to the smarthost upon startup - added display window to tell what the current connections are - added ability to hid window by placing a command line of '/h' - added functionality to avoid MX records if it is the local node name or one of the aliases; stops MX searching at that point - added bulk mailing list mode, will send articles after midnight - added digests for the mailing lists - added note in auto-responder response file to let people know to contact postmaster if there is a problem - added ability to specify if a listing of an auto-responder is valid - added ability to have multiple smarthost entries for when one fails - added path fix so that addresses like 'foo!bar!user' get passed on to the smarthost, who should be able to figure out the UUCP addressing - added ability to route unspec'd users to the smarthost. WARNING: As incoming mail from a client is the same as incoming mail from another server, the server should use the full name 'i.e. a@b instead of a' of the address or else a looping problem will occur. - added aliases configuration for install program - added help command for listserver - added restrictions to ars and lists for unregistered users - added ability to decide between 2 and 4 digit header fields - fixed problem with the date line not having a large enough buffer for the entire date - fixed problem with MX resolution that would cause the system to generate a UAE if the request disappeared - fixed problem with the auto-responder copy feature not working properly in some circumstances - fixed mailing lists so listowner does not need to approve their own mail messages - fixed problems associated with a POP connection closed while Eudora is retrieving a file. - fixed removal of name from message so that it takes out newlines - fixed auto-responders so that the sub-messages of why an error occurs gets displayed properly - fixed problem where not creating items properly on list when new member added - fixed problem with -1 while connecting by forcing the connection to close when the remote side drops the line - fixed length of node name field in the registration dialog, was impairing the registration of some systems Release 1.06c ------------- - added mandatory owner of a mailing list, defaulting to the root user - with concept of list owners being mandatory, use 'owner-' when sending file out so any delivery problems will bounce back to the owner and not the list - added ability to handle '@domain:further-domain' addressing for mailing lists - added ability to handle '@domain:further-domain' addressing for outgoing queues - added ability to resolve hostnames on a local network by using the partial domain name of the local host - added ability to reenter mail sending code - added flow regulation based on number of active mail nodes in the system, helps regulate the load of the system - added ability to specify that a node is to be retried on a constant basis, not an increasing scale. - added a 15sec timeout after a SMTP node is closed to allow for the clients that want to close it themselves - added ability to specify gateways for exception classes so that all traffic for a given subset of nodes can go to a host that is known to handle those messages - added ability to pull the name of the sender from the from line of the message, for both mailing lists and auto-responders - added ability to load in existing copy of a auto-responder to the current one - added ability to load in existing copy of a mailing list to the current one - added ability to verify the existance of the files for an auto-responder - added ability to verify the existance of the files for an mailing list - added ability to override timeouts with exceptions - added ability to keep messages for a given node until asked for by that node - added automated registration ability - added ability to forward mailing list messages to a given id - changed auto-responders set to automatically respond to requests so that if the response is successful, only one message is sent - changed the subject line for automatic responders (auto mode) so that it reflects the name of the node better - changed proper response to allow unregistered users to set the mode properly - changed installation information dialog to make sure the user know that the name must be 6 characters and the organization must be 4 characters in length - change send and receive so that they reflect the files properly - fixed installation of help file - fixed a problem handling '(' rewriting in addresses - fixed problem regarding the encryption algorithm, affects all passwords - fixed problem with Received line, was using colon instead of semi-colon - fixed problem with Auto Responder Item Dialog - fixed updates when an item in a list is updated or deleted - fixed problem with NULL mailbox and checking for a password for it - fixed problem with not removing '>' from before 'From ' lines in local mailboxed files when sent over POP - fixed problem with recognizing 'From ' as mailbox header instead of 'From ' - fixed problem with mailing lists and totally empty header fields - fixed problem with GPF when connection was dropping at inopurtune times. - fixed problem with modifying users from the User Dialog when accessed a responder first - fixed problem with incorrect number of sent files being specified - fixed header on mailing list to properly send out files to owner- - fixed problem with unknown users not being rerouted properly - fixed problem with the 'received: by ' line being generated with a ':' instead of a ';', causing some mailers to reject the entire message - fixed routing exception defaults for added items - fixed code for approving moderated mailing list messages so that it only scanned for the messages that belonged to that list - fixed problem with return code not being set when creating reporting window, and on NT would cause window not to be created - fixed problem with auto-responder in automatic mode needing at least one line in the message to act properly. Release 1.06 ------------ - added code to make a backup copy of the winsmtp.ini during install - added code to moderate adds for mailing lists - added code to add and edit members of a mailing list - added code for proper moderation of moderated mailing lists - added code for base64 encoding for the autoresponder - added proper mime definitions for auto-responder messages - added extra code to identify why a dropped connection was dropped - added code to cycle through nodes with no MX record but multiple address records - added ability to force a configuration file for ars and mls, as well as asking the user if the existing one should be deleted upon deletion of the account - added ability to send files from an auto-responder as a response action without any commands being issued - added ability to specify first and last files for autoresponders - added visible indications when one of the FSMs goes into an illegal state - added link from 'listserv' to 'listserver' during installation - added forcing of unknown, root, mail-daemon, postmaster, and listserver accounts if not present - added verification of nodes used in aliases at startup - added ability to reroute mail for unknown users to a single maildrop - added ability to footnote mailing lists ('this list brought to you by...') - added ability to specify whether an auto-responder will respond to single request messages using either attachments or no attachments - added 'subs' command to listserver so that a user can find out what lists they are on - added ability to auto-responders to allow for the duplication of the message to s specified acount - added ability to log action for a auto-responder to a given file - added ability to automatically bounce a message to another party - added ability to specify owner of a mailing list - added ability to switch on whether the listowner of a list should get a copy of the mail - added local resolution of aliases to aid in the interpretation of list names - added check to make sure that the listowner is included in the group of people allowed to post to a closed list - added ability to translate the information from UUCP gateway addresses into a standard internet format without all of the path information. - added an edit field collector dialog to allow the root user to specify a reason when a message is bounced. - added ability to delete a mailing list message without rejection - added ability to specify a rejection reason for the mailing list messages - added the system mode dialog to control whether live/dialup mode - added ability to force connections every x minutes as well as to hold all of the data for the smarthost until that time - added ability to force a connection at startup and to make sure that it doesn't happen (for dialup mode it is important) - added ability to have local host send a XTRN command when forced and with dialup connections - added ability to react to a remote XTRN for a given node - added online help file - added interface to the helpfile from the dialogs and the main menu - made sure that a null nameserver will default to some value - made sure that OpenFile calls are critically sectioned - fixed problem with some systems that return ANY 5xx level error code if they do not support ESMTP. This is for legacy only and does not comply to any specification. - lowered threshold needed for succeeding to other connections - changed interfaces on dialogs so it was more apparent when add and change were being performed - changed timer resolution for queues to 5 seconds resolution - checked install program: not overwriting ini file information if the ini information is not to be updated. - changed system so that the remote end is always responsible for terminating a connection - changed manner in which the first user should be added to a list through the mailing list maintenance dialogs - changed bouncing algorithm so that the system user will only be alerted to the first time a message address is unaccessible - verified that dialog boxes are set up to limit the entries to what they can contain. - verified that a connection is maintained across connections so that we aren't opening and closing the connection prematurely - made sure that the readme.tx file is copied to the destination directory properly - fixed installation program to work well across druves - fixed problems with installations into previously existing directories - fixed problem where the users could not be modified because it would complain about the mailbox not being created. - fixed offset receiving ESMTP size count by not including received line in count - fixed problem of adding users to list that is partially full - fixed problem where the daemon seemed to be ignoring the ModeratedAdd setting for a list - fixed welcome message so that it has a better subject and gets sent after a user has been accepted - fixed problem with downgrading to SMTP and still thinking that it is okay to send the SIZE command to the destination - fixed problem where system would come to a stop because of an illegal command was entered in a given state - fixed problem accessing members that were weirdly cnamed. In the process, found problems with the MX code that were causing UAEs and fixed them. - fixed problem causing machine to stop accepting connections after a while - fixed problems with the add, modify, and delete buttons being disabled at improper times in the user dialog - fixed reporting that would make it look like name requests were going to the smart host and not the name server. - fixed problem with hitting limits for auto-responders - fixed problem with aliases to ars and ls' where the user type wouldn't be converted to the new type - fixed problem with network code and accepting connections; was not cleaning up properly and would result in a random socket closing - fixed problem where mailing lists and auto-responders occuring after forwarded types would not be reported in some of the list - fixed problem with adding more than one mailing lists and having the add users dialog seem to go into a big tizzy - fixed problem with not being able to select a proper footer for a mailing list because the configuration dialog would not enable the filename field - fixed problem of manipulating large headers in file by imposing a 50 recepient limit on outgoing messages, rest of message send afterwards - fixed problem with list expansion being reported as held message - fixed problem with new socket taking place of old socket for outgoing mail and the states were getting confused - fixed problem where footer was acting like a header for mailing lists - fixed problem with the installation routine where the date for the winsmtp.exe file wasn't being set to the current installation date - fixed problem with edit mailing list members dialog when there are no members, disables Add button if there is no address Release 1.05 ------------ - corrected version of openc.dll in archive. Caused problems in the Users dialog because it access a function that is in the new openc.dll - added ability to specify the subject for the rmail program - added a flag so that the check everytime the daemon is started can be disable. Mainly for systems like NT which have partialy qualified names. - added ESMTP support for the system with the SMTP base protocols - added support for the ESMTP SIZE command - added support for mailbox files that were in TRUE UNIX style, that is where each line ended with a LF - added proper APOP support for POP3 so that clients can send password in an encrypted form - added English equivalents to the WinSock errors. - added an option to force the daemon to try and initiate connections with remote systems in ESMTP mode, even if the signon text from the remote server does not mention the ESMTP greeting text - added support for a NULL mailbox file... a drainage hole - added support for the forwarding of mail to remote sites - added the ability to specify aliases for the inbound and outbound references to a node. Useful for firewalls. - added code to handle the auto responding of messages from users. - added code to allow easy installation over existing installation without getting rid of information from the old configuration file - added registration forms to put information in and send in - added mailing list support for the system, open/closed lists - reoriganized the registration part of the system, to make it easier to use and easier to register - added limits for forwarding/auto-responders/mailing lists - made readme.txt file uncompressed so users can read it if they have problems decoding the rest - changed the password length range to between 3 and 16 characters - fixed problem with the POP3 server not sending the +OK before logging off - fixed the tabbing order within the dialogs - fixed a problem where some users would not be able to receive mail because the daemon would be unable to start receiving the file - fixed problem with the proper syntax not bing checked when receiving a MAIL FROM or RCPT TO command from a remote site. - fixed a problem with the System Information dialog where the warning dialog would not appear if some entries were changed - fixed the length of the entries in the System Information dialog so that the buffers cannot be overflowed - fixed a problem where a UAE would occur sometimes when multiple connections appeared from remote hosts. Had to do with a linked list for asynchronous requests not being linked backwards properly. - fixed small problem with the validation of fields in the user dialog - fixed and generalized the checking for abnormal number of unliscenced users - fixed problem with parsing of addresses while transfering files. - fixed announcement that password is invalid when using a NULL mailbox. - fixed problem with the reporting of data to the log files. may have corrupted other memory in the system - fixed problem with naming of mailboxes and configuration files in the user dialog. - fixed problem with multiple to: addresses where any message past the first was not being sent because the pointer was already at the end of the file. - fixed problems with password for users not being handled properly, and disabled the visibility of the passwords. - fixed problems when an item was getting retried and it was bounced in the middle of a retry - fixed bug with early expiry of program; problem with interface to timing functions - fixed problem with installation of files to a new created directory Release 1.04 ------------ Registered Version ------------------ - added way to allow users to register, and introduced items that can only be accessed in the registered versions - added button so that the root can bounce a message from the 'retries' dialog - added ability to specify the retry level that a given node will start at - added registration information screen Shareware Version ----------------- - added check so that all items for the smarthost wait until the end of the process. - added new mode to the wrmail program to force it to treat the data sent to the program as an encapsulated file. - added ability to change the default times for the incoming messages, outgoing messages, and the connection times. - added a dynamic titlebar to allow for displaying of the number of connections - added icon to the WRMAIL program that is displayed when program is active and the 'ShowActivity' flag is on - added more complete error messages while sending and receiving files - added more information about errors when sending files - added better reporting of errors when MX records are concerned - added identification of the mailer in the messages trasmitted - added list of beta testers to the about box - added limitation force to the program startup so the program expires after 30 days - moved strings that are language dependant to the resource table - changed connection dialog box to handle more data - fixed code used to send files so that it makes sure it allows the other nodes to run, had small blocking problem. - fixed code so that it properly exits when the user forces a close - fixed problem with verify causing a GPF due to suballocator/allocator conflict - fixed outgoing messages so only one copy of the message is stored, besides in any local mailboxes - fixed problem with wrmail which would not detect bad files early enough, so that the data and the header would get confused. - fixed problem with POP3 password verification and aliased passwords, where the fully resolved alias would not be copied over with the NULL character. - fixed problem that occured if you used TELNET to try and access the server and entered data after the HELO command - fixed problem with routing table that does not have any entries - fixed problem that occured if a file was bounced and then the next item would not get sent and be deleted instead - fixed code so that the retry buffer is checked after the main outgoing files have been sent, else if always outgoing files, no retries would have occured - fixed problem that occured if there was a problem resolving a given address and one or more entries has already been marked for the smarthost - fixed problem with the resolution of the MX records; would sometimes cause messages to be deleted. - fixed problem where the selection in the routing listbox was not being set properly - fixed problem with the number of POP3 sessions being limited but not decremented, caused exhausted system resources - fixed false error reporting when part of a message is sent and part isn't. was checking for 'To:' and reporting an error if we found 'to:' - fixed a bug with some of the debug code that would cause the POP3 server to not accept connections in certain cases Release 1.03 ------------ Registered Version ------------------ - retrying of messages from the retry dialog. - added the ability to specify different modes of communication with the smart host and outside world - added downgrading of MX records to look for MX records of subnets. If a user was looking for foo.bar.net and coult not find it because it was hidden, the system can optionally look for the subnets (i.e. see if there is a mail server called bar.net with a MX record) Shareware --------- - added memory suballocation to reduce the needs of the system - added the ability to send to other hosts other than the smarthost - added use of mx records to access remote mail servers - added the ability to see how many messages are pending for each node - added the ability to specify the way to connect up with other hosts, and a useful dialog to help organize and keep track of those elements. - added the IP address into the received line to make sure that a postmaster can trace back for illegal hosts - added the ability to specify an IP number as the host in the incoming or outgoing address fields - enhanced buffering of the reception of the message (8K buffer) - enhanced displaying of default data in the system dialog - enhanced outgoing process to qualify names before sending - automatically position and highlight the first text field in the users dialog - automatically seed the mailbox field of the users dialog when a user record is selected - fixed users dialog so that the hot keys don't collide - fixed problem with not recognizing multiple arguments for the POP3 server as in 'TOP 1 4' - fixed problem with accessing mailboxes through aliases using POP3 - fixed problem where bounced messages were not including the bulk of the message do to a backwards assignment - fixed helo handshake for systems that do not return the host name on the response line after the helo message - fixed helo handshake so that we can talk to a system running ESMTP without waiting forever - fixed so that if the destination for an item is already on the retry list, it won't try and send it. - fixed small bug in the MX code that deleted an old connection and then reused the connection before the connection could be severed. The network subsystem thought the connection was closing and had problems with the new connection. - fixed outgoing mail process so that if a node is marked as inactive, any new items are not tried once before being sent to the retry queue - fixed the reporting of the connection phase to report the IP number of the connection and the IP number that the name registered to the connection is froml. - fixed problem with the router where the offset into the message envelope was not having the buffer allocated at 2n, but at n instead. This only caused a problem when the base memory limit was exceeded. - fixed initial window state so that if it is to be shown as minimized, it overrides any other settings. Release 1.02 ------------ General - added interface dialogs so that the users and the options are configurable within the daemon. Limitation is that the program must be started for the options to take effect - added lots of error messages throughout the code so that the user can better tell the reason why the daemon was unable to start. - added status information display in the main window - added code to ensure that Subject, To, From, and Date are included in every message header - added about box - added the encryption of passwords - added code to make sure that there are 'root' and 'postmaster' users whenever started up - added the 'HELP' command for interactive use - improved interface with the socket interface so that the network code yields properly, allowing another to run more effectively. Otherwise it would get stuck in a loop while writing data and waiting for the other application to read the data, but never having the chance to. - improved the retrying of files and the expiration and bouncing of those files - improved the look of the message that allows us to bounce messages to a user - made sure that aliases can only be applied towards the local machine - as there is now meaningful information in the main window, the size of the window as well as the iconic state of the window is preserved POP3 - fixed off by one error in the mailbox allocation table - fixed error with over writing the file buffers on reads and not reading in the proper amount of data on the reads through the buffer when the individual message was greater than 8K. - fixed problem with the header buffer being too small Smtp - added ability to validate the host name specified when the connection is initiated by the remote side - added option so that a forwarded message will be thought of as being sent okay (needed for old version of WinVN) - added an option (System | Retries) to allow a user to look and find out what the current retries being done by the system are - fixed problem with smtp and router that would cause one file of two that were possibly open to close the other one when it closed - fixed problem with connection attempts that would start and close before they would have a chance to complete WRmail - fixed default logfile to 'rmaillog.txt' instead of 'maillog.txt' due to conflicts with WinSmtp's logfile Release 1.01 ------------ - added POP3 server support in daemon - added automatic determination of the node name and the IP number - added support for the matching of literal names i.e.[a.b.c.d] - added proper check after 1 minute to see if connection with host couldn't be established - added flexible support for the EXPN and VRFY commands - added the -s and -f options to the command line for wrmail - improved bounces from the daemon so that the envelope is omitted in the copied message. - improved the bouncing of messages to the originating user and to the root. - improved recognition of ", (, ), <, and > in messages, especially with embedded commas - fixed code so if mailbox is locked, item is queued to be accessed again at a later date (needed for POP3 support) - fixed bug where whitespace in the line after the end of a message header would not be compressed from CR LF WS* CR LF to CR LF CR LF. - fixed retries so that they retry and expire properly - fixed logfile sharing when it is opened for the first time. - fixed the retry alogrithm so that if the daemon has problems with getting in touch with a specific node for a specific message, no more messages are sent to the node until the first one clears. - fixed a UAE that occured when a message that was being retried finally succeeded. - fixed problem where the reception of messags would not work on some systems - fixed problem that arose when the client smtp sent the quit command and immediately closed - fixed code so that when outgoing messages are processed, the names in the header are validated, but not in the incoming or bounced messages Release 1.00 ------------ Initial release.