Changes ======= (The Initials are explained at the end of the text) V2.0.6.0 - New: NNTP/SMTP-server: You can append aliases to NNTP- and SMTP- servernames now, too. So it is possible to use the same server with different settings. For example: "smtp.bsp.de/Udo", "smtp.bsp.de/Klaus" and "smtp.bsp.de" means all "smtp.bsp.de", but have their own settings. {TGL} - New: hs2: - filedelete and filecopy supports wildcards ("?", "*") - New command filemove(Source, Destination) moves files. Wildcards in the Destination for FileCopy and FileMove are forbidden, when the source-parameter contains wildcards the destination is always interpreted as a directory.. {JH} - Chg: When changing User/Password for servers or $-Entries the current username is used as default for input of username. For DUN-entries without current user the default is the username of the DUN-configuration of Windows. {TGL/GG} - Chg: Little source-changes to allow compiling Hamster with Delphi 7 (tScript, Compiler.Inc) {NBS} - Bugfix: Newsgroups: A missing Local.Max-entry in a data.ini when data.dat and data.idx were filled caused in a corrupted data.dat after appending new articles. {TGL} - Bugfix: Decoding of an empty MIME-value (Example: =?utf-8?q??=) caused access violations and could crash hamster when filtering incoming mails. {TGL} - Bugfix: Dialog "Directories": Switching from mail- to news-directories could cause exceptions and switching to the trash with very much entries took very long. {AP2} - Bugfix: IMAP: - Internal changes for (un)subscribing to prevent problems when multiple threads are working. So Hamster and Mozilla should work better together now. {HSR/AP2} - Wrong result of LSUB corrected. {HSR} - Bugfix: Mailfilter: AddAccounts didn't work correctly for fields with multiple adresses. {AP2} - Bugfix: Newsfilter: Score values less than -9999 or greater than +9999 caused an error and the filter-line wasn't used at all, now the value is corrected and only a warning appears in the log. {TGL} - Bugfix: Stop all Threads worked incorrectly with incoming server-threads, so sending mails could be delayed very long. {HSR} - Bugfix: Dialog Kill/Scorefile Mail/News: The promised (V2.0.5.5) toolbar above the scorefile is now visible and working. - Bugfix: hs2: Decodeqp and decodebase64 didn't work at all. {AP2} - Bugfix: Dialog newsgroup-settings: The first available article on the server couldn't be chosen to be reloaded in the next pull. {AP2} - Bugfix: NNTP-server: Groupflag "g" for "Gateway" is a speciality of Hamster, so that newsclients like Gravity ignored such a group in the grouplist, so these groups are now labeled as "m" (moderated) when a NNTP-clients asks the server for the grouplist. {TGL} V2.0.5.5 - New: DUN-Network: If username and passwort are empty, Hamster looks into the DUN-Configuration for them. {GG} - New: Dialog Kill/Scorefile Mail/News: {TGL} - Toolbar above scorefile shows current line and allows to jump to a specific line number and to search in the scorefile. - Enter on an entry is now equal to a double-click with the mouse. - New: Dialog "Automatisation": Reaction (delete or change to comment) for outdated mail- and news-score-file-entries is now available from here. {TGL} - New: hs2: HamAddGroup has now four additional and optional parameters: HamAddGroup(groupname [, description, type, moderator, postserver]). If the group already exists the command has no effect. {TGL} - Chg: Mail-score-file: If an postto rule matches the score of the mail is available in X-Hamster-Info now: "xx (mail2news)" instead of "(none- mail2news)" like before. {TGL} - Bugfix: Mailfilter: {TGL} - Filtering with the values of headers (From: $To$) didn't work, Hamster searched for the name of the header instead the value of it. - AddAccounts didn't work properly, if the tested headers contained multiple mail-addresses (e.g.: "To: nr1@dom.ain,nr2@dom.ain") - Bugfix: Dialog "Directories": {TGL} - When mails/news were changed from outside the columns kept the old value until the directory was changed. - Pressing ESC hided the preview only for a moment. - Using Hotkeys (Shift+Del) allowed killing of mail in IMAP-folders. - When an error occured on previewing a message the file itself was locked for any other program. - When changing preview-attributes (show all/specific headers etc) the preview was flickering. - When howering a link in the preview the postition of the activated hint was wrong. - Bugfix: IMAP: - Settings flags for multiple mails didn't work correctly, so the values of status.dat (count of unreads) could be corrupted. {AP2} V2.0.5.1 - Bugfix: Decoding of mime-coded header-lines with charset utf-7 and with an "+" in the coded text caused heavy errors when pulling news or mails and scoring like ~subject. {TGL} - Bugfix: News-Scorefile: Error since 2.0.5.0 - the effect of the "?" at the beginning of a score-line was inverted. {HR} - Bugfix: Dialog "Directories": Different actions like the renaming of the extension of a message could cause error-lines in the log. {TGL} - Bugfix: Adding new News-Pull: If the group-list was updated before the dialog itself was opened, Hamster was send into background after closing the dialog. {TGL} V2.0.5.0 - New: hs2: - Function Shell(filename, parameter, mode, path, operation) starts files/documents with registered extensions. Only the first parameter filename is required. Mode allows the same values like the mode- parameter in the execute-funktion. An operation is something like open, print, explore etc and depends on the file-type. {TGL} - The result of the function DecodeToLocalCharset(text, charset) is the text converted from charset to local charset. {TGL} - Result of HamMainWindow( 2 ) and HamMessage ( 6, 2 ) is 1 if the main window is active 0 either. {TGL} - Result of HamTrayIcon( 2 ) and HamMessage ( 7, 2 ) is 1 if the trayicon is active 0 either. {TGL} - New: Statusline/Trayicon-hint-variables %UT shows the uptime of Hamster formatted as hours:minutes:seconds. {TGL} - New: Mail/News-score-file: {TGL} - To simplify numeric comparations you can use "KB" for kilobyte and "MB" for megabyte after the numeber: "Bytes: %>20kb" is equal to "Bytes: %>20480" and %<=1MB is equal to %<=1048576 - When using '' instead of "" the string-pattern is case-sensitive. - New: Mail-score-file: Warnings are logged for lines with a default-field beginning with "any-", "all-", "any_" or "all_" which don't end with Sender(s) or recipient(s) to avoid misspelling. {TGL} - Chg: Actions: The documentation and the implementation for the action for incoming postings throug NNTP differed, so both is changed, from this version on the action is saved as "news.in.nntp.*" instead of "news.nntp.*". {TGL} - Chg: Conversions between charsets / cnv-files: {TGL} - Use new entry hamster.ini [Directories] Charsets= to move cnv-files into a subdirectory of your choice. - New pattern for cnv-files: cs_unicode_CHARSET.cnv for the conversion Unicode to Charset and cs_CHARSET1_CHARSET2.cnv for conversion from Charset1 to Charset2. - Chg: News-score-file: Parsing of file changed to the way of parsing mail- score-file, so string-patterns must be included in "" and files, which take advantage of some tolerances of the old parser may cause some warnings/errors now. {TGL} - Bugfix: hs2: Expressions using parentheses could be miscalculate. {SS} - Bugfix: Mail-score-file: "All-senders:" und "all-recipients:" didn't work. {TGL} - Bugfix: Mail/News-score-file: If a string-pattern started with "%" it was misinterpreted as a numeric expression. {TGL} - Bugfix: POP3-client: When the server reported the size of a mail as 0 this caused an error and mail was unloadable. {HR} - Bugfix: Dialog "Edit Dirs": - The subject-column showed only the first line of a multi-line-subject. - A non-existing mail-directory could cause errors, now Hamster will create it automatically if missing. {TGL} - When switching between mail- and news-directories sometimes the entries didn't fit to the column-captions. {TGL} - If there was no entry [EditDirs] ColWidths=... in hamster.ini and the dialog was opened Hamster crashed immediately. {TGL} - Bugfix: hs2: Decodeqp and decodebase64 didn't work. {TGL} - Bugfix: Status-line/Trayicon-hint-Variables %UH and %UD showed wrong values. {TGL} - Bugfix: NNTP-server: {MG} - Command LIST EXTENSIONS was not compatible to NNTP-Draft of IETF (Version 20). - Server-answers in case of TLS-errors wasn't in accordance with current NNTP-Draft. - Bugfix: IMAP-server: - SEARCH-command didn't work with Client-SW Mulberry {MG} - Error in SEARCH-command when searching for flag SEEN {MG} - Command LIST reports now, that the creation of subdirs is forbidden for folder INBOX. ("\NOINFERIORS") {AP1} - Saving flags had errors {HS} - Many errors when using message-sequence-Sets fixed. {MG} - An empty boundary-definition in a multipart-message caused a run-time-error. {MG} V2.0.4.0 - New: Extended support for MIME-header-decoding. Hamster uses now special translation files to convert utf7/8 to local codepage and other codepages in local codepage. The local codepage is set in the general configuration dialog on the last tab. {JW/TGL} - New: Mail-scorefile: - Pseudo-header "Age:" contains the age in days calculated from system date and DATE-Header of mail. {TGL} - Pseudo-header "All-Senders" concats all sender-fields before testing instead of testing the sender-fields in a loop like Any-Sender does. {TGL} - Pseudo-header "All-Recipients" concats all recipient-fields before testing instead of testing the recipient-fields in a loop like Any-Recipient does. {TGL} - New: Action atEveryHour with parameters hour and day of week is executed every hour. The action waits until Hamster is idle. {TGL} - New: local IMAP-server: SEARCH-command completly reprogrammed: {MG} - much better performance - Logical OR is supported to combine search-patterns - paranthesis are supported - support for different codepages - New: Uptime of Hamster (based on system time) can be shown in bottomline or Trayicon-hint and used by hs2-scripts. hamster.ini [main] BottomlineFormat=... or HintFormat=...: To include uptime use %US, %UM, %UH, %UD for uptime in seconds/minutes/hours/days. {JW/TGL} - New: password-list can be reloaded by menuitem "File / Reload passwords". This is useful, if you have entered a wrong password when hamster asked for. {HS} - New: hs2 - Function utf7toucs16 converts utf7 into 16-bit-unicode {JW} - Function utf8toucs32 konvertiert utf8 into 32-bit-unicode {JW} - Function decodebase64 decodes base64-coded strings {JW} - Function decodeqp decodes quoted-printable-coded strings {JW} - Function Testmailfilterline(mail-filter-line) logs the explanation how Hamster would interprete the line in the mail-scorefile. {TGL} - HamPassReload reloads the password-list. {HS} - Use GetUptimeSecs, GetUptimeMins, GetUptimeHours or GetUptimeDays to get the uptime of Hamster in seconds/minutes/hours/days. {JW} - Chg: After installing Hamster 2.0.3.0 all users had automatically the group-settings for mailboxtype and newsgroups-access. In this version a missing setting for group-override is handled different: If group and user-setting is the same, override is deactivated, if group and user-settings differs, override is activated. {TGL} - Chg: Rebuilding of global group list is much faster than before, so if the list is not up-to-date, opening "Add news-pull"-dialog auto- matically rebuilds the list instead of asking for. {AS2} - Chg: Logging of logins. Failed logins as warning, successful logins as detail-information. {JW} - Bugfix: Mail-scorefile: Pseudo-header TOPONLY didn't work if "*" was used for the default field. {MR} - Bugfix: hs2: - AtAdd with time mode 2 caused errors if the internal calculation of the next activation-time resulted values greater than 23:59. {TGL} - A paranthesis in a comment in the definition of a sub could be mis- interpreted and cause an error. {TGL} - Bugfix: local IMAP-server: - Saving of mailbox-state failed sometimes. {HS} - Parsing strings failed when string contained escaped quotation marks. {MG} - "Tagged Response" was logged twice. {MG} - SEARCH had some minor bugs {MG} - Bugfix: hamster.ini [Directories]: UNC-pathes didn't work. {TGL} - Bugfix: State for mails/postings to send was sometimes out of date. {HS} - Bugfix: Dialog "Local user and password": - Add Group didn't work correctly. {TGL} - Add user: Missing check for "+" as part of the name. {TGL} - Bugfix: POP3-server: Implementation of Digest-MD5 was incomplete and didn't work. {JW} - Bugfix: Dialog "Edit dirs": If last saved path didn't exist anymore errors occured in the log. {TGL} - Bugfix: Dialogs for news-configuration: - Some input fields of the dialog when creating a new NNTP-server had invalid values. {TGL} - Add new pull: Incorrect regexp adds the error message in the result list. Until this version the error message could be subscribed! {JH/TGL} V2.0.3.0 (10/16/2003) - New: Support for DIGEST-MD5-Authentification for SMTP- and POP3-clients and for local SMTP-,POP3-,IMAP- and RECO- server. {JW,OZ} - New: Usergroups/Accounts: Most account/user-specific settings can be set to "default", so you can change user-settings just by changing the user-group-default-value(s). {TGL} - New: NNTP-server: - Maximum count fo threads changable in the dialog now. {TGL} - Specific settings for special usage like UUCP: {TGL} - NNTP-server reducable to "only grouplist" or "pseudo-server", so that e.g. pull-jobs for reduced servers are automatically thrown away. - News.out can be configured for every NNTP-server. If not identical to the main news.out the msg-files in this directory are not posted by hamster. - New button for editing Grouplist-file. - New: local NNTP-server: Date-header can be automatically generated if missing. {JW} - New: POP3-server: Used authentifcation is configured in the dialog now, if not "none" is used, the old prefixes like AUTH:Password are ignored. (Server.ini [POP3] ForcedAuthMech=...) {JW/OL} - New: Mailfilter-notifies: The subject can contain the original From and Subject now, changable in Mail-killfile-log-Dialog or hamster.ini [Setup] mail.infomail.addheadertosubject=1 {JW} - New: Mail-killfile-log-dialog: New pages to change settings and to edit the mailfilter-file. {TGL} - New: Mail-scorefile: - Pseudo-header TOPONLY is normally like TOP, but contains not more lines than defined in Toplines-setting (Default: 20) {TGL} - Pseudo-header HEADER contains full header. {TGL} - "unless" between action and default-field inverts the result, that means the line will word, if the values don't match. {MR/TGL} - Neu: News-scorefile: - "unless" => see above. {JH} - New: hs2 - AtAdd: Last parameter Immediate(boolean) is replaced by parameter TimeMode with following allowed values: 0=First Run after first interval (like Immediate=false) 1=First Run without delay (like Immediate=true) 2=Runs only when time is exactly firsttime + x * everyminute. (New!) {TGL} - HamDialogMailKillfileLog(x) controls the mail-killfile-log-dialog. x=1 to open, x=0 to close, x=2 to check state. Identical to Message(17, x) {TGL} - Change: Mail- and news-scorefile: {TGL} - #!load is replaced with #!include, for the next versions both variants will be supported, but #!load generates a warning in the log. - If "Include"-depth is greater than 5, the further loading is cancelled and is shown as an error in the log. - Change: NNTP-server: - if server-infos are normally not automatically checked on every pull, they are checked for servers without group-list now or if one of the options "reload groups" or "reload descriptions" is activated. {TGL} - When hamster.ini [Setup] local.nntp.feedjunk=1 is used, articles with- out From are accepted when feeding, too. {JW} - Change: POP3-Server: If global POP3-setting LeaveOnServer was activated, the POP3-server-specific settings was ignored. Now the POP3-server-specific option overrules the global setting, if set to 1 or 0. {TGL} - Change: The automatic search for deletable mails in the trash is noticable faster than in prior versions. {TGL} - Fix: News-killfile-log: The Score-test showed only line-number, but not the filter-lines itself. {TGL} - Fix: Main-Dialog: Online-menu-entries containing invalid server-names are corrected automatically when started, the stripped server-names are logged as warnings. {TGL} - Fix: Dialog "Directories": If the last used path was invalid this caused some problems when opening dialog. {TGL} - Fix: CRAM-SHA1-Authentification didn't work for local POP3- and IMAP- server. {AS2} - Fix: When using context-menuitem "Copy to clipboard" the result in the clipboard was a little bit broken. {TGL} - Internal: cAccount completly new structured (Object CfgAccounts, used for usergroups and users/accounts) - Internal: Dialog "Directories": Count of mails in the directories restruc- tured for better performance. {TGL} V2.0.2.2 (08/10/2003) - New: Actions: When using script lines the parameters paramstr(x) works now like when using a script. {TGL} - New: Dialog "Directories": New column "Score" allows sorting for score of mails. Notifies of ignore/kills get the score-value of the original Mail. {TGL} - New: Mailfilt.hst: - New command Log(...) logs ignored or deleted mails, logoff (default) deactivated logging. The logged entries are available in the dialog "Settings / Mail: Killfile-Log" and allows to retrieve or delete the mail on next connect to the POP3-server. The parameter can be "*" for global list or a user-account. {PW} - New command "#!load filename" allows to include files. {HS} - To compare numeric values you can not only use %>value, %=value, %<=value and %<>value, too. {TGL} - Use "_" an the end of line to combine it with the following line. Trailing spaces/tabs after the "_" in the first line and spaces/tabs at the beginning of the second line are trimmed automatically. {TGL} - Change: Dialog "Directories": Trash is always sorted for filename descending for better performance. {TGL} - Change: Sorting of additional menu items (using script-command #!menu) ignores "&" now. The log contains now the list of menu items and the belonging scripts. {TGL} - Change: Renaming of "rebuild global lists" to "rebuild (global) group list". {TGL} - Change: Mailfilt.hst: Changed sequence in notify-mails: The most important headers are now beforte the applying score-lines. The listed filter-lines are now the original lines and not created from the rule itself like before. {TGL} - Change: Filtering mails: POP3-Command "TOP" is only used if the mail is bigger than the expected size of the TOP-result. This avoids some unnecessary traffic when filtering mails. {JH} - Fix: Dialog "Directories": Drag'n'Drop to the trash works again. {TGL} - Fix: Actions: When using script lines instead of script and/or program the flag for "wait for end" wasn't saved. {TGL} - Fix: Dialog "Automatisation": Edit-Button for script works now for a script with full path, too. {TGL} - Fix: Overview-entry for XRef was invalid referring to RFC2980. {OZ} - Fix: NNTP-Client: If there was an acoount nntpdefault" without correct password "*", no account was accessable. {TGL} V2.0.2.1 (04/18/2003) - Fix: Scripts containing only #10 instead of #13#10 and with no #10 as last char caused Hamster to freeze on start. {HS} - Fix: Mailfilt.hst: "notifyoff" didn't work. {TGL} - Fix: Recreating \server\alldescs.txt (File/Rebuild global lists) didn't work. the new file didn't contain any line feeds, so choosing new newspull didn't work, too. {TGL} - Fix: Runtime-Error 217 or Crash when starting Hamster was caused by a test-routine, which wasn't deactivated before release. This fix was already done in the second upload from 2.0.2.0. {HS+ V2.0.2.0 (04/16/2003) - Mailfilt.hst {TGL} - New: Scoring: Use SetScore(number) ... or AddScore(number) ... to set or change the current score. Use the virtual header-field "Score" to react on the current score value. Applied scoring-rules are written into the new mail-header "X-Header-Scoring" or are shown in the notify-mail if the mail is ignored or deleted. - New: Virtual header-field "TOP:" allows rules to test the first lines of the body of the mail (see setting "toplines"). - Chg: notify/notifyoff/default/adddefault allows rules like add/set/..., too. - Fix: filter-rules in notify had "lost" the ":" behind the default-field. - Fix: Dialog "Edit Dirs": When some mail were bigger than 1 MB, the sorting for KB caused an runtime-error in the log. {TGL} V2.0.1.3 (04/03/2003) - Mailfilt.hst {TGL} - New: In notify-mails and for the header X-Hamster-Account-Reason the used filter-lines includes line-number and comment, too. - Chg: Text-patters MUST included in "" now. - Chg: Lines, which can't be identified as comment, section or filter-rule causes errors in the logfile now. - Fix: Default-field and additional headers in pattern can contains now all ascii-chars without space and ":". - Fix: When there were more than one line with an expire-expression, all lines without the first were logged as invalid. - Fix: The analysis of the filter-lines didn't check, if it ends with invalid states like pattern without correct end-char. - Fix: AddAccounts without default-field or with patterns didn't cause an error. - Fix: Add/delete/postto etc with default-field but no pattern didn't cause an error. V2.0.1.2 (03/31/2003) - Chg: hs2: The message-functions (new in 2.0.1.0) collides with the names of the functions in hmessage.hsm. For better compatibility they are renamed to Art (Article): ArtAlloc, ... {TGL} - Chg: Dialog "Directories": {TGL} Del: Ask before and move to trash, if trash active Ctrl+Del: No Confirmation and move to trash, if trash active Shift+Del: Ask before and delete file! Ctrl+Shift+Del: No Confirmation and delete file! - Fix: Actions: Since 2.0.1.0 actions with sub-actions (account-specific) didn't work correctly (mail.in, mail.internal, ...) {TGL} - Fix: Some detail-messages were only displayed in main log, if external logfile logged detail-messages, too. {TGL} - Fix: If Trash-directory was defined under groups- or server-directory the check-for-obsolete-dirs-function reports it as obsolete. {TGL} - Fix: Mailfilt.hst: Set/add-rules with a IMAP-subdirectory didn't work, if the subdirectory contained spaces. {TGL} !WARNING! To fix the error the complete analysis of the mail-filter- lines is programmed from scratch, new errors are not impossible. V2.0.1.1 (03/28/2003) - New: Dialog "Automatisation": Automatic purge of old files in the trash-directory. Default: When older than 28 days, value 0 deactivates the purge. (hamster.ini [EditDirs] EmptyTrashAfterXDays=...) {TGL} - Fix: Local NNTP-server: {TGL} - Result of command HEAD didn't end with CRLF as necesssary. - Result of commands BODY and ARTICLE didn't append CRLF if missing like Hamster before 2.0.1.0. - Fix: Deactivating of trash-bin didn't deactivate trash-function. {TGL} V2.0.1.0 () - New: Online-Menu: New mneu items "All NNTP-server" and "All POP3- server". {TGL} - New: Dialog "Edit Dirs": If Trash is not deactivated (hamster.ini [EditDirs] ShowTrash=0) deleted mails and postings are moved into it. Only deleting mails and postings in the trash will delete them really. The Trash is realized as directory Hamster\trash. To move the trash- directory use hamster.ini [directories] trash=... {TGL} - New: actions: {TGL} - An action has now three possibilities: Running an external program, an existing script or directly some script lines. - New Action news.nntp.in is executed for every incoming posting when retrieving news by NNTP. Warning: usage with for example Korrnews can slow down the download noticable. - New actions DUN.BeforeDial, DUN.DialFailed, DUN.Connected und DUN.HangUp - New Action SearchMID is executed, when Hamster is asked by a client for an unavailable message-ID. - New: hs2: - pre-processor-command #!menu:menuitem=caption extends the menu in the Hamster main window. Supported entries for "menuitem": file, config, online, local and help. Example: #!menu:online=Get/Send Mails and postings adds the online-menu with a menuitems called "Get/Send Mails and postings" which runs the Script including the line above. The script has to exist in the script-path or a subdirectory of it. {TGL} - The parameter of a command (print, If, ...) don't need paranthesis anymore: print "Hello!" is adequate to print ( "Hello!" ) {TGL} - If/else/endif extended to If/elseif/elseif/.../else/endif. {TGL} - HamVersion has now an optional parameter. 0 (Default) results the version like before, 1 results the product-name ("Classic Hamster"), 2 the maintainer and his mailaddress, 3 the homepage of the version and 4 the comments-field. This function will be supported in future Hamster playground and Hamster.fr, too. {TGL} - New function to work with postings/mails: {JH} - $Msg = MsgAlloc( [$Text] ): Creates a Msg-object - MsgFree ( $Msg ): Release the Msg-object - $Text = MsgGetText( $Msg ): Get full text (header+body) - $ok = MsgSetText( $Msg, $Text ): Set full text - $Hdrs = MsgGetHeaders( $Msg ): Get only header - $ok = MsgSetHeaders( $Msg, $Hdrs ): Set header - $Body = MsgGetBody( $Msg ): Get only body - $ok = MsgSetBody( $Msg, $Body ): Set body - $HdrVal = MsgGetHeader( $Msg, $HdrNam [, $Separate] ): Get distinct header, if last parameter is 1 (default=0), the line feeds of an multi-line header are in the result and not deleted. - $ok = MsgAddHeader( $Msg, $HdrNam, $HdrVal ): Add new headerline. Hint: An existing header is not changed or overwritten, in this case there are two header with the same headername after that! - $ok = MsgSetHeader( $Msg, $HdrNam, $HdrVal [, $XHdrNam] ): Set or change a distinct header. if the header existed before and $XHdrNam is set, the old value of $HdrNam is saved in the new header $XHdrNam. If $XHdrNam existed before, too, his old value is lost. - $ok = MsgDelHeader( $Msg, $HdrName ): Delete distinct header. - $exists = MsgHeaderExists ( $Msg, $HdrName ): Results 1, if one or more headerlines with this name exist, otherwise 0. - $ok = MsgLoad ( $Msg, $Filename ): Loads message/mail $filename. Result values: 0=ok, -1=file doesn't exists, -2=other error. - $ok = MsgSave ( $Msg, $Filename ): Saves the message into the file $filename, Result values: 0=ok, -2=error. - New: OLE: Funktion "hs2AsyncCommand(Command: String): Integer" allows to exec any hs2-script lines. {TGL} - New: Sent mails: Mailout.log now contains the values of the envelope (MAIL FROM and RCPT TO) {AH/TGL} - New: filter mails: - Extended Add/Set-rules for IMAP-folder: add/set(IMAP-folder\subfolder\subfolder:\Flag1\Flag2...) ... instead of only add/set(IMAP-folder) ... {HS} - For better tracing of mail filters loaded mails now contains the header "X-Hamster-Account-Reason:" and/or "X-Hamster-PostTo-Reason:" containing appropriate matching filter-rules. {TGL} - New: IMAP: - IDLE (RFC 2177) (Including some bugfixes for getting Mail while staying in the mailbox) (HSR) - Literal+ (RFC 2088) (HSR) - AUTH=DIGEST-MD5 (JW) - ID (RFC 2971) (JW) - NC-Brain-Bug (Cyrus-Source) (X-NETSCAPE) (Default: Off) - Chg: IMAP: - For better RFC3501-compatibility connections without SASL/SSL are deactivated by default and when activating IMAP without SASL/SSL a warning is logged. - LOGINDISALBED now everytime declared if IMAP_LoginDISABLED true. (HSR) - POP3-Server can't access IMAP-Mailboxes anymore (FIX!) (HSR) - SELECT unselect now _before_ checing parameters (FIX!) (HSR) - Chg: local SMTP-Server: AUTH=LOGIN (Mozilla/NC) is now sended if LOGIN is defined anywhere in SASLAuthmechanisms. It should prevent Mozilla before 1.3 to not try to login. (HSR) - Chg: local NNTP-Server: Performance optimized for commands ARTICLE, HEAD and BODY. {AS2} - Chg: Recreating news-history: Performance optimized. {AS2} - Chg: SMTP-Client: Some SMTP-Servers supports TLS-connections but answersn the EHLO incorrect. When TLS-usage is chosen Hamster now always tries a TLS-connect. {PW} - Chg: Setting hamster.ini [setup] mail.SpaceAfterEnvelopeHeader is now obsolete. {TGL} - Chg: POP3-client: Special behaviour for former Telda-server was in objection to the RFC and is deactivated now. {JW} - Chg: If an Action deletes the temp-file (News.Preprocess, News.Gateway, news.in.nntp, mail.header und news.local), Hamster deletes the internal version, too. On news.preprocess the delivering Client gets the result "240 article deleted by news.preprocess". {TGL} - Chg: In the last versions Hamster used the result of TOP as header and the result auf RETR as Body of incoming mails. On some mailservers the TOP-command don't work correct, so Hamster will only uses TOP-header, if action MailHeader is used and the header was changed by the action. {TGL} - Chg: Some debug-infos when connecting to external servers can cause disturbing delays, so the checks for these infos are now only executed, when debug-info for save or visual log is activated. {JW} - Fix: Mailfilt.hst: {TGL} - When using an expire-expression directly followed by a remark, the remark was interpreted as an additional filter-pattern. - Expired entries are now removed when starting hamster and not only when date changes. - Fix: Hamster could only handle the first 32 defined DUN-connections. {TGL} - Fix: hs2: HamResetCounters didn't work when the correspondencing menu items were disabled by user. {TGL} - Fix: Newsserver/Info-Mail about new groups: When there were more than one new group at a time the info-mail showed only the first one. {TGL} - Bugfix: IMAP: - SEARCH (Charset!) (JW) - STORE FLAG (without parenthesis) (MG) - IPAccess: ReadOnly of IPAccess works now also for the local IMAP-Server - 8/7-Bit (JW) - MB-Create/Destroy were not defined for multi-tasking-access (HSR) - Folder-Create answers everytime "NO" (HB) - Rename should now give out a "NO" if it is selected by any other thread, and it should unselect itself (HSR) - If the Mailbox doesn't exist yet Hamster now creates the folder at the first login of this user. (HSR) - Hamster creates it also at MB.Create (HSR) - On "HasPOP3Mailbox" (internal) Hamster don't try to delete IMAP-Mailbox anymore (HSR) - Messages couldn't be stored in IMAP-MB (HSR) - After Expunge there were 'negative' counts of messages sometimes. (HSR) V2.0.0.1 (02/19/2003) - New: hs2: HamMailExchange has a second optional parameter "Mode": 0=Default=like before=POP3+SMTP, 1=Only POP3, 2=Only SMTP. {TGL} - New: Dialog "Directories": {TGL} - New Ini-setting hamster.ini [EditDirs] NoMailboxes=test1,test2,... allows to suppress chosen mailboxes and overrides the Mailboxes- settings, if same mailbox is used in both settings. - New Ini-setting hamster.ini [EditDirs] ShowIMAPSubDirs=1/0 decides, if all files of an IMAP-account are shown or only root directory. Default is 1 for all files. - New Ini-setting hamster.ini [EditDirs] ShowTrash=1/0 decides, if the trash is visible or not. Default is 1 (visible). - The ascpect ratio between file list and preview window is now saved automatically (hamster.ini [EditDirs] AspectListToPreview=x). - New: external POP3-server: if the server returns incorrect data for TOP-command, problems are caused with mail-filters and mail-header- action. To avoid this, the TOP-command can be disabled for a POP3-Server: server.ini [POP3] UseTOPCommand=1/0. If disabled (0) Hamster will always retrieve the complete mails before filtering. {JW/PW} - New: rejected/failed mails: {TGL} - For a better differentiation of succesful sent and failed mails the archive-message-id of faild mails begins with "failed." instead of "archive.". - Information mail contains now the rejecting SMTP-Server. - New: IMAP: If creating/deleting/renaming of mailbox-dirs fails this is logged now. {HS} - Chg: Main window: If copying full log or single log-lines into the clip- board the type (sys,war,err...) is inserted like in the log-files. {TGL} - Chg: Action preprocess: Is executed before checking existens of posting- body. {TGL} - Chg: Password for SSL-certificate is checked for invalid chars and rejected if found at least one. {JW} - Chg: If SSL-connect to external POP3-server fails, Hamster trys only connection-types configured for the server and not all possible like before. {JH/JW} - Chg: To make entries more uniform, the server-specific Timeout-entries are changed to [Setup] remote.timeout.command/connect instead of remotetimeoutcommand/connect. If Hamster finds old kind of entries but not new, the old are converted automatically. {TGL} - Chg: hs2: Command "int" didn't work correctly, an Int("Hallo") caused an error, now it returns 0 like documented. An additional second parameter allows to set a default-value, which is used, if the first parameter can't be converted to a number. If not set, the default-value is 0. {JH} - Chg: IMAP: TAGs are forced, but only relevant for Telnet-users. Some minor changes and bug-fixes. {HS} - Chg/Fix: Missing must-parameters caused strange errors, this is fixed now. Optional parameters can now be left empty: HamSendMailAuth ( "server", , , , , , 1 ) is allowed, because only the first parameter has to be set. {JH/TGL} - Fix: hs2: "ConstEnum" couldn't be used. {TGL} - Fix: hs2: If the result of execute(...) was to big an range-check-error was caused. Not a negative value is returned. {JW} - Fix: Insert-Command-buttons supports extended Varset, Const and ConstEnum when checking a module for variables. {TGL} - Fix: Mailrouter: The space after "MAIL FROM:" and "RCPT TO:" when sending mails is incorrect when following RFC 2821, so it can be suppressed with INI-Option hamster.ini [Setup] mail.SpaceAfterEnvelopeHeader=0 {GD} - Fix: Overview page of english help didn't work correctly. {JW} - Fix: Main window: Hiding of menu entries didn't work for killfile-dialog and submenu special files. {TGL} - Fix: POP3-Client supported SASL-command in AUTH-command although SSL was deactivated. {JW} - Fix: Entries in hamster.ini [Directories] caused problems under special circumstances. {JW} - Fix: Dialog "Directories": Splitter between list and preview was unreachable when dialog first opened. {TGL} - Fix: Counter for incoming and outcouming bytes caused error when greater than 2 GB, now the limit is increased to ca. 1.844.674.407.371.000.000 (int64) {HS}. - Fix: Mail-actions: When sending a mail simultaneous to local and external recipients, the false action-type could be triggered. {WJ} V2.0.0.0 (12/24/2002) ========================================================================== Most significant changes since last stable (1.3.23.4): * Direct support for SSL * New local ReCo-Server allows remote control * New local IMAP-Server for advanced mail-handling * Score-After-Load for advanced score possiblilities * Main window/dialogs: Advanced settings disabled by default, menu items can be disabled by configuration-dialog, many changes/extensions (like automatisation-dialog) Sorted list of major changes since last stable (1.3.23.4): - Visual - Main window: - STOP-Button for active threads - Insert-Button for hs2-Shell - List for waiting news-jobs (only visible if waiting jobs exist) - Configuration - General settings / Internal groups: Local groups can be created directly, new page for log-settings, menu items can be disabled - Local accounts: now alpha-sorted, Aliases and forwards are displayed in Edit- dialog - Edit newsgroup: - New type "Gateway" sends postings to chosen mail-address - Moderated groups sends postings to the moderator-mail-address, if set - Edit scripts/modules: Edit scripts/modules directly in the dialog, pathes can be changed from within the dialog - New dialog for mail/news-directories: Preview-function, messages/mails can be deleted, renamed, moved, copied..., many possiblilities to sort etc - New dialog automatisation: Enable/Disable automatic functions when hamster is started, edit actions, ... - New dialog for history - Tray-Icon: Changed reactions when clicked - Many changes/updates of several dialogs to support IMAP-server, ReCo-server and SSL (OpenSSL-DLLs are needed for SSL-usage!) - hamster.ini, New keys: - [Setup] mail.GateUseHamsterEnvelope, mail.flupforgate, local.nntp.feedjunk, FilterNewGroupsInfo, MaxUnknownGroupsInRe, Startup.OLEServer, COMServerName, MaxLocalXXXXServersPerIP (XXX=NNTP/POP3/SMTP/RECO), Log.IgnoreConnectionLost, local.mail.BounceIfUnknownUser, local.mail.reqnotauth, Main.HideMenuItems, nntp.autogetserverinfos, local.mail.LocalMIDFQDN, StartUp.ScriptTimeout, log.FormatFileName, local.nntp.XOVERdelCRLF, news2mail.MIDExtension, Editor..app/params, news.feededcancel, news.feededsupersedes, news.feededcancelverify, news.feededcancelcontrolmsg, nntp.dropresidualjobs, News.ScoreFile.ExpiredEntries.Delete, purge.mailinlog.keeplines, PurgeMailScorefile.daily, mail.scorefile.expiredentries.delete purge.mailoutlog.keeplines, purge.newsoutlog.keeplines, purge.rasdiallog.keeplines - [Main] Title, TaskbarTitle, Logs.ShowHints, color.xxx.yyy - [EditDirs] Mailboxes, ShowAllFiles, ShowDirectly, news.DefColumnSort, news.DefColumnSortUp, mail.DefColumnSort, mail.DefColumnSortUp, ShowFileTypes, Preview_Wordwrap, Preview_AllHeader, Preview_FixedPitchFont, Preview_TextAttr, Preview_MaxLines, UpdateIntervalms, UseSmallIcons, ColWidths, news.ShowHeaders, mail.ShowHeaders, OwnTaskbarEntry - [EditScripts] OwnTaskbarEntry - [Actions] Timeout.ExecInit, Timeout.ExecRun - hs1/2 - hs1 is no longer supported - several changes for a better performance - hamster checks for un-released resources when a script ends - ATTENTION: parameterlist for HamSendMail and HamSendMailAuth is changed! - New commands/functions: - #!finalize as counterpart to #!initialize - Define constants: Const, ConstEnum - Control Hamster: HamNNTPServer, HamSMTPServer, HamPOP3Server, HamIMAPServer, HamReCoServer, , HamShutdown, HamStopAllTasks, StopThread, HamResetCounters, HamMainWindow, HamTrayIcon, HamReloadConfig, HamReloadIPAccess, hamChangePassword - Log-file: HamRotateLog, hamaddlog - popupbox, HamDialogEditDirs, HamDialogScripts, HamDialogNewsKillfileLog, HamDialogAddPull - INI-files: IniDelete, IniEraseSection - hosts-file: LookUpHostAddr/LookUpHostName - Internal state: HamGetStatus(3,8), HamMainFQDN, HamMidFQDN, HamEnvelopeFrom, HamPostmaster, HamUsenetAcc, HamRCpath - News-jobs: HamNewsJobsCheckActive - Internal message-base: HamAddGroup, HamDelGroup, HamAddPull, HamDelPull, HamArtLocateMidInGroup, HamArtDeleteMidInGroup, HamArtDeleteNrInGroup - DLL-Usage: dllload, dllcall, dlllasterror, dllfree - Raw memory: memalloc, memsize, memsetint, memgetint, memsetstr, memgetstr, memvarptr, memfree, memforget - SSL-Usage: Geänderte Parameterliste für HamFetchMail, HamSendMail(Auth) - Scheduler: AtCount, AtSubfunction, AtFrom, AtUntil, AtOnDays, AtEveryMins - System: ScriptPriority, EventMultipleWait, SysErrorMessage, ClipRead, ClipWrite, RFCTimeZone, DiskFreeKB, GetEnvironment - Misc: digest, random, DecodeMIMEHeaderString, listappend - Scores.hst: - Score-After-Load: Loadad articles can be scored based on any header or body. If original score + Score-after-load is less than 0, the article is deleted. To use Score-After-Load the score-rules must begin with "?". - Mailfilt.hst: - Invalid lines are reported on startup - New command AddDefault - Expire:JJJJMMDD allows automatic date-based delete of lines - Server - NNTP: - NEWNEWS-command supported - MODE CANCEL supported - POP3: - SASL-encryption supported - CAPA-command supported (RFC2449) - SMTP: - SASL-encryption supported - New server "Remote Control" - New server IMAP - OLE: - can be disabled, OLE-name changable - New commands: - ControlGetStatus (3,8) - SSL: ControlRunFetchMailTLS, ControlRunSendMailTLS, ControlRunSendMailAuthTLS - DUN-Network: RasDynGetConnection, RasGetIP, RasListEntries - Control Hamster: ControlAddGroup, ControlDelGroup, ControlAddPull, ControlDelPull, ControlRotateLog - This commands are no longer supported: - SSL: SendMailSSL, FetchMailSSL, FetchMailAuthSSL, OpenSSLTunnel, CloseSSLTunnel - Clients - POP3 - SASL-encryption supported - Automatic disconnect and connect after getting x mails: Server.ini [pop3] GetMaxMailsPerSession=x - SMTP - SASL-encryption supported - Some changes because of RFC 2821 - Actions - New actions - startup, shutdown, mail, mail.getheader, news, news.local, news.preprocess, news.gateway, TrayIcon.click, trayicon.doubleclick, trayicon.middleclick, trayicon.middledoubleclick, Status.click, Status.doubleclick - (mail-)account-specific actions - scripts can be executed directly now - Mixed - Changes for better support of Windows XP - Not installed RAS-Network is no problem anymore - Local and feeded Cancels/Supersedes can be execute automatically - Extended checks to avoid errors, additional tests when starting hamster - Language-files have extended possibilities ========================================================================== Details changes since 1.3.23.210: - New: Edit Dirs: File/Move to = Strg+M allows some kind of drag'n'drop with the keyboard. {TGL} - Change: Header X-Hamster-Info: ScoreLoad and ScoreSave (like Hamster PG) instead of Score1 und Score2. {TGL} - Change: Edit Dirs: Different icons for msg, err and bak-files, other files without icon. {TGL} - Change: Warning in log if a MBOX-file with invalid format is imported. {PW} - Change: hs2: Result of HamArtDeleteNrInGroup changed for last time: 0 if successful (1 in .210), -1 if function can't be done and -2 (0 in .210) if article doesn't exist. {TGL} - Change: Local servers: maximum count of client-connections=0 means no limit now instead of no connection allowed. {TGL, thx to Ulrich F. Heidenreich} - Fix: mailserver-security: When connect to external server with APOP and external server doesn't support APOP, Hamster has no fallback to plain POP anymore. {JW} - Fix: IMAP-Server: - result for Body.Size was wrong, so mails with attachment were not loaded completly by NC/Mozilla. {HS} - Parsing of Multiparts didn't work when "Boundary" was uppercase. {HS} - Fix: Edit Dirs: Widhts of columns was only saved if user switched between a mail- and a news-directory. {TGL} - Fix: RE_PARSE raised an exception if the string was parsed completely. {TGL} - Fix: Very long log-lines could crash Hamster, now they are automatically shorten in the main-window-log (but not in the log-files!). {AS} - Fix: CRAM-SHA1-Authentification didn't work. {JH} V1.3.23.210 (vom 18.11.2002) - New: X-Hamster-Info contains now the added score (Score=), the score from overview-filter-rules (Score1=) and from after-load-score-rules (Score2=) {TGL} - New: hs2: - HamScoreTest has an additional parameter: After groupname, text of article and the variable to get the filterlines the fourth parameter supports following values: 1 = only score for overview-filter-rules, 2 = only score for after-load-filter-rules or 0 for the added value (Default) {JH} - hamChangePassword(AccountName, OldPW, NewPW) allows to change the password for an account like OLE-function ControlChangePassword. Result means: 0=false old PW, 1=OK, 2=error {TGL} - Chg: Dialog "Directories": {TGL} - keys left/right/Del/Enter in the file-list only works without modifiers Shift/Ctrl/Alt pressed. - Delete: If no file is selected, the focussed file will be deleted. - Shift+Strg+Del delete files WITHOUT confirmation! - Option "Small icons" now really change the icons: No icon, if there is no msg-file in the directory, yellow circle if there are files. - The title of the Icons for the directories now counts the files in it. - The widths of the columns are now saved automatically. - Chg: hs2: HamArtDeleteNrInGroup results 1 if succesful, 0 if article doesn't exist and -1 if function ist disabled (Purging, Archieve-Mode) {TGL} - Chg/Bugfix: IMAP-Server: Extended logging, APPEND caused range-check-error, missing initialization on COPY {MG/HS} - Bugfix: Shutdown of Hamster didn't shutdown IMAP-server correctly. {JW} - Bugfix: Dialog "Directories": Trash worked as root-directory. {TGL} - Bugfix: Mail-score-file: An empty file caused an "access violation". {TGL} - Bugfix: NNTP/SMTP-server: If the default-server was deleted, the value for the default-server wasn't cleared. {TGL} - "Rollback": regular expressions: Compiler-options changed {JH}, IMAP-server: longWord back to LongInt. V1.3.23.205 (10/18/2002) - New: Language-file allows to enable new menuitem Help/FAQ {TGL} - New: Mail-filter-file: - On starting Hamster an existing mailfilt.hst is tested for invalid entries. {TGL} - If there's no search-pattern behind the default-field of an rule, the line is invalid and will be ignored. {TGL} - New: General settings: New Button "Visible menuitems" opens Dialog for easy access to hamster.ini [Setup] HideMenuItems. {TGL} - New: hs2: HamDialogAddPull(x) / HamDialogAddPull(16,x): x=2 checks, if the dialog is already opened (1) or clodes (0). {TGL} - Chg: Dialog "Edit dirs": IMAP-accounts are visible again, but delete, copy and move is suppressed to avoid damage of internal structures. Mail in subdirs of IMAP-accounts are now visible, too. {TGL} - Chg: mail.scorefile.expiredentries.delete works for Mailfilt.hst like news.scorefile.expiredentries.delete for the news-score-file. {TGL} - Chg: Actions: When running an external application the work dir for the application is extracted from the path of the application itself. {TGL} - Chg: Hotkey for "All servers" is changed from Ctrl+A to Shift+Ctrl+A. {TGL} - Chg: General settings: The checkboxes to enable/disable log-levels have now the same color like the lines in the log-tab of main window. {TGL} - Chg: Reload configuration (F5) checks news- and mail-score/filter-file for errors now. {TGL} - Chg: Improved logging, minor changes for internationalisation etc - Fix: IMAP: - Command APPEND ignored mails ending with whitespaces {HB} - Invalid boundary caused problems {MG} - More chars supported. {MG} - Errors when delete mails were ignored {MG} - More detailed logging {MG/HS} - Error when mailreader asked for mails from 0 to 4294967295. {MG} - Fix: General settings / Logs: Buttons to edit logs started the false logs. In addition buttons for non-existing (main-)logs are now dis- abled. {TGL} - Fix: After closing dialog "General settings" most entries from the Online-menu disapeared. {TGL} - Fix: Logs: if setting for max. logs was 5, Hamster kept log 0 to 5 instead of 0 to 4. {TGL} - Fix: Actions: The third parameter was never set when running a script for an specific account. {TGL} - Fix: OLE/hs2: The status-command didn't work like documented for parameters greater than 3,8 {TGL} - Fix: hs2: DLLCall caused an Range-Check-Error with negative parameters. {AS} - Fix: Scorefile: Spaces after "%>" caused problems in .200 {TGL} - Fix: hamster.ini [Main] color.detail.text/brush works now, too. In addition you can use color.else.brush to set the background of empty lines in the log. {TGL} V1.3.23.200 - New: OLE-Server: ControlAddGroup, ControlDelGroup, ControlAddPull, ControlDelPull and ControlRotateLog works like the hs2-HamAdd/DelPull/Group commands. {TGL} - New: Dialog "Edit Dirs" {TGL} - Preview of msg/err-files works when "all files" are activated, too. - hamster.ini [EditDirs] Mailboxes=... allows to sort and select the mailboxes in the upper area of the window. Use Mailboxes=user1,user3,user7 to show only user1, user3 and user7, if one of the mailboxes doesn't exist or is no pop3-mailbox, it is simply ignored. - New: Dialog "General settings": New page "Logs" allows easy access to the log- files and to define the purge-settings (in lines) for the logs. {TGL} - New: hamster.ini - [Setup] News.ScoreFile.ExpiredEntries.Delete=1/0. When 1 expired entries are deleted in the score-file else the entries are converted to comments. Default is 0, the settings works for news- and mail-score-file. if an expired entry is killed or commented out, this is logged. {TGL} - [Main] color.xxx.yyy=value changes the colors used for the logfile in the main window. xxx can be debug, info, system, warning or error, yyy can be text or brush. Value can be a Delphi-constant (like clBlack, clWhite, clBlue, clWindowText...) or a hex-value like $A0A0A. {TGL} - New: Purge is used for several log-files, too. Every log-file has an ini- setting (Default 0=no purge), which defines, how many lines are allowed, if the file is bigger, the oldest lines are deleted. When running the hs2/OLE- purge-command, you can include or exclude purging of log-files with the numeric parameter. In the following list you find the filename of the log-file, the value for the purge-command and the key-name for hamster.ini [Setup]: - MailIn.log, 16/$10, purge.mailinlog.keeplines - MailOut.log, 32/$20, purge.mailoutlog.keeplines - NewsOut.log, 64/$40, purge.newsoutlog.keeplines - RasDial.log, 128/$80, purge.rasdiallog.keeplines - New: Mail-Score-File: {TGL} - Expire:YYYYMMDD works in the same way like in the news-score-file. You can insert this condition at the end of the rule or between any elements of it, but it doesn't work after the beginning of a comment. Examples: =Ignore() Expire:20031231 ~From: "John Doe" =Add(spam) ~Subject: {^ADV} Expire:20031111 - hamster.ini [Setup] PurgeMailScorefile.daily=1/0. If 1, the mail-score-file is tested for expired entries once per day, Default is 1. - New: Local IMAP-Server: Setting to allow or forbid LOGIN/SASL-authentification in the setting-dialog, too. {TGL} - New: Actions: When running an application, you can decide, if it is shown or hidden. The setting can be changed by the dialog "configuration/automation" or directly in the hamster.ini: [Actions] Actiontyp.ExeStartType=0/1 (normal, hidden), Default 0. {TGL} - New: language-file allows to set help-topics directly for menu items: Hamster_xx.dat [HelpIDs] TFormname/Menuname=Help-ID - New/Bugfix: Local server / Edit IPAccess: Access to IMAP-server can be defined now, MAIL means now POP3+IMAP+SMTP. {TGL} - New/Bugfix: hs2: "dump" ignores constants (were shown as variables), if you want to see them now, you have to use dump(1). {TGL} - Chg: hs2: "Enum" is exchanged by "ConstEnum". - Chg: When creating a new pop3-server, the possibility of an alias-extension is shown, the automatic numeric alias is not supported anymore. {TGL} - Chg: Feeding: if a peer rejects the offered articles with '480 no permission', this is logged as warning and the feed-job is stopped immediatly. {JW/HS} - Chg: Mailrouter: Special X-Resent header for mails, which are redirected to an external address. {JW} - Chg/Fix: Dialog "History" is now a normal window (topmost before) and the search-dialog is usable although the hamster-main-window is closed. {TGL} - Change/Bugfix: Interal function FileExists2 didn't work correctly if file names started with an ".". {TGL} - Chg/Fix: Interal function DirExists2 didn't work correctly if there was an "\" after the directory-name and was restructured, too. {TGL} - Fix: IMAP-server: Data in literal-format was handled incorrectly, local timezone was ignored and some minor bugs are fixed, too. {MG/HS} - Fix: Local server: Errors on sending data produced endless error-messages in the log-file. {MS} - Fix: When executing the mail-score-file, empty headers werde handled as non-existing headers. Because filters on non-existing headers are skipped, you couldn't filter on an empty subject for example. {TGL} - Fix: hs2/OLE: HamGetStatus/ControlGetStatus(3,x) are documented and programmed different for 1.3.23.100 and 1.3.23.170. The correct functions for x>7 are: 3,8 counts the articles which are (re)loaded by message-id, 3,9 counts the error-lines and 3,10 the warning-lines (which means the warning/error-page on the main-window and not the main-log. {HS} - Fix: hs2: return() wasn't handled correctly in special cases like inside a loop in a sub-routine. {TGL} - Fix: The internal function to decode MIME-Headers crashed Hamster when decoding an empty string. This could be caused by using the hs2-function DecodeMimeHeaderString or a Mailfilter like "~Subject:". {TGL} - Fix: News-Score-File: Syntax-errors like missing blank between score-value or a "+" at the end of the line could crash Hamster. {TGL} - Fix: Local User: An group without name but with description could be created but not deleted by the dialog. {TGL} - Fix: When using NEWNEWS there were date-related problems, so Hamster sets a Received-date for received articles now. {JH} - Fix: GUI: Checking for double newsserver-names could be fooled by different port-entries. {TGL} - Fix: Dialog "Edit Dirs": errors when handling msg-files for preview-function are now treated by the dialog itself. {MS} - Fix: If [Setup] Main.HideMenuItems was used to suppress menuitems mnuPullSingleXXXX, "Configuration / Reload Configuration" made them visible again. {TGL} - Fix: Dialog "Edit Dirs": Now only mailboxes for existing users with pop3-access are visible. {TGL} - Fix: Hamster-mail for executed cancels contains the text of the cancel again. {TGL} V1.3.23.191 - Chg: The own taskbar-entry for Dialog "Edit dirs" and "Scripts and Modules" has to be activated by hamster.ini, because under special circumstances the main window can lost his taskbar-entry. Use [EditDirs] OwnTaskbarEntry=1 for Dialog "Edit dirs" and [EditScripts] OwnTaskbarEntry=1 for scripts. {TGL} - Chg: If a all threads for a newsserver fail you can now configure if the remaining jobs should be deleted or left in the job-list: Use the configuration dialog for News or hamster.ini [Setup] nntp.dropresidualjobs=1/0 {TGL} - Fix: Passwords didn't work in .190 if the setting of encyption-base was not system+user. {JH} - Fix: hs2-command HamSendMail() didn't work. {MB} - Fix: Menuitem "Configuration / Killfile-Log/Settings" didn't work. {MB} - Fix: RFC2822 says that header "Return-Path" should contain the address in <>, this brackets are now set. {MB} - Fix: IMAP: Account-specific actions worked only for POP3-mail-accounts. {MB} V1.3.23.190 - New: hs2: - Use "Const ( $variable, value )" to declare real constants. {TGL} - Use "enum ( $Var0, $Var1, ..., $Var99 )" to define constants with increasing values - $Var0 is 0, $Var1 is 1, ... {TGL} - HamAddGroup ( groupname ) creates a new local group, result=0 if successful else -1. {TGL} - HamDelGroup ( groupname ) deletes a group and all existing pull jobs for the group, result=0 if successful else -1. {TGL} - HamAddPull ( servername, groupname ) adds a new pull result=0 if successful else -1. If the group doesn't exist before it'll be automatically created, if the servername is unknown, the function will fail. {TGL} - HamDelPull ( servername, groupname ) deletes an existing pull, result = 0 if successful else -1. {TGL} - DiskFreeKB(drive) results the free disk-space in kilobytes (1024 bytes) for the drive. If an error occurs, the result is -1. {JW} - GetEnvironment(variable) or GetEnv(...) results the value for the given environement-variable. GetEnv("WinDir") for example will result the main-windows-directory. {JW} - HamRotateLog begins a new logfile. {TGL} - The message-commands exists now in a more remarkable form: {TGL} - HamShutdown ( ) quits Hamster - HamStopAllTasks stops all active threads - HamResetCounters( ) resets counters and/or clears the logs, x=0 for all, x=1 resets only counters, x=2 clears logs only, x=3 clears warning/ error-log only, default-value for x is 0. - HamNNTPServer(x), HamSMTPServer(x), HamPOP3Server(x), HamIMAPServer(x) and HamReCoServer(x) controls the local servers: x=0 stops server, x=1 starts server, x=2 re-starts server and x=3 results, if server is running (1=active, 0=stopped). - HamMainWindow(0/1) closes/opens main window - HamTrayIcon(0/1) hides/shows tray-icon - HamReloadConfig(1) reloads all settings, if no configuration-dialog is open, HamConfigReload(0) results if any configuration-dialog is open (1=yes, 0=no). - HamReloadIPAccess reloads IPAccess.hst - HamDialogEditDirs(x) controls the dialog "Edit dirs". x=1 opens, x=0 closes, x=2 results state (1=open, 0=closed) - HamDialogScripts(x) controls the dialog "Edit Scripts/Modules". x=1 opens, x=0 closes, x=2 results state (1=open, 0=closed) - HamDialogNewsKillfileLog(x) controls the dialog for the news-killfile-log. x=1 opens, x=0 closes, x=2 results state (1=open, 0=closed) - HamDialogAddPull(x) controls dialog for new news-pulls, x=1 opens. - New: Actions {TGL} - When running an external application you can use %0 in the parameter-field to hand over the name of the action itself. - New actions trayicon.middleclick und trayicon.middledoubleclick to support click with the middle mouse-button on the tray-Icon. - New: hamster.ini - You can change the caption of the taskbar when main-window is open: [Main] TaskbarTitle=..., Default is "Hamster", the wildcards for [Main] Title=... are useable here, too. {TGL} - In addition to the default-editor you can define different editors for speical file-extensions: To use a seperate editor for all ".msg"-files you have to set following entries: [Setup] Editor.msg.app=exe-file and Editor.msg.params=parameter {TGL} - Chg: If dialogs "Edit Dirs" or "Edit Scripts/Modules" are open, they have their own entry in the windows-taskbar now. {AS} - Chg: Values for new HamMessage-functions are changed: {TGL} 12,x Dialog "Edit Dir(s)", x=1 opens, 0 closes, 2 results state (1=open, 0=closed) 13,x Dialog "Edit Scripts/modules", x=1 opens , 0 closes, 2 results state 15,x Dialog "Killfile-Log", x=1 opens and waits until closed, x=0 closes if already open, x=2 for state (1=open, 0=closed) 16,1 opens Dialog "Add News-Pull". - Chg: Client-Threads like pulling news/mails are now stoppable, too. {TGL} - Chg: (Shift+)Strg+Tab works now in dialog "history" and the history-list gets the focus when dialog is opened. {TGL} - Chg: if a symbolic port is incorrected (ntp for example) this results in a error message in the log. {JW} - Chg: Dialog "Local server" / Tab "NNTP": Settings for cancel/supersedes. {TGL} - Chg: Execution of (feeded) Cancels: If Message-ID is unknown and no verify is activated the Message-ID will be marked as "drop away, if article with message-id follows". {HB} - Chg: mailaddress and homepage of Luu Tran. {Thx to Sebastian Brocks} - Chg result values of several functions: {TGL} - The result of belonging OLE- and hsc-functions differed and the results of the OLE-functions were dokumented false in the help, so from now on the OLE-functions have the same results: 0=ok and (mostly) -1 for error. - hs2: IniWrite, IniDelete, IniEraseSection and StopThread results 0 for ok and -1 in any other case. - Chg: If a all threads for a newsserver fail the remaining jobs are now deleted from the job-list but showed as warnings in the log. {AS} - Fix: When running mail-jobs and HamNewsPost/HamNewsPull-commands simultaneous this could cause in a freeze of Hamster. {JH} - Fix: If IP-binding for IMAP- or ReCo-server were changed, this changes werde not directly executed. {MG} - Fix: OLE-function NewsScoreTest always resulted 0. {HR} - Fix: Imap-server used incorreced numbers when more than 255 mails were in a mailbox. The old state-file Mailbox.dat is automatically converted to Mails.dat for technical reasons. {MG} - Fix: hs2-function "ListBox" caused "dead" window-threads. {JH} - Fix: Internal function DirExists2 had a windows-ressources-leak and the result-value was sometimes incorrect. {MB/JW} - Fix: NNTP-Server: SSL-connections didn't work correctly (timeout) {MG} - Fix: XRef-Header contained gateway-groups. {JW} - Fix: When running "Help / History" and no history-file exists, there will be an understandable error-message in the log. {TGL} - Fix: Dialog "Edit dir(s)": Click on "Trash!" caused an error-message and after this the dialog didn't show any files until closed and opened again. {TGL} - Fix: When deleting a POP3/SMTP-server the directory itself couldn't be deleted, if bak-files of the server-files still exist. {TGL} - Fix: Search for unknows MIDs didn't work if the group itself didn't exist in Hamster. {TGL} - Fix: Dialog "Configuration / Automation": Titles in the action-tree were sometimes showed bold. {MB} - Fix: Dialog "Configuration / News": You could add the same newsserver-name multiple times. {AS} - Fix: Under special conditions a new thread was closed directly after started. {AS} V1.3.23.185 - New: Cancels and supersedes from incoming news can be executed automati- cally, see configuration / local servers / NNTP / cancel-messages. Cancels and supersedes in local groups are always executed, if sender/from of cancel-message is equal to sender/from of cancelled message. {HB/TGL} - New: Dialog "Edit dirs": {TGL} - Different icons for empty and filled mailboxes. - Update-interval of dialog is changable now: hamster.ini [EditDirs] UpdateIntervalms=..., Default 1000 (milliseconds). - New option "Use small icons" for directory-list (hamster.ini [EditDirs] UseSmallIcons=0/1). - Change: "Stop all scripts" doesn't create error-messages anymore. {TGL} - Change: If a thread is stopped this is logged now. {TGL} - Change: If score-log, news-score-file or mail-score-file are used, the menuitems are visible althoug special settings are disabled. {TGL} - Bugfix: IMAP-Server: OE didn't show INBOX correctly. {HS} - Bugfix: RAS-connections couldn't be started. {TGL} - Bugfix: Main window: {TGL} - Log "Single thread" was always empty since 1.3.23.180. - Buttons above thread-log are only enabled if usable now. - Bugfix: Dialog "Edit Dirs": GPF if double-click and no file in list. {MB} V1.3.23.180 - New: Stop of single threads via Thread-ID: - use the button "Stop thread" in the main-window - use new hs2-command StopThread ("ID") (1=successful) - use remote control: TASK STOP ThreadID Attention: Not every thread will stop immediately! (for example: purging, hs2-scripts with AtExecute...) {HS/TGL} - New: Timeout (in seconds) for external programs called by an Action: hamster.ini [actions] Timeout.ExecInit/Timeout.ExecRun, 0 for no timeout, defaults: 60/180. {HS/TGL} - New: Dialog "Select news-pulls for (server)": If the mouse cursor moves over a group, the tagline is shown as a hint. {TGL} - New: SMTP/POP3-server: The useable authentification methods can be chosen in the dialog now. {TGL} - New: Dialog "Killfile-Log": "Show details" asks, if the details should be copied into the clipboard. {TGL} - New: hs2: - If "execute" fails the error-message is logged, too. {JH} - New function "RFCTimeZone" results the current timezone. {JW} - New command "HamArtDeleteNrInGroup (ArtNo, group)" kills article #ArtNo in chosen group without change of news-history. {TGL} - New: Dialog "Edit Hamster-Account" shows "forwards", if exists. {TGL} - New: Dialog "Edit dirs": {TGL} - hamster.ini [EditDirs] Preview_MaxLines=x decides, how much lines are shown in the preview-window, default is 300. - Additional column "KB" (for "Kilobytes") - New: Dialog "Settings for automation": Added setting to filter messages about new groups. {TGL} - New: OLE: Some new commands: {TGL} - RasDynGetConnection: String => title of current RAS-connection - RasGetIP: String => IP of current RAS-connection - RasListEntries: String => list of available RAS-connections, separator is CRLF. - New: NNTP: To avoid same message-ID if you post an article in normal and gateway-groups, message-IDs of gateway-articles are extended at the beginning: Use [Setup] news2mail.MIDExtension=... to change the extension, default is "n2m-g.", if the value is empty, the function is disabled and the message-ID won't be changed. {TGL} - New: Own Dialog for the Hamster-History with Search-function and automatically generated Overview. If there are history-files in multiple languages they can be chosen by tabs on the condition that they are named like "Changes_XX.txt". {TGL} - Change: Dialog "Edit Hamster-Account": The list of aliases isn't generated from the saved list anymore but from the current list in the dialog itself, so that you can test the result of changes in the alias-list without closing the dialog before. {TGL} - Change: NNTP: Failed nntp-default-authentifications are logged now. {JW} - Change: Dialog "Edit dirs": {TGL} - List of mailboxes is now sorted by name. - Better performance when open first - Change: Action "Headertest" changes the header of the mail not only for the mailfilter but permanent. {JW} - Change: NNTP: Local cancels checks Sender-Header, too {JW} - Fix: IMAP-Server: Some special chars caused problems (" and /), LIST and LSUB didn't work properly ... {HS/MG} - Fix: NNTP: When feeding articles the PATH-Header was changed in an incorrect way: "Path: Path: ..." {JW} - Fix: If some internal commands worked too fast, there could be an GPF. {JH} - Fix: In the archieve-copies of sent postings the newsgroups-information in the first line was again incorrected. {MB} - Fix: Dialog "Edit dirs": Sort by date didn't work correctly. {TGL} - Fix: Main-Window: Thread-log showed garbage after scrolling. {TGL} - Fix: Local NNTP-Server: STAT-command ended with "." {GLG} - Fix: OLE-function RasIsConnected had incorrect results. {TGL} - Internal: TMultiReadExclusiveWriteSynchronizer => TReaderWriterLock. {JH} - Internal: Event-commands serialized now. {JW} V1.3.23.170 - New: hs2: - New command listappend ( Listhandle, filename ) appends the list-text to the file if exists else it creates the file automatically. {OJB} - hamgetstatus(3,8) counts the error-lines and hamgetstatus(3,8) the warning- lines in the warning/error-log in the main-dialog. If this log is closed, both functions results 0. {TGL} - The Width and Height of Inputbox and Listbox is now increased. An double-click on an entry of the listbox works now like the ok-button and the height of the listbox is changable (default is 220 pixels): hamster.ini [Setup] Script.Listbox.Height=Height in pixels {TGL} - Varset allows initialization of multiple variables instead of one. All parameters without the last has to be the new variables, which are initialized with the value of the last parameter. {TGL} - hammessage(9,1) updates the menu-entries of the main window, too. {TGL} - iniwrite, inidelete and inierasesection will result, if there was an error: 1 for no error, 0 for any error. {TGL} - If listload, listsave or listappend failed, the error-message itself will be logged automatically as a normal entry in the log. {TGL} - New: Configuration / Automation / Load Articles by MID: Button "Add MIDs from clipboard..." checks the clipboard for message-IDs and inserts the found MIDs into the lists of every newsserver. {TGL} - New: Local/Open Dir(s): The interpretation of *bold*, /italic/ and _under- line_ in the preview is now optional (Preview/Textattributes). {TGL} - New: Title of main window is changable: hamster.ini [Main] Title=..., following "wildcards" are supported: %Hamster% for product name ("Hamster classic"), %Version% for version number and %Readonly% (only used, if read-only-mode activated). Default: "%Hamster% V%Version% %Readonly%" {TGL} - New: Server.ini contains now some statistic information about the success of connect-trys: Absolute Count of successful/failed connects, date of last successful/failed connect and how often the last state has happened in a row. {TGL} - New: hs2/OLE: New Hamster-messages: {TGL} - HamMessage(12,3) opens dialog News-Kill-Logfile and waits until user has closed - HamMessage(13,3) closes an opened dialog News-Kill-Logfile. - HamMessage(12,4) opens dialog "select news-pulls". - New: Configuration / Accounts & passwords: - Listbox users: The User in a group are now ordered alphabetically {HS} - In the dialog "edit hamster-account" you can see the list of aliases for the user. {HS} - New: Killfile/log: ESC closes the dialog, last sorting-order (if ascending or descending) will be restored automatically. {TGL} - Chg: The script examples (vbs/pl/hsc) will be distributed in a ZIP-file and the hamster-icons, too, so that the hamster-maindir will not be filled up so much in future versions. {TGL} - Chg: Default-Timeout for local servers decreased from 60 to 15 minutes. {JW} - Chg: The internal order if a Mail is received from the local SMTP-Server is changed, so that the Mailcounter is increased before the mail.out-action is executed. {TGL} - Chg: Increased compatibility of the local SMTP-Server to RFC 2821: {JW} - Envelope-addresses without <> are not allowed anymore - Source-Routes are deleted - RCTP- and Mail-commands has to be equal or shorter than 510 Bytes. - Envelope-addresses has to be equal or shorter than 256 Bytes. - Chg: You can end hamster now, although a configuration dialog is open. {TGL} - Chg: The script-menu and submenus are now sorted in following way: First all entries without subitems in alphabetic order and then the entries with submenus in alphabetic order. The alphabetic order is not case sensitive and the underline-char (&) has no effect, too. {TGL} - Chg: If you activate the main window from the trayicon, hamster-dialogs will be set to foreground. {TGL} - Fix: The check, if a mail goes to an external address could be fouled with quotions marks around the address. {GW/HS} - Fix: No more flickering when updating the Threads-log in the main window or when filling the user-list in the User&Password-dialog. {HS} - Fix: The groupsnames in the newshistory were handled case-sensitive in some parts and case-insensitive in other parts - now they are handled always case- insensitive, so that there should be no problems with deleting messages in the future, if the history is rebuild once. {OJB} - Fix: Local IMAP-server: False result of command "LSub" in some cases, (FETCH) ENVELOPE has false result (CRLF) and there were problems with the addresses. Furthermore the "Greeting"-result works now like all other local servers. {HS} - Fix: In the archieve-copies of sent postings the newsgroups-information in the first line was missing since some beta-versions. {MB} - Fix: Edit Dir(s): Preview added/deleted empty lines before/after lines with text-attributes (*bold*, ...) {TGL} - Fix: SASL-Timeout was calculated incorrectly. {JH} - Fix: A timeout in the client-thread could produce an GPF. {JH} - Fix: Configuration / local server / general / encrypt MID worked only, if FQDN for special header was set. Now it only needs a FQDN for Message-ID again. {JW} - Fix: The menu "help" in the main-windows started the help directly instead of showing the menuitems above. {TGL} - Fix: hs2-command HamSendMail created an unnecessary directory. {TGL} - Fix: Destroy-method of some internal Thread-Objects had a bad internal order (inherited BEFORE freeing internal objects / added lines to log). {HS} - Fix: If a mail in mail.out could not be opened, the other mails were not sent out. {HS} - Fix: More detailled error message, if internal writing in a newsgroup failed. {OJB} V1.3.23.161 - New: Configuration / local server: Authentification methods can be changed directly and not only in the hamster.ini. {TGL} - Chg: The type of gateway-groups isn't changed to "moderated" anymore, if OLE-command NewsGrpInformation is used. {TGL} - Fix: Access to local SMTP-server only worked, if the client uses SMTP-AUTH. {JW} - Fix: Access to local POP3-server failed for several values of the pop3-timeout. {JH/JW} - Fix: Access to local ReCo-Server failed in some cases (Timeout). {JW} - Fix: An empty header in a message/mail could produce a GPF. {MB} - Fix: User-ID was missing in the Received-header of mails {JW} - Fix: log.IgnoreConnectionLost was not supported for the local NNTP-server {Till Meyer} - Fix: Edit Dir(s): Highlight of text attributes worked not always correct. {TGL} V1.3.23.160 - New: Configuration / Automation: {TGL} - General contains well known settings from the local server-dialog (autostart for local servers and automatic purge every day). Furthermore the user can decide, if the daily statistic should be created and if the tests for obsolete directorys should be done. - Actions: Now the actions can set not only in the hamster.ini and there's a small information for every action. - Editing of the GetMids.txt for the external NNTP-server - New: local IMAP-server. Settings can be found unter Configuration/local server/ IMAP. This server is "alpha" and will need time until it is stable, so use it carefully. {HS/MG} - New: Dialog Edit Dir(s): The preview supports highlighting of text attributes like *bold*, /italic/ and _underlined_. {HS/TGL} - New: POP3-server supports special error-token in the results for compatibility to RFC 2449 and RFC 3206. CAPA-command has now the properties RESP-CODE and AUTH-RESP-CODE. {JW} - New: NNTP-extension "mode cancel" similar to the mode in INN, which allows effective local cancels in the database, if the user has the permission. {HS} - New: hs2: - Function ClipRead results the text-content of the clipboard {GLG} - ClipWrite(value) copies the value as text into den clipboard. {GLG} ATTENTION: Scripts for public use should avoid ClipWrite, because the clipboard is defined for the use of the user and can contain very important content! - Function HamRCpath results the script-path for the local ReCo-server. {JW} - New: [Actions]: mail.getheader.* allows to edit the header of an incoming mail before the mailfilter of hamster is used. {JW/TGL} - New: hwindows.hsm contains the function "RasErrText", which results the error message to an error number of an RAS-error. {JH} - Chg: All internal Delphi-error-messages are now in English. {TGL} - Chg: Very big mailfilters are now executed faster. {HS} - Chg: menuitem "advanced configuration" now with dynamic caption instead of checked or not checked. {TGL} - Chg: If an user has limited access to the newsgrouplist, the search for Message- ID won't find messages in the forbidden groups, too. {HS} - Chg: If there's no server-directory for an local POP3/SMTP/NNTP-server, it won't be created to save the Greeting.txt anymore. {TGL} - Chg: More compatibility for mails with unusual headers: The space behind the ":" is not needed anymore, if there's a TAB it will be handled like an space. {TGL} - Chg: The main-window-hotkey for the script-dialog is now F4 instead of F2. ESC minimizes the window (or clears the content of the hs2-shell, if it is not empty) {TGL} - Chg: Default-value for [Setup] local.nntp.XOVERdelCRLF is now 1 (true), so that the behaviour is like Hamster 1.3.23.4 and before. {TGL} - Chg: If an mail received from an POP3-Server has no body, it automatically gets an empty body to avoid later errors. {JW} - Fix: Check for obsolete server/group-directories didn't ignore system-dirs like news.out or news.err. {TGL} - Fix: GPF/errors when closing dialog "Edit Dir(s)" shouldn't happen anymore. {TGL} - Fix: Local servers could be started, if there was no correct certificate although "Required TLS" was set. {MG} - Fix: hs2 - Order of initialization of used modules were not correct. {TGL} - hamsendmailauth: The parameters for user and password were ignored. {JW} - Result when waiting for mutliple objects with "eventwait" was incorrect. {JW} - Fix: Internal access to an message with multiple header results the last instead of the first header. {HS} - Fix: Groupflag "g" for "Gateway" is a speciality of Hamster, so that newsclients like Gravity ignored such a group in the grouplist, so these groups are now labeled as "m" (moderated) when a NNTP-clients asks the server for the grouplist. {TGL} - Fix: The From-entry in the info-mails had no space between name and address. {JW} - Fix: SSL-login-settings for POP3 were loaded from the false ini-file. {JW} - Fix: When using POP3-server with alias-name (pop.gmx.de/2) Hamster created a directory for the original POP3-server-name. {TGL} - Fix: Dialog "Edit Dir(s)": - Rot13 raised an error if the whole message was selected. {TGL} - When showing News.out/News.err there were no news-specific columns. {TGL} - Fix: Menuitem News-Killfile-Log wasn't enabled/disabled correctly. {MB} - Fix: Configuration / News: ... : Reseizing worked not properly. {TGL} - Fix: OLE-command NewsGrpInformation used false INI-file, the groupname was missing and gateway-groups are now labelled as moderated. {HS} - Fix: Login-timeout of local reco-Server corrected. {JW} - Fix: The quoted part in Cancel-reports didn't contain carriage returns. {JW} V1.3.23.150 - New: Score after load allows scoring of all headers and the (raw) body. The Score-after-load-entries in the Scores.hst starts with an "?" before the real entry, you can filter on every possible header and not only to the known calculated headers ("Bytes", "XPost", "Number" and "Age") but additional on "Header", "Body" und "Article" (article=header+body). Examples: ?+10 Supersedes: * ?=-9999 Body: "Merkens" Body, header and article are always "raw" which means there is no decoding with "~" supported and "quoted-printable", "base64" and "UTF-8"-articles is resulted without change. {code destilled from Haibles playground} - New: "Configuration / advanced configuration" en/disables advanced settings, "big" dialogs allows to toggle this directly. {TGL} - New / hs2: - Function DecodeMIMEHeaderString(String[,Variable]) decodes MIME-coded headers, if the second parameter is used, it must contain a variable, which contains the name of the used charset after decode. Attention: There's no conversion between the charset of the header and the charset, which is used by windows, it's only decoding to 8-bit. {JW} - Function SysErrorMessage(number of error) results the error message to the error number for an windows-system-error. {TGL} - Function ScriptPriority(Priority) allows to set the priority of the script-thread itself. 0=no priority, 1=very low priority, 2=low priority, 3=normal priority, 4=more priority, 5=high priority, 6=highest priority (which needs admin-rights under NT&Co), see windows.hsm for so named variables. {JW} - New: SSL - special Cipher-settings can be defined for a server: Server.ini, [NNTP] SSLCiphers=... {MG} - New: When reset a group you can cleared the INI-file, too. If you allow this, the group will be handled as completly new on next news-pull. {TGL} - New / hamster.ini [Setup] - Setting for timeout when handing over parameters to a running hamster, 0 deactivates the timeout: StartUp.ScriptTimeout=..., Default 30000 = 30s {JW} - local.nntp.XOVERdelCRLF=0 (Default) decides, what happens to CR/LF in headers. If "0", they are converted to spaces, if "1" they are killed. "1" is highly recommend if using Forte Agent or XNews, because they get the subject from the XOver and includes false spaces in such cases. - New/Chg: Dialog Edit Dir(s): {TGL} - ESC closes the preview or - if preview already closed - the dialog itself. - (Again) context-menu for filelist - New context-menu for preview - New options for preview: Fixed/variable-pitch-font, wordwrap, all header - New preview-functions: Rot13 und copy to clipboard - New: When starting hamster, the server-path is checked for obsolete directories and these are logged as warnings. {TGL} - New: OLE-Server can be activated/deactivated with "Local Server", but the change has no effect till hamster is restarted because of technical reasons. {TGL} - New: language-files (hamster_xx.dat) can contain lines to modify size and position of controls and to change the used font for every single dialog. {TGL} - Chg: SSL-settings for local server are always reachable, if the use of SSL is actived, but not possible, Hamster will warn you or show an error when starting. {TGL} - Chg: More detailled log-entries for SSL / local verify. {JW/MG} - Chg: Configuration / Local Servers: Option "Bounce to Sender" now found under SMTP-tab instead of POP3-tab. {TGL} - Chg: No Hotkey for remote control anymore, because it is to easy to start it without purpose. {TGL} - Chg: Optimized internal structure for the Mailaliases, lines beginning with ";" or "#" are sorted out as commentary. {TGL} - Chg: Internal routine for sending postings to newsserver and main-procedure of mailrouter is revisioned, there should be no perceptible change for the user without more detailed log-entries, if anything failed. {JW/TGL} - Chg: For internal handling of messages there existed to different classes (TArticle and TMess), which are replaced by a complete new written class (TArticle), so that there were many, many small changes throughout the whole program, but i hope, that there are no or only minor new bugs... {TGL} - Chg: NewMail-Function (hs2/OLE): error when From/To was missing, extended log-entries. {JW} - Chg: if OLE-command ControlChangePassword failes (incorrect old PW) this will automatically be logged as a warning. {TGL} - Chg: Dialog Edit Scripts opens with the last used page. {TGL} - Fix: modules were initializated in incorrect order. {TGL} - Fix: hs2-Befehl HamSendMailAuth worked only like HamSendMail {JW} - Fix: Incorrect result of local POP3-Server when mailbox was locked (+ERR instead of -ERR). {JW} - Fix: The shortcuts of hidden menuitems (hamster.ini/Setup/Main.HideMenuItems) could still be used. {TGL} - Fix: Info-Mails to external addresses worked incorrectly if the given address contained a name, too. {JW} - Fix: If SMTP-client failed, it produced much more errors than necessary. {JW} - Fix: Setting for killing oversized mails didn't work because an incorrect ini-key was used (mail.filter.mailsize.kill instrad of mail.filter.mailsize.delete) {JW} - Fix: the message, that the last access to the group list was too long ago, was confusing, because it says, that the last access was in the future. {TGL} - Fix: The parameter for HamSendMails to filter by the recipient(s) still didn't worked properly. {TGL} V1.3.23.141 - Fix: The prior version .140 produces a cpu-load of 100%. {TGL} V1.3.23.140 - New: Native SSL build in, several dialoges (General settings, local server, external news/mailserver) are updated for this, you need libeay32.dll snd libssl32.dll (old versions won't work). All old SSL-functionality is thrown away, so that there are some changes: The SSL-commands (OLE and hs2!) SendMailSSL, FetchMailSSL, FetchMailAuthSSL, OpenSSLTunnel and CloseSSLTunnel are not supported anymore, the new commands are: ControlRunFetchMailTLS, ControlRunSendMailTLS und ControlRunSendMailAuthTLS. If SSL ist working properly, hamster uses the SSL-librarys to get random values in several places instead of the Object-Pascal-Random-Functions, because the SSL- librarys results "real" random values. {Martin Germann} - New: Configuration/local server/POP3: Mails to unknown local receipients can be bounced. (hamster.ini [setup] local.mail.BounceIfUnknownUser=0/1) {JW} - Neu: Configuration/local server/SMTP: You can allow, that mails to local receipients doesn't need authentification, although SMTP-AUTH is activated. This helps to avoid unwished Relaying when the SMTP-server can be used from internet. (hamster.ini [Setup] local.mail.reqnotauth), Default: 0. {JW} - New Messages (HamMessage): 12,2=Open script-dialog, 13,1=Close Edit Dir(s)-dialog, 13,2=Close script-dialog. {TGL} - New actions: {TGL} - Status.click.* is executed on a left mouse-click on the statusbar. (This action is executed, too, if a double-click is done!) - Status.doubleclick.* is executed on a double-click on the statusbar. If not used, the dialog Edit Dir(s) is opened. {TGL} - TrayIcon.click.* is executed on a single (or double-)click on the tray- icon. If not used, the main-window is shown or set in the foreground. - New: Action "news.gateway.*" works for mails, which are posted into a newsgroup, because a postto-rule in the mailfilter. So the action "news.local.* is now only used for postings in local groups. if "news.local.*", "news.gateway.*" or "news.out.*" is not used, but "news.*", the news.*-action will be executed. {TGL} - New: To hide menuitems in the mainwindow, you can use hamster.ini, [Setup], Main.HideMenuItems=Menuitem,Menuitem,... . You must use the internal names of the menus, which you can find in the language-files (hamster_xx.dat [THamsterMainWindow/Form] MI.Menuitem=...), the "MI." must be stripped. {TGL} Example: Main.HideMenuItems=mnuFilePurge, mnuFileRebuild - New: hs2: - To free resources you can use an section #!finalize as counterpart to the section #!initializate. The section must be at the end of the module-file or end with an return-command. {JH} - HamNewsJobsCheckActive tests the newsserverinfos (new groups), which makes sense, if the automatic check is disabled in the configuration dialog or directly in the hamster.ini [setup] nntp.autogetserverinfos=0 {JW} - MID-Functions for one group instead of all groups: If HamArtLocateMidInGroup ( MID, Gruppenname, Variable ) is succesfull, it returns 0 and fills the variable with the article-number of the MID in the newsgroup, else the result is -1. HamArtDeleteMidInGroup ( MID, Gruppenname ) kills the article with the Message-ID only in the chosen group and results 0 if succesful else -1. {TGL} - New: if the FQDN for message-IDs is no local domain, it can be excluded for the check, if an mail-address is local or not. Use Configuration / local server / general or hamster.ini [Setup] local.mail.LocalMIDFQDN=0 {JW} - New: Language file (hamster_xx.dat) contains now settings for the dialog-fonts, one set of settings for the variable-pitch-font and one for fixed-fitch-font. {TGL} - New: hamster.ini [main] Logs.ShowHints=0 deactivates the hints when moving the mouse over the log-file in the main window. {TGL} - New: If news-history must recreate at hamster-start, the wait-dialog now shows little information about the progress. {TGL} - New: Logfile: {TGL} - Hamster kills now old logfiles (if numbering has no gaps), if there exits logfiles with higher numbers than the maximum for logfiles allows. - hamster.ini [Setup] log.FormatFileName= defines the filenames for the logfiles. The format-string must contain an "%d" or "%.xd" as wildcard for the current number where x stands for the width of the number. Example: Ham_%.4d.log - New: Dialog Edit Dir(s): {TGL} - hamster.ini [EditDirs] ShowHeaders=... decides, which header are shown in the preview window. - Default-sorting order can be saved seperated for mails and news - Buttons and context-menu is replaced by a normal menu - New file-functions Copy/Rename - Links (like mailto:..., http:...) in the preview can be started or copied in the clipboard. {HS/TGL} - Chg: Temporary files, which are used by the actions news.local and news.preprocess are now saved in the Temp-file of windows. {TGL} - Chg: Language-files - Changes in the hamster_xx.dat are noticed every time, if you open a dialog, changes are saved directly, the reaction, if entries are obsolete, can be set separatly for any language-file. {TGL} - Chg: Invalid or non-existing pathes in hamster.ini [Directories] creates warnings/ errors in the log. {TGL} - Chg: hs2: preprocessor-commands works now with leading spaces, too. {TGL} - Chg: if a hamster sends his parameter to another running hamster, there is now a timeout to avoid a dead-lock. {JW} - Chg: Actions are reloaded on "Reload configuration", too. {TGL} - Chg: Local POP3-Server denies additional authentification commands, if the authentification was already succesful to avoid DOS-attacks. {JW} - Chg: A Cancel in a local group doesn't delete the history-entry anymore, to avoid reload of the cancelled article by mistake. {Jens Kordilewski} - Chg: Logtype-Token in the saved logs are now identical to the playground {TGL} - Fix: log-files in the log-directory were uncomplete, numbering worked incorrect. {TGL} - Fix: Parameter for HamSendMails to filter on receipients didn't work. {TGL} - Fix: hs2: Und special circumstandes the initialization of modules was executed multiple times, the order of intiialization was incorrect and in case of an error in the initialization the errormessage showed an incorrect filename. {JH} - Fix: New created User-groups had incorrect settings for group access: "" instead of ".*" {TGL} - Fix: Receiving mails could be aborted because the internal timeout was not set correctly. {JW} - Fix: If an article was killed, not all history-entries were deleted. {Jens Kordilewski} - Fix: hs2-Function EventMultipleWait resulted -2 - ever! {Hubert Kotzler} - Fix: hs2-commands MemGetStr and MemSetStr faild when length-parameter was set to "0" and MemSetStr ignored the maximum length. Furthermore MemSetStr adds an #0 behind the string itself for safety. {JH} V1.3.23.130 - New: Dialog "Edit Dir(s)": Preview for messages with the most important headers and coloured quotes. {TGL} - New: Hamster-message (12, 1) opens dialog Edit Dir(s) {TGL} - New: New [Actions]: {TGL} - trayicon.doubleclick.* is executed if there's a double-click on the tray-icon. - startup.* is executed when hamster has started and full initialization is done. - shutdown.* is executed when hamster is ended. - news.preprocess.* is executed for all outgoing (local and external) postings before hamster examines destination groups etc - New: The protocols in the main windows supports not hints to allow reading very long log-lines without reseize hamster-window. {TGL} - New: More detailed error if NNTP-Client-authentification fails. {Michael Gebert} - New: If explorer crashes, hamster supports auto-recreation of trayicon on newer windows-versions. {Jan Henrik Sylvester} - New: Hamster.ini [Setup] Log.IgnoreConnectionLost=1 hides warning "Connection lost", which is produced by bad written client-software like OE. {WJ} - Chg: [Actions] news.local.* is not only executed for "normal" local postings, but for mails, which are posted into groups (mailfilter postto), too. {Chip Verde} - Chg: hs2-Funktion ListLoad/ListSave supports extended results: -1 for false list handle, -2 if load/save failed, -3 (only for ListLoad) if file not exists. {JW} - Chg: Help / System-Information asks now, if the infos should be copied into the clipboard, in earlier versions it was done without hint and question. {TGL} - Chg: Internal access to language-files changed, it should be noticeable faster than before. {TGL} - Chg: Parameter with blanks is possible if quoting is used (for HamRC) {JH} - Fix: RunScript with wait=true could produce a GPF. {Andreas Spangenberg/JH} - Fix: if a script was started from windows, the actual logfile changed. {TGL} - Fix: XOver is generated in a way, that works with XNews. {JH} - Fix: Setting for max. count of logfiles was ignored. {TGL} - Fix: Account-specific Settings worked incorrectly. {TGL} - Fix: Login with CRAM-MD5 for ReCo-Access now compatible to Playground {JH} - Fix: hs2-command "PopUpBox" ignored MB_TOPMOST/MB_SYSTEMMODAL and the Close-Button is now only available, if Cancel-Button ist set. {WJ} - Fix: SMPT-server: Authentification-Prompts (PLAIN:, SASL:, ...) were not stripped before real login, so the login couldn't work. {JW} - Fix: Unter special circumstances hamster started with an "empty page". {TGL} - Fix: Peering didn't work with articles without body. {HS} - Fix: if hs2-command HamGroupOpen failed, the handle still had to be freed. {JW} - Fix: News=>Mail-gateway added sometimes a second X-Posting-Agent-Header {JW} V1.3.23.120 - New: "Actions" (hamster.ini) with extended features: {TGL & WJ & Chip Verde} - new action news.local for postings in local groups - if there's no news.out.* or news.local.*-entries, but news.*-Entries, these will be used instead. - Same for mail: if there's no mail.subtype.*-entries, mail.* is used - Account-specific settings for mail-actions, which have priority before the normal mail-entries. Example: If a mail for account "abc" arrives, first existing action in the following list will be executed: mail.in.abc.*, mail.abc.*, mail.in.* and mail.*. - Extended syntax for entries: Type.exec and Type.pars works like before, Type.script runs a hs2-script, ParamStr(1) is used for the action-type and ParamStr(2) for filename or groupname or so (depends on the action). If both is used, first the program is started and then the script. Type.wait allows waiting: 0=no wait (Default), 1=wait for both, 2=wait for program only, 3=wait for script only. Some actions like news.local will ignore this setting for technical reasons and use always wait=1. - New: Dialog Edit Dir(s): State of "all" is saved, double-click on icon runs explorer for directory, no doubled window-title when re-activate, buttons from lower toolbar now combined with upper toolbar. {TGL} - New: "Configuration / Edit hamster.ini" and "Configuration / Reload Settings", Shortcuts for some menuitems (F2, F3, F5, F6-F9). {TGL} - New: hs2: Check Sheduler-entries: AtCount, AtSubfunction(Nr), AtFrom(Nr), AtUntil(Nr), AtOnDays(Nr), AtEveryMins(Nr) {JW/TGL} - New: Add warning to log, if an execute-command fails. {TGL} - New: Limit for count of connections from one IP was build in .110 with a fix value of 4, now the limit can be changed in the dialog Configuration / local server or hamster.ini [Setup] MaxLocalXXXXServersPerIP, XXXX means POP3, SMTP, NNTP or ReCo, value 0 to disable the limit. values greater than the common limit for this server ([Setup] MaxLocalXXXXServers) make no sense. {TGL/JW} - Chg: HS2-BEFEHLE HAMSENDMAIL and HAMSENDMAILAUTH! New parameter after the FromSelect-parameter: The To-Select-Parameter allows filtering on the RCPT-To- headers, the following SSL-Entries are moved behind this. {TGL} - Chg: Log-files (0.log, ...) contains an additional pattern between Timestamp and Thread-ID, which defines the kind of entrie: ERR=error, WAR=warning, Sys=system, Inf=info, Det=detail, deb=debug und sta=state. {HS} - Chg: Export with "ham export" of very big articles noticeable faster. {OJB} - Chg: Settings for Default-script-language removed, because hs1 is not supported since last version. {TGL} - Fix: Hamster-Message 5,x changed POP3- instead of SMTP-server {TGL} - Fix: SMTP-AUTH didn't work with Netscape Communicator anymore. {JW/JH} - Fix: NNTP-Group-command results now exact count of articles. {JH} - Fix: Hamster didn't work correctly, if DUN was not installed. {JH} - Fix: Online-Menu didn't work correctly, if a servername was unequivocat, so that for example the SMTP- and the POP3-server has the same name. {TGL} - Fix: An user cound send mail although setting "Send Mail" was disabled for him. {TGL} - Fix: If the user had unusual desktop-theme (like white on black), the entries in the dialog killfile and about were unreadable. {TGL} - Fix: "WaitForEnd"-Flag didn't work, if the script was run from the ReCo- Server. {JH} - Fix: Execution of an postto-mailfilter-entry had problems with an incorrect "Bytes"-Header {WJ} V1.3.23.110 - New: local ReCo(=Remote Control)-server, configuration / local server / ReCo to change settings, usage with telnet or special programs (HamRC from JH), separated script directory ([Directories] ScriptsRC). {From JHs Playground, build in: TGL, SASL-Authentification: JW} - New: Dialog for User revisioned, new test-button to check, if the group-access work as wished. {TGL} - New: Support for SASL-Authentification for clients and server (POP3/SMTP/telnet), additional patterns for pop3-authentification: Now you can not only use APOP:password, but CRAM-MD5:password, PLAIN:password, LOGIN:password, SASL:password, AUTH:password and CRAM-SHA1:password, too. Ask your mail-provider, which authentification-methods are supported... {JW} - New: Get mails in smaller "portions", which is helpful, if there are connection- problems and many mails waiting, because if the connection is not closed correctly after getting the first 50 mails, all the mails are still on the server. Use Server.ini of the POP3-server, [pop3] GetMaxMailsPerSession=x, Default=0, which means, that the mails are loaded in one session. {TGL} - New: OLE-server can be disabled (hamster.ini [Setup] startup.OLEServer=0), the name of the OLE-server can be changeed, too: hamster.ini [Setup] COMServerName=..., Default "Hamster"). But on technical reasons there is still only one Hamster- server possible. {JW} - New: hs2-insert-command.buttons includes the names of all servers and of the DUN-connections. {TGL} - New: mailfilter: command "AddDefault" appends the Default-User of the POP3-server (Default: admin). Usage: AddDefault {TGL} - Chg: Internal adaptions to the Hamster Playground: - NO FURTHER SUPPORT FOR HS1-SCRIPTS ANYMORE! - script-speed optimized, ressources can not be "lost" anymore etc {TGL} - Server-Base-classes changed, locking for password and configuration-object changed, several changes in main.pas and to the NNTP/SMTP/POP3-server-objects itself. {TGL/JW} - New hs2-commands: - hamaddlog ( Text, Type [, Show Scriptname] ), same like "addlog" - digest ( 0/1/2, value [, return as hex-value? ] ): Int/Str, usable for checksums, 0=CRC32, 1=MD5, 2=SHA. {JH} - functions to use DLL-Functions: (Examples see hw_*.hsm) {JW} - dllload (DLL-Name): handle - dllcall (Funktionsname, Par1 ... Par11 ) - dlllasterror: Int - dllfree(handle): Int - functions to use "raw" memory: {JH} - memalloc(size in bytes): handle - memsize(handle): size - memsetint(handle, value): value - memgetint(handle): value - memsetstr(handle, String): String - memgetstr(handle): String - memvarptr(variable) - memfree(handle) - memforget(handle) - random(x): random number between 0 and x-1 {JH} - EventMultipleWait( [ Objekt1 .. Objekt10 ] ): -1=Timeout {JH} - Check settings for local servers: HamMainFQDN, HamMidFQDN, HamEnvelopeFrom, HamPostmaster, HamUsenetAcc {JW} - Chg: Mailfilter (MailFilt.hst) is a more tolerant, following lines are no accepted, too: Add(user) without field will be executed ever. Spaces between command and "(" or within "( ... )" are now accepted and if there's a space between the "fieldname:" and the "fieldvalue" in the condition, it's ok. {TGL} - Chg: Script-Dialog revised: First page allows changing of pathes, the module for the hs2-Shell can be edited, too, "edit directly" is saved and the size of the window is changeable. {TGL} - Chg: Dialogs for user and user-groups revised to integrate the additional settings. {TGL} - Chg/Fix: The Insert-Key to insert commands in the hs2-shell disabled the system- keys Ctrl-Insert and Shift-Insert. {TGL} - Chg/Fix: POP3-help-command of local POP3-server updated. (auth and capa) {JW} - Fix: if hamster.ini was readonly or the user has no rights to change, the hamster crashed in some cases. {JW} - Fix: If a mail in mail.out can not be loaded, an error is logged, now. {JW} - Fix: Some changes for better compatibility to Windows XP, especially the perception of another running Hamster and the code for the Hamster-Events didn't work correct. {JW} - Fix: If any line is saved into an logfile or another text-file, this action is synchronized to avoid double-access from different code. {JH} - Fix: Online-menu: Access to the POP3-server worked only with server-names without uppercase letters. {TGL} - Fix: Log-Popup-menus in main-window didn't worked correctly. {TGL} - Fix: When searching files there was a windows-ressources-leak. {JW} - Fix: When using Gateway-Newsgroups the shortend Newsgroups-header overwrote any other header line. {TGL} V1.3.23.100 - New: Moderated newsgroups have now a moderation-address and postings to this group are send as mail to this address, if no approved-header is set. This works for crosspostings too, if there is at least one moderated group included. If there are two or more moderated newsgroups in the crossposting, only the first is used. {JW/TGL} Hint: hamster.ini [Setup] mail.GateUseHamsterEnvelope=1/0 defines, which is the source of the Envelope-From of these mails, mail.flupforgate=1/0 defines, if a F'up2-header bei should be set when a mail is converted to a posting. - New: Gateway-newsgroups, postings to these kind of groups are always send as mail, if a crossposting contains such a group, the mail is send with adjusted headers and the groupname is removed from the newsgroups-header. {JW/TGL} - New: Script-Dialog: Scripts and modules can now be edited directly. {TGL} - New: Insert-Command-Button for hs2-Shell and edit-memo in the script-dialog for comfortable insert of all kind of commands and functions of Hamster, to insert variables and functions from modules in scripts and so on. You can use INSERT as shortcut. {TGL} - New hs2-commands: - popupbox ( Text, Title, Typeflags, Timeout in seconds until dialog is closed automatically, result if timeout) {WJ} - inidelete (Inifile, section, key) delete the Ini-key {TGL} - inierasesection (Inifile, section) deletes the whole section {TGL} - LookUpHostAddr() / LookUpHostName(): Find the corres- ponding IP-address for the hostname vice versa. {JW} - New: Counter for articles which are loaded because of GetMids-entries. To show it in the statusbar use the wildcard %NM, to get the value in a hs2- script use HamGetStatus ( 3, 8 ) and to get it via OLE you can use ControlGetStatus (3,8). {HS} - New: Local NNTP-server supports NEWNEWS-command. This function must be actived for the user. {JH} - New: Dialog "Edit Dirs" {TGL} - New: If there are one or more newsjobs waiting for execution, there's a new tab on the main-window, where the list can be cleared, single jobs can be deleted and where the priority of single jobs can be changed to some default-values. {TGL} - New: localer POP3-server supports CAPA-command (RFC2449) {HS} - New: Information about new groups can be filtered with a regular expression: hamster.ini, [Setup] FilterNewGroupsInfo=, Default: .* {TGL} - New: Configuration / General / Internal groups: Local Groups can be created directly. {TGL} - New: Configuration / News / Groups: Multiple selection of groups {TGL} - New: Configuration / News / Pulls: Multiple selection {TGL} - New: hs2: Add error to log if an unknown servername is used by HamNewsPull, HamNewsPost, HamNewsJobsPullDef or HamNewsJobsPostDef. {TGL} - New: hamster.ini [Setup] local.nntp.feedjunk=1 allows feeding of articles from groups, which are unknown to importing Hamster. These articles are sorted in the internal group for postings with unknown newsgroups-header. {JW} - Chg: Left-click on trayicon = Hamster is shown, right-click or double-click on trayicon = Popupmenü. On an double-click the menuitem "Show" is invisible, because it makes no sense. The new menuitem "Minimize" is the counterpart of "Show". {TGL} - Chg: Script-Dialog is no longer modal. {TGL} - Chg: While purging some hs2-commands aren't executed anymore with a warning in the log-file: HamNewsjobsstart, HamArtDeleteMID, HamArtImport, HamGroupOpen, HamNewsPull and HamNewsPost. {TGL} - Chg: Online-menu doesn't create nonsense-jobs (mailjob for newsserver and so on) anymore. {TGL} - Chg: hamster.ini [Setup] MaxUnknownGroupsInRe=x defines, how much unknown groups are allowed in a crossposting with F'up2. The default is 2, values higher than 10 are ignored. {TGL} V1.3.23.4 - Fix: Any For-loop ignored since 1.3.22.2 the step-value. {TGL} - Fix: Continue didn't work properly in For-loops since 1.3.22.2. {TGL} - Fix: hs2-command "hamnewsjobsdelete" could not be used.{JW} V1.3.23.3 - Fix: Configuration / News / Groups: Reset could produce a GPF. {WJ} - Fix: SMTP-Auth didn't work with Netscape, if login-name and PW were different. {JH} - Fix: The english language-file contains a nonsense-text when receiving articles. {TGL} V1.3.23.2 - New: Configuration / News / Groups: Button "Reset" allows resetting a group with correct handling of news history etc. {WJ} - New: Most threads have now an ending-message to avoid something like "Purging is started..." for the next hour in the first line of the log, if nothing else happens after ending the purge. {TGL} - Chg: Greeting of local SMTP-server is changed to work around a bugs of Netscape 6 ("AUTH" in two versions) {Heiko Rost} - Fix: If there was already a User-Agent-Header, an "index-error" happens. {JW} - Fix: hs2: For-loops didn't work correctly when used in recursive subs. {TGL} - Fix: Script-menu: If there was a script with name foo.hsc and a subdirectory foo in the same directory, they were build up to one menuitem with subitems, which starts the script automatically. {TGL} - Fix: When changing settings of newsserver "BAR", settings of newsserver "fooBAR" was changed, too. {TGL} - Fix: IP-Access: Setting "ALL" made problems (error-messages). {TGL} - Chg: Increased compatibility to Delphi 6 (PE) - Synchronization of Input-Dialog and Parameters for scripts didn't work properly. {JH} V1.3.23.1 - New: Configuration / Local Server: Setting "Purge daily" {TGL} - New: Default-Group for internal postings is now changable in the General- Configuration-Dialog, too. {TGL} - Chg: Killfile-Log: Shortcut Ctrl+X for close is removed, because it competed with the shortcut for the clipboard. The font for the scorefile is changed to Courier New 10 Pt. {TGL} - Chg: Script-Dialog: Default-Texts now on one page and with scrollbars. {TGL} - Chg: Killfile-Log: Increased speed when using "Watch Thread" if the Scorefile is very large. {TGL} - Fix: Trayicon-menu: Local server-menuitems didn't work. {TGL} - Fix: Dialup via DUN with the Online-Menu freezed Hamster until success and doubled Dial-In is denied now. {TGL} - Fix: When changing language-file, the setting for the position of the hs2-shell was erased. {TGL} - Fix: If the headline of a For/While/...-loop was separated over two or more lines (with _ at the end), an error was reported. {TGL} V1.3.23.0 - New: Submenu "Local server / Open mails.in" allows direct access to the mail- folders. {TGL} - Chg: Module hamster.hsm contains several more consts. {JW} - Chg: hs2-command runscript allows now relative pathes and if the extension is missing, ".hs2" is added automatically. {TGL} - Chg: When creating a new NNTP/POP3/SMTP-server, every kind of servertype at the beginning like "nntp://" or "news://" is stripped automatically. {TGL} - Chg: Killfile/Log: works again {TGL} - Chg: Compatibility to RFC 977 if there's no Message-ID: Instead of an error-message the Pseudo-MID <0> is given. {JH} - Fix: If !MAIL FROM or !RCPT-TO contains a name part, it will be stripped to the mail address only. {JW/TGL} - Fix: Greeting of local POP3-Server was incomplete {WJ} - Fix: Killfile/Log: Large Scores.hst couldn't be loaded. {TGL} - Fix: Mailalias-check reported alias-settings to external addresses as invalid. {TGL} - Fix: If FQDN for special headers was unused, but setting "Set Path-Header" active, posting to Hamster were recejected with the errormessage "FQDN not set" {TGL} - Fix: Killfile/log: When a thread was "killed", the entries were additional added to the GetMids.txt-files. {TGL} - Fix: Changes of settings for POP3/SMTP-Server "BAR" changed the settings for a POPS3/SMTP-Server "fooBAR", too. {TGL} - Fix: Dialog for SMTP-Server-Setting: Input fields for timeouts were completly hidden because of the SSL-settings. {TGL} V1.3.22.104 - New: Split of "Configuration / Local" into "Account&Passwords" and "Local server". The dialog "local server" has a new page to edit the IPAccess.hst and allows to change the binding of the local servers. The Dialog "Accounts&Passwords" allows to edit the mailalias.txt. {TGL} - New: Local bindings allow more security. A binding to 127.0.0.1 allows only access from the server itself, a binding zu the network-card only from the local network. Only 0.0.0.0 allows access from everywhere like older Hamster-versions. Default: 127.0.0.1 {JW} - New: When creating new user, you can enter "accountname,full name" directly. {TGL} - New: Configuration / News / Newsserver / Pulls: In prior versions a pull for a group, which doesn't exists anymore, was hidden, now these pulls are visible in a special list and can be deleted. {TGL} - New: Hamster-Counter without special meaning. Use can show them in the statusline with the wildcard %X0 to %X9. Functions to use the counters with hs2: Value=XCounter(Nr), ClearXCounter(Nr[,ToNr]), SetXCounter(Nr, value), IncXCounter(Nr [, value]) and DecXCounter(Nr [, value]). Functions to use the counters with OLE: value = XCounter(Nr), ClearXCounter(FromNr, ToNr), SetXCounter(Nr, value), IncXCounter(Nr, valueWert) and DecXCounter(Nr, value). Nr goes from 0 to 9. {TGL} - New: Killfile/Log revised: Changes on GetMids.txt-files and the scorefile are cached until Save is used. Entries from context-menu now via Main menu available, Scorefile can be edited directly. {TGL} - New: Mailfilter: Use new command "notifyoff" to undo "notify". {WJ} - New: Additional information when loading newsgroups in parts (splitted overview) {WJ} - New: Feed: Add warning to log, if the newsgroups-header of a feeded article contains no known newsgroup. {JW} - New: Feed: Check for existing path in incoming articles can bei disabled: hamster.ini [Setup] local.nntp.checkpath = 0/1, Default 1 {JW} - Chg: Feed: If an incoming article has no Subject- or no valid From-header, the article is not rejected anymore. {JW} - Fix: Purging had some internal bugs, which could kill some articles in rare circumstances. {WJ u.a.} - Fix: local NNTP-Server: Result of NEXT-command now compatible to RFC 977. {JH} - Fix: When loading descriptions from external newsserver for the new groups, there was no check, if the newsserver supports this. (see also: Server.ini, [NewGroups], LoadDescs=0/1/2). {JH} - Fix: Archieve copies of posted articles had no PATH-Header {JW} - Fix: A missing Path-Header was not set by the Mail2News-Gateway {JW} - Fix: Newsgroup-dialog: Flickering of slider to reload postings stopped. {WJ} - Fix: $HAM_EV_RASCONNECTED was not set correctly. {JW} - Fix: hs2-command RasLastError was not available. {WJ/JW} - Fix: When creating a new user-group, an comma in the input results in an error, now the right part is interpreted as group-description. {TGL} - Fix: Aliaslist: {TGL} - Automatic check for invalid aliases and hidden users with warnings/errors, if problems are detected. - If a new user with the same name like an existing alias is created, the alias can be commented out automatically. - If necessary aliases/users (role accounts) are deleted, these are aliases are recreated automatically. - Fix: "hamster.ico" is used for the main-window-icon, too. {TGL} - Fix: Hamster didn't test, if a X-Hamster-Info still exists before adding a (new) one. {JW} - Fix: hs2-Engine crashed when using Pascal-like-quoting-marks. {JH} V1.3.22.103 - New: If there's an icon-file called "hamster.ico" in the hamster-directory, it is used for the main-window and the application itself. {TGL} - New: New wildcard %NE for statusline and trayicon-hint shows the count of postings in news.err {TGL} - New: hs2/OLE: Use HamGroupNameByHandle (hs2) and NewsGrpNameByHandle (OLE) to get the group name for the group handle. {HS} - New: hs2: Use HamCheckPurge to check, if database is purging. {JW} - New: hs2/OLE: Use HamGetStatus(4,1) / ControlGetStatus (4,1) to get the setting for the loglevel of the main window and (4,2) for the loglevel for the logfile. {HS} - New: hs2-Shell has now a permanent history with max. 100 entries. To disable this history you can use Hamster.ini [Main] ShellHist.Log=0. If you want to run more than one command in the hs2-shell you can use Ctrl+T as CRLF. {TGL} - New: When opening any dialog, the mouse-cursor is changed to the wait-icon until the dialog is ready. {TGL} - Chg: Authentification of the client to an ESMTP-Server is now compatible to RFC 1869. {JW} - Chg: The setting "Max. size in lines" for local servers worked not so, like it was described, so you can change it in the future only directly in the hamster.ini. The settings doesn't mean, how much lines are allowed, but the maximum count of chars in _one_ line. The default 1000 should work in most cases. {TGL} - Fix: if there are too many entries in the Killfile there's now a warning instead of an internal error message in the log. {TGL} - Fix: hamster-generated Dates were incorrect (local time instead of GTM- time) {JH/JW} - Fix: Some possible security-holes eleminated. {JW} V1.3.22.102 - New: OLE-XOver contains now Score-Header (X-Hamster-Info), too. {HS} - New: hs2: Function DeleteHostsEntry(IP, Hostname) allows to kill entries in the hosts-file of windows. {JW} - New: Drag&Drop works for assigning local users to a user-group. {HS} - New: Configuration / local: News setting for maximum count of simultaneous client-connections at one time available. {TGL} - Chg: (Optional) Hamster-generated "received"-Header now contains servername (Hamster) and current version. {JW} - Chg: In contrast to older versions the additional headers "User-Agent" and "X-Posting-Agent" can not be used simultaneous, if both are set, only "User- Agent" is used. "User-Agent" is the default when installed new, too. {TGL} - Chg: if a FQDN is set, it is used for the "Helo"-string instead of the DNS-name of the computer to avoid windows-specific problems with the DNS-name. {JW} - Fix: Help / System info now knows WinME and Win2000. {JH} - Fix: If hamster is started with an incorrect script, the loading of the settings failed. {TGL, Thanx to Frank Ledwon to reproduce the error} - Fix: The unused file "KillsStat.log" is not filled up/created anymore. {TGL} - Fix: Help-buttons worked as "Cancel"-buttons, too {AS/TGL} - Fix: Several shortcuts for labels didn't work correctly. {AS/TGL} - Fix: hs2-commands SetHostsEntry_ByName und SetHostsEntry_ByAddr worked only unter Win9X correctly, now the host-file is searched in System\drivers\etc (WinNT), too. {WJ/Andreas Spangenberg) - Fix: Some options which depends, if the special FQDN is set, were disabled, if the MID-FQDN was not set. {TGL} - Fix: In the language-file defined help-file was ignored, help always started hamster_de.hlp {TGL} - Fix: parameters for hamster was not correctly interpreted. {JW} V1.3.22.101 - Fix: hs2: Server-parameter in "HamNewsPull" was ignored. {JW} - Fix: Access-rights for local POP3-server were used for NNTP-server, too {JW} - Fix: Incorrect authentification for RAS: User/User instead of User/PW {WJ+JW} - Fix: Message-ID was not alsways generated. {JW} - Fix: When news-client searched for an Message-ID unknown to hamster, the auto- generated entries in the getmids.txt could posssible get the article from multiple servers instead from the first which has the article. {TGL} - Fix: local mails started a mail.out-action instead of a mail.local-action (JW} - Chg: List of default-Mailaliases extended, to get a correct mailaliases you have to add them automatically or kill the old to generate a new. {JW} - Chg: Check for correct FQDN-Input optimized. {TGL} V1.3.22.100 - Visual changes: - New: Script-dialog to manage scripts and modules, subdirectories can be used to sort the scripts. {TGL} - New: Settings for task-delimiter now in Configuration / General {TGL} - New: Settings for splitting overview now in Configuration / News {TGL} - New: Dialog newsgroup-settings allows reload of old articles with a slider for every available newsserver for this group. {TGL} - New: Optional hs2-shell for direct input of hs2-commands, disabled by default, use Configuration / General to enable. If "hs2shell.hsm" exists, it is used automatically when executing commands from hs2-shell. {TGL} - New: Script-language default can be set, if a script-file begins with #!hs1, it is executed as hs1-script. {TGL} - New: Help-buttons in the dialogs which calls the belonging help-page, if help-file and language-file are prepared for this. {TGL} - New: Setting "LOCAL_ONLY_ADMIN" {HSR} - New: SMTP-Server-dialog revised - SMTP-Auth and user/PW-settings {TGL} - Chg: Now there's two different FQDN: One for message-IDs and one for all other purposes (PATH-header, Received-header and so on). {TGL} - Fix: statusbar was truncated after 127 chars and the vertical scrollbars were removed. {Jens Kordilewski} - Fix: Incorrect thread-log in main-window. {JW} - Fix: Add newspull-dialog: If windows-setting "big fonts" was set, some buttons were invisible. The division between group and server-list is now automatically set, if the dialog is resized. {TGL} - Fix: The FQDN in local configuration is checked for nonsense-entries. {TGL} - Technical changes: - New: Hamster runs from CD-ROM now, Readonly-mode can be forced with parameter /ro and suppressed with /rw. If both parameters are ununsed, hamster looks, if the files in the main-directory are all readonly. In Readonly-mode all writing fnctions (hs2 and OLE inclusive) doesn't work, needed INI-settings are saved in \hamster.ini, many menuitems und settings in the dialogs are hidden. {TGL} - New: Mailaliases (MAlias.hst) can contain the wildcard "%FQDN%", which is internally replaced by the FQDN, if set. if no FQDN is set, these aliases are automatically ignored. default-file is changed. {TGL} - New: postmaster account und newsmaster account (hamster.ini) {JW} - New: local NNTP-server: LIST-command optional available without login. {JW} - Chg: Hamster needs less time to start (statistic is created in own thread and priorities of groups are calculated with less internal work) {JH} - Chg: First access to local servers needs less ressources, so that DOS-attacks should be more complicated. {JW} - Chg: Separate setting for incoming mails, if received-header is generated. {JW} - Chg: local POP3-server: Shorter Greeting. - Chg: HELO-String is tested for invalid chars (_"_,_ _) {JW} "Helo" - Fix: Load by number could create "blind" articles. {JAWO} - Fix: Full name for Info-Mails is quoted now. {JW} - Fix: Feeder: Incoming news are tested for too long lines and if they are too big, in both cases the feeder aborts the download. {JW} {HadLineTooLong} - Fix: Bug on XOver-command, only one article is considered. {HS} - Fix: Hamster didn't log the User-ID in the Received-header {JW} {CurrendUserID} - Fix: Connect-problems with remote servers, when their authentifications depends on the Reader|Slave-mode. {JW} - Fix: When converting mail to news, a date-header is set, if missing. {JW} - Fix: To avoid problems with some special chars, new accounts with these chars are not accepted anymore and old accounts are corrected automatically. To allow compatibility, the access to these old names is furthermore possible, because there is the same conversion used. {TGL} - hs2/OLE-commands: - New: HamMessage(9,1) reloads MAilias.hst, too. {JW} - New: OLE-command "ControlGetNewsErrPath" / hs2-command "HamNewsErrPath" {TGL} - Neu: OLE-command "NewsGrpInformation": Gets informations about a group, similar to an XOver for news. {HSR} - Chg: When missing some header on OLE-Import there's only a warning in the log now. {JW} - Chg: If a newsserver is not found (OLE/Script), there's a warning added to the log and additional a detail-message to the log. {JW} - Fix: hs2: Explicit error-message if return()-parameter is undefined instead of an internal error. {JW} - News-Scorefile - New: Automatic check for invalid lines and deleting expired entries. {TGL} - New: Use "Expire:yyyymmdd" at the end of an filter line for temporary entries. {TGL} - New: A space between fielname and fieldvalue is tolerated now. {TGL} V1.3.22.2 vom 21.1.2001 - New: hs2-function "RasLastError" (no parameter, numeric result) {Joern Weber} - Chg: Local POP3-server accepts an empty password now, too. {Joern Weber} - Chg: Additional informations when there are invalid entries on purging a newsgroup {WJ} - Fix: There was an error in the code for the login-timeout {JW} V1.3.22.1 vom 17.1.2001 - New: buttons for "=> Log: Thread", because many users overlook the context-menu and the double-click. {TGL} - New: Using wildcard %M:User% for statusline or trayicon-hint-formatstring shows the count of mails in the mailaccount of User. {TGL} - Chg: Username and password were stripped from leading or trailing blanks before DUN-connection is opened. {JW} - Chg: All message-dialogs are now created with the windows-function instead of the Delphi-function, because the windows-function uses localized buttons. {TGL/AS} - Fix: When server-threads pull the same group, the double-load of the same articles should now be avoid in most cases. {Heiko Rost} - Fix: Interpretation of Hamster-parameters had some bugs. {JW/WJ/TGL} - Fix: StopScripts stopped scripts in all running hamster-instances {JW} - Fix: When ending hamster, there are more informations added to the log and the "hamster is busy and can't be stopped" should prevent lost of data. {JW} - Fix: Access to internal counter now thread-safe {Joern Weber} - Fix: Internal mails activated the mail.out-action {Konstantin Seiler/AS} - Fix: When closing the thread-log in the main window, sometimes the log changed to an "empty log". {TGL} - Fix: hs2-command Beep didn't work correct in any cases. {JW} - Fix: The "maximum" internal priority could be smaller than a newsgroup with >=100.000 articles Artikeln, so this value is now much higher. {JW} - Fix: The question, if grouplist should be rebuild, came more often than needed. {JH} - Fix: Problems mit double login {HS} - Fix: SMTP-AUTH option didn't force SMTP-AUTH {JW} - Fix: Invalid Hamster-parameter are now ignored {WJ} - Chg/Fix: Separate login-timeouts for the differnt kind of local servers. ([Setup] local.xxxx.timeout.login=time in miliseconds) {JW} - Fix: Timestamp for Received-header was incorrect. {Philipp Kern} - Chg: Different Actions for internal and local mails. {WJ} - Fix: "Purge after x days" purged after x+1 days {HS} - Chg/Fix: If login with authinfo failed, the local NNTP-server closes the connection. To avoid this reaction you can use hamster.ini [setup]wird local.authreq.closeiffalse=0 {JW} - New: Local part of Hamster-generated message-IDs kan be 'encrypted' to hide the fact, that it is a hamster-MID, what windows-version is used (9x or NT) and how late it was. hamster.ini [Setup] crypt.mid=1 {JW} V1.3.22.0 vom 18.11.2000 - [New] Context-menu for logs with menu items "Show single thread", "copy to clipboard", "clear logs"{TGL} - [New] Menu item: Scripts / New / Script/Module {TGL} - [New] Tab "Warnings & Errors": Caption contains count of errors/warnings, color is yellow for warnings only and red for one or more errors, the error-log can be cleared without change of the normal log and you can enable the automatic activation of the error-log. {TGL} - [New] Colors for caption of tab "Error & Warnings" can be configured in the hamster.ini, section [main]: {TGL} ColoredTabs=0/1 ; 0 = no colors ; Set your own colors, if you don't like yellow and red (format of colors=$BBGGRR): TabColorErrorText/TabColorErrorBrush/TabColorWarningText/TabColorWarningBrush= - [Fix] A posting for one or more local group and one or more unknown groups created the unknown groups automatically as local groups. {TGL, Bug was found from Wolfgang Jaeth} - [New] Number of days to keep entries in mail-history now editable in the dialog "Local Settings" {TGL, Idea Klaus Fischer} - [New] Different Hamster-tray-icons, if warning(s) or error(s) occurs {TGL} - [New] Original Hamster-tray-Icons are replaced automatically, if there are files like "Hamst_xy.ico" in the main directory. x means: 1=no jobs running, 2=one or more jobs running. y means: a=no warning/error, b=one or more warning(s), c=one or more error(s). {TGL} - [Fix] An news-score-entry like "~From" results in a "blue screen", if the "From"- Header was empty. {TGL} - [New] Postings, which couldn't be potested, are moved into the new Hamster-error-Path. The default for the hamster-error-path is "\Groups\News.err", you can change the path in the Hamster.ini, Section [Directories], Key "News.err=...". {TGL} - [Chg] Speed-Up for support of other languages. {TGL} Hamster.ini / [Setup] / Language.cached=x => x=1 (Default): Language file is loaded at Startup or change of language only, x=0 (for developers): Language file is updated, if necessary, changes in the language file works immediatly. Hamster.ini / [Setup] / Language.Update.en.dat=1 => Hamster_en.dat is updated, too. - [Fix] news-score-file: Warning instead of blue screen, if there's a blank after an "~". {Joern Weber} - [Chg] ListGetTag/ListSetTag (HSC) now allocate entries dynamically like ListGet/ListSet already did. {JH} - [Fix] "DirCurrent" (HSC) returned path without trailing backslash. {JH} - [Fix] hs2-scripts: Double Quotemarks ("") worked not in every case like they should. {TGL/Alessandro Sebastianutti} - [Chg] MailIn-logfile: Second line for every entry with more detailed infos for the mail. {TGL, Wish Sven Flister} - [Chg] Improved handling of invalid "Date:" headers.{JH} - [New] hs2-function "beep (x)" plays system-sounds. Following constants are included in the hamster.hsm: $SIGNAL_STOP, $SIGNAL_QUESTION, $SIGNAL_EXCLAMATION and $SIGNAL_ASTERISK. {Joern Weber} - [New] HamMessage ( 2, 3 ) clears the log "Warnings & errors" only. {TGL] - [Fix] hs2-function FileExists works with "*.*" and search for directories now. {Joern Weber} - [Fix] hs2-function ParamStr(0) doesn't work in every case. {Wolfgang Jaeth} - [New] Killfile-log: A second click on a column header sorts descending. {TGL} - [Chg] If Hamster is started with parameter "/svc", it will not be closed if (Windows-) user logs off. {JH} - [New] Maximum attempts for sending mails and the option, if failed mails should be deleted, are now changeble with "Settings / Mail(server)". {TGL} V1.3.21.120 vom 22.10.2000 - [Fix] A tabulator between filters or comments in the scroe file doesn't bother Hamster and spaced or tabulators between %> and the number itself are possible now. {Wolfgang Jaeth} - [New] The button "Pull Now" in the group dialog allows you to pull one single group. {TGL, Idea from Sniet} - [New] You can configure how often you want the log to be updated. (Between 0.1 and 1.5 seconds), new layout of the first register. {TGL} - [Chg] Hamster updates the counters for outgoing mail & news if you change from another application to hamster. {TGL} - [Chg] Calling of scripts with parameters and wait flags is now complte: - Hamster execution: hamster.exe [-w] script [param1] [param2] ... - hs2 call: RunScript (script, param list, wait) - OLE call: ControlRunSkript (script, param list, wait) {Wolfgang Jaeth} - [Chg] The critical menu items (Killfile, Purge, Rebuild global lists and Rebuild history) are disabled while jobs are running. {TGL} - [Fix] The hs2 command "Listfiles" didn't work correctly. {Heiko Rost} - [Chg] The register "Warnings & Errors" is only visible if there is at least one errors. Furthermore the caption is highlighted. {TGL} - [Fix] Group handles opened by modules won't be closed while the script is running. {Joern Weber} - [Fix] Lists opened by scripts but not released will be closed automatically. {Joern Weber} - [Fix] hamster_xx.dat files are supposed to be in the main path, not in the EXE path. {TGL} - [Fix] Hamster failed to fetch mails from itself by menu "Online" or script-command "HamMailExchange". Note: This fix should also allow fetching mails again, while H. is still loading new mails. {JH} - [Fix] Hamster failed to fetch mails from itself by menu "Online" or script-command "HamMailExchange". Note: This fix should also allow fetching mails again, while H. is still loading new mails. {JH} - [Fix] Very long changes.txt files can be viewed in the About dialog now. {TGL} - [Chg] Params can contain quotation marks. You simply need to duplicate them. i.e. "Hello ""Bill""!" will be changed to 'Hello "Bill"!'. In this section, internally a lot has been changed. {Wolfgang Jaeth} - [New] Purging of single groups is possible via scripts and OLE: {Joern Weber} - hs2: HamPurge ( option [, group name ] ) - OLE: ControlRunPurgeGroup ( group name ) - [Chg] Return value of HamMessage( 9, x) adjusted. {Wolfgang Jaeth} - [Fix] A manually set "LastGMT=Never" was overwritten when realoading the group list. {Heiko Rost} - [Fix] To avoid problems with some mail servers, the POP3 help command is now deactived. {JH} V1.3.21.112 vom 15.10.2000 - [Fix] Sometimes the version .110 freezed, this problem should be fixed now {JH} V1.3.21.110 vom 6.10.2000 - [New] Timeouts for single server editable {Joern Weber} - [Fix] POP3-Server: You can add aliases now without close and reopen the dialog after every new alias. {TGL} - [Fix] If a scrip opened some groups without closing them before end of script, these groups were closed automatically by Hamster {Joern Weber} - [Fix] Mail-NOOP-command is now only reachable after authentification to avoid DoS-attacks. {JH} - [Fix] Hint for icon in tray was'nt set correctly {JH} - [Fix] If more then one Hamster is started, you had problems with earlier versions of Hamster to decide, which hamster runs started scripts. {Joern Weber} - [Chg] No further messages "suspended newsjob" {JH} - [New] Thread-window has special messages now to show progresses (getting mail etc), the settings, which messages are displayed in the log, is now ignored by the thread-window. {Konstantin Seiler} - [New] Scripts can now interprete Parameters and a script can run annother script now: - New hs2-Function "runscript (Scriptname [, Parameter [, WaitFlag ] ] )" - New hs2-Function "paramcount" - New hs2-Function "paramstr (Nr)" (Nr between 1 and ParamCount) {Wolfgang Jaeth} - [New] hs2- and OLE-functions to ask for special infos: - HamGetStatus(1,n) returns 1, if local server is active - HamGetStatus(2,n) returns the count of connections for the local server - n => 1=Local NNTP-Server, 2=Local POP3-Server, Local SMTP-Server - HamGetStatus(3,n) returns infos about incoming/outgoing News & Mails - n => 1=New articles, 2=Loaded articles, 3=Known (History) articles, 4=Deleted articles, 5=outgoing articles, 6=New mails, 7=outgoing mails {Joern Weber} V1.3.21.100 - [New] Supported Language: Italian, but without italian help-file {Alessandro Sebastianutti} - [Fix] Under special circumstances multiple changes of the current language could exchange the english texts through texts of the last foreign language. {TGL, Hinweis von Alessandro Sebastianutti} - [New] Configuration / Local: Changes on "Max. Script-PW" shorts or expands the list of passwords directly, if you leave the edit-field. {TGL, Idea: Wolfgang Jaeth} - [Fix] Configuration / Mail: Double use of same SMTP-Server-name isn't allowed anymore. - [Fix] Configuration / Mail: There were some problems with pop3-server-aliases - so you had to restart hamster, before you could change the settings of an new alias. {TGL, Hinweis von Patrick Cornelissen} - [Chg] Configuration / News: Before an newspull is deleted, you have to confirm it now. Changes on Servers, Groups and so have an additional info, that they are not reversibel with the "Cancel"-button. {TGL} - [Chg] Configuration / news / Add new pull: Search-mode "Initials" changed: "rp" founds now rec.pets.dogs too {Alessandro Sebastianutti} - [Chg] If any script ends, the history will be flushed automatically {Joern Weber} - [Chg] GetListCommand for mailserver accepts now, if no list is send back. {JH} - [Chg] Username is shown on some log-entries (gettings mails) and in the dialog for configuration of mail {Wolfgang Jaeth & TGL} - [Chg] To avoid problems with fast computers, the hs2-command "ControlMessage(1,x)" uses his second parameter - x stands for the delay in milliseconds, which will be executed, before hamster ist ended. If x is lower than 100, x will be set to 100 automatically. {Joern Weber} - [New] Configuration / News / group: New setting "Post-Server" {TGL, Idea: Damir Kucerauer} - [New] Configuration / News: If a group is moderated or read-only, this will be shown in the grouplist {TGL, Idea: Jürgen Denzler} - [Neu] Configuration / News: If an server ist read-only, the entry in the serverlist is green now and the entries in the pulllist for this server too. {TGL, Idea: Jürgen Denzler} - [New] Information-mails for delete or ignore of mail through filters informs now about the size of the deleted/ignored mails (in bytes) too. {TGL, Idea: Wolfgang Jaeth} - [New] Mailfilt.hst: With $xxx$ you can use the value of the header xxx for comparations. Example: "kill() From:$TO$" deletes mail, where the From-Header contains the To-Header {Hendrik Friedel} - [New] Added hs2-command "InputPW", Syntax like "InputBox", but hidden input (asterix instead of the real key) {TGL, Idea: Thomas Rachel} - [New] Added hs2-command "AddLog (Text, Type [, ShowScriptName] )". Adds a new line to the hamster-log with the given text. For "Type" see the OLE-command "ControlAddLog". "ShowScriptName" decides, if the filename of the script will bei inserted before the text. For infos and warnings you can use the commands "text" and "warning" instead. {TGL, Idea: Andreas Heim} - [New] Added parameter for hs2-command HamFetchMail: HamFetchMail ( , , , , , , ) If LeaveOnServer is "1", mails will be left on the server, "0" deletes them, any other value uses the settings of the server or - if not set - the default setting. {TGL, Idea: Jürgen Denzler} - [Fix] Local SMTP-server can now receive big mails (>5 mb) - there were problems under win9x, if the mails were bigger. {TGL} - [New] hs2-command "Message (2, x)" uses the second parameter now: 0 clears Log and Counter, 1 counter only, 2 log only. {TGL, Idea: Wolfgang Jaeth} V1.3.21.90 (17 Sep 2000) - [New] SMTP-mailserver: dialog for configuration, username/PW and SMTP-Auth editable {TGL} - [Fix] POP3-mailserver-dialog: non-existing sections will be created automatically {TGL} - [Chg] Add pulls: search newsserver with regexp or choose by list {TGL} - [Fix] now the following function works: If a client search an Message-ID which is not in the history, Hamster adds the Message-IDs directly to all "GetMids.txt"-files for all NNTP-servers. You can deactive the function in the "local"-dialog. {TGL} - [Fix] An empty path in hamster.ini ([Directories]/Main=) don't make problems anymore {TGL} - [Chg] Spaces behind or after "#!hs2" in first line of a hs2-script are ignored now {TGL} - [Fix] hs2-script: "HamNewsPull (serverlist)" works now without additional ";" before and after the serverlist. {TGL} - [Fix] Choose pulls for single server: Subscribtions out of a filtered grouplist subscribes the correct groups now. {TGL} - [New] hamster.ini / [actions] / group.doubleclick.exec/pars allows an external program, which will be activated on every doubleclick on a group in the news-configuration. {TGL} - [Fix] Choose pulls for single server: taglines will be shown now, double groups will bei eleminated. {TGL} - [Neu] Mailfilter erlauben den Vergleich mit Headerinhalten bsp. ... @From:$To$ vergleicht, ob From und To gleich sind. Somit steht {} für regex, "" für direkte Vergleiche und $$ für Headerfelder. {Hendrik Friedel} Vr. 1.3.21.80 (14 Sep 2000) - [New] Splash-Screen at start of Hamster {TGL} - [New] Support for additional languages, German ist now supported. {TGL} - [Chg] Dialog "Add Pulls": Additonal Search-Options like "contains", "begins with" and "Initials". The filtering for servers was simplified - instead of regexp you can choose the server with a simple combobox. {TGL} - [New] Log "Warnings & errors" now coloured. {TGL} - [New] If a client search an Message-ID which is not in the history, Hamster adds the Message-IDs directly to all "GetMids.txt"-files for all NNTP-servers. {TGL} - [New] Directories for outgoing Mail and News are configurable in hamster.ini {TGL} - [New] Menuitems under "Local" added: Open Mail.Out / News.Out {TGL} - [Neu] Additional pathfunctions: {TGL} hsc2: HamHscPath, HamHsmPath, HamLogsPath, HamServerPath, HamGroupsPath, HamMailPath, HamNewsOutPath and HamMailsOutPath OLE: ControlGetHscPath, ControlGetHsmPath, ControlGetLogsPath, ControlGetServerPath, ControlGetGroupsPath, ControlGetMailsPath, ControlGetNewsOutPath and ControlGetMailsOutPath - [New] additional log-Page "Single Thread" is opened by double-click on any normal log-entrie. It shows all log-entries for the choosen thread. The result is static e.g. log-entries, which are created later, aren't shown on this page automatically. {TGL} - [Chg] Result of HamPath/ControlGetPath-Function contains the "main"-directory, which can differ from the hamster.exe-directory. {TGL} - [Chg] The log-entries for the POP3/SMTP-threads shows the current serverlist. {TGL} - [New] The old Settings-dialog was splitted into several dialogs an has an own main menu entry. {TGL} - General: The handling of the "Online"-menu-tab was optimized, the options for internal groups and the default editor are editable, you can change the language, there are new options for Splash-Screen and "aks, if outbox full". - News: The pulls for a single server are now editable, user and password can be changed directly for every server and a single groups can be purged now. - Mails: User and password can bei changed directly for every server, the POP3-Server is now configurable in an own dialog, where you can configure the local user for this account and the used section in den mail-score-file. You can now install the same POP3-Server multiple times (an /x is appended to differ them) and you can edit size-filter from different types now without edit the hamster.ini. - Local: The maximum count of Script-User/Pws ist changeble, the base for the passwort-encrytion ist changeble, you can simply deactivate the additonal "X-Posting-Agent"-Header for outgoing news and mails und the maximum size for mails and news for the local Servs are directly editable. - [New] Submenu RAS-Dialing. {TGL} - [Fix] The speed of the group search in the dialog "Add Newspull" is increased. {TGL} - [Änd] The daily group statistic contains a grouplist sorted by article-number now and a list of groups, which aren't uses from the newsclient for more than a week. {TGL} - [New] OLE-Funktion ControlAddLog (String, x) allows creating log-entries by external programs. x means the type of the message: 1=Debug, 2=Detail, 3=Info, 4=System, 5=Warning, 6=Error. // Idea from Martin Kuhlmann - [New] OLE-Funktion ControlChangePassword(AccountName, OldPW, NewPW): Smallint, Results: 0: False old PW, 1: PW changed, 2: Error // Programmed by Phillip Kern - [Fix] Some memory-holes // Konstantin Seiler and Jürgen Haible - [Add] New message-number "9" for HamMessage. purpose: ask only/reload configuration. Remark: This function will be executed only, if the configuration window is closed (return value '0'). Otherwise nothing will be done, and the value '1' will be returned. 'Ask' means: nothing will be done at all, it returns only wheater or not it would be possible (i.e. configuration is closed). // Programmed by Wolfgang Jaeth - [New] Actions in hamster.ini with section [Actions]: xxx.exec means the name of the exe and xxx.pars means the parameter for the program. If they are set, Hamster executes the programm for the chosen action. Allowed actions (xxx): news.out for outgoing news, mail.out for outgoing mails, mail.in for incoming mails and mail.internal for mail, which are generated by Hamster. {TGL} - [Fix] Only HSC und HSM-files are shown in the script-menu now, extension like HSCRIPT are ignored. // Idea by ??? Vr. 1.3.21.0 (06 Aug 2000; see also 1.3.20.10/.20 below) - Chg: List of new groups now reflects changes immediately to the client. {JH} - Fix: Rounding problem converting Delphi to Unix time (encodetime/HSC). {JH} - New: HSC: RasGetIP {JH} Vr. 1.3.20.20 (source update only): - Fix: Keep current view of logfile lines as long as possible if "[ ] Auto- Scroll" is disabled. {JH} - Fix: Decimal value of thread-ID in "X-Hamster-Trace"-line was reported as signed value (i.e. negative). {JH} - Fix: Wrong group description was used for new groups, if server does not support "LIST NEWSGROUPS wildmat". {JH} - Fix: Optional server list was not treated correctly on some of the script commands (HamNews...). {JH} - Fix: Disabled Delphi5's .AutoHotkeys ('&' in dynamic menu-items). {JH} - New: Path settings can now be changed in section [Directories] of file Hamster.ini. {TGL} - New: New checkbox "Find pulls immediately" on selection window for adding new news-pulls. {TGL} // added session persistence {JH} - New: New page "Errors+Warnings" on main window, which shows all logged errors and warnings since Hamster was started. {TGL} // shift list after ~30K entries {JH} - New: The sub-menu to run available scripts was removed and replaced by entries within the script-menu. {TGL} - New: Menu item "Script/Edit Modules" to edit available modules. {TGL} - New: The status-line of Hamster's main window and the hint-text of its tray-icon can now be changed in Hamster.ini ([Main] BottomLineFormat, HintFormat). {TGL} // changed placeholders to %XX; use also for internal default {JH} Vr. 1.3.20.10 (source update only): - Chg: Sources can now be compiled with Delphi5 without modifications. {JH} - Chg: Version ressources "ProductName", "Maintainer" and "Download" are now used for About-page. {JH} PLEASE NOTE: Hamster is now Open Source / New maintainer ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - Starting with version 1.3.20.0, Hamster's sourcecode was released as Open Source: http://home.t-online.de/home/juergen.haible/hamsrc.htm - "Hamster-Classic" is a successor of it, and the addition "Classic" was used to distinguish it from other successors. - The authors or "Hamster-Classic" are: {JH} Juergen Haible, {TGL} Thomas G. Liesner, and many other. Vr. 1.3.20.0 (22 Jul 2000) See also: Changes of test versions 1.3.19.100/1.3.19.200 noted below. - Fix: Error "Zugriffsverletzung bei Adresse ...": 00443015 (Vr. 1.3.18.0), 00450E5D (Vr. 1.3.19.0). - Fix: Invalid HELP-reply (SMTP server). - Chg: Removed XHAMSTER-commands (NNTP/POP3/SMTP server). - Fix: AUTH failed if used with SMTP-after-POP3 (SMTP server). - Chg: Removed "[X] Full"-selections for logfiles. Vr. 1.3.19.200 (09 Jul 2000) BETA - Chg: Modified (unified) former functions used to save articles. This change affects: pulling news, get news by Message-ID, import articles, local posting of H.-generated articles. - New: Report GROUP-errors when pulling news (e.g. outdated groups) in internal.misc (Hamster.ini: internalgroup.pullerrors=...). - New: HSC: HamFlush - New: OLE: ControlFlush - Chg: Ham.exe: Flush history after importing articles. - Chg: File '.\Server\(servername)\newgrps.txt' is not used any more. - New: Note time when group- or description-list was reloaded (file Server.ini: [Pull] ReloadGroupsLast=/ReloadDescsLast=). - New: "Auto-scroll"-checkbox on Log-page. - New: "Leave mails on server" can now be enabled for a specific server (Server.ini, [POP3], LeaveOnServer=1). - New: Optionally add trace-header to posted articles (Hamster.ini: [Setup] news.addxhtrace). - Chg: Hamster timed out if a pulled article contained any ASCII-0 character (fix for problems with msnews.microsoft.com?). Vr. 1.3.19.100 (02 Jul 2000) BETA - Fix: POP3-LIST timed out with specific providers (telda, uunet). - New: Added POST-result to archive-copies of posted news. - Fix: Invalid group-handles caused Hamster to "die" instead of just returning an error-value (scripts). - Chg: Various minor changes (additional logfile-entries, enhanced error-checking etc.) - Chg: Report message-number in NewsOut.log. - Chg: Modified entries in MailOut.log and NewsOut.log (add message number; omit path). - Fix: Tray-icon did not disappear after starting Hamster by OLE. - Fix: Number of jobs left shown as tray-hint was wrong. - New: SMTP server now supports EHLO and authentication with AUTH LOGIN. If authentication is required, it has to be enabled under: "File / Configuration / Local servers / SMTP / [X] SMTP AUTH". - New: SMTP client now supports authentication with AUTH LOGIN. It has to be enabled separately for each server, that requires it (add a line "AUTH=1" under "[SMTP]" in server's file "Server.ini"). - New: HSC: HamSendMailAuth - New: OLE: ControlRunSendMailAuth Vr. 1.3.19.0 (12 Jun 2000) BETA - Chg: Modified history to handle chunk-files concurrently. - Chg: Replaced old handler for news-jobs with a new one. - New: Show number of remaining jobs in the status-line (again). - Chg: Removed former pull- and post-threads and replaced them with a "news-jobs"-thread, which handles all transfers to and from newsservers. Former pull- and post-commands are now simulated to make use of this new thread-type, where "post-jobs" always have a higher priority than "pull-jobs". - New: HSC: HamNewsJobs* - New: OLE: NewsJobs* - Chg: New default for number of pull-jobs per server is now 1. - Chg: Same naming convention of *.msg-files for news as with mails (unique/growing numbers, no leading zeros). - Chg: Running scripts are not counted as "active tasks" any more, so HamThreadCount (hsc) and ControlThreadCount (OLE) might return lower values than in former Hamster-versions. - Chg: Replaced former MD5-implementation with a new one (especially used for history-entries). - Chg: Replaced former Blowfish-implementation with a new one (used for coding stored passwords). - Chg: Updated to PCRE Vr. 3.1 (regular expressions), which is used with a new interface. - Chg: Replaced former tray-icon-component with direct API calls. - Chg: Client-threads (i.e. transfers to/from remote servers) now use blocking socket-connections. - New: Menu "File / Refresh menu items" - Chg: Scripts to start were moved to new sub-menu "Script / Run". - New: Menu "Script / Edit", "Script / Stop all scripts" - Chg: The question for "Rebuilding global lists now?" is now asked (and executed) when adding new pulls. - New: Show currently connected clients in "Threads"-list. - New: Add and expand "Path:"-header in posts to local groups (note: "local group" = not pulled from other servers). - Fix: "crazy endwhile"-effect (HSC; loop-stack was filled with wrong instruction-pointer when used in conjunction with function-calls) - New: AtAdd (HSC) now supports times round midnight ("23.00"-"01.00") - Fix: SMTP multiline reply was treated wrong (-> GMX's HELO-reply). - Chg: Special "nntpdefault"-account is not related with MODE READER (NNTP) any more. MODE READER is just ignored (again). - Chg: Replaced former header-decoding (QP, Base64) with a new one (used with "~"-filters and to display killfile-log). - Chg: Internal groups used by Hamster (hamster.misc/.posted/.errors) were renamed and replaced by a single group: "internal.misc". This new group is automatically created when starting Hamster, the old ones will be retained but will not be used any more. The name(s) of the internal groups may now be changed with settings in Hamster.ini. - Fix: Bug in operator precedence in conjunction with parens (HSC). Vr. 1.3.18.0 (07 May 2000) BETA - Chg: If no password is set for a given server, it is assumed now, that none is needed (providers which auth. by dialup-IP). - Fix: HSC: HamSendMail (3rd par), HamMessage (2nd par), Parser (WSP and parens in function-calls/-declarations) - Chg: HSC: IniRead/IniWrite now use current directory by default, use "HScripts.ini" if no file is given and use "[Common]" if no section is given. - New: HSC: HamMessage(8), HamArtTextExport, HamArtDeleteMid, HamArtLocateMid, HamScoreList, HamScoreTest, DirWindows, DirSystem, VarSet, Sgn, For, Assert, ListBox, RE_Match, RE_Extract, RE_Parse, RE_Split, FileSize, FileTime, ListRasEntries, ErrCatch et.al. - New: OLE: ControlMessage(8) Vr. 1.3.17.0 (29 Apr 2000) BETA - Chg: "RasHangup" (OLE) and "ras.hangup" (.hsc) now also terminate connections not initiated by Hamster. - New: New script-engine activated by "#!hs2" in the first line of a .hsc-script (see helpfile for details). Old .hsc-scripts are still supported [til end of year?] but cannot be mixed with new-style scripts. - Fix: Hamster could become completely unresponsive if its password- option "?" (=ask when needed) was used. - Chg: Mailfilter "postto" now adds "Followup-To: poster" to every mail redirected to a newsgroup (former: only if mail had a "Mailing-List:"-header). - Chg: "LIST EXTENSIONS" (local NNTP) to make NetScape 6 work? Vr. 1.3.16.0 (16 Apr 2000) BETA - Fix: If multiple mailfilters matched, resulting recipients- and newsgroups-lists could contain duplicate entries. - Chg: Modified startup-behaviour to avoid some problems when starting scripts or "clicking" around while Hamster has not finished its initialization. - Chg: Disabled Full-Log-setting under "File/Configuration/Settings". If you save a new Log-setting, a prior "[X] Full"-setting is removed. - Chg: "Remaining Pull-Jobs"-display removed, as its interpretation requires a good knowledge on how Hamster works internally and the value shown was not the value one would expect. - Chg: File ".\Server\allpulls.txt" introduced in Vr. 1.3.15.0 is neither created nor used any more - just delete it. - Chg: File ".\Server\alldescs.txt" is now always used when selecting new news-pulls. It is only rebuild automatically, when Hamster is started and the file is missing. If you select "File/Configuration" and Hamster has noticed, that the file should be rebuild (e.g. groups- or description-lists were reloaded or new groups were reported from one of the news- servers), you are asked to rebuild the file. - Chg: There are now two steps when selecting new pulls. First step is to select the wanted groups in the upper part of the window by groupname and description. Second step is to find and select newsservers, which carry the selected groups. - Chg: If a newsserver reports new newsgroups, the corresponding descriptions are now loaded immediately and are added (e.g.) to the "New groups"-message posted to "hamster.misc". Vr. 1.3.15.0 (09 Apr 2000) BETA - Fix: "notify"-command (mail-filters) without given recipients did not send notification-messages to determined recipients in all cases. - Fix: ControlWaitIdle-command (OLE) with a timeout-value greater than zero returned immediately. - New: Added matching kill-/ignore-lines of mailfilters to notification- messages. - New: Display number of remaining "Pull-Jobs" while pulling groups. Note: Current design does not allow to show an exact value here. - Fix: Local groups could be added more than once. - Chg: Default startup-mode is now "show as window" and not "as icon". - New: Added "[X] Minimize on close"-setting. - New: Killfile-Log: Added "Exit" to context-menu. - New: Killfile-Log: Last sort-order is now saved. - New: Killfile-Log: Set/save sort-sequence for two additional fields. - Fix: Hide input when entering passwords. - Fix: After certain "minimize"-actions, Hamster could be left in an unresponsible state (e.g. Hamster-icon ignores mouse-clicks). - Chg: Don't start "purge" for groups with "days to keep" of "0". This also disables error-detection and -correction for such groups, so they remain really "untouched" when purging. - Chg: Delay and skip groups on purging if they are currently "in use". - New: Added Newsserver-settings, which allow reloading the list of available newsgroups and (re-) loading the list of available newsgroup-descriptions. Note: Unlike group-list, descriptions are NOT loaded by default. - New: Menu "File/Rebuild global lists" creates (by now) two new files: - .\Server\allpulls.txt: Available groups of all servers. - .\Server\alldescs.txt: All groups with their descriptions. These lists are also build automatically when starting Hamster, if they are missing or not up to date any more. They can also be rebuild immediately by scripts using "news.rebuildgloballists" (.hsc) or by "ControlRunRebuildGlobalLists" (OLE). - New: When adding new "News-Pulls", the newsgroup-descriptions are now displayed and may be used for finding, if "[X] Descriptions" is marked. If no descriptions were loaded or none are available, a question-mark is shown instead. Vr. 1.3.14.0 (25 Mar 2000) BETA - New: Mail-filters (see "MailFilt.hst" in helpfile for details). Additional notes for 1.3.13.100-betatesters: - Fix: "postto" additionally generated a mail-message. - Fix: "notify"-command overwrote recipient-list. - New: settings in Hamster.ini ("mail.filter.*"): - number of TOP-lines to load for notification-msgs - global size-filters (without pre-loading of headers) - Chg: Only one notification should be generated now, if "ignore already loaded mails" is enabled and server supports UIDL. - Fix: Add "Followup-To: poster"-header on "postto", if mail contains a "Mailing-List:"-header. - New: Added support for newsgroup-types "y" (posting allowed), "n" (no posting allowed) and "m" (moderated). Restrictions: - the types have to be set manually under "File/Configuration/ Newsgroups/Settings" (default is always "y") - "m" has no special meaning yet, it works like "y" - New: Added (yellow) warning if logfile-setting "[X] Full" is enabled. - New: "call"-command for internal .hsc-scripts. - New: Settings in Hamster.ini: - password.codebase=2 A value of 2 now disables usage of OS-specific values completely. - purge.mhistory.keepdays=14 Number of days to keep entries in mail-history (default: 14). Vr. 1.3.13.0 (15 Feb 2000) BETA - Fix: Listbox-entries were partly unreadable when using 'large fonts'. - Fix: Since 1.3.12, overview-values for lines and bytes returned from Hamster's NNTP-server were wrong (mostly too low). - Chg: Usage of APOP is now controlled by the given password. If it is preceded by "APOP:", APOP is used, USER/PASS otherwise. To force USER/PASS, a password may be preceded with "PASS:". - Fix: Colors in lists were not updated immediately in some cases and were wrong, if a server was set to be readonly. - New: The length of a line and the size of the complete text sent to Hamster's local servers is now limited by default to prevent from DoS-attacks. If one of the limits is exceeded, connection will be terminated. The defaults (1000/2MB) may be changed in Hamster.ini under "[Setup]"; a value of 0 disables the limit: local.limit.linelen.(nntp|pop3|smtp)=1000 local.limit.textsize.(nntp|pop3|smtp)=2097152 - Fix: If authentication failed (get news/mails), Hamster nevertheless tried to continue in some cases. - Fix: Starting of a .hsc-script by command-line failed, if parameter- string contained a path, so association of file-type ".hsc" to "Hamster.exe" failed. - Fix: A mail got different Message-IDs if sent to internal accounts and external recipients at the same time. Vr. 1.3.12.0 (06 Feb 2000) BETA - New: Mark already selected news-pulls blue when selecting new pulls. - New: Mark local groups blue in newsgroup-list. - New: Use APOP instead of USER/PASS if remote POP3-server supports it. - New: Additional logfile named "RasDial.log", which contains an entry for each connection initiated by Hamster. - New: Added support for newsgroup-descriptions. The descriptions are loaded when the group is pulled. For local groups or if the newsserver doesn't support it, the descriptions can be changed under "File/Configuration/Newsgroups/Settings". - Fix: Newsgroups currently in use can't be "deleted" any more. - Chg: When pulling news, articles are additionally stored in the current group, even if this group is not listet in Newsgroups- header of the article (e.g. control-messages in control.*). - Fix: After timeouts a (useless) QUIT-command was sent, causing an additional delay until QUIT timed out, too. - New: To allow access for dynamically assigned IP-addresses (dial-up, DHCP), a special "LOCAL"-setting was added to "IPAccess.hst". The default-setting is "ALL,NA,LOCAL,127.0.0.1", which treats ALL local IP-addresses like "127.0.0.1". - Fix: New subscribed groups should be pulled first again. - New: Added new ControlMessage-numbers (OLE+.hsc) to hide/show main- window and tray-icon. - New/Chg: If a mail could not be delivered by SMTP for any reason: - Sender (or at least "admin") will get a notification by mail. - Delivery is tried again later for a given number of times. -> Hamster.ini: [Setup] sendmail.attempts.max=10 - If all attempts fail, the undeliverable mailfile is finally renamed to "*.err" (.del=0) or deleted (.del=1). -> Hamster.ini: [Setup] sendmail.attempts.del=0 - If only some of the given recipients are not accepted by the SMTP-server, the mail is now immediately send to the accepted ones. These recipients will be commented out in the mailfile ("!X-OK: ..."), so they will not get additional copies of the mail on further attempts. - If it's possible to reset the remote SMTP-server after an error occured, Hamster does not disconnect from server any more but tries to send additional waiting mails. - New: Disable Hamster's "Received:"-header for mails by setting "mail.addreceived=0" under "[Setup]" in Hamster.ini. - Chg: Some commands of local NNTP-server (especially XOVER) should now be faster in groups with large articles. - Fix: "Preferred Post-Server"-setting did not work as a "preference" when selecting a post-server for a given group. The group was somewhat (and unintentional) "fixed" to this specific server. - Chg: The yellow hint-window on tray-icon now shows a few items from the current status-line. Vr. 1.3.11.0 (11 Jan 2000) BETA - Fix: Error "NNTP.LoginUser-Exception #4: Zugriffsverletzung bei Adresse 004710F1 in Modul 'Hamster.exe' Lesen von Adresse 00000000" could finally be reproduced by me and (hopefully) be fixed. - New: To disable the automatic retrieval of new newsgroups from still not Y2K-compliant newsservers, change the "LastGMT="- setting in the appropriate Server.ini to "LastGMT=NEVER". - Chg/Dbg: Use Message-ID of article for additional history-lookup and -entry (was: Message-ID of XOVER-reply). Vr. 1.3.10.0 (03 Jan 2000) BETA - Chg: NEWGROUPS (local NNTP) now also supports broken "YMMDD"- and "1YYMMDD"-dates. - Chg: Options which can only be set manually by editing .ini-files: - Server.ini: [Newgroups] 4-Digit-Years=0 If set to 1, NEWGROUPS-command for this server is invoked with format "YYYYMMDD ...". - Fix: Connections to remote-servers were not terminated in all cases after timeouts (especially after XOVER/ARTICLE). - New: Two new levels for log-files named "Details" (=commands sent to remote-servers and their replies) and "Full" (=complete communication including article-/mail-data). Default for new installations was changed to also save more communication-"[X] Details". - Dbg: "Additional logfile-entries in client-auth..." part XIV. Vr. 1.3.9.0 (18 Dec 1999) BETA - Dbg: Disabled caching of client-threads. - Dbg: Additional logfile-entries in client-authentication, if "[X] Debug" is enabled. Vr. 1.3.8.0 (05 Dec 1999) BETA - Chg: Additional log-entries for local (NNTP-/POP3-) authentication. - Chg: Removed one possible reason for "... Lesen von Adresse 00000000"- exceptions. - Fix: "wait.delay" (internal scripts) did not work any more. - Chg: Removed "experimental", additional lookup of IP-address. - New: Confirmation-message if starting "Rebuild history" by menu. - New: Split long Received-header into two lines (local SMTP). - Fix: Deleting newsserver now also deletes its news-pulls. - Chg: "start.wait" (internal script) now always sets Hamster's root- directory as the "working directory" for the started program. Vr. 1.3.7.0 (28 Nov 1999) BETA - Fix: "ham import" tried to import "directories", not only files ... - New: Added "[X] Ignore already loaded mails, i.e. do not load them again"-setting to prevent from loading mails more than once, if deleting of mails is disabled. For this function to work, a history for mail-UIDLs was added (file: mails\mhistory.dat) and the purge-function was enhanced accordingly (period is by now fixed to 14 days). - New: Added "[X] Start as icon"-setting. - Chg: Note destination-newsgroups in hamster.posted-intro. - Fix: An active 'wait.delay' (internal script) could not be stopped. - Chg: HELO (local SMTP) is now optional. - Fix: Files and directories were not removed when deleting servers. - Chg: Added warning, if directory could not be deleted when deleting a server or a newsgroup (mostly due to non-Hamster-files). - Fix: Pull-thread for a given server was not stopped on timeouts, so download of different groups could become mixed up "a little", if answer for abandoned group still arrived when Hamster was already working with the next group. Additionally, a more detailed check for GROUP-reply was implemented. - Chg: Added consistency-checks based on file-sizes to recognized and delete damaged index-entries when purging articles. - Fix: Hamster is now able [again *sigh*], to detect and automatically rebuild missing newsgroup-indexfiles. - Chg: Added some log-entries to trim down some reported problems, which I could not reproduce here. - New: Added a new score-field named "Age", which is based on the Date:- header and gives the age of the article in days (e.g. to ignore all articles older than 14 days, use "=-9999 age %>14"). - New: OLE-function: NewsLocateMID2 (with Variant-pars for VBScript). - New: Mark last client-usage of a group in group's Data.ini ("[Info] LastClientRead="). - Chg: Original "Xref"-header is now saved in "X-Old-Xref"-header. Vr. 1.3.6.0 (24 Oct 1999) BETA - Fix: "history.chunkbits"-setting had no effect yet. - Fix: Definable items of "Online"-menu did not work if called by tray-icon. - Chg: "Color" of tray-icon now depends on "Threads=..."-count instead of RasDial-state. - Fix: Invalid reply on HELO (SMTP) without domain-name. - Fix: Local dupes on concurrent downloads. - Fix: "ham import" created invalid Date:-header with option "-x". - Chg: Start internal script by command-line even if Hamster is already running. Already running tasks will be terminated in this case. - Chg: Accept non-RFC cancel-message of NetScape ... PLEASE NOTE: New file-format for news-history Starting with version 1.3.5, a new file-format is used for the history. If you are upgrading an older version of Hamster, the new files will be created automatically when starting the new Hamster for the first time. The old history-file "History.dat" in "Groups"- directory may (and should) be deleted manually. Vr. 1.3.5.0 (17 Oct 1999) BETA - New: The file-format of history-file has changed. New history-files will be created automatically when starting the new Hamster for the first time. - New: The new "[Setup] history.chunkbits=4"-setting in Hamster.ini controls, how many files will be used for history. - Chg: A small "Please wait"-window is displayed if history is rebuild automatically due to missing files. - Chg: More effective handling of groups-indexfiles (data.idx). - New: If an account with username "nntpdefault" and password "*" is created, its NNTP-settings will be used, if user accesses the local NNTP-server without prior authentication. This "auto-login" takes place, when client issues a "mode reader"-command. - Fix: Passwords in error-messages replaced by "[...]" in logfile. - New: Menu-item "File/Clear counters+log" - New: "~"-scoreentries now support base64-encoded headers. - Chg: Misleading reply on NNTP-POST if hdr/body-separator was missing. - Chg: POST-replies (NNTP) with recommended and finally used M-ID. - Fix: Indexfiles and history-files were saved too often and even if content has not changed (experimental-1.3.4.100 only). - New: New and enhanced functions for OLE- and internal scripts: - ControlMessage, message: Initiates some special functions like start/stop local servers, reset counters, exit. - New: When Hamster is started or minimized now, its main-window and taskbar-entry will be hidden. It is replaced by an icon in the taskbar notification area (system-tray). Double-click with left mouse-button restores the window, single click with right mouse-button displays menu. Vr. 1.3.4.0 (25 Sep 1999) BETA - Fix: When adding new groups with "News-Pulls", the groups were not generated and saved in all cases. - Chg: Modified article-parsing in a way, that Hamster is also able to load news from servers running "NNTP Service Microsoft® Internet Services 5.5" ... - Chg: Removed misleading connection-thread from thread-list. - Chg: Display local server replies as "Info" now, not as "Debug". - New: Display number of loaded mails. Slightly modified the format of the status-line to keep it small. - Chg: Additionally show name of winsock-errors (e.g. WSAETIMEDOUT). - Chg: Additionally show description of RAS-errors. - Chg: Stop further download of mail/news, if save to file fails (e.g. when disk is full). - Chg: Replaced APOP-digest (POP3) in logfile with "[...]". PLEASE NOTE: No access to NNTP/POP3 without authentification! Starting with version 1.3.3, it's not possible any more to access Hamster's NNTP- and POP3-servers without prior authentication. If you are upgrading an older version of Hamster, you have to enter a password for the default-account "admin" under "File/Configuration/ Accounts" and use these settings for authentication in your news- or mail-client (i.e. "admin" as username and the password chosen). Vr. 1.3.3.0 (19 Sep 1999) BETA - Chg: Removed "Authentication [X] required" for NNTP- and POP3-server, as this is default from now on. Renamed SMTP's "Authentication [X] required" to "SMTP-after-POP3". - New: Added "[X] Allow POST to unknown groups"-setting (disabled by default and not recommended for multiuser-environments). - New: Definition for local domains. Mails sent to addresses with these domains via local SMTP-server will be delivered locally. - New: Assign specific mail-addresses to local accounts. Mails sent to these addresses via local SMTP-server will be delivered locally. - New: "General purpose"-passwords ($x) now work with RasDial too. - Chg: Added some date-related tests before loading new groups and log used NEWGROUPS-values in signature of announcements in hamster.misc. - Chg: New configuration page "Local servers". Former "Accounts"-page renamed to "Local accounts". - Fix: Removed "OK"- and "Cancel"-buttons on configuration-window, as they did not work as [you ;-)] expected. Some pages got a "Save"- button instead, changes on other pages are saved immediately. - Fix: Deleting account now deletes mailbox, if it's empty. - Fix: "admin"-mailbox can't be deleted any more. - Fix: Some valid groupnames (e.g. trailing "+"-sign like in "c++") were rejected due to a faulty syntax-check. - Fix: "ham import": mbox-format now triggers on "From " (case-dep.) - Fix: Mark missing headers with '(none)' on XHDR (NNTP). (Agent) - Chg: Changed "misleading" UIDL-format (only used internally). Vr. 1.3.2.0 (05 Sep 1999) BETA - New: Added user-accounts (-> File/Configuration/Accounts), which will be used, if "Authentication: [X] required" is activated for the local servers (-> File/Cfg./Settings). If authentication is enabled, the behaviour of the local servers changes as follows: - NNTP: user-specific group-selection for reading and posting; (cross-) postings to unknown groups are rejected, even if a valid Followup-To is set - POP3: separate mailboxes per account, but so far, they can only be filled by the new script-commands mentioned below - SMTP: only connections with prior POP3-authentication are accepted ("SMTP-after-POP3") - New: "General purpose"-passwords (-> File/Cfg./Passwords) to be used in scripts, which avoids the need to write them in clear text. - New: New and enhanced functions for OLE- and internal scripts: - ControlSetLogin, setlogin: support for new "general purpose"- passwords mentioned above - ControlRunFetchMail, fetchmail: fetch mails from a given server, optionally store the mail in a given account-mailbox - ControlRunSendMail, sendmail: send mails to a given server, optionally based on Envelope-From of message - Chg: Passwords used to log into local servers are also replaced by "[...]" now in the logfiles. - New: Support for APOP-authentication (local POP3-server). - Fix: Add missing Date:-header in archive-copy of posted article (XNews). - Fix: Order of mail-numbers could change after RSET (POP3). - Fix: Mailbox-locking (concurrent POP3-sessions of same user). - Chg: Regex-selection under "News-Pulls/Add" now includes servername. - Fix: Missing history-entry for messages stored in hamster.posted. - Fix: XPAT (NNTP) without params returned 500 instead of 501 (slrn). - Chg: Optimized range-selection for XPAT (NNTP) Vr. 1.3.1.0 (22 Aug 1999) BETA - New: Group-selection on "News-Pulls/Add" with regular expression. - New: Select more than one group on "News-Pulls/Add". - New: Internal scripts: Added "start.wait" and "start.nowait" to start external programs. - New: Removed menu-item "Online/Script: Default.hsc" and added a separate "Script"-menu containing all available *.hsc-files. - New: Added menu-item "Online/Single Server" to start transfer to/from one of the defined servers. - Fix: Group-selection with ["pattern"] in scorefile did not work. - Chg: "Lines:"-value in Hamster's XOVER-reply is not based on the given Lines:-header of the article any more. - Chg: Local cancel failed, if "From:"-header of cancel was not exactly the same as that of the article to cancel (slrn). - Fix: NEWGROUPS (NNTP) mostly returned all or none groups ... - Chg: If connection was lost during posting, a misleading 340-reply was generated. - New: OLE-function: NewsImport - New: Import messages into Hamster's database with "ham import". - Chg: Remember last selected page on main-window and reselect it on startup. - Fix: Already known Message-IDs were not deleted in "getmids.txt" ("Mark for retrieval"-function). - New: If a Message-ID in "getmids.txt" is preceded with "!", it will be pulled, even it is marked as "known" in history-file. - New: Hamster.ini: [Setup] local.timeout.quitdelay=100 Delay in milliseconds before local servers close a connection after client's final QUIT (Agent). - Chg: Hamster.ini: [Setup] remote.timeout.connect/.command=120 Default timeouts raised from 60 to 120 seconds. - Fix: Crosspost-restrictions could not be turned off by setting a "Followup-To:"-header. - New: Start internal script by command-line ("hamster.exe doit.hsc"). Note: This only works, if Hamster is not running yet. - New: Killfile-Log: "Select all (Ctrl-A)" - Chg: Archive-copies of posted articles in hamster.posted now get a unique Message-ID and a correct "Newsgroups:"-header (original values will be preserved in "X-Post-..."-headers). To avoid confusions, the article is also marked an "archive-copy" in the body-text of the article. - Fix: Scorelines with a leading '=' stopped further scoring, but did not adjust the resulting score-value. - Chg: When deleting a "Newsgroup", all corresponding "News-Pulls" will be deleted also. - Chg: SMTP-HELO now uses a/the hostname, not "localhost". Vr. 1.3.0.42 (11 Jul 1999) BETA - Fix: "Preferred Post-Server" was ignored. - Chg: Removed STAT when pulling mails. - Chg: Changed naming convention for mailfiles created by Hamster (*.msg, IN and OUT): Number in decimal without leading zeros; numbers will only be reset to 1 when 99.999.999 is reached. - Chg: Options which can only be set manually by editing .ini-files: - Server.ini: [Setup] ReadOnly=0 If set to 1, the given newsserver will not be used to post articles. - Chg: Added further log-messages. Vr. 1.3.0.40 (04 Jul 1999) BETA - Fix: A group was not recognized as "known", if its spelling was different from that in Hamster's group-list (upper-/lower- case). Articles were loaded but not saved in this case. - Fix: NEWGROUPS (NNTP) now returns data in same format as LIST. - Fix: Automatically ignore scorefile and load articles by number, if newsserver does not support XOVER. - Chg: Additional warning- and error-messages in some "critical" (support- ;-) situations. - Chg: If loading of newsgroups-list fails, no dummy-list containing the error-messages will be saved any more, so the list will be loaded automatically after solving the problem (e.g. wrong username/password). - Chg: Turned (yellow) warnings of thread-limiter into (b/w) infos. - Fix: Articles were not posted immediately if "preferred post- server" was not in the list of selected servers. Now it will be posted to one of the given servers, if the group is pulled from it. - Chg: Don't start more (useless) pull-threads than there are jobs to do for a given server. Vr. 1.3.0.38 (27 Jun 1999) BETA - New: OLE-functions: NewsDeleteByMID - New: Execute cancel-messages (local groups only; identical From; notification in hamster.misc). - New: Improved version of "ham.exe": - "delete": Delete article by Message-ID in Hamster's database. - Chg: Some minor performance-optimizations (less group-reopens when pulling news; less serialization when accessing group-files and adding log-entries). - New: Added a short connection-info after closing RAS-connection. - Fix: Final "." could be missing on TOP-command (local POP3-server). - Fix: Internal errors in protocol-handling of local servers were only treated as "Debug"-infos instead of more "visible" and correct "Errors" (like in TOP/POP3-situation above). - Fix: Invalid characters were accepted when setting FQDN. - Chg: Added some syntactical checks when posting articles. - Chg: Additional checks on purge to detect and remove "damaged" articles in database-files. - New: Options which can only be set manually by editing .ini-files: - Hamster.ini: [Setup] password.codebase=0 Defines how the keyword is built for encoding the entries in password-file. If set to 1, the user-name is not used for it (e.g. on NT, if Hamster is used with different logins). Note: You have to restart Hamster and set all passwords again after changing this value! - Fix: Check for valid newsgroup-name when adding a local group. Vr. 1.3.0.36 (19 Jun 1999) BETA - Fix: Scores on "Xref" and "Xpost" were ignored. - Chg: "Scorefile-Test" in Killfile-Log could be rather slow. - Chg: Additional error-handling for POP3-server. - New: Hamster could not be started/used, if RAS was not installed. The RAS-DLLs are now loaded dynamically only when needed. - New: "rasapi32.dll" added to "Help/System Informations". - New: Options which can only be set manually by editing .ini-files: - Hamster.ini: [Setup] remote.timeout.connect=60 [Setup] remote.timeout.command=60 Seconds after which remote-servers have to answer (when connecting/after sending a command) before a 'no response from server' is assumed (in seconds; default: 60). - Chg: Options which can only be set manually by editing .ini-files: - Server.ini: [Pull] Threads=2 The new limit for concurrent threads per server is now a GNKSA-compliant 4 threads per server, default is still "2". Note: The usage-policy for some servers might order you not to use higher values than 1, 2 or 3. The default-value of "2" should be OK for most servers, but if in doubt, ask your newsmaster, how many concurrent connections ("sockets") are allowed on his server. Note: The thread-limit per server is now "strict" and can't be "workarounded" by starting additional tasks by menu or scripts as in former versions. If additional tasks are started, they will be suspended until another thread for the given server has finished (in most cases they will do just nothing, as the jobs are already done by the other threads). - Chg: Optimized history (insert-time for pulled articles). - Chg: Priority for large and currently unused groups when pulling news. This avoids ineffective pulls and "delayed" groups at the end of transmission, when only a few threads are left. Vr. 1.3.0.34 (13 Jun 1999) BETA - Chg: Limitation on max. 10 concurrent online-threads removed. - New: Generate Xref-headers. - Chg: Lowered restrictions when crossposting to too many [unknown] groups, IF Followup-To is set. - Chg: Disabled "[Setup] news.removemids=". - Chg: Add missing Lines:-header when archiving in .posted/.errors. - Fix: Group-specific purge-range was ignored. - New: If a score-pattern is surrounded by '{' and '}', it is treated as a PCRE-style regular expression, e.g.: -1 From {no@?spam} Regex-matching is not case-sensitive, but this can be changed in a pattern with a leading "(?-i)" or with "(?-i:XXX)", e.g.: -1 Subject {(?-i)HELP} {(?-i:URGENT)} - New: To mix scores for different header-fields on a single line, a pattern may be qualified with ('@'+headerfield+':'), e.g.: -1 Subject {[!?]{3}} "help" "urgent" -@From:"me@home" -";-)" - New: OLE-function: NewsScoreTest - New: Improved version of "ham.exe": - "scoreview": Show scorelines used for a given group. - "scoretest": Show score-value and matching score-lines for a given article. - New: "Scorefile-Test" in Killfile-Log shows the scorelines, which match on the selected article. Vr. 1.3.0.32 (05 Jun 1999) BETA - New: Menu "Help / System-Informations". - Chg: Default inactivity-timeout for local servers raised to 60 min. - New: Add missing Date:-header if article is posted to or archived in local groups. - New: OLE-functions: NewsLocateMID, ControlRunRebuildHistory. - Chg: Separate settings for the generation of Message-IDs for news and mails. - Chg: Posted articles with "unknown" groups will be accepted, if at least one of it is "known" and at most two are "unknown". - Fix: Articles without Message-ID in hamster.posted/.errors. - Fix: Upper range of available articles in a group could be set to a lower number on purge, if article with the highest number was purged, or even be set to 0, if all articles were purged. - New: Options which can only be set manually by editing .ini-files: - Server.ini: [Pull] Threads=2 Number of threads started when pulling news (default: 2, valid range: 0-9) - Hamster.ini: [Setup] local.timeout.inactivity=60 Minutes after which local servers disconnect inactive clients (default: 60). - Hamster.ini: [Setup] mail.addxhamster=1 news.addxhamster=1 Disable Hamster's "X-Posting-Agent"-header for mail and/or news (default: 1=enable; 0 to disable). - Hamster.ini: [Setup] mail.removemids=FQDN1,FQDN2,... news.removemids= Remove Message-ID from messages posted to local NNTP-server (POST) and/or sent to local SMTP-server, if its FQDN is one of the given FQDNs in the list. Message-IDs for news-articles will NOT be removed, if an article contains a Path:-header or is marked as "known" or "MID already removed earlier" in history-file. Additionally, if history-check fails, the article will be refused, i.e. it will not be accepted again (history-range is raised to at least 14 days, if "news.removemids" is set). - New: Improved version of "ham.exe": - "locate" article by Message-ID - "type" and "export" specific article (option: "-number") - directly "grep" in groups with regexp-patterns - group-selection with one or more regexp-patterns (see "ham help" or "ham help all" for more^Wdetails). Vr. 1.3.0.30 (31 May 1999) BETA - Fix: Local servers ... - New: POP3/NOOP Vr. 1.3.0.29 (30 May 1999) BETA - Fix: Client-connection was "used" to early, which caused a misleading "no posting allowed"-message when connecting. - Chg: Added "X-Posting-Agent"-header in sent mails. Vr. 1.3.0.28 (29 May 1999) BETA - Chg: [Local-servers] Initial greeting-message was sent before client-connection was completely initialized. This could cause Hamster or client to "die" and a "lost" connection. - Chg: [Local-servers] Show (yellow) warnings when connection is lost or closed by Hamster. - Chg: Additional debug-logs for passwordfile-usage. - Chg: When decoding of username/password fails, Hamster now uses "ask for the values" as default. - Chg: Width of horizontal scrollbar adjusted ... Vr. 1.3.0.27 (27 May 1999) BETA - New: Additional extensions for local NNTP-Server: "LIST ACTIVE [wildmat]", "LIST ACTIVE.TIMES", "XPAT header range wildmat [wildmat...]" - Fix: Reject articles posted with missing or unknown newsgroup. - Fix: Enable crossposting in local groups. - Chg: (path)\Hamster.exe can only be started once. - Chg: Accept empty "empty list" on POP3/LIST (telda.net?) - Chg: Local servers: separate threads per client-connection. Vr. 1.3.0.24 (15 May 1999) BETA - Fix: Generate Message-ID for mails. Service-Pack 1. ;-) Vr. 1.3.0.23 (15 May 1999) BETA - Chg/Fix: Redesign of local-servers which solves some issues like: - Hamster could "die" and/or cause unpredictable results, if connections to local-servers were closed immediately after a "QUIT"-command. - Similar effects, when connection was lost during sending or receiving data. - SMTP-envelope of mails sent to SMTP-server could get lost under certain conditions (don't panic, mail-delivery would have failed with "red" errors in this case). - Error-handling, in general, was really B.A.D. - Fix: Errors on external-connections were noted but not handled correctly and mostly caused Hamster to "die". - Chg: Additional ("visible") warning when posting of article fails. - Fix: Articles loaded by "mark for retrieval" were counted under "Load", but not under "All". - Chg: "wait.until" (internal script) now waits til next minute before it starts checking the given timepoints. - New: Show number of articles/mails in outbox on main-window. - New: Generate Message-ID for mails if enabled for news. Vr. 1.3.0.22 (10 May 1999) BETA - Chg: Modified behaviour when clients connect to local-servers. - Chg: Modified error-handling for client-connections to local-servers. - Chg: Additional checks and warnings for invalid scorefile-entries. - Chg: Increased width of configuration-window. Vr. 1.3.0.21 (09 May 1999) BETA - New: Start new session-logfile when date changes. - Fix: "news.purge" (internal script) did ... nothing. - Fix: Empty lines sent to local servers caused error-message. - Chg: Improved concurrent news-pulls from different servers. - Fix: "wait.until" (internal script) did ... nothing. - New: "LIST EXTENSIONS" (NNTP), "AUTH" (POP3) and "EHLP" (SMTP) are "known" now, but still give a "not implemented"-response. - Fix: Improved behaviour on "lost" connections to local-servers. - Chg: Increased width of selection-window for news-pulls. Vr. 1.3.0.20 (06 May 1999) BETA - New: Allow or refuse connections to the local servers based on the IP-address of the connecting client. By default, only addresses 127.0.0.1 and 192.168.0.0-192.168.255.255 are accepted. To modify this default, you have to generate a file named "IPAccess.hst" with appropriate settings (see "IPAccess.hst"). - New: Added Win32-event named 'evtHamster.IsIdle', which is signaled, when Hamster is in idle-state, and unsignaled, when there are active tasks like purge, pulling news etc. (see "Events"). - Chg: The detection of "first pull" was changed from "no articles in group" to a real "no articles loaded from server yet". - Chg: Additional checks and warnings for invalid scorefile-entries. - New: "wait.until" (internal script) with multiple timepoints. - New: "restart" (internal script) restarts script from beginning. - New: "Del"- and "Ctrl+M"-shortcuts for functions in killfile-log. - Fix: Unpredictable change of sort-order in killfile-log after deleting and/or marking for retrieval. - Fix: Local servers: Closing connection after "QUIT"-command from client could sometimes cause a ... dead Hamster. - Fix: Local servers: Sending large amount of data to clients (like big articles or many overview-lines) was not safe and could cause gaps in transmitted data-stream (similar to "large mail"-effect fixed in 1.3.0.12). - Fix: Local servers: Initial greeting message from Hamster was assigned to (ooops) wrong socket-event, which could "disturb" dataflow (seldom effect, mostly after loading hundreds of overview-lines: Agent displays "200 Hamster-NNTP Vr. ..." as Subject). Vr. 1.3.0.16 (25 Apr 1999) BETA - Chg: if scoreline contains an unquoted ';' or '#', the rest of the line is ignored (i.e. treated as a comment) - New: additional functions for OLE-automation (see list in helpfile) - Chg: built-in scripts modified to use OLE-automation-functions - Fix: script-command "setlogin" had no effect Vr. 1.3.0.15 (18 Apr 1999) BETA - Fix: invalid dates were displayed (and sorted) in killfile-log - New: included OLE-interface to access Hamster from other programs; by now, only a few functions were implemented for testing- purposes; the "Hamster.App"-object is registered automatically when Hamster.exe is started - New: commandline-utility "Ham.exe" to test the new OLE-interface; type "ham help" to get a short helptext for the functions, e.g. "ham export de.comm.software.forte-agent > dcsfa.txt" - Chg: optimized behaviour when pulling a group which is already in use by another thread (group-pull is not delayed or skipped when "in use" is just a short "saving a crossposted article") Vr. 1.3.0.13 (release-date intentionally left blank) BETA - New: an interface to Hamster from other programs :-) - Chg: removed this &*(§$&])!-interface :-( - Fix: cool down, relax, insert new coin ... ;-) Vr. 1.3.0.12 (09 Apr 1999) BETA - Fix: number of kept logfiles was always 10 regardless of cfg.-value - Chg: improved the automatic detection of new article-ranges on server (e.g. reinstalled server with new article-numbers) - Chg: when adding group+server at "Configuration/News-Pulls", the referenced group is now created automatically if it does not exist already - Chg: removed (obsolete) "Add/Select"-button at "Configuration/Groups" - New: list of active threads on main window - Fix: "large" mails could not be sent Vr. 1.3.0.10 (07 Apr 1999) BETA - New: added "Xpost" to allow scoring on crosspostings (e.g.: "-1 Xpost %>3" -> posted in more than 3 groups) - New: 'score.loglimit' can now be set on scorefile-editwindow - Chg: disabled internal cache for local article-ranges (min./max. no.) Vr. 1.3.0.9 (06 Apr 1999) BETA - Fix: "stop all tasks" could (still) cause one corrupted article/mail - Fix: "corrupted" articles could cause (unpredictable) side-effects - Fix: the reverse-lookup of the domain connecting to the local servers caused Windows to dial, even if it was "localhost" defined in local "HOSTS"-file ... [dirty comments of author snipped] ... the logfile now only contains the IP-number of the connecting station Vr. 1.3.0.8 (05 Apr 1999) BETA - Fix: back to connection-behaviour of Vr. 1.3.0.3 due to problems when connecting to local-servers - Chg: added "///BETA/// Renumber triggered: ..."-warning with additional informations when renumbering of articles on newsserver is detected Vr. 1.3.0.7 (04 Apr 1999) BETA - New: added "Lines:"-header for info-postings in hamster.misc - Chg: replaced username and password in logfile with "[...]" - Chg: additional debug-log entries to make support- and bugfix-life easier (like article-ranges before downloading) - Chg: completely rewritten news-pull (e.g. two threads for each each server by default; pull-list per server not per thread) - Fix: interrupted news-pull could cause one corrupted article (i.e. saved only with lines loaded before interruption) - Chg: default log-length in debug-mode doubled to first 120 byte of received data - New: To get a complete log: close Hamster, change "log.file.mask=FFFF" under "[Setup]" in Hamster.ini and restart Hamster; this megabyte- eating setting is disabled when using "Configuration" again. - New: to identify server-related issues, the initial server-message is now stored in file ".\Server\(servername)\Greeting.txt" - Chg: (try to ;-) handle "peculiar" end of POP3-LIST from Germanynet - Fix: error when exceeding 32K matching groups in group-selection - Fix: no postserver found with trailing whitespace on "Newsgroups:" - Fix: error(s) when Windows wants to auto-dial (?) for a localhost- connection (???), but confirmation-box is cancelled - Fix: Hamster was not initialized until it became "visible" (e.g. local-servers not active when started "minimized") - Chg: save/load last position of main- and scoreedit-window - Chg: added horizontal scroll for messages in main-window - Fix: listbox-entries were too low when using 'large fonts' - New: articles with a score of less than "score.loglimit="-setting under "[Setup]" in Hamster.ini are not logged in killfile-log (default: "score.loglimit=-10000", i.e. log all) Vr. 1.3.0.3 (29 Mar 1999) BETA - Fix: POP3-maildownload stopped after the first mail was loaded, stored and (if enabled under 'Settings') deleted from server. No mails were lost due to this issue. Vr. 1.3.0.2 (22 Mar 1999) BETA - Fix: error when Hamster was about to send out mails with SMTP (situation: no preferred smtp-server set AND transfer was startet with one of the definable menu-items) - Fix: error when starting transfer without "Scores.hst"-file - Fix: error when starting script without "Default.hsc"-file - Fix: error when selecting group and groupfile was not loaded yet - Chg: default-username and -passwort for new servers was changed from "ask when needed" (="?") to "not needed" (="") - Chg: the article-count in reply to "GROUP"-command of newsserver was changed from "exact" to "estimated" due to performance issues - New: configuration-setting to delete mails on server after loading them by POP3. default value is: "[X] Leave mails on server, i.e. do not delete them." - Chg: hide separator-line in online-menu if no var.-items defined Vr. 1.3.0.1 (21 Mar 1999) BETA - New: online-help added (Hamster.hlp). Explanation of Initials: ~~~~~~~~~~~~~~~~~~~~~~~~ AH = Andreas Heim AP1 = Alexander Plas AP2 = Alfred Peters AS1 = Alessandro Sebastianutti AS2 = Arne Schloh GD = Graham Drabble GG = Gerold Görke GLG = Gildas Le Gouic GW = Günter Wukoutz HB = Hendrik Brummermann HR = Heiko Rost HS = Heiko Studt JH = Jürgen Haible JW = Jörn Weber MB = Michal Bartoszkiewicz MG = Martin Germann MR = Mathias Röllig MS = Max Sanzharov NBS = "NineBerry" Schwarz OJB = Obbe-Jan Bakker OZ = Olivier Zolli PW = Philipp Wendler SS = Stefan Seth TGL = Thomas G. Liesner