Subject: CVS commit: pkgsrc/mail/gmime
To: None <pkgsrc-changes@NetBSD.org>
From: Thomas Klausner <wiz@netbsd.org>
List: pkgsrc-changes
Date: 03/08/2007 20:04:07
Module Name: pkgsrc
Committed By: wiz
Date: Thu Mar 8 20:04:07 UTC 2007
Modified Files:
pkgsrc/mail/gmime: Makefile PLIST distinfo
pkgsrc/mail/gmime/patches: patch-aa
Removed Files:
pkgsrc/mail/gmime/patches: patch-ab
Log Message:
Update to 2.2.4:
2007-02-08 Jeffrey Stedfast
* README: Bumped version
* configure.in: Bumped version to 2.2.4
2007-02-06 Jeffrey Stedfast
Fix for bug #394433
* configure.in: Detect if the system has GNU's getopt
implementation available for us to use.
* Makefile.am: Don't build our own copy of the GNU getopt library
if the system has it available.
* src/uuencode.c: If the system has getopt.h, use it instead of
our own getopt.h.
* src/uudecode.c: If the system has getopt.h, use it instead of
our own getopt.h.
2007-02-06 Jeffrey Stedfast
More fixes on account of my test suite...
* tests/test-cat.c (test_cat_substream): end = start + random
amount... duh. Fixes a bug where sometimes the end bound was < the
start bound.
* gmime/gmime-stream-cat.c (stream_substream): Calculate the
length of each of the source streams correctly. D'oh.
(stream_substream): Fixed the calculation for s->start.
(stream_substream): Fixed the s->end calculation for when end
within the source stream's bounds.
(stream_substream): Keep track of how long our substream is going
to be for use with setting absolute bound_end on a multi-stream
substream.
2007-02-05 Jeffrey Stedfast
Fixes on account of the awesome test suite I wrote earlier... still
need to fix ::substream() tho (or maybe it's just the test that's
broke?).
* gmime/gmime-stream-cat.c: Added an id member to struct
_cat_node, for use with debugging...
(stream_read): Seek in the source stream, don't call
Cat::stream_seek() to do it.
(stream_seek): Swapped the logic of the "within bounds" check, had
it backwards. When seeking past a stream, set the node->position
to the length of the stream (technically, it's like we read() thru
all that data, right?). Instead of resetting all streams starting
at n->next, reset them all starting at current->next... since 'n'
technically might be before 'current'.
(g_mime_stream_cat_add_source): Assign each node an id for easier
debugging...
2007-02-05 Jeffrey Stedfast
* tests/test-cat.c: The beginnings of a test suite for
GMimeStreamCat.
* gmime/gmime-stream-cat.c (stream_read): Go to the next stream if
nread <= 0, not just nread == 0.
2007-02-04 Jeffrey Stedfast
* gmime/gmime-stream-mem.c (stream_reset): No longer need to
update stream->position.
* gmime/gmime-stream-mmap.c (stream_reset): Same g_return_if_fail
change. Also don't update stream->position.
(stream_seek): Added similar sanity checking/eos resetting as
StreamFs code.
* gmime/gmime-stream-file.c (stream_read): Style changes.
(stream_write): Style changes.
(stream_close): Fixed compiler warning.
(stream_reset): Changed g_return_if_fail to a true if-then.
(stream_seek): Changed to mimic the StreamFs changes.
(g_mime_stream_file_new): Similar to fs_new() change.
* gmime/gmime-stream-fs.c (stream_close): Loop the close()
ourselves.
(stream_reset): Changed g_return_if_fail to a true if-then. Also
be better about resetting eos.
(stream_seek): Rewritten to be more correct/robust (at least I
hope). Also properly reset eos when appropriate.
(g_mime_stream_fs_new): If lseek() fails, pretend start offset is
0.
* gmime/gmime-stream.c (stream_reset): No longer needs to update
stream->position.
(g_mime_stream_reset): Update stream->position if everything reset
smoothly. This is just a convenience change to subclass
implementations.
* gmime/gmime-stream-cat.c (stream_read): Rewritten. Hopefully
correct now? Ugh. We can hope...
(stream_write): Fixed to work better.
(stream_close): Rewritten.
(stream_reset): Rewritten to reset the streams, don't seek.
(stream_seek): Rewritten... still not correct, but should be ok
assuming our bound_start is 0.
(stream_length): Rewritten to not depend on a pre-calculated
length value... this Does Not Work (tm) if the source streams are
unbound and we've written to them.
(stream_substream): Rewritten... because ::seek() is so complex
for this type of stream, I've tried to eliminate a lot of the
headaches by making substreams only slurp up the streams within
the bounds of the start/end requested. If the entire contents
within the requested bounds are contained within a single source
stream, we return a substream of said source stream instead.
(g_mime_stream_cat_add_source): Don't precalculate the length here
anymore.
* gmime/gmime-stream-buffer.c (stream_read): Fixed to never allow
buflen to be negative if the read() of our source stream fails.
(stream_close): Handle the case where we've already been closed.
(stream_eos): Simplified.
(stream_reset): Stylistic changes.
(stream_seek): Don't allow seeks under our bound_start.
2007-02-03 Jeffrey Stedfast
* gmime/gmime-stream-cat.c (stream_flush): Flush all streams up to
and including the current stream, not just the current stream.
(stream_write): break if we don't write any data to
current->stream or get an error so we can try the next stream.
* gmime/gmime-stream-file.c (stream_close): Same as below.
* gmime/gmime-stream-fs.c (stream_close): Allow closing multiple
times... makes this consistant with the other streams.
(stream_write): If a system write fails with EFBIG or ENOSPC, set
eos to TRUE.
2007-01-20 Jeffrey Stedfast
* tests/test-streams.c (test_stream_gets): printf formatter fixes.
* examples/imap-example.c: #include <glib/gstdio.h>, fixes bug
#394434.
2007-01-20 Jeffrey Stedfast
Fixes bug #394419
* gmime/gmime-filter-charset.c (filter_filter): Do iconv const
casting.
(filter_complete): Same.
2006-11-02 Jeffrey Stedfast
* gmime/gmime-utils.c (g_mime_utils_header_format_date): Changed
the names of the parameters to date and tz_offset to prevent
warnings from -Wshadow.
* gmime/gmime-filter-html.c (writeln): Fixed another possible
buffer overflow condition pointed out by hpj.
* gmime/gmime-filter-crlf.c (filter_filter): Fixed a possible
buffer overflow condition pointed out by hpj.
* gmime/gmime-gpg-context.c (gpg_ctx_op_step): Modified to use
poll() rather than select()
2006-09-18 Joe Shaw
* mono/Makefile.am: Use SOURCES_XML instead of XML_SOURCES to
specify the sources.xml file. XML_SOURCES breaks with newer
automakes.
2006-08-29 Pawel Salek
* gmime/gmime-message-partial.c: set buf just before use - since
the mem stream buffer may get reallocated in the meantime leading
to segfaults.
2006-08-29 Jeffrey Stedfast
* gmime/gmime-param.c (decode_quoted_string): Unescape escape
sequences. Fixes bug #352771.
* gmime/gmime-message.c (g_mime_message_set_subject): Updated the
docs.
(g_mime_message_get_subject): Same.
2006-08-21 Peter Bloomfield
* gmime/gmime-utils.c (g_mime_utils_unquote_string): handle an
arbitrary sequence of quoted and unquoted sections.
2006-08-02 Jeffrey Stedfast
* README: Bumped version
* configure.in: Bumped version to 2.2.3
* gmime/gmime-message.c (process_header): Decode the values for
Subject, From, Reply-To so that g_mime_message_get_subject/etc all
return decoded strings like they were meant to.
2006-06-23 Jeffrey Stedfast
* gmime/gmime-gpg-context.c (swrite): Use g_build_filename() and
g_get_tmp_dir() rather than hard-coding the tmpfile to be in /tmp.
2006-06-23 Jeffrey Stedfast
* gmime/gmime-part.c: Use g_ascii_* versions of str[n]casecmp.
* gmime/gmime-parser.c: Use g_ascii_* versions of str[n]casecmp.
* gmime/gmime-param.c: Use g_ascii_* versions of str[n]casecmp.
* gmime/gmime-multipart-signed.c: Use g_ascii_* versions of
str[n]casecmp.
* gmime/gmime-multipart-encrypted.c: Use g_ascii_* versions of
str[n]casecmp.
* gmime/gmime-multipart.c: Use g_ascii_* versions of
str[n]casecmp.
* gmime/gmime-message-partial.c: Use g_ascii_* versions of
str[n]casecmp.
* gmime/gmime-message-part.c: Use g_ascii_* versions of
str[n]casecmp.
* gmime/gmime-message.c: Use g_ascii_* versions of str[n]casecmp.
* gmime/gmime-iconv.c (g_mime_iconv_open): Use g_ascii_* versions
of str[n]casecmp.
* gmime/gmime-header.c (g_mime_header_new): Use
g_mime_strcase_[hash,equal] rather than param_[hash,equal] to
reuse code.
* gmime/gmime-gpg-context.c: Use g_ascii_* versions of
str[n]casecmp.
* gmime/gmime-filter-enriched.c: Use g_ascii_* versions of
str[n]casecmp.
* gmime/gmime-disposition.c (g_mime_disposition_add_parameter):
Use g_mime_strcase_[hash,equal] rather than param_[hash,equal] to
reuse code.
(g_mime_disposition_new): Same.
(param_equal): Removed.
(param_hash): Removed.
* gmime/gmime-content-type.c: Use g_ascii_* versions of
str[n]casecmp.
(g_mime_content_type_new_from_string): Use
g_mime_strcase_[hash,equal] rather than param_[hash,equal] to
reuse code.
(g_mime_content_type_set_parameter): Same.
(param_equal): Removed.
(param_hash): Removed.
* gmime/gmime-charset.c: Use g_ascii_* versions of str[n]casecmp.
2006-06-23 Jeffrey Stedfast
* gmime/gmime-stream-cat.c (stream_seek): Fixed to only seek if
necessary and also to use ::reset() if seeking back to the
beginning of the stream so that it works for non-seekable streams
too. Fixes bug #345503 - again thanks to Charles for reporting
this bug.
* gmime/gmime-object.c (subtype_bucket_foreach): Fixed to also
free the bucket memory. Fixes bug #345768, thanks to Charles Kerr
for pointing this out.
2006-06-22 Jeffrey Stedfast
* gmime/gmime-gpg-context.c: Removed #define _POSIX_SOURCE to fix
bug #172179.
2006-06-15 Jeffrey Stedfast
* README: Bumped version
* configure.in: Bumped version to 2.2.2
2006-06-01 Jeffrey Stedfast
* gmime/gmime-utils.c (parse_broken_date): Fixed to handle
MM-DD-YY properly and also to fallback to DD-MM-YY if the first
pair of digits isn't within range for a proper month.
2006-05-30 Jeffrey Stedfast
* gmime.h.in: Removed.
* gmime.h: Now static, no longer auto-generated.
* gmime/gmime.c: Set the gmime_[major,minor,micro]_version
variables.
(g_mime_check_version): New function to check the required
version.
* gmime/gmime-stream-fs.c: Implement our own no-op version of
fsync() for systems that don't have fsync().
2006-05-24 Jeffrey Stedfast
* examples/imap-example.c (main): Use g_mkdir() to make this
example portable to Win32.
2006-05-01 Jeffrey Stedfast
* gmime/gmime-gpg-context.c (gpg_ctx_parse_status): Handle prompts
from GnuPG asking for the user's PIN for their SmartCard.
2006-04-21 Jeffrey Stedfast
* gmime/gmime-stream.h: #include <stdio.h> for SEEK_SET/CUR/END
enum values.
2006-03-16 Jeffrey Stedfast
* README: Bumped version
* configure.in: Bumped version to 2.2.1
* gmime/gmime-parser.c (parser_step): No-op if we are in an ERROR
state.
(parser_construct_message): Don't bail if we don't start in state
INIT, this is valid.
(parser_step_from): We need to bail even if parser_fill() returns
> 0 if the line is incomplete (e.g. a forced refill was needed but
no additional data could be read).
2006-03-16 Jeffrey Stedfast
* README: Bumped version
* configure.in: Bumped version to 2.2.0, it's about time I made a
stable release.
2006-03-15 Jeffrey Stedfast
* gmime/gmime-parser.c (parser_step_from): If we fail to find a
From line, set an error state. Also fixed the End-Of-Data check to
prevent an infinite loop if the stream ends with \n\n.
(parser_construct_message): Make sure our state starts off at
INIT. Also check for the ERROR state in our parser_step() loop and
return NULL if we encounter an error.
2006-03-03 Jeffrey Stedfast
* util/url-scanner.c (g_url_web_end): Allow urls such as
"http://www.novell.com./path" (note the '.' before the path
component).
(g_url_addrspec_start): If the '@' is the first character in the
match, then it isn't a valid email address.
To generate a diff of this commit:
cvs rdiff -r1.12 -r1.13 pkgsrc/mail/gmime/Makefile
cvs rdiff -r1.6 -r1.7 pkgsrc/mail/gmime/PLIST
cvs rdiff -r1.7 -r1.8 pkgsrc/mail/gmime/distinfo
cvs rdiff -r1.3 -r1.4 pkgsrc/mail/gmime/patches/patch-aa
cvs rdiff -r1.2 -r0 pkgsrc/mail/gmime/patches/patch-ab
Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.