Update docs + minor changes.
* .gitmodules: Add imprimatur. * Makefile.am: Likewise. * configure.ac: Likewise. * doc/Makefile.am: Likewise. * bootstrap.conf: Comment out make in doc/texinfo * doc/texinfo/Makefile.am: Rewrite. * doc/texinfo/fdl.texi: Minor change. * doc/texinfo/getdate.texi: Minor change. * doc/texinfo/mailutils.texi: begin rewrite. * doc/texinfo/mu-mh.texi: Minor change. * doc/texinfo/programs.texi: begin rewrite. * doc/texinfo/sieve.texi: Minor change. * doc/texinfo/usage.texi: Minor change. * libmailutils/cfg/lexer.l: Allow for @ in unquoted strings * pop3d/bulletin.c: Relax safety checks for bulletin.db * pop3d/logindelay.c: Relax safety checks for stat.sb * pop3d/pop3d.h (DEFAULT_GROUP_DB_SAFETY): New define.
Showing
19 changed files
with
121 additions
and
235 deletions
... | @@ -15,7 +15,7 @@ | ... | @@ -15,7 +15,7 @@ |
15 | ## You should have received a copy of the GNU General Public License | 15 | ## You should have received a copy of the GNU General Public License |
16 | ## along with GNU Mailutils. If not, see <http://www.gnu.org/licenses/>. | 16 | ## along with GNU Mailutils. If not, see <http://www.gnu.org/licenses/>. |
17 | 17 | ||
18 | ACLOCAL_AMFLAGS = -I m4 -I am -I gint | 18 | ACLOCAL_AMFLAGS = -I m4 -I am -I gint -I doc/imprimatur |
19 | 19 | ||
20 | if MU_COND_PYTHON | 20 | if MU_COND_PYTHON |
21 | PYTHON_DIR = python | 21 | PYTHON_DIR = python | ... | ... |
... | @@ -100,5 +100,5 @@ done | ... | @@ -100,5 +100,5 @@ done |
100 | wget -P m4 http://git.savannah.gnu.org/cgit/radius.git/plain/scripts/radius.m4 | 100 | wget -P m4 http://git.savannah.gnu.org/cgit/radius.git/plain/scripts/radius.m4 |
101 | 101 | ||
102 | # Create included listings for texinfo docs. | 102 | # Create included listings for texinfo docs. |
103 | make -C doc/texinfo -f maint.mk | 103 | #make -C doc/texinfo -f maint.mk |
104 | 104 | ... | ... |
... | @@ -1316,23 +1316,7 @@ dnl get sysconfdir expanded. | ... | @@ -1316,23 +1316,7 @@ dnl get sysconfdir expanded. |
1316 | CPPFLAGS="$CPPFLAGS -DSYSCONFDIR=\\\"\$(sysconfdir)\\\"" | 1316 | CPPFLAGS="$CPPFLAGS -DSYSCONFDIR=\\\"\$(sysconfdir)\\\"" |
1317 | 1317 | ||
1318 | # Doc hints. | 1318 | # Doc hints. |
1319 | # Select a rendition level: | 1319 | IMPRIMATUR_INIT([doc/imprimatur]) |
1320 | # DISTRIB for stable releases (at most one dot in the version number) | ||
1321 | # and maintenance releases (two dots, patchlevel < 50) | ||
1322 | # PROOF for alpha releases. | ||
1323 | # PUBLISH can only be required manually when running make in doc/ | ||
1324 | AC_SUBST(RENDITION) | ||
1325 | case `echo $VERSION|sed 's/[[^.]]//g'` in | ||
1326 | ""|".") RENDITION=DISTRIB;; | ||
1327 | "..") if test `echo $VERSION | sed 's/.*\.//'` -lt 50; then | ||
1328 | RENDITION=DISTRIB | ||
1329 | else | ||
1330 | AC_DEFINE_UNQUOTED([MU_ALPHA_RELEASE], 1, | ||
1331 | [Define if this is an alpha release]) | ||
1332 | RENDITION=PROOF | ||
1333 | fi;; | ||
1334 | *) RENDITION=PROOF;; | ||
1335 | esac | ||
1336 | 1320 | ||
1337 | AC_CONFIG_COMMANDS([status],[ | 1321 | AC_CONFIG_COMMANDS([status],[ |
1338 | cat <<EOF | 1322 | cat <<EOF | ... | ... |
... | @@ -15,5 +15,5 @@ | ... | @@ -15,5 +15,5 @@ |
15 | ## You should have received a copy of the GNU General Public License | 15 | ## You should have received a copy of the GNU General Public License |
16 | ## along with GNU Mailutils. If not, see <http://www.gnu.org/licenses/>. | 16 | ## along with GNU Mailutils. If not, see <http://www.gnu.org/licenses/>. |
17 | 17 | ||
18 | SUBDIRS = texinfo man | 18 | SUBDIRS = imprimatur texinfo man |
19 | EXTRA_DIST = ChangeLog.CVS rfc/README | 19 | EXTRA_DIST = ChangeLog.CVS rfc/README | ... | ... |
imprimatur @ f32ef198
1 | Subproject commit f32ef1983968e755cd580b06e369476d7e7f88b6 |
... | @@ -19,6 +19,10 @@ mailutils.tmp | ... | @@ -19,6 +19,10 @@ mailutils.tmp |
19 | mailutils.toc | 19 | mailutils.toc |
20 | mailutils.tp | 20 | mailutils.tp |
21 | mailutils.vr | 21 | mailutils.vr |
22 | mailutils.fl | ||
23 | mailutils.kw | ||
24 | mailutils.pdf | ||
25 | mailutils.pr | ||
22 | mdate-sh | 26 | mdate-sh |
23 | muint.info* | 27 | muint.info* |
24 | stamp-1 | 28 | stamp-1 | ... | ... |
... | @@ -17,174 +17,53 @@ | ... | @@ -17,174 +17,53 @@ |
17 | 17 | ||
18 | info_TEXINFOS = mailutils.texi | 18 | info_TEXINFOS = mailutils.texi |
19 | 19 | ||
20 | INCFILES = \ | ||
21 | addr.inc\ | ||
22 | http.inc\ | ||
23 | mailcap.inc\ | ||
24 | numaddr.inc\ | ||
25 | sfrom.inc\ | ||
26 | url-parse.inc | ||
27 | |||
28 | RENDITION_TEXI=rendition.texi macros.texi | ||
29 | |||
30 | mailutils_TEXINFOS = \ | 20 | mailutils_TEXINFOS = \ |
31 | address.texi\ | ||
32 | attribute.texi\ | ||
33 | auth.texi\ | ||
34 | body.texi\ | ||
35 | c-api.texi\ | ||
36 | encoding.texi\ | ||
37 | envelope.texi\ | ||
38 | fdl.texi\ | 21 | fdl.texi\ |
39 | folder.texi\ | ||
40 | framework.texi\ | ||
41 | getdate.texi\ | 22 | getdate.texi\ |
42 | headers.texi\ | 23 | macros.texi\ |
43 | imap4.texi\ | ||
44 | iterator.texi\ | ||
45 | libmu_scm.texi\ | ||
46 | libmu_auth.texi\ | ||
47 | libmu_sieve.texi\ | ||
48 | locker.texi\ | ||
49 | mailbox.texi\ | ||
50 | mailcap.texi\ | ||
51 | maildir.texi\ | ||
52 | mailer.texi\ | ||
53 | mbox.texi\ | ||
54 | message.texi\ | ||
55 | mh.texi\ | ||
56 | mu-mh.texi\ | 24 | mu-mh.texi\ |
57 | mu_address.texi\ | ||
58 | mu_body.texi\ | ||
59 | mu_logger.texi\ | ||
60 | mu_mailbox.texi\ | ||
61 | mu_message.texi\ | ||
62 | mu_mime.texi\ | ||
63 | mu_scm.texi\ | ||
64 | nntp.texi\ | ||
65 | parse822.texi\ | ||
66 | pop3.texi\ | ||
67 | programs.texi\ | 25 | programs.texi\ |
68 | sendmail.texi\ | ||
69 | sieve.texi\ | 26 | sieve.texi\ |
70 | smtp.texi\ | ||
71 | stream.texi\ | ||
72 | usage.texi\ | 27 | usage.texi\ |
73 | url.texi\ | 28 | version.texi |
74 | $(RENDITION_TEXI)\ | ||
75 | $(INCFILES) | ||
76 | 29 | ||
77 | DISTCLEANFILES=*.pgs *.kys *.vrs | ||
78 | clean-local: | 30 | clean-local: |
79 | rm -rf manual | 31 | rm -rf manual |
80 | 32 | ||
81 | # The rendering level is one of PUBLISH, DISTRIB or PROOF. | 33 | AM_MAKEINFOFLAGS = @IMPRIMATUR_MAKEINFOFLAGS@ |
82 | # Just call `make RENDITION=PROOF [target]' if you want PROOF rendition. | 34 | # Imprimatur setup |
83 | 35 | imprimatur_INPUT=$(info_TEXINFOS) $(mailutils_TEXINFOS) | |
84 | MAKEINFOFLAGS=-D$(RENDITION) | 36 | include ../imprimatur/imprimatur.mk |
85 | GENDOCS=gendocs.sh | 37 | #CHECK_DOCS=$(top_srcdir)/@IMPRIMATUR_MODULE_DIR@/check-docs.sh |
86 | TEXI2DVI=texi2dvi -t '@set $(RENDITION)' -E | ||
87 | |||
88 | # Make sure you set TEXINPUTS. | ||
89 | # TEXINPUTS=/usr/share/texmf/pdftex/plain/misc/ is ok for most distributions | ||
90 | |||
91 | TEXINPUTS=$(srcdir):$(top_srcdir)/build-aux:$$TEXINPUTS | ||
92 | |||
93 | manual: | ||
94 | TEXINPUTS=$(srcdir):$(top_srcdir)/build-aux:$(TEXINPUTS) \ | ||
95 | MAKEINFO="$(MAKEINFO) $(MAKEINFOFLAGS)" \ | ||
96 | TEXI2DVI="$(TEXI2DVI) -t @finalout" \ | ||
97 | $(GENDOCS) --texi2html $(PACKAGE) '$(PACKAGE_NAME) manual' | ||
98 | 38 | ||
99 | 39 | # Checking | |
100 | EXTRA_DIST=gendocs_template mastermenu.el untabify.el | 40 | all-check-docs: imprimatur-basic-checks |
101 | 41 | ||
102 | master-menu: | 42 | check-docs: |
103 | emacs -batch -l mastermenu.el -f make-master-menu $(info_TEXINFOS) | 43 | @$(MAKE) -k all-check-docs |
104 | 44 | ||
105 | untabify: | 45 | # |
106 | emacs -batch -l untabify.el $(info_TEXINFOS) $(mailutils_TEXINFOS) | ||
107 | 46 | ||
108 | fix-sentence-spacing: | 47 | master-menu: imprimatur-master-menu |
109 | for file in $(info_TEXINFOS) $(mailutils_TEXINFOS); \ | 48 | untabify: imprimatur-untabify |
110 | do \ | 49 | final: imprimatur-final |
111 | if grep -q '\. [@A-Z]' $$file; then \ | ||
112 | mv $$file $${file}~; \ | ||
113 | sed -r 's/\. ([@A-Z])/. \1/g' $${file}~ > $$file; \ | ||
114 | fi; \ | ||
115 | done | ||
116 | 50 | ||
117 | final: untabify fix-sentence-spacing master-menu | 51 | # Web manual |
52 | #EXTRA_DIST = \ | ||
53 | # gendocs_template | ||
118 | 54 | ||
119 | 55 | GENDOCS=gendocs.sh | |
120 | # Checks | 56 | TEXI2DVI=texi2dvi -t '@set $(RENDITION)' -E |
121 | check-tabs: | ||
122 | @if test -n "`cat $(info_TEXINFOS) $(mailutils_TEXINFOS) |\ | ||
123 | tr -d -c '\t'`"; then \ | ||
124 | echo >&2 "Sources contain tabs; run make untabify"; \ | ||
125 | false; \ | ||
126 | fi | ||
127 | |||
128 | check-sentence-spacing: | ||
129 | @if grep -q '\. [@A-Z]' $(info_TEXINFOS) $(mailutils_TEXINFOS); then \ | ||
130 | echo >&2 "Sources contain double-space sentence separators"; \ | ||
131 | echo >&2 "Run make fix-sentence-spacing to fix"; \ | ||
132 | fi | ||
133 | |||
134 | check-format: check-tabs check-sentence-spacing | ||
135 | |||
136 | check-refs: | ||
137 | @for file in $(info_TEXINFOS) $(mailutils_TEXINFOS); \ | ||
138 | do \ | ||
139 | sed -e = $$file | \ | ||
140 | sed -n 'N;/@FIXME-.*ref/{s/\(^[0-9][0-9]*\).*@FIXME-.*ref{\([^}]*\)}.*/'$$file':\1: \2/gp}'; \ | ||
141 | done > $@-t; \ | ||
142 | if [ -s $@-t ]; then \ | ||
143 | echo >&2 "Unresolved cross-references:"; \ | ||
144 | cat $@-t >&2;\ | ||
145 | rm $@-t; \ | ||
146 | else \ | ||
147 | rm -f $@-t; \ | ||
148 | fi | ||
149 | |||
150 | check-fixmes: | ||
151 | @for file in $(info_TEXINFOS) $(mailutils_TEXINFOS); \ | ||
152 | do \ | ||
153 | sed -e = $$file | \ | ||
154 | sed -n 'N;/@FIXME{/{s/\(^[0-9][0-9]*\).*@FIXME{\([^}]*\).*/'$$file':\1: \2/gp}'; \ | ||
155 | done > $@-t; \ | ||
156 | if [ -s $@-t ]; then \ | ||
157 | echo >&2 "Unresolved FIXMEs:"; \ | ||
158 | cat $@-t >&2; \ | ||
159 | rm $@-t; \ | ||
160 | false; \ | ||
161 | else \ | ||
162 | rm -f $@-t; \ | ||
163 | fi | ||
164 | |||
165 | check-writeme: | ||
166 | @grep -Hn @WRITEME $(info_TEXINFOS) $(mailutils_TEXINFOS) > $@-t; \ | ||
167 | if [ -s $@-t ]; then \ | ||
168 | echo "Empty nodes:"; \ | ||
169 | cat $@-t; \ | ||
170 | rm $@-t; \ | ||
171 | false;\ | ||
172 | else \ | ||
173 | rm $@-t; \ | ||
174 | fi | ||
175 | 57 | ||
176 | check-unrevised: | 58 | .PHONY: manual |
177 | @grep -Hn @UNREVISED $(info_TEXINFOS) $(mailutils_TEXINFOS) > $@-t; \ | 59 | manual: |
178 | if [ -s $@-t ]; then \ | 60 | TEXINPUTS=$(srcdir):$(top_srcdir)/build-aux:$(TEXINPUTS) \ |
179 | echo >&2 "Unrevised nodes:"; \ | 61 | MAKEINFO="$(MAKEINFO) $(MAKEINFOFLAGS) $(AM_MAKEINFOFLAGS)" \ |
180 | cat $@-t >&2; \ | 62 | TEXI2DVI="$(TEXI2DVI)" \ |
181 | rm $@-t; \ | 63 | TEXI2HTML="texi2html $(AM_MAKEINFOFLAGS)" \ |
182 | false;\ | 64 | $(GENDOCS) --texi2html $(PACKAGE) '$(PACKAGE_NAME) manual' |
183 | else \ | ||
184 | rm $@-t; \ | ||
185 | fi | ||
186 | 65 | ||
187 | all-check-docs: check-format check-writeme check-unrevised check-refs check-fixmes | 66 | manual.tar.bz2: manual |
67 | tar cfj manual.tar.bz2 manual | ||
188 | 68 | ||
189 | check-docs: | 69 | man-tar: manual.tar.bz2 |
190 | $(MAKE) -k all-check-docs | ... | ... |
This diff is collapsed.
Click to expand it.
This diff is collapsed.
Click to expand it.
This diff is collapsed.
Click to expand it.
... | @@ -16,7 +16,7 @@ For the information about the current state of Mailutils MH | ... | @@ -16,7 +16,7 @@ For the information about the current state of Mailutils MH |
16 | implementation please refer to file @file{mh/TODO} in the Mailutils | 16 | implementation please refer to file @file{mh/TODO} in the Mailutils |
17 | distribution directory. | 17 | distribution directory. |
18 | 18 | ||
19 | [FIXME] | 19 | @FIXME{This is perhaps not so important now.} |
20 | 20 | ||
21 | @menu | 21 | @menu |
22 | * Diffs:: Major differences between Mailutils MH and other MH | 22 | * Diffs:: Major differences between Mailutils MH and other MH |
... | @@ -27,7 +27,7 @@ distribution directory. | ... | @@ -27,7 +27,7 @@ distribution directory. |
27 | @subsection Major differences between Mailutils MH and other MH implementations | 27 | @subsection Major differences between Mailutils MH and other MH implementations |
28 | 28 | ||
29 | @enumerate 1 | 29 | @enumerate 1 |
30 | @item All programs use usual GNU long options. The support for MH single-dash | 30 | @item All programs use usual GNU long options. The support for MH single-dash |
31 | options is provided for backward compatibility; | 31 | options is provided for backward compatibility; |
32 | 32 | ||
33 | @item UUCP addresses are not supported; | 33 | @item UUCP addresses are not supported; |
... | @@ -55,16 +55,16 @@ Diffs}); | ... | @@ -55,16 +55,16 @@ Diffs}); |
55 | @anchor{decode function} | 55 | @anchor{decode function} |
56 | @deftypefn {MH Format} string decode (string @var{str}) | 56 | @deftypefn {MH Format} string decode (string @var{str}) |
57 | 57 | ||
58 | Decodes the input string @var{str} as per RFC 2047. Useful in printing | 58 | Decodes the input string @var{str} as per RFC 2047. Useful in printing |
59 | @samp{From:}, @samp{To:} and @samp{Subject:} headers. | 59 | @samp{From:}, @samp{To:} and @samp{Subject:} headers. |
60 | 60 | ||
61 | Notice that, unlike the similar NMH function, @code{decode} checks the value | 61 | Notice that, unlike the similar NMH function, @code{decode} checks the value |
62 | of the global profile variable @code{Charset} (@pxref{Charset variable}) | 62 | of the global profile variable @code{Charset} (@pxref{Charset variable}) |
63 | to determine the charset to output the result in. If this variable is | 63 | to determine the charset to output the result in. If this variable is |
64 | not set, @code{decode} returns its argument without any change. If | 64 | not set, @code{decode} returns its argument without any change. If |
65 | this variable is set to @code{auto}, @code{decode} tries to determine | 65 | this variable is set to @code{auto}, @code{decode} tries to determine |
66 | the charset name from the setting of @env{LC_ALL} environment | 66 | the charset name from the setting of @env{LC_ALL} environment |
67 | variable. Otherwise, the value of @code{Charset} is taken to be the | 67 | variable. Otherwise, the value of @code{Charset} is taken to be the |
68 | name of the character set. | 68 | name of the character set. |
69 | @end deftypefn | 69 | @end deftypefn |
70 | 70 | ||
... | @@ -75,7 +75,7 @@ Returns package name (string @samp{mailutils}). | ... | @@ -75,7 +75,7 @@ Returns package name (string @samp{mailutils}). |
75 | 75 | ||
76 | @deftypefn {MH Format} string package_string () | 76 | @deftypefn {MH Format} string package_string () |
77 | 77 | ||
78 | Returns full package string (e.g. @samp{GNU Mailutils 2.1}) | 78 | Returns full package string (e.g. @samp{GNU Mailutils 2.1}) |
79 | @end deftypefn | 79 | @end deftypefn |
80 | 80 | ||
81 | @deftypefn {MH Format} string version () | 81 | @deftypefn {MH Format} string version () |
... | @@ -86,7 +86,7 @@ Returns mailutils version. | ... | @@ -86,7 +86,7 @@ Returns mailutils version. |
86 | @deftypefn {MH Format} string unre (string @var{str}) | 86 | @deftypefn {MH Format} string unre (string @var{str}) |
87 | 87 | ||
88 | The function removes any leading whitespace and eventual @samp{Re:} prefix | 88 | The function removes any leading whitespace and eventual @samp{Re:} prefix |
89 | from its argument. Useful for creating subjects in reply messages: | 89 | from its argument. Useful for creating subjects in reply messages: |
90 | 90 | ||
91 | @smallexample | 91 | @smallexample |
92 | %<@{subject@}Subject: Re: %(unre@{subject@})\\n%> | 92 | %<@{subject@}Subject: Re: %(unre@{subject@})\\n%> |
... | @@ -96,7 +96,7 @@ from its argument. Useful for creating subjects in reply messages: | ... | @@ -96,7 +96,7 @@ from its argument. Useful for creating subjects in reply messages: |
96 | @anchor{reply_regex function} | 96 | @anchor{reply_regex function} |
97 | @deftypefn {MH Format} void reply_regex (string @var{r}) | 97 | @deftypefn {MH Format} void reply_regex (string @var{r}) |
98 | 98 | ||
99 | Sets the regular expression used to recognize reply messages. The | 99 | Sets the regular expression used to recognize reply messages. The |
100 | argument @var{r} should be a POSIX extended regular expression. | 100 | argument @var{r} should be a POSIX extended regular expression. |
101 | Matching is case insensitive. | 101 | Matching is case insensitive. |
102 | 102 | ||
... | @@ -109,7 +109,7 @@ For example, the following invocation | ... | @@ -109,7 +109,7 @@ For example, the following invocation |
109 | @noindent | 109 | @noindent |
110 | corresponds to English @samp{Re}, Polish @samp{Odp}, Norwegian @samp{Aw} or | 110 | corresponds to English @samp{Re}, Polish @samp{Odp}, Norwegian @samp{Aw} or |
111 | German @samp{Ang}, optionally followed by a number in brackets, followed | 111 | German @samp{Ang}, optionally followed by a number in brackets, followed |
112 | by colon and any amount of whitespace. Notice proper quoting of the | 112 | by colon and any amount of whitespace. Notice proper quoting of the |
113 | regex metacharacters. | 113 | regex metacharacters. |
114 | 114 | ||
115 | See also @code{Reply-Regex} (@pxref{Reply-Regex variable}) and | 115 | See also @code{Reply-Regex} (@pxref{Reply-Regex variable}) and |
... | @@ -123,12 +123,12 @@ See also @code{Reply-Regex} (@pxref{Reply-Regex variable}) and | ... | @@ -123,12 +123,12 @@ See also @code{Reply-Regex} (@pxref{Reply-Regex variable}) and |
123 | If @var{str} is not given, the value of @samp{Subject:} header is taken. | 123 | If @var{str} is not given, the value of @samp{Subject:} header is taken. |
124 | 124 | ||
125 | The function returns true if its argument matches the ``reply subject'' | 125 | The function returns true if its argument matches the ``reply subject'' |
126 | regular expression. This expression is set via the global profile variable | 126 | regular expression. This expression is set via the global profile variable |
127 | @code{Reply-Regex} (@pxref{Reply-Regex variable}) or via the format | 127 | @code{Reply-Regex} (@pxref{Reply-Regex variable}) or via the format |
128 | function @code{reply_regex}. | 128 | function @code{reply_regex}. |
129 | 129 | ||
130 | This function is useful for creating @samp{Subject:} headers in reply | 130 | This function is useful for creating @samp{Subject:} headers in reply |
131 | messages. For example, consider the following construction: | 131 | messages. For example, consider the following construction: |
132 | 132 | ||
133 | @smallexample | 133 | @smallexample |
134 | @group | 134 | @group |
... | @@ -139,7 +139,7 @@ messages. For example, consider the following construction: | ... | @@ -139,7 +139,7 @@ messages. For example, consider the following construction: |
139 | @end smallexample | 139 | @end smallexample |
140 | 140 | ||
141 | If the @samp{Subject:} header already contained reply prefix, this construct | 141 | If the @samp{Subject:} header already contained reply prefix, this construct |
142 | leaves it unchanged. Otherwise it prepends to it the value of | 142 | leaves it unchanged. Otherwise it prepends to it the value of |
143 | @code{Reply-Prefix} profile variable, or, if it is unset, the string | 143 | @code{Reply-Prefix} profile variable, or, if it is unset, the string |
144 | @samp{Re:}. | 144 | @samp{Re:}. |
145 | 145 | ||
... | @@ -151,7 +151,7 @@ This expression is used in default @file{replcomps} and | ... | @@ -151,7 +151,7 @@ This expression is used in default @file{replcomps} and |
151 | 151 | ||
152 | This function returns true if the given element is present in the | 152 | This function returns true if the given element is present in the |
153 | recipient mask (as modified by @option{--cc} or @option{--nocc} options) and | 153 | recipient mask (as modified by @option{--cc} or @option{--nocc} options) and |
154 | false otherwise. It is used in default formats for @command{repl} and | 154 | false otherwise. It is used in default formats for @command{repl} and |
155 | @command{comp}, e.g.: | 155 | @command{comp}, e.g.: |
156 | 156 | ||
157 | @smallexample | 157 | @smallexample |
... | @@ -201,8 +201,8 @@ output. | ... | @@ -201,8 +201,8 @@ output. |
201 | @anchor{Reply-Regex variable} | 201 | @anchor{Reply-Regex variable} |
202 | @deftypevar {MH Variable} string Reply-Regex | 202 | @deftypevar {MH Variable} string Reply-Regex |
203 | 203 | ||
204 | Keeps the regular expression used to recognize reply messages. The | 204 | Keeps the regular expression used to recognize reply messages. The |
205 | argument should be a POSIX extended regular expression. Matching | 205 | argument should be a POSIX extended regular expression. Matching |
206 | is case insensitive. | 206 | is case insensitive. |
207 | 207 | ||
208 | For more information, please see @xref{reply_regex function}. | 208 | For more information, please see @xref{reply_regex function}. |
... | @@ -225,21 +225,21 @@ RAND @command{anno} displays the prompt anyway. | ... | @@ -225,21 +225,21 @@ RAND @command{anno} displays the prompt anyway. |
225 | @item burst | 225 | @item burst |
226 | 226 | ||
227 | The utility is able to burst both RFC 934 digest messages and MIME | 227 | The utility is able to burst both RFC 934 digest messages and MIME |
228 | multipart messages. It provides two additional command line options: | 228 | multipart messages. It provides two additional command line options: |
229 | @option{--recurse} and @option{--length}. | 229 | @option{--recurse} and @option{--length}. |
230 | 230 | ||
231 | The @option{--recurse} option instructs the utility to recursively | 231 | The @option{--recurse} option instructs the utility to recursively |
232 | expand the digest. | 232 | expand the digest. |
233 | 233 | ||
234 | The @option{--length} option can be used to set the minimal encapsulation | 234 | The @option{--length} option can be used to set the minimal encapsulation |
235 | boundary length for RFC 934 digests. Default length is 1, | 235 | boundary length for RFC 934 digests. Default length is 1, |
236 | i.e. encountering one dash immediately following a newline triggers | 236 | i.e. encountering one dash immediately following a newline triggers |
237 | digest decoding. It is OK for messages that follow RFC 934 | 237 | digest decoding. It is OK for messages that follow RFC 934 |
238 | specification. However, many user agents do not precisely follow it, | 238 | specification. However, many user agents do not precisely follow it, |
239 | in particular, they often do not escape lines starting with a dash by | 239 | in particular, they often do not escape lines starting with a dash by |
240 | @samp{- } sequence. @command{Mailman} is one of such agents. To cope | 240 | @samp{- } sequence. @command{Mailman} is one of such agents. To cope |
241 | with such digests you can set encapsulation boundary length to a higher | 241 | with such digests you can set encapsulation boundary length to a higher |
242 | value. For example, @command{bounce --length=8} has been found to be | 242 | value. For example, @command{bounce --length=8} has been found to be |
243 | sufficient for most Mailman-generated digests. | 243 | sufficient for most Mailman-generated digests. |
244 | 244 | ||
245 | @item comp | 245 | @item comp |
... | @@ -248,7 +248,7 @@ Understands @option{--build} option. | ... | @@ -248,7 +248,7 @@ Understands @option{--build} option. |
248 | 248 | ||
249 | @item fmtdump | 249 | @item fmtdump |
250 | 250 | ||
251 | This command is not provided. Use @option{fmtcheck} instead. | 251 | This command is not provided. Use @option{fmtcheck} instead. |
252 | 252 | ||
253 | @item mhl | 253 | @item mhl |
254 | 254 | ||
... | @@ -280,8 +280,8 @@ The following format variables are silently ignored: @samp{center}, | ... | @@ -280,8 +280,8 @@ The following format variables are silently ignored: @samp{center}, |
280 | @itemize @bullet | 280 | @itemize @bullet |
281 | 281 | ||
282 | @item New option | 282 | @item New option |
283 | New option @option{--compose} forces @command{mhn} editing mode. This | 283 | New option @option{--compose} forces @command{mhn} editing mode. This |
284 | is also the default mode. This differs from the standard | 284 | is also the default mode. This differs from the standard |
285 | @command{mhn}, which switches to the editing mode only if no other | 285 | @command{mhn}, which switches to the editing mode only if no other |
286 | options were given and the input file name coincides with the value of | 286 | options were given and the input file name coincides with the value of |
287 | @env{mhdraft} environment variable. | 287 | @env{mhdraft} environment variable. |
... | @@ -289,22 +289,22 @@ options were given and the input file name coincides with the value of | ... | @@ -289,22 +289,22 @@ options were given and the input file name coincides with the value of |
289 | @item Show mode (@option{--show}) | 289 | @item Show mode (@option{--show}) |
290 | If an appropriate mhn-show-type[/subtype] was not found, GNU @command{mhn} | 290 | If an appropriate mhn-show-type[/subtype] was not found, GNU @command{mhn} |
291 | prints the decoded message content using @code{moreproc} | 291 | prints the decoded message content using @code{moreproc} |
292 | variable. Standard @command{mhn} in this case used to print @samp{don't | 292 | variable. Standard @command{mhn} in this case used to print @samp{don't |
293 | know how to display content} diagnostic. | 293 | know how to display content} diagnostic. |
294 | 294 | ||
295 | The default behaviour is to pipe the content to the standard input | 295 | The default behaviour is to pipe the content to the standard input |
296 | of the mhn-show-type[/subtype] command. This is altered to using a | 296 | of the mhn-show-type[/subtype] command. This is altered to using a |
297 | temporary file if the command contains @code{%f} or @code{%F} escapes. | 297 | temporary file if the command contains @code{%f} or @code{%F} escapes. |
298 | 298 | ||
299 | @item Store mode (@option{--store}) | 299 | @item Store mode (@option{--store}) |
300 | If the @code{Content-Disposition} header contains @samp{filename=}, | 300 | If the @code{Content-Disposition} header contains @samp{filename=}, |
301 | and @command{mhn} is invoked with @option{--auto} switch, it | 301 | and @command{mhn} is invoked with @option{--auto} switch, it |
302 | transforms the file name into the absolute notation and uses it only | 302 | transforms the file name into the absolute notation and uses it only |
303 | if it lies below the current mhn-storage directory. Standard | 303 | if it lies below the current mhn-storage directory. Standard |
304 | @command{mhn} only requires that the file name do not begin with @samp{/}. | 304 | @command{mhn} only requires that the file name do not begin with @samp{/}. |
305 | 305 | ||
306 | Before saving a message part, GNU @command{mhn} checks if the file already | 306 | Before saving a message part, GNU @command{mhn} checks if the file already |
307 | exists. If so, it asks whether the user wishes to rewrite it. This | 307 | exists. If so, it asks whether the user wishes to rewrite it. This |
308 | behaviour is disabled when @option{--quiet} option was given. | 308 | behaviour is disabled when @option{--quiet} option was given. |
309 | @end itemize | 309 | @end itemize |
310 | 310 | ||
... | @@ -319,7 +319,7 @@ recognized only if at least one of the following conditions is met: | ... | @@ -319,7 +319,7 @@ recognized only if at least one of the following conditions is met: |
319 | 319 | ||
320 | @itemize @bullet | 320 | @itemize @bullet |
321 | @item The word @var{component} contains at least one capital letter. | 321 | @item The word @var{component} contains at least one capital letter. |
322 | E.g. @option{--User-Agent Mailutils}. | 322 | E.g. @option{--User-Agent Mailutils}. |
323 | 323 | ||
324 | @item The word @var{component} ends with a colon, as in | 324 | @item The word @var{component} ends with a colon, as in |
325 | @option{user-agent: Mailutils}. | 325 | @option{user-agent: Mailutils}. |
... | @@ -334,7 +334,7 @@ pick --component @var{field} --pattern @var{string} | ... | @@ -334,7 +334,7 @@ pick --component @var{field} --pattern @var{string} |
334 | @end smallexample | 334 | @end smallexample |
335 | 335 | ||
336 | New command line option @option{--cflags} allows to control the type of | 336 | New command line option @option{--cflags} allows to control the type of |
337 | regular expressions used. The option must occur right before | 337 | regular expressions used. The option must occur right before |
338 | @option{--pattern} or @option{--component} option (or one of its | 338 | @option{--pattern} or @option{--component} option (or one of its |
339 | aliases, like @option{--cc}, @option{--from}, etc.) | 339 | aliases, like @option{--cc}, @option{--from}, etc.) |
340 | 340 | ||
... | @@ -401,11 +401,11 @@ will add it automatically. | ... | @@ -401,11 +401,11 @@ will add it automatically. |
401 | @item | 401 | @item |
402 | Linking messages between folders goes against the logic of Mailutils, | 402 | Linking messages between folders goes against the logic of Mailutils, |
403 | so @command{refile} never makes links even if called with | 403 | so @command{refile} never makes links even if called with |
404 | @option{--link} option. The latter is actually a synonym for @option{--copy}, | 404 | @option{--link} option. The latter is actually a synonym for @option{--copy}, |
405 | which preserves the original message. | 405 | which preserves the original message. |
406 | 406 | ||
407 | @item | 407 | @item |
408 | The @option{--preserve} option is not implemented. It is retained for backward | 408 | The @option{--preserve} option is not implemented. It is retained for backward |
409 | compatibility only. | 409 | compatibility only. |
410 | 410 | ||
411 | @item | 411 | @item |
... | @@ -414,7 +414,7 @@ Message specs and folder names may be interspersed. | ... | @@ -414,7 +414,7 @@ Message specs and folder names may be interspersed. |
414 | 414 | ||
415 | @item repl | 415 | @item repl |
416 | 416 | ||
417 | Understands @option{--use} option. Disposition shell provides | 417 | Understands @option{--use} option. Disposition shell provides |
418 | @code{use} command. | 418 | @code{use} command. |
419 | 419 | ||
420 | @item rmm | 420 | @item rmm |
... | @@ -423,7 +423,7 @@ Understands @option{--use} option. Disposition shell provides | ... | @@ -423,7 +423,7 @@ Understands @option{--use} option. Disposition shell provides |
423 | @item | 423 | @item |
424 | Different behaviour if one of the messages in the list does not exist: | 424 | Different behaviour if one of the messages in the list does not exist: |
425 | 425 | ||
426 | Mailutils @command{rmm} does not delete any messages. Standard | 426 | Mailutils @command{rmm} does not delete any messages. Standard |
427 | @command{rmm} in this case deletes all messages preceding the | 427 | @command{rmm} in this case deletes all messages preceding the |
428 | non-existent one. | 428 | non-existent one. |
429 | 429 | ||
... | @@ -445,7 +445,7 @@ Any number of @option{--datefield}, @option{--textfield} and | ... | @@ -445,7 +445,7 @@ Any number of @option{--datefield}, @option{--textfield} and |
445 | @option{--numfield} options may be given, thus allowing to build sort | 445 | @option{--numfield} options may be given, thus allowing to build sort |
446 | criteria of arbitrary complexity. | 446 | criteria of arbitrary complexity. |
447 | 447 | ||
448 | The order of @option{--.*field} options sets the ordering priority. This | 448 | The order of @option{--.*field} options sets the ordering priority. This |
449 | differs from the behaviour of the standard @command{sortm}, which | 449 | differs from the behaviour of the standard @command{sortm}, which |
450 | always orders datefield-major, textfield-minor. | 450 | always orders datefield-major, textfield-minor. |
451 | 451 | ||
... | @@ -459,7 +459,7 @@ List the ordered messages using a format string given by | ... | @@ -459,7 +459,7 @@ List the ordered messages using a format string given by |
459 | 459 | ||
460 | @item --dry-run | 460 | @item --dry-run |
461 | Do not actually sort messages, rather print what would have been | 461 | Do not actually sort messages, rather print what would have been |
462 | done. This is useful for debugging purposes. | 462 | done. This is useful for debugging purposes. |
463 | @end table | 463 | @end table |
464 | 464 | ||
465 | @end table | 465 | @end table | ... | ... |
This diff could not be displayed because it is too large.
This diff is collapsed.
Click to expand it.
... | @@ -3,15 +3,13 @@ | ... | @@ -3,15 +3,13 @@ |
3 | @c 2008, 2010, 2011 Free Software Foundation, Inc. | 3 | @c 2008, 2010, 2011 Free Software Foundation, Inc. |
4 | @c See file mailutils.texi for copying conditions. | 4 | @c See file mailutils.texi for copying conditions. |
5 | @comment ******************************************************************* | 5 | @comment ******************************************************************* |
6 | @node Usage Vars | ||
7 | @appendix Configuring Help Summary | ||
8 | 6 | ||
9 | Running @command{@var{prog} --help} displays the short usage summary | 7 | Running @command{@var{prog} --help} displays the short usage summary |
10 | for @var{prog} utility (@pxref{Common Options}). This summary is | 8 | for @var{prog} utility (@pxref{Common Options}). This summary is |
11 | organized by @dfn{groups} of semantically close options. The options | 9 | organized by @dfn{groups} of semantically close options. The options |
12 | within each group are printed in the following order: a short option, | 10 | within each group are printed in the following order: a short option, |
13 | eventually followed by a list of corresponding long option names, | 11 | eventually followed by a list of corresponding long option names, |
14 | followed by a short description of the option. For example, here is an | 12 | followed by a short description of the option. For example, here is an |
15 | excerpt from the actual @kbd{sieve --help} output: | 13 | excerpt from the actual @kbd{sieve --help} output: |
16 | 14 | ||
17 | @verbatim | 15 | @verbatim |
... | @@ -22,12 +20,12 @@ excerpt from the actual @kbd{sieve --help} output: | ... | @@ -22,12 +20,12 @@ excerpt from the actual @kbd{sieve --help} output: |
22 | 20 | ||
23 | @vrindex ARGP_HELP_FMT, environment variable | 21 | @vrindex ARGP_HELP_FMT, environment variable |
24 | The exact visual representation of the help output is configurable via | 22 | The exact visual representation of the help output is configurable via |
25 | @env{ARGP_HELP_FMT} environment variable. The value of this variable | 23 | @env{ARGP_HELP_FMT} environment variable. The value of this variable |
26 | is a comma-separated list of @dfn{format variable} assignments. There | 24 | is a comma-separated list of @dfn{format variable} assignments. There |
27 | are two kinds of format variables. An @dfn{offset variable} keeps the | 25 | are two kinds of format variables. An @dfn{offset variable} keeps the |
28 | offset of some part of help output text from the leftmost column on | 26 | offset of some part of help output text from the leftmost column on |
29 | the screen. A @dfn{boolean} variable is a flag that toggles some | 27 | the screen. A @dfn{boolean} variable is a flag that toggles some |
30 | output feature on or off. Depending on the type of the corresponding | 28 | output feature on or off. Depending on the type of the corresponding |
31 | variable, there are two kinds of assignments: | 29 | variable, there are two kinds of assignments: |
32 | 30 | ||
33 | @table @asis | 31 | @table @asis |
... | @@ -45,8 +43,8 @@ numeric value to be assigned to the variable. | ... | @@ -45,8 +43,8 @@ numeric value to be assigned to the variable. |
45 | 43 | ||
46 | @item Boolean assignment | 44 | @item Boolean assignment |
47 | 45 | ||
48 | To assign @code{true} value to a variable, simply put this variable name. To | 46 | To assign @code{true} value to a variable, simply put this variable name. To |
49 | assign @code{false} value, prefix the variable name with @samp{no-}. For | 47 | assign @code{false} value, prefix the variable name with @samp{no-}. For |
50 | example: | 48 | example: |
51 | 49 | ||
52 | @smallexample | 50 | @smallexample |
... | @@ -78,7 +76,7 @@ argument is only shown with the long one, for example: | ... | @@ -78,7 +76,7 @@ argument is only shown with the long one, for example: |
78 | 76 | ||
79 | @noindent | 77 | @noindent |
80 | and a message indicating that the argument is applicable to both | 78 | and a message indicating that the argument is applicable to both |
81 | forms is printed below the options. This message can be disabled | 79 | forms is printed below the options. This message can be disabled |
82 | using @code{dup-args-note} (see below). | 80 | using @code{dup-args-note} (see below). |
83 | 81 | ||
84 | The default is false. | 82 | The default is false. |
... | @@ -93,12 +91,12 @@ Mandatory or optional arguments to long options are also mandatory or | ... | @@ -93,12 +91,12 @@ Mandatory or optional arguments to long options are also mandatory or |
93 | optional for any corresponding short options. | 91 | optional for any corresponding short options. |
94 | @end quotation | 92 | @end quotation |
95 | 93 | ||
96 | Setting @code{no-dup-args-note} inhibits this message. Normally, only | 94 | Setting @code{no-dup-args-note} inhibits this message. Normally, only |
97 | one of variables @code{dup-args} or @code{dup-args-note} should be set. | 95 | one of variables @code{dup-args} or @code{dup-args-note} should be set. |
98 | @end deftypevr | 96 | @end deftypevr |
99 | 97 | ||
100 | @deftypevr {Help Output} offset short-opt-col | 98 | @deftypevr {Help Output} offset short-opt-col |
101 | Column in which short options start. Default is 2. | 99 | Column in which short options start. Default is 2. |
102 | 100 | ||
103 | @smallexample | 101 | @smallexample |
104 | @group | 102 | @group |
... | @@ -111,7 +109,7 @@ $ @kbd{ARGP_HELP_FMT=short-opt-col=6 sieve --help|grep ARCHIVE} | ... | @@ -111,7 +109,7 @@ $ @kbd{ARGP_HELP_FMT=short-opt-col=6 sieve --help|grep ARCHIVE} |
111 | @end deftypevr | 109 | @end deftypevr |
112 | 110 | ||
113 | @deftypevr {Help Output} offset long-opt-col | 111 | @deftypevr {Help Output} offset long-opt-col |
114 | Column in which long options start. Default is 6. For example: | 112 | Column in which long options start. Default is 6. For example: |
115 | 113 | ||
116 | @smallexample | 114 | @smallexample |
117 | @group | 115 | @group |
... | @@ -124,9 +122,9 @@ $ @kbd{ARGP_HELP_FMT=long-opt-col=16 sieve --help|grep ADDRESS} | ... | @@ -124,9 +122,9 @@ $ @kbd{ARGP_HELP_FMT=long-opt-col=16 sieve --help|grep ADDRESS} |
124 | @end deftypevr | 122 | @end deftypevr |
125 | 123 | ||
126 | @deftypevr {Help Output} offset doc-opt-col | 124 | @deftypevr {Help Output} offset doc-opt-col |
127 | Column in which @dfn{doc options} start. A doc option isn't actually | 125 | Column in which @dfn{doc options} start. A doc option isn't actually |
128 | an option, but rather an arbitrary piece of documentation that is | 126 | an option, but rather an arbitrary piece of documentation that is |
129 | displayed in much the same manner as the options. For example, in | 127 | displayed in much the same manner as the options. For example, in |
130 | the output of @command{folder --help}: | 128 | the output of @command{folder --help}: |
131 | 129 | ||
132 | @verbatim | 130 | @verbatim |
... | @@ -138,7 +136,7 @@ GNU MH folder | ... | @@ -138,7 +136,7 @@ GNU MH folder |
138 | @end verbatim | 136 | @end verbatim |
139 | 137 | ||
140 | @noindent | 138 | @noindent |
141 | the string @samp{Actions are:} is a doc option. Thus, if you set | 139 | the string @samp{Actions are:} is a doc option. Thus, if you set |
142 | @kbd{ARGP_HELP_FMT=doc-opt-col=6} the above part of the help output | 140 | @kbd{ARGP_HELP_FMT=doc-opt-col=6} the above part of the help output |
143 | will look as follows: | 141 | will look as follows: |
144 | 142 | ||
... | @@ -152,7 +150,7 @@ GNU MH folder | ... | @@ -152,7 +150,7 @@ GNU MH folder |
152 | @end deftypevr | 150 | @end deftypevr |
153 | 151 | ||
154 | @deftypevr {Help Output} offset opt-doc-col | 152 | @deftypevr {Help Output} offset opt-doc-col |
155 | Column in which option description starts. Default is 29. | 153 | Column in which option description starts. Default is 29. |
156 | 154 | ||
157 | @smallexample | 155 | @smallexample |
158 | @group | 156 | @group |
... | @@ -172,8 +170,8 @@ Notice, that the description starts on a separate line if | ... | @@ -172,8 +170,8 @@ Notice, that the description starts on a separate line if |
172 | @end deftypevr | 170 | @end deftypevr |
173 | 171 | ||
174 | @deftypevr {Help Output} offset header-col | 172 | @deftypevr {Help Output} offset header-col |
175 | Column in which @dfn{group headers} are printed. A group header is a | 173 | Column in which @dfn{group headers} are printed. A group header is a |
176 | descriptive text preceding an option group. For example, in the | 174 | descriptive text preceding an option group. For example, in the |
177 | following text: | 175 | following text: |
178 | 176 | ||
179 | @verbatim | 177 | @verbatim |
... | @@ -188,10 +186,10 @@ The default value is 1. | ... | @@ -188,10 +186,10 @@ The default value is 1. |
188 | @end deftypevr | 186 | @end deftypevr |
189 | 187 | ||
190 | @deftypevr {Help Output} offset usage-indent | 188 | @deftypevr {Help Output} offset usage-indent |
191 | Indentation of wrapped usage lines. Affects @option{--usage} | 189 | Indentation of wrapped usage lines. Affects @option{--usage} |
192 | output. Default is 12. | 190 | output. Default is 12. |
193 | @end deftypevr | 191 | @end deftypevr |
194 | 192 | ||
195 | @deftypevr {Help Output} offset rmargin | 193 | @deftypevr {Help Output} offset rmargin |
196 | Right margin of the text output. Used for wrapping. | 194 | Right margin of the text output. Used for wrapping. |
197 | @end deftypevr | 195 | @end deftypevr | ... | ... |
... | @@ -100,7 +100,7 @@ P [1-9][0-9]* | ... | @@ -100,7 +100,7 @@ P [1-9][0-9]* |
100 | yylval.string = _mu_line_finish (); | 100 | yylval.string = _mu_line_finish (); |
101 | return MU_TOK_IDENT; } | 101 | return MU_TOK_IDENT; } |
102 | /* Strings */ | 102 | /* Strings */ |
103 | [a-zA-Z0-9_\./:\*=-]+ { _mu_line_begin (); | 103 | [a-zA-Z0-9_\./:\*=@-]+ { _mu_line_begin (); |
104 | _mu_line_add (yytext, yyleng); | 104 | _mu_line_add (yytext, yyleng); |
105 | yylval.string = _mu_line_finish (); | 105 | yylval.string = _mu_line_finish (); |
106 | return MU_TOK_STRING; } | 106 | return MU_TOK_STRING; } | ... | ... |
... | @@ -133,6 +133,8 @@ read_bulletin_db (size_t *pnum) | ... | @@ -133,6 +133,8 @@ read_bulletin_db (size_t *pnum) |
133 | return rc; | 133 | return rc; |
134 | } | 134 | } |
135 | 135 | ||
136 | mu_dbm_safety_set_flags (db, DEFAULT_GROUP_DB_SAFETY); | ||
137 | |||
136 | rc = mu_dbm_safety_check (db); | 138 | rc = mu_dbm_safety_check (db); |
137 | if (rc) | 139 | if (rc) |
138 | { | 140 | { |
... | @@ -225,6 +227,8 @@ write_bulletin_db (size_t num) | ... | @@ -225,6 +227,8 @@ write_bulletin_db (size_t num) |
225 | return rc; | 227 | return rc; |
226 | } | 228 | } |
227 | 229 | ||
230 | mu_dbm_safety_set_flags (db, DEFAULT_GROUP_DB_SAFETY); | ||
231 | |||
228 | rc = mu_dbm_safety_check (db); | 232 | rc = mu_dbm_safety_check (db); |
229 | if (rc && rc != ENOENT) | 233 | if (rc && rc != ENOENT) |
230 | { | 234 | { | ... | ... |
... | @@ -32,8 +32,10 @@ open_stat_db (int mode) | ... | @@ -32,8 +32,10 @@ open_stat_db (int mode) |
32 | return NULL; | 32 | return NULL; |
33 | } | 33 | } |
34 | 34 | ||
35 | mu_dbm_safety_set_flags (db, DEFAULT_GROUP_DB_SAFETY); | ||
36 | |||
35 | rc = mu_dbm_safety_check (db); | 37 | rc = mu_dbm_safety_check (db); |
36 | if (rc) | 38 | if (rc && rc != ENOENT) |
37 | { | 39 | { |
38 | mu_diag_output (MU_DIAG_ERROR, | 40 | mu_diag_output (MU_DIAG_ERROR, |
39 | _("statistics db fails safety check: %s"), | 41 | _("statistics db fails safety check: %s"), | ... | ... |
... | @@ -201,6 +201,17 @@ extern char *apop_database_name; | ... | @@ -201,6 +201,17 @@ extern char *apop_database_name; |
201 | extern int apop_database_safety; | 201 | extern int apop_database_safety; |
202 | extern int apop_database_safety_set; | 202 | extern int apop_database_safety_set; |
203 | 203 | ||
204 | /* Safety checks for group-rw database files, such as stat and bulletin | ||
205 | databases */ | ||
206 | |||
207 | #define DEFAULT_GROUP_DB_SAFETY \ | ||
208 | (MU_FILE_SAFETY_WORLD_WRITABLE| \ | ||
209 | MU_FILE_SAFETY_WORLD_READABLE| \ | ||
210 | MU_FILE_SAFETY_LINKED_WRDIR| \ | ||
211 | MU_FILE_SAFETY_DIR_IWGRP| \ | ||
212 | MU_FILE_SAFETY_DIR_IWOTH) | ||
213 | |||
214 | |||
204 | extern pop3d_command_handler_t pop3d_find_command (const char *name); | 215 | extern pop3d_command_handler_t pop3d_find_command (const char *name); |
205 | 216 | ||
206 | extern int pop3d_stat (char *); | 217 | extern int pop3d_stat (char *); | ... | ... |
-
Please register or sign in to post a comment