Change Log
CMail
CMail 0.8.11
23 May 2024 (LibreSSL 3.9.2)
Fix: Potential output of a few random bytes beyond the end of the -body string with specific malformed input.
Feature: Added the -showcmd option to show the command line parameters as CMail sees them. The Windows Command Prompt and PowerShell use different methods for escaping strings. This feature can assist with getting the correct input into CMail.
CMail 0.8.10
10 March 2024 (LibreSSL 3.8.3)
Fix: MIME attachments were unnecessarily being opened when processing inline attachments.
Fix: SASL mechanisms are now sent in upper case. These had previously been lower case with no issues reported by users, but should be upper case as per RFC 4422.
Notice: The -encryptpass setting now occurs after UTF-8 encoding of command line parameters.
Notice: E-mails with a single attachment and no body now have the MIME type of the attachment in the e-mail headers. Include an empty body (-body:) to restore previous behaviour.
CMail 0.8.9
5 September 2023 (LibreSSL 3.7.3)
Fix: The default DSN string was malformed if -dsn was not specified.
Feature: The -results:filename setting has been added to output JSON-formatted information about e-mail delivery.
Feature: Support for user-supplied XOAUTH2 bearer tokens has been added. This has been veified to work with the GMail implementation.
Miscellany: Password encryption can now be used with passwords longer than 255 bytes (E.g. OAuth2 tokens).
CMail 0.8.8
26 July 2023 (LibreSSL 3.7.3)
Fix: The -body-64 setting did not work if it preceeded -body-file.
Fix: The -verify option was looking for certificates in a development path by default. The -verify-ca-path has been added to specify the certificate location and is now required when -verify is used.
Feature: The -config setting can read configuration from stdin using -config:-.
Miscellany: First release supported by CMailGUI.
Miscellany: The -secureport setting has been renamed -smtps. The original setting will continue to work in the 0.8.x branch.
CMail 0.8.7
19 May 2023 (LibreSSL 3.7.2)
Fix: DKIM domain and selector lengths were reversed. Domains longer than 63 bytes are now supported for DKIM signing.
Feature: E-mail can now be signed using ed25519-sha256 and -dkim-algo can be specified multiple times to allow for multiple signing methods. If not specified, CMail will sign using rsa-sha256 and ed25519-sha256 where suitable keys have been provided.
Feature: Added -tls-ciphers and -tls-protocols options to control TLS cipher and protocol selection. These settings uses LibreSSL presets and validation is currently not performed. These features may change in future releases.
Miscellany: The -dd option now logs timestamps.
Miscellany: MIME types updated.
CMail 0.8.6
27 September 2022 (LibreSSL 3.5.3)
Feature: CMail can now DKIM sign e-mail, including signing preconstructed e-mail on delivery.
Feature: Added a -return-path option to set the envelope address.
Feature: CMail can now use AUTH OAUTHBEARER if the user provides an access token. Support is activated using the -oauth option. The password in -host must contain the OAuth token.
Notice: CMail will no longer attempt to send e-mails if authentication fails.
Miscellany: CMail will now accept 25x status on e-mail completion. Addresses an issue reported by a user, but further details were not provided when requested. The RFC states in the description that a server will return 250 on success, so technically the server is sending the wrong status code, but 2xx is a 'success' code nonetheless.
Miscellany: Minor MIME layout changes.
CMail 0.8.5
20 May 2022 (LibreSSL 3.5.3)
Fix: Data corruption when sending pre-constructed messages (x86 only).
Miscellany: Changed MIME encapsulation for simple messages to avoid them showing as having attachments (client-specific behaviour).
CMail 0.8.4
3 January 2022 (LibreSSL 3.4.2)
Fix: Possible crash or authentication failure using CRAM-MD5 authentication.
Feature: Certificates can now be verified using the -verify setting.
Miscellany: Display names in headers such as To and Cc no longer default to the e-mail address when a value isn’t provided. This was done in the past as some mail filters eroneously associated the lack of a display name with spam. CMail now includes only the e-mail address.
CMail 0.8.3
30 December 2020 (LibreSSL 3.2.3)
Fix: Possible timeout when sending e-mail without TLS. Observed in an unreleased FreeBSD build. Windows builds may also be affected.
Documentation: New online usage documentation layout.
Miscellany: Message recommending the use of -starttls instead of -secureport has been removed as this isn’t an option for some users.
CMail 0.8.2
17 July 2020 (LibreSSL 3.1.3)
Documentation: Fix incorrect encoding of documentation.
CMail 0.8.1
12 July 2020 (LibreSSL 3.1.3)
Fix: Credentials from the config file were not overridden if an alternate host without credentials was specified on the command line.
Fix: Attachments with non-ASCII file names failed to attach.
Feature: Added -timeout option to allow users to specify a socket timeout.
Documentation: Added documentation for the -dd setting.
Documentation: Corrected description of the -mdn setting to indicate the setting works in all modes.
CMail 0.8.0
3 May 2020 (LibreSSL 3.0.2)
Feature: IDN and UTF8 (SMTPUTF8) e-mail address support added.
Feature: Recipients can now be imported from file using -to:@filename syntax.
Feature: Passwords are no longer logged when using -d.
Feature: Passwords can be stored in an encrypted form.
Feature: CMail can now send preconstructed e-mail messages such as those created using the -file option. Headers can be added/deleted and standard headers updated without editing files.
Feature: STARTTLS now automatically used if authentication is not possible without TLS.
Feature: Improved code page support.
Feature: Automatic conversion to UTF-8 for message bodies, custom headers and from, to, cc and reply-to display names.
Miscellany: Removed -charset, now specified with -body-file setting.
Miscellany: The -smtp-transparency option has been renamed -dotstuff.
Miscellany: OpenSSL replaced with LibreSSL.
CMailGUI
CMailGUI 0.1.0 (beta)
23 May 2024
Miscellany: Version bump as there have not been any significant issues reported. CMailGUI should now be considered 'beta' software.
Notice: As CMailGUI is now beta and somewhat stable, CMail is no longer included in the distribution.
CMailGUI 0.0.4 (alpha)
10 March 2024
Feature: The active profile can be selected using the -profile:profile command line parameter when starting CMailGUI.
CMailGUI 0.0.3 (alpha)
6 September 2023
Fix: CMail configuration errors (such as missing From addresses) were not displayed in the output. Bug introduced with 0.0.2 logging enhancements.
Fix: Body input defaulted to file input, not direct input as intended.
CMailGUI 0.0.2 (alpha)
5 September 2023
Fix: Per-recipient DSN settings were not passed to CMail.
Fix: The OK button on the DKIM popup would remain grey after the key file was selected. This field was not triggering validation.
Feature: User-supplied OAuth2 Bearer tokens can now be used.
Feature: Logging enhancements showing e-mail results and rejected recipients.
CMailGUI 0.0.1 (alpha)
26 July 2023
Initial public release.