diff options
-rw-r--r-- | configure.ac | 2 | ||||
-rw-r--r-- | lib/mf-dbm.c | 6 | ||||
-rw-r--r-- | src/builtin/burst.bi | 2 | ||||
-rw-r--r-- | src/mfdbtool.c | 12 |
4 files changed, 14 insertions, 8 deletions
diff --git a/configure.ac b/configure.ac index 6bff0484..0e975fc6 100644 --- a/configure.ac +++ b/configure.ac @@ -105,13 +105,13 @@ gl_INIT AH_BOTTOM([ /* program_name is used by lib/error.c */ #define program_name program_invocation_name ]) # Check for GNU Mailutils -AM_GNU_MAILUTILS([2.9.93], [all auth sieve cfg argp], [:]) +AM_GNU_MAILUTILS([2.99.94], [all auth sieve cfg argp], [:]) AC_CHECK_TYPES([struct mu_argp_node_list],,,[#include <mailutils/libargp.h>]) ### Check for Emacs site-lisp directory AM_PATH_LISPDIR if test "$EMACS" != "no"; then diff --git a/lib/mf-dbm.c b/lib/mf-dbm.c index 87080b7d..a42c96ff 100644 --- a/lib/mf-dbm.c +++ b/lib/mf-dbm.c @@ -58,13 +58,13 @@ mf_fcheck_perm(int fd, int mode) if (errno == ENOENT) return ENOENT; else return MU_ERR_FAILURE; } if ((st.st_mode & 0777) != mode) - return errno = MU_ERR_UNSAFE_PERMS; + return errno = EACCES; return 0; } int mf_check_perm(const char *name, int mode) { @@ -76,13 +76,13 @@ mf_check_perm(const char *name, int mode) if (errno == ENOENT) return ENOENT; else return MU_ERR_FAILURE; } if ((st.st_mode & 0777) != mode) - return errno = MU_ERR_UNSAFE_PERMS; + return errno = EACCES; return 0; } #if defined(WITH_GDBM) @@ -390,13 +390,13 @@ mf_dbm_open(char *name, MF_DBM_FILE *dbm, int flags, int mode, int *ro) # define LKTYPE(o) (((o) & O_RDWR) ? F_WRLCK : F_RDLCK) mu_debug(debug_handle, MU_DEBUG_TRACE2, ("opening database %s", name)); mf_dbm_errno = mf_check_perm(name, mode); if (mf_dbm_errno && mf_dbm_errno != ENOENT) - return MU_ERR_UNSAFE_PERMS; + return EACCES; if (ro) *ro = 0; switch (flags) { case MU_STREAM_CREAT: diff --git a/src/builtin/burst.bi b/src/builtin/burst.bi index 2691889b..f8ddeefc 100644 --- a/src/builtin/burst.bi +++ b/src/builtin/burst.bi @@ -298,13 +298,13 @@ finish_stream(eval_environ_t env, struct burst_stream *bs) int rc; mu_message_t msg; bs->flags &= ~F_FIRST; mu_stream_seek(bs->stream, 0, SEEK_SET, NULL); rc = mu_stream_to_message(bs->stream, &msg); - if (rc == MU_ERR_BAD_822_FORMAT) { + if (rc == MU_ERR_INVALID_EMAIL) { switch (bs->burst_ctl & _MFL_BURST_ERR_MASK) { case _MFL_BURST_ERR_FAIL: MF_THROW(mfe_failure, "mu_stream_to_message: %s", mu_strerror (rc)); diff --git a/src/mfdbtool.c b/src/mfdbtool.c index 5bb230fc..991bbdfc 100644 --- a/src/mfdbtool.c +++ b/src/mfdbtool.c @@ -463,21 +463,27 @@ main(int argc, char **argv) mu_site_rcfile = SYSCONFDIR "/mfdbtool.conf"; rc = mu_app_init(&argp, capa, mfdbtool_cfg_param, argc, argv, 0, &index, NULL); if (rc) exit(EX_CONFIG); - if (!run) + if (!run) { mu_error(_("you must specify one of --list, --delete," " --expire or --compat")); + exit(EX_USAGE); + } if (all_option && - !(run == mfdbtool_compact || run == mfdbtool_expire)) + !(run == mfdbtool_compact || run == mfdbtool_expire)) { mu_error(_("--all is meaningful only with " "--expire or --compact option")); - if (all_option && format_option) + exit(EX_USAGE); + } + if (all_option && format_option) { mu_error(_("--format is incompatible with --all")); + exit(EX_USAGE); + } if (!format_option) format_option = db_format_lookup("cache"); if (!format_option) { mu_error("INTERNAL ERROR: cache database not defined"); exit(EX_SOFTWARE); } |