Mercurial > masqmail
annotate admin/config-transition @ 394:c8e3d1a79313
Refactoring in conf.c: read_rval().
author | markus schnalke <meillo@marmaro.de> |
---|---|
date | Sat, 18 Feb 2012 19:32:40 +0100 (2012-02-18) |
parents | 08932c629849 |
children |
rev | line source |
---|---|
219 | 1 #!/bin/sh |
2 # | |
3 # check masqmail config files for options that are obsolete | |
4 # | |
5 # 2010 markus schnalke <meillo@marmaro.de> | |
6 | |
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 | 9 exit 1 |
10 fi | |
11 | |
12 awkscript="/tmp/masqmail-config-transition-$$" | |
13 | |
14 trap 'rm -f "$awkscript"; exit' INT QUIT TERM EXIT | |
15 | |
16 cat >"$awkscript" <<! | |
17 # Because of the Here-document, escape (with backslash) these characters: | |
18 # backslash, dollar, backtick | |
19 BEGIN { | |
20 | |
21 ######## START OF CHECKS ######## | |
22 | |
23 # Rules look like this: | |
24 # | |
25 # check["regexp"] = "conf-kind" SUBSEP "version-info" SUBSEP "verbose-description" | |
26 # | |
27 # Meaning of the strings: | |
28 # - regexp: is also used as the name in the normal listing | |
29 # - conf-kind: in which kind of config the option appears (conf, route, get) | |
30 # - version-info: when it was removed | |
31 # - verbose-description: how to do it now | |
32 | |
33 | |
34 # conf file | |
35 | |
36 check["remote_port"] = "conf" SUBSEP "Removed in 0.3.0" SUBSEP "\ | |
37 Use 'mail_host' in the route configuration instead. \ | |
38 " | |
39 | |
40 check["mbox_default.*maildir"] = "conf" SUBSEP "Removed in 0.3.0" SUBSEP "\ | |
41 Native maildir support was removed completely. \ | |
42 Use an MDA, e.g. procmail, to deliver to Maildir mail folder. \ | |
43 " | |
44 | |
45 check["maildir_users"] = "conf" SUBSEP "Removed in 0.3.0" SUBSEP "\ | |
46 Native maildir support was removed completely. \ | |
47 Use an MDA, e.g. procmail, to deliver to Maildir mail folder. \ | |
48 " | |
49 | |
50 check["mserver_iface"] = "conf" SUBSEP "Removed in 0.3.0" SUBSEP "\ | |
51 Native mserver support was removed from masqmail. \ | |
52 Use the mservdetect tool with online_detect=pipe instead. \ | |
53 " | |
54 | |
55 check["get\\\\."] = "conf" SUBSEP "Removed in 0.3.0" SUBSEP "\ | |
56 The POP3 client was removed from masqmail. \ | |
57 Use a dedicated POP3 client, e.g. fetchmail, instead. \ | |
58 " | |
59 | |
60 check["online_gets\\\\."] = "conf" SUBSEP "Removed in 0.3.0" SUBSEP "\ | |
61 The POP3 client was removed from masqmail. \ | |
62 Use a dedicated POP3 client, e.g. fetchmail, instead. \ | |
63 " | |
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 |
354
08932c629849
reworked the route concept; removed the idea of the localnet
markus schnalke <meillo@marmaro.de>
parents:
317
diff
changeset
|
81 check["connect_route\\\\."] = "conf" SUBSEP "Removed in 0.3.4" SUBSEP "\ |
08932c629849
reworked the route concept; removed the idea of the localnet
markus schnalke <meillo@marmaro.de>
parents:
317
diff
changeset
|
82 The option had been already obsolete. Use \`query_routes.' instead.\ |
08932c629849
reworked the route concept; removed the idea of the localnet
markus schnalke <meillo@marmaro.de>
parents:
317
diff
changeset
|
83 " |
08932c629849
reworked the route concept; removed the idea of the localnet
markus schnalke <meillo@marmaro.de>
parents:
317
diff
changeset
|
84 |
08932c629849
reworked the route concept; removed the idea of the localnet
markus schnalke <meillo@marmaro.de>
parents:
317
diff
changeset
|
85 check["online_routes\\\\."] = "conf" SUBSEP "Renamed in 0.3.4" SUBSEP "\ |
08932c629849
reworked the route concept; removed the idea of the localnet
markus schnalke <meillo@marmaro.de>
parents:
317
diff
changeset
|
86 Known as \`query_routes.' now.\ |
08932c629849
reworked the route concept; removed the idea of the localnet
markus schnalke <meillo@marmaro.de>
parents:
317
diff
changeset
|
87 " |
08932c629849
reworked the route concept; removed the idea of the localnet
markus schnalke <meillo@marmaro.de>
parents:
317
diff
changeset
|
88 |
08932c629849
reworked the route concept; removed the idea of the localnet
markus schnalke <meillo@marmaro.de>
parents:
317
diff
changeset
|
89 check["local_net_route"] = "conf" SUBSEP "Renamed in 0.3.4" SUBSEP "\ |
08932c629849
reworked the route concept; removed the idea of the localnet
markus schnalke <meillo@marmaro.de>
parents:
317
diff
changeset
|
90 Known as \`permanent_routes' now, because that's what they actually are.\ |
08932c629849
reworked the route concept; removed the idea of the localnet
markus schnalke <meillo@marmaro.de>
parents:
317
diff
changeset
|
91 " |
08932c629849
reworked the route concept; removed the idea of the localnet
markus schnalke <meillo@marmaro.de>
parents:
317
diff
changeset
|
92 |
08932c629849
reworked the route concept; removed the idea of the localnet
markus schnalke <meillo@marmaro.de>
parents:
317
diff
changeset
|
93 check["local_nets"] = "conf" SUBSEP "Removed in 0.3.4" SUBSEP "\ |
08932c629849
reworked the route concept; removed the idea of the localnet
markus schnalke <meillo@marmaro.de>
parents:
317
diff
changeset
|
94 There is no concept of a \`\`local net'' in masqmail anymore. \ |
08932c629849
reworked the route concept; removed the idea of the localnet
markus schnalke <meillo@marmaro.de>
parents:
317
diff
changeset
|
95 Create a permanent route with \`allowed_recipients' set accordingly. \ |
08932c629849
reworked the route concept; removed the idea of the localnet
markus schnalke <meillo@marmaro.de>
parents:
317
diff
changeset
|
96 See man pages and example configurations for details.\ |
08932c629849
reworked the route concept; removed the idea of the localnet
markus schnalke <meillo@marmaro.de>
parents:
317
diff
changeset
|
97 " |
08932c629849
reworked the route concept; removed the idea of the localnet
markus schnalke <meillo@marmaro.de>
parents:
317
diff
changeset
|
98 |
219 | 99 # route files |
100 | |
101 check["pop3_login"] = "route" SUBSEP "Removed in 0.3.0" SUBSEP "\ | |
102 POP-before-SMTP login function was removed completely. \ | |
103 SMTP AUTH supersedes it today. \ | |
104 If you though rely on it, stay with masqmail-0.2.x or run an arbitrary POP client before. \ | |
105 " | |
106 | |
107 check["do_ssl"] = "route" SUBSEP "Ignored by masqmail" SUBSEP "\ | |
108 Please report to the mailing list at <masqmail@marmaro.de> that you used this option. \ | |
109 We still don't know the rationale behind this option. \ | |
110 All we have is a comment in the code saying: This option is used by sqilconf. \ | |
111 " | |
112 | |
311
e230bcd0f1c6
removed protocol option from route config
meillo@marmaro.de
parents:
310
diff
changeset
|
113 check["protocol"] = "route" SUBSEP "Removed in 0.3.2" SUBSEP "\ |
e230bcd0f1c6
removed protocol option from route config
meillo@marmaro.de
parents:
310
diff
changeset
|
114 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
|
115 " |
e230bcd0f1c6
removed protocol option from route config
meillo@marmaro.de
parents:
310
diff
changeset
|
116 |
317
55b7bde95d37
reworked allowed and denied addrs for routes
meillo@marmaro.de
parents:
311
diff
changeset
|
117 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
|
118 Replaced by 'allowed_senders'. \ |
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_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
|
122 Replaced by 'denied_senders'. \ |
55b7bde95d37
reworked allowed and denied addrs for routes
meillo@marmaro.de
parents:
311
diff
changeset
|
123 " |
55b7bde95d37
reworked allowed and denied addrs for routes
meillo@marmaro.de
parents:
311
diff
changeset
|
124 |
55b7bde95d37
reworked allowed and denied addrs for routes
meillo@marmaro.de
parents:
311
diff
changeset
|
125 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
|
126 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
|
127 " |
55b7bde95d37
reworked allowed and denied addrs for routes
meillo@marmaro.de
parents:
311
diff
changeset
|
128 |
55b7bde95d37
reworked allowed and denied addrs for routes
meillo@marmaro.de
parents:
311
diff
changeset
|
129 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
|
130 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
|
131 " |
55b7bde95d37
reworked allowed and denied addrs for routes
meillo@marmaro.de
parents:
311
diff
changeset
|
132 |
55b7bde95d37
reworked allowed and denied addrs for routes
meillo@marmaro.de
parents:
311
diff
changeset
|
133 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
|
134 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
|
135 '*@', because 'allowed_recipients' matches complete addresses not just \ |
55b7bde95d37
reworked allowed and denied addrs for routes
meillo@marmaro.de
parents:
311
diff
changeset
|
136 domains. \ |
55b7bde95d37
reworked allowed and denied addrs for routes
meillo@marmaro.de
parents:
311
diff
changeset
|
137 " |
55b7bde95d37
reworked allowed and denied addrs for routes
meillo@marmaro.de
parents:
311
diff
changeset
|
138 |
55b7bde95d37
reworked allowed and denied addrs for routes
meillo@marmaro.de
parents:
311
diff
changeset
|
139 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
|
140 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
|
141 '*@', because 'allowed_recipients' matches complete addresses not just \ |
55b7bde95d37
reworked allowed and denied addrs for routes
meillo@marmaro.de
parents:
311
diff
changeset
|
142 domains. \ |
55b7bde95d37
reworked allowed and denied addrs for routes
meillo@marmaro.de
parents:
311
diff
changeset
|
143 " |
55b7bde95d37
reworked allowed and denied addrs for routes
meillo@marmaro.de
parents:
311
diff
changeset
|
144 |
219 | 145 # get files |
146 | |
147 # already covered by the get.* and online_gets.* options in the conf | |
148 # file. This check is just to make sure, because one might only check | |
149 # the get file. | |
150 # We don't check for the other get file options, which are: | |
151 # protocol server port wrapper user pass address return_path do_keep | |
152 # do_uidl do_uidl_dele max_size max_size_delete max_count resolve_list | |
153 | |
154 check["protocol.*pop"] = "get" SUBSEP "Removed in 0.3.0" SUBSEP "\ | |
155 The POP3 client was removed from masqmail. \ | |
156 Use a dedicated POP3 client, e.g. fetchmail, instead. \ | |
157 " | |
158 | |
159 | |
160 ######## END OF CHECK DEFINITIONS ######## | |
161 } | |
162 | |
163 function checkcomment() { | |
164 if (/^[ \t]*\#/) { | |
165 return " (in a comment)" | |
166 } | |
167 } | |
168 | |
169 { | |
170 for (key in check) { | |
171 if (\$0 !~ key) { | |
172 continue; | |
173 } | |
174 # we have a match | |
175 split(check[key], a, SUBSEP); # array index starts with 1 | |
176 printf("%s:%d: [%s] %s%s\n", FILENAME, NR, a[1], key, checkcomment()); | |
177 cmd = "fold -sw 70 | sed 's,^,\t,'" | |
311
e230bcd0f1c6
removed protocol option from route config
meillo@marmaro.de
parents:
310
diff
changeset
|
178 print "\t>>>> " \$0 " <<<<" |
e230bcd0f1c6
removed protocol option from route config
meillo@marmaro.de
parents:
310
diff
changeset
|
179 print a[3] | cmd |
e230bcd0f1c6
removed protocol option from route config
meillo@marmaro.de
parents:
310
diff
changeset
|
180 close(cmd) |
e230bcd0f1c6
removed protocol option from route config
meillo@marmaro.de
parents:
310
diff
changeset
|
181 print "\t" a[2] |
e230bcd0f1c6
removed protocol option from route config
meillo@marmaro.de
parents:
310
diff
changeset
|
182 print "" |
219 | 183 } |
184 } | |
185 | |
186 ! | |
187 | |
188 | |
189 for i do | |
311
e230bcd0f1c6
removed protocol option from route config
meillo@marmaro.de
parents:
310
diff
changeset
|
190 awk -f "$awkscript" "$i" |
219 | 191 done |