https://bugs.kde.org/show_bug.cgi?id=506813

--- Comment #2 from Mark Wielaard <[email protected]> ---
The reason we have to handle AT_SYMLINK_NOFOLLOW explicitly is because we try
to translate the execveat call into a execve call.
For execveat glibc does nothing special for AT_SYMLINK_NOFOLLOW because it is a
simple wrapper of the kernel syscall.
In other cases it seems glibc also doesn't do something special just passes
AT_SYMLINK_NOFOLLOW to syscalls that take a flag.

Having VG_(lstat) would certainly be helpful. But I believe the check used in
our linux sys_execveat PRE wrapper is actually OK.
VG_(stat)(path, &statbuf); if (VKI_S_ISLNK(statbuf.mode)) SET_STATUS_Failure(
VKI_ELOOP );
It is just that it isn't done consistently. It is only done on relative paths,
not on absolute paths.

-- 
You are receiving this mail because:
You are watching all bug changes.

Reply via email to