Skip to content

Commit 56af238

Browse files
committed
Add dsearch changes to changelog & readme
1 parent caefbd6 commit 56af238

File tree

3 files changed

+37
-1
lines changed

3 files changed

+37
-1
lines changed

doc/doc-txt/ChangeLog

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -36,6 +36,13 @@ JH/08 Bug 2915: Fix use-after-free for $regex<n> variables. Previously when
3636
These variables were introduced in Exim 4.87.
3737
Debug help from Graeme Fowler.
3838

39+
MK/08 Numerous changes to dsearch lookups: (a) now performs taint check before
40+
other validations to prevent an attacker from making inferences from the
41+
varying error messages; (b) no longer require "read" permission on the
42+
directory (so you can now chmod a-r the dir to improve system security);
43+
(c) uses fstatat on systems that support it (reducing the syscall count);
44+
(d) additional filter options to support matching all inode types; (e)
45+
new ret=dir option. See documentation for full list.
3946

4047
Exim version 4.96
4148
-----------------

doc/doc-txt/NewStuff

Lines changed: 21 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,10 +9,30 @@ the documentation is updated, this file is reduced to a short list.
99
Version 4.97
1010
------------
1111

12-
1. The expansion-test faciility (exim -be) can set variables.
12+
1. The expansion-test facility (exim -be) can set variables.
1313

1414
2. An event on a failing SMTP AUTH, for both client and server operations.
1515

16+
3. Dsearch lookup will now check for taint violations before doing anything
17+
else (this prevents an attacker from inferring the locations of files from
18+
differences in error messages).
19+
20+
4. Dsearch lookup no longer requires read access to directories; consider
21+
revoking read access using chmod go-r /path/to/containing/dir/.
22+
23+
5. Dsearch lookup will use fstatat() on systems that support it.
24+
25+
6. Dsearch lookup has new option "ret=dir" to return only the name of the
26+
containing directory without the target (this simplifies some kinds of
27+
nested loopup expansions).
28+
29+
7. Dsearch lookup now has filter= parameters to match all common inode types
30+
(file, dir, symlink, pipe, socket, tty, & bdev).
31+
32+
8. Dsearch lookup has new option "filter=nodots" to exclude "." and ".."
33+
even when directory matching is not required; equivalent to "filter=subdir"
34+
but without requiring that the target actually be a directory.
35+
1636
Version 4.96
1737
------------
1838

src/README.UPDATING

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -26,6 +26,15 @@ The rest of this document contains information about changes in 4.xx releases
2626
that might affect a running system.
2727

2828

29+
Exim version 4.97
30+
-----------------
31+
32+
The dsearch lookup type no longer requires read permission on its target
33+
directories; scan permission alone now suffices. If you were relying on
34+
unreadable directories to block dsearch lookups, you should now make other
35+
arrangements. Conversely, you may now tighten up the permissions on any
36+
directories that used to require world or group read access.
37+
2938
Exim version 4.95
3039
-----------------
3140

0 commit comments

Comments
 (0)