Home      Download      Learn more      Tech      Help     
 
 

Tiger Envelopes: Changes


Tiger Privacy 

Current release notes.

0.9.0
    Suspends automatic configuration for Mac Mail.
    Updated docs.

0.8.9
    Start Envelopes from the installer during new installations more reliably.
    Change welcome email message to "what to do" message.
    Save options if installer canceled and options changed.
    Shortened the message in the installer's final panel.
    Include how to start the control panel on Linux.
    Removed welcome message from control panel.
    Fixed net.n3.nanoxml.StdXMLParser so searches for dtd in jar files when offline.
    Called closeSession() if user, password, or remote host invalid.
    Improved error messages if remote host not found.
    Ignore files starting with . in the notices directory.
    Created ProxyUser class to manage client and remote user data in proxies.
    Removed thirdparty source that we haven't customized.
    Added thirdparty/lib directory with unmodified third party jar files.
    Added setChanged() to envelopes.io classes.
    Delete email accounts from options after they're anonymized.
    Send notice if Tiger account not defined for a POP3 account.
    Send error message to mail client if POP3 command invalid.
    Validate POP3, IMAP, and SMTP commands from mail client.
    Send 252 response code when VRFY requested of SMTP proxy.
    Send 550 response code when EXPN received by SMTP proxy.
    Improved imap support for Thunderbird.
    
0.8.8
    In build.xml made cleanbuild target dependent on clean.allclasses target.
    Change Mac Mail's mailbox directory names when configuring an account.
    Fixed an intermittent dead lock in the installer.
    Format the final panel in the installer with html.
    Include more information in the control panel's About box.
    Format the tips in the control panel with html.
    Don't allow the control panel to be resized.
    Create an icon in /Applications directory on Mac, if directory writable.
    Show notice when user stops Tiger server from the control panel.
    Restore mail client account when a Tiger account is deleted through the control panel.
    Uninstaller asks user if they want to restore mail client settings.
    Uninstaller restores mail clients that were automatically configured.
    Uninstaller deletes keys with auto-generated passphrases when a mail client account is restored.
    Uninstaller deletes email accounts from Envelopes options when a mail client account is restored.
    In NanoXML replaced all uses of "enum" as identifier.
    Added thirdparty/antlr-2.7.7.
    Simplified use of ant properties from common.xml.
    Show notice that changes to the advanced options won't take effect until Control Panel exited.
    Thunderbird users do not have to re-enter theis passwords.

0.8.7
    In net.Server.stop() closed server socket immediately.
    In restarter added get/setOptionsFile() and used them.
    Fixed more Restarter race conditions.
    Enabled envelopes.server.Restarter tests.
    All actual errors reported by findbugs 1.2.0 rc5 fixed.
    Added util.Random.getDefaultRandom() and used it. Bonus: faster key 
      generation.
    In tjmail SMTPTransport added support for mail.smtp.starttls.enable.
    In tjmail POP3Store added support for mail.pop3.starttls.enable.
    In tjmail SMTPTransport added support for mail.smtp.linksecurity.
    In tjmail POP3Store added support for mail.pop3.linksecurity.
    Change the active encryption programs in the test options when the
      user changes them through the control panel.
    Improved anonymization of logs.
    Renamed the filenames when uninstaller feedback sent.
    Fixed autostarting Tiger Envelopes on Mac OS X.
    Removed autostart of Tiger on Mac OS X when Envelopes uninstalled.
    Reorganized control panel into smaller packages.
    Verify all email accounts have passphrases defined before installation
      continues.
    In tjmail org.ibex.net.SSL enabled debugging if system property 
      "org.ibex.net.SSL.debug" is "true".
    In util.SubprogramInteraction checked that the program had started.
    In util.ServiceWaiter fixed bad "not waiting any more" from wait*().
    Consolidated ConfigBuild and ConfigInstaller into ConfigProjects.
    Alert user that they need to enter 1 email account to use Tiger.
    Configure mail client when re-installing, if appropriate.
    Add crypto keys if passphrases known, but keys are missing.
    Suggest what first time user should do after installation.
    Send a welcome notice to the first time user.
    Added Subprogram(..., File workingDirectory) and get/setWorkingDirectory().
    Added Subprogram.exec().

0.8.6
    Quoted user IDs (email addresses) with no readable names in crypto package.
    Added crypto.key.test.TestKeys with cache.
    Fixed some race conditions when restarting Envelopes.
    Improved anonymization of logs and options.
    Record basic configuration data when installer starts up.
    Added support for German gpg in crypto.key.GPGPlugin.
    Added util.Environment and used it.
    Fixed a bug in client.MailUtil that rejected accounts that had incoming 
      or outgoing host defined, but not both.
    Configure Mac auto start if loginwindow is encrypted.
    Gets Windows environment from registry.
    Warn Mac Mail and Thunderbird users that they'll have to re-enter their passwords.
    At the end of the installer, remind user that others must have encryption software 
      to have their mail protected.
    Fixed a lock up on a few Windows machines when searching for encryption software.

0.8.5
    Stop status bar after report prepared, but before user clicks Send button.
    Add a panel to the uninstaller that lets the user confirm they want to uninstall.
    Fixed a bug that could prevent other accounts being configured if one failed. 
    Change Thunderbird's timeout to a minimum of 600 seconds.
    Use toString() instead of fromString() in util.Subprogram when logging string array.
    Check for null or 0 length byte arrays when writing in util.Subprogram.
    Add a double null at the end of data fields in Outlook 2002, 2003, and 2007.
    Added util.Subprogram.quoteArg() and used it in crypto.key.GPGPlugin.
    Remove auto feedback message before verifying user wants to delete keys.
    Fill the auto feedback bar when the uninstaller is finished.
    
0.8.4
    Added command argument validation to util.Subprogram.
    Major code cleanup thanks to pmd.
    Improved tiger.ruleset.xml for pmd.
    In ant build removed dist.running property and used just jvm.1.5.or.later.
    Removed util.XMLStub.
    Renamed crypto.Plugin to AbstractPlugin.
    Renamed crypto.RedirectableCryptoPlugin to AbstractRedirectableCryptoEngine.
    Started incorporating ePost imap parser.
    Request user send feedback and anonymized logs during uninstall.
    Show About box on Mac when someone selects special About menu item.
    On Mac when someone uses special Quit menu in control panel, save changes.
    Add Tiger icon to Windows desktop.
    Allow user to specify gpg and pgp executable pathnames.
    Created an Encryption tab in the control panel.
    Changed reference from "Directories" to "Folders".
    Fixed a bug in the installer that didn't allow more than 2 mail clients to display when the user decided which clients to configure.
    Force BC to be active whenever options.xml are loaded.
    Added more logging and "try" statements to determine why the control panel doesn't run on some systems.
    Fixed a bug in net.Plug.isConnectionClosedException for "socket write error".
    Added "Why does my mail client time out?" to faq.
    Fixed a bug in finding all Mac Mail accounts.
    
0.8.3
    Added validation for options file.
    Added validation for user input from installer and control panel.
    Added validation for mail client configurations.
    In proxies detected possible bad client TLS configuration.
    Updated tools/pmd/tiger.ruleset.xml for PMD 3.9.
    Fixed many bugs found by PMD.
    Simplified logging control in util.Subprogram.
    Fixed bug in net.SMTPProxy that stopped session if a single message failed.
    Fixed bug in net.SMTPProxy that sent a notice when we had already sent a bad response.
    In tjmail SMTPTransport made message more meaningful for bad recipient address.
    In net.Notices.noticeException() replaced stack trace with exception message.
    Improved anonymizing logs for unexpected event reports.
    Include mail client names in quick feedback report.
    Fixed bug in util.Subprogram timeout.
    In thirdparty ant build.xml protected GNU Crypto and tjmail classes under pre-1.5.
    
0.8.2
    Added ESMTP with AUTH to net.SMTPProxy.
    Added STARTTLS support to tjmail.
    Extensive changes for intermittent socket write error.
    In util.Subprogram handled ThreadDeath better.
    In net.POP3ProxyBase moved call to endUser trying to stop "Session already running" error.
    In net.POP3ProxyBase fixed deleting notice message files.
    Removed unused Version in javadocs. 
    Cleaned up some classes in tjmail.
    Moved Unexpected Event Report tab from Advanced to Feedback.
    Fixed bug in KMail's configuration if special transport was a transport name.
    In DixieMail MainDialog.append() worked around bug in OSX java.awt.Text.Area.
    Fixed control panel bug for installation from source.
    
0.8.1
    Improved anonymizing logs.
    In tjmail added ESMTP and SMTP AUTH to remote server. Still need AUTH in SmtpProxy.
    Set up home and data directories with correct permissions.
    Prevented BC from being disabled in the control panel.
    In tjmail Base64OutputStream added missing flush() calls.
    In net.BasicMessage(InputStream) tried javax.mail.internet.MimeMessage first.
    Added catch for ThreadDeath in net.SubprogramInteraction.
    
0.8.0
    In net.test.MailTest added binary attachment testing.
    In tjmail javax.mail.internet.MimeBodyPart.setContent set CONTENT-TYPE header.
    In envelopes.server.DecryptingMessageFilter.decryptTryAllServices() removed misleading log of exception.
    In tools/findbugs removed old variants of findbugs projects.
    In tjmail gnu.mail.util.Base64InputStream fixed boundary condition bug.
    
0.7.9
    Configure Windows Outlook 2007, 2003, and 2002.
    Added installed version number to options.xml.
    In test.xml changed test.log to test.results.log to match Control Panel tests.
    In POP3Proxy fixed sending OK after getting QUIT from client.
    Show notice that changes won't take effect until Control Panel exited.
    Word wrap instructions about how to speed up the tests.
    
0.7.8
    Updated bouncycastle to 1.35.
    Changed tjmail version to 1.0.3, since we shipped 1.0.2.
    In tjmail added TLS support using Ibex SSL.
    Fixed startup of Tiger control panel on all versions of Mac.
    
0.7.7
    Add Portuguese translation.
    Fixed reloading keys.
    Simplified showing passphrases.
    Removed "X-TigerPrivacy-SendTo" from outgoing messages.
    Removed unused code in net.SMTPProxy and envelopes.server.DecryptingMessageFilter.
    Simplified replacement key taglines in envelopes.server.DecryptingMessageFilter. 
    Fixed NPE in net.EmailMessage.readMessages.
    In ant test.xml removed "build" dependency for test target and added test.build.
    In thirdparty build.xml opendenova target removed extra basedir in jar command.
    In tiger jmail UU[En|De]codeStream handled grave accent in place of space.
    Added net.BasicMessage.getLastError().
    Used net.MessagingProxy.sendNotice more.
    Added net.MessagingProxy.noticeException.
    Reworked net.test.EmailMessageTest.
    In tiger jmail gnu.mail.handler.Application.java.getContent fixed infinite loop.
    In envelopes.server.Main called net.MessagesDirectories.setDataDirectotry.
    In envelopes.server.DecryptingMessageFilter closed stream when we should.
    In tjmail javax.mail.internet.MimeMessage.setContent added setHeader call.
    Added tjmail gnu.mail.util.UUEncoderStream.closePart() to write suffix without closing.
    In proxies added better error notice messages to user.
    Added io.test.LogTest. 
    In tjmail javax.mail.Session set default debugging values.
    Enhanced and fixed some bugs in the documentation.
    Added util.Subprogram.setTimeout().
    Added timeouts to crypto.GPGPlugin.
    In tjmail added Session.logException().
    In tjmail handled blank encoding in MimePartDataSource.getInputStream.
    Made each message file from the test data set a separate junit test.
    In tjmail cleaned up InternetHeaders and handled null/blank values.
    Made crypto.CryptoServiceFactory.getClassName() check package prefix better.
    Fixed ant "*.clean" targets that didn't delete some classes.
    Fixed deleting notice files in net.MessagingProxy and net.POP3ProxyBase.
    Check private keys are set up in envelopes.server.test.CryptoMailTest.
    Added net.test.NetTest.checkExpectedMessage().
    Fixed ConvertCryptoPersonas class so it doesn't encrypt/decrypt blank passphrases.
    Trimmed final strings for comparisons in envelopes.server.test.CryptoMailTest.
    In crypto.GPGPlugin and crypto.PGPPlugin just logged command not found.
    Handled missing message in net.MessagingProxy.noticeMessageException().
    Factored out net.Notices.
    Fixed double colon in envelopes.server.DecryptingMessageFile.
    In tjmail MimeMessage and MimeBodyPart moved removeHeader() calls from setDataHandler() to setContent().
    In tjmail Base64InputStream fixed off-by-one and checked for invalid chars.
    In net.IMAPRemoteServer fixed lockup when remote server locked up.
    Replaced tjmail's old base64 code with bouncycastle's.
    In tjmail removed duplicate trailing "\r\n" in SMTPTransport.finishData().
    In io.Log improved readability of nested exceptions.
    In tjmail added gnu.mail.util.EmbeddedFilter[In|Out]putStream and used them.
    Added basic net.MessageValidator class and used it.
    In tjmail javax.activation.DataHandler.writeTo() added flush.
    In test.TestCase and net.ResultPrinter added test descriptions. 
    In tjmail MimeUtility.encodeWord ascii check used getBytes(s, charset).
    Made many changes for character tranparency.
    In common.xml made "kill" target dependent on "init".
    In tjmail DataHandler.getInputStream() fixed deadlock.
    Added net.io.StreamBuffer.
    In envelopes.server.Main and Options fixed NPE when command line includes options file.
    Added anonymizing of logs for sending to support.
    In Control Panel split Advanced tab into multiple subtabs.
    In tjmail MailcapCommandMap folded case for mime types.
    In tjmail changed calls fro Throwable.printStackTrace to Session.logException.
    Fixed bugs in killmatch and setperms scripts, and their ant targets.
    Disabled util.FileHandleCheck tests for now because lsof has changed flags.
    In opendenova runtime package handled dirs with spaces in their names better.
    Added support for bug reports and feedback to Control panel.
    In tjmail QPInputStream and QPOutputStream fixed MS Exchange quoted-printable and other bugs.
    In envelopes.server.test.CryptoMailTest disabled testNoPublicKeyForRecipient if not English. 

0.7.6
    Fixed several bugs found by findbugs, including some race conditions.
    In test.xml findbugs target added missing command line args.
    Popup dialogs standardized and design improved.
    Added bin/setperms to set file permissions correctly and used it.
    Updated docs, particularly Security and DevelopingSecureSoftware.
    In org.ibex.net.SSL matched certs based on primary domain ignoring subdomains.
    In envelopes.control.ExportPublicKeyDialog checked key exists before exporting.
    In envelopes.control.ExportPublicKeyDialog fixed parent dir selection bug.
    In net.ImapProxy added AUTHENTICATE command, and defered it until LOGIN.
    In net.ImapProxy.filterIMAPLogLine scrubbed LOGIN with tag prefix.
    Added self signed ssl certs to Control Panel, net.Plug, and org.ibex.net.SSL.
    Added Reload button to Control Panel Keys tab.
    In net.ImapProxy.loginCommand fixed bug where we sent user instead of login.
    
0.7.5
    Added imap and imaps.
    Support configuring multiple mail clients in installer and Control Panel.
    In net.BasicMessage fixed bad header delimiter.
    Control panel key management handles all crypto engines at once.
    Added Show button to Accounts tab in Control Panel.
    In build.xml "run" target fixed output log.
    In org.ibex.net.ssl synced io streams on SSL.this.sslIS and SSL.this.sslOS.
    Removed jessie from thirdparty source and disabled in build.xml.
    Cleaned up server javadocs.
    Updated docs.
    Fixed crypto.key.OpenPGPKeys.getFingerprint(userID).
    Fixed bad Thunderbird config when default smtp server used.
    Fixed when windows registry reported both outlook 2000 and outlook express.
    
0.7.4
    In net.MessagingProxy.makeValidMessage() added more error checks.
    In net.BasicMessage added saveChanges() calls to writeTo() to toString().
    In net.BasicMessage removed saveChanges() calls from writeToDirectory() and getHashcode().
    In javamail SMTPTransport.readServerResponse() catch server not responding.
    In javamail Session.setDebugOut() guarded against setting to null.
    In net.BasicMessage.getHashcode() checked for null from toString().
    Moved crypto.test.PluginTest.dataHasPacket to crypto.OpenPGPAnalyzer.
    Added isEncrypted and isSigned to crypto.OpenPGPAnalyzer.
    Added dynamic packet analysis to envelopes.server.(En|De)cryptingMessageFilter.
    Fixed version number in org/bouncycastle/bcpg/ArmoredOutputStream.
    Set up javamail debug defaults to net.test.AllTests.
    Factored out net.MessageDirectories from net.MessagingProxy.
    Changed test message dir to /messages/test.
    Moved net.MessagingProxy.toValidMessage to net.EmailMessage.
    Made net.EmailMessage.toTextMessage return null instead of throwing an Exception.
    Removed "Anyone could have read it" from incoming unencrypted messages.
    Use the mail client's link security to configure Envelopes' remote servers.
    Configure mail client's link security.
    Default the mail server's port appropriately depending on link security.
    Verify Thunderbird has accounts ready before using it as the default mail client.
    Added preference to options.xml to add fingerprint tags to messages.
    Added preference to options.xml for the default mail client.
    Added checkbox to enable/disable validation tags.
    Fixed DecryptingMessageFilter's handling of some OpenPGP MIME messages.
    Changed tag lines about keys in messages.
    Added decrypt support for EnigMail.
    In Control Panel on Keys tab changed Show to Verify and simplified.
    Added Advanced tab to Control Panel.
    Fixed incorrect sync in net.POP3ProxyBase.
    Changed crypto.key.CommandLineUtility to use appropriate KeyServices.
    Fixed all reproducible bugs.
    
0.7.3
    Added support for Thunderbird.
    Updated Bouncy Castle Crypto to version 1.33.
    Added gnu.regexp.
    In crypto.GPGPlugin and crypto.key.GPGPlugin made email match the default.
    In crypto accomodated change in BC's PGPObjectFactory.getObject.
    In envelopes.server.Options.getInstallationDirectory fixed source-only installation bug.
    In Jessie renamed javax package to jessie to avoid conflict with Sun package.
    Added net.test.ProxyTest.testIMAPProxy.
    Added htdig search to web site.
    Added net.NetUtilities.addDefaultSecurityProviders().
    In Jessie added "Alg.Alias.SSLContext.SSLv3".
    In javamail gnu.mail.util.UUDecoderStream.read() detected end-of-stream.
    Stopped presetting validation code.
    
0.7.2
    Changed changes file to docs/Changes.html and release to docs/Release.html.
    In CryptoMessageFilter.addTag changed to plain text message if possible.
    Shrank distributions by a couple of Mb by removing findbugs bug database.
    Fixed many bugs found by FindBugs.
    Improved Mac Mail 10.4 support.
    
0.7.1
    Requires uninstall of old version before installing.
    Simpler, clearer, and less bug prone control panel.
    Added low level support in net package for SMTPS, POP3S, IMAPS.
    Fixed and enabled util.test.XMLTest.
    Fixed some javamail mimetype bugs.
    Improved "ant control.panel".
    Added net.test.EmailMessageTest.
    Made sure we exit in test.AllTests.fatalError.
    Added net.Plug.
    In crypto.keys.OpenPGPKeys.delete fixed id match bug.
    Changed net.Messages.getUserIDMatchingEmail to be case-insensitive.
    In crypto.keys.GpgPlugin.create() defaulted Real Name to email address.
    Decrypted messages now include a validation code with timestamp.
    Improved password scrubbing in logs for net.Plug and subclasses.
    Updated docs, particularly Tools.html.
    Added Jessie-1.0.1 to thirdparty packages. Bootclasspath not ready.
    Fixed missing body text bug in new.MessagingProxy.validateMessage.
    Changed options.xml. Incompatible with earlier releases.
    Changed SERVERNAME to NAME and SERVERHOST to HOST.
    Changed client mail's login to use @@ as separator.
    On Control Panel exit, if Envelopes is not running offer to start it.
    Always save changes to the options when exiting the Control Panel.
    Added a validation code to the Status tab.
    Automatically generate initial validation code.
    Gray index tabs when user clicks Close button on Control Panel.
    On Test tab moved Start button to bottom.
    If the user changes the active crypto programs, change options.test.xml too.
    Improved algorithm for finding and configuring KMail accounts.
    Refactored the Control Panel.
    Fixed javamail POP3 TOP bug.

0.7
    Factored out net.EmailMessage from net.Messages.
    Added more calls to mapLineEndings in net.test.MailTest.
    DecryptingMessageFilter now keeps trying as long as any crypto service works.
    Added tests for OpenPGPKeys.
    Added crypto.key.Main command line key utility.
    Scrubbed passwords from logs in net.POP3Proxy and net.POP3ProxyBase.
    Added message validation via net.EmailMessage to POP3Proxy and SMTPProxy. 
    Warn user that they must exit any open mail client programs before installer continues.
    Move the installer's text strings to their own resource files.
    Automatically initialize the installation for experts with all known mail client accounts.
    Refactored the EmailTab and associated classes.
    Fixed create bug in crypto.key.GPGPlugin and PGPPlugin.
    In ant test.cleanbuild eliminated double build.
    Added OpenPGP MIME support.
    Tiger Jmail enhancements.

0.6.9
    Updated tools/pmd/envelopes.ant.xml and tools/pmd/tiger.ruleset.xml.
    Fixed hundreds of items reported by pmd.
    In RestarterService and SmtpProxy required client be on localhost.
    In DecryptingMessageFilter if finally decrypted, errors just logged.
    In Installer and Control Panel fixed bug displaying advanced mail server options.
    Added added billboards to Installer. 
    In Control panel fixed event queue bug in advanced crypto options.

0.6.8

    Added automatic setup for multiple encryption.
    Added test.TestRunner to log start and end of junit tests.
    In util.LogFile added the log filename to first entry for session.
    Moved test log files to their own dir.
    Fixed an encrypted attachment bug.
    Update the status in the Control Panel every 30 seconds. 
    Provide detailed feedback during the tests in the Control Panel.
    Display the Tiger Privacy logo as the Control Panel splash screen.
    Added a button to the Status tab that shows Envelopes directories.
    Append the full email address to the mail client's login as needed.
    In org.bouncycastle.openpgp.PGPUtil.getDecoderStream fixed ArrayIndexOutOfBoundsException.
    In Security.html updated traffic analysis.
    In docs added a common css stylesheet.
    Added net.test.NetTest.waitForLoopback and used it in tests.
    In Dixie.SmtpServer removed 5 sec sleep.
    In Dixie.SmtpServer.runServer() fixed multiple recipients bug.
    Factored out net.MailServer and used it.
    In envelopes.server.Restarter and EnvelopesServerWaiter fixed bugs. 
    Worked around sun Bug ID 4344135 which sun thinks is fixed, but isn't.
    In net.CryptoMessageFilter.getCryptoServiceList removed inactive services.
    In crypto.FatalErrorHandler stopped sending errors to stderr.
    Fixed some bugs handling invalid messages.
    Fixed multiple recipient bugs. Tests were falsely showing it worked.
    In EncryptingMessageFilter changed To: address to match encryption.
    In options.xml added ADDRESSBOOK and ADDRESSEE.
    Fixed multiple encryption bugs.
    Added OpenPGPKeys.getPublicKeyRing() and OpenPGPKeys.getPublicKeys().
    Spanish support.
    Updated PGPPublicKey with code from mailing list 2004-11-12 17:01.

0.6.7

    One click install and configure for most systems.
    Added Outlook 2000 configuration.
    Integrated preferences, status, and test programs into control panel.
    Factored OpenPGPKeys from OpenPGP and added much of BCPlugin to it.
    Fixed bugs in crypto.PGPPlugin.
    Changed docs to specify pgp 2.6.3a. Tested with debian sarge package.
    Class crypto.PGPPlugin disabled until it's pgp 5 compatible.
    Updated docs, particularly faqs.
    Added a button to show the passphrase unencrypted.
    Delete autogenerated keys when account is deleted. 
    Reorganized menus to remove separate Tiger Privacy folder. 
    Always show advanced settings for servers with non-standard port. 
    Delete autostart menu from Mac's startup login when uninstalled. 
    Make all files in bin subdirectory executable on unix machines. 
    Sync ports in test/DixieMail.config and ~/Envelopes/options.test.xml. 
    Warn if any unusual mail server ports aren't available.

0.6.6

    Removed thirdparty/junit3.8.1.tmp.
    Ignored ConnectException in net.test.MailServiceWaiter.
    Fixed many jikes semantic warnings.
    Added more versions of crypto.key.KeyServiceFactory.getService.
    Fixed variable reference in io.Log.printNestedThrowables.
    Moved server logs to ~/Envelopes/logs/server.
    Rewrote options package and changed many classes to match.
    Added crypto.OpenPGP.userIDsEqual and used it.
    Added timeout to util.ServiceWaiter.
    Set default permissions to 7700 under unix for ~/Envelopes subdirs.
    Added net.test.CryptoTest.testBigMessage.
    Limited maximum data logged in crypto.OpenPGP.logBytes.
    Moved dixie classes into package Dixie.
    Changed test.AllTests to run dixie as a thread.
    Changed ant builds to generate java 1.4 code.
    Added check for message size in net.Messages.messageToString's log entry.
    Cleaned up docs/Security.html with OpenOffice Writer/Web.
    Added details on Thompsoned code to docs/Security.html.
    Created net.test.CryptoTest.restoreTestKeys() and called it in setUp and tearDown.
    Added restart for locked up DixieMail in test.AllTests.
    Treated MIME MultipartAlternative message with a plain-text part as plain text.
    Moved crypto.OpenPGP.logBytes methods to io.Log.printBytes.
    Factored out part of crypto.OpenPGP into crypto.OpenPGPAnalyzer.
    Delete all matching keys in crypto.key.BCPlugin and crypto.key.PGPPlugin.delete().
    Return looped-back message in net.test.CryptoTest.testMessageContent.
    Fixed net.test.CryptoTest.testEncrypted to fail on bad multiple encryption.
    Guarded against NPE in Dixie.Pop3Server's "quit" command.
    Multiple encryption works internally, but no gui to set it up yet.
    Cleared all pop3 mailboxes at start of each test in net.test.MailProxyTest.
    Added code to crypto.OpenPGP and crypto.PGPPlugin to handle pgp keyrings.
    Fixed gpg 1.4.1 parsing bug in crypto.gpgPlugin.
    Dropped back to V3 sigs in bc plugin.
    Added test.TestCase class and refactored test classes to use it.
    Refactored packages for preferences into envelopes.server.io and envelopes.gui.
    Refactored server classes from net package into envelopes.server.
    Added crypto.PrivateStorage and crypto.test.PrivateStorageTest.
    Fixed some memory leaks in the server.
    Added archiving of original message if there were any changes.
    Fixed cache lookup bug in crypto.CryptoServiceFactory.
    Made bc the default crypto service in crypto.CryptoServiceFactory.
    Fixed service name bug in EncryptingMessageFilter.outputUnencryptedMessage.
    Added io.LogNoiseFilter.
    Added util.HeapCheck.
    Set heap max to 512M.
    Fixed io.LogFile appending bug.
    Changed data dir to ~/.envelopes on unices except for mac.
    Changed io.ExceptionLog log filename to exception.log.
    Automatically configure accounts in Outlook Express, Thunderbird, Mac Mail, and Kmail to use Envelopes
    Added simple gui to the Test menu item
    Refactored classes that manage Envelopes' options
    Created a new package for Envelopes' options called com.tigerprivacy.envelopes.io
    Fixed a bug that stopped accounts from reappearing in the Email Account drop down list
    Pop up status progress bar when Add button clicked on Email Accounts tab
    Set permissions on ~/Envelopes to "drws--S--T" when it's created under unix
    Pop up status progress bar when deleting a key
    Show progress bar while adding an account
    Renamed "Save & Exit" button to OK
    Moved buttons to the side of list box in each tabbed panel
    Added details to FAQ about why a mail client account doesn't always appear in drop down list
    Abstracted literal strings that users see into separate resource files for easy translation
    Added icons to the tabs and buttons in the Preferences, Status, and Test programs
    Stopped displaying the Tiger icon in the Preferences
    Changed the package name com.tigerprivacy.preferences to com.tigerprivacy.envelopes.prefs
    Changed the options.jar filename to envelopes.io.jar
    Moved the high level CryptoPersonas section of options.xml to a subsection of EmailAccounts
    Changed NanoXML to print tabs instead of changing them to hex encoded character
    Remove old autostart commands from loginwindows.plist on Mac, if appropriate
    Add an Advanced button to the Keys tab and move the Auto exchange checkbox to a popup Advanced dialog box
    Allow the user to select which crypto program(s) are active
    Delete any keys added in Preferences/installer if user cancels
    Cleaned up end of session in net.SMTPProxy and POP3Proxy
    Removed password from POP3Proxy log
    Encrypted passphrases in options.xml
    Fixed static start time in util.ServiceWaiter 

0.6.5

    Renamed source directory from tiger to envelopes.
    Added reading mail settings from Outlook 2000, Outlook Express, and KMail.
    Changed warning prefix back to "Tiger Envelopes warning: ".
    Build updated for ant 1.6.
    Added envelopes.Restarter.
    Simplified setting logs dir with envelopes.Main.setLogsDirectory.
    Added check for valid email accounts at startup of envelopes.Main.
    Logged when unable to add tagline.
    Refactored OCE.
    Changed OCE version to 0.2.
    Added individual-i logo to web pages. 
    Added privacy policy to docs.
    Envelopes now checks if it is already running. 
    Changed thirdparty/build.xml junit.build target to build junit.
    In Tiger JMail added mimetypes.default to META-INF.
    Auto fill new email account fields after user enters email address.
    If a server is not available, initialize values to reasonable defaults.
    If an email account doesn't have a mail server defined, warn user.
    Set access to ~/Envelopes to owner only on *nix.
    Write out the command line arguments to start Envelopes from installer.
    Start Envelopes when installation finished.
    Stop Envelopes before installing and uninstalling.
    Stop and restart Envelopes from Preferences before saving options.
    Display the passphrase if Envelopes generated it.
    Autostart Envelopes on Windows, Mac OS X, and KDE.
    Show the user the fingerprint after we import a new key.
    Format displayed fingerprints in groups of 4 characters.
    Made io.Log.java print java 1.4 style nested Throwables and PGPExceptions.
    In io.Log print() added more types of nested Throwables.
    Added Status program.
    Added random number to MIME boundary in net.EncryptingMessageFilter.
    Fixed build.xml/envelopes.clean so it deletes all class files.
    Added test for MIME multipart/alternative in net.test.CryptoTest.
    Added handling for MIME multipart/alternative in net.EncryptingMessageFilter.
    Added SendFailedException handling in io.Log.
    
0.6.4

    Updated NanoXML to 2.2.1.
    Updated docs/Tools.html.
    Changed name of tiger source distribution file to "envelopes-sourceonly-...".
    Removed incorrect requirement for root access in docs/StartTiger.html.
    Added util.XML.getContent().
    Fixed net.n3.nanoxml.StdXMLParser so searches for dtd in classpath when offline.
    Fixed net.Pop3ProxyBase.fillMessageQueue so it doesn't call readNotices.
    Factored much of crypto.BCPlugin out into crypto.OpenPGP.
    In net.DecryptingMessageFilter.importPublicKey fixed notices.
    Fixed hex representation in crypto.OpenPGP.getFingerprint.
    Distibuted contents of docs/notes.txt and deleted it.
    Added tests in net.test.CryptoTests for multiple recipients and fixed bugs.
    Changed util.XML.write() to pass new prettyprint param to nanoXML.
    Added to faq.
    Included a drop down list of accounts from Mac Mail when adding an email account.
    Included a drop down list of servers from Mac Mail when modifying an email account.
    Renamed Configure to Preferences.
    Renamed the package com.tigerprivacy.config to com.tigerprivacy.preferences.
    No longer pop up a separate dialog box to add a new mail server.
    Installer doesn't search for associated tools (e.g., ant, jikes, etc.) any more.
    Skip the tips about associated tools at the end of the installer.
    Set the focus to the appropriate field when adding/changing an email account.
    Work around a bug in jvm <=1.4.1 that set the focus to an editable combo box.
    Warn user if an imported key duplicates a key used by Tiger.
    Ask user if an imported key that duplicates existing, non-Tiger key, should be overwritten.
    Let user view fingerprint and public keys.
    Renamed the Add button to Import and the Save button to Export.
    Warn users before disabling automatic key exchange.

0.6.3

    Made BCPlugin's keyring filenames accessible.
    Added setup of gpg keyring filenames in PluginTest.
    Added some packet analysis in PluginTest.
    Added class crypto.key.KeyServiceFactory.
    Renamed all CryptoServiceFactory.getXXXInstance to getXXXService.
    In net.test.CryptoTest added some test methods.
    In net.MailProxyTest added closeOnError method and used it.
    In net.Messages added methods add/getMultientryHeader and getFirstHeader.
    Added auto-exchange of public keys.
    In util.XML added getBooleanValue, getIntValue, and setValue for boolean and int.
    Cleaned up test.AllTests some and added MailServiceWaiter for dixiemail.
    Changed javamail log timestamps to 0-23 hours to match the rest of tiger.
    Added getFingerprint() to crypto.key.KeyService.
    Added detecting keys imported by autoexchange in net.DecryptingMessageFilter.
    Changed jmail dir name to tiger-jmail-1.0.1. 
    Improved ui in config for "Add Email Account". 
    Added envelopes.JVM to check that the jvm version is ok. Only checks Sun and Apple.
    In io.LogFile reset logs dir when setLogsParentDirectory is called. 
    Added ~/logs/ignored.log, javamail.log, and master.log to build.xml's logs.clean.
    Changed tag lines.
    In build.xml removed "junit bug" message.
    Added test for exporting nonexistent key in crypto.key.test.PluginTest.
    Displayed message that autogenned passphrase in config is still a weak one.
    Added Main.setOptionsPathname. 
    Changed MessageFilter.filterMessage to return a single message.
    In net.test.CryptoTest cleared out all pop3 messages in setUp and tearDown.
    Fixed a bug in crypto.key.test.PluginTest.testExportPublic.
    Added gnucrypto to boot classpath.
    Changed net.XXXMessageFilter so outgoing messages with serious errors are bounced. 
    Renamed net.Messages.getUniqueFilename to getHashcode.
    Changed net.EncryptingMessageFilter to find keys based on just the email address.
    Changed default for crypto errors to logging instead of exiting program.
    Set crypto.test.TestErrorHandler as default FatalErrorHandler in envelopes.Main.
    Fixed net.SMTPProxy so writeNotices gets called consistently.
    In crypto.key.GPGPlugin.delete all matching keys deleted.
    Changed net.POP3ProxyBase.DeleteMessages to set delete flag directly in folder.    
    Show the fingerprint and public key when creating or saving a key in Config.
    Default import/export filename and directory to ~/Envelopes/PublicKeys in Config.
    Display the public key in the text field when importing a key in Config.
    Use scroll bar when viewing the install directory in the ReconfigurePanel.
    Prompt user for crypto program if more than 1 installed with keys.
    Prompt user for crypto program if no keys, but programs allow auto-key creation.
    Block adding account if crypto app doesn't support auto-add keys & no matching key.
    Don't include "retype passphrase" if crypto app doesn't support auto-adding keys.
    Abort Config and the installer if valid JVM not running.
    Fixed creating an internet address without a "user name" or "personal name".
    Don't require the user enter a server name when adding a new mail server.
    Default a new mail server name to the host name.
    When deleting an email account, don't delete the matching crypto key.
    After adding an email address, export the key to the PublicKeys directory.
    Improved the README at the end of the installer.
    Added MessagingProxy.saveNotices and fixed POP3Proxy bug by calling it.
    Made --ignore-time-conflict and --ignore-valid-from standard gpg options.
    Split out test.xml from build.xml.
    For no obvious reason a full test run is 3 times faster.

0.6.2

    Changed "Bad message" to "Invalid message format" in MessageFilter.
    Replaced "\n" literals with constant identifier in MessageFilter.
    Removed unneeded imports in several classes.
    Cleaned up some local vars in DecryptingMessageFilter and Proxy.
    Removed unused private method from Proxy.
    Fixed overidable method called from constructor in Main.
    Added messages to many junit asserts.
    Fixed many bugs found by pmd.
    Added master.log to replicate all log entries in one file.
    Fixed bug in BcPlugin's signAndEncrypt where we were encrypting, but not signing.
    Added BouncyCastleProvider to key.BcPlugin for standalone tests of keys.
    Added better logging in BC plugin.
    Incorporated BC's own regression tests in jUnit testing. Temporarily disabled for speed.
    Added printHex function to Log.
    Added LogInputStream to log everything from a stream.
    Added build.allsource ant target to handle any cyclic dependencies and made it default.
    Cleaned up several bugs in PluginClient. Changed default to BC, Bouncy Castle.
    Fixed thirdparty ant build junit.clean target.
    Renamed PluginInterface to CryptoService and key.PluginInterface to KeyService.
    Renamed PluginClient to CryptoServiceFactory.
    Renamed getPersonaPlugin to getPersonaEngine in CryptoServiceFactory.
    Renamed CryptoEngineFactory.getDefaultPlugin to getDefaultInstance.
    Renamed all flavors of getPlugin to getInstance in Crypto*Factory.
    Renamed key.PluginInterface to key.CryptoService.
    Fixed wrong field initialization in com.tigerprivacy.net.Server constructor.
    Removed gc() call in com.tigerprivacy.tests.AllTests.
    Cleaned up setUp's and tearDown's in jUnit tests.
    Synchronized more methods in PGPPlugin and SubProgram.
    Removed redundant comparison to null in PGPPlugin.
    Added getLog() method to Subprogram.
    Fixed shadowed field in javax.mail.internet.InternetAddress.
    Made ExceptionMessage static in com.denova.io.Log.
    Pass -nowarn to the compiler to work around jikes 1.22 bug. 
    Made thirdparty/build.xml nanoxml.build target use default compiler with nowarn="yes". 
    Updated package.html for com.tigerprivacy.crypto.
    Guarded against missing "/" in mimetype in javax.activation.MailcapCommandMap.
    Added "--no-secmem-warning" to gpg commands.
    Moved TestRuns from com.tigerprivacy.test.Constants to com.tigerprivacy.test.AllTests.
    Removed debugging log entries from com.tigerprivacy.net.test.CryptoTest.
    Fixed bug in crypto.test.AllTests that made >1 junit RepeatedTest fail
    Upgraded to Bouncy Castle 1.26.
    Started expanding FAQ.
    Fixed incorrect xml tag in CryptoServiceFactory.getPersona.
    Replaced PGPV3SignatureGenerator with PGPSignatureGenerator in BCPlugin.
    Internally refactored BCPlugin.
    Made crypto.test.PluginTest more efficient and added some assertions.
    Debugged BCPlugin until it passes PluginTest, except intermittent "Could not verify".
    Modified ant build to not delete BC classes except under java 1.5.
    GPG autoinstalled on Windows and Mac if no other crypto package found.
    Tesing plugin detection better in installer.
    Changed default crypto package from BC back to GPG for now.
    BC no longer included in the installer's bootclasspath by default.

0.6.1

    Support for multiple mail accounts.
    Bouncy Castle crypto plugin for OCE.
    Installer configures installer's source build.
    Customized README file.
    Installer tests mail servers.
    Copyright notice does not require extra Next click.
    Added crypto keyring manager to config.
    If installer finds multiple crypto packages lets user pick.
    Installer and config write pub key file for every new key.
    Added preliminary, still very buggy, Windows support.
    Native installers for Linux, Mac OSX and Windows.
    Dehyped OCE. 
    Updated Sun url in Development.html.
    Improved SELinux information in Security.html.
    Improved SwingSWT support.
    Added com.tigerprivacy.test.stub and com.tigerprivacy.envelopes.config.test packages.
    Enhanced options.xml.
    Caught several types of bad messages, pending rewrite of address parsing code in javamail.
    Changed test domain from tigerprivacy.com to tigerprivacy.local.
    Added run.mainclass and test.bouncycastle targets to build.xml.
    In OCE changed various keyID param names to userID.
    Included info.clearthought.TableLayout in thirdparty packages for Radical gui editor.
    In build.xml added property to explicitly select default jvm.
    Added boot.classpath to build.xml.
    In build.xml made test.using.kaffe and test.using.sun directly runnable.
    In build.xml made test.using.kaffe removed use.sun.jvm and added default.test.jvm.
    Fixed bug deleting opendenova.jar in opendenova.clean target of thirdparty/build.xml.
    Added RedirectablePlugin to OCE to improve corba/direct switching. 
    In Streamer.copy() added additional yield to reduce lockups under sun jvm.
    Added static method isAvailable to OCE plugins.
    Changes to oce PluginInterface.java were made directly. IDL changed but not compiled.
    Removed "pgp or gpg" from requirements in "install" file.
    Started FAQ in docs/FAQ.html.
    Updated design and installation docs.
    Added "If the test locks up" section to Testing.html. 
    In oce's PluginClient replaced PluginAttribute with CryptoPlugin and fixed logic bug.
    In oce's XMLTags removed PluginAttribute.
    Notes on passphrase encryption in DevelopingSecureSoftware.html. 

0.6.0

    Added configuration program for use after installation.
    Added test version of swingwt support.
    Re-enabled pgp testing. Test keys must be generated by hand for pgp.
    Reworked crypto testing to test all available plugins in a single run. 
    In build.xml logs.clean target, cleared logs from ${user.home}/logs.
    Moved passphrase from stdin to env in pgp plugin. Less secure but more reliable.
    Stubbed key management for pgp. Free pgp versions support it only from terminal.
    In Subprogram added path search for pathless executables.
    Changed return type of PluginClient.getPlugin() to PluginInterface.
    Changed most occurences of com.tigerprivacy.crypto.Plugin to PluginInterface.
    Corrected some bad links in docs.
    Clarified logging of fatal errors.
    In thirdparty build.xml excluded envelopes classes from oce.build. 
    In build.xml limited use of "find" to linux, stop target set to continue on failure, etc. 
    Freshmeat release ID 158266.

0.5.9

    Changed handling of profilers in build.xml.
    Flushed debug output in Tiger Jmail's Session.java.
    Set default time zone to GMT in Tiger Jmail's MailDateFormat.java parse().
    Moved notes on understanding test results from build.xml to docs/Testing.html.
    Improved docs for Subprogram and PicoParser.
    Fix for gpg temp file bug now in GPGPlugin, not build.xml. Unix only.
    Changed formatting of copyright notices in comments.
    Added com.tigerprivacy.crypto.key gpg plugin with creation, deletion, etc.
    Added com.tigerprivacy.crypto.key.test.KeyTest.
    Refactored several methods into com.tigerprivacy.crypto.PluginClient.
    In MessagingProxy disabled mailing session log. Needs to be an option.
    Added SuprogramInteraction class to automate console interaction.
    Installer automatically adds keys for gpg.
    Freshmeat ID 148611.
    
0.5.8

    Fixed bug in decrypting ordinary PGP. Did not affect OpenPGP MIME.
    Refactored common parts of SMTPProxyTest and POP3ProxyTest out into MailProxyTest.
    Cleaned up some code in com.tigerprivacy.test.AllTests.
    Fixed invocations of net.test.POP3ProxyTest.clearOldMessages.
    Documented JMail's java.mail.Session properties.
    Added javadocs generation to build.xml for JMail.
    JMail's java.mail.Session now takes a mail.debug.logfilename property.
    Sent javamail debugging to javamail.log.
    Added mailcap.default to JMail.
    JMail no longer always rebuilds javamail.jar file.

0.5.7

    Checked for UTF locks as deadlocks in Main.java.
    Made changes requested by PMD.
    Added build.xml to Tiger JMail and had thirdparty/build.xml call it.
    Added SELinux warning to Security.html.
    Added javadoc overview.html and package.html files.
    Refactored com.tigerprivacy.net.
    Added "--always-trust" option to GPGPlugin to restore earlier gpg behavior.
    Improved date parsing in Tiger JMail. Needs thorough testing.
    Added basic junit tests for javamail getters and setters. 
    Added final delay to test.AllTests.java so junit's messages appear last.
    Fixed ancient bug in javamail's RFC822OutputStream. 
    Installer warns if recommended programs are not in path: ant, jikes, kaffe.
    Freshmeat ID 144567.

0.5.6

    Installer detects previous installation and lets user decide whether to change anything.
    Simplified Tiger Jmail dir so it's organized like javamail.jar.
    Added tags to XMLTags for Envelopes data and installation dirs.
    Class com.tigerprivacy.crypto.FatalError supports setting a handler.
    Installer traps fatal errors, tells user, then exits cleanly.
    Updated and reorganized Security.html.
    Started using jTidy. Saved config file in tools/jtidy.
    Extracted DevelopingSecureSoftware from Security.html into its own file.
    Updated the "readme" and "install" files.
    In build.xml "test" target, added copying of initial config files.
    Installer sorts visible lists, such as crypto user ids.
    Changed gpg requirement in Download.html to "1.06 or later".
    Updated installation and testing docs.
    Freshmeat release 141018.

0.5.5

    Added status feedback to all messages.
    Renamed class com.tigerprivacy.net.Utilities to com.tigerprivacy.net.Messages.
    In installer fixed check for kaffe.
    Cleaned up design of CryptoMessageFilter and subclasses.
    Documented CryptoMessageFilter contract in javadocs. 
    Updated docs.
    Changed standard timestamp to 24 hour format.

0.5.4

    Restarted deadlocked subprograms, i.e. dixie, when launched from Main.
    Subprogram waits until streams and the process have both ended.
    Fixed several bugs found by findbugs.
    Support for testing longer runs of messages with smtp/pop3.
    Build.xml and thirdparty/build.xml work with sun javac, not just jikes.
    In ant target run.stop changed process match strings.
    POP3Proxy.retrieveCommand sends at most one message.
    Installer checks for kaffe, ant, jikes, and if no jikes, javac.
    Installer sets up build.xml and options.xml.loopback for the right jvm.
    "Finished" button is default for last installer panel.
    Freshmeat release 138922.

0.5.3

    Updated docs.
    Changed default in build.xml back to kaffe. Sun's jvm is too buggy with threads.
    Temporarily worked around GPG 1.0.6 failures caused by gpg not deleting temp files.
    Freshmeat release 138373.

0.5.2

    Removed all files from bin except killmatch.
    Cleaned up dependency between envelopes.jar and tigerprivacy.util.jar in build.xml.
    Replaced all wildcard imports.
    Improved handling of cases where constructor called overridable methods.
    Added profiling to junit tests when using Sun's jvm.
    Synchronized thread index access in com.tigerprivacy.net.Server.
    Split out separate build.xml for third party software.
    In com.tigerprivacy.net.POP3Proxy and SMTPProxy synced on the instance, not the class. 
    Added logging to com.tigerprivacy.net.Utilities, and fixed blank line bug in getContent().
    Insured multiline pop3 responses from Dixiemail are terminated with crlf. 
    Added jLint target to build.xml.
    Passed properties defining jar files from build.xml to thirdparty/build.xml. 
    Made switching between kaffe and sun easy in build.xml with use.sun.jvm property.
    Lowercased readme, install, and changes filenames in root dir.
    In build.xml dist.clean target added clearing out cvs, dot, and tilde files.
    Fixed line endings in Dixie's pop3 top response to include cr.
    Fixed APOP hash in Dixie's pop3.
    Changed log line order to timestamp-thread-caller-message.
    Switched javamail to Tiger JMail.
    Refactored some packages, primarily moving classes from util to io.
    Installer build now builds everything after one line config.
    Starts from an icon on mac.
    Finds gpg on mac.
    Fixed final angle bracket on tag line.
    Installer gives help on failed passphrase.
    The text cursor starts in a default field on each installation dialog.
    Clearer message when installation completed.
    Current pretty printing is a side effect of JRefactory.
    Fixed infinite loop in logging a MessagingException. 
    Double click in installer's select userid dialog selects, or removes.
    Freshmeat release 137633.

0.5.1

    Added passphrase checking to installer.
    Added custom ruleset for PMD. See http://sourceforge.net/projects/pmd and tools/pmd.
    Code polished to remove rough spots found by PMD.
    Improved code separation between Free Envelopes and Business Envelopes.
    Added better thread termination in com.tigerprivacy.util.Subprogram.
    Added better error checking in com.tigerprivacy.util.StreamCopier.
    Improved plugin testing.
    Worked around NanoXML unnamed element bug in com.tigerprivacy.util.XML.
    Made com.tigerprivacy.net.Server thread names unique.
    Corrected loading messages into message queue in com.tigerprivacy.net.POP3Proxy.
    Improved results testing in in com.tigerprivacy.net.test.POP3ProxyTest.
    Added nested exception handling for javamail MessagingException in com.tigerprivacy.util.Log.
    Moved com.tigerprivacy.net.test setup from POP3ProxyTest's constructor into the new AllTestsSetup.
    Added repeated test run option to com.tigerprivacy.test.AllTests.
    Added Kmail configuration restore to uninstaller.
    Added silent install option.
    Fixed bug in build.xml customization.
    Fixed numerous installer bugs.
    Fixed build.xml util/envelopes conflict.
    Freshmeat release 128260.

0.5

    Massive installer improvements.
    In main build.xml removed build kaffe and installer.
    In main build.xml fixed Xbootclasspath for sun's jvm.
    Updated tools directory.
    Bug fixes for javamail.
    Added killmatch to bin and changed build.xml to call it directly.

0.4

    Several bug fixes.
    Removed dependencies on OpenORB and removed bundled OpenORB distribution.
    Removed bundled kaffe libraries.

0.3

    For security, all closed-source third-party dependencies have been 
    replaced with open-source equivalents. 
    

 


Support Individual Rights Privacy policy
Copyright © 2005-2007 Tiger Privacy
SourceForge