ports/158355: mail/cone patch (update to cone-0.89)
Uffe Jakobsen
uffe at uffe.org
Mon Jun 27 20:40:12 UTC 2011
>Number: 158355
>Category: ports
>Synopsis: mail/cone patch (update to cone-0.89)
>Confidential: no
>Severity: non-critical
>Priority: low
>Responsible: freebsd-ports-bugs
>State: open
>Quarter:
>Keywords:
>Date-Required:
>Class: update
>Submitter-Id: current-users
>Arrival-Date: Mon Jun 27 20:40:11 UTC 2011
>Closed-Date:
>Last-Modified:
>Originator: Uffe Jakobsen
>Release: 8.2
>Organization:
>Environment:
FreeBSD aspire1410 8.2-RELEASE FreeBSD 8.2-RELEASE #0: Fri Feb 18 02:24:46 UTC 2011 root at almeida.cse.buffalo.edu:/usr/obj/usr/src/sys/GENERIC i386
>Description:
This patch/diff updates mail/cone port from version 0.77 to version 0.89
Changelog:
2011-05-17 Sam Varshavchik <mrsam at courier-mta.com>
* rfc2045/rfc2045cdecode.c: Tolerate lowercase hexadecimal characters
in quoted-printable-encoded content.
2011-04-25 Sam Varshavchik <mrsam at courier-mta.com>
* cone/cursesmessage.C (reformat): Typo in error message.
2011-04-22 Sam Varshavchik <mrsam at courier-mta.com>
* cone/cone.dist.in (TLS_STARTTLS_PROTOCOL): Provide a default
setting of TLS_STARTTLS_PROTOCOL for new cone installs only.
0.88
2011-04-21 Sam Varshavchik <mrsam at courier-mta.com>
* cone/cursesmessage.C (beginReformat): Fix bug exposed by cache.H
bug fix.
0.87
2011-04-20 Sam Varshavchik <mrsam at courier-mta.com>
* cone/cache.H (Cache): Broken cache logic.
* cone/htmlparser.C (wordtoolong): A word whose width was larger than
available display width resulted in an infinite loop.
* curses/widechar.C (charwidth): Handle wcwidth() returning -1 by
treating it as 1, for the purposes of estimated character width.
2011-04-11 Sam Varshavchik <mrsam at courier-mta.com>
* curses/cursesobject.H (c): Added #include <cstdio> for NULL.
2011-04-07 Sam Varshavchik <mrsam at courier-mta.com>
* cone/htmlparser.C (htmlParser): Flag an unknown source character
set, so that a suitable error message shows up instead of completely
empty content.
* libmail/smapfetchattr.C (parseMimeHeader): Be more tolerant
in parsing of broken MIME headers.
0.86
2011-04-02 Sam Varshavchik <mrsam at courier-mta.com>
* 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-24 Sam Varshavchik <mrsam at courier-mta.com>
* curses/cursesstatusbar.C (status): Remove unneeded full redraws.
* cone/cursesindexdisplay.C (draw): Go to parent CursesVScroll to
figure out the range to redisplay.
2011-03-19 Sam Varshavchik <mrsam at courier-mta.com>
* unicode/unicode.h: Added unicode_isspace().
* cone/curseseditmessage.C (processKeyInFocus): Use unicode word break
algorithm to identify words.
* unicode/unicode_wordbreak.c: Implementation of tr29.
* cone/htmlparser.C: Reimplemented htmlParser using unicode-based
wordwrapping logic.
* cone/htmlentity.C (expand): factor out main logic from operator(),
which invokes expand and that converts it to the requested charset.
This provides access to the main demoronization conversion code.
* curses/widechar.H: move widecharbuf inner class wcwidth_iter into
the global scope, as towidechar_wcwidth_iter.
(unicodewordwrapper): enable UNICODE_LB_OPT_PRBREAK and
UNICODE_LB_OPT_SYBREAK linebreaking options.
* unicode/unicode.h: unicode_lb_set_opts(), plus derivatives: set
artbirary linebreaking options. Two options that tailor the unicode
linebreaking algorithm.
2011-03-16 Sam Varshavchik <mrsam at courier-mta.com>
* cone/curseseditmessage.C (getMarkedRegion): Incorrect range
calculation fixed.
2011-03-13 Sam Varshavchik <mrsam at courier-mta.com>
* cone/leaf.C: Implemented -f.
2011-03-06 Sam Varshavchik <mrsam at courier-mta.com>
* curses/widechar.H: Factored out the logic in unicodewordwrap() into
unicodewordwrapper, an output iterator. Replace unicodewordwrap() with
a convenience function.
* cone/cursesmessageflowedtext.C: Use unicodewordwrapper instead of
whitespacewordwrapper.
* cone/cursesmessage.C (getflowed): Convenience function for
retrieving the format and delsp parameters.
(newmsgformatter): Factor out common code for reformatting plain
text content as a new reply or a message forward.
(addHeader): Replace whitespacewordwrap with unicodewordwrap.
* cone/curseseditmessage.H: The edited text is now stored as a vector
of CursesFlowedLine objects.
* cone/curseseditmessage.C (getUTF8Text): Retrieve the line of text
in its native UTF-8.
(justifiable): One stop shop for checking if a given line of text
is allowed to be justified.
(get_file_helper): is now a CursesFlowedLine iterator.
(unicode_wordwrap_rewrapper): helper object for unicodewordwrap()
that saves starting positions of each line of pre-justified text
(unicode_wordwrap_iterator): iterates over lines of text selected
for rewrapping. Trims trailing whitespace. Saves the position of the
first character in each ilne into unicode_wordwrap_rewrapper
(processKeyInFocus): Replace whitespacewordwrap with unicodewordwrap.
(inserted): Replace whitespacewordwrap with unicodewordwrap.
(drawLine): Display an arrow at the end of wrapped lines.
(load): Receive an indication whether the loaded file contains
flowed text-formatted content.
(save): Add a flag whether or not append a space to flowed lines in the
saved file.
* curses/widechar.H: Removed whitespacewordwrap.
2011-03-05 Sam Varshavchik <mrsam at courier-mta.com>
* rfc2045/rfc2045.c (rfc2045_isdelsp): Convenience function - check
if content type attribute "delsp" is set to "yes".
* cone/curseseditmessage.C: replaceTextLine() is a specialization
that sets the contents of text_UTF8 from either a unicode vector
or CursesFlowedLine (the eventual global replacement). Removed
yank_string_iterator, now obsoleted by cutBuffer being a list.
(processKeyInFocus): Reimplement text justification, now that
cutBuffer is a list of lines.
(processMacroKey): Convert the replacement string into a
list of CursesFlowedLine, before invoking yank(), for now.
(yank): Pass a list of CursesFlowedLines to yank(), instead of
a text string.
(deleteChar): Migrate CLREOL-specific logic into deleteChar().
* curses/cursesfield.C: Reimplement cutBuffer as a list of
CursesFlowedLine.
* curses/cursesflowedline.H: CursesFlowedLine - new abstraction
for a line of text and a flag whether it is wrapped to the next line.
Text is encoded in UTF-8.
2011-02-28 Sam Varshavchik <mrsam at courier-mta.com>
* curses/widechar.H (whitespacewordwrap): Factored out most of its
logic into an iterator object, replaced with a shell wrapper that
iterates over the object.
* curses/curses.C (erase): Replace wchar_t-based logic with
unicode_char-based logic.
* rfc2045/rfc3676parser.c: Eventually successor to rfc2646parser.c
2011-02-27 Sam Varshavchik <mrsam at courier-mta.com>
* unicode/mkcommon.pm: Reduce unicode table block size to 256,
trading in larger table size for faster lookups in the hot code path.
* Optimize hot code path execution.
2011-02-26 Sam Varshavchik <mrsam at courier-mta.com>
* curses/cursesscreen.C: Replace wget_wch() with getch() and using
iconv() to convert the narrow character stream to unicode.
* curses: removed last pre-unicode bits of code.
* unicode/unicode.h (mail): Added iterator-based conversion functions
to/from unicode chars.
2011-02-25 Sam Varshavchik <mrsam at courier-mta.com>
* All: more rewrite of wchar_t-based to unicode_char-based code.
2011-02-24 Sam Varshavchik <mrsam at courier-mta.com>
* unicode/unicode.c (save_unicode): Optimize buffering of
unicode characters.
* cone/cursesmessage.C (toMyCharset_impl): This overloaded
mail::iconvert::convert() returns false when the text contains invalid
characters in its declared character set. Report this as an error
at the end of the message.
2011-02-21 Sam Varshavchik <mrsam at courier-mta.com>
* cone/curseseditmessage.C: Reimplemented yankHelper as
yank_string_iterator that does not touch the original string, but
converts it to unicode vectors as it iterates over the string, one
line at a time.
(setTextBeforeAfter): Set the contents of the current line from
two separates chunks of unicode vectors and position the cursor
between the two chunks.
(processKeyInFocus): Reimplement justify and unjustify (again) using
yank_string_iterators.
(yank): Reimplement yank() using yank_string_iterator.
(deleteChar): Replace direct references to text_UTF8 array with
replaceTextLines(). Use widecharbuf to calculate the grapheme to
delete.
(inserted): Rewrite linewrapping logic. Linewrap only before the
current cursor position.
(load): Reimplemented using get_file_helper
* curses/widechar.H (whitespacewordwrap): Alternative to
unicodewordwrap() that wraps on whitespace boundaries only.
* cone/curseseditmessage.C: Replace direct access to text_UTF8 with
calls to getText().
(getTextBeforeAfter): Retrieve contents of the line with the cursor.
Retrieve the contents before and after the cursor position, separately.
(replaceTextLines, replaceTextLinesImpl): Replace a range of
existing lines with new content, specified as a beginning and an
ending iterator for vector<unicode_char>. The existing lines in
text_UTF8 are removed, and replaced by the content defined by the
iterators. Specialization optimized for random access iterators, that
resizes text_UTF8 once, since the size of the replacement content is
known. Non-random access iterators use a default implementation that
collects iterator content into a temporary vector, then uses the
specialized implementation.
(processKeyInFocus): Rewrite ENTER to use getTextBeforeAfter() and
replaceTextLines().
(processKeyInFocus): Rewrite JUSTIFY to use getText() and
replaceTextLines(). Use whitespacewordwrap() to rejustify text.
(processKeyInFocus): Rewrite GETFILE to define a custom iterator
that iterates over the contents of the file, then uses
replaceTextLines() to load the contents of the file.
(processKeyInFocus): Rewrite EXTEDITOR to use getText() to retrieve
the contents of the message and save it in a file, then use
GETFILE's to read it back in!
* cone/cursesedit.C (extedited): Reposition the cursor after
resuming from an external editor.
(save): Use getText() to access message content.
2011-02-20 Sam Varshavchik <mrsam at courier-mta.com>
* cone/curseseditmessage.C: Rewrite screen updating code to use
unicode-based algorithms.
* cone/cursesedit.C: Ditto.
2011-02-19 Sam Varshavchik <mrsam at courier-mta.com>
* curses/cursesmultilinelabel.C: Update to unicode_chars.
* curses/cursesmoronize.C: Update moronizer to unicode_chars.
* curses/cursesstatusbar.H (CursesStatusBar): Replaced wchar_t fields
with ones that use unicode_chars, and rewrote all the logic,
accordingly.
* curses/widechar.H: Moved widecharbuf, and other stuff that deals
with wchar_ts into this new header file.
* curses: converted towidechar/fromwidechar to iterator-based templates.
* unicode/unicode.h: converted linebreaking C++ classes to an
iterator-based implementation.
* unicode/unicode.h: Enhance C++ support for tr14.
2011-02-17 Sam Varshavchik <mrsam at courier-mta.com>
* curses/mycurses.H: New Curses::widechar unicode-based methods.
* curses/cursesfield.H (Curses): Replace some wchar_t-based objects with
unicode_char.
* cone/myserverpromptinfo.H (promptInfo): Replace wchar_t objects with
unicode_char.
* unicode/unicode.h: Adjust unicode_wcwidth() to return 0 for BK, CR,
LF, CM, NL, WJ, ZW characters.
2011-02-16 Sam Varshavchik <mrsam at courier-mta.com>
* unicode/unicode.h: Implementation of tr14, linebreaking rules.
2011-02-13 Sam Varshavchik <mrsam at courier-mta.com>
* unicode/unicodecpp.C (unicode_wcwidth): Overloaded convenience
method that takes a vector of unicode_chars as an argument.
* unicode/unicode_wcwidth.c (unicode_wcwidth_str): New convenience
function.
* curses/cursesvscroll.C (writeText): New overloaded function takes a
vector of unicode_chars as the argument. Will eventually replace
the version that takes wchar_ts.
* curses/cursesstatusbar.C (writeText): New overloaded function takes a
vector of unicode_chars as the argument. Will eventually replace
the version that takes wchar_ts.
* curses/cursesscreen.C (writeText): New overloaded function takes a
vector of unicode_chars as the argument. Will eventually replace
the version that takes wchar_ts. Temporarily duplicated code from the
wchar_t version. The overload method that takes a char string
will use the unicode_char version.
* curses/cursesmainscreen.C (writeText): New overloaded function takes a
vector of unicode_chars as the argument. Will eventually replace
the version that takes wchar_ts.
* curses/cursesfield.C (CursesField): Major rewrite that replaces
the internal wchar_t buffer with Curses::editablewidechar.
* curses/cursesdialog.C (writeText): New overloaded function takes a
vector of unicode_chars as the argument. Will eventually replace
the version that takes wchar_ts.
* curses/curses.C (writeText): New overloaded function takes a
vector of unicode_chars as the argument. Will eventually replace
the version that takes wchar_ts.
(towidechar): Eventual replacement for mbtow(). Mark mbtow() as
obsolete.
(fromwidechar): Eventual replacement for wtomb(). Mark wtomb() as
obsolete.
widechar: an object that encapsulates a vector of wchar_ts that
were converted from unicode_chars, in such a way that each unicode
grapheme, as demarcated by unicode_grapheme_break() is separately
converted to wchar_ts. Overloaded fromwidechar() converts widechar
to a vector of unicode_chars. A widechar is initialized from
a unicode vector.
(editablewidechar): An editable unicode buffer, initialized from
two unicode vectors: before cursor position, and after cursor
position. editablewidechar contains an internal widechar for the
"before cursor position" contents, and "after cursor position", as well
as a separate vector of wchar_ts that represent wchar_ts inserted at
cursor position, together with methods that move the accumulate
wchar_ts to the "before cursor position" vector. Also, the algorithm
for maintaining a horizontal scroll window that shows the buffer.
2011-02-12 Sam Varshavchik <mrsam at courier-mta.com>
* 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 <mrsam at courier-mta.com>
* curses/cursesscreen.C (doGetKey): Use mvget_wch() to read input.
* cone/myserverconfig.C (loadFolderIndex): Fix handling of
bad email message-id: headers.
* curses/curses.C (wordWrap): Fix bug in counting of wide characters.
* cone/cursesmessage.C (toMyCharset_noerror): Fix handling of
bad charset encoding.
2011-01-24 Sam Varshavchik <mrsam at courier-mta.com>
* 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.
* cone/cursesmessage.C (toMyCharset): Clear errflag in case the
shortcut exit is taken.
2011-01-22 Sam Varshavchik <mrsam at courier-mta.com>
* Removed the last remains of the old unicode mapping code.
* unicode/unicode.c (init_default_chset): Move cone's locale charset
determination logic into unicode_default_chset().
* libmail/headers.C (listitem): Fix leak.
2011-01-21 Sam Varshavchik <mrsam at courier-mta.com>
* 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.
* cone/htmlparsertest.C (main): Updated Unicode AP.
* cone/curseseditmessage.C (processKeyInFocus): Updated Unicode API.
(processKey): Ditto.
(search): Ditto.
* libmail/rfcaddr.H (emailAddress): Rewrite, to store decoded
name and address portion of an address as unicode chars.
get/set display name/addr takes a new charset parameter.
* cone/myserverconfig.C (save): Use new unicode API.
(loadmacros): Use new unicode API.
* cone/myfolder.C (messageEnvelopeCallback): Use new unicode API
(and bug fixes with folder listings of i18n names).
(toupper): Use new unicode API.
2011-01-18 Sam Varshavchik <mrsam at courier-mta.com>
* unicode/unicodecpp.C (convert_tocase): C++ binding for
libmail_u_convert_tocase().
* cone/configscreen.C (ConfigScreen): Use new unicode API.
* cone/addressbook.C (processKey): Use new unicode API (+minor bug fix).
* cone/cursesindexdisplay.C (drawLine): Use new unicode API.
(getFilterCmd): Use new unicode API.
(processKeyInFocus): Use new unicode API.
(listKeys): Use new unicode API.
* cone/curseseditmessage.C (string): Use new unicode API.
(processKeyInFocus): Use new unicode API.
(checkReplace): Use new unicode API.
* unicode/unicode.c (init_default_chset): Map GNU libc nl_langinfo()
return of "ANSI_X3.4*" to "US-ASCII".
* cone/leaf.C (main): Unicode API update.
* cone/init.C (init): Unicode API update.
* cone/cone.C (main): Replace defaultCharset() with
unicode_default_chset().
2011-01-17 Sam Varshavchik <mrsam at courier-mta.com>
* 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().
* libmail/search.C (checkNextHeader): Use getSearchLen() to
abort empty searches.
(searchEnvelope): Unicode API update.
* cone/curseseditmessage.C (processKeyInFocus): Unicode API update.
(load): Unicode API update.
(save): Unicode API update.
* cone/cursesedit.C (save): Unicode API update.
* cone/htmlparser.C (fmtline): Report conversion errors explicitly.
* cone/htmlentity.C (operator()): Return an indication that a
conversion error has occured.
* cone/cursesmessageflowedtext.C (rewrapFlowed): Report conversion
errors explicitly.
* cone/cursesmessage.C (reformat): Move the charset warning to the
end of the message, show only when actual conversion errors occur
when formatting the message for display.
* cone/cursesmessage.C: removed the remaining usage of unicode_info.
* libmail/structure.C (get): Take a charset string parameter instead
of unicode info. May be an empty string, for no conversion.
* cone/cursesmessageflowedtext.H (reformatter): Replaced unicode_info
parameters with charset strings.
* cone/cursesmessage.H (ShownPart): Replace unicode_info parameter
with a plain charset string.
* cone/cursesmessage.C (reformat): Temporarily disable charset
warning. Temporary incompatibility with the ongoing unicode rewrite.
(toMyCharset): Replaced unicode_info args with charset strings.
content_chset may be an empty string, no conversion gets performed.
* cone/filter.C (getDescription): Updated unicode API.
2011-01-16 Sam Varshavchik <mrsam at courier-mta.com>
* cone/wraptext.C: Rewrite to use the updated unicode API.
* cone/htmlparser.C: Updated unicode_api. htmlParser takes plain
charset names, instead of unicode structure pointers.
* cone/htmlentity.C: Rewrote html entity handling from C to C++.
* 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.
* libmail/search.H: Subclass mail::Search and the new mail::iconvert
wrapper into a searchengine.
* libmail/search.C (Searcher::converted): Receives MIME content body
that's been converted to UCS4. Feed it to the searchengine.
(go): Use new unicode functions to convert search strings to
uppercase (use ISO-8859-1 for the header name search string).
Really reset the mimeSearch array, in header/body/text search init.
(checkNextHeader): Code update. Flush any partial header line that
is in the buffer. Flush the UCS-4 conversion buffer. Convert the search
engine initialization (for the next header) to use the new searchengine
API, and start the conversion buffer to convert the decoded MIME
content body to UCS-4.
(searchEnvelope): Use rfc822_display_hdrvalue_tobuf() to format the
header being search into display form, convert it to UCS, and
feed it to the searchengine.
Removed prepSearch(), beginSearch(), and dosearch(), obsoleted by the
new searchengine API.
(search): Update to the new unicode library and searchengine API.
Use rfc822hdr_namecmp() to compare the header names, when searching
a specific header. Use rfc822_display_hdrvalue_tobuf() to format it for
display, before searching it. When searching the contents of MIME body,
feed the extracted body to the UCS conversion buffer.
* cone/cursesmessagedisplay.C (processKeyInFocus): Rewrite of the
search code. Remove whitespace collapsing from the search string, and
the text being searched, this is now handled in the searchengine API.
* cone/curseseditmessage.C (processKeyInFocus): Remove collapsing of
whitespace in the search string, this is now handled in the searchengine
API.
(search): Rewrite. Start of the found search string can now be obtained
via the searchengine API. Remove collapsing of whitespace in the text
being searched, now handled in the searchengine API.
2011-01-15 Sam Varshavchik <mrsam at courier-mta.com>
* unicode/unicode.c: New functions: libmail_u_convert_tou_tobuf,
libmail_u_convert_fromu_tobuf, libmail_u_convert_tocase.
* libmail/rfc2047decode.H (rfc2047): Removed unicode_info.
* libmail/nntp.C (searchMessages): Replaced c2u() with
libmail_u_convert_tou_init().
* libmail/mboxfolder.C (defaultName): Replaced unicode_modutf7touc()
and u2c() with libmail_u_convert_tobuf().
(createSubFolder): Replaced c2u() and unicode_uctomodutf7x() with
libmail_u_convert_tobuf().
(renameFolder): Replaced c2u() and unicode_uctomodutf7x() with
libmail_u_convert_tobuf().
* libmail/maildirfolder.C (folder): Replaced unicode_modutf7touc()
and u2c() with libmail_u_convert_tobuf().
(scan): Do not abort on an invalid mail folder name, isntead
return an error message.
(readFolderInfo): Report an error indication from scan().
(createSubFolder): Replaced c2u() and unicode_uctomodutf7x() with
libmail_u_convert_tobuf().
(renameFolder): Replaced c2u() and unicode_uctomodutf7x() with
libmail_u_convert_tobuf().
* libmail/maildir.C (getfilename): Do not abort on an invalid
mail folder name, instead return an error indication.
(checkNewMail): Do not abort on an invalid mail folder name,
instead return an error message.
(open): Do not abort on an invalid mail folder name, instead return
an error message.
(updateKeywords): Do not abort on an invalid mail folder name,
instead return an error message.
* libmail/mail.C: Removed mail::appcharset. Replaced with
unicode_default_chset(). Removed setAppCharset().
(toutf8): Replaced with a simple wrapper for
libmail_u_convert_toutf8().
(fromutf8): Replaced with a simple wrapper for
libmail_u_convert_fromutf8().
(translatePathCommon): Replaced c2u() with
libmail_u_convert_tou_init().
* libmail/imaplisthandler.C (translatePath): Replaced c2u() and
unicode_uctomodutf7() with libmail_u_convert_tobuf().
(translatePath): Replaced c2u() with libmail_u_convert_tou_init().
Replaced u2c() with libmail_u_convert_fromu_init().
(get_name): Replaced unicode_modutf7touc() and u2c() with
libmail_u_convert_tobuf().
* libmail/imapfolders.C (taggedMessage): Replaced c2u() and
unicode_uctomodutf7() with libmail_u_convert_toutf8() and
libmail_u_convert_tobuf().
* libmail/addressbookget.C (readstructure): Removed some dead code.
* libmail/addressbook.C (setIndex): Obsoleted unicode_xconvert() with
libmail_u_convert_tobuf().
2011-01-09 Sam Varshavchik <mrsam at courier-mta.com>
* all: rfc2045 library API update.
0.85
2010-11-13 Sam Varshavchik <mrsam at courier-mta.com>
* gpglib/configure.in: Use "gpg2" if "gpg" is not found.
* Refresh autotool config scripts.
2010-08-19 Sam Varshavchik <mrsam at courier-mta.com>
* Bind function keys to external commands. Pressing a function key
runs the external command which receives a copy of a message on
standard input.
2010-08-17 Sam Varshavchik <mrsam at courier-mta.com>
* cone/curseseditmessage.C: Undefine a shortcut by pressing ^N when
nothing is selected.
0.84
2010-05-30 Mr. Sam <mrsam at courier-mta.com>
* gpglib/list.c: Handle GnuPG 2 --with-colons output format changes.
* gpglib/mimegpgfork.c: GnuPG 2 wants --batch when specifying
passphrase-fd.
* cone/cursesmessage.C: Strip off trailing CRs from original message
that's being replied or forwarded (shown as trailing ?s on every line
in the reply).
* tcpd/configure.in: Check if explicit linking with libgpg-error is
required.
0.83
2010-05-08 Sam Varshavchik <mrsam at courier-mta.com>
* cone/sgml/cone-folderindex.sgml (prompt): Mention the inn 2.5.x bug.
2010-05-05 Mr. Sam <mrsam at courier-mta.com>
* cone/myreferences.H (m): Fix NULL ptr deref.
2010-05-02 Mr. Sam <mrsam at courier-mta.com>
* cone/cursesmessage.C (nextLink): Fix wild pointer.
* libmail/copymessage.C (fail): Fix segfault if fetching the contents,
of the message being copied, fails.
* cone/cursesmessage.C (reformatAddLine): Clear the entire struct
to suppress warnings from valgrind.
2010-05-02 Andrej Gelenberg <andrej.gelenberg at uni-dortmund.de>
* gcc 4.5 portability fixes.
2010-05-01 Mr. Sam <mrsam at courier-mta.com>
* tcpd/libcouriergnutls.c (tls_connect): Fix bad call to
gnutls_server_name_set().
0.82
2010-04-29 Mr. Sam <mrsam at courier-mta.com>
* cone/curseseditmessage.C (getMarkedRegion): Portability fix
(gcc 4.4.3).
2010-04-28 Sam Varshavchik <mrsam at courier-mta.com>
* all: Some code cleanup.
0.81
2010-02-28 Sam Varshavchik <mrsam at courier-mta.com>
* cone/spellcheckerAspell.C: Do not set "lang" and "encoding" to empty
values.
0.80
2009-10-30 Sam Varshavchik <mrsam at courier-mta.com>
* cone/libmail: Link with libidn if this library is installed. Added
getAddrAddr() and setAddrAddr() methods to mail::emailAddress that
use libidn, if installed, to decode/encode the hostname portion of the
email address.
The GNU IDN library is now required to build Cone
0.79
2009-06-27 Sam Varshavchik <mrsam at courier-mta.com>
* all: portability fixes for gcc 4.4.
2009-05-07 Sam Varshavchik <mrsam at courier-mta.com>
* cone/myserverconfig.C (loadmacros): Fix saved macros that contain
8-bit text.
0.78
2009-04-26 Sam Varshavchik <mrsam at courier-mta.com>
* tcpd/libcouriergnutls.c: Fix off-by-1. Other cleanups.
2009-04-19 Sam Varshavchik <mrsam at courier-mta.com>
* libmail/maildiradd.C: gcc 4.4 fixes.
2009-02-15 Sam Varshavchik <mrsam at courier-mta.com>
* Updated autoconf, automake, libtool, and gettext.
2008-11-28 Sam Varshavchik <mrsam at courier-mta.com>
* cone/configure.in: Update script to work with newer autoconf.
* cone/Makefile.am: Use XML catalog to locate stylesheet.
* curses/configure.in: Replace AC_CONFIG_HEADER with AM_CONFIG_HEADER
2008-08-26 Alessandro Vesely <vesely at tana.it>
* tcpd/libcouriergnutls.c (tls_connect): Fix client certificate request
settings.
0.77
2008-08-25 Mr. Sam <mrsam at courier-mta.com>
* cone/gpg.C (GPG::select_key): When there's only one key in the
keyring, it was impossible to cancel it.
2008-08-24 Mr. Sam <mrsam at courier-mta.com>
* tcpd/libcouriergnutls.c (set_cert): Add support for certificates
signed by an intermediate CA.
0.76
>How-To-Repeat:
>Fix:
Patch attached with submission follows:
Index: Makefile
===================================================================
RCS file: /home/ncvs/ports/mail/cone/Makefile,v
retrieving revision 1.38
diff -u -r1.38 Makefile
--- Makefile 11 Apr 2011 08:34:15 -0000 1.38
+++ Makefile 27 Jun 2011 20:27:28 -0000
@@ -6,7 +6,7 @@
#
PORTNAME= cone
-PORTVERSION= 0.77
+PORTVERSION= 0.89
PORTREVISION= 1
CATEGORIES= mail
# This is for beta versions, leave it in please:
Index: distinfo
===================================================================
RCS file: /home/ncvs/ports/mail/cone/distinfo,v
retrieving revision 1.21
diff -u -r1.21 distinfo
--- distinfo 6 Sep 2008 16:31:18 -0000 1.21
+++ distinfo 27 Jun 2011 20:27:28 -0000
@@ -1,3 +1,2 @@
-MD5 (cone-0.77.tar.bz2) = ab277a293ec29ea6a9bc4c3e9e83f818
-SHA256 (cone-0.77.tar.bz2) = f2b022222feea1bccb400c4715be7d0b6d8031e1372b1988e8917fddb80307f0
-SIZE (cone-0.77.tar.bz2) = 4141280
+SHA256 (cone-0.89.tar.bz2) = 71678cb2a95cd02ce2c734549dee9c542e29c3a29c376b64884022febb0d3fba
+SIZE (cone-0.89.tar.bz2) = 3794802
--- /dev/null 2011-06-27 20:26:59.000000000 +0000
+++ files/patch-curses-cursesscreen.diff 2011-06-27 19:58:50.000000000 +0000
@@ -0,0 +1,13 @@
+--- curses/cursesscreen.C.orig 2011-04-04 11:58:28.000000000 +0000
++++ curses/cursesscreen.C 2011-06-27 19:41:38.000000000 +0000
+@@ -73,7 +73,9 @@
+ while (input_buf.size() > 0)
+ {
+
+- char *inbuf=&input_buf[0], *outbuf=&winput_buf[winput_cnt];
++ //char *inbuf=&input_buf[0], *outbuf=&winput_buf[winput_cnt];
++ const char *inbuf=&input_buf[0];
++ char *outbuf=&winput_buf[winput_cnt];
+ size_t inbytesleft=input_buf.size(),
+ outbytesleft=winput_buf.size()-winput_cnt;
+
>Release-Note:
>Audit-Trail:
>Unformatted:
More information about the freebsd-ports-bugs
mailing list