aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--configure.ac2
-rw-r--r--lib/mf-dbm.c6
-rw-r--r--src/builtin/burst.bi2
-rw-r--r--src/mfdbtool.c12
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
@@ -108,7 +108,7 @@ AH_BOTTOM([
])
# 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
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
@@ -61,7 +61,7 @@ mf_fcheck_perm(int fd, int mode)
return MU_ERR_FAILURE;
}
if ((st.st_mode & 0777) != mode)
- return errno = MU_ERR_UNSAFE_PERMS;
+ return errno = EACCES;
return 0;
}
@@ -79,7 +79,7 @@ mf_check_perm(const char *name, int mode)
return MU_ERR_FAILURE;
}
if ((st.st_mode & 0777) != mode)
- return errno = MU_ERR_UNSAFE_PERMS;
+ return errno = EACCES;
return 0;
}
@@ -393,7 +393,7 @@ mf_dbm_open(char *name, MF_DBM_FILE *dbm, int flags, int mode, int *ro)
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;
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
@@ -301,7 +301,7 @@ finish_stream(eval_environ_t env, struct burst_stream *bs)
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,
diff --git a/src/mfdbtool.c b/src/mfdbtool.c
index 5bb230fc..991bbdfc 100644
--- a/src/mfdbtool.c
+++ b/src/mfdbtool.c
@@ -466,15 +466,21 @@ main(int argc, char **argv)
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) {

Return to:

Send suggestions and report system problems to the System administrator.