diff options
author | Jelmer Vernooij <jelmer@samba.org> | 2009-02-25 12:49:37 +0100 |
---|---|---|
committer | Jelmer Vernooij <jelmer@samba.org> | 2009-02-25 12:49:37 +0100 |
commit | 258ae4cec596631b758fb17c170c4494e4db8a8e (patch) | |
tree | 5c9ef9246eef3af3b744e862d0e5314a4686304e /source3/smbd/trans2.c | |
parent | fff055f8e33a8f0bbb5e7cc5b77d6251bf37e0cf (diff) | |
parent | a041d9061922b1a90e5b5047af77934d908afdd5 (diff) | |
download | samba-258ae4cec596631b758fb17c170c4494e4db8a8e.tar.gz samba-258ae4cec596631b758fb17c170c4494e4db8a8e.tar.bz2 samba-258ae4cec596631b758fb17c170c4494e4db8a8e.zip |
Merge branch 'master' of ssh://git.samba.org/data/git/samba
Conflicts:
source4/scripting/python/samba/provision.py
Diffstat (limited to 'source3/smbd/trans2.c')
-rw-r--r-- | source3/smbd/trans2.c | 12 |
1 files changed, 10 insertions, 2 deletions
diff --git a/source3/smbd/trans2.c b/source3/smbd/trans2.c index 759e520866..433b8a008d 100644 --- a/source3/smbd/trans2.c +++ b/source3/smbd/trans2.c @@ -4972,6 +4972,7 @@ NTSTATUS smb_set_file_time(connection_struct *conn, ****************************************************************************/ static NTSTATUS smb_set_file_dosmode(connection_struct *conn, + files_struct *fsp, const char *fname, SMB_STRUCT_STAT *psbuf, uint32 dosmode) @@ -4980,6 +4981,14 @@ static NTSTATUS smb_set_file_dosmode(connection_struct *conn, return NT_STATUS_OBJECT_NAME_NOT_FOUND; } + if (fsp) { + if (fsp->base_fsp) { + fname = fsp->base_fsp->fsp_name; + } else { + fname = fsp->fsp_name; + } + } + if (dosmode) { if (S_ISDIR(psbuf->st_mode)) { dosmode |= aDIR; @@ -5723,12 +5732,11 @@ static NTSTATUS smb_set_file_basic_info(connection_struct *conn, /* Set the attributes */ dosmode = IVAL(pdata,32); - status = smb_set_file_dosmode(conn, fname, psbuf, dosmode); + status = smb_set_file_dosmode(conn, fsp, fname, psbuf, dosmode); if (!NT_STATUS_IS_OK(status)) { return status; } - /* access time */ ft.atime = interpret_long_date(pdata+8); |