cli: modify mime_node_open to take new crypto struct as argument

This simplifies the interface considerably.
This commit is contained in:
Jameson Graef Rollins 2012-05-26 11:45:43 -07:00 committed by David Bremner
parent c3eba1c3f8
commit 429ebf5d20
4 changed files with 11 additions and 15 deletions

View file

@ -57,8 +57,7 @@ _mime_node_context_free (mime_node_context_t *res)
notmuch_status_t notmuch_status_t
mime_node_open (const void *ctx, notmuch_message_t *message, mime_node_open (const void *ctx, notmuch_message_t *message,
notmuch_crypto_context_t *cryptoctx, notmuch_crypto_t *crypto, mime_node_t **root_out)
notmuch_bool_t decrypt, mime_node_t **root_out)
{ {
const char *filename = notmuch_message_get_filename (message); const char *filename = notmuch_message_get_filename (message);
mime_node_context_t *mctx; mime_node_context_t *mctx;
@ -110,8 +109,8 @@ mime_node_open (const void *ctx, notmuch_message_t *message,
goto DONE; goto DONE;
} }
mctx->cryptoctx = cryptoctx; mctx->cryptoctx = crypto->gpgctx;
mctx->decrypt = decrypt; mctx->decrypt = crypto->decrypt;
/* Create the root node */ /* Create the root node */
root->part = GMIME_OBJECT (mctx->mime_message); root->part = GMIME_OBJECT (mctx->mime_message);

View file

@ -350,9 +350,10 @@ struct mime_node {
}; };
/* Construct a new MIME node pointing to the root message part of /* Construct a new MIME node pointing to the root message part of
* message. If cryptoctx is non-NULL, it will be used to verify * message. If crypto->gpgctx is non-NULL, it will be used to verify
* signatures on any child parts. If decrypt is true, then cryptoctx * signatures on any child parts. If crypto->decrypt is true, then
* will additionally be used to decrypt any encrypted child parts. * crypto.gpgctx will additionally be used to decrypt any encrypted
* child parts.
* *
* Return value: * Return value:
* *
@ -364,8 +365,7 @@ struct mime_node {
*/ */
notmuch_status_t notmuch_status_t
mime_node_open (const void *ctx, notmuch_message_t *message, mime_node_open (const void *ctx, notmuch_message_t *message,
notmuch_crypto_context_t *cryptoctx, notmuch_crypto_t *crypto, mime_node_t **node_out);
notmuch_bool_t decrypt, mime_node_t **node_out);
/* Return a new MIME node for the requested child part of parent. /* Return a new MIME node for the requested child part of parent.
* parent will be used as the talloc context for the returned child * parent will be used as the talloc context for the returned child

View file

@ -575,8 +575,7 @@ notmuch_reply_format_default(void *ctx,
g_object_unref (G_OBJECT (reply)); g_object_unref (G_OBJECT (reply));
reply = NULL; reply = NULL;
if (mime_node_open (ctx, message, params->crypto.gpgctx, params->crypto.decrypt, if (mime_node_open (ctx, message, &(params->crypto), &root) == NOTMUCH_STATUS_SUCCESS) {
&root) == NOTMUCH_STATUS_SUCCESS) {
format_part_reply (root); format_part_reply (root);
talloc_free (root); talloc_free (root);
} }
@ -605,8 +604,7 @@ notmuch_reply_format_json(void *ctx,
messages = notmuch_query_search_messages (query); messages = notmuch_query_search_messages (query);
message = notmuch_messages_get (messages); message = notmuch_messages_get (messages);
if (mime_node_open (ctx, message, params->crypto.gpgctx, params->crypto.decrypt, if (mime_node_open (ctx, message, &(params->crypto), &node) != NOTMUCH_STATUS_SUCCESS)
&node) != NOTMUCH_STATUS_SUCCESS)
return 1; return 1;
reply = create_reply_message (ctx, config, message, reply_all); reply = create_reply_message (ctx, config, message, reply_all);

View file

@ -810,8 +810,7 @@ show_message (void *ctx,
mime_node_t *root, *part; mime_node_t *root, *part;
notmuch_status_t status; notmuch_status_t status;
status = mime_node_open (local, message, params->crypto.gpgctx, status = mime_node_open (local, message, &(params->crypto), &root);
params->crypto.decrypt, &root);
if (status) if (status)
goto DONE; goto DONE;
part = mime_node_seek_dfs (root, (params->part < 0 ? 0 : params->part)); part = mime_node_seek_dfs (root, (params->part < 0 ? 0 : params->part));