]> git.notmuchmail.org Git - notmuch/blobdiff - notmuch-client.h
cli/dump: replace use of gzprintf with gzputs for config values
[notmuch] / notmuch-client.h
index 74690054d161ad9b2da297eac21ed62fdc8eb2cd..ebd43e8d296ec775808f527b757b73c137528235 100644 (file)
@@ -49,6 +49,7 @@
 #include <errno.h>
 #include <signal.h>
 #include <ctype.h>
+#include <zlib.h>
 
 #include "talloc-extra.h"
 #include "crypto.h"
@@ -395,8 +396,10 @@ struct mime_node {
     struct mime_node_context *ctx;
 
     /* Internal: For successfully decrypted multipart parts, the
-     * decrypted part to substitute for the second child. */
-    GMimeObject *decrypted_child;
+     * decrypted part to substitute for the second child; or, for
+     * PKCS#7 parts, the part returned after removing/processing the
+     * PKCS#7 transformation */
+    GMimeObject *unwrapped_child;
 
     /* Internal: The next child for depth-first traversal and the part
      * number to assign it (or -1 if unknown). */
@@ -467,7 +470,7 @@ notmuch_database_dump (notmuch_database_t *notmuch,
                       dump_include_t include,
                       bool gzip_output);
 
-/* If status is non-zero (i.e. error) print appropriate
+/* If status indicates error print appropriate
  * messages to stderr.
  */
 
@@ -489,6 +492,16 @@ print_status_database (const char *loc,
 int
 status_to_exit (notmuch_status_t status);
 
+notmuch_status_t
+print_status_gzbytes (const char *loc,
+                     gzFile file,
+                     int bytes);
+
+/* the __location__ macro is defined in talloc.h */
+#define ASSERT_GZBYTES(file, bytes) ((print_status_gzbytes (__location__, file, bytes)) ? exit (1) : 0)
+#define GZPRINTF(file, fmt, ...) ASSERT_GZBYTES (file, gzprintf (file, fmt, ##__VA_ARGS__));
+#define GZPUTS(file, str) ASSERT_GZBYTES(file, gzputs (file, str));
+
 #include "command-line-arguments.h"
 
 extern const char *notmuch_requested_db_uuid;