diff --git a/mailbox/cfg_lexer.l b/mailbox/cfg_lexer.l
index f530ca2..998d84d 100644
--- a/mailbox/cfg_lexer.l
+++ b/mailbox/cfg_lexer.l
@@ -333,6 +333,14 @@ mu_cfg_parse_file (mu_cfg_tree_t **return_tree, const char *file, int flags)
 	mu_error (_("cannot stat `%s': %s"), file, mu_strerror (errno));
       return ENOENT;
     }
+
+  else if (!S_ISREG (st.st_mode))
+    {
+      if (flags & MU_PARSE_CONFIG_VERBOSE)
+	mu_diag_output (MU_DIAG_INFO, _("%s: not a regular file"), file);
+      return ENOENT;
+    }
+
   fp = fopen (file, "r");
   if (!fp)
     {
