X-Git-Url: https://git.notmuchmail.org/git?a=blobdiff_plain;ds=sidebyside;f=notmuch-client.h;h=f59b39657897b3765e1d9d6edc62efe60eddf192;hb=867d7352a76e0a8a46e64a035f23edcf7d6f49e4;hp=89e15ba649f7b93f41b3ac729c477c2ec5d70225;hpb=7de3d77d2d31abaea78e70f4da9d9f2a5ef84a58;p=notmuch diff --git a/notmuch-client.h b/notmuch-client.h index 89e15ba6..f59b3965 100644 --- a/notmuch-client.h +++ b/notmuch-client.h @@ -49,6 +49,7 @@ #include #include #include +#include #include "talloc-extra.h" #include "crypto.h" @@ -252,14 +253,16 @@ json_quote_str (const void *ctx, const char *str); /* notmuch-config.c */ typedef enum { - NOTMUCH_CONFIG_OPEN = 1 << 0, - NOTMUCH_CONFIG_CREATE = 1 << 1, -} notmuch_config_mode_t; + NOTMUCH_COMMAND_CONFIG_OPEN = 1 << 0, + NOTMUCH_COMMAND_CONFIG_CREATE = 1 << 1, + NOTMUCH_COMMAND_DATABASE_EARLY = 1 << 2, + NOTMUCH_COMMAND_DATABASE_WRITE = 1 << 3, +} notmuch_command_mode_t; notmuch_config_t * notmuch_config_open (void *ctx, const char *filename, - notmuch_config_mode_t config_mode); + notmuch_command_mode_t config_mode); void notmuch_config_close (notmuch_config_t *config); @@ -469,7 +472,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. */ @@ -491,6 +494,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;