Keep router-variables separate on addrs, to avoid taint contamination
[exim.git] / doc / doc-docbook / spec.xfpt
index a073730c61e99427d4b613128c5244fe206c4c5c..5463cc1a52b8529389630f138da74b1bfc7bdde8 100644 (file)
@@ -19007,14 +19007,20 @@ matters.
 
 
 .new
 
 
 .new
-.option set routers string unset
+.option set routers "string list" unset
 .cindex router variables
 .cindex router variables
-This option may be used multiple times on a router.
-Each string given must be of the form $"name = value"$
+This option may be used multiple times on a router;
+because of this the list aspect is mostly irrelevant.
+The list separator is a colon but can be changed in the
+usual way.
+
+Each list-element given must be of the form $"name = value"$
 and the names used must start with the string &"r_"&.
 and the names used must start with the string &"r_"&.
-Strings are accumulated for each router which is run.
+Values containing colons should either have them doubled, or
+the entire list should be prefixed with a list-separator change.
 When a router runs, the strings are evaluated in order,
 When a router runs, the strings are evaluated in order,
-to create variables.
+to create variables which are added to the set associated with
+the address.
 The variable is set with the expansion of the value.
 The variables can be used by the router options
 (not including any preconditions)
 The variable is set with the expansion of the value.
 The variables can be used by the router options
 (not including any preconditions)