summaryrefslogtreecommitdiffstats
path: root/doc/man
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--doc/man/Makefile.am118
-rw-r--r--doc/man/Makefile.in825
-rw-r--r--doc/man/deliver.11
-rw-r--r--doc/man/doveadm-acl.1.in270
-rw-r--r--doc/man/doveadm-altmove.1.in104
-rw-r--r--doc/man/doveadm-auth.1.in216
-rw-r--r--doc/man/doveadm-backup.11
-rw-r--r--doc/man/doveadm-batch.1.in103
-rw-r--r--doc/man/doveadm-config.11
-rw-r--r--doc/man/doveadm-copy.11
-rw-r--r--doc/man/doveadm-deduplicate.1.in93
-rw-r--r--doc/man/doveadm-director.1.in283
-rw-r--r--doc/man/doveadm-dump.1.in93
-rw-r--r--doc/man/doveadm-exec.1.in47
-rw-r--r--doc/man/doveadm-expunge.1.in101
-rw-r--r--doc/man/doveadm-fetch.1.in197
-rw-r--r--doc/man/doveadm-flags.1.in120
-rw-r--r--doc/man/doveadm-force-resync.1.in65
-rw-r--r--doc/man/doveadm-fs.1.in93
-rw-r--r--doc/man/doveadm-fts.1.in168
-rw-r--r--doc/man/doveadm-help.1.in36
-rw-r--r--doc/man/doveadm-import.1.in142
-rw-r--r--doc/man/doveadm-index.1.in102
-rw-r--r--doc/man/doveadm-instance.1.in63
-rw-r--r--doc/man/doveadm-kick.1.in138
-rw-r--r--doc/man/doveadm-log.1.in122
-rw-r--r--doc/man/doveadm-mailbox-cryptokey.1.in96
-rw-r--r--doc/man/doveadm-mailbox.1.in409
-rw-r--r--doc/man/doveadm-move.1.in169
-rw-r--r--doc/man/doveadm-penalty.1.in58
-rw-r--r--doc/man/doveadm-proxy.1.in87
-rw-r--r--doc/man/doveadm-purge.1.in71
-rw-r--r--doc/man/doveadm-pw.1.in163
-rw-r--r--doc/man/doveadm-quota.1.in131
-rw-r--r--doc/man/doveadm-rebuild.1.in112
-rw-r--r--doc/man/doveadm-reload.11
-rw-r--r--doc/man/doveadm-replicator.1.in123
-rw-r--r--doc/man/doveadm-save.1.in66
-rw-r--r--doc/man/doveadm-search-query.7428
-rw-r--r--doc/man/doveadm-search.1.in129
-rw-r--r--doc/man/doveadm-stats.1.in73
-rw-r--r--doc/man/doveadm-stop.11
-rw-r--r--doc/man/doveadm-sync.1.in458
-rw-r--r--doc/man/doveadm-user.1.in165
-rw-r--r--doc/man/doveadm-who.1.in96
-rw-r--r--doc/man/doveadm.1.in270
-rw-r--r--doc/man/doveconf.1.in220
-rw-r--r--doc/man/dovecot-lda.1.in166
-rw-r--r--doc/man/dovecot-sysreport.1.in40
-rw-r--r--doc/man/dovecot.1.in167
-rw-r--r--doc/man/dsync.11
-rw-r--r--doc/man/global-options-formatter.inc46
-rw-r--r--doc/man/global-options.inc21
-rw-r--r--doc/man/option-A.inc27
-rw-r--r--doc/man/option-F-file.inc15
-rw-r--r--doc/man/option-S-socket.inc10
-rw-r--r--doc/man/option-u-user.inc22
-rw-r--r--doc/man/reporting-bugs.inc6
-rw-r--r--doc/man/sed.sh38
59 files changed, 7388 insertions, 0 deletions
diff --git a/doc/man/Makefile.am b/doc/man/Makefile.am
new file mode 100644
index 0000000..0b0b8fb
--- /dev/null
+++ b/doc/man/Makefile.am
@@ -0,0 +1,118 @@
+pkgsysconfdir = $(sysconfdir)/dovecot
+
+SUFFIXES = .1.in .1
+
+dist_man1_MANS = \
+ deliver.1 \
+ doveadm-backup.1 \
+ doveadm-config.1 \
+ doveadm-copy.1 \
+ doveadm-reload.1 \
+ doveadm-stop.1 \
+ dsync.1
+
+dist_man7_MANS = \
+ doveadm-search-query.7
+
+nodist_man1_MANS = \
+ doveadm.1 \
+ doveadm-acl.1 \
+ doveadm-altmove.1 \
+ doveadm-auth.1 \
+ doveadm-batch.1 \
+ doveadm-deduplicate.1 \
+ doveadm-director.1 \
+ doveadm-dump.1 \
+ doveadm-exec.1 \
+ doveadm-expunge.1 \
+ doveadm-fetch.1 \
+ doveadm-flags.1 \
+ doveadm-fs.1 \
+ doveadm-fts.1 \
+ doveadm-import.1 \
+ doveadm-instance.1 \
+ doveadm-index.1 \
+ doveadm-force-resync.1 \
+ doveadm-help.1 \
+ doveadm-kick.1 \
+ doveadm-log.1 \
+ doveadm-mailbox.1 \
+ doveadm-mailbox-cryptokey.1 \
+ doveadm-move.1 \
+ doveadm-penalty.1 \
+ doveadm-proxy.1 \
+ doveadm-purge.1 \
+ doveadm-pw.1 \
+ doveadm-quota.1 \
+ doveadm-rebuild.1 \
+ doveadm-replicator.1 \
+ doveadm-save.1 \
+ doveadm-search.1 \
+ doveadm-stats.1 \
+ doveadm-sync.1 \
+ doveadm-user.1 \
+ doveadm-who.1 \
+ doveconf.1 \
+ dovecot.1 \
+ dovecot-lda.1 \
+ dovecot-sysreport.1
+
+man_includefiles = \
+ $(srcdir)/global-options-formatter.inc \
+ $(srcdir)/global-options.inc \
+ $(srcdir)/option-A.inc \
+ $(srcdir)/option-F-file.inc \
+ $(srcdir)/option-S-socket.inc \
+ $(srcdir)/option-u-user.inc \
+ $(srcdir)/reporting-bugs.inc
+
+EXTRA_DIST = \
+ doveadm.1.in \
+ doveadm-acl.1.in \
+ doveadm-altmove.1.in \
+ doveadm-auth.1.in \
+ doveadm-batch.1.in \
+ doveadm-deduplicate.1.in \
+ doveadm-director.1.in \
+ doveadm-dump.1.in \
+ doveadm-exec.1.in \
+ doveadm-expunge.1.in \
+ doveadm-fetch.1.in \
+ doveadm-flags.1.in \
+ doveadm-fs.1.in \
+ doveadm-fts.1.in \
+ doveadm-import.1.in \
+ doveadm-instance.1.in \
+ doveadm-index.1.in \
+ doveadm-force-resync.1.in \
+ doveadm-help.1.in \
+ doveadm-kick.1.in \
+ doveadm-log.1.in \
+ doveadm-mailbox.1.in \
+ doveadm-mailbox-cryptokey.1.in \
+ doveadm-move.1.in \
+ doveadm-penalty.1.in \
+ doveadm-proxy.1.in \
+ doveadm-purge.1.in \
+ doveadm-pw.1.in \
+ doveadm-quota.1.in \
+ doveadm-rebuild.1.in \
+ doveadm-replicator.1.in \
+ doveadm-save.1.in \
+ doveadm-search.1.in \
+ doveadm-stats.1.in \
+ doveadm-sync.1.in \
+ doveadm-user.1.in \
+ doveadm-who.1.in \
+ doveconf.1.in \
+ dovecot.1.in \
+ dovecot-lda.1.in \
+ dovecot-sysreport.1.in \
+ sed.sh \
+ $(man_includefiles)
+
+CLEANFILES = $(nodist_man1_MANS)
+
+.1.in.1: $(man_includefiles) Makefile
+ $(SHELL) $(srcdir)/sed.sh $(srcdir) $(rundir) $(pkgsysconfdir) \
+ $(pkglibexecdir) < $< > $@
diff --git a/doc/man/Makefile.in b/doc/man/Makefile.in
new file mode 100644
index 0000000..00c7436
--- /dev/null
+++ b/doc/man/Makefile.in
@@ -0,0 +1,825 @@
+# Makefile.in generated by automake 1.16.3 from Makefile.am.
+# @configure_input@
+
+# Copyright (C) 1994-2020 Free Software Foundation, Inc.
+
+# This Makefile.in is free software; the Free Software Foundation
+# gives unlimited permission to copy and/or distribute it,
+# with or without modifications, as long as this notice is preserved.
+
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
+# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
+# PARTICULAR PURPOSE.
+
+@SET_MAKE@
+VPATH = @srcdir@
+am__is_gnu_make = { \
+ if test -z '$(MAKELEVEL)'; then \
+ false; \
+ elif test -n '$(MAKE_HOST)'; then \
+ true; \
+ elif test -n '$(MAKE_VERSION)' && test -n '$(CURDIR)'; then \
+ true; \
+ else \
+ false; \
+ fi; \
+}
+am__make_running_with_option = \
+ case $${target_option-} in \
+ ?) ;; \
+ *) echo "am__make_running_with_option: internal error: invalid" \
+ "target option '$${target_option-}' specified" >&2; \
+ exit 1;; \
+ esac; \
+ has_opt=no; \
+ sane_makeflags=$$MAKEFLAGS; \
+ if $(am__is_gnu_make); then \
+ sane_makeflags=$$MFLAGS; \
+ else \
+ case $$MAKEFLAGS in \
+ *\\[\ \ ]*) \
+ bs=\\; \
+ sane_makeflags=`printf '%s\n' "$$MAKEFLAGS" \
+ | sed "s/$$bs$$bs[$$bs $$bs ]*//g"`;; \
+ esac; \
+ fi; \
+ skip_next=no; \
+ strip_trailopt () \
+ { \
+ flg=`printf '%s\n' "$$flg" | sed "s/$$1.*$$//"`; \
+ }; \
+ for flg in $$sane_makeflags; do \
+ test $$skip_next = yes && { skip_next=no; continue; }; \
+ case $$flg in \
+ *=*|--*) continue;; \
+ -*I) strip_trailopt 'I'; skip_next=yes;; \
+ -*I?*) strip_trailopt 'I';; \
+ -*O) strip_trailopt 'O'; skip_next=yes;; \
+ -*O?*) strip_trailopt 'O';; \
+ -*l) strip_trailopt 'l'; skip_next=yes;; \
+ -*l?*) strip_trailopt 'l';; \
+ -[dEDm]) skip_next=yes;; \
+ -[JT]) skip_next=yes;; \
+ esac; \
+ case $$flg in \
+ *$$target_option*) has_opt=yes; break;; \
+ esac; \
+ done; \
+ test $$has_opt = yes
+am__make_dryrun = (target_option=n; $(am__make_running_with_option))
+am__make_keepgoing = (target_option=k; $(am__make_running_with_option))
+pkgdatadir = $(datadir)/@PACKAGE@
+pkgincludedir = $(includedir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkglibexecdir = $(libexecdir)/@PACKAGE@
+am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
+install_sh_DATA = $(install_sh) -c -m 644
+install_sh_PROGRAM = $(install_sh) -c
+install_sh_SCRIPT = $(install_sh) -c
+INSTALL_HEADER = $(INSTALL_DATA)
+transform = $(program_transform_name)
+NORMAL_INSTALL = :
+PRE_INSTALL = :
+POST_INSTALL = :
+NORMAL_UNINSTALL = :
+PRE_UNINSTALL = :
+POST_UNINSTALL = :
+build_triplet = @build@
+host_triplet = @host@
+subdir = doc/man
+ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
+am__aclocal_m4_deps = $(top_srcdir)/m4/ac_checktype2.m4 \
+ $(top_srcdir)/m4/ac_typeof.m4 $(top_srcdir)/m4/arc4random.m4 \
+ $(top_srcdir)/m4/blockdev.m4 $(top_srcdir)/m4/c99_vsnprintf.m4 \
+ $(top_srcdir)/m4/clock_gettime.m4 $(top_srcdir)/m4/crypt.m4 \
+ $(top_srcdir)/m4/crypt_xpg6.m4 $(top_srcdir)/m4/dbqlk.m4 \
+ $(top_srcdir)/m4/dirent_dtype.m4 $(top_srcdir)/m4/dovecot.m4 \
+ $(top_srcdir)/m4/fd_passing.m4 $(top_srcdir)/m4/fdatasync.m4 \
+ $(top_srcdir)/m4/flexible_array_member.m4 \
+ $(top_srcdir)/m4/glibc.m4 $(top_srcdir)/m4/gmtime_max.m4 \
+ $(top_srcdir)/m4/gmtime_tm_gmtoff.m4 \
+ $(top_srcdir)/m4/ioloop.m4 $(top_srcdir)/m4/iovec.m4 \
+ $(top_srcdir)/m4/ipv6.m4 $(top_srcdir)/m4/libcap.m4 \
+ $(top_srcdir)/m4/libtool.m4 $(top_srcdir)/m4/libwrap.m4 \
+ $(top_srcdir)/m4/linux_mremap.m4 $(top_srcdir)/m4/ltoptions.m4 \
+ $(top_srcdir)/m4/ltsugar.m4 $(top_srcdir)/m4/ltversion.m4 \
+ $(top_srcdir)/m4/lt~obsolete.m4 $(top_srcdir)/m4/mmap_write.m4 \
+ $(top_srcdir)/m4/mntctl.m4 $(top_srcdir)/m4/modules.m4 \
+ $(top_srcdir)/m4/notify.m4 $(top_srcdir)/m4/nsl.m4 \
+ $(top_srcdir)/m4/off_t_max.m4 $(top_srcdir)/m4/pkg.m4 \
+ $(top_srcdir)/m4/pr_set_dumpable.m4 \
+ $(top_srcdir)/m4/q_quotactl.m4 $(top_srcdir)/m4/quota.m4 \
+ $(top_srcdir)/m4/random.m4 $(top_srcdir)/m4/rlimit.m4 \
+ $(top_srcdir)/m4/sendfile.m4 $(top_srcdir)/m4/size_t_signed.m4 \
+ $(top_srcdir)/m4/sockpeercred.m4 $(top_srcdir)/m4/sql.m4 \
+ $(top_srcdir)/m4/ssl.m4 $(top_srcdir)/m4/st_tim.m4 \
+ $(top_srcdir)/m4/static_array.m4 $(top_srcdir)/m4/test_with.m4 \
+ $(top_srcdir)/m4/time_t.m4 $(top_srcdir)/m4/typeof.m4 \
+ $(top_srcdir)/m4/typeof_dev_t.m4 \
+ $(top_srcdir)/m4/uoff_t_max.m4 $(top_srcdir)/m4/vararg.m4 \
+ $(top_srcdir)/m4/want_apparmor.m4 \
+ $(top_srcdir)/m4/want_bsdauth.m4 \
+ $(top_srcdir)/m4/want_bzlib.m4 \
+ $(top_srcdir)/m4/want_cassandra.m4 \
+ $(top_srcdir)/m4/want_cdb.m4 \
+ $(top_srcdir)/m4/want_checkpassword.m4 \
+ $(top_srcdir)/m4/want_clucene.m4 $(top_srcdir)/m4/want_db.m4 \
+ $(top_srcdir)/m4/want_gssapi.m4 $(top_srcdir)/m4/want_icu.m4 \
+ $(top_srcdir)/m4/want_ldap.m4 $(top_srcdir)/m4/want_lua.m4 \
+ $(top_srcdir)/m4/want_lz4.m4 $(top_srcdir)/m4/want_lzma.m4 \
+ $(top_srcdir)/m4/want_mysql.m4 $(top_srcdir)/m4/want_pam.m4 \
+ $(top_srcdir)/m4/want_passwd.m4 $(top_srcdir)/m4/want_pgsql.m4 \
+ $(top_srcdir)/m4/want_prefetch.m4 \
+ $(top_srcdir)/m4/want_shadow.m4 \
+ $(top_srcdir)/m4/want_sodium.m4 $(top_srcdir)/m4/want_solr.m4 \
+ $(top_srcdir)/m4/want_sqlite.m4 \
+ $(top_srcdir)/m4/want_stemmer.m4 \
+ $(top_srcdir)/m4/want_systemd.m4 \
+ $(top_srcdir)/m4/want_textcat.m4 \
+ $(top_srcdir)/m4/want_unwind.m4 $(top_srcdir)/m4/want_zlib.m4 \
+ $(top_srcdir)/m4/want_zstd.m4 $(top_srcdir)/configure.ac
+am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
+ $(ACLOCAL_M4)
+DIST_COMMON = $(srcdir)/Makefile.am $(am__DIST_COMMON)
+mkinstalldirs = $(install_sh) -d
+CONFIG_HEADER = $(top_builddir)/config.h
+CONFIG_CLEAN_FILES =
+CONFIG_CLEAN_VPATH_FILES =
+AM_V_P = $(am__v_P_@AM_V@)
+am__v_P_ = $(am__v_P_@AM_DEFAULT_V@)
+am__v_P_0 = false
+am__v_P_1 = :
+AM_V_GEN = $(am__v_GEN_@AM_V@)
+am__v_GEN_ = $(am__v_GEN_@AM_DEFAULT_V@)
+am__v_GEN_0 = @echo " GEN " $@;
+am__v_GEN_1 =
+AM_V_at = $(am__v_at_@AM_V@)
+am__v_at_ = $(am__v_at_@AM_DEFAULT_V@)
+am__v_at_0 = @
+am__v_at_1 =
+SOURCES =
+DIST_SOURCES =
+am__can_run_installinfo = \
+ case $$AM_UPDATE_INFO_DIR in \
+ n|no|NO) false;; \
+ *) (install-info --version) >/dev/null 2>&1;; \
+ esac
+am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
+am__vpath_adj = case $$p in \
+ $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
+ *) f=$$p;; \
+ esac;
+am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`;
+am__install_max = 40
+am__nobase_strip_setup = \
+ srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'`
+am__nobase_strip = \
+ for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||"
+am__nobase_list = $(am__nobase_strip_setup); \
+ for p in $$list; do echo "$$p $$p"; done | \
+ sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \
+ $(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \
+ if (++n[$$2] == $(am__install_max)) \
+ { print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \
+ END { for (dir in files) print dir, files[dir] }'
+am__base_list = \
+ sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \
+ sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g'
+am__uninstall_files_from_dir = { \
+ test -z "$$files" \
+ || { test ! -d "$$dir" && test ! -f "$$dir" && test ! -r "$$dir"; } \
+ || { echo " ( cd '$$dir' && rm -f" $$files ")"; \
+ $(am__cd) "$$dir" && rm -f $$files; }; \
+ }
+man1dir = $(mandir)/man1
+am__installdirs = "$(DESTDIR)$(man1dir)" "$(DESTDIR)$(man7dir)"
+man7dir = $(mandir)/man7
+NROFF = nroff
+MANS = $(dist_man1_MANS) $(dist_man7_MANS) $(nodist_man1_MANS)
+am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP)
+am__DIST_COMMON = $(dist_man1_MANS) $(dist_man7_MANS) \
+ $(srcdir)/Makefile.in
+DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
+ACLOCAL = @ACLOCAL@
+ACLOCAL_AMFLAGS = @ACLOCAL_AMFLAGS@
+AMTAR = @AMTAR@
+AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@
+APPARMOR_LIBS = @APPARMOR_LIBS@
+AR = @AR@
+AUTH_CFLAGS = @AUTH_CFLAGS@
+AUTH_LIBS = @AUTH_LIBS@
+AUTOCONF = @AUTOCONF@
+AUTOHEADER = @AUTOHEADER@
+AUTOMAKE = @AUTOMAKE@
+AWK = @AWK@
+BINARY_CFLAGS = @BINARY_CFLAGS@
+BINARY_LDFLAGS = @BINARY_LDFLAGS@
+BISON = @BISON@
+CASSANDRA_CFLAGS = @CASSANDRA_CFLAGS@
+CASSANDRA_LIBS = @CASSANDRA_LIBS@
+CC = @CC@
+CCDEPMODE = @CCDEPMODE@
+CDB_LIBS = @CDB_LIBS@
+CFLAGS = @CFLAGS@
+CLUCENE_CFLAGS = @CLUCENE_CFLAGS@
+CLUCENE_LIBS = @CLUCENE_LIBS@
+COMPRESS_LIBS = @COMPRESS_LIBS@
+CPP = @CPP@
+CPPFLAGS = @CPPFLAGS@
+CRYPT_LIBS = @CRYPT_LIBS@
+CXX = @CXX@
+CXXCPP = @CXXCPP@
+CXXDEPMODE = @CXXDEPMODE@
+CXXFLAGS = @CXXFLAGS@
+CYGPATH_W = @CYGPATH_W@
+DEFS = @DEFS@
+DEPDIR = @DEPDIR@
+DICT_LIBS = @DICT_LIBS@
+DLLIB = @DLLIB@
+DLLTOOL = @DLLTOOL@
+DSYMUTIL = @DSYMUTIL@
+DUMPBIN = @DUMPBIN@
+ECHO_C = @ECHO_C@
+ECHO_N = @ECHO_N@
+ECHO_T = @ECHO_T@
+EGREP = @EGREP@
+EXEEXT = @EXEEXT@
+FGREP = @FGREP@
+FLEX = @FLEX@
+FUZZER_CPPFLAGS = @FUZZER_CPPFLAGS@
+FUZZER_LDFLAGS = @FUZZER_LDFLAGS@
+GREP = @GREP@
+INSTALL = @INSTALL@
+INSTALL_DATA = @INSTALL_DATA@
+INSTALL_PROGRAM = @INSTALL_PROGRAM@
+INSTALL_SCRIPT = @INSTALL_SCRIPT@
+INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
+KRB5CONFIG = @KRB5CONFIG@
+KRB5_CFLAGS = @KRB5_CFLAGS@
+KRB5_LIBS = @KRB5_LIBS@
+LD = @LD@
+LDAP_LIBS = @LDAP_LIBS@
+LDFLAGS = @LDFLAGS@
+LD_NO_WHOLE_ARCHIVE = @LD_NO_WHOLE_ARCHIVE@
+LD_WHOLE_ARCHIVE = @LD_WHOLE_ARCHIVE@
+LIBCAP = @LIBCAP@
+LIBDOVECOT = @LIBDOVECOT@
+LIBDOVECOT_COMPRESS = @LIBDOVECOT_COMPRESS@
+LIBDOVECOT_DEPS = @LIBDOVECOT_DEPS@
+LIBDOVECOT_DSYNC = @LIBDOVECOT_DSYNC@
+LIBDOVECOT_LA_LIBS = @LIBDOVECOT_LA_LIBS@
+LIBDOVECOT_LDA = @LIBDOVECOT_LDA@
+LIBDOVECOT_LDAP = @LIBDOVECOT_LDAP@
+LIBDOVECOT_LIBFTS = @LIBDOVECOT_LIBFTS@
+LIBDOVECOT_LIBFTS_DEPS = @LIBDOVECOT_LIBFTS_DEPS@
+LIBDOVECOT_LOGIN = @LIBDOVECOT_LOGIN@
+LIBDOVECOT_LUA = @LIBDOVECOT_LUA@
+LIBDOVECOT_LUA_DEPS = @LIBDOVECOT_LUA_DEPS@
+LIBDOVECOT_SQL = @LIBDOVECOT_SQL@
+LIBDOVECOT_STORAGE = @LIBDOVECOT_STORAGE@
+LIBDOVECOT_STORAGE_DEPS = @LIBDOVECOT_STORAGE_DEPS@
+LIBEXTTEXTCAT_CFLAGS = @LIBEXTTEXTCAT_CFLAGS@
+LIBEXTTEXTCAT_LIBS = @LIBEXTTEXTCAT_LIBS@
+LIBICONV = @LIBICONV@
+LIBICU_CFLAGS = @LIBICU_CFLAGS@
+LIBICU_LIBS = @LIBICU_LIBS@
+LIBOBJS = @LIBOBJS@
+LIBS = @LIBS@
+LIBSODIUM_CFLAGS = @LIBSODIUM_CFLAGS@
+LIBSODIUM_LIBS = @LIBSODIUM_LIBS@
+LIBTIRPC_CFLAGS = @LIBTIRPC_CFLAGS@
+LIBTIRPC_LIBS = @LIBTIRPC_LIBS@
+LIBTOOL = @LIBTOOL@
+LIBUNWIND_CFLAGS = @LIBUNWIND_CFLAGS@
+LIBUNWIND_LIBS = @LIBUNWIND_LIBS@
+LIBWRAP_LIBS = @LIBWRAP_LIBS@
+LINKED_STORAGE_LDADD = @LINKED_STORAGE_LDADD@
+LIPO = @LIPO@
+LN_S = @LN_S@
+LTLIBICONV = @LTLIBICONV@
+LTLIBOBJS = @LTLIBOBJS@
+LT_SYS_LIBRARY_PATH = @LT_SYS_LIBRARY_PATH@
+LUA_CFLAGS = @LUA_CFLAGS@
+LUA_LIBS = @LUA_LIBS@
+MAINT = @MAINT@
+MAKEINFO = @MAKEINFO@
+MANIFEST_TOOL = @MANIFEST_TOOL@
+MKDIR_P = @MKDIR_P@
+MODULE_LIBS = @MODULE_LIBS@
+MODULE_SUFFIX = @MODULE_SUFFIX@
+MYSQL_CFLAGS = @MYSQL_CFLAGS@
+MYSQL_CONFIG = @MYSQL_CONFIG@
+MYSQL_LIBS = @MYSQL_LIBS@
+NM = @NM@
+NMEDIT = @NMEDIT@
+NOPLUGIN_LDFLAGS = @NOPLUGIN_LDFLAGS@
+OBJDUMP = @OBJDUMP@
+OBJEXT = @OBJEXT@
+OTOOL = @OTOOL@
+OTOOL64 = @OTOOL64@
+PACKAGE = @PACKAGE@
+PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
+PACKAGE_NAME = @PACKAGE_NAME@
+PACKAGE_STRING = @PACKAGE_STRING@
+PACKAGE_TARNAME = @PACKAGE_TARNAME@
+PACKAGE_URL = @PACKAGE_URL@
+PACKAGE_VERSION = @PACKAGE_VERSION@
+PANDOC = @PANDOC@
+PATH_SEPARATOR = @PATH_SEPARATOR@
+PGSQL_CFLAGS = @PGSQL_CFLAGS@
+PGSQL_LIBS = @PGSQL_LIBS@
+PG_CONFIG = @PG_CONFIG@
+PIE_CFLAGS = @PIE_CFLAGS@
+PIE_LDFLAGS = @PIE_LDFLAGS@
+PKG_CONFIG = @PKG_CONFIG@
+PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@
+PKG_CONFIG_PATH = @PKG_CONFIG_PATH@
+QUOTA_LIBS = @QUOTA_LIBS@
+RANLIB = @RANLIB@
+RELRO_LDFLAGS = @RELRO_LDFLAGS@
+RPCGEN = @RPCGEN@
+RUN_TEST = @RUN_TEST@
+SED = @SED@
+SETTING_FILES = @SETTING_FILES@
+SET_MAKE = @SET_MAKE@
+SHELL = @SHELL@
+SQLITE_CFLAGS = @SQLITE_CFLAGS@
+SQLITE_LIBS = @SQLITE_LIBS@
+SQL_CFLAGS = @SQL_CFLAGS@
+SQL_LIBS = @SQL_LIBS@
+SSL_CFLAGS = @SSL_CFLAGS@
+SSL_LIBS = @SSL_LIBS@
+STRIP = @STRIP@
+SYSTEMD_CFLAGS = @SYSTEMD_CFLAGS@
+SYSTEMD_LIBS = @SYSTEMD_LIBS@
+VALGRIND = @VALGRIND@
+VERSION = @VERSION@
+ZSTD_CFLAGS = @ZSTD_CFLAGS@
+ZSTD_LIBS = @ZSTD_LIBS@
+abs_builddir = @abs_builddir@
+abs_srcdir = @abs_srcdir@
+abs_top_builddir = @abs_top_builddir@
+abs_top_srcdir = @abs_top_srcdir@
+ac_ct_AR = @ac_ct_AR@
+ac_ct_CC = @ac_ct_CC@
+ac_ct_CXX = @ac_ct_CXX@
+ac_ct_DUMPBIN = @ac_ct_DUMPBIN@
+am__include = @am__include@
+am__leading_dot = @am__leading_dot@
+am__quote = @am__quote@
+am__tar = @am__tar@
+am__untar = @am__untar@
+bindir = @bindir@
+build = @build@
+build_alias = @build_alias@
+build_cpu = @build_cpu@
+build_os = @build_os@
+build_vendor = @build_vendor@
+builddir = @builddir@
+datadir = @datadir@
+datarootdir = @datarootdir@
+dict_drivers = @dict_drivers@
+docdir = @docdir@
+dvidir = @dvidir@
+exec_prefix = @exec_prefix@
+host = @host@
+host_alias = @host_alias@
+host_cpu = @host_cpu@
+host_os = @host_os@
+host_vendor = @host_vendor@
+htmldir = @htmldir@
+includedir = @includedir@
+infodir = @infodir@
+install_sh = @install_sh@
+libdir = @libdir@
+libexecdir = @libexecdir@
+localedir = @localedir@
+localstatedir = @localstatedir@
+mandir = @mandir@
+mkdir_p = @mkdir_p@
+moduledir = @moduledir@
+oldincludedir = @oldincludedir@
+pdfdir = @pdfdir@
+prefix = @prefix@
+program_transform_name = @program_transform_name@
+psdir = @psdir@
+rundir = @rundir@
+runstatedir = @runstatedir@
+sbindir = @sbindir@
+sharedstatedir = @sharedstatedir@
+sql_drivers = @sql_drivers@
+srcdir = @srcdir@
+ssldir = @ssldir@
+statedir = @statedir@
+sysconfdir = @sysconfdir@
+systemdservicetype = @systemdservicetype@
+systemdsystemunitdir = @systemdsystemunitdir@
+target_alias = @target_alias@
+top_build_prefix = @top_build_prefix@
+top_builddir = @top_builddir@
+top_srcdir = @top_srcdir@
+pkgsysconfdir = $(sysconfdir)/dovecot
+SUFFIXES = .1.in .1
+dist_man1_MANS = \
+ deliver.1 \
+ doveadm-backup.1 \
+ doveadm-config.1 \
+ doveadm-copy.1 \
+ doveadm-reload.1 \
+ doveadm-stop.1 \
+ dsync.1
+
+dist_man7_MANS = \
+ doveadm-search-query.7
+
+nodist_man1_MANS = \
+ doveadm.1 \
+ doveadm-acl.1 \
+ doveadm-altmove.1 \
+ doveadm-auth.1 \
+ doveadm-batch.1 \
+ doveadm-deduplicate.1 \
+ doveadm-director.1 \
+ doveadm-dump.1 \
+ doveadm-exec.1 \
+ doveadm-expunge.1 \
+ doveadm-fetch.1 \
+ doveadm-flags.1 \
+ doveadm-fs.1 \
+ doveadm-fts.1 \
+ doveadm-import.1 \
+ doveadm-instance.1 \
+ doveadm-index.1 \
+ doveadm-force-resync.1 \
+ doveadm-help.1 \
+ doveadm-kick.1 \
+ doveadm-log.1 \
+ doveadm-mailbox.1 \
+ doveadm-mailbox-cryptokey.1 \
+ doveadm-move.1 \
+ doveadm-penalty.1 \
+ doveadm-proxy.1 \
+ doveadm-purge.1 \
+ doveadm-pw.1 \
+ doveadm-quota.1 \
+ doveadm-rebuild.1 \
+ doveadm-replicator.1 \
+ doveadm-save.1 \
+ doveadm-search.1 \
+ doveadm-stats.1 \
+ doveadm-sync.1 \
+ doveadm-user.1 \
+ doveadm-who.1 \
+ doveconf.1 \
+ dovecot.1 \
+ dovecot-lda.1 \
+ dovecot-sysreport.1
+
+man_includefiles = \
+ $(srcdir)/global-options-formatter.inc \
+ $(srcdir)/global-options.inc \
+ $(srcdir)/option-A.inc \
+ $(srcdir)/option-F-file.inc \
+ $(srcdir)/option-S-socket.inc \
+ $(srcdir)/option-u-user.inc \
+ $(srcdir)/reporting-bugs.inc
+
+EXTRA_DIST = \
+ doveadm.1.in \
+ doveadm-acl.1.in \
+ doveadm-altmove.1.in \
+ doveadm-auth.1.in \
+ doveadm-batch.1.in \
+ doveadm-deduplicate.1.in \
+ doveadm-director.1.in \
+ doveadm-dump.1.in \
+ doveadm-exec.1.in \
+ doveadm-expunge.1.in \
+ doveadm-fetch.1.in \
+ doveadm-flags.1.in \
+ doveadm-fs.1.in \
+ doveadm-fts.1.in \
+ doveadm-import.1.in \
+ doveadm-instance.1.in \
+ doveadm-index.1.in \
+ doveadm-force-resync.1.in \
+ doveadm-help.1.in \
+ doveadm-kick.1.in \
+ doveadm-log.1.in \
+ doveadm-mailbox.1.in \
+ doveadm-mailbox-cryptokey.1.in \
+ doveadm-move.1.in \
+ doveadm-penalty.1.in \
+ doveadm-proxy.1.in \
+ doveadm-purge.1.in \
+ doveadm-pw.1.in \
+ doveadm-quota.1.in \
+ doveadm-rebuild.1.in \
+ doveadm-replicator.1.in \
+ doveadm-save.1.in \
+ doveadm-search.1.in \
+ doveadm-stats.1.in \
+ doveadm-sync.1.in \
+ doveadm-user.1.in \
+ doveadm-who.1.in \
+ doveconf.1.in \
+ dovecot.1.in \
+ dovecot-lda.1.in \
+ dovecot-sysreport.1.in \
+ sed.sh \
+ $(man_includefiles)
+
+CLEANFILES = $(nodist_man1_MANS)
+all: all-am
+
+.SUFFIXES:
+.SUFFIXES: .1.in .1
+$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(am__configure_deps)
+ @for dep in $?; do \
+ case '$(am__configure_deps)' in \
+ *$$dep*) \
+ ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
+ && { if test -f $@; then exit 0; else break; fi; }; \
+ exit 1;; \
+ esac; \
+ done; \
+ echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign doc/man/Makefile'; \
+ $(am__cd) $(top_srcdir) && \
+ $(AUTOMAKE) --foreign doc/man/Makefile
+Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
+ @case '$?' in \
+ *config.status*) \
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
+ *) \
+ echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles)'; \
+ cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles);; \
+ esac;
+
+$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+
+$(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(am__aclocal_m4_deps):
+
+mostlyclean-libtool:
+ -rm -f *.lo
+
+clean-libtool:
+ -rm -rf .libs _libs
+install-man1: $(dist_man1_MANS) $(nodist_man1_MANS)
+ @$(NORMAL_INSTALL)
+ @list1='$(dist_man1_MANS) $(nodist_man1_MANS)'; \
+ list2=''; \
+ test -n "$(man1dir)" \
+ && test -n "`echo $$list1$$list2`" \
+ || exit 0; \
+ echo " $(MKDIR_P) '$(DESTDIR)$(man1dir)'"; \
+ $(MKDIR_P) "$(DESTDIR)$(man1dir)" || exit 1; \
+ { for i in $$list1; do echo "$$i"; done; \
+ if test -n "$$list2"; then \
+ for i in $$list2; do echo "$$i"; done \
+ | sed -n '/\.1[a-z]*$$/p'; \
+ fi; \
+ } | while read p; do \
+ if test -f $$p; then d=; else d="$(srcdir)/"; fi; \
+ echo "$$d$$p"; echo "$$p"; \
+ done | \
+ sed -e 'n;s,.*/,,;p;h;s,.*\.,,;s,^[^1][0-9a-z]*$$,1,;x' \
+ -e 's,\.[0-9a-z]*$$,,;$(transform);G;s,\n,.,' | \
+ sed 'N;N;s,\n, ,g' | { \
+ list=; while read file base inst; do \
+ if test "$$base" = "$$inst"; then list="$$list $$file"; else \
+ echo " $(INSTALL_DATA) '$$file' '$(DESTDIR)$(man1dir)/$$inst'"; \
+ $(INSTALL_DATA) "$$file" "$(DESTDIR)$(man1dir)/$$inst" || exit $$?; \
+ fi; \
+ done; \
+ for i in $$list; do echo "$$i"; done | $(am__base_list) | \
+ while read files; do \
+ test -z "$$files" || { \
+ echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(man1dir)'"; \
+ $(INSTALL_DATA) $$files "$(DESTDIR)$(man1dir)" || exit $$?; }; \
+ done; }
+
+uninstall-man1:
+ @$(NORMAL_UNINSTALL)
+ @list='$(dist_man1_MANS) $(nodist_man1_MANS)'; test -n "$(man1dir)" || exit 0; \
+ files=`{ for i in $$list; do echo "$$i"; done; \
+ } | sed -e 's,.*/,,;h;s,.*\.,,;s,^[^1][0-9a-z]*$$,1,;x' \
+ -e 's,\.[0-9a-z]*$$,,;$(transform);G;s,\n,.,'`; \
+ dir='$(DESTDIR)$(man1dir)'; $(am__uninstall_files_from_dir)
+install-man7: $(dist_man7_MANS)
+ @$(NORMAL_INSTALL)
+ @list1='$(dist_man7_MANS)'; \
+ list2=''; \
+ test -n "$(man7dir)" \
+ && test -n "`echo $$list1$$list2`" \
+ || exit 0; \
+ echo " $(MKDIR_P) '$(DESTDIR)$(man7dir)'"; \
+ $(MKDIR_P) "$(DESTDIR)$(man7dir)" || exit 1; \
+ { for i in $$list1; do echo "$$i"; done; \
+ if test -n "$$list2"; then \
+ for i in $$list2; do echo "$$i"; done \
+ | sed -n '/\.7[a-z]*$$/p'; \
+ fi; \
+ } | while read p; do \
+ if test -f $$p; then d=; else d="$(srcdir)/"; fi; \
+ echo "$$d$$p"; echo "$$p"; \
+ done | \
+ sed -e 'n;s,.*/,,;p;h;s,.*\.,,;s,^[^7][0-9a-z]*$$,7,;x' \
+ -e 's,\.[0-9a-z]*$$,,;$(transform);G;s,\n,.,' | \
+ sed 'N;N;s,\n, ,g' | { \
+ list=; while read file base inst; do \
+ if test "$$base" = "$$inst"; then list="$$list $$file"; else \
+ echo " $(INSTALL_DATA) '$$file' '$(DESTDIR)$(man7dir)/$$inst'"; \
+ $(INSTALL_DATA) "$$file" "$(DESTDIR)$(man7dir)/$$inst" || exit $$?; \
+ fi; \
+ done; \
+ for i in $$list; do echo "$$i"; done | $(am__base_list) | \
+ while read files; do \
+ test -z "$$files" || { \
+ echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(man7dir)'"; \
+ $(INSTALL_DATA) $$files "$(DESTDIR)$(man7dir)" || exit $$?; }; \
+ done; }
+
+uninstall-man7:
+ @$(NORMAL_UNINSTALL)
+ @list='$(dist_man7_MANS)'; test -n "$(man7dir)" || exit 0; \
+ files=`{ for i in $$list; do echo "$$i"; done; \
+ } | sed -e 's,.*/,,;h;s,.*\.,,;s,^[^7][0-9a-z]*$$,7,;x' \
+ -e 's,\.[0-9a-z]*$$,,;$(transform);G;s,\n,.,'`; \
+ dir='$(DESTDIR)$(man7dir)'; $(am__uninstall_files_from_dir)
+tags TAGS:
+
+ctags CTAGS:
+
+cscope cscopelist:
+
+
+distdir: $(BUILT_SOURCES)
+ $(MAKE) $(AM_MAKEFLAGS) distdir-am
+
+distdir-am: $(DISTFILES)
+ @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
+ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
+ list='$(DISTFILES)'; \
+ dist_files=`for file in $$list; do echo $$file; done | \
+ sed -e "s|^$$srcdirstrip/||;t" \
+ -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \
+ case $$dist_files in \
+ */*) $(MKDIR_P) `echo "$$dist_files" | \
+ sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \
+ sort -u` ;; \
+ esac; \
+ for file in $$dist_files; do \
+ if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
+ if test -d $$d/$$file; then \
+ dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
+ if test -d "$(distdir)/$$file"; then \
+ find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
+ fi; \
+ if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
+ cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
+ find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
+ fi; \
+ cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
+ else \
+ test -f "$(distdir)/$$file" \
+ || cp -p $$d/$$file "$(distdir)/$$file" \
+ || exit 1; \
+ fi; \
+ done
+check-am: all-am
+check: check-am
+all-am: Makefile $(MANS)
+installdirs:
+ for dir in "$(DESTDIR)$(man1dir)" "$(DESTDIR)$(man7dir)"; do \
+ test -z "$$dir" || $(MKDIR_P) "$$dir"; \
+ done
+install: install-am
+install-exec: install-exec-am
+install-data: install-data-am
+uninstall: uninstall-am
+
+install-am: all-am
+ @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
+
+installcheck: installcheck-am
+install-strip:
+ if test -z '$(STRIP)'; then \
+ $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+ install; \
+ else \
+ $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+ "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \
+ fi
+mostlyclean-generic:
+
+clean-generic:
+ -test -z "$(CLEANFILES)" || rm -f $(CLEANFILES)
+
+distclean-generic:
+ -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
+ -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
+
+maintainer-clean-generic:
+ @echo "This command is intended for maintainers to use"
+ @echo "it deletes files that may require special tools to rebuild."
+clean: clean-am
+
+clean-am: clean-generic clean-libtool mostlyclean-am
+
+distclean: distclean-am
+ -rm -f Makefile
+distclean-am: clean-am distclean-generic
+
+dvi: dvi-am
+
+dvi-am:
+
+html: html-am
+
+html-am:
+
+info: info-am
+
+info-am:
+
+install-data-am: install-man
+
+install-dvi: install-dvi-am
+
+install-dvi-am:
+
+install-exec-am:
+
+install-html: install-html-am
+
+install-html-am:
+
+install-info: install-info-am
+
+install-info-am:
+
+install-man: install-man1 install-man7
+
+install-pdf: install-pdf-am
+
+install-pdf-am:
+
+install-ps: install-ps-am
+
+install-ps-am:
+
+installcheck-am:
+
+maintainer-clean: maintainer-clean-am
+ -rm -f Makefile
+maintainer-clean-am: distclean-am maintainer-clean-generic
+
+mostlyclean: mostlyclean-am
+
+mostlyclean-am: mostlyclean-generic mostlyclean-libtool
+
+pdf: pdf-am
+
+pdf-am:
+
+ps: ps-am
+
+ps-am:
+
+uninstall-am: uninstall-man
+
+uninstall-man: uninstall-man1 uninstall-man7
+
+.MAKE: install-am install-strip
+
+.PHONY: all all-am check check-am clean clean-generic clean-libtool \
+ cscopelist-am ctags-am distclean distclean-generic \
+ distclean-libtool distdir dvi dvi-am html html-am info info-am \
+ install install-am install-data install-data-am install-dvi \
+ install-dvi-am install-exec install-exec-am install-html \
+ install-html-am install-info install-info-am install-man \
+ install-man1 install-man7 install-pdf install-pdf-am \
+ install-ps install-ps-am install-strip installcheck \
+ installcheck-am installdirs maintainer-clean \
+ maintainer-clean-generic mostlyclean mostlyclean-generic \
+ mostlyclean-libtool pdf pdf-am ps ps-am tags-am uninstall \
+ uninstall-am uninstall-man uninstall-man1 uninstall-man7
+
+.PRECIOUS: Makefile
+
+
+.1.in.1: $(man_includefiles) Makefile
+ $(SHELL) $(srcdir)/sed.sh $(srcdir) $(rundir) $(pkgsysconfdir) \
+ $(pkglibexecdir) < $< > $@
+
+# Tell versions [3.59,3.63) of GNU make to not export all variables.
+# Otherwise a system limit (for SysV at least) may be exceeded.
+.NOEXPORT:
diff --git a/doc/man/deliver.1 b/doc/man/deliver.1
new file mode 100644
index 0000000..4ac3824
--- /dev/null
+++ b/doc/man/deliver.1
@@ -0,0 +1 @@
+.so man1/dovecot-lda.1 \ No newline at end of file
diff --git a/doc/man/doveadm-acl.1.in b/doc/man/doveadm-acl.1.in
new file mode 100644
index 0000000..b79bc6c
--- /dev/null
+++ b/doc/man/doveadm-acl.1.in
@@ -0,0 +1,270 @@
+.\" Copyright (c) 2014-2018 Dovecot authors, see the included COPYING file
+.TH DOVEADM\-ACL 1 "2015-05-09" "Dovecot v2.3" "Dovecot"
+.SH NAME
+doveadm\-acl \- Manage Access Control List (ACL)
+.\"------------------------------------------------------------------------
+.SH SYNOPSIS
+.BR doveadm " [" \-Dv ]
+[\fB\-f\fP \fIformatter\fP]
+.BI acl \ command
+.RI [ OPTIONS ]\ [ ARGUMENTS ]
+.\"------------------------------------------------------------------------
+.SH DESCRIPTION
+The
+.B doveadm acl
+.I COMMANDS
+can be used to execute various Access Control List related actions.
+.\"------------------------------------------------------------------------
+@INCLUDE:global-options-formatter@
+.\" --- command specific options --- "/.
+.PP
+This command uses by default the output formatter
+.BR table .
+.PP
+Command specific
+.IR options :
+.\"-------------------------------------
+@INCLUDE:option-A@
+.\"-------------------------------------
+@INCLUDE:option-F-file@
+.\"-------------------------------------
+@INCLUDE:option-S-socket@
+.\"-------------------------------------
+@INCLUDE:option-u-user@
+.\"------------------------------------------------------------------------
+.SH ARGUMENTS
+.TP
+.I id
+The id (identifier) is one of:
+.RS
+.RS
+.TP 4
+*
+.BR group\-override =\c
+.I group_name
+.\"-----------------
+.TP
+*
+.BR user =\c
+.I user_name
+.\"-----------------
+.TP
+*
+.B owner
+.\"-----------------
+.TP
+*
+.BR group =\c
+.I group_name
+.\"-----------------
+.TP
+*
+.B authenticated
+.\"-----------------
+.TP
+*
+.BR anyone " (or " anonymous ", which is an alias for anyone)"
+.\"-----------------
+.RE
+.PP
+The ACLs are processed in the precedence given above, so for example if you
+have given read\-access to a group, you can still remove that from specific
+users inside the group.
+.br
+Group\-override identifier allows you to override users\(aq ACLs.
+Probably the most useful reason to do this is to temporarily disable
+access for some users.
+For example:
+.PP
+.nf
+user=timo rw
+group\-override=tempdisabled
+.fi
+.PP
+Now if timo is a member of the tempdisabled group, he has no access to the
+mailbox.
+This wouldn\(aqt be possible with a normal group identifier, because the
+.B user=timo
+would override it.
+.RE
+.\"-------------------------------------
+.TP
+.I mailbox
+The name of the mailbox, for which the ACL manipulation should be done.
+It\(aqs also possible to use the wildcard characters
+.RB \(dq * "\(dq and/or \(dq" ? \(dq
+in the mailbox name.
+.\"-------------------------------------
+.TP
+.I right
+Dovecot ACL right name. This isn\(aqt the same as the IMAP ACL letters,
+which aren\(aqt currently supported.
+Here is a mapping of the IMAP ACL letters to Dovecot ACL names:
+.RS
+.RS
+.TP 4
+.B l \(-> lookup
+.I Mailbox
+is visible in mailbox list.
+.I Mailbox
+can be subscribed to.
+.\"-----------------
+.TP
+.B r \(-> read
+.I Mailbox
+can be opened for reading.
+.\"-----------------
+.TP
+.B w \(-> write
+Message flags and keywords can be changed, except
+.BR \(rsSeen " and " \(rsDeleted .
+.\"-----------------
+.TP
+.B s \(-> write\-seen
+.B \(rsSeen
+flag can be changed.
+.\"-----------------
+.TP
+.B t \(-> write\-deleted
+.B \(rsDeleted
+flag can be changed.
+.\"-----------------
+.TP
+.B i \(-> insert
+Messages can be written or copied to the
+.IR mailbox .
+.\"-----------------
+.TP
+.B p \(-> post
+Messages can be posted to the
+.I mailbox
+by
+.BR dovecot\-lda ,
+e.g. from Sieve scripts.
+.\"-----------------
+.TP
+.B e \(-> expunge
+Messages can be expunged.
+.\"-----------------
+.TP
+.B k \(-> create
+Mailboxes can be created/renamed directly under this
+.I mailbox
+(but not necessarily under its children, see
+.I ACL Inheritance
+in the wiki).
+.br
+Note: Renaming also requires the delete right.
+.\"-----------------
+.TP
+.B x \(-> delete
+.I Mailbox
+can be deleted.
+.\"-----------------
+.TP
+.B a \(-> admin
+Administration rights to the
+.I mailbox
+(currently: ability to change ACLs for
+.IR mailbox ).
+.RE
+.RE
+.\"------------------------------------------------------------------------
+.SH COMMANDS
+.SS acl add
+.B doveadm acl add
+[\fB\-u\fP \fIuser\fP|\fB\-A\fP|\fB\-F\fP \fIfile\fP]
+[\fB\-S\fP \fIsocket_path\fP]
+.I mailbox id right
+.RI [ right " ...]"
+.PP
+Add ACL rights to the
+.IR mailbox / id .
+If the
+.I id
+already exists, the existing rights are preserved.
+.\"-------------------------------------
+.SS acl debug
+.B doveadm acl debug
+[\fB\-u\fP \fIuser\fP|\fB\-A\fP|\fB\-F\fP \fIfile\fP]
+[\fB\-S\fP \fIsocket_path\fP]
+.I mailbox
+.PP
+This command can be used to debug why a shared mailbox isn\(aqt
+accessible to the user.
+It will list exactly what the problem is.
+.\"-------------------------------------
+.SS acl delete
+.B doveadm acl delete
+[\fB\-u\fP \fIuser\fP|\fB\-A\fP|\fB\-F\fP \fIfile\fP]
+[\fB\-S\fP \fIsocket_path\fP]
+.I mailbox id
+.PP
+Remove the whole ACL entry for the
+.IR mailbox / id .
+.\"-------------------------------------
+.SS acl get
+.B doveadm acl get
+[\fB\-u\fP \fIuser\fP|\fB\-A\fP|\fB\-F\fP \fIfile\fP]
+[\fB\-S\fP \fIsocket_path\fP]
+.RB [ \-m ]
+.I mailbox
+.PP
+Show all the ACLs for the
+.IR mailbox .
+.\"-------------------------------------
+.SS acl recalc
+.B doveadm acl recalc
+[\fB\-u\fP \fIuser\fP|\fB\-A\fP|\fB\-F\fP \fIfile\fP]
+[\fB\-S\fP \fIsocket_path\fP]
+.PP
+Make sure the
+.IR user \(aqs
+shared mailboxes exist correctly in the
+.IR acl_shared_dict .
+.\"-------------------------------------
+.SS acl remove
+.B doveadm acl remove
+[\fB\-u\fP \fIuser\fP|\fB\-A\fP|\fB\-F\fP \fIfile\fP]
+[\fB\-S\fP \fIsocket_path\fP]
+.I mailbox id right
+.RI [ right " ...]"
+.PP
+Remove the specified ACL rights from the
+.IR mailbox / id .
+If all rights are removed, the entry still exists without any rights.
+.\"-------------------------------------
+.SS acl rights
+.B doveadm acl rights
+[\fB\-u\fP \fIuser\fP|\fB\-A\fP|\fB\-F\fP \fIfile\fP]
+[\fB\-S\fP \fIsocket_path\fP]
+.I mailbox
+.PP
+Show the
+.IR user \(aqs
+current ACL rights for the
+.IR mailbox .
+.\"-------------------------------------
+.SS acl set
+.B doveadm acl set
+[\fB\-u\fP \fIuser\fP|\fB\-A\fP|\fB\-F\fP \fIfile\fP]
+[\fB\-S\fP \fIsocket_path\fP]
+.I mailbox id right
+.RI [ right " ...]"
+.PP
+Set ACL rights to the
+.IR mailbox / id .
+If the
+.I id
+already exists, the existing rights are replaced.
+.\"------------------------------------------------------------------------
+@INCLUDE:reporting-bugs@
+.\"------------------------------------------------------------------------
+.SH SEE ALSO
+.BR doveadm (1),
+.BR dovecot\-lda (1)
+.\"-------------------------------------
+.PP
+Additional resources:
+.IP "ACL Inheritance"
+http://wiki2.dovecot.org/ACL#ACL_Inheritance \ No newline at end of file
diff --git a/doc/man/doveadm-altmove.1.in b/doc/man/doveadm-altmove.1.in
new file mode 100644
index 0000000..b33f472
--- /dev/null
+++ b/doc/man/doveadm-altmove.1.in
@@ -0,0 +1,104 @@
+.\" Copyright (c) 2010-2018 Dovecot authors, see the included COPYING file
+.TH DOVEADM\-ALTMOVE 1 "2015-05-09" "Dovecot v2.3" "Dovecot"
+.SH NAME
+doveadm\-altmove \- Move matching mails to the alternative storage (dbox\-only)
+.\"------------------------------------------------------------------------
+.SH SYNOPSIS
+.BR doveadm " [" \-Dv "] " altmove " [" \-r "] ["\-S
+.IR socket_path "] " search_query
+.br
+.\"-------------------------------------
+.BR doveadm " [" \-Dv "] " altmove " [" \-r "] ["\-S
+.IR socket_path "] "
+.BI \-A " search_query"
+.br
+.\"-------------------------------------
+.BR doveadm " [" \-Dv "] " altmove " [" \-r "] ["\-S
+.IR socket_path "] "
+.BI \-F " file search_query"
+.br
+.\"-------------------------------------
+.BR doveadm " [" \-Dv "] " altmove " [" \-r "] ["\-S
+.IR socket_path "] "
+.BI \-u " user search_query"
+.\"------------------------------------------------------------------------
+.SH DESCRIPTION
+This command can be used with sdbox or mdbox storage to move mails to
+alternative storage path when :ALT=<path> is specified for the mail
+location.
+.PP
+In the first form,
+.BR doveadm (1)
+will executed the
+.B altmove
+action with the environment of the logged in system user.
+.PP
+In the second form, the command will be performed for all users.
+.PP
+In the third form, the command will be performed for all users listed in
+the given
+.IR file .
+.PP
+In the fourth form, only matching mails of the given
+.IR user (s)
+will be moved to the alternative storage.
+.\"------------------------------------------------------------------------
+@INCLUDE:global-options@
+.\" --- command specific options --- "/.
+.PP
+Command specific
+.IR options :
+.\"-------------------------------------
+@INCLUDE:option-A@
+.\"-------------------------------------
+@INCLUDE:option-F-file@
+.\"-------------------------------------
+.TP
+.B \-r
+When the
+.B \-r
+option is given this
+.I command
+works the other way round.
+Mails will be moved from the alternative storage back to the default mail
+location.
+.\"-------------------------------------
+@INCLUDE:option-S-socket@
+.\"-------------------------------------
+@INCLUDE:option-u-user@
+.\"------------------------------------------------------------------------
+.SH ARGUMENTS
+.TP
+.I search_query
+Messages matching this search query will be moved to alt storage.
+See
+.BR doveadm\-search\-query (7)
+for details.
+.\"------------------------------------------------------------------------
+.SH FILES
+.TP
+.I @pkgsysconfdir@/conf.d/10\-mail.conf
+Mailbox locations and namespaces.
+.TP
+.I @pkgsysconfdir@/conf.d/auth\-*.conf.ext
+Authentication processes, including userdb settings.
+.\"------------------------------------------------------------------------
+.SH EXAMPLE
+This example moves seen mails older than one week to alternative storage
+under /nfsmount:
+.br
+.nf
+mail_location = mdbox:~/mdbox:ALT=/nfsmount/%h/mdbox
+.fi
+.PP
+.nf
+.ft B
+doveadm altmove \-u johnd@example.com seen savedbefore 1w
+.ft P
+.fi
+.\"------------------------------------------------------------------------
+@INCLUDE:reporting-bugs@
+.\"------------------------------------------------------------------------
+.SH SEE ALSO
+.BR doveadm (1),
+.BR doveadm\-search\-query (7) \ No newline at end of file
diff --git a/doc/man/doveadm-auth.1.in b/doc/man/doveadm-auth.1.in
new file mode 100644
index 0000000..f70bfda
--- /dev/null
+++ b/doc/man/doveadm-auth.1.in
@@ -0,0 +1,216 @@
+.\" Copyright (c) 2010-2018 Dovecot authors, see the included COPYING file
+.TH DOVEADM\-AUTH 1 "2014-10-19" "Dovecot v2.3" "Dovecot"
+.SH NAME
+doveadm\-auth \- Flush/lookup/test authentication data
+.\"------------------------------------------------------------------------
+.SH SYNOPSIS
+.BR doveadm " [" \-Dv ]
+[\fB\-f\fP \fIformatter\fP]
+.BI auth \ command
+.RI [ OPTIONS ]\ [ ARGUMENTS ]
+.\"------------------------------------------------------------------------
+.SH DESCRIPTION
+The
+.B doveadm \ auth
+.I COMMANDS
+can be used to perform various authentication related actions.
+.\"------------------------------------------------------------------------
+@INCLUDE:global-options-formatter@
+.\" --- command specific options --- "/.
+.PP
+Command specific
+.IR options :
+.\"-------------------------------------
+.TP
+.BI \-x\ auth_info
+.I auth_info
+specifies additional conditions for the
+.BR "auth lookup" " and " "auth test"
+commands.
+The
+.I auth_info
+option string has to be given as
+.IB name = value
+pair.
+For multiple conditions the
+.B \-x
+option could be supplied multiple times.
+.br
+All the given fields are forwarded to the auth process without checking for
+their validity. The important names for the
+.I auth_info
+are:
+.RS
+.TP
+.B service
+The service for which the authentication lookup should be tested.
+The value may be the name of a service, commonly used with Dovecot.
+For example:
+.BR imap ,
+.BR pop3\ or
+.BR smtp .
+.TP
+.B lip
+The local IP address (server) for the test.
+.TP
+.B rip
+The remote IP address (client) for the test.
+.TP
+.B lport
+The local port, e.g. 143
+.TP
+.B rport
+The remote port, e.g. 24567
+.TP
+.B real_lip
+The "real" local IP address (server) for the test. This is intended to be the
+local server\(aqs IP, while "lip" contains the connecting proxy server\(aqs
+local IP.
+.TP
+.B real_rip
+The "real" remote IP address (client) for the test. This is intended to be the
+connecting proxy server\(aqs IP address, while "rip" contains the original
+client\(aqs IP.
+.TP
+.B real_lport
+The "real" local port for proxied connections.
+.TP
+.B real_rport
+The "real" remote port for proxied connections.
+.TP
+.B local_name
+Provide the client TLS connection\(aqs SNI name.
+.TP
+.B client_id
+IMAP client ID string.
+.TP
+.B session
+Session ID string, mainly for logging purposes.
+.RE
+.\"------------------------------------------------------------------------
+.SH ARGUMENTS
+.\"-------------------------------------
+.TP
+.I user
+The
+.IR user \(aqs
+login name.
+Depending on the configuration, the login name may be for example
+.BR jane " or " john@example.com .
+.\"-------------------------------------
+.TP
+.I password
+Optionally the user\(aqs password.
+.BR doveadm (1)
+will prompt for the password, if none was given.
+.\"------------------------------------------------------------------------
+.SH COMMANDS
+.SS auth cache flush
+.B doveadm auth cache flush
+.RB [ \-a
+.IR master_socket_path ]
+.RI [ user " ...]"
+.PP
+Flush the authentication cache.
+By default the cache is flushed for all the users (which can also be done
+by sending SIGHUP to the auth process).
+You can also flush the cache for one or more users by providing their
+usernames.
+.PP
+.TP
+.BI \-a \ master_socket_path
+This option is used to specify an absolute path to an alternative UNIX
+domain socket.
+.sp
+By default
+.BR doveadm (1)
+will use the socket
+.IR @rundir@/auth\-master .
+The socket may be located in another directory, when the default
+.I base_dir
+setting was overridden in
+.IR @pkgsysconfdir@/dovecot.conf .
+.\"-------------------------------------
+.SS auth lookup
+.B doveadm auth lookup
+.RB [ \-a
+.IR userdb_socket_path ]
+.RB [ \-x
+.IR auth_info ]
+.RB [ \-f
+.IR field ] \ user \ [...]
+.PP
+Similar to
+.BR doveadm\-user (1)
+command, except it performs a
+.I passdb
+lookup (without authentication) instead of a
+.I userdb
+lookup.
+.PP
+.TP
+.BI \-a \ userdb_socket_path
+This option is used to specify an absolute path to an alternative UNIX
+domain socket.
+.sp
+By default
+.BR doveadm (1)
+will use the socket
+.IR @rundir@/auth\-userdb .
+The socket may be located in another directory, when the default
+.I base_dir
+setting was overridden in
+.IR @pkgsysconfdir@/dovecot.conf .
+.\"-----------------
+.TP
+.BI \-f \ field
+When this option and the name of a userdb field is given,
+.BR doveadm (1)
+will show only the value of the specified field.
+.\"-------------------------------------
+.SS auth test
+.B doveadm auth test
+.RB [ \-a
+.IR auth_socket_path ]
+.RB [ \-x
+.IR auth_info ]
+.IR user \ [ password ]
+.PP
+Test authentication for the given user.
+.\"-------------------------------------
+.TP
+.BI \-a\ auth_socket_path
+This option is used to specify an absolute path to an alternative UNIX
+domain socket.
+.sp
+By default
+.BR doveadm (1)
+will use the socket
+.IR @rundir@/auth\-client .
+The socket may be located in another directory, when the default
+.I base_dir
+setting was overridden in
+.IR @pkgsysconfdir@/dovecot.conf .
+
+.\"------------------------------------------------------------------------
+.SH EXAMPLE
+This example demonstrates an imap authentication test for user john,
+assuming the user is connected from the host with the IP address
+192.0.2.143.
+.PP
+.nf
+.ft B
+doveadm auth test \-x service=imap \-x rip=192.0.2.143 john
+.ft P
+Password:
+passdb: john auth succeeded
+extra fields:
+ user=john
+.fi
+.\"------------------------------------------------------------------------
+@INCLUDE:reporting-bugs@
+.\"------------------------------------------------------------------------
+.SH SEE ALSO
+.BR doveadm (1),
+.BR doveadm\-user (1),
+.BR doveconf (1) \ No newline at end of file
diff --git a/doc/man/doveadm-backup.1 b/doc/man/doveadm-backup.1
new file mode 100644
index 0000000..106321c
--- /dev/null
+++ b/doc/man/doveadm-backup.1
@@ -0,0 +1 @@
+.so man1/doveadm-sync.1 \ No newline at end of file
diff --git a/doc/man/doveadm-batch.1.in b/doc/man/doveadm-batch.1.in
new file mode 100644
index 0000000..778c3fa
--- /dev/null
+++ b/doc/man/doveadm-batch.1.in
@@ -0,0 +1,103 @@
+.\" Copyright (c) 2013-2018 Dovecot authors, see the included COPYING file
+.TH DOVEADM\-BATCH 1 "2015-05-09" "Dovecot v2.3" "Dovecot"
+.SH NAME
+doveadm\-batch \- Execute multiple commands for multiple users
+.\"------------------------------------------------------------------------
+.SH SYNOPSIS
+.BR doveadm " [" \-Dv "] " batch " [" \-S
+.IR socket_path "] "
+.BI \-A " sep command sep command"
+[...]
+.br
+.\"-------------------------------------
+.BR doveadm " [" \-Dv "] " batch " [" \-S
+.IR socket_path "] "
+.BI \-F " file sep command sep command"
+[...]
+.br
+.\"-------------------------------------
+.BR doveadm " [" \-Dv "] " batch " [" \-S
+.IR socket_path "] "
+.BI \-u " usermask sep command sep command"
+[...]
+.\"------------------------------------------------------------------------
+.SH DESCRIPTION
+The command
+.B doveadm batch
+is used to execute multiple
+.BR doveadm (1)
+.IR command s
+sequentially for multiple users.
+This is primarily an optimization where Dovecot can do all the mailbox
+operations for the same user at once, instead of having to go through
+the users multiple times.
+.PP
+In the first form
+.BR doveadm (1)
+will loop over all users, defined in the configured
+.IR user_db (s),
+and execute the sequence of
+.IR command s
+for each of them.
+.PP
+In the second form
+.BR doveadm (1)
+will loop over all users, listed in the given
+.IR file .
+.PP
+In the third form the
+.IR command s
+will be executed for each user matching the given
+.IR usermask .
+.\"------------------------------------------------------------------------
+@INCLUDE:global-options@
+.\" --- command specific options --- "/.
+.PP
+Command specific
+.IR options :
+.\"-------------------------------------
+@INCLUDE:option-A@
+.\"-------------------------------------
+@INCLUDE:option-F-file@
+.\"-------------------------------------
+@INCLUDE:option-S-socket@
+.\"-------------------------------------
+@INCLUDE:option-u-user@
+.\"------------------------------------------------------------------------
+.SH ARGUMENTS
+.TP
+.I command
+Any
+.BR doveadm (1)
+command, with arguments and options \(em except for the
+.BR \-A ", " \-S " and " \-u " options."
+.\"-------------------------------------
+.TP
+.I sep
+A single character used as command separator, e.g. \(aq:\(aq.
+Be careful, unquoted characters, like
+.BR ; " or " & ,
+may be interpreted by your shell and
+.BR doveadm (1)
+will never see them.
+.\"------------------------------------------------------------------------
+.SH EXAMPLE
+In this example we move seen mails, older than one month, for all
+example.net users to the alternative storage under /nfsmount:
+.br
+.nf
+mail_location = mdbox:~/mdbox:ALT=/nfsmount/%h/mdbox
+.fi
+The second command will remove messages with refcount=0 from the
+primary storage.
+.PP
+.nf
+.ft B
+doveadm batch \-u \(rs*@example.net : altmove seen savedbefore 30d : purge
+.ft P
+.fi
+.\"------------------------------------------------------------------------
+@INCLUDE:reporting-bugs@
+.\"------------------------------------------------------------------------
+.SH SEE ALSO
+.BR doveadm (1) \ No newline at end of file
diff --git a/doc/man/doveadm-config.1 b/doc/man/doveadm-config.1
new file mode 100644
index 0000000..e6fe3ec
--- /dev/null
+++ b/doc/man/doveadm-config.1
@@ -0,0 +1 @@
+.so man1/doveconf.1 \ No newline at end of file
diff --git a/doc/man/doveadm-copy.1 b/doc/man/doveadm-copy.1
new file mode 100644
index 0000000..2880406
--- /dev/null
+++ b/doc/man/doveadm-copy.1
@@ -0,0 +1 @@
+.so man1/doveadm-move.1
diff --git a/doc/man/doveadm-deduplicate.1.in b/doc/man/doveadm-deduplicate.1.in
new file mode 100644
index 0000000..52fd9d3
--- /dev/null
+++ b/doc/man/doveadm-deduplicate.1.in
@@ -0,0 +1,93 @@
+.\" Copyright (c) 2013-2018 Dovecot authors, see the included COPYING file
+.TH DOVEADM\-DEDUPLICATE 1 "2015-05-09" "Dovecot v2.3" "Dovecot"
+.SH NAME
+doveadm\-deduplicate \- expunge duplicate messages
+.\"------------------------------------------------------------------------
+.SH SYNOPSIS
+.BR doveadm " [" \-Dv "] " deduplicate " [" \-u
+.IR user |\c
+.BR \-A |\c
+.BI \-F " file" \c
+.RB "] [" \-S
+.IR socket_path "] ["\c
+.BR \-m ]
+.I search_query
+.\"------------------------------------------------------------------------
+.SH DESCRIPTION
+This command is used to expunge duplicated messages in mailboxes.
+.B doveadm deduplicate
+is mainly useful to revert some (more or less) accidental duplication of
+messages, e.g. after
+.BR "doveadm copy" " or " "doveadm import" .
+.BR doveadm (1)
+will delete the newest duplicated messages from the mailbox and keep the
+oldest.
+.br
+Deduplication across multiple mailboxes is not supported.
+.\"------------------------------------------------------------------------
+@INCLUDE:global-options@
+.\"-------------------------------------
+.PP
+Command specific
+.IR options :
+.\"-------------------------------------
+@INCLUDE:option-A@
+.\"-------------------------------------
+@INCLUDE:option-F-file@
+.\"-------------------------------------
+@INCLUDE:option-S-socket@
+.\"-------------------------------------
+.TP
+.B \-m
+if the
+.B \-m
+option is given,
+.BR doveadm (1)
+will deduplicate by Message\-Id header.
+By default deduplication will be done by message GUIDs.
+.\"-------------------------------------
+@INCLUDE:option-u-user@
+.\"------------------------------------------------------------------------
+.SH ARGUMENTS
+.TP
+.I search_query
+expunge duplicates found from messages matching the given search query.
+Typically a search query like \(aq\fBmailbox\fP \fImailbox_name\fP
+\fBOR mailbox\fP \fIother_box\fP\(aq will be sufficient.
+See
+.BR doveadm\-search\-query (7)
+for details.
+.\"------------------------------------------------------------------------
+.SH EXAMPLE
+This example shows how to list and expunge duplicate messages from a
+mailbox.
+.sp
+.nf
+.ft B
+doveadm \-f table fetch \-u jane \(aqguid uid\(aq mailbox a_Box | sort
+.ft P
+guid uid
+8aad0f0a30169f4bea620000ca356bad 18751
+8aad0f0a30169f4bea620000ca356bad 18756
+923e301ab9219b4b4f440000ca356bad 18748
+923e301ab9219b4b4f440000ca356bad 18753
+\&...
+.ft B
+doveadm deduplicate \-u jane mailbox a_Box
+doveadm \-f table fetch \-u jane \(aqguid uid\(aq mailbox a_Box | sort
+.ft P
+guid uid
+8aad0f0a30169f4bea620000ca356bad 18751
+923e301ab9219b4b4f440000ca356bad 18748
+a7999e1530739c4bd26d0000ca356bad 18749
+\&...
+.fi
+.\"------------------------------------------------------------------------
+@INCLUDE:reporting-bugs@
+.\"------------------------------------------------------------------------
+.SH SEE ALSO
+.BR doveadm (1),
+.BR doveadm\-copy (1),
+.BR doveadm\-fetch (1),
+.BR doveadm\-import (1),
+.BR doveadm\-search\-query (7) \ No newline at end of file
diff --git a/doc/man/doveadm-director.1.in b/doc/man/doveadm-director.1.in
new file mode 100644
index 0000000..2a2c688
--- /dev/null
+++ b/doc/man/doveadm-director.1.in
@@ -0,0 +1,283 @@
+.\" Copyright (c) 2013-2018 Dovecot authors, see the included COPYING file
+.TH DOVEADM\-DIRECTOR 1 "2014-08-30" "Dovecot v2.3" "Dovecot"
+.SH NAME
+doveadm\-director \- Manage Dovecot directors
+.\"------------------------------------------------------------------------
+.SH SYNOPSIS
+.BR doveadm " [" \-Dv ]
+[\fB\-f\fP \fIformatter\fP]
+.BI director \ command
+.RI [ OPTIONS ]\ [ ARGUMENTS ]
+.\"------------------------------------------------------------------------
+.SH DESCRIPTION
+.B doveadm director
+can be used to manage and query the status of the list of backend mail
+servers where Dovecot proxy can redirect connections to.
+.\"------------------------------------------------------------------------
+@INCLUDE:global-options-formatter@
+.\" --- command specific options --- "/.
+.PP
+Command specific
+.IR options :
+.\"-------------------------------------
+.TP
+.BI \-a\ director_socket_path
+This option is used to specify an alternative socket.
+The option\(aqs argument is either an absolute path to a local UNIX domain
+socket, or a hostname and port
+.RI ( hostname : port ),
+in order to connect a remote host via a TCP socket.
+.sp
+By default
+.BR doveadm (1)
+will use the socket
+.IR @rundir@/director\-admin .
+The socket may be located in another directory, when the default
+.I base_dir
+setting was overridden in
+.IR @pkgsysconfdir@/dovecot.conf .
+.\"------------------------------------------------------------------------
+.SH ARGUMENTS
+.TP
+.I host
+A mail server\(aqs hostname or IP address.
+.\"-------------------------------------
+.TP
+.I ip
+A director\(aqs IP address.
+.\"-------------------------------------
+.TP
+.I port
+The TCP port, on which the director server is listening for connections.
+The default port is the same as what the local director is listening in.
+.\"-------------------------------------
+.TP
+.I user
+Is a
+.IR user \(aqs
+login name.
+Depending on the configuration, a login name may be for example
+.BR jane " or " john@example.com .
+.\"-------------------------------------
+.TP
+.I vhost_count
+The number of \(dqvirtual hosts\(dq to assign to this server. The higher
+the number is relative to other servers, the more connections it gets. The
+default is 100.
+.\"------------------------------------------------------------------------
+.SH COMMANDS
+.SS director add
+.B doveadm director add
+[\fB\-a\fP \fIdirector_socket_path\fP]
+.I host
+.RI [ vhost_count ]
+.PP
+The command\(aqs tasks are:
+.TP 4
+*
+assign a new mail server to the director.
+.TP
+*
+increase/decrease the
+.I vhost_count
+of an already assigned server.
+.PP
+.\"-------------------------------------
+.SS director dump
+.B doveadm director dump
+[\fB\-a\fP \fIdirector_socket_path\fP]
+.PP
+Dump the current host configuration as doveadm commands. These commands can
+be easily run after a full director cluster restart to get back to the
+dumped state.
+.\"-------------------------------------
+.SS director flush
+.B doveadm director flush
+[\fB\-a\fP \fIdirector_socket_path\fP]
+[\fB\-F\fP]
+[\fB\-\-max\-parallel\fP \fIn\fP]
+\fIhost\fP|\fBall\fP
+.PP
+.B doveadm director flush
+removes all user associations either from the given
+.I host
+or
+.B all
+hosts. All the existing connections will be kicked. If
+.B director_flush_socket
+is specified, a flush script is also automatically executed.
+.PP
+Because the kicking and moving of users to new backends creates a temporary
+load spike, all the users aren\'t moved at once. The
+.B \-\-max\-parallel
+parameter specifies how many users can be moved concurrently.
+The default is 100.
+.PP
+If the
+.B \-F
+parameter is used, the user associations are simply dropped. Existing
+connections won\'t be kicked and flush scripts aren\'t run.
+.\"-------------------------------------
+.SS director kick
+.B doveadm director kick
+[\fB\-a\fP \fIdirector_socket_path\fP]
+.I user
+.PP
+Kick the specified
+.I user
+from the entire Dovecot cluster.
+This is similar to doveadm proxy kick, but this command needs to be run
+only once instead of in each director server.
+.\"-------------------------------------
+.SS director map
+.B doveadm director map
+[\fB\-a\fP \fIdirector_socket_path\fP]
+[\fB\-f\fP \fIusers_file\fP]
+[\fB\-h\fP|\fB\-u\fP]
+.RI [ host ]
+.PP
+The command
+.B doveadm director map
+is used to list current
+.IR user "\ \(->\ " host
+mappings. Note that the director works using 32bit hashes which makes
+collisions quite likely, so this command can\(aqt reliably list exactly
+which users have recently logged in.
+.PP
+.TP
+.BI \-f\ users_file
+Path to a file containing all user names (one per line).
+When given no
+.I userdb
+lookup will be performed.
+This may be a helpful alternative when for example the network connection
+to the LDAP or SQL server is slow.
+.\"-----------------
+.TP
+.B \-h
+Output all usernames, which match the given hash.
+.\"-----------------
+.TP
+.B \-u
+Output hash for the given username.
+.\"-----------------
+.TP
+.I host
+Specify a server\(aqs IP address or hostname, to list only mappings of the
+given
+.IR host .
+.\"-------------------------------------
+.SS director move
+.B doveadm director move
+[\fB\-a\fP \fIdirector_socket_path\fP]
+.I user host
+.PP
+Move the
+.I user
+to the specified backend
+.IR host .
+If the
+.I user
+has any existing connections they will be killed.
+.\"-------------------------------------
+.SS director remove
+.B doveadm director remove
+[\fB\-a\fP \fIdirector_socket_path\fP]
+.I host
+.PP
+Use this command in order to remove the given
+.I host
+from the director.
+.\"-------------------------------------
+.SS director ring add
+.B doveadm director ring add
+[\fB\-a\fP \fIdirector_socket_path\fP]
+.IR ip \ [ port ]
+.PP
+Add a new director to the ring.
+.\"-------------------------------------
+.SS director ring remove
+.B doveadm director ring remove
+[\fB\-a\fP \fIdirector_socket_path\fP]
+.IR ip \ [ port ]
+.PP
+Remove a director from the ring.
+.\"-------------------------------------
+.SS director ring status
+.B doveadm director ring status
+[\fB\-a\fP \fIdirector_socket_path\fP]
+.PP
+Show the status of all the directors currently in the ring.
+.\"-------------------------------------
+.SS director status
+.B doveadm director status
+[\fB\-a\fP \fIdirector_socket_path\fP]
+.RI [ user ]
+.PP
+This command is used to show the current usage of all assigned mail
+servers.
+.br
+When a user name is given, this command shows which server the
+.I user
+is currently assigned to, where the user will be assigned after the current
+saved assignment gets removed and where the user would be assigned to if
+the whole proxy cluster was restarted fresh.
+.\"------------------------------------------------------------------------
+.SH FILES
+.TP
+.I @pkgsysconfdir@/dovecot.conf
+Dovecot\(aqs main configuration file.
+.TP
+.I @pkgsysconfdir@/conf.d/10\-director.conf
+Director specific settings.
+.\"------------------------------------------------------------------------
+.SH EXAMPLE
+Add a director with vhost count 150 (or change existing one\(aqs
+vhost count to 150):
+.PP
+.nf
+.B doveadm \-v director add x1357.imap.ha.example.net 150
+2001:db8:543:6861:143::1357: OK
+.fi
+.\"-------------------------------------
+.PP
+Remove a director:
+.PP
+.nf
+.B doveadm director remove x1357.imap.ha.example.net
+.fi
+.\"-------------------------------------
+.PP
+Query the status of mail hosts in a director:
+.PP
+.nf
+.B doveadm director status
+mail server ip vhosts users
+192.168.10.1 100 125
+192.168.10.2 100 144
+192.168.10.3 100 115
+.fi
+.\"-------------------------------------
+.PP
+Query the status of a user\(aqs assignment:
+.PP
+.nf
+.B doveadm director status user@example.com
+Current: 192.168.10.1 (expires 2010\-06\-18 20:17:04)
+Hashed: 192.168.10.2
+Initial config: 192.168.10.3
+.fi
+.PP
+This means that the user is currently assigned to mail server on IP
+192.168.10.1. After all of user\(aqs connections have logged out, the
+assignment will be removed (currently it looks like at 20:17:04, but
+that may be increased). After the assignment has expired, the user will
+next time be redirected to 192.168.10.2 (assuming no changes to director
+settings). If the entire Dovecot proxy cluster was restarted, so that all
+of the director configuration would revert back to its initial values, the
+user would be redirected to 192.168.10.3.
+.\"------------------------------------------------------------------------
+@INCLUDE:reporting-bugs@
+.\"------------------------------------------------------------------------
+.SH SEE ALSO
+.BR doveadm (1) \ No newline at end of file
diff --git a/doc/man/doveadm-dump.1.in b/doc/man/doveadm-dump.1.in
new file mode 100644
index 0000000..4582b4f
--- /dev/null
+++ b/doc/man/doveadm-dump.1.in
@@ -0,0 +1,93 @@
+.\" Copyright (c) 2010-2018 Dovecot authors, see the included COPYING file
+.TH DOVEADM\-DUMP 1 "2014-08-24" "Dovecot v2.3" "Dovecot"
+.SH NAME
+doveadm\-dump \- Dump the content of Dovecot\(aqs binary mailbox index/log
+.\"------------------------------------------------------------------------
+.SH SYNOPSIS
+.BR doveadm " [" \-Dv "] " dump " [" \-t
+.IR type "] " path
+.\"------------------------------------------------------------------------
+.SH DESCRIPTION
+Dovecot uses several binary index and log files in order to improve
+performance for accessing mails. For some mailbox formats, such as sdbox
+and mdbox, the index files are part of the format itself.
+For details about index files, see also: http://wiki2.dovecot.org/IndexFiles
+.PP
+.B doveadm dump
+is used to show the contents of those mailbox index/log files, in human
+readable format. This is mainly useful for Dovecot developers when
+debugging some problem.
+.\"------------------------------------------------------------------------
+@INCLUDE:global-options@
+.\" --- command specific options --- "/.
+.PP
+Command specific
+.IR options :
+.TP
+.BI \-t\ type
+the file type of the file to be dumped.
+If the
+.I type
+was omitted,
+.BR doveadm (1)
+tries to detect the type of
+.IR path .
+.I type
+can be:
+.RS
+.TP 12
+.B dbox
+\(rA m.\c
+.I n
+(sdbox or mdbox mailbox file)
+.TP
+.B fts\-expunge\-log
+Dump the list of expunged mails in
+.IR dovecot\-expunges.log .
+Currently used only by fts\-lucene.
+.TP
+.B fts\-lucene
+Dump the list of indexed mails in
+.I lucene\-indexes
+directory
+.TP
+.B imapzlib
+Uncompress an IMAP traffic log, which contains data compressed using the
+IMAP COMPRESSION extension.
+.TP
+.B dcrypt-file
+Dump metadata of a dcrypt encrypted file.
+.TP
+.B dcrypt-key
+Dump metadata of a dcrypt key.
+.TP
+.B index
+\(rA dovecot.index, dovecot.map.index
+.TP
+.B log
+\(rA dovecot.index.log, dovecot.map.index.log
+.TP
+.B mailboxlog
+\(rA dovecot.mailbox.log
+.TP
+.B thread
+\(rA dovecot.index.thread
+.RE
+.\"------------------------------------------------------------------------
+.SH ARGUMENTS
+.TP
+.I path
+The path to the corresponding dbox storage, index or log file.
+If only a directory is specified, doveadm tries to detect the type of files
+under it and dumps them.
+.\"------------------------------------------------------------------------
+.SH EXAMPLE
+Look at the contents of a mailbox\(aqs index:
+.PP
+.nf
+.B doveadm dump ~/Maildir/.work/
+.\"------------------------------------------------------------------------
+@INCLUDE:reporting-bugs@
+.\"------------------------------------------------------------------------
+.SH SEE ALSO
+.BR doveadm (1) \ No newline at end of file
diff --git a/doc/man/doveadm-exec.1.in b/doc/man/doveadm-exec.1.in
new file mode 100644
index 0000000..dd4757c
--- /dev/null
+++ b/doc/man/doveadm-exec.1.in
@@ -0,0 +1,47 @@
+.\" Copyright (c) 2013-2018 Dovecot authors, see the included COPYING file
+.TH DOVEADM\-EXEC 1 "2013-08-05" "Dovecot v2.3" "Dovecot"
+.SH NAME
+doveadm\-exec \- easily execute commands from Dovecot\(aqs libexec_dir
+.\"------------------------------------------------------------------------
+.SH SYNOPSIS
+.BR doveadm " [" \-Dv "] " exec
+.IR binary " [" "binary arguments" ]
+.\"------------------------------------------------------------------------
+.SH DESCRIPTION
+This command allows administrators and local users to simply execute
+commands from within
+.IR libexec_dir .
+So for example a logged in system user could start a pre\-authenticated
+imap session, using the command:
+.BR "doveadm exec imap" .
+An administrator would use the command:
+.B "doveadm exec imap \-u"
+.IR username .
+.\"------------------------------------------------------------------------
+@INCLUDE:global-options@
+.\"------------------------------------------------------------------------
+.SH ARGUMENTS
+.TP
+.I binary
+the name of an executable located in
+.IR @pkglibexecdir@ .
+.\"-------------------------------------
+.TP
+.I binary arguments
+options and arguments, which will be passed through to the
+.IR binary .
+.\"------------------------------------------------------------------------
+.SH EXAMPLE
+This example demonstrates how to deliver a message from a file to a
+user\(aqs mailbox.
+.sp
+.nf
+.B doveadm exec dovecot\-lda \-d user@example.net \(rs
+.B \-f admin@example.net < \(ti/stuff/welcome.msg
+.fi
+.\"------------------------------------------------------------------------
+@INCLUDE:reporting-bugs@
+.\"------------------------------------------------------------------------
+.SH SEE ALSO
+.BR doveadm (1),
+.BR dovecot\-lda (1) \ No newline at end of file
diff --git a/doc/man/doveadm-expunge.1.in b/doc/man/doveadm-expunge.1.in
new file mode 100644
index 0000000..34c3b5b
--- /dev/null
+++ b/doc/man/doveadm-expunge.1.in
@@ -0,0 +1,101 @@
+.\" Copyright (c) 2010-2018 Dovecot authors, see the included COPYING file
+.TH DOVEADM\-EXPUNGE 1 "2015-05-09" "Dovecot v2.3" "Dovecot"
+.SH NAME
+doveadm\-expunge \- Expunge messages matching given search query
+.\"------------------------------------------------------------------------
+.SH SYNOPSIS
+.BR doveadm " [" \-Dv "] " expunge " [" \-S
+.IR socket_path ]
+.RB [ \-d ]
+.I search_query
+.br
+.\"-------------------------------------
+.BR doveadm " [" \-Dv "] " expunge " [" \-S
+.IR socket_path ]
+.RB [ \-d ]
+.BI \-A " search_query"
+.br
+.\"-------------------------------------
+.BR doveadm " [" \-Dv "] " expunge " [" \-S
+.IR socket_path ]
+.RB [ \-d ]
+.BI \-F " file search_query"
+.br
+.\"-------------------------------------
+.BR doveadm " [" \-Dv "] " expunge " [" \-S
+.IR socket_path ]
+.RB [ \-d ]
+.BI \-u " user search_query"
+.\"------------------------------------------------------------------------
+.SH DESCRIPTION
+This command can be used to expunge mails matching the given search query.
+It is typically used to expunge old mails from users\(aq Trash and/or Spam
+mailboxes. To test which messages a given search query would match, you can
+use
+.I doveadm fetch
+or
+.I doveadm search
+commands.
+.PP
+In the first form,
+.BR doveadm (1)
+will execute the
+.B expunge
+action with the environment of the logged in system user.
+.PP
+In the second form, the command will be performed for all users.
+.PP
+In the third form,
+.BR doveadm (1)
+will expunge messages of the users listed
+in the given
+.IR file .
+.PP
+In the fourth form, only matching mails of the given
+.IR user (s)
+will be expunged.
+.\"------------------------------------------------------------------------
+@INCLUDE:global-options@
+.\" --- command specific options --- "/.
+.PP
+Command specific
+.IR options :
+.\"-------------------------------------
+@INCLUDE:option-A@
+.\"-------------------------------------
+@INCLUDE:option-F-file@
+.\"-------------------------------------
+.TP
+.B \-d
+Delete the mailbox if it is empty after expunging.
+.\"-------------------------------------
+@INCLUDE:option-S-socket@
+.\"-------------------------------------
+@INCLUDE:option-u-user@
+.\"------------------------------------------------------------------------
+.SH ARGUMENTS
+.TP
+.I search_query
+Expunge messages matching this search query.
+See
+.BR doveadm\-search\-query (7)
+for details.
+.\"------------------------------------------------------------------------
+.SH EXAMPLE
+This example expunges messages from Spam mailbox that were saved/copied
+there more than two weeks ago:
+.PP
+.nf
+.ft B
+doveadm expunge \-u jane.doe@example.org mailbox Spam savedbefore 2w
+.ft P
+.fi
+.\"------------------------------------------------------------------------
+@INCLUDE:reporting-bugs@
+.\"------------------------------------------------------------------------
+.SH SEE ALSO
+.BR doveadm (1),
+.BR doveadm\-fetch (1),
+.BR doveadm\-purge (1),
+.BR doveadm\-search (1),
+.BR doveadm\-search\-query (7) \ No newline at end of file
diff --git a/doc/man/doveadm-fetch.1.in b/doc/man/doveadm-fetch.1.in
new file mode 100644
index 0000000..4cfc854
--- /dev/null
+++ b/doc/man/doveadm-fetch.1.in
@@ -0,0 +1,197 @@
+.\" Copyright (c) 2010-2018 Dovecot authors, see the included COPYING file
+.TH DOVEADM\-FETCH 1 "2015-05-09" "Dovecot v2.3" "Dovecot"
+.SH NAME
+doveadm\-fetch \- Fetch partial/full messages or message information
+.\"------------------------------------------------------------------------
+.SH SYNOPSIS
+.BR doveadm " [" \-Dv "] [" \-f
+.IR formatter ]
+.BR fetch " [" \-S
+.IR socket_path "] " "fields search_query"
+.br
+.\"-------------------------------------
+.BR doveadm " [" \-Dv "] [" \-f
+.IR formatter ]
+.BR fetch " [" \-S
+.IR socket_path "]"
+.BI \-A " fields search_query"
+.br
+.\"-------------------------------------
+.BR doveadm " [" \-Dv "] [" \-f
+.IR formatter ]
+.BR fetch " [" \-S
+.IR socket_path "]"
+.BI \-F " file fields search_query"
+.br
+.\"-------------------------------------
+.BR doveadm " [" \-Dv "] [" \-f
+.IR formatter ]
+.BR fetch " [" \-S
+.IR socket_path "]"
+.BI \-u " user fields search_query"
+.\"------------------------------------------------------------------------
+.SH DESCRIPTION
+.B doveadm fetch
+can be used to fetch messages\(aq contents and metadata. This can be useful
+for scripts and for debugging. If you want to fetch messages one at a time,
+see
+.BR doveadm\-search (1).
+.IP Important:
+Please respect your users\(aq privacy.
+.\"------------------------------------------------------------------------
+@INCLUDE:global-options-formatter@
+.\" --- command specific options --- "/.
+.PP
+This command uses by default the output formatter
+.BR pager .
+.PP
+Command specific
+.IR options :
+.\"-------------------------------------
+@INCLUDE:option-A@
+.\"-------------------------------------
+@INCLUDE:option-F-file@
+.\"-------------------------------------
+@INCLUDE:option-S-socket@
+.\"-------------------------------------
+@INCLUDE:option-u-user@
+.\"------------------------------------------------------------------------
+.SH ARGUMENTS
+.TP
+.I fields
+One or more result field names to display, if the
+.I search_query
+matches any messages.
+In order to specify multiple fields, enclose them in single or double
+quotes.
+.br
+Supported
+.I fields
+are:
+.RS
+.TP
+.B body
+.\"-----------------
+The body of a message.
+.TP
+.B date.received
+Date and time of final delivery, when the message was delivered to a
+user\(aqs mailbox for the first time.
+.br
+The internal date and time of the source message, when the message was
+copied by the IMAP COPY command.
+.br
+The date\-time attribute when present, otherwise the current time, when the
+message was saved by the IMAP APPEND command.
+.\"-----------------
+.TP
+.B date.saved
+Date and time when the message was saved to mailbox.
+.\"-----------------
+.TP
+.B date.sent
+Date and time of the message\(aqs Date: header.
+.\"-----------------
+.TP
+.B flags
+A message\(aqs IMAP flags, e.g. \(rsSeen
+.\"-----------------
+.TP
+.B guid
+A message\(aqs globally unique identifier.
+.\"-----------------
+.TP
+.B hdr
+The header of the message.
+.\"-----------------
+.TP
+.B imap.body
+IMAP BODY output of the message (see RFC 3501).
+.\"-----------------
+.TP
+.B imap.bodystructure
+IMAP BODYSTRUCTURE output of the message (see RFC 3501).
+.\"-----------------
+.TP
+.B imap.envelope
+IMAP ENVELOPE output of the message (see RFC 3501).
+.\"-----------------
+.TP
+.B mailbox
+Name of the mailbox, in which the message is stored. The name is in UTF\-8.
+.\"-----------------
+.TP
+.B mailbox\-guid
+The globally unique identifier of the mailbox, in which the message is
+located.
+.\"-----------------
+.TP
+.B pop3.uidl
+A message\(aqs unique (POP3) identifier within a mailbox.
+.\"-----------------
+.TP
+.B seq
+A message\(aqs sequence number in a mailbox.
+.\"-----------------
+.TP
+.B size.physical
+A message\(aqs physical size.
+.\"-----------------
+.TP
+.B size.virtual
+A message\(aqs virtual size, computed with CRLF line terminators.
+.\"-----------------
+.TP
+.B text
+The entire message (header and body).
+.\"-----------------
+.TP
+.B text.utf8
+The entire message (header and body) \(em UTF\-8 encoded.
+.\"-----------------
+.TP
+.B uid
+A message\(aqs unique (IMAP) identifier in a mailbox.
+.\"-----------------
+.TP
+.B user
+A message owner\(aqs login name.
+.\"-----------------
+.RE
+.\"-------------------------------------
+.TP
+.I search_query
+Fetch messages matching this search query.
+See
+.BR doveadm\-search\-query (7)
+for details.
+.\"------------------------------------------------------------------------
+.SH EXAMPLE
+This example based on the first example from
+.BR doveadm\-search (1).
+We are fetching the fields
+.BR mailbox\ and\ date.sent
+from user bob\(aqs mailbox with the guid
+\(dq3a94c928d66ebe4bda04000015811c6a\(dq for the messages with the
+UIDs
+.BR 8 ,\ 25 \ and \ 45 .
+.PP
+.nf
+.B doveadm fetch \-u bob \(dqmailbox date.sent\(dq \(rs
+.B mailbox\-guid 3a94c928d66ebe4bda04000015811c6a uid 8,25,45
+mailbox: dovecot/pigeonhole/2.0
+date.sent: 2010\-01\-19 01:17:41 (+0100)
+^L
+mailbox: dovecot/pigeonhole/2.0
+date.sent: 2010\-01\-28 09:38:49 (+0100)
+^L
+mailbox: dovecot/pigeonhole/2.0
+date.sent: 2010\-03\-28 18:41:14 (+0200)
+.fi
+.\"------------------------------------------------------------------------
+@INCLUDE:reporting-bugs@
+.\"------------------------------------------------------------------------
+.SH SEE ALSO
+.BR doveadm (1),
+.BR doveadm\-search (1),
+.BR doveadm\-search\-query (7) \ No newline at end of file
diff --git a/doc/man/doveadm-flags.1.in b/doc/man/doveadm-flags.1.in
new file mode 100644
index 0000000..4e72d44
--- /dev/null
+++ b/doc/man/doveadm-flags.1.in
@@ -0,0 +1,120 @@
+.\" Copyright (c) 2013-2018 Dovecot authors, see the included COPYING file
+.TH DOVEADM\-FLAGS 1 "2015-05-09" "Dovecot v2.3" "Dovecot"
+.SH NAME
+doveadm\-flags \- add, remove or replace messages\(aq flags
+.\"------------------------------------------------------------------------
+.SH SYNOPSIS
+.BR doveadm " [" \-Dv "] " flags " [" \-S
+.IR socket_path "] " "command flags search_query"
+.\"-------------------------------------
+.br
+.BR doveadm " [" \-Dv "] " flags " [" \-S
+.IR socket_path "] " "command flags search_query"
+.B \-A
+.\"-------------------------------------
+.br
+.BR doveadm " [" \-Dv "] " flags " [" \-S
+.IR socket_path "] " "command flags search_query"
+.BI "\-F " file
+.\"-------------------------------------
+.br
+.BR doveadm " [" \-Dv "] " flags " [" \-S
+.IR socket_path "] " "command flags search_query"
+.BI "\-u " user
+.\"------------------------------------------------------------------------
+.SH DESCRIPTION
+This command is used to manipulate flags of messages.
+.\"------------------------------------------------------------------------
+@INCLUDE:global-options@
+.\"-------------------------------------
+.PP
+Command specific
+.IR options :
+.\"-------------------------------------
+@INCLUDE:option-A@
+.\"-------------------------------------
+@INCLUDE:option-F-file@
+.\"-------------------------------------
+@INCLUDE:option-S-socket@
+.\"-------------------------------------
+@INCLUDE:option-u-user@
+.\"------------------------------------------------------------------------
+.SH ARGUMENTS
+.TP
+.I flags
+Message flags as described in RFC 3501, section 2.3.2 (Flags Message
+Attribute):
+.BR \(rsAnswered ", " \(rsDeleted ", " \(rsDraft ", " \(rsFlagged ", "
+.BR \(rsRecent " and " \(rsSeen .
+And the IMAP keywords
+.BR \(DoForwarded ", " \(DoMDNSent ", " \(DoSubmitPending " and "
+.B \(DoSubmitted
+or user\-defined keywords, e.g. Junk, \(DoNonSpam or \(DoLabel1.
+.br
+One or multiple flags and/or keywords can be specified.
+.\"-------------------------------------
+.TP
+.I search_query
+Manipulate the flags of messages matching the given search query.
+See
+.BR doveadm\-search\-query (7)
+for details.
+.\"------------------------------------------------------------------------
+.SH COMMANDS
+.SS flags add
+.BR "doveadm flags add" " [" \-u
+.IR user |\c
+.BR \-A | \-F
+.IR file ]
+.RB [ \-S
+.IR socket_path "] " "flags search_query"
+.PP
+This command is used to extend the current set of flags with the given
+.IR flags .
+.\"-------------------------------------
+.SS flags remove
+.BR "doveadm flags remove" " [" \-u
+.IR user |\c
+.BR \-A | \-F
+.IR file ]
+.RB [ \-S
+.IR socket_path "] " "flags search_query"
+.PP
+In order to remove the given
+.I flags
+from the current set of flags, use this command.
+.\"-------------------------------------
+.SS flags replace
+.BR "doveadm flags replace" " [" \-u
+.IR user |\c
+.BR \-A | \-F
+.IR file ]
+.RB [ \-S
+.IR socket_path "] " "flags search_query"
+.PP
+This command is used to replace ALL current flags with the given
+.IR flags .
+.\"------------------------------------------------------------------------
+.SH EXAMPLE
+List and manipulate the message flags of the message with uid 81563
+.sp
+.nf
+.ft B
+doveadm fetch \-u bob \(aquid flags\(aq mailbox dovecot uid 81563
+.ft P
+uid: 81563
+flags: \(rsAnswered \(rsSeen NonJunk
+
+.ft B
+doveadm flags remove \-u bob NonJunk mailbox dovecot uid 81563
+doveadm flags add \-u bob \(aq\(rsFlagged \(DoForwarded\(aq \
+mailbox dovecot uid 81563
+.ft P
+.fi
+.\"------------------------------------------------------------------------
+@INCLUDE:reporting-bugs@
+.\"------------------------------------------------------------------------
+.SH SEE ALSO
+.BR doveadm (1),
+.BR doveadm\-fetch (1),
+.BR doveadm\-search\-query (7) \ No newline at end of file
diff --git a/doc/man/doveadm-force-resync.1.in b/doc/man/doveadm-force-resync.1.in
new file mode 100644
index 0000000..1e23e75
--- /dev/null
+++ b/doc/man/doveadm-force-resync.1.in
@@ -0,0 +1,65 @@
+.\" Copyright (c) 2010-2018 Dovecot authors, see the included COPYING file
+.TH DOVEADM\-FORCE\-RESYNC 1 "2015-05-09" "Dovecot v2.3" "Dovecot"
+.SH NAME
+doveadm\-force\-resync \- Repair broken mailboxes
+.\"------------------------------------------------------------------------
+.SH SYNOPSIS
+.BR doveadm " [" \-Dv "] " force\-resync " [" \-S
+.IR socket_path "] " mailbox
+.\"-------------------------------------
+.br
+.BR doveadm " [" \-Dv "] " force\-resync " [" \-S
+.IR socket_path "] "
+.BI \-A \ mailbox
+.\"-------------------------------------
+.br
+.BR doveadm " [" \-Dv "] " force\-resync " [" \-S
+.IR socket_path "] "
+.BI "\-F" " file mailbox"
+.\"-------------------------------------
+.br
+.BR doveadm " [" \-Dv "] " force\-resync " [" \-S
+.IR socket_path "] "
+.BI \-u " user mailbox"
+.\"------------------------------------------------------------------------
+.SH DESCRIPTION
+Under certain circumstances it may happen, that
+.BR dovecot (1)
+is unable to automatically solve problems with mailboxes.
+In such situations the
+.B force\-resync
+command may be helpful.
+It tries to fix all problems.
+For sdbox and mdbox mailboxes the storage files will be also checked.
+.\"------------------------------------------------------------------------
+@INCLUDE:global-options@
+.\" --- command specific options --- "/.
+.PP
+Command specific
+.IR options :
+.\"-------------------------------------
+@INCLUDE:option-A@
+.\"-------------------------------------
+@INCLUDE:option-F-file@
+.\"-------------------------------------
+@INCLUDE:option-S-socket@
+.\"-------------------------------------
+@INCLUDE:option-u-user@
+.\"------------------------------------------------------------------------
+.SH ARGUMENTS
+.TP
+.I mailbox
+The name of the mailbox to fix. With mdbox all of the mailboxes are fixed,
+so you can use for example INBOX as the name.
+.\"------------------------------------------------------------------------
+.SH EXAMPLE
+Fix bob\(aqs INBOX:
+.PP
+.nf
+.B doveadm force\-resync \-u bob INBOX
+.fi
+.\"------------------------------------------------------------------------
+@INCLUDE:reporting-bugs@
+.\"------------------------------------------------------------------------
+.SH SEE ALSO
+.BR doveadm (1) \ No newline at end of file
diff --git a/doc/man/doveadm-fs.1.in b/doc/man/doveadm-fs.1.in
new file mode 100644
index 0000000..53946a5
--- /dev/null
+++ b/doc/man/doveadm-fs.1.in
@@ -0,0 +1,93 @@
+.\" Copyright (c) 2016-2018 Dovecot authors, see the included COPYING file
+.TH DOVEADM\-PROXY 1 "2016-04-26" "Dovecot v2.3" "Dovecot"
+.SH NAME
+doveadm\-fs \- Interact with the abstract mail storage filesystem
+.\"------------------------------------------------------------------------
+.SH SYNOPSIS
+.BR doveadm " [" \-Dv ]
+[\fB\-f\fP \fIformatter\fP]
+.BI fs \ command
+.RI [ ARGUMENTS ]
+.\"------------------------------------------------------------------------
+.SH DESCRIPTION
+The
+.B doveadm fs
+.I commands
+are used to abstractly interact with the storage backend defined in the
+Dovecot configuration. It allows access to the mailbox structure without
+needing to know details of how the storage backend is architected.
+.\"------------------------------------------------------------------------
+@INCLUDE:global-options-formatter@
+.\" --- command specific options --- "/.
+.PP
+This command uses by default the
+.B table
+output formatter.
+.\"------------------------------------------------------------------------
+.SH COMMANDS
+.SS fs copy
+.B doveadm fs copy
+.I fs-driver
+.I fs-args
+.I source-path
+.I dest-path
+.PP
+Copy source path to the destination path.
+.\"-------------------------------------
+.SS fs delete
+.B doveadm fs delete
+[\fB\-R\fP] [\fB\-n\fP \fIcount\fP]
+.I fs-driver
+.I fs-args
+.I path
+[\fIpath\fP ...]
+.PP
+Delete all data associated with the path provided.
+.\"-------------------------------------
+.SS fs get
+.B doveadm fs get
+.I fs-driver
+.I fs-args
+.I path
+.PP
+Retrieve data associated with the path provided.
+.\"-------------------------------------
+.SS fs iter
+.B doveadm fs iter
+.I fs-driver
+.I fs-args
+.I path
+.PP
+Iterate through all data files in the path provided.
+.\"-------------------------------------
+.SS fs iter-dirs
+.B doveadm fs iter-dirs
+.I fs-driver
+.I fs-args
+.I path
+.PP
+Iterate through all directories in the path provided.
+.\"-------------------------------------
+.SS fs put
+.B doveadm fs put
+[\fB\-h\fP \fIhash\fP]
+.I fs-driver
+.I fs-args
+.I input_path
+.I path
+.PP
+Store data at the path provided.
+.\"-------------------------------------
+.SS fs stat
+.B doveadm fs stat
+.I fs-driver
+.I fs-args
+.I path
+.PP
+Retrieve files status for the path provided. Currently, only the total size
+(in bytes) of the item is returned.
+.\"------------------------------------------------------------------------
+@INCLUDE:reporting-bugs@
+.\"------------------------------------------------------------------------
+.SH SEE ALSO
+.BR doveadm (1)
diff --git a/doc/man/doveadm-fts.1.in b/doc/man/doveadm-fts.1.in
new file mode 100644
index 0000000..0c9e6a1
--- /dev/null
+++ b/doc/man/doveadm-fts.1.in
@@ -0,0 +1,168 @@
+.\" Copyright (c) 2014-2018 Dovecot authors, see the included COPYING file
+.TH DOVEADM\-FTS 1 "2015-05-09" "Dovecot v2.3" "Dovecot"
+.SH NAME
+doveadm\-fts \- Manipulate the Full Text Search (FTS) index
+.\"------------------------------------------------------------------------
+.SH SYNOPSIS
+.BR doveadm " [" \-Dv ]
+.\" [\fB\-f\fP \fIformatter\fP]
+.BI fts \ command
+.RI [ OPTIONS ]\ [ ARGUMENTS ]
+.\"------------------------------------------------------------------------
+.SH DESCRIPTION
+The
+doveadm fts
+.I COMMANDS
+can be used to manipulate the Full Text Search (FTS) index.
+.\"------------------------------------------------------------------------
+.\" @INCLUDE:global-options-formatter@
+@INCLUDE:global-options@
+.\" --- command specific options --- "/.
+.PP
+This command uses by default the output formatter
+.B flow
+(without the
+.IR key =
+prefix).
+.PP
+Command specific
+.IR options :
+.\"-------------------------------------
+@INCLUDE:option-A@
+.\"-------------------------------------
+@INCLUDE:option-F-file@
+.\"-------------------------------------
+@INCLUDE:option-S-socket@
+.\"-------------------------------------
+@INCLUDE:option-u-user@
+.\"------------------------------------------------------------------------
+.SH ARGUMENTS
+.TP
+.I namespace
+The name of a namespace, e.g. the name of the shared namespace.
+When no namespace was given, the user\(aqs private namespace will be used.
+.\"------------------------------------------------------------------------
+.SH COMMANDS
+.SS fts optimize
+.B doveadm fts optimize
+[\fB\-u\fP \fIuser\fP|\fB\-A\fP|\fB\-F\fP \fIfile\fP]
+[\fB\-S\fP \fIsocket_path\fP]
+.RI [ namespace ]
+.PP
+Optimize the full text search index.
+This is also done automatically by the full text search engines, but this
+enforces it to happen.
+.\"-------------------------------------
+.SS fts rescan
+.B doveadm fts rescan
+[\fB\-u\fP \fIuser\fP|\fB\-A\fP|\fB\-F\fP \fIfile\fP]
+[\fB\-S\fP \fIsocket_path\fP]
+.RI [ namespace ]
+.PP
+Scan what mails exist in the full text search index and compare those to
+what actually exist in mailboxes.
+This removes mails from the index that have already been expunged and
+makes sure that the next
+.B doveadm index
+will index all the missing mails (if any). Note that currently most FTS
+backends do not implement this properly, but instead they delete all the
+FTS indexes. This may change in the future versions.
+.\"-------------------------------------
+.SS fts check fast
+.B doveadm fts check fast
+[\fB\-u\fP \fIuser\fP|\fB\-A\fP|\fB\-F\fP \fIfile\fP]
+[\fB\-S\fP \fIsocket_path\fP]
+.RI [ \--refresh ]
+.RI [ \--print-mismatches-only ]
+.RI [ namespace ]
+.PP
+This command exists only when the fts_dovecot plugin (Dovecot Pro FTS) is
+loaded.
+.PP
+This command can be used to check FTS indexes for consistency. It performs
+a fast check using only information in local caches (fts.S, metacache).
+.PP
+.\"-------------------------------------
+.TP
+.B \--refresh
+Refresh any necessary local caches for the command to run successfully.
+This can be used if the command otherwise fails with exit code 68.
+.\"-------------------------------------
+.TP
+.B \--print-mismatches-only
+Print only mailboxes that have inconsistencies.
+.\"-------------------------------------
+.RE
+.PP
+Exit codes:
+.PP
+.\"-------------------------------------
+.TP
+.B 0
+The mailbox is fully consistent
+.\"-------------------------------------
+.TP
+.B 2
+The mailbox is not fully consistent
+.\"-------------------------------------
+.TP
+.B 68
+There is not enough information in local metacache to know whether the
+mailbox is fully consistent. Use either the
+.B \--refresh
+parameter or the "full" check.
+.\"-------------------------------------
+.RE
+.PP
+.\"-------------------------------------
+.SS fts check full
+.B doveadm fts check full
+[\fB\-u\fP \fIuser\fP|\fB\-A\fP|\fB\-F\fP \fIfile\fP]
+[\fB\-S\fP \fIsocket_path\fP]
+.RI [ \--print-details ]
+.RI [ \--print-mismatches-only ]
+.RI [ namespace ]
+.PP
+This command exists only when the fts_dovecot plugin (Dovecot Pro FTS) is
+loaded.
+.PP
+This command can be used to check FTS indexes for consistency. It performs
+a full check to give detailed output of inconsistencies.
+.PP
+.\"-------------------------------------
+.TP
+.B \--print-details
+Print also IMAP UID numbers and FTS triplet names for each email.
+.\"-------------------------------------
+.TP
+.B \--print-mismatches-only
+Print only mailboxes (or emails, with
+.B \--print-details
+that have inconsistencies.
+.\"-------------------------------------
+.RE
+.PP
+Exit codes:
+.PP
+.\"-------------------------------------
+.TP
+.B 0
+The mailbox is fully consistent
+.\"-------------------------------------
+.TP
+.B 2
+The mailbox is not fully consistent
+.\"-------------------------------------
+.RE
+.PP
+.\"------------------------------------------------------------------------
+@INCLUDE:reporting-bugs@
+.\"------------------------------------------------------------------------
+.SH SEE ALSO
+.BR doveadm (1),
+.BR doveadm\-index (1)
+.\"-------------------------------------
+.PP
+Additional resources:
+.IP "Full text search indexing"
+http://wiki2.dovecot.org/Plugins/FTS \ No newline at end of file
diff --git a/doc/man/doveadm-help.1.in b/doc/man/doveadm-help.1.in
new file mode 100644
index 0000000..83064ba
--- /dev/null
+++ b/doc/man/doveadm-help.1.in
@@ -0,0 +1,36 @@
+.\" Copyright (c) 2010-2018 Dovecot authors, see the included COPYING file
+.TH DOVEADM\-HELP 1 "2010-06-22" "Dovecot v2.3" "Dovecot"
+.SH NAME
+doveadm\-help \- Show information about doveadm commands
+.\"------------------------------------------------------------------------
+.SH SYNOPSIS
+.BR doveadm " [" \-Dv "] " help
+.RI [ command ]
+.\"------------------------------------------------------------------------
+.SH DESCRIPTION
+.br
+With no
+.I command
+argument given,
+.B doveadm help
+will print:
+.TP 4
+*
+the synopsis for the most of the
+.BR doveadm (1)
+commands.
+.TP
+*
+groups of commands, e.g.
+.BR log " or " mailbox .
+.PP
+When the name of a
+.I command
+(or a group) was given, it will show the man page for that command.
+.\"------------------------------------------------------------------------
+@INCLUDE:global-options@
+.\"------------------------------------------------------------------------
+@INCLUDE:reporting-bugs@
+.\"------------------------------------------------------------------------
+.SH SEE ALSO
+.BR doveadm (1) \ No newline at end of file
diff --git a/doc/man/doveadm-import.1.in b/doc/man/doveadm-import.1.in
new file mode 100644
index 0000000..cec27e9
--- /dev/null
+++ b/doc/man/doveadm-import.1.in
@@ -0,0 +1,142 @@
+.\" Copyright (c) 2010-2018 Dovecot authors, see the included COPYING file
+.TH DOVEADM\-IMPORT 1 "2015-08-09" "Dovecot v2.3" "Dovecot"
+.SH NAME
+doveadm\-import \- Import messages matching given search query
+.\"------------------------------------------------------------------------
+.SH SYNOPSIS
+.BR doveadm " [" \-Dv "] " import " [" \-S
+.IR socket_path ]
+.RB [ \-U
+.IR source_user ]
+.RB [ \-s ]
+.I source_location dest_parent search_query
+.br
+.\"-------------------------------------
+.BR doveadm " [" \-Dv "] " import " [" \-S
+.IR socket_path ]
+.RB [ \-U
+.IR source_user ]
+.RB [ \-s ]
+.BI \-A " source_location dest_parent search_query"
+.br
+.\"-------------------------------------
+.BR doveadm " [" \-Dv "] " import " [" \-S
+.IR socket_path ]
+.RB [ \-s ]
+.BI \-F " file source_location dest_parent search_query"
+.br
+.\"-------------------------------------
+.BR doveadm " [" \-Dv "] " import " [" \-S
+.IR socket_path ]
+.RB [ \-U
+.IR source_user ]
+.RB [ \-s ]
+.BI \-u " user source_location dest_parent search_query"
+.\"------------------------------------------------------------------------
+.SH DESCRIPTION
+This command can be used to import mails from another mail storage specified by
+.I source_location
+to one or more user\(aqs mailboxes. All the mailboxes are imported under the
+given
+.I dest_parent
+mailbox, or to root level if
+.I dest_parent
+is empty (\(dq\(dq). The
+.I search_query
+can be used to restrict which mailboxes or messages are imported. By default
+the import is done in destination user's context, you can use \-U to change
+this.
+
+In the first form,
+.BR doveadm (1)
+will executed the
+.B import
+action with the environment of the logged in system user.
+.PP
+In the second form, the mails will be imported for all users.
+.PP
+In the third form, the mails will be imported for all users listed in the
+given
+.IR file .
+.PP
+In the fourth form, the mails will be imported only for given
+.IR user (s).
+.\"------------------------------------------------------------------------
+@INCLUDE:global-options@
+.\" --- command specific options --- "/.
+.PP
+Command specific
+.IR options :
+.\"-------------------------------------
+@INCLUDE:option-A@
+.\"-------------------------------------
+@INCLUDE:option-F-file@
+.\"-------------------------------------
+@INCLUDE:option-S-socket@
+.\"-------------------------------------
+.TP
+.B \-s
+When the
+.B \-s
+option is present,
+.I dest_parent
+and all new mailboxes under it will be subscribed to.
+.\"-------------------------------------
+@INCLUDE:option-u-user@
+.\"------------------------------------------------------------------------
+.TP
+.B \-U username
+When the
+.B \-U
+option is present, the source box is opened with given username.
+.SH ARGUMENTS
+.TP
+.I dest_parent
+The name of the destination mailbox, under which the mails should be
+imported.
+.BR doveadm (1)
+will create the
+.I dest_parent
+mailbox if it doesn\(aqt exist.
+.TP
+.I search_query
+Copy messages matching this search query.
+See
+.BR doveadm\-search\-query (7)
+for details.
+.TP
+.I source_location
+This argument specifies the mailbox format and location of the source
+location. The syntax is the same as for the
+.I mail_location
+setting.
+For example:
+.B maildir:/backup/20101126/jane.doe/Maildir
+or
+.B mdbox:/srv/mail/john.doe/mdbox:ALT=/nfsmount/john.doe/mdbox
+.\"------------------------------------------------------------------------
+.SH EXAMPLE
+This example imports all mails from a backup under a
+.I backup\-20101026
+mailbox:
+.PP
+.nf
+.B doveadm import \-u jane.doe@example.org \(rs
+.B mdbox:/backup/20101026/jane.doe/mdbox backup\-20101026 all
+.fi
+.PP
+Another example that imports only messages from foo@example.org in the
+backup mdbox\(aqs INBOX to jane\(aqs INBOX:
+.PP
+.nf
+.B doveadm import \-u jane.doe@example.org \(rs
+.B mdbox:~/mdbox\-backup \(dq\(dq mailbox INBOX from foo@example.org
+.fi
+.\"------------------------------------------------------------------------
+@INCLUDE:reporting-bugs@
+.\"------------------------------------------------------------------------
+.SH SEE ALSO
+.BR doveadm (1),
+.BR doveadm\-fetch (1),
+.BR doveadm\-search (1),
+.BR doveadm\-search\-query (7)
diff --git a/doc/man/doveadm-index.1.in b/doc/man/doveadm-index.1.in
new file mode 100644
index 0000000..dafeb16
--- /dev/null
+++ b/doc/man/doveadm-index.1.in
@@ -0,0 +1,102 @@
+.\" Copyright (c) 2010-2018 Dovecot authors, see the included COPYING file
+.TH DOVEADM\-INDEX 1 "2015-05-09" "Dovecot v2.3" "Dovecot"
+.SH NAME
+doveadm\-index \- Index mailboxes
+.\"------------------------------------------------------------------------
+.SH SYNOPSIS
+.BR doveadm " [" \-Dv "] " index " [" \-S
+.IR socket_path ]
+.RB [ \-q "] [" \-n
+.IR max_recent "] " mailbox
+.\"-------------------------------------
+.br
+.BR doveadm " [" \-Dv "] " index " [" \-S
+.IR socket_path "] "
+.B \-A
+.RB [ \-q "] [" \-n
+.IR max_recent "] " mailbox
+.\"-------------------------------------
+.br
+.BR doveadm " [" \-Dv "] " index " [" \-S
+.IR socket_path "] "
+.BI \-F " file"
+.RB [ \-q "] [" \-n
+.IR max_recent "] " mailbox
+.\"-------------------------------------
+.br
+.BR doveadm " [" \-Dv "] " index " [" \-S
+.IR socket_path "] "
+.BI \-u \ user
+.RB [ \-q "] [" \-n
+.IR max_recent "] " mailbox
+.\"------------------------------------------------------------------------
+.SH DESCRIPTION
+Add unindexed messages in a mailbox into index/cache file. If full text
+search is enabled, also add unindexed messages to the fts database.
+.PP
+The caching adds only the fields that were previously added to the
+mailbox\(aqs caching decisions, so it won\(aqt do anything useful for
+mailboxes that user\(aqs client hasn\(aqt accessed yet. You can use
+.B doveadm dump
+command to show a specific mailbox\(aqs current caching decisions.
+.PP
+Messages can also be added automatically to full text search index using:
+.sp
+.nf
+plugin {
+ ...
+ fts_autoindex = yes
+}
+.fi
+in
+.IR @pkgsysconfdir@/conf.d/90\-plugin.conf .
+.\"------------------------------------------------------------------------
+@INCLUDE:global-options@
+.\" --- command specific options --- "/.
+.PP
+Command specific
+.IR options :
+.\"-------------------------------------
+@INCLUDE:option-A@
+.\"-------------------------------------
+@INCLUDE:option-F-file@
+.\"-------------------------------------
+.TP
+.BI \-n \ max_recent
+An integer value, which specifies the maximum number of \(rsRecent
+messages in mailboxes.
+If the mailbox contains more than
+.I max_recent
+messages with \(rsRecent flag set, the mailbox will not be indexed.
+This may be useful to avoid unnecessary indexing for large mailboxes that
+are never opened.
+.\"-------------------------------------
+.TP
+.B \-q
+Queues the indexing to be run by indexer process.
+Without \-q the indexing is done directly by the
+.BR doveadm (1)
+process.
+Some backends like fts\-lucene can\(aqt handle multiple processes updating
+the indexes simultaneously, so \-q should usually be used on production.
+.\"-------------------------------------
+@INCLUDE:option-S-socket@
+.\"-------------------------------------
+@INCLUDE:option-u-user@
+.\"------------------------------------------------------------------------
+.SH ARGUMENTS
+.TP
+.I mailbox
+The name of the mailbox to index.
+.\"------------------------------------------------------------------------
+.SH EXAMPLE
+Index bob\(aqs INBOX:
+.PP
+.nf
+.B doveadm index \-u bob INBOX
+.fi
+.\"------------------------------------------------------------------------
+@INCLUDE:reporting-bugs@
+.\"------------------------------------------------------------------------
+.SH SEE ALSO
+.BR doveadm (1) \ No newline at end of file
diff --git a/doc/man/doveadm-instance.1.in b/doc/man/doveadm-instance.1.in
new file mode 100644
index 0000000..b3e5dc9
--- /dev/null
+++ b/doc/man/doveadm-instance.1.in
@@ -0,0 +1,63 @@
+.\" Copyright (c) 2012-2018 Dovecot authors, see the included COPYING file
+.TH DOVEADM\-INSTANCE 1 "2012-02-16" "Dovecot v2.3" "Dovecot"
+.SH NAME
+doveadm\-instance \- Manage the list of running Dovecot instances
+.\"------------------------------------------------------------------------
+.SH SYNOPSIS
+.BR doveadm " [" \-Dv "] [" \-f
+.IR formatter ]
+.B instance list
+.br
+.BR doveadm " [" \-Dv "] " "instance remove"
+.IR name " | " base_dir
+.\"------------------------------------------------------------------------
+.SH DESCRIPTION
+The
+.B doveadm instance
+commands are used to manage the list of Dovecot instances running on the
+server.
+In most installations there is only one Dovecot instance, but in some cases
+is may be useful to have more (e.g. running director proxy and backend in
+the same server).
+.PP
+Instances are added to the list automatically when Dovecot is started.
+Each instance is uniquely identified by its
+.I base_dir
+setting.
+Instances can be named by setting
+.I instance_name
+in each instance\(aqs
+.IR dovecot.conf .
+When an instance is named, it can be accessed easily by giving
+.BI \-i\ instance_name
+command line parameter for Dovecot binaries (e.g. doveadm).
+.\"------------------------------------------------------------------------
+@INCLUDE:global-options-formatter@
+.\"------------------------------------------------------------------------
+.SH ARGUMENTS
+.TP
+.I name
+The value of an instance\(aqs
+.I instance_name
+setting.
+.\"-------------------------------------
+.TP
+.I base_dir
+The base directory of a Dovecot instance.
+.\"------------------------------------------------------------------------
+.SH COMMANDS
+.SS instance list
+.B doveadm instance list
+.PP
+This command lists the seen Dovecot instances.
+.\"-------------------------------------
+.SS instance remove
+.B doveadm instance remove
+.IR name " | " base_dir
+.PP
+This command removes the specified instance.
+.\"------------------------------------------------------------------------
+@INCLUDE:reporting-bugs@
+.\"------------------------------------------------------------------------
+.SH SEE ALSO
+.BR doveadm (1) \ No newline at end of file
diff --git a/doc/man/doveadm-kick.1.in b/doc/man/doveadm-kick.1.in
new file mode 100644
index 0000000..4bf10ed
--- /dev/null
+++ b/doc/man/doveadm-kick.1.in
@@ -0,0 +1,138 @@
+.\" Copyright (c) 2010-2018 Dovecot authors, see the included COPYING file
+.TH DOVEADM\-KICK 1 "2010-06-12" "Dovecot v2.3" "Dovecot"
+.SH NAME
+doveadm\-kick \- Disconnect users by user name and/or IP address
+.\"------------------------------------------------------------------------
+.SH SYNOPSIS
+.BR doveadm " [" \-Dv "] " kick " [ \-a
+.IR anvil_socket_path ]
+.RB [ \-f ]
+.I user
+.\"-------------------------------------
+.br
+.BR doveadm " [" \-Dv "] " kick " [ \-a
+.IR anvil_socket_path ]
+.RB [ \-f ]
+\fIip\fP[\fB/\fP\fImask\fP]
+.\"-------------------------------------
+.br
+.BR doveadm " [" \-Dv "] " kick " [ \-a
+.IR anvil_socket_path ]
+.RB [ \-f ]
+.I user
+\fIip\fP[\fB/\fP\fImask\fP]
+.\"------------------------------------------------------------------------
+.SH DESCRIPTION
+.BR doveadm \(aqs\ kick
+command is used to disconnect users by
+.I user
+name and/or the
+.I ip
+address, from which they are connected.
+.PP
+In the first form, all users, whose login name matches the
+.I user
+argument, will be disconnected.
+.PP
+In the second form, all users, connected from the given IP address or
+network range, will be disconnected.
+.PP
+In the last form, only users connected from the given IP address or
+networks range and a matching login name will be disconnected.
+.\"------------------------------------------------------------------------
+@INCLUDE:global-options@
+.\" --- command specific options --- "/.
+.PP
+Command specific
+.IR options :
+.\"-------------------------------------
+.TP
+.BI \-a\ anvil_socket_path
+This option is used to specify an absolute path to an alternative UNIX
+domain socket.
+.sp
+By default
+.BR doveadm (1)
+will use the socket
+.IR @rundir@/anvil .
+The socket may be located in another directory, when the default
+.I base_dir
+setting was overridden in
+.IR @pkgsysconfdir@/dovecot.conf .
+.\"-------------------------------------
+.TP
+.B \-f
+Enforce the disconnect, even when there are multiple
+.IR user s,
+from different networks, connected to a single process.
+This option may be only required when you have configured something like:
+.sp
+.nf
+service imap {
+ ...
+ client_limit = \fI1+n\fP
+ service_count = 0
+ ...
+}
+.fi
+.\"------------------------------------------------------------------------
+.SH ARGUMENTS
+.TP
+.IR ip [/ mask ]
+.I ip
+or
+.IB ip /\c
+.I mask
+is the host or network, from which the users are connected.
+.\"-------------------------------------
+.TP
+.I user
+Is a
+.IR user \(aqs
+login name.
+Depending on the configuration, a login name may be for example
+.BR jane " or " john@example.com .
+It\(aqs also possible to use
+.RB \(aq * \(aq
+and
+.RB \(aq ? \(aq
+wildcards (e.g. \-u *@example.org).
+.\"------------------------------------------------------------------------
+.SH EXAMPLE
+If you don\(aqt want to disconnect all users at once, you can check
+who\(aqs currently logged in.
+The first example demonstrates how to disconnect all users whose login name
+is 3 characters long and begins with
+.BR ba .
+.sp
+.nf
+.B doveadm who \-1 ja*
+username proto pid ip
+jane imap 8192 ::1
+james imap 8203 2001:db8:543:2::1
+.B doveadm kick ba?
+kicked connections from the following users:
+bar baz
+.fi
+.PP
+The next example shows how to kick user foo\(aqs connections from 192.0.2.*.
+.sp
+.nf
+.B doveadm who \-1 foo
+username proto pid ip
+foo imap 8135 fd95:4eed:38ba::25
+foo imap 9112 192.0.2.53
+foo imap 8216 192.0.2.111
+.B doveadm kick foo 192.0.2.0/24
+kicked connections from the following users:
+foo
+.B doveadm who f*
+username # proto (pids) (ips)
+foo 1 imap (8135) (fd95:4eed:38ba::25)
+.fi
+.\"------------------------------------------------------------------------
+@INCLUDE:reporting-bugs@
+.\"------------------------------------------------------------------------
+.SH SEE ALSO
+.BR doveadm (1),
+.BR doveadm\-who (1) \ No newline at end of file
diff --git a/doc/man/doveadm-log.1.in b/doc/man/doveadm-log.1.in
new file mode 100644
index 0000000..6662d7d
--- /dev/null
+++ b/doc/man/doveadm-log.1.in
@@ -0,0 +1,122 @@
+.\" Copyright (c) 2010-2018 Dovecot authors, see the included COPYING file
+.TH DOVEADM\-LOG 1 "2013-11-24" "Dovecot v2.3" "Dovecot"
+.SH NAME
+doveadm\-log \- Locate, test or reopen Dovecot\(aqs log files
+.\"------------------------------------------------------------------------
+.SH SYNOPSIS
+.BR doveadm " [" \-Dv "] " "log errors" " [" \-s
+.IR min_timestamp ]
+.\"-------------------------------------
+.br
+.BR doveadm " [" \-Dv "] " "log find"
+.RI [ directory ]
+.\"-------------------------------------
+.br
+.BR doveadm " [" \-Dv "] " "log reopen"
+.\"-------------------------------------
+.br
+.BR doveadm " [" \-Dv "] " "log test"
+.\"------------------------------------------------------------------------
+.SH DESCRIPTION
+The
+.B doveadm log
+.I commands
+are used to locate and reopen the log files of
+.BR dovecot (1).
+It\(aqs also possible to test the configured targets of the
+.I *log_path
+settings.
+.\"------------------------------------------------------------------------
+@INCLUDE:global-options@
+.\"------------------------------------------------------------------------
+.SH COMMANDS
+.SS log errors
+.BR "doveadm log errors" " [" \-s
+.IR min_timestamp ]
+.PP
+The
+.B log errors
+command is used to show the last \- up to 1,000 \- errors and warnings.
+If no output is generated, no errors have occurred since the last start.
+.PP
+.TP
+.BI \-s \ min_timestamp
+An integer value, representing seconds since the epoch \- also known as
+Unix timestamp.
+When a min_timestamp was given,
+.BR doveadm (1)
+will only show errors occurred since that point in time.
+.\"-------------------------------------
+.SS log find
+.B doveadm log find
+.RI [ directory ]
+.PP
+The
+.B log find
+command is used to show the location of the log files, to which
+.BR dovecot (1)
+sends its log messages.
+If
+.BR dovecot (1)
+logs its messages through
+.BR syslogd (8)
+and
+.BR doveadm (1)
+could not find any log files, you can specify the
+.I directory
+where your syslogd writes its log files.
+.\"-------------------------------------
+.SS log reopen
+.B doveadm log reopen
+.PP
+This command causes
+.B doveadm
+to send a SIGUSR1 signal to master process, which causes it to
+reopen all log files configured in the
+.IR log_path ,
+.I info_log_path
+and
+.I debug_log_path
+settings.
+These settings are configured in
+.IR @pkgsysconfdir@/conf.d/10\-logging.conf .
+.br
+The master process also signals the log process to do the same.
+This is mainly useful after manually rotating the log files.
+.\"-------------------------------------
+.SS log test
+.B doveadm log test
+.PP
+This command causes
+.B doveadm
+to write the message \(dqThis is Dovecot\(aqs
+.I priority
+log
+.RI ( timestamp )\(dq
+to the configured log files.
+The used priorities are:
+.BR debug ,
+.BR info ,
+.BR warning ,
+.BR error
+and
+.BR fatal .
+.\"------------------------------------------------------------------------
+.SH EXAMPLE
+This example shows how to locate the log files used by
+.BR dovecot (1).
+.sp
+.nf
+.B doveadm log find
+Looking for log files from /var/log
+Debug: /var/log/dovecot.debug
+Info: /var/log/mail.log
+Warning: /var/log/mail.log
+Error: /var/log/mail.log
+Fatal: /var/log/mail.log
+.fi
+.\"------------------------------------------------------------------------
+@INCLUDE:reporting-bugs@
+.\"------------------------------------------------------------------------
+.SH SEE ALSO
+.BR doveadm (1) \ No newline at end of file
diff --git a/doc/man/doveadm-mailbox-cryptokey.1.in b/doc/man/doveadm-mailbox-cryptokey.1.in
new file mode 100644
index 0000000..c6ebf66
--- /dev/null
+++ b/doc/man/doveadm-mailbox-cryptokey.1.in
@@ -0,0 +1,96 @@
+.\" Copyright (c) 2010-2018 Dovecot authors, see the included COPYING file
+.TH DOVEADM\-MAILBOX\-CRYPTOKEY 1 "2016-01-12" "Dovecot v2.3" "Dovecot"
+.SH NAME
+doveadm\-mailbox\-cryptokey \- Mail crypt plugin management
+.\"------------------------------------------------------------------------
+.SH SYNOPSIS
+.BR doveadm " -o
+.IR plugin/mail_crypt_private_password=password "
+.BR [ " \-Dv " ] [ " \-f
+.IR formatter " ]
+.BR " mailbox cryptokey export|generate|list|password " [ " \-u
+.IR username
+.BR | " \-A " ] [ " \-S " ] [ " \-F "
+.IR file " ]
+.BR [ "
+.IR other "
+.IR options " ]
+.br
+.SH DESCRIPTION
+Generate new keypair for user or folder. The new keypair is marked as active.
+.SH OPTIONS
+.IR options :
+.\"-------------------------------------
+@INCLUDE:option-A@
+.\"-------------------------------------
+@INCLUDE:option-F-file@
+.\"-------------------------------------
+@INCLUDE:option-S-socket@
+.\"-------------------------------------
+@INCLUDE:option-u-user@
+.\"------------------------------------------------------------------------
+.TP
+.BI \-o\ plugin/mail_crypt_private_password=password
+Dovecot option, needed if you use password protected keys
+.SH SUBCOMMANDS
+.BR export " [ " \-U " ] " |
+.IR mailbox-mask
+.TP
+.B \-U
+Operate on user keypair only
+.PP
+Exports user's or folder's keypair(s) in PEM format.
+If the keys are password protected, \-o is needed.
+.PP
+.\"------------------------------------------------------------------------
+.BR generate " [ " \-Rf " [ " \-U " ] " |
+.IR mailbox-mask " ]
+.TP
+.B \-U
+Operate on user keypair only
+.TP
+.BI \-R
+Re-encrypt all folder keys with current active user key
+.TP
+.B \-f
+Force keypair creation, normally keypair is only created if none found
+.PP
+Generates new keypair for user or folder. If you want to generate new user key
+and use it to secure your folder keys, use generate \-u username \-UR.
+.PP
+If you want to password-protect your key here, use \-o.
+.PP
+.\"------------------------------------------------------------------------
+.BR list " [ " \-U " ] " |
+.IR mailbox-mask
+.TP
+.B \-U
+Operate on user keypair only
+.PP
+List all keys for user or folder. No password is required.
+.PP
+.\"------------------------------------------------------------------------
+.BR password " [ " \-N " | " \-n
+.IR password " ]
+.BR " [ " \-O " | " \-o
+.IR password " ]
+.BR [ " \-C " ]
+.TP
+.B \-O
+Ask for old password
+.TP
+.BI \-o\ old-password
+Provide old password
+.TP
+.B \-N
+Ask for new password
+.TP
+.BI \-n\ new-password
+Provide new password
+.TP
+.B \-C
+Clear (unset/remove) password. Your key will not be protected by password.
+.PP
+Set, change or clear password from your user key.
+.SH SEE ALSO
+.BR doveadm(1)
diff --git a/doc/man/doveadm-mailbox.1.in b/doc/man/doveadm-mailbox.1.in
new file mode 100644
index 0000000..8e0bfee
--- /dev/null
+++ b/doc/man/doveadm-mailbox.1.in
@@ -0,0 +1,409 @@
+.\" Copyright (c) 2010-2018 Dovecot authors, see the included COPYING file
+.TH DOVEADM\-MAILBOX 1 "2015-05-09" "Dovecot v2.3" "Dovecot"
+.SH NAME
+doveadm\-mailbox \- Commands related to handling mailboxes
+.\"------------------------------------------------------------------------
+.SH SYNOPSIS
+.BR doveadm " [" \-Dv "] [" \-f
+.IR formatter "] " mailbox_cmd " [" options "] [" arguments ]
+.\"------------------------------------------------------------------------
+.SH DESCRIPTION
+.B doveadm mailbox
+can be used to query and modify mailboxes.
+.\"------------------------------------------------------------------------
+@INCLUDE:global-options-formatter@
+.\" --- command specific options --- "/.
+.PP
+Command specific
+.IR options :
+.\"-------------------------------------
+@INCLUDE:option-A@
+.\"-------------------------------------
+@INCLUDE:option-F-file@
+.\"-------------------------------------
+@INCLUDE:option-S-socket@
+.\"-------------------------------------
+@INCLUDE:option-u-user@
+.\"------------------------------------------------------------------------
+.SH ARGUMENTS
+.TP
+.I mailbox
+Is the name of a
+.IR mailbox ,
+as visible to IMAP clients, except in UTF\-8 format. The hierarchy
+separator between a parent and child mailbox is commonly
+.RB \(aq / \(aq
+or
+.RB \(aq . \(aq,
+but this depends on your selected mailbox storage format and namespace
+configuration. The mailbox names may also require a namespace prefix.
+.\"------------------------------------------------------------------------
+.SH COMMANDS
+.SS mailbox create
+.B doveadm mailbox create
+[\fB\-A\fP|\fB\-u\fP \fIuser\fP|\fB\-F\fP \fIfile\fP]
+[\fB\-S\fP \fIsocket_path\fP]
+.RB [ \-g
+.IR guid ]
+.RB [ \-s ]
+.IR mailbox\ ...
+.PP
+This command is used to create one or more mailboxes.
+The mailbox format of the created mailboxes depends on the
+.I mail_location
+setting, or the user\(aqs
+.I mail
+field, returned by the userdb.
+.PP
+.TP
+.BI \-g \ guid
+Create the mailbox with the specified GUID.
+.TP
+.B \-s
+When this
+option was given, the created mailboxes will be also added to the user\(aqs
+subscriptions.
+.\"------------------------------------------------------------------------
+.SS mailbox cryptokey
+.B mailbox cryptokey export|generate|list|password
+.PP
+This command is used to manage mail crypt plugin cryptographic keys.
+Please see doveadm-mailbox-cryptokey(1) for more details.
+.\"------------------------------------------------------------------------
+.SS mailbox delete
+.B doveadm mailbox delete
+[\fB\-A\fP|\fB\-u\fP \fIuser\fP|\fB\-F\fP \fIfile\fP]
+[\fB\-S\fP \fIsocket_path\fP]
+.RB [ \-s ]
+.RB [ \-r ]
+.RB [ \-e ]
+.RB [ \-Z ]
+.IR mailbox\ ...
+.PP
+This command deletes a mailbox and expunges all the messages it contains.
+If the mailbox has any children, they won\(aqt be deleted, unless
+.B \-r
+is given.
+.PP
+.\"-------------------------------------
+.TP
+.B \-r
+Delete mailboxes recursively
+.\"-------------------------------------
+.TP
+.B \-s
+Unsubscribe deleted mailboxes.
+.\"-------------------------------------
+.TP
+.B \-e
+Require mailboxes to be empty before deleting.
+.\"-------------------------------------
+.TP
+.B \-Z
+Delete the mailbox as efficiently as possible, but the user may not be in fully consistent state afterwards. For example quota may be wrong. This option is mainly useful when deleting the entire user.
+.\"------------------------------------------------------------------------
+.SS mailbox list
+.B doveadm mailbox list
+.RB [ \-7 | \-8 ]
+[\fB\-A\fP|\fB\-u\fP \fIuser\fP|\fB\-F\fP \fIfile\fP]
+[\fB\-S\fP \fIsocket_path\fP]
+.RB [ \-s ]
+[\fImailbox\fP ...]
+.PP
+To get an overview of existing mailboxes use this command.
+It\(aqs also possible to use wildcards in the
+.I mailbox
+name.
+.br
+When the
+.B \-s
+option is present, only subscribed mailboxes will be listed. Listed
+subscriptions may also contain mailboxes that are already deleted.
+.PP
+.\"-------------------------------------
+.TP
+.B \-7
+Lists the mailboxes with mUTF\-7 encoding.
+.\"-------------------------------------
+.TP
+.B \-8
+Lists the mailboxes with UTF\-8 encoding.
+.\"------------------------------------------------------------------------
+.SS mailbox mutf7
+.B doveadm mailbox mutf7
+.RB [ \-7 | \-8 ]
+.IR name\ ...
+.PP
+The
+.B mailbox mutf7
+command may be used to convert the international mailbox
+.I name
+into a modified version of the UTF\-7 encoding and vice versa.
+See RFC 3501, section 5.1.3 (Mailbox International Naming Convention).
+.PP
+.\"-------------------------------------
+.TP
+.B \-7
+Indicates that the
+.IR name \(aqs
+string representation is mUTF\-7 encoded and it should be converted to
+UTF\-8.
+.\"-------------------------------------
+.TP
+.B \-8
+Indicates that the
+.IR name \(aqs
+is UTF\-8 encoded and should be converted to mUTF\-7 (default).
+.TP
+.I name
+One or more mailbox names that should be converted.
+.\"------------------------------------------------------------------------
+.SS mailbox rename
+.B doveadm mailbox rename
+[\fB\-A\fP|\fB\-u\fP \fIuser\fP|\fB\-F\fP \fIfile\fP]
+[\fB\-S\fP \fIsocket_path\fP]
+.RB [ \-s ]
+.I old_name
+.I new_name
+.PP
+The
+.B mailbox rename
+command is used to rename the mailbox
+.I old_name
+to
+.IR new_name .
+.br
+When the
+.B \-s
+option is given,
+.I old_name
+will be unsubscribed
+and
+.I new_name
+will be subscribed.
+.\"------------------------------------------------------------------------
+.SS mailbox status
+.BR doveadm " [" \-f
+.IR formatter ]
+.B mailbox status
+[\fB\-A\fP|\fB\-u\fP \fIuser\fP|\fB\-F\fP \fIfile\fP]
+[\fB\-S\fP \fIsocket_path\fP] [\fB\-t\fP]
+.IR "fields mailbox\ " ...
+.PP
+Show the
+.B status
+of one or more mailboxes.
+The
+.I mailbox
+name may also contain wildcards.
+.br
+This command uses by default the output
+.I formatter
+.BR flow .
+.TP
+.B \-t
+Summarize the values of the status
+.I fields
+.BR messages ,
+.BR recent ,
+.BR unseen " and/or"
+.B vsize
+of multiple mailboxes to a sum (total).
+.\"-------------------------------------
+.TP
+.I fields
+Specify the status
+.I fields
+which should be shown.
+In order to specify multiple status
+.IR fields ,
+enclosed them in quotes.
+.RS
+.TP
+.B all
+This is a special status field name.
+It means show all of the following
+.IR fields .
+When the
+.B \-t
+option is present, it means show only the
+.BR messages ,
+.BR recent ,
+.BR unseen " and"
+.B vsize
+.IR fields .
+.TP
+.B guid
+The
+.IR mailbox \(aqs
+globally unique identifier.
+.TP
+.B highestmodseq
+The highest mod\-sequence value of all messages in the
+.IR mailbox .
+.TP
+.B messages
+The number of messages in the
+.IR mailbox .
+.TP
+.B recent
+The number of messages with the \(rsRecent flag set.
+.TP
+.B uidnext
+The next unique identifier value.
+.TP
+.B uidvalidity
+The unique identifier validity value.
+.TP
+.B unseen
+The message sequence number of the first unseen message in the
+.IR mailbox .
+.TP
+.B vsize
+The
+.IR mailbox \(aqs
+virtual size, computed with CRLF line terminators.
+.TP
+.B firstsaved
+Saved time of the first mail in the mailbox.
+.RE
+.PP
+.\"------------------------------------------------------------------------
+.SS mailbox subscribe
+.B doveadm mailbox subscribe
+[\fB\-A\fP|\fB\-u\fP \fIuser\fP|\fB\-F\fP \fIfile\fP]
+[\fB\-S\fP \fIsocket_path\fP]
+.IR mailbox\ ...
+.PP
+This command is used to subscribe one or more mailboxes.
+.\"------------------------------------------------------------------------
+.SS mailbox unsubscribe
+.B doveadm mailbox unsubscribe
+[\fB\-A\fP|\fB\-u\fP \fIuser\fP|\fB\-F\fP \fIfile\fP]
+[\fB\-S\fP \fIsocket_path\fP]
+.IR mailbox\ ...
+.PP
+This command is used to unsubscribe one or more mailboxes.
+.\"------------------------------------------------------------------------
+.SS mailbox update
+.B doveadm mailbox update
+[\fB\-A\fP|\fB\-u\fP \fIuser\fP|\fB\-F\fP]
+[\fB\-S\fP \fIsocket_path\fP]
+[\fB\--mailbox-guid\fP \fIguid\fP]
+[\fB\--uid-validity\fP \fIuid\fP]
+[\fB\--min-next-uid\fP \fIuid\fP]
+[\fB\--min-first-recent-uid\fP \fIuid\fP]
+[\fB\--min-highest-modseq\fP \fIseq\fP]
+[\fB\--min-highest-pvt-modseq\fP \fIseq\fP]
+.IR mailbox\ ...
+.PP
+This command is used to set UID validity, next UID, first recent UID and modification sequence values.
+.PP
+Usually this is only ever to be used during migration, or restoring mailbox after disaster.
+Settings these values is highly discouraged, and is not supported for all mail backends.
+.\"------------------------------------------------------------------------
+.SS mailbox cache purge
+.B doveadm mailbox cache purge
+[\fB\-A\fP|\fB\-u\fP \fIuser\fP|\fB\-F\fP \fIfile\fP]
+[\fB\-S\fP \fIsocket_path\fP]
+.IR mailbox\ ...
+.PP
+Purge the dovecot.index.cache file. Most importantly this frees up disk space
+from mails that were already deleted. Normally there i no need to run this
+command manually, because the compression is also run automatically.
+.\"------------------------------------------------------------------------
+.SS mailbox cache decision
+.B doveadm mailbox cache decision
+[\fB\-A\fP|\fB\-u\fP \fIuser\fP|\fB\-F\fP \fIfile\fP]
+[\fB\-S\fP \fIsocket_path\fP]
+[\fB\--all\fP]
+[\fB\--fields\fP \fIlist of fields\fP]
+[\fB\--last-used\fP \fIunix timestamp\fP]
+[\fB\--decision\fP \fIno|temp|yes\fP]
+.IR mailbox\ ...
+.PP
+This command is used to list or change caching decisions for field(s) in mailbox(es).
+You can list decisions by leaving out decision and last-used parameters.
+.PP
+.\"-------------------------------------
+.TP
+.B \--all
+List or change all fields.
+.\"-------------------------------------
+.TP
+.B \--fields
+List or change these comma/space separated fields.
+.\"-------------------------------------
+.TP
+.B \--decision
+Set field caching decision. Yes means it's always cached.
+Temp means it's provisionally cached.
+No means the field is not cached.
+.\"-------------------------------------
+.TP
+.B \--last-used
+Set field's last used timestamp.
+.\"-------------------------------------
+.RE
+.PP
+NOTE. This command cannot be used to add new fields to cache! \
+You need to first add them to configuration. \
+Setting caching to no will not immediately drop field from cache, \
+it will stop adding the field to cache.
+.\"------------------------------------------------------------------------
+.SS mailbox cache remove
+.B doveadm mailbox cache remove
+[\fB\-A\fP|\fB\-u\fP \fIuser\fP|\fB\-F\fP \fIfile\fP]
+[\fB\-S\fP \fIsocket_path\fP]
+.IR search query
+.PP
+Remove any matching mail(s) from cache.
+.PP
+WARNING! This command can erase ALL cached data, causing system slowness.
+.\"------------------------------------------------------------------------
+.SH EXAMPLE
+List subscribed mailboxes, beginning with \(aqdovecot\(aq, of user bob.
+.sp
+.nf
+.ft B
+doveadm mailbox list \-s \-u bob dovecot*
+.ft P
+dovecot
+dovecot/pigeonhole
+dovecot/pigeonhole/2.0
+.fi
+.\"-------------------------------------
+.PP
+Now have a look at the status of user bob\(aqs dovecot mailboxes.
+.sp
+.nf
+.ft B
+doveadm \-f table mailbox status \-u bob \(dqmessages vsize\(dq dovecot*
+.ft P
+mailbox messages vsize
+dovecot 20501 93968492
+dovecot/pigeonhole 0 0
+dovecot/pigeonhole/2.0 47 323474
+.fi
+.\"-------------------------------------
+.PP
+Converting an internationalized mailbox name from mUTF\-7 to UTF\-8 and
+vice versa.
+.sp
+.nf
+.ft B
+doveadm mailbox mutf7 \-7 \(dq~peter/mail/&U,BTFw\-/&ZeVnLIqe\-\(dq
+.ft P
+~peter/mail/台北/日本語
+.ft B
+doveadm mailbox mutf7 ~peter/mail/台北/日本語
+.ft P
+~peter/mail/&U,BTFw\-/&ZeVnLIqe\-
+.fi
+.\"------------------------------------------------------------------------
+@INCLUDE:reporting-bugs@
+.\"------------------------------------------------------------------------
+.SH SEE ALSO
+.BR doveadm (1)
+.BR doveadm-search-query (7)
+.BR doveadm-mailbox-cryptokey(1)
diff --git a/doc/man/doveadm-move.1.in b/doc/man/doveadm-move.1.in
new file mode 100644
index 0000000..3aa43fb
--- /dev/null
+++ b/doc/man/doveadm-move.1.in
@@ -0,0 +1,169 @@
+.\" Copyright (c) 2011-2018 Dovecot authors, see the included COPYING file
+.TH DOVEADM\-MOVE 1 "2015-05-09" "Dovecot v2.3" "Dovecot"
+.SH NAME
+doveadm\-move \- Move messages matching the given search query into another
+mailbox
+.br
+doveadm\-copy \- Copy messages matching the given search query into another
+mailbox
+.\"------------------------------------------------------------------------
+.SH SYNOPSIS
+.BR doveadm " [" \-Dv "] " move " [" \-S
+.IR socket_path "] " destination
+.RB [ user
+.IR source_user "] " search_query
+.br
+.\"-------------------------------------
+.BR doveadm " [" \-Dv "] " move " [" \-S
+.IR socket_path "] "
+.BI \-A " destination
+.RB [ user
+.IR source_user "] " search_query
+.br
+.\"-------------------------------------
+.BR doveadm " [" \-Dv "] " move " [" \-S
+.IR socket_path "] "
+.BI \-F " file destination"
+.RB [ user
+.IR source_user "] " search_query
+.br
+.\"-------------------------------------
+.BR doveadm " [" \-Dv "] " move " [" \-S
+.IR socket_path "] "
+.BI \-u " user destination
+.RB [ user
+.IR source_user "] " search_query
+.\"-------------------------------------
+.PP
+.BR doveadm " [" \-Dv "] " copy " [" \-S
+.IR socket_path "] " "destination
+.RB [ user
+.IR source_user "] " search_query
+.br
+.\"-------------------------------------
+.BR doveadm " [" \-Dv "] " copy " [" \-S
+.IR socket_path "] "
+.BI \-A " destination
+.RB [ user
+.IR source_user "] " search_query
+.br
+.\"-------------------------------------
+.BR doveadm " [" \-Dv "] " copy " [" \-S
+.IR socket_path "] "
+.BI \-F " file destination"
+.RB [ user
+.IR source_user "] " search_query
+.br
+.\"-------------------------------------
+.BR doveadm " [" \-Dv "] " copy " [" \-S
+.IR socket_path "] "
+.BI \-u " user destination
+.RB [ user
+.IR source_user "] " search_query
+.\"------------------------------------------------------------------------
+.SH DESCRIPTION
+.B doveadm move
+can be used for moving mails between mailboxes for one or more users.
+The
+.I search_query
+is used to restrict which messages are moved into the
+.I destination
+mailbox.
+.br
+.B doveadm copy
+behaves the same as
+.BR "doveadm move" ,
+except that copied messages will not be expunged after copying.
+.PP
+In the first form,
+.BR doveadm (1)
+will execute the
+.BR move / copy
+action with the environment of the logged in system user.
+.PP
+In the second form,
+.BR doveadm (1)
+will iterate over all users, found in the configured
+.IR user_db (s),
+and move or copy each user\(aqs messages, matching the given
+.IR search_query ,
+into the user\(aqs
+.IR destination " mailbox."
+.PP
+In the third form,
+.BR doveadm (1)
+will iterate over all users, found in the given
+.IR file ,
+and move or copy each user\(aqs messages, matching the given
+.IR search_query ,
+into the user\(aqs
+.IR destination \ mailbox.
+.PP
+In the fourth form, matching mails will be moved or copied only for given
+.IR user (s).
+.\"------------------------------------------------------------------------
+@INCLUDE:global-options@
+.\" --- command specific options --- "/.
+.PP
+Command specific
+.IR options :
+.\"-------------------------------------
+@INCLUDE:option-A@
+.\"-------------------------------------
+@INCLUDE:option-F-file@
+.\"-------------------------------------
+@INCLUDE:option-S-socket@
+.\"-------------------------------------
+@INCLUDE:option-u-user@
+.\"------------------------------------------------------------------------
+.SH ARGUMENTS
+.TP
+.I destination
+The name of the destination mailbox, into which the mails should be moved
+or copied.
+The
+.I destination
+mailbox must exist, otherwise this command will fail.
+.\"-------------------------------------
+.TP
+.I search_query
+Move/copy messages matching the given search query.
+See
+.BR doveadm\-search\-query (7)
+for details.
+.\"-------------------------------------
+.TP
+.BI user \ source_user
+The keyword
+.B user
+followed by a valid user name.
+When this argument is present,
+.BR doveadm (1)
+will apply the
+.I search_query
+to the
+.IR source_user "\(aqs " mail_location .
+.br
+.B Limitation:
+Currently the users, specified by
+.BI \-u " user"
+and
+.BI user " source_user,"
+must share the same UID and GID.
+.\"------------------------------------------------------------------------
+.SH EXAMPLE
+Move jane\(aqs messages \- received in September 2011 \- from her INBOX
+into her archive.
+.PP
+.nf
+.ft B
+doveadm move \-u jane Archive/2011/09 mailbox INBOX BEFORE \(rs
+2011\-10\-01 SINCE 01\-Sep\-2011
+.ft P
+.fi
+.\"------------------------------------------------------------------------
+@INCLUDE:reporting-bugs@
+.\"------------------------------------------------------------------------
+.SH SEE ALSO
+.BR doveadm (1),
+.BR doveadm\-search\-query (7) \ No newline at end of file
diff --git a/doc/man/doveadm-penalty.1.in b/doc/man/doveadm-penalty.1.in
new file mode 100644
index 0000000..8a94d93
--- /dev/null
+++ b/doc/man/doveadm-penalty.1.in
@@ -0,0 +1,58 @@
+.\" Copyright (c) 2010-2018 Dovecot authors, see the included COPYING file
+.TH DOVEADM\-PENALTY 1 "2010-07-12" "Dovecot v2.3" "Dovecot"
+.SH NAME
+doveadm\-penalty \- Show current penalties
+.\"------------------------------------------------------------------------
+.SH SYNOPSIS
+.BR doveadm " [" \-Dv "] " penalty " [" \-a
+.IR anvil_socket_path ]
+[\fIip\fP[\fB/\fP\fImask\fP]]
+.\"------------------------------------------------------------------------
+.SH DESCRIPTION
+The
+.B doveadm penalty
+command can be used to see the current penalties.
+(Extend me!/explain it)
+.\"------------------------------------------------------------------------
+@INCLUDE:global-options@
+.\" --- command specific options --- "/.
+.PP
+Command specific
+.IR options :
+.TP
+.BI \-a\ anvil_socket_path
+This option is used to specify an alternative socket.
+The option\(aqs argument is either an absolute path to a local UNIX domain
+socket, or a hostname and port
+.RI ( hostname : port ),
+in order to connect a remote host via a TCP socket.
+.sp
+By default
+.BR doveadm (1)
+will use the socket
+.IR @rundir@/anvil .
+The socket may be located in another directory, when the default
+.I base_dir
+setting was overridden in
+.IR @pkgsysconfdir@/dovecot.conf .
+.\"------------------------------------------------------------------------
+.SH ARGUMENTS
+.TP
+.IR ip [/ mask ]
+To reduce/filter the output supply an IP address or a network range in
+CIDR notation (ip/mask).
+.\"------------------------------------------------------------------------
+.SH EXAMPLE
+Show current penalties
+.sp
+.nf
+.B doveadm penalty
+IP penalty last_penalty last_update
+192.0.2.222 3 2010\-06\-15 15:19:27 15:19:27
+192.0.2.53 3 2010\-06\-15 15:19:34 15:19:34
+.fi
+.\"------------------------------------------------------------------------
+@INCLUDE:reporting-bugs@
+.\"------------------------------------------------------------------------
+.SH SEE ALSO
+.BR doveadm (1) \ No newline at end of file
diff --git a/doc/man/doveadm-proxy.1.in b/doc/man/doveadm-proxy.1.in
new file mode 100644
index 0000000..c9aa70c
--- /dev/null
+++ b/doc/man/doveadm-proxy.1.in
@@ -0,0 +1,87 @@
+.\" Copyright (c) 2014-2018 Dovecot authors, see the included COPYING file
+.TH DOVEADM\-PROXY 1 "2014-11-09" "Dovecot v2.3" "Dovecot"
+.SH NAME
+doveadm\-proxy \- Handle Dovecot proxy connections
+.\"------------------------------------------------------------------------
+.SH SYNOPSIS
+.BR doveadm " [" \-Dv ]
+[\fB\-f\fP \fIformatter\fP]
+.BI proxy \ command
+.RI [ OPTIONS ]\ [ ARGUMENTS ]
+.\"------------------------------------------------------------------------
+.SH DESCRIPTION
+The
+.B doveadm proxy
+.I commands
+are used to list or kick active Dovecot proxy connections.
+.\"------------------------------------------------------------------------
+@INCLUDE:global-options-formatter@
+.\" --- command specific options --- "/.
+.PP
+This command uses by default the
+.B table
+output formatter.
+.PP
+Command specific
+.IR options :
+.\"-------------------------------------
+.TP
+.BI \-a \ ipc_socket_path
+This option is used to specify an alternative socket.
+The option\(aqs argument is either an absolute path to a local UNIX domain
+socket.
+.sp
+By default
+.BR doveadm (1)
+will use the socket
+.IR @rundir@/ipc .
+The socket may be located in another directory, when the default
+.I base_dir
+setting was overridden in
+.IR @pkgsysconfdir@/dovecot.conf .
+.\"------------------------------------------------------------------------
+.SH ARGUMENTS
+.TP
+.I user
+Is a
+.IR user \(aqs
+login name.
+Depending on the configuration, a login name may be for example
+.BR jane " or " john@example.com .
+It\(aqs also possible to use
+.RB \(dq * \(dq
+and
+.RB \(dq ? \(dq
+wildcards (e.g. *@example.org).
+.\"------------------------------------------------------------------------
+.SH COMMANDS
+.SS proxy kick
+.B doveadm proxy kick
+[\fB\-a\fP \fIipc_socket_path\fP]
+[\fB\-f\fP \fIpassdb_field\fP]
+[\fB\-h\fP \fIhost_list\fP | \fIuser_list\fP]
+.PP
+Kick all the connections being proxied for the given
+.IR user_list
+or for the given backend
+.IR host_list .
+.\"-------------------------------------
+.SS proxy list
+.B doveadm proxy list
+[\fB\-a\fP \fIipc_socket_path\fP]
+.PP
+List all the users currently being proxied.
+.\"------------------------------------------------------------------------
+.SH EXAMPLE
+List all currently active proxy connections:
+.PP
+.nf
+.B doveadm proxy list
+username proto src ip dest ip port
+jane@example.net imap 192.168.0.100 192.168.0.5 143
+.fi
+.\"------------------------------------------------------------------------
+@INCLUDE:reporting-bugs@
+.\"------------------------------------------------------------------------
+.SH SEE ALSO
+.BR doveadm (1) \ No newline at end of file
diff --git a/doc/man/doveadm-purge.1.in b/doc/man/doveadm-purge.1.in
new file mode 100644
index 0000000..2049cd7
--- /dev/null
+++ b/doc/man/doveadm-purge.1.in
@@ -0,0 +1,71 @@
+.\" Copyright (c) 2010-2018 Dovecot authors, see the included COPYING file
+.TH DOVEADM\-PURGE 1 "2015-05-09" "Dovecot v2.3" "Dovecot"
+.SH NAME
+doveadm\-purge \- Remove messages with refcount=0 from mdbox files
+.\"------------------------------------------------------------------------
+.SH SYNOPSIS
+.BR doveadm " [" \-Dv "] " purge " [" \-S
+.IR socket_path "] "
+.\"-------------------------------------
+.br
+.BR doveadm " [" \-Dv "] " purge " [" \-S
+.IR socket_path ]
+.B \-A
+.\"-------------------------------------
+.br
+.BR doveadm " [" \-Dv "] " purge " [" \-S
+.IR socket_path ]
+.BI \-F\ file
+.\"-------------------------------------
+.br
+.BR doveadm " [" \-Dv "] " purge " [" \-S
+.IR socket_path "] "
+.BI \-u \ user
+.\"------------------------------------------------------------------------
+.SH DESCRIPTION
+The
+.B doveadm purge
+command is used to remove all messages with refcount=0 from a user\(aqs
+mail storage.
+The refcount of a message is decreased to 0 when the user (or some
+administration utility) has expunged all instances of a message from all
+mailboxes.
+.PP
+In the first form,
+.BR doveadm (1)
+will perform the
+.B purge
+action for the currently logged in user.
+.PP
+In the second form, the command will be executed for all users.
+.PP
+In the third form, the command will be executed for all users listed in
+the given
+.IR file .
+.PP
+In the last form, only messages of the given
+.IR user (s)
+will be purged.
+.\"------------------------------------------------------------------------
+@INCLUDE:global-options@
+.\" --- command specific options --- "/.
+.PP
+Command specific
+.IR options :
+.\"-------------------------------------
+@INCLUDE:option-A@
+.\"-------------------------------------
+@INCLUDE:option-F-file@
+.\"-------------------------------------
+@INCLUDE:option-S-socket@
+.\"-------------------------------------
+@INCLUDE:option-u-user@
+.\"------------------------------------------------------------------------
+@INCLUDE:reporting-bugs@
+.\"------------------------------------------------------------------------
+.SH SEE ALSO
+.BR doveadm (1),
+.BR doveadm\-expunge (1)
+.PP
+See http://wiki2.dovecot.org/MailboxFormat/dbox#Multi\-dbox for some
+details. \ No newline at end of file
diff --git a/doc/man/doveadm-pw.1.in b/doc/man/doveadm-pw.1.in
new file mode 100644
index 0000000..a67f422
--- /dev/null
+++ b/doc/man/doveadm-pw.1.in
@@ -0,0 +1,163 @@
+.\" Copyright (c) 2010-2018 Dovecot authors, see the included COPYING file
+.TH DOVEADM\-PW 1 "2015-06-05" "Dovecot v2.3" "Dovecot"
+.SH NAME
+doveadm\-pw \- Dovecot\(aqs password hash generator
+.\"------------------------------------------------------------------------
+.SH SYNOPSIS
+.BR doveadm " [" \-Dv "] " "pw \-l"
+.\"-------------------------------------
+.br
+.BR doveadm " [" \-Dv "] " pw
+[\fB\-p\fP \fIpassword\fP]
+[\fB\-r\fP \fIrounds\fP]
+[\fB\-s\fP \fIscheme\fP]
+[\fB\-u\fP \fIuser\fP]
+.RB [ \-V ]
+.\"-------------------------------------
+.br
+.BR doveadm " [" \-Dv "] " "pw \-t"
+.I hash
+[\fB\-p\fP \fIpassword\fP]
+[\fB\-u\fP \fIuser\fP]
+.\"------------------------------------------------------------------------
+.SH DESCRIPTION
+.B doveadm pw
+is used to generate password hashes for different password
+.IR scheme s
+and optionally verify the generated hash.
+.PP
+All generated password hashes have a
+.RI { scheme }
+prefix, for example
+.RB { SHA512\-CRYPT.HEX }.
+All passdbs have a default scheme for passwords stored without the
+.RI { scheme }
+prefix.
+The default scheme can be overridden by storing the password with the
+scheme prefix.
+.PP
+.\"------------------------------------------------------------------------
+@INCLUDE:global-options@
+.\" --- command specific options --- "/.
+.PP
+Command specific
+.IR options :
+.\"-------------------------------------
+.TP
+.B \-l
+List all supported password
+.IR scheme s
+and exit successfully.
+.br
+There are up to three optional password
+.IR scheme s:
+.BR BLF\-CRYPT " (Blowfish crypt),"
+.BR SHA256\-CRYPT\ and
+.BR SHA512\-CRYPT .
+Their availability depends on the system\(aqs currently used libc.
+.\"-------------------------------------
+.TP
+.BI \-p\ password
+The plain text
+.I password
+for which the hash should be generated.
+If no
+.I password
+was given
+.BR doveadm (1)
+will prompt interactively for one.
+.\"-------------------------------------
+.TP
+.BI \-r\ rounds
+The password
+.IR scheme s
+.BR BLF\-CRYPT ,
+.BR SHA256\-CRYPT\ and
+.B SHA512\-CRYPT
+supports a variable number of encryption
+.IR rounds .
+The following table shows the minimum/maximum number of encryption
+.I rounds
+per scheme.
+When the
+.B \-r
+option was omitted the default number of encryption rounds will be applied.
+.\"
+.sp
+.nf
+ Scheme | Minimum | Maximum | Default
+----------------------------------------------
+ BLF\-CRYPT | 4 | 31 | 5
+ SHA256\-CRYPT | 1000 | 999999999 | 5000
+ SHA512\-CRYPT | 1000 | 999999999 | 5000
+.fi
+.\"
+.\"-------------------------------------
+.TP
+.BI \-s\ scheme
+The password
+.I scheme
+which should be used to generate the hashed password.
+By default the
+.BI CRYPT\ scheme
+will be used (with the $2y$ bcrypt format).
+It is also possible to append an encoding suffix to the
+.IR scheme .
+Supported encoding suffixes are:
+.BR .b64 ,
+.BR .base64\ and
+.BR .hex .
+.br
+See also http://wiki2.dovecot.org/Authentication/PasswordSchemes for more
+details about password schemes.
+.\"-------------------------------------
+.TP
+.BI \-t\ hash
+Test if the given password
+.I hash
+matches a given plain text password.
+You should enclose the password
+.I hash
+in single quotes, if it contains one or more dollar signs
+.RB ( $ ).
+The plain text password may be passed using the
+.BR \-p " option."
+When no password was specified,
+.BR doveadm (1)
+will prompt interactively for one.
+.\"-------------------------------------
+.TP
+.BI \-u\ user
+When the
+.BI DIGEST\-MD5\ scheme
+is used, also the
+.I user
+name must be given, because the user name is a part of the generated hash.
+For more information about Digest\-MD5 please read also:
+http://wiki2.dovecot.org/Authentication/Mechanisms/DigestMD5
+.\"-------------------------------------
+.TP
+.B \-V
+When this option is given, the hashed password will be internally verified.
+The result of the verification will be shown after the hashed password,
+enclosed in parenthesis.
+.\"------------------------------------------------------------------------
+.SH EXAMPLE
+The first password hash is a DIGEST\-MD5 hash for jane.roe@example.com.
+The second password hash is a CRAM\-MD5 hash for john.doe@example.com.
+.sp
+.nf
+.B doveadm pw \-s digest\-md5 \-u jane.roe@example.com
+Enter new password:
+Retype new password:
+{DIGEST\-MD5}9b9dcb4466233a9307bbc33708dffda0
+.B doveadm pw
+Enter new password:
+Retype new password:
+{CRAM\-MD5}913331d8782236a8ecba7764a63aa27b26437fd40ca878d887f11d81245c2c6b
+.fi
+.\"------------------------------------------------------------------------
+@INCLUDE:reporting-bugs@
+.\"------------------------------------------------------------------------
+.SH SEE ALSO
+.BR doveadm (1) \ No newline at end of file
diff --git a/doc/man/doveadm-quota.1.in b/doc/man/doveadm-quota.1.in
new file mode 100644
index 0000000..98f7072
--- /dev/null
+++ b/doc/man/doveadm-quota.1.in
@@ -0,0 +1,131 @@
+.\" Copyright (c) 2010-2018 Dovecot authors, see the included COPYING file
+.TH DOVEADM\-QUOTA 1 "2015-05-09" "Dovecot v2.3" "Dovecot"
+.SH NAME
+doveadm\-quota \- Initialize/recalculate or show current quota usage
+.\"------------------------------------------------------------------------
+.SH SYNOPSIS
+.BR doveadm " [" \-Dv "] [" \-f
+.IR formatter ]
+.BR quota " [" \-S
+.IR socket_path "] " command
+.\"-------------------------------------
+.br
+.BR doveadm " [" \-Dv "] [" \-f
+.IR formatter ]
+.BR quota " [" \-S
+.IR socket_path "]"
+.IB command\ \-A
+.\"-------------------------------------
+.br
+.BR doveadm " [" \-Dv "] [" \-f
+.IR formatter ]
+.BR quota " [" \-S
+.IR socket_path "]"
+.IB command\ \-F \ file
+.\"-------------------------------------
+.br
+.BR doveadm " [" \-Dv "] [" \-f
+.IR formatter ]
+.BR quota " [" \-S
+.IR socket_path "]"
+.IB command\ \-u \ user
+.\"------------------------------------------------------------------------
+.SH DESCRIPTION
+In the first form,
+.BR doveadm (1)
+will execute the
+.I command
+for the currently logged in user.
+.PP
+In the second form, the
+.I command
+will be performed for all users.
+.PP
+In the third form, the
+.I command
+will be performed for all users listed in the given
+.IR file .
+.PP
+In the fourth form, the
+.I command
+will affect only the matching
+.IR user (s).
+.IP Note:
+The
+.B quota get
+and
+.B quota recalc
+commands are only available when the global
+.I mail_plugins
+setting contains the
+.B quota
+plugin.
+.\"------------------------------------------------------------------------
+@INCLUDE:global-options-formatter@
+.\" --- command specific options --- "/.
+.PP
+Command specific
+.IR options :
+.\"-------------------------------------
+@INCLUDE:option-A@
+.\"-------------------------------------
+@INCLUDE:option-F-file@
+.\"-------------------------------------
+@INCLUDE:option-S-socket@
+.\"-------------------------------------
+@INCLUDE:option-u-user@
+.\"------------------------------------------------------------------------
+.SH COMMANDS
+.SS quota get
+.BR doveadm " [" \-f
+.IR formatter ]
+.B quota get
+[\fB\-A\fP|\fB\-u\fP \fIuser\fP|\fB\-F\fP \fIfile\fP]
+.PP
+The
+.B quota get
+command is used to display the current quota usage.
+The storage values are reported in kilobytes.
+.PP
+This command uses by default the output formatter
+.BR table .
+.\"-------------------------------------
+.SS quota recalc
+.B doveadm quota recalc
+[\fB\-A\fP|\fB\-u\fP \fIuser\fP|\fB\-F\fP \fIfile\fP]
+.PP
+The
+.B quota recalc
+command is used to recalculate the current quota usage.
+.\"------------------------------------------------------------------------
+.SH FILES
+.TP
+.I @pkgsysconfdir@/dovecot.conf
+Dovecot\(aqs main configuration file, including the
+.I dict
+section.
+.TP
+.I @pkgsysconfdir@/dovecot\-dict\-sql.conf.ext
+SQL dictionary proxy settings.
+.TP
+.I @pkgsysconfdir@/conf.d/10\-mail.conf
+Mailbox locations and namespaces, including global
+.I mail_location
+.TP
+.I @pkgsysconfdir@/conf.d/90\-quota.conf
+Quota configuration.
+.\"------------------------------------------------------------------------
+.SH EXAMPLE
+Get the current quota usage of user jane.
+.sp
+.nf
+.B doveadm quota get \-u jane
+Quota name Type Value Limit %
+user STORAGE 90099 102400 87
+user MESSAGE 20548 30000 68
+.fi
+.\"------------------------------------------------------------------------
+@INCLUDE:reporting-bugs@
+.\"------------------------------------------------------------------------
+.SH SEE ALSO
+.BR doveadm (1) \ No newline at end of file
diff --git a/doc/man/doveadm-rebuild.1.in b/doc/man/doveadm-rebuild.1.in
new file mode 100644
index 0000000..d8261b6
--- /dev/null
+++ b/doc/man/doveadm-rebuild.1.in
@@ -0,0 +1,112 @@
+.\" Copyright (c) 2010-2018 Dovecot authors, see the included COPYING file
+.TH DOVEADM\-REBUILD 1 "2015-05-09" "Dovecot v2.3" "Dovecot"
+.SH NAME
+doveadm\-rebuild - Commands related to rebuilding various aspects of mails matching
+given search query.
+.\"------------------------------------------------------------------------
+.SH SYNOPSIS
+.BR doveadm " [" \-Dv "] [" \-f
+.IR formatter ]
+.BR rebuild \ <command> " [" \-S
+.IR socket_path "] " search_query
+.br
+.\"-------------------------------------
+.BR doveadm " [" \-Dv "] [" \-f
+.IR formatter ]
+.BR rebuild \ <command> " [" \-S
+.IR socket_path ]
+.BI \-A \ search_query
+.br
+.\"-------------------------------------
+.BR doveadm " [" \-Dv "] [" \-f
+.IR formatter ]
+.BR rebuild \ <command> " [" \-S
+.IR socket_path ]
+.BI \-F " file search_query"
+.br
+.\"-------------------------------------
+.BR doveadm " [" \-Dv "] [" \-f
+.IR formatter ]
+.BR rebuild \ <command> " [" \-S
+.IR socket_path ]
+.BI \-u " user search_query"
+.\"------------------------------------------------------------------------
+.SH DESCRIPTION
+The
+.B rebuild attachments
+command is used to rebuilds attachment presence.
+.BR doveadm (1)
+will print the message\(aqs uid for each match.
+.br
+When used with the
+.B \-A
+or
+.BI \-u \ wildcard
+options,
+.BR doveadm (1)
+will print the fields
+.BR username \ and
+.B uid
+for each matching message.
+.PP
+In the first form,
+.BR doveadm (1)
+will execute the
+.B rebuild
+action with the environment of the logged in system user.
+.PP
+In the second form, the command will be performed for all users.
+.PP
+In the third form, the command will be performed for all users listed in
+the given
+.IR file .
+.PP
+In the fourth form, only matching mails of the given
+.IR user (s)
+will be rebuilded
+.\"------------------------------------------------------------------------
+@INCLUDE:global-options-formatter@
+.\" --- command specific options --- "/.
+.PP
+This command uses by default the output formatter
+.B flow
+(without the
+.IR key =
+prefix).
+.PP
+Command specific
+.IR options :
+.\"-------------------------------------
+@INCLUDE:option-A@
+.\"-------------------------------------
+@INCLUDE:option-F-file@
+.\"-------------------------------------
+@INCLUDE:option-S-socket@
+.\"-------------------------------------
+@INCLUDE:option-u-user@
+.\"------------------------------------------------------------------------
+.SH ARGUMENTS
+.TP
+.I search_query
+Resets attachment indicator for messages matching this search query.
+See
+.BR doveadm\-search\-query (7)
+for details.
+.\"------------------------------------------------------------------------
+.SH EXAMPLE
+This example demonstrates how to rebuild user bob\(aqs attachment status.
+.PP
+.nf
+.ft B
+doveadm rebuild attachments \-u bob ALL
+.ft P
+1
+2
+3
+.fi
+.\"------------------------------------------------------------------------
+@INCLUDE:reporting-bugs@
+.\"------------------------------------------------------------------------
+.SH SEE ALSO
+.BR doveadm (1),
+.BR doveadm\-search\-query (7)
diff --git a/doc/man/doveadm-reload.1 b/doc/man/doveadm-reload.1
new file mode 100644
index 0000000..7184fe8
--- /dev/null
+++ b/doc/man/doveadm-reload.1
@@ -0,0 +1 @@
+.so man1/doveadm.1 \ No newline at end of file
diff --git a/doc/man/doveadm-replicator.1.in b/doc/man/doveadm-replicator.1.in
new file mode 100644
index 0000000..53b6b46
--- /dev/null
+++ b/doc/man/doveadm-replicator.1.in
@@ -0,0 +1,123 @@
+.\" Copyright (c) 2014-2018 Dovecot authors, see the included COPYING file
+.TH DOVEADM\-REPLICATOR 1 "2014-10-05" "Dovecot v2.3" "Dovecot"
+.SH NAME
+doveadm\-replicator \- Manage users\(aq mail replication
+.\"------------------------------------------------------------------------
+.SH SYNOPSIS
+.BR doveadm " [" \-Dv ]
+[\fB\-f\fP \fIformatter\fP]
+.BI replicator \ command
+.RI [ OPTIONS ]\ [ ARGUMENTS ]
+.\"------------------------------------------------------------------------
+.SH DESCRIPTION
+The
+doveadm replicator
+.I COMMANDS
+can be used to manage the automated replication of users\(aq mail.
+.\"------------------------------------------------------------------------
+@INCLUDE:global-options-formatter@
+.\" --- command specific options --- "/.
+.PP
+This command uses by default the output formatter
+.B flow
+(without the
+.IR key =
+prefix).
+.PP
+Command specific
+.IR options :
+.TP
+.BI \-a \ replicator_socket_path
+This option is used to specify an absolute path to an alternative UNIX
+domain socket.
+.sp
+By default
+.BR doveadm (1)
+will use the socket
+.IR @rundir@/replicator\-doveadm .
+The socket may be located in another directory, when the default
+.I base_dir
+setting was overridden in
+.IR @pkgsysconfdir@/dovecot.conf .
+.\"------------------------------------------------------------------------
+.SH ARGUMENTS
+.TP
+.I user_mask
+Specifies for which users the command should be executed.
+In most cases you would like to use patterns which contains wildcards,
+e.g. \(rs*@example.net for all users of the example.net domain, or simply
+\(rs* for all users.
+.sp
+When the SQL userdb module is used make sure that the
+.I iterate_query
+setting in
+.I @pkgsysconfdir@/dovecot\-sql.conf.ext
+matches your database layout.
+When using the LDAP userdb module, make sure that the
+.IR iterate_attrs " and " iterate_filter
+settings in
+.I @pkgsysconfdir@/dovecot\-ldap.conf.ext
+match your LDAP schema.
+Otherwise
+.BR doveadm (1)
+will be unable to iterate over all users.
+.\"------------------------------------------------------------------------
+.SH COMMANDS
+.SS replicator add
+.B doveadm replicator add
+[\fB\-a\fP \fIreplicator_socket_path\fP]
+.I user_mask
+.PP
+Add the specified user(s) to the replicator.
+If the
+.I user_mask
+contains \(dq?\(dq or \(dq*\(dq wildcards, the list of usernames is looked
+up from the
+.IR userdb .
+.\"-------------------------------------
+.SS replicator dsync\-status
+.B doveadm replicator dsync\-status
+[\fB\-a\fP \fIreplicator_socket_path\fP]
+.PP
+Show the status for the currently running dsync processes.
+.\"-------------------------------------
+.SS replicator remove
+.B doveadm replicator remove
+[\fB\-a\fP \fIreplicator_socket_path\fP]
+.I username
+.PP
+Remove the specified user from replicator.
+.\"-------------------------------------
+.SS replicator replicate
+.B doveadm replicator replicate
+[\fB\-a\fP \fIreplicator_socket_path\fP]
+.RB [ \-f ]
+[\fB\-p\fP \fIpriority\fP]
+.I user_mask
+.PP
+Start replication for the specified users now.
+If the \-f parameter is given, full replication is done for the user.
+You can also specify the priority, which can be either
+.B high " or " low.
+If the user mask contains \(dq?\(dq or \(dq*\(dq wildcards, the list of
+usernames is looked up from the users that currently exist in replicator
+(not from the
+.IR userdb ).
+.\"-------------------------------------
+.SS replicator status
+.B doveadm replicator status
+[\fB\-a\fP \fIreplicator_socket_path\fP]
+.I user_mask
+.PP
+Show the replication status for users.
+.\"------------------------------------------------------------------------
+@INCLUDE:reporting-bugs@
+.\"------------------------------------------------------------------------
+.SH SEE ALSO
+.BR doveadm (1),
+.BR doveadm\-sync (1),
+.\"-------------------------------------
+.PP
+Additional resources:
+.IP "Replication with dsync"
+http://wiki2.dovecot.org/Replication \ No newline at end of file
diff --git a/doc/man/doveadm-save.1.in b/doc/man/doveadm-save.1.in
new file mode 100644
index 0000000..284ba50
--- /dev/null
+++ b/doc/man/doveadm-save.1.in
@@ -0,0 +1,66 @@
+.\" Copyright (c) 2017-2018 Dovecot authors, see the included COPYING file
+.TH DOVEADM\-SAVE 1 "2017-05-11" "Dovecot v2.3" "Dovecot"
+.SH NAME
+doveadm\-save \- Save email to a user's mailbox
+.\"------------------------------------------------------------------------
+.SH SYNOPSIS
+.BR doveadm " [" \-Dv "]
+.BR save " [" \-S
+.IR socket_path "]"
+.BI \-u " user "
+.RI "["\-m
+.IR mailbox "] "
+.RI "[" mail-file "]"
+.br
+.\"------------------------------------------------------------------------
+.BR doveadm " [" \-Dv "]
+.BR save " [" \-S
+.IR socket_path "]"
+.BI \-A
+.RI "["\-m
+.IR mailbox "] "
+.RI "[" mail-file "]"
+.br
+.\"------------------------------------------------------------------------
+.BR doveadm " [" \-Dv "] [" \-f
+.IR formatter ]
+.BR save " [" \-S
+.IR socket_path "]"
+.BI \-F " file "
+.RI "["\-m
+.IR mailbox "] "
+.RI "[" mail-file "]"
+.br
+.\"------------------------------------------------------------------------
+.SH DESCRIPTION
+.B doveadm save
+can be used to save messages. This can be useful for scripts and for debugging.
+Sieve is not invoked for saved messages, but quota is enforced.
+.\"------------------------------------------------------------------------
+@INCLUDE:global-options@
+.\" --- command specific options --- "/.
+.PP
+Command specific
+.IR options :
+.\"-------------------------------------
+@INCLUDE:option-A@
+.\"-------------------------------------
+@INCLUDE:option-F-file@
+.\"-------------------------------------
+@INCLUDE:option-S-socket@
+.\"-------------------------------------
+@INCLUDE:option-u-user@
+.\"-------------------------------------
+.TP
+.BI \-m\ mailbox
+Store mail to specified mailbox instead of INBOX.
+.\"------------------------------------------------------------------------
+.SH EXAMPLE
+echo "hello, world" | doveadm save -u testuser@testdomain
+.\"------------------------------------------------------------------------
+@INCLUDE:reporting-bugs@
+.\"------------------------------------------------------------------------
+.SH SEE ALSO
+.BR doveadm (1),
+.BR doveadm\-search (1),
+.BR doveadm\-search\-query (7)
diff --git a/doc/man/doveadm-search-query.7 b/doc/man/doveadm-search-query.7
new file mode 100644
index 0000000..1f65bba
--- /dev/null
+++ b/doc/man/doveadm-search-query.7
@@ -0,0 +1,428 @@
+.\" Copyright (c) 2010-2018 Dovecot authors, see the included COPYING file
+.TH DOVEADM\-SEARCH\-QUERY 7 "2015-10-19" "Dovecot v2.3" "Dovecot"
+.SH NAME
+doveadm\-search\-query \- Overview of search queries for doveadm mailbox \
+commands
+.\"------------------------------------------------------------------------
+.SH DESCRIPTION
+Several
+.BR doveadm (1)
+commands use a
+.I search_query
+in order to act only on matching messages.
+This manual page describes all
+.IR SEARCH\ KEYS ,
+which can be used in a
+.IR search_query .
+The query is mostly compatible with the IMAP SEARCH command parameters,
+although there are some differences.
+.PP
+Each
+.I search_query
+consists at least of one
+.IR SEARCH\ KEY .
+Most of the
+.I SEARCH KEYS
+require an argument.
+All
+.I SEARCH\ KEYS
+are case\-insensitive.
+The shortest valid
+.I search_query
+is
+.BR ALL .
+For example:
+.sp
+.RS
+.nf
+doveadm search ALL
+.fi
+.RE
+.PP
+Multiple search query expressions will be combined with the
+.B AND
+operator by default.
+To find all messages that are new and greater than 50 kilobyte, one can
+use:
+.sp
+.RS
+.nf
+doveadm search NEW LARGER 50k
+.fi
+.RE
+.PP
+.BR OR \-ed
+.I SEARCH KEYS
+have to be written in parenthesis, when mixing ANDs and ORs.
+Shells commonly require escaping for parentheses.
+To find messages that were saved on the \(dq13th of April 2007\(dq AND
+have the \(rsSeen and/or \(rsFlagged flag set, one
+can use for example:
+.sp
+.RS
+.nf
+doveadm search SAVEDON 2007\-04\-13 \(rs( SEEN OR FLAGGED \(rs)
+.fi
+.RE
+.PP
+It\(aqs also possible to specify the mailbox, in which should be searched.
+Use either the keyword
+.B mailbox
+and the name of the mailbox or the keyword
+.B mailbox\-guid
+and the mailbox\(aqs globally unique identifier in the
+.IR search_query .
+To find all messages in the mailbox with the GUID
+\(dq44f68b13ce97044b837f000035ca9452\(dq use:
+.sp
+.RS
+.nf
+doveadm search mailbox\-guid 44f68b13ce97044b837f000035ca9452 ALL
+.fi
+.RE
+.PP
+To list all deleted messages in the \(dqTrash\(dq folder use:
+.sp
+.RS
+.nf
+doveadm search mailbox Trash DELETED
+.fi
+.RE
+.\"------------------------------------------------------------------------
+.SH SEARCH KEYS
+The following search keys from the specification of IMAP version 4 revision
+1 (see: RFC 3501, section 6.4.4) are supported:
+.\"-----------------
+.TP
+.I sequence\-set
+Matches messages with the given sequence numbers. The
+.I sequence\-set
+may be a single UID.
+Can be a sequence range, written as
+.IR from : to ,
+.RB e.g.\ 100 : 125 .
+As comma separated list of sequences, e.g.
+.BR 11,50,4 .
+It\(aqs also possible to combine multiple sequences, e.g.
+.BR 1,3,5,7,10:20 .
+Using
+.BR *
+selects the last mail in the mailbox.
+.br
+For example 1:100 matches the first 100 mails and 101:200 the next second
+hundred mails. 1,5,* matches the first, the fifth and the last email.
+.\"-----------------
+.TP
+.B ALL
+Matches all messages.
+.\"-----------------
+.TP
+.B ANSWERED
+Matches messages with the IMAP flag \(rsAnswered set.
+.\"-----------------
+.TP
+.BI BCC\ string
+Matches messages, which contain
+.I string
+in the BCC field of the message\(aqs IMAP envelope structure.
+.\"-----------------
+.TP
+.BI BEFORE \ date\ specification
+Matches messages with an internal date before
+.IR date\ specification .
+.\"-----------------
+.TP
+.BI BODY\ string
+Matches messages, which contain
+.I string
+in the body part.
+.\"-----------------
+.TP
+.BI CC\ string
+Matches messages, which contain
+.I string
+in the CC field of the message\(aqs IMAP envelope structure.
+.\"-----------------
+.TP
+.B DELETED
+Matches messages with the IMAP flag \(rsDeleted set.
+.\"-----------------
+.TP
+.B DRAFT
+Matches messages with the IMAP flag \(rsDraft set.
+.\"-----------------
+.TP
+.B FLAGGED
+Matches messages with the IMAP flag \(rsFlagged set.
+.\"-----------------
+.TP
+.BI FROM\ string
+Matches messages, which contain
+.I string
+in the FROM field of the message\(aqs IMAP envelope structure.
+.\"-----------------
+.TP
+\fBHEADER\fP \fIfield\fP \fIstring\fP
+Matches messages, which either have the named header
+.IR field ,
+when empty
+.I string
+was given.
+Or messages, where the given header
+.IR field \(aqs
+value contains the specified
+.IR string .
+.\"-----------------
+.TP
+.BI KEYWORD\ keyword
+Matches messages with the given IMAP
+.I keyword
+(e.g. \(DoForwarded) flag set.
+.\"-----------------
+.TP
+.BI LARGER\ size
+Matches messages that are larger than the specified
+.IR size .
+.\"-----------------
+.TP
+.BI MAILBOX\ name
+Matches messages in the mailbox with the specified
+.IR name .
+.\"-----------------
+.TP
+.BI MAILBOX\-GUID\ guid
+Matches messages in the mailbox with the specified
+.IR guid .
+.\"-----------------
+.TP
+.B NEW
+Matches messages, which have the IMAP flag \(rsRecent set
+.B but not
+the IMAP flag \(rsSeen.
+.\"-----------------
+.TP
+.BI NOT\ search\ key
+Inverse matching \- matches massages, where the search doesn\(aqt match
+the specified
+.I search\ key
+or its value.
+.\"-----------------
+.TP
+.B OLD
+Matches messages, which do not have the IMAP flag \(rsRecent set.
+.\"-----------------
+.TP
+.BI ON\ date\ specification
+Matches messages whose internal date matches the given
+.IR date\ specification .
+.\"-----------------
+.TP
+.IB search\ key\ OR\ search\ key
+Matches messages where one of the OR\-ed search keys matches.
+.br
+Note: IMAP4rev1 uses the syntax:
+.BI OR\ search\ key\ search\ key
+.\"-----------------
+.TP
+.B RECENT
+Matches messages with the IMAP flag \(rsRecent set.
+.\"-----------------
+.TP
+.B SEEN
+Matches messages with the IMAP flag \(rsSeen set.
+.\"-----------------
+.TP
+.BI SENTBEFORE\ date\ specification
+Matches messages with a Date: header before
+.IR date\ specification .
+.\"-----------------
+.TP
+.BI SENTON\ date\ specification
+Matches messages with a Date: header matching the given
+.IR date\ specification .
+.\"-----------------
+.TP
+.BI SENTSINCE\ date\ specification
+Matches messages with a Date: header matching or after the given
+.IR date\ specification .
+.\"-----------------
+.TP
+.BI SINCE\ date\ specification
+Matches messages whose internal date is within or after the given
+.IR date\ specification .
+.\"-----------------
+.TP
+.BI SMALLER\ size
+Matches messages with a size smaller than the given
+.IR size .
+.\"-----------------
+.TP
+.BI SUBJECT\ string
+Matches messages, which contain
+.I string
+in the SUBJECT field of the message\(aqs IMAP envelope structure.
+.\"-----------------
+.TP
+.BI TEXT\ string
+Matches messages, which contain
+.I string
+in the message headers or body.
+.\"-----------------
+.TP
+.BI TO\ string
+Matches messages, which contain
+.I string
+in the TO field of the message\(aqs IMAP envelope structure.
+.\"-----------------
+.TP
+.BI UID\ sequence\-set
+Matches messages with the given IMAP UID(s). See the
+.BI sequence\-set
+description for details on it. For example
+.BR 1:10,100:200,*
+matches the UIDs from 1 to 10, 100 to 200 and also the last mail.
+.\"-----------------
+.TP
+.B UNANSWERED
+Matches messages, which do not have the IMAP flag \(rsAnswered set.
+.\"-----------------
+.TP
+.B UNDELETED
+Matches messages, which do not have the IMAP flag \(rsDeleted set.
+.\"-----------------
+.TP
+.B UNDRAFT
+Matches messages, which do not have the IMAP flag \(rsDraft set.
+.\"-----------------
+.TP
+.B UNFLAGGED
+Matches messages, which do not have the IMAP flag \(rsFlagged set.
+.\"-----------------
+.TP
+.BI UNKEYWORD\ keyword
+Matches messages, which do not have the given IMAP
+.I keyword
+flag set
+.\"-----------------
+.TP
+.B UNSEEN
+Matches messages, which do not have the IMAP flag \(rsSeen set.
+.\"-------------------------------------
+.SS DOVEADM SEARCH KEYS
+Additional search keys, provided by
+.BR doveadm (1).
+.\"-----------------
+.TP
+.BI SAVEDBEFORE\ date\ specification
+Matches messages, which were saved before
+.IR date\ specification .
+.\"-----------------
+.TP
+.BI SAVEDON\ date\ specification
+Matches messages whose save date matches the given
+.IR date\ specification .
+.\"-----------------
+.TP
+.BI SAVEDSINCE\ date\ specification
+Matches messages with a save date matching or after the given
+.IR date\ specification .
+.\"------------------------------------------------------------------------
+.SH DATE SPECIFICATION
+.BR doveadm (1)
+supports a few additional
+.I date specification
+formats.
+They can be used anywhere, where a
+.I date specification
+value is obligatory.
+.TP
+.IB day \- month \- year
+Default IMAP4rev1 date format.
+.br
+.IR day ,
+the day of month:
+.BR 1 \- 31 .
+.br
+.IR month ,
+the abbreviated month name:
+.BR Jan ,
+.BR Feb ,
+.BR Mar ,
+.BR Apr ,
+.BR May ,
+.BR Jun ,
+.BR Jul ,
+.BR Aug ,
+.BR Sep ,
+.BR Oct ,
+.BR Nov \ or
+.BR Dec .
+.br
+.IR year ,
+four digits of year, e.g.
+.BR 2007 .
+.br
+For example the \(dq13th of April 2007\(dq will be represented as
+.BR 13\-Apr\-2007 .
+.
+.TP
+.I interval
+Combination of a positive integer
+.I number
+and a
+.IR time\ unit .
+.br
+Available
+.I time\ units
+are:
+.BR weeks " (abbr: " w ),
+.BR days " (abbr: " d ),
+.BR hours " (abbr: " h ),
+.BR mins " (abbr: " m ") and"
+.BR secs " (abbr: " s ).
+.br
+To match messages from last week, you may specify for example:
+.BR since\ 1w ,
+.BR since\ 1weeks \ or
+.BR since\ 7days .
+.
+.TP
+.I Unix timestamp
+A 10 digit Unix timestamp, seconds since the 1st of January 1970, 00:00:00
+UTC.
+For example the \(dq13th of April 2007\(dq will be represented as
+.BR 1176418800 .
+.
+.TP
+.I YYYY\-MM\-DD
+Extended ISO\-8601 calendar date format.
+For example the \(dq13th of April 2007\(dq will be represented as
+.BR 2007\-04\-13 .
+.\"------------------------------------------------------------------------
+.SH SIZE
+.BR doveadm (1)
+provides also an additional
+.I size
+representation format.
+The following formats can be used anywhere, where a
+.I size
+value is obligatory.
+.TP
+.I octets
+The message size in octets, as specified in the IMAP4rev1 specification.
+.TP
+.I size
+The message size in
+.BR B \ (byte),
+.BR k \ (kilobyte),
+.BR M \ (megabyte),
+.BR G \ (gigabyte)\ or
+.BR T \ (terabyte).
+.br
+To match messages, bigger than 1 megabyte, you may specify for example:
+.BR larger\ 1M \ or
+.BR larger\ 1024k .
+.\"------------------------------------------------------------------------
+.SH SEE ALSO
+.BR doveadm (1),
+.BR doveadm\-search (1)
diff --git a/doc/man/doveadm-search.1.in b/doc/man/doveadm-search.1.in
new file mode 100644
index 0000000..1cf413a
--- /dev/null
+++ b/doc/man/doveadm-search.1.in
@@ -0,0 +1,129 @@
+.\" Copyright (c) 2010-2018 Dovecot authors, see the included COPYING file
+.TH DOVEADM\-SEARCH 1 "2015-05-09" "Dovecot v2.3" "Dovecot"
+.SH NAME
+doveadm\-search \- Show a list of mailbox GUIDs and message UIDs matching \
+given search query.
+.\"------------------------------------------------------------------------
+.SH SYNOPSIS
+.BR doveadm " [" \-Dv "] [" \-f
+.IR formatter ]
+.BR search " [" \-S
+.IR socket_path "] " search_query
+.br
+.\"-------------------------------------
+.BR doveadm " [" \-Dv "] [" \-f
+.IR formatter ]
+.BR search " [" \-S
+.IR socket_path ]
+.BI \-A \ search_query
+.br
+.\"-------------------------------------
+.BR doveadm " [" \-Dv "] [" \-f
+.IR formatter ]
+.BR search " [" \-S
+.IR socket_path ]
+.BI \-F " file search_query"
+.br
+.\"-------------------------------------
+.BR doveadm " [" \-Dv "] [" \-f
+.IR formatter ]
+.BR search " [" \-S
+.IR socket_path ]
+.BI \-u " user search_query"
+.\"------------------------------------------------------------------------
+.SH DESCRIPTION
+The
+.B search
+command is used to find matching messages.
+.BR doveadm (1)
+will print the mailbox\(aqs guid and the message\(aqs uid for each match.
+.br
+When used with the
+.B \-A
+or
+.BI \-u \ wildcard
+options,
+.BR doveadm (1)
+will print the fields
+.BR username ,
+.BR mailbox\-guid \ and
+.B uid
+for each matching message.
+.PP
+In the first form,
+.BR doveadm (1)
+will executed the
+.B search
+action with the environment of the logged in system user.
+.PP
+In the second form, the command will be performed for all users.
+.PP
+In the third form, the command will be performed for all users listed in
+the given
+.IR file .
+.PP
+In the fourth form, only matching mails of the given
+.IR user (s)
+will be searched.
+.\"------------------------------------------------------------------------
+@INCLUDE:global-options-formatter@
+.\" --- command specific options --- "/.
+.PP
+This command uses by default the output formatter
+.B flow
+(without the
+.IR key =
+prefix).
+.PP
+Command specific
+.IR options :
+.\"-------------------------------------
+@INCLUDE:option-A@
+.\"-------------------------------------
+@INCLUDE:option-F-file@
+.\"-------------------------------------
+@INCLUDE:option-S-socket@
+.\"-------------------------------------
+@INCLUDE:option-u-user@
+.\"------------------------------------------------------------------------
+.SH ARGUMENTS
+.TP
+.I search_query
+Show messages matching this search query.
+See
+.BR doveadm\-search\-query (7)
+for details.
+.\"------------------------------------------------------------------------
+.SH EXAMPLE
+This example demonstrates how to search in user bob\(aqs dovecot mailboxes
+all messages, which contains the word \(dqtodo\(dq in the Subject: header.
+.PP
+.nf
+.ft B
+doveadm search \-u bob mailbox dovecot\(rs* subject todo
+.ft P
+3a94c928d66ebe4bda04000015811c6a 8
+3a94c928d66ebe4bda04000015811c6a 25
+3a94c928d66ebe4bda04000015811c6a 45
+.fi
+.PP
+The search command is mainly useful when used together with
+.I doveadm\ fetch
+command. For example to save message bodies of all messages from INBOX
+that have "todo" in subject, use:
+.PP
+.nf
+.ft B
+doveadm search \-u bob mailbox INBOX subject todo |
+while read guid uid; do
+\ \ doveadm fetch \-u bob body mailbox\-guid $guid uid $uid > msg.$uid
+done
+.ft P
+.fi
+.\"------------------------------------------------------------------------
+@INCLUDE:reporting-bugs@
+.\"------------------------------------------------------------------------
+.SH SEE ALSO
+.BR doveadm (1),
+.BR doveadm\-fetch (1),
+.BR doveadm\-search\-query (7) \ No newline at end of file
diff --git a/doc/man/doveadm-stats.1.in b/doc/man/doveadm-stats.1.in
new file mode 100644
index 0000000..8819215
--- /dev/null
+++ b/doc/man/doveadm-stats.1.in
@@ -0,0 +1,73 @@
+.\" Copyright (c) 2010-2018 Dovecot authors, see the included COPYING file
+.TH DOVEADM\-DUMP 1 "2016-01-12" "Dovecot v2.3" "Dovecot"
+.SH NAME
+doveadm\-stats \- Inspect or reset stats
+.\"------------------------------------------------------------------------
+.SH SYNOPSIS
+.BR doveadm\ stats\ dump " [ " \-s\ <stats\ socket\ path> " ] " <type> " [ " <filter> " ]"
+.PP
+.BR doveadm\ stats\ top " [ " \-s\ <stats\ socket\ path> " ] " "[ " -b " ]" " [ " sort field> " ]"
+.PP
+.BR doveadm\ stats\ reset " [ " \-s\ <stats\ socket\ path> " ] "
+.PP
+.BR doveadm\ stats\ add " [ " \-\-description\ <string> " ] [ " \-\-exporter\ <name> " [ " \-\-exporter-include\ <field> " ]] [ " \-\-fields\ <fields> " ] [ " \-\-group_by\ <fields> " ] " <name>\ <filter>
+.PP
+.BR doveadm\ stats\ remove\ <name>
+.\"------------------------------------------------------------------------
+.SH DESCRIPTION
+.B doveadm stats dump
+is used to output statistics
+.PP
+.B doveadm stats top
+is used to monitor statistics
+.PP
+.B doveadm stats reset
+is used to reset statistics
+.PP
+.B doveadm stats add
+is used to add metrics to statistics
+.PP
+.B doveadm stats remove
+is used to remove metrics from statistics
+.\"------------------------------------------------------------------------
+.SH OPTIONS
+Command specific
+.IR options :
+.TP
+.BI \-s socketpath
+Sets stats socket path
+.TP
+.B \-b
+Show disk input/output bytes
+.\"------------------------------------------------------------------------
+.SH ARGUMENTS
+.BR dump
+accepts following types: command, session, user, domain, ip and global.
+.PP
+Filter can be
+.TP
+.B user=<wildcard>
+Match given user.
+.TP
+.B domain=<wildcard>
+Match given DNS domain name
+.TP
+.B session=<str>
+Match session identifier
+.TP
+.B ip=<ip>"["/<mask>"]"
+Match local or remote IP
+.TP
+.B since=<timestamp>
+Match session start time
+.TP
+.B connected
+Show only connected sessions
+.PP
+.BR top
+accepts any valid field name to sort along with.
+.\"------------------------------------------------------------------------
+@INCLUDE:reporting-bugs@
+.\"------------------------------------------------------------------------
+.SH SEE ALSO
+.BR doveadm (1)
diff --git a/doc/man/doveadm-stop.1 b/doc/man/doveadm-stop.1
new file mode 100644
index 0000000..7184fe8
--- /dev/null
+++ b/doc/man/doveadm-stop.1
@@ -0,0 +1 @@
+.so man1/doveadm.1 \ No newline at end of file
diff --git a/doc/man/doveadm-sync.1.in b/doc/man/doveadm-sync.1.in
new file mode 100644
index 0000000..9f926e3
--- /dev/null
+++ b/doc/man/doveadm-sync.1.in
@@ -0,0 +1,458 @@
+.\" Copyright (c) 2014-2018 Dovecot authors, see the included COPYING file
+.TH DOVEADM\-SYNC 1 "2015-08-31" "Dovecot v2.3" "Dovecot"
+.SH NAME
+doveadm\-sync \- Dovecot\(aqs two\-way mailbox synchronization utility
+.br
+doveadm\-backup \- Dovecot\(aqs one\-way mailbox synchronization utility
+.\"------------------------------------------------------------------------
+.SH SYNOPSIS
+.BR doveadm " [" \-Dv "] " sync
+[\fB\-u\fP \fIuser\fP|\fB\-A\fP|\fB\-F\fP \fIfile\fP]
+[\fB\-S\fP \fIsocket_path\fP]
+.RB [ \-1fPRU ]
+[\fB\-l\fP \fIsecs\fP]
+[\fB\-r\fP \fIrawlog path\fP]
+[\fB\-m\fP \fImailbox\fP]
+[\fB\-g\fP \fImailbox guid\fP]
+[\fB\-n\fP \fInamespace\fP|\fB\-N\fP]
+[\fB\-x\fP \fIexclude\fP]
+[\fB\-a\fP \fIall mailbox\fP]
+[\fB\-s\fP \fIstate\fP]
+[\fB\-T\fP \fIsecs\fP]
+[\fB\-t\fP \fIstart date\fP]
+[\fB\-e\fP \fIend date\fP]
+[\fB\-O\fP \fIsync flag\fP]
+[\fB\-I\fP \fImax size\fP]
+\fB\-d\fP|\fIdestination\fP
+.\"-------------------------------------
+.PP
+.BR doveadm " [" \-Dv "] " backup
+[\fB\-u\fP \fIuser\fP|\fB\-A\fP|\fB\-F\fP \fIfile\fP]
+[\fB\-S\fP \fIsocket_path\fP]
+.RB [ \-fPRU ]
+[\fB\-l\fP \fIsecs\fP]
+[\fB\-r\fP \fIrawlog path\fP]
+[\fB\-m\fP \fImailbox\fP]
+[\fB\-g\fP \fImailbox guid\fP]
+[\fB\-n\fP \fInamespace\fP|\fB\-N\fP]
+[\fB\-x\fP \fIexclude\fP]
+[\fB\-a\fP \fIall mailbox\fP]
+[\fB\-s\fP \fIstate\fP]
+[\fB\-T\fP \fIsecs\fP]
+[\fB\-t\fP \fIstart date\fP]
+[\fB\-e\fP \fIend date\fP]
+[\fB\-O\fP \fIsync flag\fP]
+[\fB\-I\fP \fImax size\fP]
+\fB\-d\fP|\fIdestination\fP
+.\"------------------------------------------------------------------------
+.SH DESCRIPTION
+dsync is Dovecot\(aqs mailbox synchronization utility.
+It can be used for several different use cases: Two\-way synchronization of
+mailboxes, creating backups of mails, and convert mailboxes from/to
+different mailbox formats.
+All of these can be used within the same server or between different
+servers (via
+.BR ssh (1)
+or tcp connections).
+Remote mailboxes can be accessed also via IMAP protocol, which allows using
+dsync for mailbox migration purposes.
+.PP
+You can run dsync in one of three modes:
+.RS
+.\"-------------------------------------
+.IP \(bu
+.B doveadm backup
+performs one\-way synchronization.
+If there are any changes in the destination they will be deleted, so the
+destination will look exactly like the source.
+.\"-------------------------------------
+.IP \(bu
+.B doveadm sync
+performs two\-way synchronization.
+It merges all changes without losing anything.
+Both the mailboxes will end up looking identical after the synchronization
+is finished.
+.\"-------------------------------------
+.IP \(bu
+.B doveadm sync \-1
+performs one\-way synchronization, but it merges the changes in destination
+without deleting anything.
+This doesn\(aqt currently work perfectly, so its use should be limited.
+Its main purpose is that during mailbox migration you can run
+.B doveadm backup
+multiple times, then switch mails to be delivered to the new mailbox and
+run
+.B doveadm sync \-1
+once more to transfer any last new mails from the old mailbox.
+.IP
+The one\-way algorithm is the same as two-way dsync algorithm except the
+source account is not modified. It fetches the message's GUID (Global UID),
+which is used to identify any conflicting UIDs in messages. As long as the
+source and destination side has matching UID<\->GUID mapping, those emails
+are assumed to be synced correctly. Only after the first mismatch will
+changes begin.
+.IP
+Example: Source mailbox has messages UID 1..5; source mailbox is sync'd
+using
+.B doveadm backup
+to the destination. Subsequently, UID 6 is delivered to the source mailbox
+and UID 1 is expunged from the destination mailbox. In this example, UID 1
+is kept removed (in destination) because UID 1..5 have identical
+Date+Message\-ID headers. UID 6 is not seen in destination so it's copied.
+.IP
+If both source and destination have UID 6, but the messages are different,
+the headers don't match and both the messages are kept in the destination but
+they're given new UIDs 7 and 8 just to be sure any client didn't get confused
+about what UID 6 actually was. Thus, one\-way sync begins to quickly diverge
+from the source mailbox once changes start to occur on either side; one\-way
+sync should therefore normally only be used within a short period of time
+after a
+.B doveadm backup
+or
+.B doveadm sync
+command was used to synchronize the mailboxes.
+.\"-------------------------------------
+.RE
+.PP
+There are also three different synchronization algorithms:
+.RS
+.\"-------------------------------------
+.IP \(bu
+Full synchronization (\-f parameter) scans through all the messages in all
+the mailboxes.
+This guarantees that everything will be synchronized, but it\(aqs
+unnecessarily slow for incremental synchronization.
+.\"-------------------------------------
+.IP \(bu
+Fast synchronization (default) first attempts to find mailboxes that have
+changed, and synchronize only those.
+This is done by checking the mailboxes\(aq metadata (NEXTUID and
+HIGHESTMODSEQ).
+Usually this works fine, especially with one\-way synchronization, but if
+both sides do exactly the same number of changes, the metadata may end up
+containing the same values even if the changes were different.
+.\"-------------------------------------
+.IP \(bu
+Stateful synchronization (\-s parameter) is the most efficient way to
+synchronize mailboxes.
+It relies on having the earlier dsync run\(aqs state saved somewhere and
+being passed to the next dsync run.
+Based on this state dsync can send only the changes that happened after the
+previous dsync run.
+As long as the state or the mailboxes aren\(aqt corrupted this algorithm
+should work perfectly.
+The replicator process uses this internally to perform most of the
+synchronization.
+.\"-------------------------------------
+.RE
+.PP
+The syncing is done as perfectly as possible: an IMAP or a POP3 client
+shouldn\(aqt be able to notice any differences between the two mailboxes.
+Two\-way syncing means that it\(aqs safe to do any kind of modifications in
+both sides, and dsync will merge the changes without losing any changes
+done on either side.
+This is possible because dsync can access Dovecot\(aqs index logs that keep
+track of changes.
+It\(aqs of course possible to have conflicts during merging, these are
+resolved in a safe way.
+See the
+.I dsync design
+document for more information.
+.PP
+dsync uses the same configuration files as the rest of Dovecot (via
+.BR doveconf (1)
+binary).
+The entire configuration can be changed by giving \-c parameter to another
+configuration file, or using \-o parameter to override specific settings.
+When executing a remote dsync program it works the same way:
+it uses its own local configuration.
+.PP
+dsync can be run completely standalone.
+It doesn\(aqt require any Dovecot server processes to be running, except
+when using \-u parameter to do a
+.I userdb
+lookup from auth process.
+.PP
+dsync can sync either one or multiple users using the \-u or \-A
+parameters.
+For continuous replication you can use the Dovecot replicator process,
+which automatically runs dsync whenever messages have changed.
+.\"------------------------------------------------------------------------
+@INCLUDE:global-options@
+.\" --- command specific options --- "/.
+.PP
+Command specific
+.IR options :
+@INCLUDE:option-A@
+.\"-------------------------------------
+@INCLUDE:option-F-file@
+.\"-------------------------------------
+.TP
+.B \-1
+Do one\-way synchronization instead of two\-way synchronization.
+.\"-------------------------------------
+.TP
+.B \-f
+Do full synchronization.
+.\"-------------------------------------
+.TP
+.B \-N
+Synchronize all the available namespaces.
+By default only namespaces that don\(aqt have explicit location setting
+are synchronized.
+.\"-------------------------------------
+.TP
+.B \-P
+Run a
+.BR doveadm\-purge (1)
+for the destination (remote) storage after synchronization.
+.\"-------------------------------------
+.TP
+.B \-R
+Do a reverse sync. Normally, messages would be pushed from the local
+system to the destination (remote). This option reverses the flow, and
+will instead pull messages from the remote to the local storage.
+.\"-------------------------------------
+@INCLUDE:option-S-socket@
+.\"-------------------------------------
+.TP
+.BI \-T \ secs
+Specify the time in seconds, how long
+.BR doveadm (1)
+should wait for stalled I/O operations.
+The default timeout is 600 seconds.
+.\"-------------------------------------
+.TP
+.B \-U
+This is used internally by replicator to have dsync notify it when the
+synchronization is finished.
+.\"-------------------------------------
+.TP
+.B \-d
+Use the default destination, which is looked up from the
+.I mail_replica userdb
+extra field.
+.\"-------------------------------------
+.TP
+.BI \-g \ mailbox_guid
+Same as \-m, but find the mailbox to be synchronized by its GUID instead
+of by name.
+.\"-------------------------------------
+.TP
+.BI \-l \ secs
+Lock the dsync for this user.
+Wait for maximum
+.I secs
+before giving up.
+This parameter should be used to avoid broken synchronization if it\(aqs
+possible that dsync is being run concurrently for the same user.
+.\"-------------------------------------
+.TP
+.BI \-m \ mailbox
+Synchronize only this mailbox name.
+.\"-------------------------------------
+.TP
+.BI \-n \ namespace
+Synchronize only the specified namespace.
+This parameter can be used multiple times.
+.\"-------------------------------------
+.TP
+.BI \-a \ all\ mailbox
+Name for the "All mails" virtual mailbox. If specified, mails are attempted to
+be copied from this mailbox instead of being saved separately. This may
+reduce the total disk space usage as well as disk IO.
+.\"-------------------------------------
+.TP
+.BI \-t \ start\ date
+Skip any mails whose received-timestamp is older than the specified time.
+.\"-------------------------------------
+.TP
+.BI \-e \ end\ date
+Skip any mails whose received-timestamp is newer than the specified time.
+.\"-------------------------------------
+.TP
+.BI \-O \ sync\ flag
+Sync only mails that have the specified flag.
+If the flag name begins with \(dq\fB\-\fP\(dq, sync all mails except the ones
+with the specified flag.
+.\"-------------------------------------
+.TP
+.BI \-I \ max\ size
+Skip any mails larger than the specified size.
+.\"-------------------------------------
+.TP
+.BI \-r \ rawlog_path
+Running dsync remotely, write the remote input/output traffic to the
+specified log file.
+.\"-------------------------------------
+.TP
+.BI \-s \ previous_state
+Use stateful synchronization.
+If the previous state is unknown, use an empty string.
+The new state is always printed to standard output.
+.\"-------------------------------------
+@INCLUDE:option-u-user@
+.\"-------------------------------------
+.TP
+.BI \-x \ mailbox_mask
+Exclude the specified mailbox name/mask.
+The mask may contain \(dq\fB?\fP\(dq and \(dq\fB*\fP\(dq wildcards.
+The mask can also be a special-use name (e.g. \\Trash).
+This parameter can be used multiple times.
+.\"------------------------------------------------------------------------
+.SH ARGUMENTS
+.TP
+.I destination
+This argument specifies the synchronized destination.
+It can be one of:
+.RS
+.TP
+location
+Same as
+.I mail_location
+setting, e.g. maildir:\(ti/Maildir
+.TP
+.BI remote: login@host
+Uses
+.I dsync_remote_cmd
+setting to connect to the remote host (usually via ssh)
+.TP
+.I remoteprefix:login@host
+This is the same as remote, except \(dquser@domain\(rsn\(dq is sent before
+dsync protocol starts.
+This allows implementing a trusted wrapper script that runs doveadm
+dsync\-server by reading the username from the first line.
+.TP
+.BI tcp: host[:port]
+Connects to remote doveadm server via TCP.
+The default port is specified by
+.IR doveadm_port " setting."
+.TP
+.BI tcps: host[:port]
+This is the same as tcp, but with SSL.
+.TP
+.BI command\ [arg1\ [,\ arg2,\ ...]]
+Runs a local command that connects its standard input & output
+to a dsync server.
+.RE
+.\"------------------------------------------------------------------------
+.SH "EXIT STATUS"
+.B dsync
+will exit with one of the following values:
+.TP 4
+.B 0
+Synchronization was done perfectly.
+.TP
+.B 2
+Synchronization was done without errors, but some changes couldn\(aqt be done,
+so the mailboxes aren\(aqt perfectly synchronized. Running dsync again
+usually fixes this. Typically this occurs for message modification
+sequences with newly created mailboxes. It can also occur if one of the
+mailboxes change during the syncing.
+.TP
+.B 1, >2
+Synchronization failed.
+.\"------------------------------------------------------------------------
+.SH EXAMPLE
+.SS SYNCHRONIZATION
+Synchronize mailboxes with a remote server.
+Any errors are written to stderr.
+.PP
+.RS
+.nf
+.ft B
+doveadm sync \-u username@example.com remote:server\-replica.example.com
+.ft P
+.fi
+.RE
+.PP
+If you need more complex parameters to ssh, you can use e.g.:
+.PP
+.RS
+.nf
+.ft B
+doveadm sync \-u username@example.com ssh \-i id_dsa.dovecot \(rs
+mailuser@example.com doveadm dsync\-server \-u username@example.com
+.ft P
+.fi
+.RE
+.\"------------------------------------------------------------------------
+.SS CONVERTING
+Assuming that the
+.I mail_location
+setting in
+.I @pkgsysconfdir@/conf.d/10\-mail.conf
+is set to:
+.BR "mail_location = mdbox:\(ti/mdbox" ,
+a logged in system user may convert her/his mails from its Maildir in
+her/his home directory to the mdbox mailbox format.
+The user has to execute the command:
+.PP
+.RS
+.nf
+.ft B
+doveadm sync maildir:\(ti/Maildir
+.ft P
+.fi
+.RE
+.PP
+If you want to do this without any downtime, you can do the conversion one
+user at a time.
+Initially:
+.RS 4
+.IP \(bu 4
+Configuration uses
+.B mail_location = maildir:\(ti/Maildir
+.IP \(bu
+Set up the possibility of doing per\-user mail location using
+.I userdb
+extra fields.
+.RE
+.PP
+Then for each user:
+.RS 4
+.IP 1. 4
+Run
+.I doveadm sync
+once to do the initial conversion.
+.IP 2.
+Run
+.I doveadm sync
+again, because the initial conversion could have taken a while and new
+changes could have occurred during it.
+This second time only applies changes, so it should be fast.
+.IP 3.
+Update mail extra field in userdb to
+.BR mdbox:\(ti/mdbox .
+If you\(aqre using auth cache, you need to flush it, e.g.
+.BR "doveadm auth cache flush" .
+.IP 4.
+Wait for a few seconds and then kill (doveadm kick) the user\(aqs all
+existing imap and pop3 sessions (that are still using maildir).
+.IP 5.
+Run
+.I doveadm sync
+once more to apply final changes that were possibly done.
+After this there should be no changes to Maildir, because the user\(aqs
+mail location has been changed and all existing processes using it have
+been killed.
+.RE
+.PP
+Once all users have been converted, you can set the default
+.I mail_location
+to mdbox and remove the per\-user mail locations from
+.IR userdb .
+.\"------------------------------------------------------------------------
+@INCLUDE:reporting-bugs@
+.\"------------------------------------------------------------------------
+.SH SEE ALSO
+.BR doveadm (1),
+.BR doveadm\-auth (1),
+.BR doveadm\-kick (1),
+.BR doveadm\-purge (1),
+.BR doveconf (1)
+.\"-------------------------------------
+.PP
+Additional resources:
+.IP "dsync design"
+http://wiki2.dovecot.org/Design/Dsync
diff --git a/doc/man/doveadm-user.1.in b/doc/man/doveadm-user.1.in
new file mode 100644
index 0000000..a86e108
--- /dev/null
+++ b/doc/man/doveadm-user.1.in
@@ -0,0 +1,165 @@
+.\" Copyright (c) 2010-2018 Dovecot authors, see the included COPYING file
+.TH DOVEADM\-USER 1 "2013-11-23" "Dovecot v2.3" "Dovecot"
+.SH NAME
+doveadm\-user \- Perform a user lookup in Dovecot\(aqs userdbs
+.\"------------------------------------------------------------------------
+.SH SYNOPSIS
+.BR doveadm " [" \-Dv "] " user
+[\fB\-a\fP \fIuserdb_socket_path\fP]
+[\fB\-f\fP \fIfield\fP]
+.RB [ \-u ]
+[\fB\-x\fP \fIauth_info\fP]
+.IR user\ ...
+.\"------------------------------------------------------------------------
+.SH DESCRIPTION
+The
+.B user
+command is used to perform a user lookup \- to show what information
+Dovecot sees about the
+.IR user (s),
+or if it exists at all in the configured
+.IR userdb (s).
+.PP
+The
+.I auth_info
+may be useful when the userdb is for example a SQL database and you are
+using %variables, like
+.B %s
+or
+.BR %l ,
+in the
+.I user_query
+setting.
+Or when you have configured the userdb in a way like this:
+.sp
+.nf
+userdb {
+ driver = passwd\-file
+ args = /etc/%s.passwd
+}
+.fi
+.\"------------------------------------------------------------------------
+@INCLUDE:global-options@
+.\" --- command specific options --- "/.
+.PP
+Command specific
+.IR options :
+.\"-------------------------------------
+.TP
+.BI \-a\ userdb_socket_path
+This option is used to specify an absolute path to an alternative UNIX
+domain socket.
+.sp
+By default
+.BR doveadm (1)
+will use the socket
+.IR @rundir@/auth\-userdb .
+The socket may be located in another directory, when the default
+.I base_dir
+setting was overridden in
+.IR @pkgsysconfdir@/dovecot.conf .
+.\"-------------------------------------
+.TP
+.BI \-f\ field
+When this option and the name of a userdb field is given,
+.BR doveadm (1)
+will show only the value of the specified field.
+.\"-------------------------------------
+.TP
+.B \-u
+When this option is given,
+.BR doveadm (1)
+will only show values from the
+.IR userdb .
+Without \-u parameter if any of the
+.IR uid ", " gid ", " home " or " mail
+fields are missing, their defaults are taken from configuration file.
+.\"-------------------------------------
+.TP
+.BI \-x\ auth_info
+.I auth_info
+specifies additional conditions for the
+.B user
+command.
+The
+.I auth_info
+option string has to be given as
+.IB name = value
+pair.
+For multiple conditions the
+.B \-x
+option could be supplied multiple times.
+.br
+Possible names for the
+.I auth_info
+are:
+.RS
+.TP
+.B service
+The service for which the userdb lookup should be tested.
+The value may be the name of a service, commonly used with Dovecot.
+For example:
+.BR imap ,
+.BR pop3\ or
+.BR smtp .
+.TP
+.B lip
+The local IP address (server) for the test.
+.TP
+.B rip
+The remote IP address (client) for the test.
+.TP
+.B lport
+The local port, e.g. 143
+.TP
+.B rport
+The remote port, e.g. 24567
+.RE
+.\"------------------------------------------------------------------------
+.SH ARGUMENTS
+.TP
+.I user
+Is a
+.IR user \(aqs
+login name.
+Depending on the configuration, a login name may be for example
+.BR jane " or " john@example.com .
+It\(aqs also possible to use
+.RB \(aq * \(aq
+and
+.RB \(aq ? \(aq
+wildcards (e.g. \-u *@example.org).
+.\"------------------------------------------------------------------------
+.SH EXAMPLE
+Perform a user lookup for the users jane and john@example.com.
+.sp
+.nf
+.B doveadm user jane john@example.com
+userdb: jane
+ uid : 8001
+ gid : 8001
+ home : /home/jane
+ mail : sdbox:~/sdbox
+ plugins : sieve
+ quota_rule: *:storage=150M
+
+userdb: john@example.com
+ home : /srv/mail/8/70312/79832
+ uid : 79832
+ gid : 70312
+ mail : mdbox:~/mdbox
+.fi
+.PP
+The next example shows a user lookup, using wildcards.
+.sp
+.nf
+.B doveadm user *.?oe@example.net
+jane.doe@example.net
+judy.roe@example.net
+john.doe@example.net
+.fi
+.\"------------------------------------------------------------------------
+@INCLUDE:reporting-bugs@
+.\"------------------------------------------------------------------------
+.SH SEE ALSO
+.BR doveadm (1) \ No newline at end of file
diff --git a/doc/man/doveadm-who.1.in b/doc/man/doveadm-who.1.in
new file mode 100644
index 0000000..585580b
--- /dev/null
+++ b/doc/man/doveadm-who.1.in
@@ -0,0 +1,96 @@
+.\" Copyright (c) 2010-2018 Dovecot authors, see the included COPYING file
+.TH DOVEADM\-WHO 1 "2010-07-12" "Dovecot v2.3" "Dovecot"
+.SH NAME
+doveadm\-who \- Show who is logged in to the Dovecot server
+.\"------------------------------------------------------------------------
+.SH SYNOPSIS
+.BR doveadm " [" \-Dv "] [" \-f
+.IR formatter ]
+.BR who\ [ \-1 ]
+[\fB\-a\fP \fIanvil_socket_path\fP]
+.RI [ user ]
+[\fIip\fP[\fB/\fP\fImask\fP]]
+.\"------------------------------------------------------------------------
+.SH DESCRIPTION
+The
+.B who
+command is used to show which users from which hosts are currently
+connected to which service.
+.\"------------------------------------------------------------------------
+@INCLUDE:global-options-formatter@
+.\" --- command specific options --- "/.
+.PP
+This command uses by default the output formatter
+.BR table .
+.PP
+Command specific
+.IR options :
+.\"-------------------------------------
+.TP
+.B \-1
+Print one line per user and connection.
+Otherwise the connections are grouped by the username.
+.\"-------------------------------------
+.TP
+.BI \-a\ anvil_socket_path
+This option is used to specify an alternative socket.
+The option\(aqs argument is either an absolute path to a local UNIX domain
+socket, or a hostname and port
+.RI ( hostname : port ),
+in order to connect a remote host via a TCP socket.
+.sp
+By default
+.BR doveadm (1)
+will use the socket
+.IR @rundir@/anvil .
+The socket may be located in another directory, when the default
+.I base_dir
+setting was overridden in
+.IR @pkgsysconfdir@/dovecot.conf .
+.\"------------------------------------------------------------------------
+.SH ARGUMENTS
+.TP
+\fIip\fP[\fB/\fP\fImask\fP]
+Specify an
+.I ip
+address or network range, in CIDR notation, to reduce the result to
+matching connections.
+.\"-------------------------------------
+.TP
+.I user
+List only users, whose name match
+.IR user .
+It\(aqs also possible to use wildcards in the
+.I user
+name.
+.\"------------------------------------------------------------------------
+.SH EXAMPLE
+Show authenticated sessions, filtered by the client\(aqs IP address.
+.sp
+.nf
+.B doveadm who ::1
+username # proto (pids) (ips)
+jane 2 imap (30155 30412) (::1)
+.B doveadm who 192.0.2.0/24
+username # proto (pids) (ips)
+john@example.com 1 imap (30257) (192.0.2.34)
+.fi
+.PP
+Show authenticated sessions, filtered by username.
+.sp
+.nf
+.B doveadm who pvo
+username # proto (pids) (ips)
+pvo 1 sieve (30343) (fd95:4eed:38ba::25)
+pvo 4 imap (25693 25686 25679 25669) (fd95:4eed:38ba::25)
+.B doveadm who ja*
+username # proto (pids) (ips)
+james 1 imap (30091) (127.0.0.1)
+jane 2 imap (30155 30412) (::1)
+.fi
+.\"------------------------------------------------------------------------
+@INCLUDE:reporting-bugs@
+.\"------------------------------------------------------------------------
+.SH SEE ALSO
+.BR doveadm (1),
+.BR doveadm\-kick (1) \ No newline at end of file
diff --git a/doc/man/doveadm.1.in b/doc/man/doveadm.1.in
new file mode 100644
index 0000000..ae5acba
--- /dev/null
+++ b/doc/man/doveadm.1.in
@@ -0,0 +1,270 @@
+.\" Copyright (c) 2010-2018 Dovecot authors, see the included COPYING file
+.TH DOVEADM 1 "2014-10-07" "Dovecot v2.3" "Dovecot"
+.SH NAME
+doveadm \- Dovecot\(aqs administration utility
+.\"------------------------------------------------------------------------
+.SH SYNOPSIS
+.BR doveadm " [" \-Dv "] [" \-f
+.IR formatter ]
+.IR command " [" command_options "] [" command_arguments ]
+.\"------------------------------------------------------------------------
+.SH DESCRIPTION
+.B doveadm
+is the Dovecot administration tool. It can be used to manage various parts
+of Dovecot, as well as access users\(aq mailboxes.
+.br
+Execute
+.BR doveadm\ help ,
+for a command usage listing.
+.\"------------------------------------------------------------------------
+@INCLUDE:global-options-formatter@
+.\"------------------------------------------------------------------------
+.SH COMMANDS
+.\"------------------------------------------------------------------------
+These commands work directly with Dovecot\(aqs master process.
+.\"-------------------------------------
+.SS reload
+.B doveadm reload
+.PP
+Force
+.BR dovecot (1)
+to reload the configuration.
+.\"------------------------------------------------------------------------
+.SS stop
+.B doveadm stop
+.PP
+Stop
+.BR dovecot (1)
+and all its child processes.
+.\"------------------------------------------------------------------------
+.SS ADDITIONAL MASTER COMMANDS
+.TP
+.B doveadm config
+.BR doveadm\-config (1),
+Dump Dovecot configuration.
+.\"-------------------------------------
+.TP
+.B doveadm director
+.BR doveadm\-director (1),
+Manage Dovecot directors (if used by proxy servers).
+.\"-------------------------------------
+.TP
+.B doveadm exec
+.BR doveadm\-exec (1),
+Easily execute commands from Dovecot\(aqs libexec_dir.
+.\"-------------------------------------
+.TP
+.B doveadm instance
+.BR doveadm\-instance (1),
+Manage the list of running Dovecot instances.
+.\"-------------------------------------
+.TP
+.B doveadm kick
+.BR doveadm\-kick (1),
+Disconnect users by user name and/or IP address.
+.\"-------------------------------------
+.TP
+.B doveadm log
+.BR doveadm\-log (1),
+Locate, test or reopen Dovecot\(aqs log files.
+.\"-------------------------------------
+.TP
+.B doveadm penalty
+.BR doveadm\-penalty (1),
+Show current penalties.
+.\"-------------------------------------
+.TP
+.B doveadm proxy
+.BR doveadm\-proxy (1),
+Handle Dovecot proxy connections.
+.\"-------------------------------------
+.TP
+.B doveadm who
+.BR doveadm\-who (1);
+Show who is logged in to the Dovecot server.
+.\"------------------------------------------------------------------------
+.SS AUTHENTICATION COMMANDS
+.\"-------------------------------------
+.TP
+.B doveadm auth
+.BR doveadm\-auth (1),
+Test authentication for a user.
+.\"-------------------------------------
+.TP
+.B doveadm pw
+.BR doveadm\-pw (1),
+Dovecot\(aqs password hash generator.
+.\"-------------------------------------
+.TP
+.B doveadm user
+.BR doveadm\-user (1),
+Perform a user lookup in Dovecot\(aqs userdbs
+.\"------------------------------------------------------------------------
+.SS MAILBOX COMMANDS
+.TP
+.B doveadm acl
+.BR doveadm\-acl (1),
+Manage Access Control List (ACL).
+.\"-------------------------------------
+.TP
+.B doveadm altmove
+.BR doveadm\-altmove (1),
+Move matching mails to the alternative storage.
+.\"-------------------------------------
+.TP
+.B doveadm backup
+.BR doveadm\-backup (1),
+Dovecot\(aqs one\-way mailbox synchronization utility.
+.\"-------------------------------------
+.TP
+.B doveadm batch
+.BR doveadm\-batch (1),
+Execute multiple commands for multiple users.
+.\"-------------------------------------
+.TP
+.B doveadm copy
+.BR doveadm\-copy (1),
+Copy messages matching the given search query into another mailbox.
+.\"-------------------------------------
+.TP
+.B doveadm deduplicate
+.BR doveadm\-deduplicate (1),
+Expunge duplicate messages.
+.\"-------------------------------------
+.TP
+.B doveadm dump
+.BR doveadm\-dump (1),
+Dump the content of Dovecot\(aqs binary mailbox index/log.
+.\"-------------------------------------
+.TP
+.B doveadm expunge
+.BR doveadm\-expunge (1),
+Expunge messages matching given search query.
+.\"-------------------------------------
+.TP
+.B doveadm fetch
+.BR doveadm\-fetch (1),
+Fetch messages matching given search query.
+.\"-------------------------------------
+.TP
+.B doveadm flags
+.BR doveadm\-flags (1),
+Add, remove or replace messages\(aq flags.
+.\"-------------------------------------
+.TP
+.B doveadm force\-resync
+.BR doveadm\-force\-resync (1),
+Repair broken mailboxes, in case Dovecot doesn\(aqt automatically do that.
+.\"-------------------------------------
+.TP
+.B doveadm fs
+.BR doveadm\-fs (1),
+Interact with the abstract mail storage filesystem.
+.\"-------------------------------------
+.TP
+.B doveadm fts
+.BR doveadm\-fts (1),
+Manipulate the Full Text Search (FTS) index.
+.\"-------------------------------------
+.TP
+.B doveadm import
+.BR doveadm\-import (1),
+Import messages matching given search query.
+.\"-------------------------------------
+.TP
+.B doveadm index
+.BR doveadm\-index (1),
+Index messages in a given mailbox.
+.\"-------------------------------------
+.TP
+.B doveadm mailbox
+.BR doveadm\-mailbox (1),
+Various commands related to handling mailboxes.
+.\"-------------------------------------
+.TP
+.B doveadm mailbox cryptokey
+.BR doveadm\-mailbox\-cryptokey (1),
+Mail crypt plugin management.
+.\"-------------------------------------
+.TP
+.B doveadm move
+.BR doveadm\-move (1)
+Move messages matching the given search query into another mailbox.
+.\"-------------------------------------
+.TP
+.B doveadm purge
+.BR doveadm\-purge (1)
+Remove messages with refcount=0 from mdbox files.
+.\"-------------------------------------
+.TP
+.B doveadm quota
+.BR doveadm\-quota (1),
+Initialize/recalculate or show current quota usage.
+.\"-------------------------------------
+.TP
+.B doveadm rebuild
+.BR doveadm\-rebuild (1),
+Rebuild index metadata from message data.
+.\"-------------------------------------
+.TP
+.B doveadm replicator
+.BR doveadm\-replicator (1),
+Manage users\(aq mail replication.
+.\"-------------------------------------
+.TP
+.B doveadm save
+.BR doveadm\-save (1),
+Save email to users\(aq mailboxes.
+.\"-------------------------------------
+.TP
+.B doveadm search
+.BR doveadm\-search (1),
+Show a list of mailbox GUIDs and message UIDs matching given search query.
+.\"-------------------------------------
+.TP
+.B doveadm stats
+.BR doveadm\-stats (1),
+Inspect or reset stats.
+.\"-------------------------------------
+.TP
+.B doveadm sync
+.BR doveadm\-sync (1),
+Dovecot\(aqs two\-way mailbox synchronization utility.
+.\"------------------------------------------------------------------------
+.SH "EXIT STATUS"
+.B doveadm
+will exit with one of the following values:
+.TP 4
+.B 0
+Selected command was executed successful.
+.TP
+.B >0
+Command failed in some way.
+.\"------------------------------------------------------------------------
+.SH ENVIRONMENT
+.TP
+.B USER
+This environment variable is used to determine the
+.I user
+if a command accepts a
+.I user
+but none was specified.
+.\"------------------------------------------------------------------------
+.SH FILES
+.TP
+.I @pkgsysconfdir@/dovecot.conf
+Dovecot\(aqs main configuration file.
+.TP
+.I @pkgsysconfdir@/conf.d/10\-mail.conf
+Mailbox locations and namespaces.
+.TP
+.I @pkgsysconfdir@/conf.d/90\-plugin.conf
+Plugin specific settings.
+.\"------------------------------------------------------------------------
+@INCLUDE:reporting-bugs@
+.\"------------------------------------------------------------------------
+.SH SEE ALSO
+.BR doveadm\-help (1),
+.BR doveconf (1),
+.BR dovecot (1),
+.BR doveadm\-search\-query (7)
diff --git a/doc/man/doveconf.1.in b/doc/man/doveconf.1.in
new file mode 100644
index 0000000..060f0e0
--- /dev/null
+++ b/doc/man/doveconf.1.in
@@ -0,0 +1,220 @@
+.\" Copyright (c) 2010-2018 Dovecot authors, see the included COPYING file
+.TH DOVECONF 1 "2014-10-19" "Dovecot v2.3" "Dovecot"
+.SH NAME
+doveconf \- Dovecot\(aqs configuration dumping utility
+.\"------------------------------------------------------------------------
+.SH SYNOPSIS
+.B doveconf
+.RB [ \-adnPNSx ]
+[\fB\-c\fP \fIconfig\-file\fP]
+[\fB\-f\fP \fIfilter\fP]
+[\fB\-m\fP \fImodule\fP]
+.\"-------------------------------------
+.br
+.B doveconf
+.RB [ \-n ]
+[\fB\-c\fP \fIconfig\-file\fP]
+.IR section_name \ ...
+.\"-------------------------------------
+.br
+.B doveconf
+.RB [ \-h ]
+[\fB\-c\fP \fIconfig\-file\fP]
+[\fB\-f\fP \fIfilter\fP]
+.IR setting_name \ ...
+.\"------------------------------------------------------------------------
+.SH DESCRIPTION
+.B doveconf
+reads and parses Dovecot\(aqs configuration files and converts them into a
+simpler format used by the rest of Dovecot. All standalone programs, such
+as
+.BR dovecot (1)
+and
+.BR dovecot\-lda (1),
+will first get their settings by executing doveconf.
+.PP
+For system administrators,
+.B doveconf
+is mainly useful for dumping the configuration in easy human readable
+output.
+.\"------------------------------------------------------------------------
+.SH OPTIONS
+.TP
+.B \-a
+Show all settings with their currently configured values.
+.\"---------------------------------
+.TP
+.BI \-c \ config\-file
+read configuration from the given
+.IR config\-file .
+By default
+.I @pkgsysconfdir@/dovecot.conf
+will be used.
+.\"---------------------------------
+.TP
+.B \-d
+Show the setting\(aqs default value instead of the one currently
+configured.
+.\"---------------------------------
+.TP
+.BI \-f \ filter
+Show the matching configuration for the specified
+.I filter
+condition.
+The
+.I filter
+option string has to be given as
+.IB name = value
+pair.
+For multiple filter conditions the
+.B \-f
+option can be supplied multiple times.
+.br
+Possible names for the
+.I filter
+are:
+.RS
+.TP
+.B lname
+The local hostname, e.g. mail.example.com.
+This will only match hostnames which were configured like:
+.br
+.B local_name mail.example.com { # special settings }
+.TP
+.B local
+The server\(aqs hostname or IP address.
+This will also match hostnames which were configured like:
+.br
+.B local imap.example.net { # special settings }
+.TP
+.B protocol, service
+The protocol, e.g. imap or pop3
+.TP
+.B remote
+The client\(aqs hostname or IP address.
+.RE
+.\"---------------------------------
+.TP
+.B \-h
+Hide the setting\(aqs name, show only the setting\(aqs value.
+.\"---------------------------------
+.TP
+.BI \-m\ module
+Show only settings for the given
+.IR module .
+.RS
+e.g.
+.BR imap ,
+.BR imap\-login ,
+.BR lmtp ,
+.BR pop3\ or
+.B pop3\-login
+.RE
+.\"---------------------------------
+.TP
+.B \-n
+Show only settings with non\-default values.
+.\"---------------------------------
+.TP
+.B \-N
+Show settings with non\-default values and explicitly set default values.
+.\"---------------------------------
+.TP
+.B \-S
+Dump settings in simplified machine parsable/readable format.
+.\"---------------------------------
+.TP
+.B \-s
+Show also hidden settings. The hidden settings should not be changed normally.
+.\"---------------------------------
+.TP
+.\"---------------------------------
+.TP
+.B \-P
+Show passwords and other sensitive values.
+.\"---------------------------------
+.TP
+.B \-x
+Expand configuration variables (e.g. \(Domail_plugins \(rA quota) and show
+file contents (from e.g. ssl_cert = </etc/ssl/certs/dovecot.pem).
+.\"---------------------------------
+.TP
+.I section_name
+Show only the current configuration of one or more specified sections.
+.\"---------------------------------
+.TP
+.I setting_name
+Show only the setting of one or more
+.IR setting_name (s)
+with the currently configured value. You can show a setting inside a
+section using \(aq/\(aq as the section separator, e.g.
+service/imap/executable.
+.\"------------------------------------------------------------------------
+.SH EXAMPLE
+When Dovecot was configured to use different settings for some
+networks/subnets it is possible to show which settings will be applied
+for a specific connection.
+.sp
+.nf
+.ft B
+doveconf \-f local=10.0.0.110 \-f remote=10.11.1.2 \-f service=pop3 \-n
+.ft P
+.fi
+.PP
+.B doveconf
+can be also used to convert v1.x configuration files into v2.x format.
+.sp
+.nf
+.ft B
+doveconf \-n \-c /oldpath/dovecot.conf > \
+@pkgsysconfdir@/dovecot.conf.new
+.ft P
+.fi
+.\"-------------------------------------
+.PP
+This example shows how to ask
+.B doveconf
+for a global setting and a protocol specific setting.
+The second command uses also the
+.B \-h
+option, in order to hide the setting\(aqs name.
+.sp
+.nf
+.ft B
+doveconf mail_plugins
+.ft P
+mail_plugins = quota
+.ft B
+doveconf \-h \-f protocol=imap mail_plugins
+.ft P
+quota imap_quota
+.fi
+.\"-------------------------------------
+.PP
+This example demonstrates how to dump a whole configuration section.
+.sp
+.nf
+.ft B
+doveconf dict
+.ft P
+dict {
+ quota = pgsql:@pkgsysconfdir@/dovecot\-dict\-sql.conf.ext
+}
+.fi
+.PP
+Or how to dump only the quota dict:
+.sp
+.nf
+.ft B
+doveconf dict/quota
+.ft P
+dict/quota = pgsql:@pkgsysconfdir@/dovecot\-dict\-sql.conf.ext
+.fi
+.\"------------------------------------------------------------------------
+@INCLUDE:reporting-bugs@
+.\"------------------------------------------------------------------------
+.SH SEE ALSO
+.BR doveadm (1),
+.BR dovecot (1),
+.BR dovecot\-lda (1),
+.BR dsync (1) \ No newline at end of file
diff --git a/doc/man/dovecot-lda.1.in b/doc/man/dovecot-lda.1.in
new file mode 100644
index 0000000..7f8033b
--- /dev/null
+++ b/doc/man/dovecot-lda.1.in
@@ -0,0 +1,166 @@
+.\" Copyright (c) 2010-2018 Dovecot authors, see the included COPYING file
+.TH DOVECOT\-LDA 1 "2011-01-16" "Dovecot v2.3" "Dovecot"
+.SH NAME
+dovecot\-lda \- Dovecot\(aqs local mail delivery agent
+.\"------------------------------------------------------------------------
+.SH SYNOPSIS
+.B dovecot\-lda
+.RB [ \-ek ]
+[\fB\-a\fP \fIaddress\fP]
+[\fB\-c\fP \fIconfig_file\fP]
+[\fB\-d\fP \fIusername\fP]
+[\fB\-f\fP \fIenvelope_sender\fP]
+[\fB\-m\fP \fImailbox\fP]
+[\fB\-o\fP \fIsetting=value\fP]
+[\fB\-p\fP \fIpath\fP]
+.\"------------------------------------------------------------------------
+.SH DESCRIPTION
+The
+.B dovecot\-lda
+is a local mail delivery agent which takes mail from an MTA and delivers
+it to a user\(aqs mailbox, while keeping Dovecot index files up to date.
+.PP
+Main features of the
+.B dovecot\-lda
+are:
+.TP 4
+*
+Mailbox indexing during mail delivery, providing faster mailbox access
+later
+.TP
+*
+Quota enforcing by the quota plugin
+.TP
+*
+Sieve language support by the Pigeonhole sieve plugin
+.\"------------------------------------------------------------------------
+.SH OPTIONS
+Options accepted by
+.BR dovecot\-lda :
+.\"-------------------------------------
+.TP
+.BI \-a\ address
+Destination address (e.g. user+ext@domain). Default is the same as
+.IR username .
+.\"-------------------------------------
+.TP
+.BI \-c\ config_file
+Alternative configuration file path.
+.\"-------------------------------------
+.TP
+.BI \-d\ username
+Destination
+.IR username .
+If given, the user information is looked up from userdb.
+Typically used with virtual users, but not necessarily with system users.
+.\"-------------------------------------
+.TP
+.B \-e
+If mail gets rejected, write the rejection reason to stderr and exit with
+status 77 (EX_NOPERM).
+The default is to send a rejection mail ourself.
+.\"-------------------------------------
+.TP
+.BI \-f\ envelope_sender
+Envelope sender address.
+.\"-------------------------------------
+.TP
+.B \-k
+Don\(aqt clear all environment at startup.
+.\"-------------------------------------
+.TP
+.BI \-m\ mailbox
+Destination mailbox (default is
+.BR INBOX ).
+If the mailbox doesn\(aqt exist, it will not be created (unless the
+.I lda_mailbox_autocreate
+setting is set to
+.BR yes ).
+If a message couldn\(aqt be saved to the
+.I mailbox
+for any reason, it\(aqs delivered to
+.B INBOX
+instead.
+.\"---------------------------------
+.TP
+.BI \-o\ setting = value
+Overrides the configuration
+.I setting
+from
+.I @pkgsysconfdir@/dovecot.conf
+and from the userdb with the given
+.IR value .
+In order to override multiple settings, the
+.B \-o
+option may be specified multiple times.
+.\"-------------------------------------
+.TP
+.BI \-p\ path
+Path to the mail to be delivered instead of reading from stdin.
+If using maildir the file is hard linked to the destination if possible.
+This allows a single mail to be delivered to multiple users using hard
+links, but currently it also prevents deliver from updating cache file so
+it shouldn\(aqt be used unless really necessary.
+.\"------------------------------------------------------------------------
+.SH "EXIT STATUS"
+.B dovecot\-lda
+will exit with one of the following values:
+.TP 4
+.B 0
+Delivery was successful. (EX_OK)
+.TP
+.B 64
+Invalid parameter given. (EX_USAGE)
+.TP
+.B 77
+.B \-e
+option was used and mail was rejected.
+Typically this happens when user is over quota and
+.B quota_full_tempfail = no
+is configured. (EX_NOPERM)
+.TP
+.B 75
+A temporary failure. This is returned for almost all failures. See the log
+file for details. (EX_TEMPFAIL)
+.\"------------------------------------------------------------------------
+.SH FILES
+.TP
+.I @pkgsysconfdir@/dovecot.conf
+Dovecot\(aqs main configuration file.
+.TP
+.I @pkgsysconfdir@/conf.d/10\-mail.conf
+Mailbox locations and namespaces.
+.TP
+.I @pkgsysconfdir@/conf.d/15\-lda.conf
+LDA specific settings.
+.TP
+.I @pkgsysconfdir@/conf.d/90\-plugin.conf
+Plugin specific settings.
+.TP
+.I @pkgsysconfdir@/conf.d/90\-quota.conf
+Quota configuration.
+.\"------------------------------------------------------------------------
+@INCLUDE:reporting-bugs@
+.\"------------------------------------------------------------------------
+.SH SEE ALSO
+.BR doveadm (1),
+.BR dovecot (1),
+.BR doveconf (1),
+.BR dsync (1)
+.PP
+Related MTA specific documentation:
+.\"-------------------------------------
+.TP
+Postfix:
+.BR postconf (5),
+.BR transport (5),
+.BR pipe (8)
+.\"-------------------------------------
+.PP
+Exim:
+.IP "The accept router"
+http://exim.org/exim\-html\-current/doc/html/spec_html/ch16.html
+.IP "Generic options for transports"
+http://exim.org/exim\-html\-current/doc/html/spec_html/ch24.html
+.IP "The pipe transport"
+http://exim.org/exim\-html\-current/doc/html/spec_html/ch29.html
diff --git a/doc/man/dovecot-sysreport.1.in b/doc/man/dovecot-sysreport.1.in
new file mode 100644
index 0000000..e3b30ce
--- /dev/null
+++ b/doc/man/dovecot-sysreport.1.in
@@ -0,0 +1,40 @@
+.\" Copyright (c) 2010-2018 Dovecot authors, see the included COPYING file
+.TH DOVECOT-SYSREPORT 1 "2020-01-21" "Dovecot v2.3" "Dovecot"
+.SH NAME
+dovecot-sysreport \- Dovecot\(aqs system report utility
+.\"------------------------------------------------------------------------
+.SH SYNOPSIS
+.BR dovecot-sysreport " [" \-h|\-\-help "] [" \-c|\-\-core " ["\c
+.IR binary "] " core " [...]]"
+.BR "[\-d|\-\-destination
+.IR dest "]
+.BR "[\-k|\-\-keeptemp]
+.\"------------------------------------------------------------------------
+.SH DESCRIPTION
+.B dovecot-sysreport
+is a utility that should be used to gather information from the current
+system to be reported for dovecot bug fixes. It will collect dovecot's
+ps output, service status, process status, uptime command's output,
+error log, stats dump and if given, a core file along with its binary
+dependencies.
+.\"------------------------------------------------------------------------
+.SH OPTIONS
+.TP
+.B \-h|\-\-help
+Prints a help message.
+.TP
+.BI \-c|\-\-config\ root_config_file
+Sets the root file of the dovecot's configuration. If not set, it will be
+assumed to be in the default configuration path.
+.TP
+.BI \-o|\-\-core\ [ binary "] " core " [...]]"
+Includes core files along with their dependencies extracted from the
+specified binary file.
+.TP
+.BI \-d|\-\-destination\ dest
+Sets the file location which the report archive should be put to. The default
+value is dovecot-sysreport-<hostname>-<current_timestamp>.tar.gz in the
+current path.
+.TP
+.B \-k|\-\-keeptemp
+If set, temp files would not be deleted at the end. \ No newline at end of file
diff --git a/doc/man/dovecot.1.in b/doc/man/dovecot.1.in
new file mode 100644
index 0000000..a161b54
--- /dev/null
+++ b/doc/man/dovecot.1.in
@@ -0,0 +1,167 @@
+.\" Copyright (c) 2010-2018 Dovecot authors, see the included COPYING file
+.TH DOVECOT 1 "2013-08-06" "Dovecot v2.3" "Dovecot"
+.SH NAME
+dovecot \- a secure and highly configurable IMAP and POP3 server
+.\"------------------------------------------------------------------------
+.SH SYNOPSIS
+\fBdovecot\fP [\fB\-Fp\fP] [\fB\-c\fP \fIconfig\-file\fP]
+.br
+.B dovecot \-a
+[\fB\-c\fP \fIconfig\-file\fP]
+.br
+.B dovecot \-n
+[\fB\-c\fP \fIconfig\-file\fP]
+.br
+.B dovecot \-\-build\-options
+.br
+.B dovecot \-\-help
+.br
+.B dovecot \-\-hostdomain
+.br
+.B dovecot \-\-version
+.br
+.B dovecot reload
+.br
+.B dovecot stop
+.\"------------------------------------------------------------------------
+.SH DESCRIPTION
+Dovecot is an open source IMAP and POP3 server for Linux/UNIX\-like
+systems, written with security primarily in mind.
+Dovecot is an excellent choice for both small and large installations.
+It\(aqs fast, simple to set up, requires no special administration and it
+uses very little memory.
+.\"------------------------------------------------------------------------
+.SH OPTIONS
+.TP
+.B \-a
+Dump all configuration settings to stdout and exit successfully.
+The same as
+.IR doveconf\ \-a .
+.TP
+.BI \-c\ config\-file
+Start
+.B dovecot
+with an alternative configuration.
+.TP
+.B \-F
+Run
+.B dovecot
+in foreground, do not daemonize.
+.TP
+.B \-n
+Dump non\-default settings to stdout and exit successfully.
+The same as
+.IR doveconf\ \-n .
+.TP
+.B \-p
+Prompt for the ssl key password for the configured
+.I ssl_key
+on startup.
+.TP
+.B \-\-build\-options
+Show Dovecot\(aqs build options and exit successfully.
+.TP
+.B \-\-help
+Print a usage message to stdout and exit successfully.
+.TP
+.B \-\-hostdomain
+Shows the current
+.IR host . domain
+name of the system.
+If the domain lookup should fail for some reason, only the hostname will
+be shown.
+.TP
+.B \-\-version
+Show Dovecot\(aqs version and exit successfully.
+.\"------------------------------------------------------------------------
+.SH COMMANDS
+.TP
+.B reload
+Force
+.B dovecot
+to reload its configuration.
+.TP
+.B stop
+Shutdown
+.B dovecot
+and all its child processes.
+.PP
+When
+.I shutdown_clients
+is set to
+.BR no ,
+existing sessions will continue to use the old settings, after a
+.BR "dovecot reload" .
+Also all sessions will keep alive after a
+.BR "dovecot stop" .
+.br
+By default all active sessions will be shut down.
+.\"------------------------------------------------------------------------
+.SH SIGNALS
+Dovecot handles the following
+.I signals
+as described:
+.TP
+.B HUP
+Force
+.B dovecot
+to reload its configuration.
+.TP
+.B INT
+Shutdown
+.B dovecot
+and all its child processes.
+.TP
+.B TERM
+Shutdown
+.B dovecot
+and all its child processes.
+.TP
+.B USR1
+Force
+.B dovecot
+to reopen all configured log files (\c
+.IR log_path ,
+.IR info_log_path\ and
+.IR debug_log_path ).
+.
+.PP
+The
+.I signals
+.BR ALARM\ and
+.B PIPE
+are ignored.
+.\"------------------------------------------------------------------------
+.SH FILES
+.TP
+.I @pkgsysconfdir@/dovecot.conf
+Dovecot\(aqs main configuration file.
+.TP
+.I @pkgsysconfdir@/dovecot\-ldap.conf.ext
+Dovecot\(aqs LDAP authdb/userdb module configuration file.
+.TP
+.I @pkgsysconfdir@/dovecot\-sql.conf.ext
+Dovecot\(aqs SQL authdb/userdb module configuration file.
+.TP
+.I @pkgsysconfdir@/dovecot\-dict\-sql.conf.ext
+Dovecot\(aqs dict configuration with SQL\-backend.
+.TP
+.I @pkgsysconfdir@/conf.d/auth\-*\-conf.ext
+Configuration files of different authentication modules.
+.TP
+.I @pkgsysconfdir@/conf.d/*.conf
+Configuration files of different services and settings.
+.\"------------------------------------------------------------------------
+@INCLUDE:reporting-bugs@
+.\"------------------------------------------------------------------------
+.SH AUTHOR
+Dovecot <http://dovecot.org> and its manual pages were written by the
+Dovecot authors <http://dovecot.org/doc/AUTHORS>, mainly Timo Sirainen <tss
+at iki.fi>, and are licensed under the terms of the MIT and LGPLv2.1
+licenses, see <http://dovecot.org/doc/COPYING> for details.
+.\"------------------------------------------------------------------------
+.SH SEE ALSO
+.BR doveadm (1),
+.BR doveconf (1),
+.BR dovecot\-lda (1),
+.BR dsync (1) \ No newline at end of file
diff --git a/doc/man/dsync.1 b/doc/man/dsync.1
new file mode 100644
index 0000000..106321c
--- /dev/null
+++ b/doc/man/dsync.1
@@ -0,0 +1 @@
+.so man1/doveadm-sync.1 \ No newline at end of file
diff --git a/doc/man/global-options-formatter.inc b/doc/man/global-options-formatter.inc
new file mode 100644
index 0000000..cb792e1
--- /dev/null
+++ b/doc/man/global-options-formatter.inc
@@ -0,0 +1,46 @@
+.SH OPTIONS
+Global
+.BR doveadm (1)
+.IR options :
+.TP
+.B \-D
+Enables verbosity and debug messages.
+.TP
+.BI \-f\ formatter
+Specifies the
+.I formatter
+for formatting the output.
+Supported formatters are:
+.RS
+.TP
+.B flow
+prints each line with
+.IB key = value
+pairs.
+.TP
+.B pager
+prints each
+.IR key :\ value
+pair on its own line and separates records with form feed character
+.RB ( ^L ).
+.TP
+.B tab
+prints a table header followed by tab separated value lines.
+.TP
+.B table
+prints a table header followed by adjusted value lines.
+.RE
+.TP
+.BI \-o\ setting = value
+Overrides the configuration
+.I setting
+from
+.I @pkgsysconfdir@/dovecot.conf
+and from the userdb with the given
+.IR value .
+In order to override multiple settings, the
+.B \-o
+option may be specified multiple times.
+.TP
+.B \-v
+Enables verbosity, including progress counter.
diff --git a/doc/man/global-options.inc b/doc/man/global-options.inc
new file mode 100644
index 0000000..bf99294
--- /dev/null
+++ b/doc/man/global-options.inc
@@ -0,0 +1,21 @@
+.SH OPTIONS
+Global
+.BR doveadm (1)
+.IR options :
+.TP
+.B \-D
+Enables verbosity and debug messages.
+.TP
+.BI \-o\ setting = value
+Overrides the configuration
+.I setting
+from
+.I @pkgsysconfdir@/dovecot.conf
+and from the userdb with the given
+.IR value .
+In order to override multiple settings, the
+.B \-o
+option may be specified multiple times.
+.TP
+.B \-v
+Enables verbosity, including progress counter.
diff --git a/doc/man/option-A.inc b/doc/man/option-A.inc
new file mode 100644
index 0000000..256e939
--- /dev/null
+++ b/doc/man/option-A.inc
@@ -0,0 +1,27 @@
+.TP
+.B \-A
+If the
+.B \-A
+option is present, the
+.I command
+will be performed for all users.
+Using this option in combination with system users from
+.B userdb { driver = passwd }
+is not recommended, because it contains also users with a lower UID than
+the one configured with the
+.I first_valid_uid
+setting.
+.sp
+When the SQL userdb module is used make sure that the
+.I iterate_query
+setting in
+.I @pkgsysconfdir@/dovecot\-sql.conf.ext
+matches your database layout.
+When using the LDAP userdb module, make sure that the
+.IR iterate_attrs " and " iterate_filter
+settings in
+.I @pkgsysconfdir@/dovecot-ldap.conf.ext
+match your LDAP schema.
+Otherwise
+.BR doveadm (1)
+will be unable to iterate over all users.
diff --git a/doc/man/option-F-file.inc b/doc/man/option-F-file.inc
new file mode 100644
index 0000000..ac561b0
--- /dev/null
+++ b/doc/man/option-F-file.inc
@@ -0,0 +1,15 @@
+.TP
+.BI \-F\ file
+Execute the
+.I command
+for all the users in the
+.IR file .
+This is similar to the
+.B \-A
+option,
+but instead of getting the list of users from the userdb,
+they are read from the given
+.IR file .
+The
+.I file
+contains one username per line.
diff --git a/doc/man/option-S-socket.inc b/doc/man/option-S-socket.inc
new file mode 100644
index 0000000..2e0e374
--- /dev/null
+++ b/doc/man/option-S-socket.inc
@@ -0,0 +1,10 @@
+.TP
+.BI \-S\ socket_path
+The option\(aqs argument is either an absolute path to a local UNIX domain
+socket, or a hostname and port
+.RI ( hostname : port ),
+in order to connect a remote host via a TCP socket.
+.sp
+This allows an administrator to execute
+.BR doveadm (1)
+mail commands through the given socket.
diff --git a/doc/man/option-u-user.inc b/doc/man/option-u-user.inc
new file mode 100644
index 0000000..aa6beac
--- /dev/null
+++ b/doc/man/option-u-user.inc
@@ -0,0 +1,22 @@
+.TP
+.BI \-u\ user/mask
+Run the
+.I command
+only for the given
+.IR user .
+It\(aqs also possible to use
+.RB \(aq * \(aq
+and
+.RB \(aq ? \(aq
+wildcards (e.g. \-u *@example.org).
+.br
+When neither the
+.B \-A
+option, nor the
+.BI \-F\ file
+option, nor the
+.BI \-u\ user
+was specified, the
+.I command
+will be executed with the environment of the
+currently logged in user.
diff --git a/doc/man/reporting-bugs.inc b/doc/man/reporting-bugs.inc
new file mode 100644
index 0000000..1823ca2
--- /dev/null
+++ b/doc/man/reporting-bugs.inc
@@ -0,0 +1,6 @@
+.SH REPORTING BUGS
+Report bugs, including
+.I doveconf \-n
+output, to the Dovecot Mailing List <dovecot@dovecot.org>.
+Information about reporting bugs is available at:
+http://dovecot.org/bugreport.html
diff --git a/doc/man/sed.sh b/doc/man/sed.sh
new file mode 100644
index 0000000..2bab52a
--- /dev/null
+++ b/doc/man/sed.sh
@@ -0,0 +1,38 @@
+#!/bin/sh
+
+SRCDIR="${1:-`pwd`}"
+RUNDIR="${2:-/usr/local/var/run/dovecot}"
+PKGSYSCONFDIR="${3:-/usr/local/etc/dovecot}"
+PKGLIBEXECDIR="${4:-/usr/local/libexec/dovecot}"
+
+sed -e "/^@INCLUDE:global-options@$/{
+ r ${SRCDIR}/global-options.inc
+ d
+ }" \
+ -e "/^@INCLUDE:global-options-formatter@$/{
+ r ${SRCDIR}/global-options-formatter.inc
+ d
+ }" \
+ -e "/^@INCLUDE:option-A@$/{
+ r ${SRCDIR}/option-A.inc
+ d
+ }" \
+ -e "/^@INCLUDE:option-F-file@$/{
+ r ${SRCDIR}/option-F-file.inc
+ d
+ }" \
+ -e "/^@INCLUDE:option-S-socket@$/{
+ r ${SRCDIR}/option-S-socket.inc
+ d
+ }" \
+ -e "/^@INCLUDE:option-u-user@$/{
+ r ${SRCDIR}/option-u-user.inc
+ d
+ }" \
+ -e "/^@INCLUDE:reporting-bugs@$/{
+ r ${SRCDIR}/reporting-bugs.inc
+ d
+ }" | sed -e "s|@pkgsysconfdir@|${PKGSYSCONFDIR}|" \
+ -e "s|@rundir@|${RUNDIR}|" \
+ -e "s|@pkglibexecdir@|${PKGLIBEXECDIR}|"
+