aboutsummaryrefslogtreecommitdiffstats
path: root/CHANGELOG
diff options
context:
space:
mode:
Diffstat (limited to 'CHANGELOG')
-rw-r--r--CHANGELOG260
1 files changed, 260 insertions, 0 deletions
diff --git a/CHANGELOG b/CHANGELOG
new file mode 100644
index 0000000..9deddaf
--- /dev/null
+++ b/CHANGELOG
@@ -0,0 +1,260 @@
+1.56 (Sep 8, 2009)
+ - Fixed authentication errors caused by invalid base64 encoding.
+ Thanks for dozens of people who reported this and even submitted
+ patches! Sorry it took me so long to get this fixed :|
+ - Updated authentication code so it would try both AUTH PLAIN and
+ AUTH LOGIN methods before giving up. This should make it even
+ more robust.
+ - Detect <!DOCTYPE in first line of the message body as an html email too.
+ - Added command line option to force sending message as either
+ text or html (also allows a manual content-type header).
+
+1.55 (Dec 13, 2006)
+ - New command line option to specify a local bind address. Useful on
+ machines with multiple IP addresses.
+ - EHLO should never send "localhost" now. I Added a new function
+ called get_hostname() that does several new checks to get the system's
+ hostname. If all else fails it will send it's own IP address.
+ - Added a new command line option, -o fqdn=FQDN, that allows one to override
+ the name sent after EHLO.
+ - Small change to how the timezone is sent, it was triggering spam filters.
+ - Windows executable now has TLS support enabled!
+
+1.54 (Oct 28, 2006)
+ NEW FEATURES:
+ - TLS support is finally here! See the -o tls=[auto|yes|no] option.
+ To enable simply install the Net::SSleay and IO::Socket::SSL modules.
+ NOTE: If you experience errors related to TLS, PLEASE UPDATE your
+ Net::SSleay and IO::Socket::SSL modules before reporting an error.
+ I have already found inconsistancies with older versions.
+ - Updated the "-o message-header=HEADER" option so that you can use
+ it more than once. Additionally you can now use it to override message
+ headers that would have normally been generated by sendEmail. This is
+ particularly useful when a custom Message-ID or subject is needed.
+ - SMTP authentication now supports the SASL PLAIN mechanism along
+ with the LOGIN method.
+ - New optional way to specify username and password with the -o option.
+ - If a username is supplied with -xu, but a password is not specified,
+ sendEmail will now prompt for one rather than exiting with an error.
+ BUG FIXES:
+ - Fixed an annoying bug that made some MUA's believe there was always
+ an attachment when there wasn't.
+ - New base64_encode() function that fixes a bug that was causing certain
+ usernames/passwords used with -xu and -xp to not work properly.
+
+1.53 (never publicly released, changes merged into 1.54)
+
+1.52 (Feb 19, 2005)
+ - Fixed the bug that prevented sendEmail on Windows and Mac systems
+ from working properly. Thanks to the many people that reported that
+ bug! Sorry it took me so long to fix, I've been working on my new
+ anti-spam service for businesses at http://www.dotclean.com/
+ - Allow null command line arguments. For example -u "" should work.
+ Thanks to Mike Nadeau for pointing out that bug.
+ - Print shell escape codes for colored help on everything but Windows.
+ Thanks to Offer Kaye for that tip. If this causes problems anywhere
+ please let me know!
+ - Changed default mime-encoding header to "application/octet-stream"
+ rather than "base64" when sendEmail can't guess any other content-
+ type to use. Thanks to wwp for that patch.
+ - Added a -o message-charset option to specify the message body's
+ character set. Thanks to Jei for letting me know not everyone
+ sends messages in iso-8859-1 ;)
+
+1.51 (Dec 02, 2004)
+ - A few alarm() calls were being called on Win32 systems which doesn't work.
+ - Added -o message-format=raw option to allow sending of raw pre-built email
+ messages. Thanks to Lutz for the patch!
+ - If the hostname isn't found in common environment variables it now loads
+ the Sys::Hostname module and uses it to get the hostname. This should
+ work properly on more platforms now. If calling this module causes
+ anyone grief please let me know!
+
+1.50 (Sep 30, 2004)
+ - There has been a long standing bug where sendEmail could tell you the
+ remote server accepted the email when, in fact, it had been rejected.
+ This is now fixed.
+ - Changed the textual output of many debug messages.
+ - Added a Message-ID header to each message sent.
+ - You can now specify multiple to, cc, or bcc recipients by separating them
+ with either a space, comma, or semi-colon. Previously it had to be space
+ separated.
+ - Replaced the connect function with one from the IO::Socket library. The
+ IO::Socket module is included in default Perl installations, so this change
+ does not create any new Perl module dependencies.
+ - When sending to multiple recipients and one is rejected by the server
+ sendEmail does not abort as long as at least one recipient was
+ accepted.
+ - To, CC, and BCC fields can be specified in the
+ "Brandon Zehm <caspian@dotconf.net>"
+ format and it will populate the appropriate fields in the email message.
+ - All messages are now MIME encoded, even simple text ones. This makes the
+ program flow much cleaner.
+ - SMTP Auth is now supported with the -xu and -xp command line parameters.
+ - You can create multi-line messages on the command line now by putting
+ a '\n' into the message specified with the -m parameter.
+ - Always use +0000 for timezone, and get the current time from gmtime()
+ rather than localtime().
+ - Added some color to the help and documentation if the shell is Bash.
+ - It now aborts with an error message if all file attachments can not be
+ found before connecting to the remote smtp server. Previously if an
+ attachment specified couldn't be opened it would simply send the message
+ without the attachment.
+ - Allow a single custom email header line to be specified with
+ -o message-header=HEADER
+ - Add a -o timeout=SECONDS option so you can set the timeout used for all
+ network reads and writes.
+ - Added ability to specify a "Reply-to:" header with -o reply-to=ADDRESS
+ - Added ability to read message body from a file with -o message-file=FILE
+ - Added a lot of new documentation available via --help TOPIC.
+
+1.42 (June 06, 2003)
+ - It was possible to send bare CR's, so I fixed that now. (Thanks to
+ Jared Cheney for the bug report)
+ - Patch from Jared Cheney to add the MIME-Version field to conform to RFC1521
+ (made attachments work with more mail clients)
+
+1.41 (Apr 22, 2003)
+ - In some cases bare LF's were *still* getting sent, so I think I fixed it
+ right this time. (Thanks to Buddy Nahay for that bug report and helping
+ me test the fix!)
+ - Fixed bare period encoding (it wasn't working in all cases either)
+ - Changed HTML detection to require the <html> to be at the beginning of
+ a line. Otherwise any email with "<html>" in the message would get
+ tagged as being an html message. (Thanks to John Rouillard for that
+ bug report!)
+
+1.40 (Dec 04, 2002)
+ - A patch from Paul Kreiner (J.P van Oyen also reported a similar fix):
+ "This patch forces the timestamp string to always follow
+ the HH:MM:SS convention required by the RFCs, even if the
+ fields could be represented with a single digit. I also
+ took the liberty of adding a global "timezone" variable at
+ the top, and fixing a couple of typos."
+ - A patch from Reidar Johansen that included several fixes, but notably
+ he included a function called tz_offset that determines what timezone
+ your in.
+ - Fixed the signal handlers so they display a nice message
+ - Added a quit() function
+ - Added a printmsg() function to handle all printed/logged messages
+ - Added a simple openLogFile() function
+ - If running in Win32 it says "CTRL-Z" rather than "CTRL-D"
+ - Applied fix from Yakov Lerner to fix bare period encoding
+ - Check that attachments exist and are readable before trying to open them
+ - Rewrote the connect() function
+ - Rewrote the close/disconnect function
+ - Made the -v option work with any number of -v's
+ - Rewrote the read_server_response() function and renamed it to readServerResponse()
+ - Did a bunch of little fixes so that perl -w won't complain
+ - Redid the whole file logging stuff - now the printmsg function takes care of it,
+ and it's no longer partially broken.
+ - Added a global alarm variable for setting the alarm timeout, and changed
+ it's default value to 60 rather than 15.
+ - Fixed all the exit()'s so that sendEmail should now only exit with an
+ error status of 0 if it successfully sent the email.
+ - Added support for HTML email (Thanks again to Reidar Johansen)
+ - Re-worked the mime-encoding function to work with -w and use strict.
+ - Removed several die() calls in the file attachment process.
+ - Put a fix in place that should cleanly replace any bare LF's with CRLF.
+
+1.33 (Apr 16, 2001)
+ - Fixed some typo's and problems with the logging option regarding the
+ printing of attachment(s) names to the log file.
+ - Fixed several comparisons with null strings.
+ - Lots of little cleanup things.
+
+1.32 (Aug 18, 2000)
+ - Fixed a fairly serious error which in some circumstances would
+ cause file attachments to be corrupted because the mime padding at
+ the end of the attachment was not getting set correctly.
+
+1.31 (Aug 9, 2000)
+ - Totally rewrote all mime encoding code, it should now be 100%
+ MIME/Base64 compliant, and it now opens files in binary mode in win32.
+ This was a much bigger operation than it sounds like ;-)
+ - Now it should work with LARGE file attachments. In v1.30 it had to
+ load the whole file into memory before encoding it, now it encodes
+ line by line so it doesn't use nearly as much memory.
+ - Now checks the message for bare periods and encodes them.
+ - Fixed a bug that would allow text to be printed even if -q was
+ set (and -m was not).
+ - The MIME delimiter is now somewhat random.
+
+1.30 (Aug 1, 2000)
+ - ATTACHMENT SUPPORT ADDED!
+ - Added CC and BCC support, they are now normal command line options.
+ - sendEmail should now work easier in Win32. Win32 did not support
+ the alarm() calls, so I put a check that disables the alarm calls if
+ $^O matches 'Win'.
+ - Added autodetection of mime type on attachments.
+ - Disabled the alarm timer if there are attachments, that way people
+ on modems can send big attachments without getting their upload killed.
+ - Added a -q option for quiet mode
+ - Added a 'Date:' field in the mail headers so messages will
+ show up in the right order in my mail program ;-)
+ - Changed the way you specify a port form the command line
+ now you specify it in the -s <server> option as an
+ optional :port addendum to the server name.
+ - Added -h and --help support.
+ - Updated the help to reflect all changes.
+
+1.22 (Jul 8, 2000)
+ - Removed the 'content-type' and 'transfer encoding type' flags in the email
+ headers, in preparation for a version that will support real attachments.
+ - When piping data to sendEmail often email would have lines ending with
+ just \012 and many email servers do not like this. So I now have \012
+ replaced with \012\015 in data piped from STDIN.
+ - When piping data as the message it now displays a message for those manually
+ typing in an email. It also changes the 15 second alarm to a 60 second alarm
+ and resets it after every new line.
+
+1.21 (May 15, 2000)
+ - Removed the SIG_ALARM call (gave errors on certain non-slackware distributions)
+ - Added a missing error check that could have allowed sendEmail to say a
+ message was sent successfully when the server had actually returned an
+ error message.
+
+
+1.20 (May 10, 2000)
+ VERSION OVERVIEW:
+ -----------------
+ -v option added
+ -vv option added
+ Passing the body of the email via STDIN is now an option
+ Multiple <to> addresses now allowed
+ Logging feature added
+ Terminates itself after 15 seconds to avoid dns hangs etc
+ Lots of small potential bugs fixed and a lot of code cleanup
+
+ DETAILS:
+ --------
+ - DEBUG CODE/MODE:
+ - Lots of error messages everywhere
+ - 2 levels of verbosity accessible via command like parameters
+ - Lots more information messages triggered by $debug's value
+ - Fixed a problem which could have caused sendEmail to overlook certain
+ error messages from the email server.
+ - All invalid command line parameters are now reported correctly
+ - Some code comments were written incorrectly, and are now fixed.
+ - Added handler for HUP and ALARM (both kill sendEmail now)
+ - Possible problems with certain email addresses fixed.
+ - Modified date routine to not use a system call. (making it more portable)
+ - Improved command line parsing (preventing a few possible errors).
+ - Thanks to Nick Pasich for help with these patches:
+ - You can now send the body of the email via the -m option
+ as before or optionally leave the -m out and pass the body
+ of the email to STDIN.
+ - Alarm to abort sendEmail if it runs longer than 15 seconds
+ - Multiple 'To' addresses
+ - Option to log to a file
+ - Updated the 'help' page to reflect all changes
+
+
+1.01
+ - Fixed a bug in the error/success checking routine which caused sendEmail
+ to report errors when there were none.
+ Thanks to Michael Santy for this bug report.
+ - Added some more documentation in the code.
+ - Added this CHANGELOG file.
+ - Release v1.01
+