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
-.option set routers string unset
+.option set routers "string list" unset
 .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_"&.
-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,
-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)