diff options
author | Daniel Kobras <d.kobras@science-computing.de> | 2017-06-23 15:39:21 +0200 |
---|---|---|
committer | Jeremy Allison <jra@samba.org> | 2017-06-26 23:16:13 +0200 |
commit | acc16592b451905dabc093f1d261e93cd3b59520 (patch) | |
tree | c296cde2b24698da154172601b2541f0b0ba896b /selftest | |
parent | f1f388ef80a6516c2f44b7778420f8ffe28c6471 (diff) | |
download | samba-acc16592b451905dabc093f1d261e93cd3b59520.tar.gz |
s3: smbd: fix regression with non-wide symlinks to directories over SMB3.
The errno returned by open() is ambiguous when called with flags O_NOFOLLOW and
O_DIRECTORY on a symlink. With ELOOP, we know for certain that we've tried to
open a symlink. With ENOTDIR, we might have hit a symlink, and need to perform
further checks to be sure. Adjust non_widelink_open() accordingly. This fixes
a regression where symlinks to directories within the same share were no
longer followed for some call paths on systems returning ENOTDIR in the above
case.
Also remove the knownfail added in previous commit.
BUG: https://bugzilla.samba.org/show_bug.cgi?id=12860
Signed-off-by: Daniel Kobras <d.kobras@science-computing.de>
Reviewed-by: Jeremy Allison <jra@samba.org>
Reviewed-by: Ralph Boehme <slow@samba.org>
Diffstat (limited to 'selftest')
-rw-r--r-- | selftest/knownfail.d/samba3.blackbox.smbclient_s3.follow_local_symlinks | 1 |
1 files changed, 0 insertions, 1 deletions
diff --git a/selftest/knownfail.d/samba3.blackbox.smbclient_s3.follow_local_symlinks b/selftest/knownfail.d/samba3.blackbox.smbclient_s3.follow_local_symlinks deleted file mode 100644 index 7be44c11779..00000000000 --- a/selftest/knownfail.d/samba3.blackbox.smbclient_s3.follow_local_symlinks +++ /dev/null @@ -1 +0,0 @@ -^samba3.blackbox.smbclient_s3.*follow local symlinks.* |