<feed xmlns='http://www.w3.org/2005/Atom'>
<title>notmuch/mime-node.c, branch 0.14</title>
<subtitle>thread-based email index, search, and tagging</subtitle>
<id>https://git.notmuchmail.org/git/notmuch/atom?h=0.14</id>
<link rel='self' href='https://git.notmuchmail.org/git/notmuch/atom?h=0.14'/>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/'/>
<updated>2012-06-10T23:09:42Z</updated>
<entry>
<title>cli: use new notmuch_crypto_get_context in mime-node.c</title>
<updated>2012-06-10T23:09:42Z</updated>
<author>
<name>Jameson Graef Rollins</name>
<email>jrollins@finestructure.net</email>
</author>
<published>2012-05-26T18:45:46Z</published>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/commit/?id=e04b18cf3624e1ba29a45cd1f15715e1da244021'/>
<id>urn:sha1:e04b18cf3624e1ba29a45cd1f15715e1da244021</id>
<content type='text'>
This has the affect of lazily creating the crypto contexts only when
needed.  This removes code duplication from notmuch-show and
notmuch-reply, and should speed up these functions considerably if the
crypto flags are provided but the messages don't have any
cryptographic parts.
</content>
</entry>
<entry>
<title>cli: new crypto verify flag to handle verification</title>
<updated>2012-06-10T23:09:09Z</updated>
<author>
<name>Jameson Graef Rollins</name>
<email>jrollins@finestructure.net</email>
</author>
<published>2012-05-26T18:45:45Z</published>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/commit/?id=b2c8fdee53a1b06dd19fafe23e53ac8555d294af'/>
<id>urn:sha1:b2c8fdee53a1b06dd19fafe23e53ac8555d294af</id>
<content type='text'>
Use this flag rather than depend on the existence of an initialized
gpgctx, to determine whether we should verify a multipart/signed.  We
will be moving to create the ctx lazily, so we don't want to depend on
it being previously initialized if it's not needed.
</content>
</entry>
<entry>
<title>cli: modify mime_node_context to use the new crypto struct</title>
<updated>2012-06-10T23:08:56Z</updated>
<author>
<name>Jameson Graef Rollins</name>
<email>jrollins@finestructure.net</email>
</author>
<published>2012-05-26T18:45:44Z</published>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/commit/?id=90822ffdb830060c6f1d73ad1f6c7964c9f20ad4'/>
<id>urn:sha1:90822ffdb830060c6f1d73ad1f6c7964c9f20ad4</id>
<content type='text'>
This simplifies some more interfaces.
</content>
</entry>
<entry>
<title>cli: modify mime_node_open to take new crypto struct as argument</title>
<updated>2012-06-10T23:06:48Z</updated>
<author>
<name>Jameson Graef Rollins</name>
<email>jrollins@finestructure.net</email>
</author>
<published>2012-05-26T18:45:43Z</published>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/commit/?id=429ebf5d20a943fb520d7321c5dde721265b0155'/>
<id>urn:sha1:429ebf5d20a943fb520d7321c5dde721265b0155</id>
<content type='text'>
This simplifies the interface considerably.
</content>
</entry>
<entry>
<title>cli: use new typedef to deal with gmime 2.4/2.6 context incompatibility</title>
<updated>2012-06-10T23:04:50Z</updated>
<author>
<name>Jameson Graef Rollins</name>
<email>jrollins@finestructure.net</email>
</author>
<published>2012-05-26T18:45:40Z</published>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/commit/?id=25c3140e13698b147baedd99b2d6f8775c67de07'/>
<id>urn:sha1:25c3140e13698b147baedd99b2d6f8775c67de07</id>
<content type='text'>
gmime 2.4 defines GMimeCipherContext, while 2.6 defines
GMimeCryptoContext.  typedef them both to notmuch_crypto_context_t to
cover this discrepancy and remove a bunch of #ifdefs.
</content>
</entry>
<entry>
<title>Handle errors in mime_node_open</title>
<updated>2012-03-11T01:25:19Z</updated>
<author>
<name>Austin Clements</name>
<email>amdragon@MIT.EDU</email>
</author>
<published>2012-03-06T18:26:57Z</published>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/commit/?id=353577ad5733b78b71d93c9bdbaae0b062d32331'/>
<id>urn:sha1:353577ad5733b78b71d93c9bdbaae0b062d32331</id>
<content type='text'>
</content>
</entry>
<entry>
<title>mime node: Record depth-first part numbers</title>
<updated>2012-01-25T11:19:22Z</updated>
<author>
<name>Austin Clements</name>
<email>amdragon@MIT.EDU</email>
</author>
<published>2012-01-23T23:33:09Z</published>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/commit/?id=a66e65d604c5e658daa97acbb9d0487788863521'/>
<id>urn:sha1:a66e65d604c5e658daa97acbb9d0487788863521</id>
<content type='text'>
This makes the part numbers readily accessible to formatters.
Hierarchical part numbering would be a more natural and efficient fit
for MIME and may be the way to go in the future, but depth-first
numbering maintains compatibility with what we currently do.
</content>
</entry>
<entry>
<title>Add compatibility with gmime 2.6</title>
<updated>2012-01-21T12:52:34Z</updated>
<author>
<name>Thomas Jost</name>
<email>schnouki@schnouki.net</email>
</author>
<published>2012-01-20T09:39:24Z</published>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/commit/?id=00b5623d1a21d886b564d031e30749e5d02e4ae6'/>
<id>urn:sha1:00b5623d1a21d886b564d031e30749e5d02e4ae6</id>
<content type='text'>
There are lots of API changes in gmime 2.6 crypto handling. By adding
preprocessor directives, it is however possible to add gmime 2.6 compatibility
while preserving compatibility with gmime 2.4 too.

This is mostly based on id:"8762i8hrb9.fsf@bookbinder.fernseed.info".

This was tested against both gmime 2.6.4 and 2.4.31. With gmime 2.4.31, the
crypto tests all work fine (as expected). With gmime 2.6.4, one crypto test is
currently broken (signature verification with signer key unavailable), most
likely because of a bug in gmime which will hopefully be fixed in a future
version.
</content>
</entry>
<entry>
<title>Utility function to seek in MIME trees in depth-first order.</title>
<updated>2011-12-26T02:21:04Z</updated>
<author>
<name>Austin Clements</name>
<email>amdragon@MIT.EDU</email>
</author>
<published>2011-12-24T18:52:45Z</published>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/commit/?id=5d1ac7d1d351c6f122ddaa44d3c82ec68d45178c'/>
<id>urn:sha1:5d1ac7d1d351c6f122ddaa44d3c82ec68d45178c</id>
<content type='text'>
This function matches how we number parts for the --part argument to
show.  It will allow us to jump directly to the desired part, rather
than traversing the entire tree and carefully tracking whether or not
we're "in the zone".
</content>
</entry>
<entry>
<title>Introduce a generic tree-like abstraction for MIME traversal.</title>
<updated>2011-12-26T02:19:12Z</updated>
<author>
<name>Austin Clements</name>
<email>amdragon@MIT.EDU</email>
</author>
<published>2011-12-24T18:52:44Z</published>
<link rel='alternate' type='text/html' href='https://git.notmuchmail.org/git/notmuch/commit/?id=bb189220a323e3140198161234ed54bf98175469'/>
<id>urn:sha1:bb189220a323e3140198161234ed54bf98175469</id>
<content type='text'>
This wraps all of the complex MIME part handling in a single, simple
function that gets part N from *any* MIME object, so traversing a MIME
part tree becomes a two-line for loop.  Furthermore, the MIME node
structure provides easy access to envelopes for message parts as well
as cryptographic information.

This code is directly derived from the current show_message_body code
(much of it is identical), but the control relation is inverted:
instead of show_message_body controlling the traversal of the MIME
structure and invoking callbacks, the caller controls the traversal of
the MIME structure.
</content>
</entry>
</feed>
