annotate admin/config-transition @ 333:0bd27f603910

Added debug level 9 for msgs to stderr during reading config See changes to man page, included in this changeset.
author markus schnalke <meillo@marmaro.de>
date Sat, 27 Aug 2011 16:54:14 +0200 (2011-08-27)
parents 55b7bde95d37
children 08932c629849
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
219
c5d319418813 added config-transition
meillo@marmaro.de
parents:
diff changeset
1 #!/bin/sh
c5d319418813 added config-transition
meillo@marmaro.de
parents:
diff changeset
2 #
c5d319418813 added config-transition
meillo@marmaro.de
parents:
diff changeset
3 # check masqmail config files for options that are obsolete
c5d319418813 added config-transition
meillo@marmaro.de
parents:
diff changeset
4 #
c5d319418813 added config-transition
meillo@marmaro.de
parents:
diff changeset
5 # 2010 markus schnalke <meillo@marmaro.de>
c5d319418813 added config-transition
meillo@marmaro.de
parents:
diff changeset
6
c5d319418813 added config-transition
meillo@marmaro.de
parents:
diff changeset
7 if [ $# -eq 0 ] ; then
311
e230bcd0f1c6 removed protocol option from route config
meillo@marmaro.de
parents: 310
diff changeset
8 echo "usage: config-transition CONFIGFILE..." >&2
219
c5d319418813 added config-transition
meillo@marmaro.de
parents:
diff changeset
9 exit 1
c5d319418813 added config-transition
meillo@marmaro.de
parents:
diff changeset
10 fi
c5d319418813 added config-transition
meillo@marmaro.de
parents:
diff changeset
11
c5d319418813 added config-transition
meillo@marmaro.de
parents:
diff changeset
12 awkscript="/tmp/masqmail-config-transition-$$"
c5d319418813 added config-transition
meillo@marmaro.de
parents:
diff changeset
13
c5d319418813 added config-transition
meillo@marmaro.de
parents:
diff changeset
14 trap 'rm -f "$awkscript"; exit' INT QUIT TERM EXIT
c5d319418813 added config-transition
meillo@marmaro.de
parents:
diff changeset
15
c5d319418813 added config-transition
meillo@marmaro.de
parents:
diff changeset
16 cat >"$awkscript" <<!
c5d319418813 added config-transition
meillo@marmaro.de
parents:
diff changeset
17 # Because of the Here-document, escape (with backslash) these characters:
c5d319418813 added config-transition
meillo@marmaro.de
parents:
diff changeset
18 # backslash, dollar, backtick
c5d319418813 added config-transition
meillo@marmaro.de
parents:
diff changeset
19 BEGIN {
c5d319418813 added config-transition
meillo@marmaro.de
parents:
diff changeset
20
c5d319418813 added config-transition
meillo@marmaro.de
parents:
diff changeset
21 ######## START OF CHECKS ########
c5d319418813 added config-transition
meillo@marmaro.de
parents:
diff changeset
22
c5d319418813 added config-transition
meillo@marmaro.de
parents:
diff changeset
23 # Rules look like this:
c5d319418813 added config-transition
meillo@marmaro.de
parents:
diff changeset
24 #
c5d319418813 added config-transition
meillo@marmaro.de
parents:
diff changeset
25 # check["regexp"] = "conf-kind" SUBSEP "version-info" SUBSEP "verbose-description"
c5d319418813 added config-transition
meillo@marmaro.de
parents:
diff changeset
26 #
c5d319418813 added config-transition
meillo@marmaro.de
parents:
diff changeset
27 # Meaning of the strings:
c5d319418813 added config-transition
meillo@marmaro.de
parents:
diff changeset
28 # - regexp: is also used as the name in the normal listing
c5d319418813 added config-transition
meillo@marmaro.de
parents:
diff changeset
29 # - conf-kind: in which kind of config the option appears (conf, route, get)
c5d319418813 added config-transition
meillo@marmaro.de
parents:
diff changeset
30 # - version-info: when it was removed
c5d319418813 added config-transition
meillo@marmaro.de
parents:
diff changeset
31 # - verbose-description: how to do it now
c5d319418813 added config-transition
meillo@marmaro.de
parents:
diff changeset
32
c5d319418813 added config-transition
meillo@marmaro.de
parents:
diff changeset
33
c5d319418813 added config-transition
meillo@marmaro.de
parents:
diff changeset
34 # conf file
c5d319418813 added config-transition
meillo@marmaro.de
parents:
diff changeset
35
c5d319418813 added config-transition
meillo@marmaro.de
parents:
diff changeset
36 check["remote_port"] = "conf" SUBSEP "Removed in 0.3.0" SUBSEP "\
c5d319418813 added config-transition
meillo@marmaro.de
parents:
diff changeset
37 Use 'mail_host' in the route configuration instead. \
c5d319418813 added config-transition
meillo@marmaro.de
parents:
diff changeset
38 "
c5d319418813 added config-transition
meillo@marmaro.de
parents:
diff changeset
39
c5d319418813 added config-transition
meillo@marmaro.de
parents:
diff changeset
40 check["mbox_default.*maildir"] = "conf" SUBSEP "Removed in 0.3.0" SUBSEP "\
c5d319418813 added config-transition
meillo@marmaro.de
parents:
diff changeset
41 Native maildir support was removed completely. \
c5d319418813 added config-transition
meillo@marmaro.de
parents:
diff changeset
42 Use an MDA, e.g. procmail, to deliver to Maildir mail folder. \
c5d319418813 added config-transition
meillo@marmaro.de
parents:
diff changeset
43 "
c5d319418813 added config-transition
meillo@marmaro.de
parents:
diff changeset
44
c5d319418813 added config-transition
meillo@marmaro.de
parents:
diff changeset
45 check["maildir_users"] = "conf" SUBSEP "Removed in 0.3.0" SUBSEP "\
c5d319418813 added config-transition
meillo@marmaro.de
parents:
diff changeset
46 Native maildir support was removed completely. \
c5d319418813 added config-transition
meillo@marmaro.de
parents:
diff changeset
47 Use an MDA, e.g. procmail, to deliver to Maildir mail folder. \
c5d319418813 added config-transition
meillo@marmaro.de
parents:
diff changeset
48 "
c5d319418813 added config-transition
meillo@marmaro.de
parents:
diff changeset
49
c5d319418813 added config-transition
meillo@marmaro.de
parents:
diff changeset
50 check["mserver_iface"] = "conf" SUBSEP "Removed in 0.3.0" SUBSEP "\
c5d319418813 added config-transition
meillo@marmaro.de
parents:
diff changeset
51 Native mserver support was removed from masqmail. \
c5d319418813 added config-transition
meillo@marmaro.de
parents:
diff changeset
52 Use the mservdetect tool with online_detect=pipe instead. \
c5d319418813 added config-transition
meillo@marmaro.de
parents:
diff changeset
53 "
c5d319418813 added config-transition
meillo@marmaro.de
parents:
diff changeset
54
c5d319418813 added config-transition
meillo@marmaro.de
parents:
diff changeset
55 check["get\\\\."] = "conf" SUBSEP "Removed in 0.3.0" SUBSEP "\
c5d319418813 added config-transition
meillo@marmaro.de
parents:
diff changeset
56 The POP3 client was removed from masqmail. \
c5d319418813 added config-transition
meillo@marmaro.de
parents:
diff changeset
57 Use a dedicated POP3 client, e.g. fetchmail, instead. \
c5d319418813 added config-transition
meillo@marmaro.de
parents:
diff changeset
58 "
c5d319418813 added config-transition
meillo@marmaro.de
parents:
diff changeset
59
c5d319418813 added config-transition
meillo@marmaro.de
parents:
diff changeset
60 check["online_gets\\\\."] = "conf" SUBSEP "Removed in 0.3.0" SUBSEP "\
c5d319418813 added config-transition
meillo@marmaro.de
parents:
diff changeset
61 The POP3 client was removed from masqmail. \
c5d319418813 added config-transition
meillo@marmaro.de
parents:
diff changeset
62 Use a dedicated POP3 client, e.g. fetchmail, instead. \
c5d319418813 added config-transition
meillo@marmaro.de
parents:
diff changeset
63 "
c5d319418813 added config-transition
meillo@marmaro.de
parents:
diff changeset
64
243
e758296de02d renamed `alias_local_caseless' to `caseless_matching'
markus schnalke <meillo@marmaro.de>
parents: 227
diff changeset
65 check["alias_local_caseless"] = "conf" SUBSEP "Renamed in 0.3.1" SUBSEP "\
e758296de02d renamed `alias_local_caseless' to `caseless_matching'
markus schnalke <meillo@marmaro.de>
parents: 227
diff changeset
66 It is now called 'caseless_matching' instead. \
e758296de02d renamed `alias_local_caseless' to `caseless_matching'
markus schnalke <meillo@marmaro.de>
parents: 227
diff changeset
67 "
e758296de02d renamed `alias_local_caseless' to `caseless_matching'
markus schnalke <meillo@marmaro.de>
parents: 227
diff changeset
68
310
f10a56dc7481 reworked online_detect to the simpler online_query
meillo@marmaro.de
parents: 243
diff changeset
69 check["online_detect"] = "conf" SUBSEP "Removed in 0.3.2" SUBSEP "\
317
55b7bde95d37 reworked allowed and denied addrs for routes
meillo@marmaro.de
parents: 311
diff changeset
70 Distilled to online_query. \
310
f10a56dc7481 reworked online_detect to the simpler online_query
meillo@marmaro.de
parents: 243
diff changeset
71 "
f10a56dc7481 reworked online_detect to the simpler online_query
meillo@marmaro.de
parents: 243
diff changeset
72
f10a56dc7481 reworked online_detect to the simpler online_query
meillo@marmaro.de
parents: 243
diff changeset
73 check["online_file"] = "conf" SUBSEP "Removed in 0.3.2" SUBSEP "\
f10a56dc7481 reworked online_detect to the simpler online_query
meillo@marmaro.de
parents: 243
diff changeset
74 Use online_query=\"/bin/cat /path/to/file\" instead. \
f10a56dc7481 reworked online_detect to the simpler online_query
meillo@marmaro.de
parents: 243
diff changeset
75 "
f10a56dc7481 reworked online_detect to the simpler online_query
meillo@marmaro.de
parents: 243
diff changeset
76
f10a56dc7481 reworked online_detect to the simpler online_query
meillo@marmaro.de
parents: 243
diff changeset
77 check["online_pipe"] = "conf" SUBSEP "Renamed in 0.3.2" SUBSEP "\
f10a56dc7481 reworked online_detect to the simpler online_query
meillo@marmaro.de
parents: 243
diff changeset
78 Now known as online_query. online_detect=pipe is not needed anymore. \
f10a56dc7481 reworked online_detect to the simpler online_query
meillo@marmaro.de
parents: 243
diff changeset
79 "
f10a56dc7481 reworked online_detect to the simpler online_query
meillo@marmaro.de
parents: 243
diff changeset
80
219
c5d319418813 added config-transition
meillo@marmaro.de
parents:
diff changeset
81 # route files
c5d319418813 added config-transition
meillo@marmaro.de
parents:
diff changeset
82
c5d319418813 added config-transition
meillo@marmaro.de
parents:
diff changeset
83 check["pop3_login"] = "route" SUBSEP "Removed in 0.3.0" SUBSEP "\
c5d319418813 added config-transition
meillo@marmaro.de
parents:
diff changeset
84 POP-before-SMTP login function was removed completely. \
c5d319418813 added config-transition
meillo@marmaro.de
parents:
diff changeset
85 SMTP AUTH supersedes it today. \
c5d319418813 added config-transition
meillo@marmaro.de
parents:
diff changeset
86 If you though rely on it, stay with masqmail-0.2.x or run an arbitrary POP client before. \
c5d319418813 added config-transition
meillo@marmaro.de
parents:
diff changeset
87 "
c5d319418813 added config-transition
meillo@marmaro.de
parents:
diff changeset
88
c5d319418813 added config-transition
meillo@marmaro.de
parents:
diff changeset
89 check["do_ssl"] = "route" SUBSEP "Ignored by masqmail" SUBSEP "\
c5d319418813 added config-transition
meillo@marmaro.de
parents:
diff changeset
90 Please report to the mailing list at <masqmail@marmaro.de> that you used this option. \
c5d319418813 added config-transition
meillo@marmaro.de
parents:
diff changeset
91 We still don't know the rationale behind this option. \
c5d319418813 added config-transition
meillo@marmaro.de
parents:
diff changeset
92 All we have is a comment in the code saying: This option is used by sqilconf. \
c5d319418813 added config-transition
meillo@marmaro.de
parents:
diff changeset
93 "
c5d319418813 added config-transition
meillo@marmaro.de
parents:
diff changeset
94
311
e230bcd0f1c6 removed protocol option from route config
meillo@marmaro.de
parents: 310
diff changeset
95 check["protocol"] = "route" SUBSEP "Removed in 0.3.2" SUBSEP "\
e230bcd0f1c6 removed protocol option from route config
meillo@marmaro.de
parents: 310
diff changeset
96 If pipe is given, pipe will be used, otherwise smtp will be used. \
e230bcd0f1c6 removed protocol option from route config
meillo@marmaro.de
parents: 310
diff changeset
97 "
e230bcd0f1c6 removed protocol option from route config
meillo@marmaro.de
parents: 310
diff changeset
98
317
55b7bde95d37 reworked allowed and denied addrs for routes
meillo@marmaro.de
parents: 311
diff changeset
99 check["(^|[ ])allowed_return_paths"] = "route" SUBSEP "Removed in 0.3.2" SUBSEP "\
55b7bde95d37 reworked allowed and denied addrs for routes
meillo@marmaro.de
parents: 311
diff changeset
100 Replaced by 'allowed_senders'. \
55b7bde95d37 reworked allowed and denied addrs for routes
meillo@marmaro.de
parents: 311
diff changeset
101 "
55b7bde95d37 reworked allowed and denied addrs for routes
meillo@marmaro.de
parents: 311
diff changeset
102
55b7bde95d37 reworked allowed and denied addrs for routes
meillo@marmaro.de
parents: 311
diff changeset
103 check["not_allowed_return_paths"] = "route" SUBSEP "Removed in 0.3.2" SUBSEP "\
55b7bde95d37 reworked allowed and denied addrs for routes
meillo@marmaro.de
parents: 311
diff changeset
104 Replaced by 'denied_senders'. \
55b7bde95d37 reworked allowed and denied addrs for routes
meillo@marmaro.de
parents: 311
diff changeset
105 "
55b7bde95d37 reworked allowed and denied addrs for routes
meillo@marmaro.de
parents: 311
diff changeset
106
55b7bde95d37 reworked allowed and denied addrs for routes
meillo@marmaro.de
parents: 311
diff changeset
107 check["(^|[ ])allowed_mail_locals"] = "route" SUBSEP "Removed in 0.3.2" SUBSEP "\
55b7bde95d37 reworked allowed and denied addrs for routes
meillo@marmaro.de
parents: 311
diff changeset
108 Replaced by 'allowed_senders', if neither wildcards nor '@' is used. \
55b7bde95d37 reworked allowed and denied addrs for routes
meillo@marmaro.de
parents: 311
diff changeset
109 "
55b7bde95d37 reworked allowed and denied addrs for routes
meillo@marmaro.de
parents: 311
diff changeset
110
55b7bde95d37 reworked allowed and denied addrs for routes
meillo@marmaro.de
parents: 311
diff changeset
111 check["not_allowed_mail_locals"] = "route" SUBSEP "Removed in 0.3.2" SUBSEP "\
55b7bde95d37 reworked allowed and denied addrs for routes
meillo@marmaro.de
parents: 311
diff changeset
112 Replaced by 'denied_senders', if neither wildcards nor '@' is used. \
55b7bde95d37 reworked allowed and denied addrs for routes
meillo@marmaro.de
parents: 311
diff changeset
113 "
55b7bde95d37 reworked allowed and denied addrs for routes
meillo@marmaro.de
parents: 311
diff changeset
114
55b7bde95d37 reworked allowed and denied addrs for routes
meillo@marmaro.de
parents: 311
diff changeset
115 check["(^|[ ])allowed_rcpt_domains"] = "route" SUBSEP "Removed in 0.3.2" SUBSEP "\
55b7bde95d37 reworked allowed and denied addrs for routes
meillo@marmaro.de
parents: 311
diff changeset
116 Replaced by 'allowed_recipients', if the values are prepended with \
55b7bde95d37 reworked allowed and denied addrs for routes
meillo@marmaro.de
parents: 311
diff changeset
117 '*@', because 'allowed_recipients' matches complete addresses not just \
55b7bde95d37 reworked allowed and denied addrs for routes
meillo@marmaro.de
parents: 311
diff changeset
118 domains. \
55b7bde95d37 reworked allowed and denied addrs for routes
meillo@marmaro.de
parents: 311
diff changeset
119 "
55b7bde95d37 reworked allowed and denied addrs for routes
meillo@marmaro.de
parents: 311
diff changeset
120
55b7bde95d37 reworked allowed and denied addrs for routes
meillo@marmaro.de
parents: 311
diff changeset
121 check["not_allowed_rcpt_domains"] = "route" SUBSEP "Removed in 0.3.2" SUBSEP "\
55b7bde95d37 reworked allowed and denied addrs for routes
meillo@marmaro.de
parents: 311
diff changeset
122 Replaced by 'denied_recipients', if the values are prepended with \
55b7bde95d37 reworked allowed and denied addrs for routes
meillo@marmaro.de
parents: 311
diff changeset
123 '*@', because 'allowed_recipients' matches complete addresses not just \
55b7bde95d37 reworked allowed and denied addrs for routes
meillo@marmaro.de
parents: 311
diff changeset
124 domains. \
55b7bde95d37 reworked allowed and denied addrs for routes
meillo@marmaro.de
parents: 311
diff changeset
125 "
55b7bde95d37 reworked allowed and denied addrs for routes
meillo@marmaro.de
parents: 311
diff changeset
126
219
c5d319418813 added config-transition
meillo@marmaro.de
parents:
diff changeset
127 # get files
c5d319418813 added config-transition
meillo@marmaro.de
parents:
diff changeset
128
c5d319418813 added config-transition
meillo@marmaro.de
parents:
diff changeset
129 # already covered by the get.* and online_gets.* options in the conf
c5d319418813 added config-transition
meillo@marmaro.de
parents:
diff changeset
130 # file. This check is just to make sure, because one might only check
c5d319418813 added config-transition
meillo@marmaro.de
parents:
diff changeset
131 # the get file.
c5d319418813 added config-transition
meillo@marmaro.de
parents:
diff changeset
132 # We don't check for the other get file options, which are:
c5d319418813 added config-transition
meillo@marmaro.de
parents:
diff changeset
133 # protocol server port wrapper user pass address return_path do_keep
c5d319418813 added config-transition
meillo@marmaro.de
parents:
diff changeset
134 # do_uidl do_uidl_dele max_size max_size_delete max_count resolve_list
c5d319418813 added config-transition
meillo@marmaro.de
parents:
diff changeset
135
c5d319418813 added config-transition
meillo@marmaro.de
parents:
diff changeset
136 check["protocol.*pop"] = "get" SUBSEP "Removed in 0.3.0" SUBSEP "\
c5d319418813 added config-transition
meillo@marmaro.de
parents:
diff changeset
137 The POP3 client was removed from masqmail. \
c5d319418813 added config-transition
meillo@marmaro.de
parents:
diff changeset
138 Use a dedicated POP3 client, e.g. fetchmail, instead. \
c5d319418813 added config-transition
meillo@marmaro.de
parents:
diff changeset
139 "
c5d319418813 added config-transition
meillo@marmaro.de
parents:
diff changeset
140
c5d319418813 added config-transition
meillo@marmaro.de
parents:
diff changeset
141
c5d319418813 added config-transition
meillo@marmaro.de
parents:
diff changeset
142 ######## END OF CHECK DEFINITIONS ########
c5d319418813 added config-transition
meillo@marmaro.de
parents:
diff changeset
143 }
c5d319418813 added config-transition
meillo@marmaro.de
parents:
diff changeset
144
c5d319418813 added config-transition
meillo@marmaro.de
parents:
diff changeset
145 function checkcomment() {
c5d319418813 added config-transition
meillo@marmaro.de
parents:
diff changeset
146 if (/^[ \t]*\#/) {
c5d319418813 added config-transition
meillo@marmaro.de
parents:
diff changeset
147 return " (in a comment)"
c5d319418813 added config-transition
meillo@marmaro.de
parents:
diff changeset
148 }
c5d319418813 added config-transition
meillo@marmaro.de
parents:
diff changeset
149 }
c5d319418813 added config-transition
meillo@marmaro.de
parents:
diff changeset
150
c5d319418813 added config-transition
meillo@marmaro.de
parents:
diff changeset
151 {
c5d319418813 added config-transition
meillo@marmaro.de
parents:
diff changeset
152 for (key in check) {
c5d319418813 added config-transition
meillo@marmaro.de
parents:
diff changeset
153 if (\$0 !~ key) {
c5d319418813 added config-transition
meillo@marmaro.de
parents:
diff changeset
154 continue;
c5d319418813 added config-transition
meillo@marmaro.de
parents:
diff changeset
155 }
c5d319418813 added config-transition
meillo@marmaro.de
parents:
diff changeset
156 # we have a match
c5d319418813 added config-transition
meillo@marmaro.de
parents:
diff changeset
157 split(check[key], a, SUBSEP); # array index starts with 1
c5d319418813 added config-transition
meillo@marmaro.de
parents:
diff changeset
158 printf("%s:%d: [%s] %s%s\n", FILENAME, NR, a[1], key, checkcomment());
c5d319418813 added config-transition
meillo@marmaro.de
parents:
diff changeset
159 cmd = "fold -sw 70 | sed 's,^,\t,'"
311
e230bcd0f1c6 removed protocol option from route config
meillo@marmaro.de
parents: 310
diff changeset
160 print "\t>>>> " \$0 " <<<<"
e230bcd0f1c6 removed protocol option from route config
meillo@marmaro.de
parents: 310
diff changeset
161 print a[3] | cmd
e230bcd0f1c6 removed protocol option from route config
meillo@marmaro.de
parents: 310
diff changeset
162 close(cmd)
e230bcd0f1c6 removed protocol option from route config
meillo@marmaro.de
parents: 310
diff changeset
163 print "\t" a[2]
e230bcd0f1c6 removed protocol option from route config
meillo@marmaro.de
parents: 310
diff changeset
164 print ""
219
c5d319418813 added config-transition
meillo@marmaro.de
parents:
diff changeset
165 }
c5d319418813 added config-transition
meillo@marmaro.de
parents:
diff changeset
166 }
c5d319418813 added config-transition
meillo@marmaro.de
parents:
diff changeset
167
c5d319418813 added config-transition
meillo@marmaro.de
parents:
diff changeset
168 !
c5d319418813 added config-transition
meillo@marmaro.de
parents:
diff changeset
169
c5d319418813 added config-transition
meillo@marmaro.de
parents:
diff changeset
170
c5d319418813 added config-transition
meillo@marmaro.de
parents:
diff changeset
171 for i do
311
e230bcd0f1c6 removed protocol option from route config
meillo@marmaro.de
parents: 310
diff changeset
172 awk -f "$awkscript" "$i"
219
c5d319418813 added config-transition
meillo@marmaro.de
parents:
diff changeset
173 done