mirror of
https://github.com/samba-team/samba.git
synced 2024-12-23 17:34:34 +03:00
r6234: Fix for possible root squash nfs bugs from psz@maths.usyd.edu.au
Jeremy.
(This used to be commit dbf021a2e0
)
This commit is contained in:
parent
466a825ce7
commit
d761233aba
@ -806,6 +806,12 @@ static BOOL oplock_break(SMB_DEV_T dev, SMB_INO_T inode, unsigned long file_id,
|
||||
saved_vuid = current_user.vuid;
|
||||
saved_fsp_conn = fsp->conn;
|
||||
change_to_root_user();
|
||||
/*
|
||||
* Initialize saved_dir to something sensible: vfs_GetWd may not work well
|
||||
* for root: the directory may be NFS-mounted and exported with root_squash
|
||||
* (so has no root access).
|
||||
*/
|
||||
pstrcpy(saved_dir,saved_fsp_conn->connectpath);
|
||||
vfs_GetWd(saved_fsp_conn,saved_dir);
|
||||
/* Save the chain fnum. */
|
||||
file_chain_save();
|
||||
|
@ -731,7 +731,9 @@ char *vfs_GetWd(connection_struct *conn, char *path)
|
||||
in trouble :-) */
|
||||
|
||||
if (SMB_VFS_STAT(conn, ".",&st) == -1) {
|
||||
DEBUG(0,("Very strange, couldn't stat \".\" path=%s\n", path));
|
||||
/* Known to fail for root: the directory may be
|
||||
* NFS-mounted and exported with root_squash (so has no root access). */
|
||||
DEBUG(1,("vfs_GetWd: couldn't stat \".\" path=%s error %s (NFS problem ?)\n", path, strerror(errno) ));
|
||||
return(SMB_VFS_GETWD(conn,path));
|
||||
}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user