5.5.1 2011-04-13 Sam Varshavchik * msg2html.c (showmsgrfc2369_header): Fix memory corruption. 5.5.0 2011-04-02 Sam Varshavchik * rfc2045/rfc3676parser.c: Detect content produced by broken mail software (I'm looking at you, Apple Mail), that spews out an entire paragraph as a single physical line of text. When an excessively long line is detected, it gets rewrapped manually. 2011-03-31 Sam Varshavchik * html.c (search_tags): Receive a ubuf ptr for the key. Remove ubuf_append_0(). * rfc2045/rfc3676parser.c (count_quote_level): Revert previous patch. Do not parse > indentation in non-flowed text. * rfc2045/rfc2045reply.c (reply_contents): Remove extra space after > prefix was reformatting non-flowed text. 2011-03-30 Sam Varshavchik * html.c (open_element): Fix accounting of discardable elements. 2011-03-29 Sam Varshavchik * filter.c: Remove lots of dead code. Fix force-wrapping. 2011-03-28 Sam Varshavchik * html.c (seen_attrname): Permit '-' characters in attribute names (HTTP-EQUIV). 2011-03-27 Sam Varshavchik * html.c (seen_closing_elem): Allow : character in closing element name. (seen_opening_elem): Allow : character in opening element name. (seen_attrname): Allow : character in attribute name. * msg2html.c (do_text_line_contents): Fix memory corruption. * folder.c (get_textlink): Memory leak. * msg2html.c (showmsgrfc2369_header): Fix memory corruption/leak. 2011-03-26 Sam Varshavchik * rfc2045/rfc3676parser.c (count_quote_level): Parse > indentation even in non-flowed text. 2011-03-26 Sam Varshavchik * html.c: Complete rewrite of the HTML filter. (open_element): When emitting HTML links, show the target hostname of the destination URL. * maildir.c (opencache): Plug a memory leak. 2011-03-19 Sam Varshavchik * images/sqwebmail.css: added white-space: nowrap to several tables in order to avoid ugly wrapping during real estate shortages. * newmsg_create.c (newmsg_createdraft_do): Fix signature separator. * unicode/unicode.h: Added unicode_isspace(). * unicode/unicode_wordbreak.c: Implementation of tr29. * unicode/unicode.h: unicode_lb_set_opts(), plus derivatives: set artbirary linebreaking options. Two options that tailor the unicode linebreaking algorithm. 2011-03-13 Sam Varshavchik * images/sqwebmail.css: Adjust styles for quoted content. * msg2html.c (text_set_quote_level): Omit our own classes from generated HTML mail that's going to be sent to someone. * html.c (filtered_tag): Automatically add a class to BLOCKQUOTE TYPE=CITE elements. Add a nested DIV to all BLOCKQUOTE elements. 2011-03-12 Sam Varshavchik * autoresponse.c: Remove obsolete rfc2646 code, use common code shared with newmsg.c for reading and saving autoreply text. * rfc2646html.[ch]: Removed. * pref.c: Signature files now always get saved in UTF-8. * newmsg.c: Any sender's signature, and custom site footer, are shown when previewing the message, but get omitted from the edit text area. Signatures won't automatically appear in the editable text box when creating a new message, but will be automatically added when previewing the message and subsequently sending it. Custom site footer files must now be explicitly coded in UTF-8, and follow the format=flowed, delsp=yes plain text format. * folder.c: Update draft message formatting, to work with the new msg2html layer. * newmsg.c: msg2html layer cleanup. 2011-03-06 Sam Varshavchik * images/sqwebmail.css: Replace message-text-plain default style with sans serif font. * sqispell.c (show_part): filter() now takes a unicode stream. * newmsg_create.c (newmsg_createdraft_do): filter() now takes a unicode stream. * msg2html.c: Rewrite plain/flowed text formatted to use new rfc3676 functions. * filter.c: Input to the filter object is now unicode. 2011-02-26 Sam Varshavchik * unicode/unicode.h (mail): Added iterator-based conversion functions to/from unicode chars. 2011-02-24 Sam Varshavchik * unicode/unicode.c (save_unicode): Optimize buffering of unicode characters. 2011-02-17 Sam Varshavchik * folder.c (truncate_at): Only break characters at grapheme breaks. * unicode/unicode.h: Adjust unicode_wcwidth() to return 0 for BK, CR, LF, CM, NL, WJ, ZW characters. 2011-02-16 Sam Varshavchik * unicode/unicode.h: Internal implementation if tr14, linebreaking rules. 2011-02-12 Sam Varshavchik * unicode/unicode_graphemebreak.c: unicode_grapheme_break() is an implementation of TR29. * rfc822/rfc2047.c (do_encode_words_method): Avoid splitting RFC 2047-encoded works in a middle of a grapheme. 2011-02-10 Sam Varshavchik * gpglib/gpg.c (copyfp): Strip CRs from verified/decrypted content. * html.c (replacelink): Fix URL washing. 2011-01-24 Sam Varshavchik * rfc822/rfc2047.c (rfc2047_encode_callback): Rewrite broken logic. * unicode/unicode.c (deinit_iconv): Incomplete multibyte character remaining at the end of conversion was falsely being reported as a callback failure, rather than a conversion failure. 2011-01-22 Sam Varshavchik * Check if -liconv is needed to get iconv. * Clean up leftover unicode-related crud in configure scripts. 2011-01-22 Sam Varshavchik * Removed the last remains of the old unicode mapping code. * unicode/unicode.c (init_default_chset): Import additional logic from the cone tree: CHARSET and MM_CHARSET environment variables override locale's charset indication. If unable to determine locale, parse lang.codeset@modifier string in LANG. * rfc822/encodeautodetect.c (libmail_encode_autodetect): Remove obsolete unicode API. Determine encoding with heuristics based entirely on the content. Remove charset arg, replace with "use7bit", to force qp or base64, instead of 8bit. Take a binaryflag param that gets set to indicate whether base64 was selected based on binary content. * pcp/pcp.c (usage): Unicode API update. * rfc822/rfc2047.c (rfc2047_encode_str): Removed rfc2047_encode_callback_base64, invoked from rfc2047_encode_str(). Rewrite rfc2047_encode_str() to use the new unicode API. 2011-01-22 Sam Varshavchik * rfc822/rfc2047u.c: Unicode API updates. * unicode/unicode.h: Replace unicode_x_imap_modutf7 with a #define. Eliminted unicode_x_smap_modutf7, replaced with unicode_x_imap_modutf7, a space, and blacklisted chars. * unicode/unicodecpp.C (convert_tocase): C++ binding for libmail_u_convert_tocase(). * unicode/unicode.c (init_default_chset): Map GNU libc nl_langinfo() return of "ANSI_X3.4*" to "US-ASCII". 2011-01-17 Sam Varshavchik * unicode/unicode_ultcase.c (unicode_tc): Convert test character to lowercase first, before converting to titlecase -- UnicodeData does not specify an uppercase char's titlecase, directly. * maildir/maildirsearch.h (mail): New C++ binding method - getSearchLen(). 2011-01-16 Sam Varshavchik * unicode/unicode.h: Define C++ binding for libmail_u_convert(), mail::iconvert. * maildir/maildirsearch.h (mail): Convert the C++ binding to use the unicode-aware, case-insensitive, whitespace-collapsing algorithm. 2011-01-15 Sam Varshavchik * strftime.c (strftime_unicode): Use libmail_u_convert_tobuf() instead of the obsoleted unicode functions. * msg2html.h: Renamed the character_set_follows callback as the charset_warning callback. * msg2html.c (showtexthtml): Invoke the charset_warning callback, after generating the formatted message contents, and only if the updated rfc2045_decodetextmimesection() function returned an indication of a charset conversion failure (showtextplain): Ditto. * maildir.c (execute_maildir_search): Use libmail_u_convert_toutf8() instead of the obsoleted unicode functions. (folder_toutf7): Use libmail_u_convert_tobuf() instead of the obsoleted unicode functions. (folder_fromutf7): Use libmail_u_convert_tobuf() instead of the obsoleted unicode functions. * ldaplist.c (getfilter): Use libmail_u_convert_toutf8() instead of the obsoleted unicode functions. * folder.c (show_msg_match_str): Use libmail_u_convert_fromutf8() instead of the obsoleted unicode functions. (truncate_at): Use libmail_u_convert_tou_init() and libmail_u_convert_fromu_init() instead of the obsoleted unicode functions. * auth.c (login_fromhdr): Use libmail_u_convert_toutf8() instead of the obsoleted unicode functions. * attachments.c (attachments_head): Remove code that used obsolete unicode functions. * addressbook.c (ab_add): Use libmail_u_convert_toutf8() instead of the obsolete unicode functions. (ab_listselect_fp): Use libmail_u_convert_fromutf8() instead of the obsolete unicode functions. (ab_show_utf8): Ditto. (addressbook): Ditto. * acl.c: Use libmail_u_convert_toutf8() and libmail_u_convert_fromutf8() instead of the obsolete unicode functions. * unicode/unicode.c (unicode_default_chset): New function calculates the default system unicode charset based on the global locale. (libmail_u_convert_init): Support a phony character set used to encode unicode folder names for IMAP (and SMAP). Passing the phony character set name to libmail_u_convert_init() encodes or decodes to the phony character set. For converting to the phony character set, libmail_u_convert_init() sets up an iconv conversion to UCS-2, then wraps it into a module that converts UCS-2 to the phony character set. For converting from the phony character set, libmail_u_convert_init() sets up an iconv conversion from UCS-2, then wraps it into a module that converts the phony character set to UCS-2. (libmail_u_convert_tocbuf_init): A wrapper to libmail_u_convert_init() that converts to native UCS-4, and saves it into a malloc-ed unicode_char array. (libmail_u_convert_tocbuf_toutf8_init): Convenience wrapper for converting to UTF-8. (libmail_u_convert_tocbuf_fromutf8_init): Convenience wrapper for converting from UTF-8. (libmail_u_convert_toutf8): Convenience wrapper that converts a text string to UTF-8 and returns a malloced buffer with the converted string. (libmail_u_convert_fromutf8): Convenience wrapper that converts a UTF-8 string to another charset, and returns a malloced buffer with the converted string. (libmail_u_convert_tobuf): Convenience wrapper that converts a character string and returns the converted string in a malloced buffer. (libmail_u_convert_fromu_init): Convenience wrapper that sets up a conversion of text to native unicode_chars. (libmail_u_convert_uc): Convenience wrapper for passing unicode chars through libmail_u_convert(). * rfc2045/rfc2646create.c (rfc2646create_alloc): Replace unicode struct pointer argument with a character set string name. Use libmail_u_convert_fromu_init() and libmail_u_convert_tou_init() instead of the obsolete unicode functions. * rfc2045/rfc2231.c: Replace the unicode struct pointer argument with a character set string. Use libmail_u_convert_tobuf() instead of the obsolete unicode functions. * rfc2045/rfc2045decodemimesectionu.c (rfc2045_decodetextmimesection): Add a return value indication of a failed conversion to the requested character set. * maildir/maildirinfo.c: Use libmail_u_convert_tobuf() instead of the obsoleted unicode functions. * gpglib/list.c (definit): Replace the charset field in gpg_list_info, a unicode struct ptr, with a character string. (dolist_callback): Use libmail_u_convert_fromutf8() instead of the obsolete unicode functions. * gpglib/genkey.c (libmail_gpg_genkey): libmail_gpg_genkey() takes a charset name instead of a unicode struct ptr. Use libmail_u_convert_toutf8() instead of the obsoleted unicode functions. 2011-01-09 Sam Varshavchik * Merge-in rfc2045-related iconv changes. * rfc822/rfc822_parsedt.c: Eliminate the dependency on ctype, replaced them with macros. * rfc822/rfc822hdr.c (rfc822hdr_namecmp): Factor out rfc822hdr_namecmp from rfc822hdr_is_addr, and make it usable, generically. 2011-01-08 Sam Varshavchik * pcp/pcpd.c (readnewevent): Fix uninitialized memory usage breaking pcpd. * pcp/pcp.c (list_msg_textplain): New rfc2045src abstraction layer API update. * msg2html.c (showtexthtml, showtextplain): New rfc2045src abstraction layer API update. * newmsg_newdraft.c (newmsg_newdraft): New rfc2045src abstraction layer API update. * newmsg.c (newmsg_showfp): New rfc2045src abstraction layer API update. 2011-01-04 Sam Varshavchik * rfc2045/rfc2045reply.c (mkreply): When copying a message's original headers into a DSN-formatted mailbot-generated reply, preserve the case of the original headers' names. 2011-01-03 Sam Varshavchik * rfc2045/rfc2045decodemsgtoutf8.c, rfc2045/rfc2045.h: Replace function arg and passthrough arg to rfc2045_decodemsgtoutf8() with a pointer to a structure that gives callback info. The function that receives the decoded content now takes a character string+count, instead of a single character. * rfc2045/reformime.c (doconvtoutf8_stdout): Corresponding changes. * maildir.c (do_maildir_search): Corresponding changes. * maildrop/maildropfilter.sgml: Clarify wording. * maildir/maildirsearch.c (maildir_search_start_unicode): Search was broken, how did I miss this? * folder.c (folder_initnextprev): Fix bug when displaying a message NOT after search results. * maildir.c (do_search_utf8): Search was broken for non-Latin charsets. 2011-01-02 Sam Varshavchik * rfc2045/rfc2045decodemsgtoutf8.c: Propagate all non-0 exit codes from the callback function, don't force to a negative value. * rfc2045/rfc2045decodemimesectionu.c: Add descriptive comments. * rfc2045/testsuite (Content-Type): Add additional test for proper iconv-based decoding implementation. 2010-12-12 Sam Varshavchik * unicode/Makefile.am: Updated source link to big5-iso.txt. Updated eastasianwidth.h. * maildir/maildirsearch.h: maildir_searchengine uses unicode chars internally. Replace maildir_search_start with maildir_search_start_unicode() and provide a replacement maildir_search_start_str() that widens a narrow char string to unicode char size. * rfc2045/rfc2045decodemsgtoutf8.c (rfc2045_decodemsgtoutf8): Add a pass-through opaque pointer, closure. * rfc2045/rfc2045decodemimesectionu.c (rfc2045_decodetextmimesection): Total rewrite that uses iconv, rather the built-in libunicode. * images/sqwebmail.css: Additional style sheets for search results context. * html/en-us/folder.html: Repurpose the folder list page as the search results page. * maildir.c (maildir_purgesearch): New function - remove search results file from the tmp directory. (maildir_search): Implement searching, save search results in a ":search:" file in the tmp directory. * folder.c (folder_delmsgs): Preserve search context in a redirect after deleting or moving a message. (show_msg): Display matched contexts if showing messages after a search. (folder_initnextprev): Preserve search contexts in links from the message navigation bar. When showing messages from a search results page, navigate to next/prev matched message, instead of the next/prev message in the folder. (folder_delmsg): Preserve search context in the delete/move message form. * webmail/maildir.c (maildir_loadsearch): Save which message was the last one searched, and show it on the search results page. 2010-12-11 Sam Varshavchik * folder.h (struct): New msgnum field in the MSGINFO structure. * maildir.c (maildir_read): Initialize the new msgnum field in the MSGINFO structure. * maildir.c (maildir_search): Skeleton alternative for maildir_read() that searches the maildir. Does everything but the actual search, returns the first messages from the maildir, as if all of them match the search string. * folder.c (folder_contents): If the 'search' form parameter is present, call the new maildir_search() function instead of maildir_read(). Move the code that formats a single message line into a separate function, for readability. Instead of using (first message shown + row number) as the message number, use the msgnum parameter in the MSGINFO structure. (folder_navigate): Rename as do_folder_navigate(), folder_navigate() wrapper invokes do_folder_navigate() only if the 'search' form parameter is not present, otherwise it replaces it with "Return to folder" link. * html/en-us/folder.html - the search box. 2010-12-09 Sam Varshavchik * rfc2045/rfc2045decodemsgtoutf8.c: new function: rfc2045_decodemsgtoutf8(). 2010-11-27 Alessandro Vesely * html.c: Try to fix up sanitization of ugly HTML 5.4.3 2010-11-06 Sam Varshavchik * gpglib/configure.in: Use "gpg2" if "gpg" is not found. * sqwebmail.spec.in: Use gnugp2 as a requirement if gnupg is not installed. Replace vixie-cron with cronie as a listed req. 5.4.2 2010-10-04 Sam Varshavchik * attachments.c (attach_upload): Always specify client's character set as the upload content's character set. * rfc2045/makemime.c (createsimplemime): Use charset specified in the MIME autoresponse text. 2010-08-15 Sam Varshavchik * mailfilter.c (clrfields): Added the "noquote" option to the filter screen that sets the donotquote autoreply option. 2010-06-28 Sam Varshavchik * rfc822/rfc822.c (rfc822_print_common_nameaddr): Prevent segfault if address decode fails. * Fix make check failure when libidn is not available. 2010-05-31 Sam Varshavchik * Rebuilt man pages with updated stylesheets. 5.4.1 2010-05-30 Mr. Sam * gpglib/list.c: Handle GnuPG 2 --with-colons output format changes. * gpglib/mimegpgfork.c: GnuPG 2 wants --batch when specifying passphrase-fd. 2010-04-15 Sam Varshavchik * rfc2045/rfc2045reply.c (mkreply): Fix sender's name in the reply salutation. * html/en-us/newmsg.html: Ditto. 2010-03-18 Hugo Monteiro * Big quota patch (with some changes). 5.4.0 2009-11-22 Sam Varshavchik * rfc822/rfc822.c: Removed rfc822_praddr(). * rfc822/rfc822_getaddr.c (rfc822_getaddr): Implement rfc822_getaddr() by calling rfc822_display_addr_tobuf(), instead of rfc822_praddr(). * rfc822/testsuite.c (doaddr): Remove rfc822_addrlist() and rfc822_namelist(). 2009-11-21 Sam Varshavchik * rfc822/rfc822_getaddr.c: Remove rfc822_prname() and rfc822_prname_orlist(), replaced by rfc822_display_name() with a NULL character set. * rfc822/rfc2047u.c (rfc822_display_name): Semantical change -- without an explicit name, display the address as the name. If the requested character set is NULL, do not decode RFC2047-encoded content, return it as is. * addressbook.c (addressbook): Replace rfc822_getname() by rfc822_display_name() with the character set specified as NULL. 2009-11-17 Sam Varshavchik * rfc822/rfc2047u.c (rfc2047_print_unicodeaddr): Fix several formatting issues with deprecated RFC 822 distribution lists: spurious comma adter the last address, pass the space after the ':' as a separator character. * rfc822/rfc2047.c (counts2/save): Fix line-wrapping of encoded addresses. * rfc822/rfc2047u.c (rfc822_display_addr_tobuf): New function. * msg2html.c (showaddressheader_printc): email_address_start() callback gets the name and the address already decoded to the requested character set. * folder.c (email_address_start): ... which cleans up this mess rather nicely. * maildir.c (maildir_ngetinfo): Fix logic for locating the name used for salutation. * rfc2045/rfc2045reply.c (mkreply): Fix logic for locating the name used for salutation. 2009-11-14 Sam Varshavchik * folder.c: In the folder cache file, always store senders and subjects encoded using UTF-8. After upgrading, the folder index may not properly show non-Latin characters until the next message is added to the folder, and the folder cache gets rebuilt. * addressbook.c: Always use UTF-8 for local sqwebmail address books. After upgrading, it might be necessary to do a one-time conversion of the address book file to UTF-8 encoding. * rfc822/rfc822.c (rfc822_print_common): Rewrite. * rfc822/rfc2047u.c (rfc822_display_name_int): Fixed various rules for encoding names to be more MIME compliant. (rfc822_display_addr_str): Renamed from rfc822_display_addr(), for a consistent API. (rfc822_display_addr): New function, decode the wire format of a single address. Names are MIME decoded, addresses are IDN-decoded. (rfc2047_print_unicodeaddr): Do not output a dummy name for an address without one. (rfc822_display_addr_str_tobuf): New function, version of rfc822_display_addr_str() that collects the output into a buffer. * rfc822/rfc2047.c (rfc822_encode_domain): New function -- IDN-encode a domain, with an optional "user@". (rfc2047_encode_header_addr): Renamed rfc2047_encode_header(), for a consistent API. (rfc2047_encode_header_tobuf): New function, encode a header from displayed format to wire format. Names are encoded using RFC 2047, addresses using IDN. 2009-11-08 Sam Varshavchik * pcp/pcpdir.c (retrevent): Fix memory leak. * pcp/pcp.c (list): MIME-decode the subjects in the output of the list command. (list_msg_rfc822): Fix MIME-decoding of headers in the output of the retrieve command. (main): Use the default system locale character set. * rfc822/rfc2047.h: Expose raw RFC 2047 decoding function, rfc2047_decoder(). * rfc822/rfc822hdr.c (rfc822hdr_is_addr): New function. * rfc822/rfc822.c (tokenize): Tweak the logic for collecting RFC 2047 atoms. * rfc822/rfc2047u.c (rfc822_display_name): New function, replaces rfc2047_print(). (rfc822_display_name_tobuf): New function, replaces rfc2047_print(). (rfc822_display_namelist): New function, replaces rfc822_namelist(). (rfc822_display_addr): New function, replaces rfc2047_print(). (rfc2047_print_unicodeaddr): Renamed from rfc2047_print_unicode(). (rfc822_display_hdrvalue): New function, replaces rfc2047_decode(), rfc2047_decode_simple(), rfc2047_decode_enhanced(). (rfc822_display_hdrvalue_tobuf): New function, ditto. * rfc822/rfc2047.c: Removed rfc2047_decode(), rfc2047_decode_simple(), rfc2047_decode_enhanced(), rfc2047_print(). * rfc822/Makefile.am: Link against GNU IDN library. 5.3.2 2009-06-27 Sam Varshavchik * all: Compatibility fixes for gcc 4.4 and libtool 2.2 2009-06-12 Cyril Bellot * maildir.c: Fix quota adjustments for deleted files 2009-05-09 Sam Varshavchik * Documentation refresh. 2009-02-15 Sam Varshavchik * Updated autoconf, automake, libtool, and gettext. 5.3.1 2009-02-05 Sam Varshavchik * html.c: Fix handing of broken HTML email 2009-02-04 Mr. Sam * plural.c: Fix broken version that made it into the tarball. 5.3.0 2009-01-26 Mr. Sam * rfc2646html.c (rfc2646_getpfix): Fix invalid parameter to callback function. 2008-11-25 Sam Varshavchik * maildir/maildirfilter.c (maildir_filter_saverules): Use EX_SOFTWARE when bouncing mail from sqwebmail-generated filters. 2008-10-11 Dmitry Osipov * rfc2045/rfc2045_fromfd.c: Optimize header parsing. 2008-07-20 Mr. Sam * Make flowed-text formatting unicode-aware. * Update to the current version of gettext. * unicode/unicode_wcwidth.c (unicode_wcwidth): New function -- fixed lookup of EastAsianWidth unicode table. Return 2 as the width of unicodes marked "F" or "W", 1 for all others. 2008-07-19 Mr. Sam * Drop all the #if SQWEBMAIL_UNICODE -- unicode is now always turned on. 5.2.2 2008-07-11 Mr. Sam * maildir/maildirquota.sgml: Update descriptions of maildir quotas. 2008-07-04 Mr. Sam * maildir/maildirfilter.c: Forward mail with a null return address. The lesser of three evils. All other choices may result in looping mail. Improve quoting of some strings. 2008-06-13 Mr. Sam * rfc822_getaddr.c: Backslashed special characters in address names weren't being dequoted correctly by rfc822_getname() and rfc822_getname_orlist(). 2008-05-10 Mr. Sam * pcp/Makefile.am: include the m4 subdirectory in the tarball 2008-05-08 Bernd Wurst * gdbmobj/Makefile.am (libgdbmobj_la_LIBADD): Fix makefile 2008-05-08 Mr. Sam * bdbobj/Makefile.am: same patch. Also, clean up the rest of the makefiles. 5.2.1 2008-02-03 "Paweł Tęcza" * pref.c: autorenaming of the Sent folder can now be set in Preferences. 5.2.0 2007-09-25 "Johnny C. Lam" * liblock/lockdaemon.c (OPEN_MAX): Use OPEN_MAX, instead of hardcoded 99 2007-09-25 Mr. Sam * liblock/lockdaemon.c (OPEN_MAX): Even better, use sysconf(_SC_OPEN_MAX), where available. 2007-09-23 Anton Dobkin * folder.c (do_sharedhierlist): Missing . 2007-09-03 Mr. Sam * folder.c (redirect_hash): Use SQWEBMAIL_RANDSEED if it's set, instead of sendit.sh's inode. 2007-09-03 Pawel Tecza * sqwebmail.c: Remove hardcoded reference to TIMEOUTHARD 2007-09-02 Mr. Sam * newmsg_create.c: Global footer wasn't being added correctly to HTML-formatted mail. 2007-07-26 Mr. Sam * COPYING: GPL 3. 2007-07-10 Mr. Sam * rfc2646html.c (fmtwikiline): Fixes to inferred HTML formatting. 2007-07-01 Mr. Sam * gpglib/gpg.c: Fix signing of multipart messages that contain 8 bit content. * configure.in: Updated PAM file for Fedora 7. 5.1.6 2007-04-16 Mr. Sam * maildir/maildirkeywords2.c (maildir_kwImport): Properly clean up after a malloc failure. * maildir/maildirshared.c (do_maildir_shared_sync): Plug a leak when syncing old-style shared folders. 2007-04-15 Mr. Sam * unicode/eucjp.c (c2u): Check for malloc failure. (u2c): Ditto. * unicode/shiftjis.c (c2u): Ditto. * unicode/shiftjis.c (u2c): Ditto. * unicode/ksx1001.c (c2u_euckr_doconv): Ditto. * unicode/ksx1001.c (u2c_euckr_doconv): Ditto. * maildir/maildirnewshared2.c (maildir_shared_cache_read): Clarify calling convention, and check for invalid arguments to this function. * maildir/maildirkeywords2.c (doReadKeywords2): Eliminate dead code. 2007-04-05 Mr. Sam * Update man pages and documentation to Docbook XML V4.4 2007-03-15 Mr. Sam * All unicode mapping tables are now included by default. Dropped --enable-unicode and --disable-folder-utf7-encoding options. 2007-03-03 Mr. Sam * sqwebmaild.c (main): Fix typo, reenable file descriptor passing. 2007-02-25 Mr. Sam * More configure script cleanup 2007-02-25 Kurt Roeckx * Clean up configure scripts 2007-02-25 Mr. Sam * rfc822/rfc822.c (parseaddr): rfc822a_alloc() would corrupt and misparse RFC2047-encoded atoms. 2007-02-24 Mr. Sam * cgi/cgidaemon.c: Factored out sqwebmail's prefork daemon logic into a standalone module. 2007-02-20 Pawel Tecza * folder.c (do_folderlist): More cleanup. * html/en-us/newmsg.html: New setting HDRMAXLEN - maximum header size 2007-02-09 Mr. Sam * folder.c (folder_nextprev): Use one row for navigation icons, if images are being used. Suggested by Pawel. 2007-02-09 Pawel Tecza * folder.c (do_folderlist): Cleanup. 2007-02-02 Mr. Sam * newmsg.c (dosendmsg): -N failure, not fail. 5.1.5 2007-01-08 Peter Bieringer * html/en-us/autoresponder.html: Fix typo. 5.1.4 2006-12-30 Timothy Lee Roden * sv-make_timezonelist.pl: works now on NetBSD. 2006-12-29 Mr. Sam * cgi/cgi.c (cgiformdecode): Stop converting 0xA0 to 0x20 bytes in form posts. Messes up UTF-8 text. Hope that the original reason I did this is no longer needed. 2006-12-27 Mr. Sam * html/en-us/autoresponder.html: Fix typo. 2006-11-19 Mr. Sam * auth.c (login_returnaddr): Bug fix. 2006-11-12 Alessandro Vesely * sqwebmail/auth.c: use address returned from authlib as return address of sent messages. 2006-09-19 Josip Rodin * maildirmake: Clarify some error messages. * maildir/maildirmake.sgml: Documentation fixup. * maildrop/maildropex.sgml: Documentation fixup. 2006-09-05 Mr. Sam * folder.c (folder_list): Forbit rename folder if new folder name contains a dot. * mailfilter.c (mailfilter_submit): Quietly prune trailing ':' from the tail end of a header name. 2006-09-05 Pawel Tecza * webmail: Trim whitespace from login username, and new folder names. 5.1.3 2006-07-30 Pawel Tecza * newmsg.c (newmsg_init): Remove redundant blank lines in new msgs. * newmsg.c (newmsg_header_rfc822): Read-only From: header shown when wbnochangingfrom=1, From: header entirely suppressed when >1. 2006-07-24 Pawel Tecza * sqwebmail.c: Add optional class name to dynamically-generated