diff options
author | Philip Hazel <ph10@hermes.cam.ac.uk> | 2005-10-03 13:25:32 +0000 |
---|---|---|
committer | Philip Hazel <ph10@hermes.cam.ac.uk> | 2005-10-03 13:25:32 +0000 |
commit | 8857ccfd03a8d84a286fc414dece305166ae4269 (patch) | |
tree | 6ccef31e9a67598a08b83a0f89365a2e25e9face /src | |
parent | 4b233853511d46ecd2a39c06994e3a79ed944ed1 (diff) |
Make name= in control=submission swallow the rest of the string, thus
allowing for slashes in the name, but requiring this option to be last.
Diffstat (limited to 'src')
-rw-r--r-- | src/README.UPDATING | 11 | ||||
-rw-r--r-- | src/src/acl.c | 6 |
2 files changed, 14 insertions, 3 deletions
diff --git a/src/README.UPDATING b/src/README.UPDATING index b5630d309..fb599d384 100644 --- a/src/README.UPDATING +++ b/src/README.UPDATING @@ -1,4 +1,4 @@ -$Cambridge: exim/src/README.UPDATING,v 1.8 2005/09/14 13:20:12 ph10 Exp $ +$Cambridge: exim/src/README.UPDATING,v 1.9 2005/10/03 13:25:32 ph10 Exp $ This document contains detailed information about incompatibilities that might be encountered when upgrading from one release of Exim to another. The @@ -28,6 +28,15 @@ The rest of this document contains information about changes in 4.xx releases that might affect a running system. +Exim version 4.54 +----------------- + +There was a problem with 4.52/TF/02 in that a "name=" option on control= +submission terminated at the next slash, thereby not allowing for slashes in +the name. This has been changed so that "name=" takes the rest of the string as +its data. It must therefore be the last option. + + Version 4.53 ------------ diff --git a/src/src/acl.c b/src/src/acl.c index c06707ec6..ef8f06da6 100644 --- a/src/src/acl.c +++ b/src/src/acl.c @@ -1,4 +1,4 @@ -/* $Cambridge: exim/src/src/acl.c,v 1.49 2005/09/22 12:02:22 fanf2 Exp $ */ +/* $Cambridge: exim/src/src/acl.c,v 1.50 2005/10/03 13:25:33 ph10 Exp $ */ /************************************************* * Exim - an Internet mail transport agent * @@ -2497,10 +2497,12 @@ for (; cb != NULL; cb = cb->next) submission_domain = string_copyn(p+8, pp-p-8); p = pp; } + /* The name= option must be last, because it swallows the rest of + the string. */ else if (Ustrncmp(p, "/name=", 6) == 0) { uschar *pp = p + 6; - while (*pp != 0 && *pp != '/') pp++; + while (*pp != 0) pp++; submission_name = string_copy(parse_fix_phrase(p+6, pp-p-6, big_buffer, big_buffer_size)); p = pp; |