|
1.73g 29th January 2006 (Beta Release)
|
- Service configuration files:
- New registry key: HKEY_LOCAL_MACHINE\Software\SpamPal for Windows\SpamPal\ServiceConfigDirPath
can be used to set location of Service configuration data without affecting instances of
SpamPal that execute as an application.
- By default, new service installations now store configuration in "All Users\Application Data\SpamPal"
rather than "LocalService\Application Data\SpamPal" - for existing users, the ServiceConfigDirPath
registry key should get set automatically so your service still finds your old configuration.
This should prevent the service configuration moving between LocalService and NetworkService folders
occaisionally. (Thanks to George Breese for his great diagnosis of this problem!)
- SMTP: On 'Verbose' or 'Extreme' detail level, logfile now records all RCPT TOs that weren't
rejected by SpamPal as well as those that were.
- Installer was putting wrong default data in "auto-whitelist exclusions" options window -
fixed.
- Auto-whitelist logging had become broken in 1.72i; fixed.
- Transparent proixy:
- Fixed bug when filtered and unfiltered socket handles were used in the same WSPSelect
call; was notably causing crases in Thunderbird.
- System error state was being corrupted when creating socket; fixed.
- Was incorrectly trying to process returned fd_sets if WSPSelect returned an error;
could potentially cause crashes. Fixed.
- Should no longer crash if you try to terminate the same connection twice.
- Played with connection-accepting code in attempt to solve crashes after hibernation.
- Crash-reporting:
- Disabled the "deadlock detection" as it frequently gave spurious results.
- Can now use spampal.mc file to include function names in crash reports.
- Now built using Microsoft Visual Studio 2003 toolkit.
|
|
1.73c 10th November 2005 (Beta Release)
|
- Was using 100% of CPU on Windows NT 4; fixed.
- Could crash because windows messages were being processed early if an modal
message box or dialog was opened by the initialisation routines - fixed.
- Transparent proxy:
- WSARecvMsg function was returning sucess code on failure and failure code
on success! Fixed.
- Could crash if filtering was re-initialised while a Select was active
on the same socket; fixed.
- In some circumstances, non-Windows-XP machines couldn't uninstall transparent
proxy due to missing WSCUpdateProvider function; fixed.
- Some McAfee transparent proxy or other can't handle setsockopt being called on a
socket handle while same socket handle is in closesocket - which can happen if a closed
socket handle is quickly re-used! Implemented work-around for this bug.
- For non-transparent filtered sockets, no longer sets output buffer size to 0.
- POP3: In some circumstances, could overflow buffers when handling LIST and STAT commands;
fixed.
- Plugin initialisation status message used plugin code not plugin name - fixed.
- Altered underlying collections code; should prevent code compiling with
certain bugs.
|
|
1.73 24th October 2005 (Beta Release)
|
- Logfiles:
- Wasn't correctly spacing logfile entries - fixed. (v1.72y)
- Logfile entries weren't always in correct order when prefetching was used; fixed.
- IMAP4 messages that involved prefetching were sometimes not appearing in the logfile! Fixed.
- Transparent proxy:
- FIXED serious problem that caused lots of crashes in Internet applications! (v1.72z)
- Fixed silly bug that was preventing OE (among other mail programs) from correctly closing a
filtered socket (v1.72z)
- Replaced unreliable _vsnprintf function with custom-written safe version. Fixed several other buffer overflows and memory errors. (v1.72y)
- No longer links with MSVCRT.DLL (v1.72y)
- Misc:
- Could read past end of command-line buffer, causing a crash - fixed. (v1.72y)
- Fixed obscure crash when using non-transparent ports if there were no port settings to handle
an incoming connection (v1.72z)
- Can no longer report WSAEINVAL errors when closing socket.
- Changed how progress numbers for IMAP4 prefetch threads are displayed in the status window. Still
doesn't make much sense though...
|
|
1.72x 17th September 2005 (Beta Release)
|
- Fixed serious crash in WSPSetSockOpt when using traditional connections to SpamPal whilst transparent proxy was enabled.
- Fixed a couple of crashes in startup due to Windows events getting handled too early.
- Transparent proxy: Now links with MSCVRT.DLL in the hope this'll help stop weird crashes in Microsoft heap-allocation functions. I think this DLL is supplied with all versions of Windows but if you encounter problems, let me know!
|
|
1.72v 13th September 2005 (Beta Release)
|
- Mostly a bug-fix release - and again my sincerest thanks to everyone who's been helping to test it.
- User Interface:
- Fixed crash when cancelling "choose port settings" when running as Windows service
- Tray icon action wasn't been set for fresh installs; fixed.
- Tried to stop port properties dialog from "blinking" when opened.
- Some old-style status window configuration files weren't being parsed correctly; fixed.
- Added more protection to prevent configuration window crashing after it's closed.
- The "Application or service?" dialog you sometimes see just after install could cause all kinds of weirdness if the installer had rebooted your machine - fixed.
- Mail filtering:
- Now removes any pre-existing (and possibly forged) X-SpamPal: header lines.
- POP3:
- Fixed crash in prefetching
- Now supports CAPA (ie "Capabilities") command.
- Fixed unlikely buffer overflow when processing malformed LIST response.
- IMAP4:
- Fixed crash in prefetching
- Fixe crash when parsing a malformed FETCH response.
- Fiddled with removal of \Seen flags from moved spam messages.
- SMTP:
- When adding SMTP connection settings for transparent proxy, "Add Received header:" option was activated and could not be deactivated. Fixed.
- Uninitialised string could occaisionally cause problems when rejecting an incoming message for an unusual reason; fixed.
- Public blacklists/DNSBLs:
- Fixed buffer overflow that was causing crashes.
- Where supported, now uses Microsoft's DNSAPI.DLL for DNS queries; no longer supports getaddrinfo method.
- Hostname lookups (ie from the UrlBody plugin) weren't appearing in Verbose-level logfile when they were fetched from the cache; fixed.
- No longer does hostname lookups for w3.org and several other frequently-used domains (you can replace this default list of domains to ignore by creating a file ilist_hostname.dat in SpamPal's configuration folder - for the file format see the default_ilist_hostname.dat file that ships with SpamPal)
- Fixed issue where multiple public blacklist entries were querying the same underlying resource; previously only the first such blacklist you had selected would actually get queried. (This became an issue because the recent updated list of public blacklists uses zz.countries.dk zone for most country lookups.)
- Transparent Proxy:
- No longer corrupts system error number if crash-trapping turned on; fixes problem with VMWare NAT service.
- Could crash when unloading transparent proxy DLL while LSP logging feature is activated; fixed.
- Transparent proxy should now fire async events for filtered connections correctly.
- Was occaisionally failing to signal FD_READ events after several WSAEventSelect calls - fixed. Should fix further problems with VMWare NAT proxy.
- Could occaisionally get into a pointless loop of read-notifications on filtered sockets; fixed.
- Implemented work-around for "interesting" design of Etrust Antivirus.
- Implemented protection against socket objects being deallocated in one thread whilst still active in another - should fix lots of crashes.
- Was occaisionally losing the last few bytes of a mail session (generally the 'QUIT' command) - fixed.
- Should now be a little quicker to establish new SpamPal-filtered mail sessions.
Misc:
- Uninstaller program could try to re-init Winsock2 and crash; fixed.
- Update-checking now integrated into spampal.exe rather than a separate updates.dll (which can be deleted).
- Update-checking now uses latest zlib1.dll and not old zlib.dll, which some anti-spyware packages bizarrely continue to complain about.
- Windows Service version should no longer create events will illegal names on Windows NT
- No longer performs housekeeping (update-checking and other sundry jobs) if there are any mail sessions active.
- Now writes to logfile when system is detected entering & leaving standby mode. Tried to eliminate WSAENOTSOCK errors some people see when their machine comes out of standby mode or hibernation.
- Upgrading configuration from pre-v1.63 had become broken at some point; fixed.
- No longer supports importing configurations from pre-v0.05 - I'm sure nobody is still using such an ancient beta-version anyway!
- Low-level I/O code rewritten; now more flexible for me and shouldn't be any difference from a user's point of view.
- Now uses an ultra-safe snprintf function as I'm not 100% sure the standard Windows one doesn't cause buffer overflows.
Crash reporting:
- Crash reports now include more detail
- Service now sleeps briefly after a crash - should fix problem of GUI being killed before crash dialog could appear.
- Fixed bug that was preventing transparent proxy crashes from being reported.
- Single crashes should no longer cause multiple crash dialogs.
Debugging versions:
- When trimming LSP logfiles, no longer shows an error if C:\SpamPalDebug\lsp is empty.
Source code:
- SpamPal version number now set correctly when building with Microsoft Visual C++.
|
|
1.72g 22nd May 2005 (Beta Release)
|
- My thanks to everyone who's helped to test intermediate versions since the last released beta.
- New Features
- When SpamPal crashes, users now have the option to automatically send a report to the
developer.
- New option in "Appearance" screen to not show SpamPal icon in system tray
- You can now choose to add the X-Padding: header at the top or at the bottom of
the message headers.
- Mail Filtering
- Local blacklistings were being overridden by positive DNSBL query results - fixed.
- Spam was sometimes wrongly let through if one or more ignorelists of providers were selected - fixed.
- SpamPal was reporting it supported certain IMAP4 extensions when it doesn't -
fixed.
- POP3 & SMTP: Wasn't correctly implementing the part of the RFCs regarding doubling
the termination octet if it appeared at the start of a line containing data. Fixed.
- Body-filtering was not being performed if any enabled plugin had failed to load;
fixed.
- Transparent Proxy
- Fiddled with code to prevent lsass.exe going haywire after coming out of
hibernation.
- SpamPalLSP.dll no longer calls OpenThread() - this function is not
supported on Win9x and was preventing transparent proxy from loading on
this OS!
- Tweaks to how "data available to read" messages are sent by transparent proxy
- Fixed problem with Layered Service Provider not always installing transparent
proxy correctly following a fresh install of SpamPal.
- Rewritten overlapped-operation-handling code - should be
more robust now.
- Increased period of time transparent proxy will spend waiting for shared
resources to become free - might help alleviate the problem of occaisional
mail fetches being "missed" by SpamPal.
- Transparent Proxy: More tweaks to how events are retained & discarded when
WSPEventSelect is called a second time when there are unfetched events known. This
seemingly innocuous code has caused lots of obsure, hard-to-track-down bugs.
- Was hanging when the application tried to close a socket that was still being
filtered by SpamPal; fixed.
- Added support for the following Microsoft Winsock extensions: WSARecvMsg,
TransmitPackets, ConnectEx, DisconnectEx
- Rare set of circumstances could result in SpamPal reading more
data than it should and corrupting input stream; fixed
- Update-checking
- SpamPal update-checking will now only tell you about new versions of
plugins that you have installed - it will no longer tell you about new plugins
that are released. (This was broken and frequently advised new users to install
all plugins, even though it shouldn't have.)
- Tweaks to update-checking routine.
- Installation/Initial Setup
- The settings you configure from the Welcome window are now only saved when
you click "Finish".
- LSP install progress window now scrolls to always show the bottom line.
- Programs menu group should now get created in All Users menu where appropriate
(if installed by Windows NT administrator account and group doesn't already
exist in user's programs menu).
- User Interface
- Added a keyboard shortcut to options window to switch focus to tree of options
screens.
- When prefetching, a second row will appear in the status window giving
information on the state of the prefetch thread.
- Resolved mailserver name should appear in prefetch row of status window rather than
I.P. address.
- Should no longer auto-open status window at startup if you've ended up with two
SpamPal shortcuts in your startup group.
- Now tries to recreate SpamPal tray icon after Windows 2000/NT/XP startup completes - might help
those for whom the SpamPal tray icon doesn't get created.
- "Interface" screen of options window renamed "Appearance"
- New option in "Appearance" screen to not create status window rows for prefetch threads.
- Modified method by which some parts of the status window are updated; should be slightly
more efficient now.
- Fix: Possibly fixed the cause of the occaisional annoying crashes when closing the
configuration dialog
- Misc
- When you created a transparent proxy SMTP port in SpamPal, the unused relay permissions
lists got filled in with "(null)". Fixed.
- Should now output an error message if a plugin fails to load.
- Fixed very obscure bug that sometimes caused SpamPal to freeze up entirely if
configuration was reloaded while messages were being filtered.
- Fixed v.small memory leak in options window validation code.
- Fixed v.minor buffer overflow in auto-whitelist-logfile-updating code.
- More code changes to make it easier for me to add new configuration settings.
- SpamPal should no longer crash if it encounters a corrupted hostname lookup
file or auto-whitelist-pending-data file in its configuration folder.
- Upgrades from pre-v1.70 had become broken at some point - protocol was getting
reset to "POP3" for all configured ports. Fixed.
- Application wouldn't run at startup if a SpamPal service was configured
for manual start; fixed.
- Fix: GUI client wasn't correctly detecting service during startup, and was
starting as application instead.
- Old-style (specific servername & multiple servername) ports should now continue
to work after adding/removing SpamPal layered service provider, without the
need to restart SpamPal to get them going again.
- POP3: Sometimes crashed at end of session because session info was deallocated before status
row deleted; fixed.
- No longer performs housekeeping operations more frequently than once every five minutes.
- Will use getaddrinfo() function on Windows XP rather than gethostbyname()
- Made changes to DNSBL thread synchronisation in an effort to guard against deadlock.
- Now contains assertion code to log suspected failures (debug-logging build will abort
if an assertion fails).
- Removed small memory leak from new-LSP-connection handler on SpamPal side of things.
- Includes code to automatically detect deadlock bugs.
- No longer possible for two threads to be conducting housekeeping operations at the
same time.
- Threads were sometimes getting blocked because critical section was held by
low-priority housekeeping thread. Fixed.
- When GUI client crashes, should no longer complain about trying to access the
logfile as well!
- Should hopefully no longer report "Filing error (no error)" when opening protocol logfiles
when lots of mail sessions all start at once.
- Plugins
- A couple of plugin API calls weren't locating decorated function names as
expected - this led to weird effects like some plugin version numbers
appearing in the options dialog but not in a crash report. Fixed.
- Now outputs a warning if you try to run the Bayesian plugin with the SpamPal service.
- Status window now displays when plugin is being initialised (fetchStart or sessionStart)
- Plugin API additions: "PluginCapabiltiesEx" structure and "getPluginCapabilitiesEx"
function can be used instead of "PluginCapabilities" and "getPluginCapabilities" -
these allow plugins to opt-out of prefetching.
|
|
1.71d 24th January 2005 (Beta Release)
|
- Minor version numbers are now of the form "v1.71a" rather than "v1.711".
- New option under "Message Tagging" allows you to choose to place
SpamPal headers above or below the existing headers.
- New option to delete old protocol logfiles.
- New option in POP3 port properties to disable the "X-Timeout-Prevent: Yes"
headers.
- New option in POP3 port properties to make SpamPal use X-Padding: headers
to pad message headers, rather than adding lots and lots of spaces.
- RDNS queries withing SpamPal for 127.0.0.1 now always return "localhost" - should
prevent confusion for people who have aliased other sites to 127.0.0.1 in their 'hosts'
file.
- DNSBL queries will no longer be made for I.P. address 0.0.0.0
- More bug-fixes to the way DNSBL queries are handled.
- The "Log communications between SpamPal and server" option was sometimes being
forgotten and confused with the "Log communications between SpamPal and client"
option.
- More body data was being fetched if a plugin required it at the processedMessage
stage even if the plugin wasn't being used because a message was tagged as spam
or whitelisted. Fixed.
- Messages in IMAP4 mailboxes were being marked as read if they were filtered by a
plugin that demanded more message body at the processedMessage stage. Fixed.
- Could crash at end of IMAP4 message filtering - fixed.
- SMTP EHLO response now sent all in one packet (previous method was perhaps confusing
OE).
- Fixed unlikely crash in opening of "add to black/whitelist" dialog (I hope)
- When session ends, writes session logfile to logfile path last given in options
dialog (not path that was last given when session started)
- Removed quotes from example in "help specifying email addresses" dialog in case
people get confused and think email addresses need to be in quotes in the
blacklist/whitelist.
- Modified generation of crash-reporting code. Crash reports now include version
numbers of all loaded plugins.
- The "LSP Install Progress" window now always stays on top of the pile
- Transparent proxy bugfixes:
- The SpamPal transparent proxy no longer modifies the value returned by GetLastError()
where it shouldn't. (This was causing the problem with Sophos EM Library.)
- Fixed issue that was causing problems with SmartFTP if SpamPal transparent proxy were
used.
- If a process set up an async select, then unloaded the transparent proxy
DLL, then loaded it again, then tried to set up another async select, it would
hang. Fixed.
- For connections filtered with the transparent proxy, the final command would
sometimes not be sent to the server - fixed.
- Socket handles returned by the SpamPal LSP are now inheritable. HOWEVER, note
that if the child process uses DuplicateHandle on socket handles, although the function
returns value, calling Winsock functions on the duplicated handle doesn't work. Don't
blame me, blame Micro$oft; it's their bug and I can't see a way I can work around it.
(Well, Micro$oft say that people writing the client software should use
WSADuplicateSocket instead of DuplicateHandle, and I can see their point,
but lots of people don't - the example I came across was the FastCGI library -
and if the value returned by DuplicateHandle can't be used then DuplicateHandle
should fail IMHO. So either way, I still blame Micro$oft.)
- No longer calls completion routine if overlapped
operation terminates with error WSAECONNABORTED - this error seems to get
thrown if CancelIO is called, and the lpOverlapped value may by this point be
not valid. (This was crashing Oracle.)
- Some minor reorganisation of source code.
|
|
1.704 21st December 2004 (Beta Release)
|
- Transparent proxy was returning wrong result from WSPIoctl(FIONREAD)
for filtered sockets - this caused problems for Datula (and maybe other
programs too). Fixed.
- Installer should no longer moan about being unable to create certain
debugging shortcuts.
- Transparent proxy was occaisionally duplicating areas of messages
filtered through SpamPal - this seemed only to happen for certain
messages and certain anti-virus tools. Fixed.
- The "ignorelists of providers" were not always being honoured - fixed.
- Slight modification to way SpamPal checks to see if a SpamPal service
is already active.
- Fixed bug in way transparent proxy handles asynchronous select
operations when accepting new connections.
|
|
1.70 10th December 2004 (Beta Release)
|
- New Transparent Proxy feature - click here to learn more
- Mail filtering:
- New option to not call certain plugins if message already marked
as spam/whitelisted; should improve performance if you only call slow plugins
when necessary.
- For POP3 and IMAP4 sessions, SpamPal will now pre-fetch messages to improve
performance. (It already did this for POP3 sessions under certain circumstances, but
now everyone can benefit!) This can be disabled from the port properties dialog.
- Wasn't starting POP3 prefetching whilst body-filtering was in progress; fixed.
- Prefetching of POP3 headers wasn't working for the last message in your
inbox; fixed.
- Fixed rare buffer overflow in POP3 code.
- User interface:
- More tweaks to the way status window handles saving column sizes.
- You can now enter hostnames as well as IP address and Netblocks in the blacklist
& ignorelists of netblocks, the access control list, and anywhere you could
previously enter a list of I.P. addresses/netblocks.
- When selecting "run spampal" from installer, no longer gives error
message if SpamPal service already running.
- Added informative messages to "add to blacklist" and "add to whitelist"
dialogs. (Advice on the best way to lay out these windows would be
appreciated, as I think they look rather ugly right now!)
- New option in the Interface pane allows you to deactivate SpamPal's checking
that status window is always on main desktop - implemented because I found I
couldn't make it open the status window on my new second monitor. :(
- Tweaked layout of Plugin pane of options dialog (thanks Steve!)
- Added 'donations' page to options window
- Blacklist querying:
- Was recording some DNSBL result codes as negative values in logfile - fixed.
- Hostname lookups are now cached for a few hours; should give a minor improvement
to UrlBody's speed when you receive lots of spam advertising the same thing.
- Fiddled around with DNSBL query multi-threading to hopefully make it yet more
efficient.
- New option on the "Advanced" pane to make SpamPal wait for all DNSBL queries to
complete before starting to filter the message body.
- Windows Service support
- GUI client may now start slightly faster.
- GUI client wasn't always exiting properly if it failed to log into the service; fixed.
- Changed way temporary folders are named by GUI client.
- Misc:
- Converting config files from one language to another had become broken; fixed.
- Update-checking doesn't inform you of new beta-releases just because it
thinks you're using a beta.
- Should now start up very slightly faster.
- Fixed thread handle leak that'd crept into recent betas.
- Logfile now reports when SpamPal attempts APOP authentication
- New "Protocol logging" screen of the options window; allows you to create
protocol-level logs of your mail sessions, which will be useful for debugging
purposes. (Previous debugging versions already did this, but I've removed that
code from the latest one.)
- For debug-logging releases, two new registry keys
allow you to turn debug-logginglogging on/off and set debug-logging folder.
- Now doesn't try to call the unsupported function TryEnterCriticalSection if
SpamPal crashes on a Windows 95/98/ME machine.
- Source code:
- Recent versions of lcc-win32 seem to have changed the values they returned
from vsnprintf - this could result in truncation of some configuration files
when SpamPal was running as a service. Updated Spampal code to avoid this.
|
|
1.641 8th September 2004 (Beta Release)
|
- Fixed bug that was still causing plugins to complain incorrectly that
you were using an old version of SpamPal.
- Service version was giving an impenetrable "SetEntriesInAcl" error on startup
in some non-English locales; fixed.
|
|
1.64 5th September 2004 (Beta Release)
|
- "Progress" column of status window no longer blanked between message
fetches.
- IMAP4:A bug in Microsoft Exchange's implementation of IMAP4 causes messages to
be corrupted after they're rewritten by SpamPal if they use anything other
than a tab as a line continuation character in the headers. SpamPal should
now detect Microsoft Exchange and turn all line continuation characters
into tabs if it's rewriting a message, to get around this bug.
- IMAP4: No longer displays "Mailbox does not exist" error in pop-up dialog
- When running as a GUI client, now updates LastConfigDirPath registry key
with the path of the configuration folder being used by the service.
- Now only calls setlocale to set time-formats - not numeric formats too! Might
hopefully end problems with plugins mis-reading SpamPal version number.
- Now sets the number of bytes to read to a default value if ioctl(FIONREAD)
gives a value of -1; this was what was causing crashes at the stage "filtering
message headers".
- Changed some of the default values - by default, filtering stats are now
retained for last 28 days rather than 7, and only the first 16k of message bodies
are filtered.
- Now outputs a warning message if it detects a version of HtmlModify older than
v1.221 (as older versions contain the above problem with pipes being closed that
shouldn't be).
- Plugin API:If a plugin closes the input pipe to filterOnMessageBody, rewriteMessageBody
or processedMessage, an error is displayed. Plugin must not close these
pipe handles as SpamPal will try to do so later, and if it's already closed
the pipe handle may have been re-used, which can result in the wrong pipe
being closed, which can have unpredictable effects - up to and including
data being lost!
- If a filing error occurs before the SpamPalMessageBox system is setup, a
standard message box will be generated.
|
|
1.634 3rd August 2004 (Beta Release)
|
- The old "port type" setting ("POP3 (specific server)" and so forth) has been
split into two - there's now "Protocol" (POP3, IMAP4 or SMTP) and "Proxy
type" (Specific server, Multiple servers and Transparent). "Transparent" proxies
are not yet supported but will be in a future version.
- Now lists all results returned by DNSBL queries in logfile - was previously
listing just one result code per query, which caused confusion when that
result code wasn't in the DNSBL definitions, yet others returned by the
query were.
- Removed restriction on some plugin filtering functions being called
concurrantly; should give a performance increase when you've got several
active sessions all fetching mail concurrantly.
- Now automatically removes spurious "English" entries from the auto-whitelist
(these were created by a bug in an earlier version)
- Wasn't saving SMTP relay permissions and a few other files correctly when
running as an application - fixed.
- If an empty SMTP relay permissions file is detected on a user upgrading
from an earlier version, the SMTP relay permissions file is populated
with 127.0.0.1 - should fix most problems where this file was corrupted
by above bug.
- Service support:
- Fixed error in client-service "plugin not available/wrong version" login
errors messages.
- -serviceServer command-line option is no longer case-sensitive
- When stopping service, now waits for service to shut down before exiting
- Low-level tweaks to improve communication between client & service
- "Exit and stop service" option now works when SpamPal client and service
are on separate machines.
- When client is accessing a remote SpamPal service, the client-service
pipes will be reinitialised when the client machine comes out of
hibernation. (But I've had difficulty testing this as I couldn't coax
my machine to hibernate!)
- The "About" and "Options" dialogs now display when the SpamPal GUI client
is running on a different machine.
- GUI Client wasn't displaying recent changes to auto-whitelist and
auto-ignorelist - fixed.
- Could become deadlocked after an automatic updates-check in certain
circumstances - fixed.
- Changes to underlying network-access code, notably the way the IMAP4
proxy waits for data to become available. Might make it slightly more
efficient.
- Would crash if an accept() call failed - fixed.
- In SMTP, messages now transmitted in chunks of 64k rather than 16k.
|
|
1.623 6th July 2004 (Beta Release)
|
- Auto-whitelist entries will no longer be overwritten with the word "English"
when you close the options window.
- Was getting into an infinite loop if you tried to remove something from
the auto-whitelist; fixed.
- Fixed bug that was causing SpamPal to close some sockets just after they were
created - probable cause of the problems with SpamPal not working after you
come out of hibernation, and sometimes not being able to connect after you
start up, etc.
- Fixed bugs that could cause service and/or client to hang at certain
times.
- Fixed bug that could cause SpamPal to crash during the clean-up at
the end of a mail fetch.
- Now strips email addresses beginning or ending with @ from the auto-whitelist,
and also won't detect such addresses.
- Fixed bug that could cause a crash when opening options dialog if no plugins
installed.
- Now runs as a GUI client rather than an application when the -serviceServer
command-line option is used.
- Welcome dialog can now prompt the user to choose a folder from which to
import an existing SpamPal configuration into the service.
- Welcome dialog now includes a "back" button.
|
|
1.62 3rd July 2004 (Beta Release)
|
- Can now run as a Windows Service! Click here
for more details!
- User Interface:
- Added keyboard shortcuts to all menus (English translation only).
- Added ellipsis (...) to buttons that open new dialogs.
- Now opens status window if you try to start SpamPal when it's already
running.
- Tray icon now re-created when you try to run a second instance of SpamPal
client/application
- Plugin windows (eg Bayesian reclassify window) can now be accessed from the
status window's "Tools" menu as well as the tray icon menu.
- POP3:
- New options in "advanced" POP3 port properties dialog allow you to disable
padding of headers and/or the "this message has grown too big due to a bug in
a plugin" message (which is now disabled by default).
- Networking:
- Now always reports servername resolving errors, even for error 0.
- If unable to connect to server, now keeps retrying for 3 seconds (as it does
if unable to resolve) - should help problems with certain firewalls detecting
spampal.exe has changed and SpamPal giving up before the user has a chance to
OK the changed file.
- Installer:
- Installer creates "Startup" shortcut in All-Users startup folder (instead
of current user's startup folder) if installing user has admin rights and
this is a first install.
- Registry Keys:
- SpamPal's configuration folder can now be set using the following registry keys (listed
in descending order of priority):
- HKEY_CURRENT_USER\Software\SpamPal for Windows\SpamPal\ConfigDirPath
- HKEY_LOCAL_MACHINE\Software\SpamPal for Windows\SpamPal\ConfigDirPath
- Last configuration folder used by SpamPal now stored in registry at
HKEY_CURRENT_USER\Software\SpamPal for Windows\SpamPal\LastConfigDirPath
(This value isn't read by SpamPal, but may be useful if third-party tools
need to get at the SpamPal configuration data)
- Command-Line Arguments:
- -allow_multiple_instances command-line parameter works as
before. However, -suppress_multiple_instances_warning
has been deprecated (but if used, prevents the status window from opening).
- New command-line option -open_options_window automatically opens the
SpamPal options window on start-up
- General changes:
- Crash messages now include a stack trace (thanks c2j2!)
- Plugin API:
- There's a new, different function for checking your plugin will work
on the current version of SpamPal - required if you want this check to
happen when SpamPal is running as a service!
- Implements several new functions you can use to optimise your plugin's
user-interface when SpamPal is running as a service.
- New "direct" versions of filterOnMessageBody, rewriteMessageBody,
rewriteMessageHeaders and processedMessage plugin functions
should be slightly more efficient than the regular versions.
|
|
Click here for full history!
|