Updated 2012-03-20: The links below still work for the 20111230.0 release, but this release is no longer current. If you are not specifically looking for the 20111230.0 release, please see the project home page at http://jetmore.org/john/code/swaks/ for the latest release.
A new version of swaks is currently available for download.
Downloads:
- Project Page: http://jetmore.org/john/code/swaks/
- v20111230.0 distribution: http://jetmore.org/john/code/swaks/swaks-20111230.0.tar.gz
- v20111230.0 script only: http://jetmore.org/john/code/swaks/swaks-20111230.0/swaks
- v20111230.0 reference: http://jetmore.org/john/code/swaks/swaks-20111230.0/doc/ref.txt
New Features:
- Added –output-file family of options to capture some or all output without requiring shell redirection
- Added –protect-prompt option to protect “sensitive” user input (currently only auth passwords)
- Added –auth-hide-password to replace recoverable passwords in SMTP session output with a dummy string
- Added –auth-extra to have a single interface to pass non-standard authentication options into swaks. Currently used by NTLM and DIGEST-MD5.
- Added –show-raw-text option to provide more details of exact data being sent on the wire
Notable Changes:
- SMTP Data token parsing has been changed from single-character (%F) to multi-character (%FROM_ADDRESS%) to reduce chance of collisions with message text, especially non-ascii language encoding. See –use-old-data-tokens to recover old tokens while transitioning. (issue reported by Peter Baranyi)
- Specifying the NTLM/MSN/SPA DOMAIN by appending “%DOMAIN” to the username is no longer supported. See the new –auth-extra command.
- The DIGEST-MD5 authentication no longer uses the (buggy) Authen::DigestMD5 module. The Authen::SASL module is now used.
Notable Bugs Fixed:
- Previous release broke ability to use –header to set custom headers (first reported by David Favor)
- Previous release would not allow a file to be used to provide the message data if the file name contained the character “n”. (first reported by dietrich.rebmann@******)
- swaks has never properly handled creating date strings for timezones that are not on an even hour boundary. (report from, and patch provided by, Peter Samuelson)
- The documented behavior of the “no-” prefix on swaks’ options did not work when –OPTION and –no-OPTION were given in the same context.
- The DIGEST-MD5 auth type was not completely implemented. Worked extensively with Erwan Legrand to get as complete and useful an implementation as possible.
- Previous release contained a regression in which TLS responses sent in multiple packets were not processed correctly. (reported by Peter J. Holzer)