mirror of
https://git.notmuchmail.org/git/notmuch
synced 2024-11-22 02:48:08 +01:00
cli: modify mime_node_open to take new crypto struct as argument
This simplifies the interface considerably.
This commit is contained in:
parent
c3eba1c3f8
commit
429ebf5d20
4 changed files with 11 additions and 15 deletions
|
@ -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);
|
||||||
|
|
|
@ -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
|
||||||
|
|
|
@ -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);
|
||||||
|
|
|
@ -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));
|
||||||
|
|
Loading…
Reference in a new issue