The branch, v4-0-test has been updated
       via  6dc280731d071681b635a2f091be2b153a902080 (commit)
       via  80711c03e0e8fba6f80261facd939ef00e06c7fd (commit)
       via  4b071236867ca5c2c0451ad3acc8a9debb0549e4 (commit)
      from  bfe773a620640fa46efe008f38144f5452350825 (commit)

http://gitweb.samba.org/?p=samba.git;a=shortlog;h=v4-0-test


- Log -----------------------------------------------------------------
commit 6dc280731d071681b635a2f091be2b153a902080
Author: Stefan Metzmacher <[EMAIL PROTECTED]>
Date:   Tue Mar 11 19:29:18 2008 +0100

    pvfs: return NT_STATUS_NOT_IMPLEMENTED on RAW_RENAME_NTTRANS
    
    metze

commit 80711c03e0e8fba6f80261facd939ef00e06c7fd
Author: Stefan Metzmacher <[EMAIL PROTECTED]>
Date:   Tue Mar 11 19:28:34 2008 +0100

    smb_server: pass down RAW_RENAME_NTTRANS to the ntvfs layer
    
    metze

commit 4b071236867ca5c2c0451ad3acc8a9debb0549e4
Author: Stefan Metzmacher <[EMAIL PROTECTED]>
Date:   Mon Mar 10 12:46:17 2008 +0100

    events_signal: pass down the correct siginfo_t struct to the event handler
    
    metze

-----------------------------------------------------------------------

Summary of changes:
 source/lib/events/events_signal.c |    2 +-
 source/ntvfs/posix/pvfs_rename.c  |    3 +++
 source/smb_server/smb/nttrans.c   |   25 ++++++++++++++++++++++++-
 3 files changed, 28 insertions(+), 2 deletions(-)


Changeset truncated at 500 lines:

diff --git a/source/lib/events/events_signal.c 
b/source/lib/events/events_signal.c
index aec3433..c0771cb 100644
--- a/source/lib/events/events_signal.c
+++ b/source/lib/events/events_signal.c
@@ -257,7 +257,7 @@ int common_event_check_signal(struct event_context *ev)
                                for (j=0;j<count;j++) {
                                        /* note the use of the sig_info array 
as a
                                           ring buffer */
-                                       int ofs = (counter.count + j) % 
SA_INFO_QUEUE_COUNT;
+                                       int ofs = ((count-1) + j) % 
SA_INFO_QUEUE_COUNT;
                                        se->handler(ev, se, i, 1, 
                                                    
(void*)&sig_state->sig_info[i][ofs], 
                                                    se->private_data);
diff --git a/source/ntvfs/posix/pvfs_rename.c b/source/ntvfs/posix/pvfs_rename.c
index 29b2d03..e94de8b 100644
--- a/source/ntvfs/posix/pvfs_rename.c
+++ b/source/ntvfs/posix/pvfs_rename.c
@@ -575,6 +575,9 @@ NTSTATUS pvfs_rename(struct ntvfs_module_context *ntvfs,
        case RAW_RENAME_NTRENAME:
                return pvfs_rename_nt(ntvfs, req, ren);
 
+       case RAW_RENAME_NTTRANS:
+               return NT_STATUS_NOT_IMPLEMENTED;
+
        default:
                break;
        }
diff --git a/source/smb_server/smb/nttrans.c b/source/smb_server/smb/nttrans.c
index a20c41b..1b49e23 100644
--- a/source/smb_server/smb/nttrans.c
+++ b/source/smb_server/smb/nttrans.c
@@ -287,7 +287,30 @@ static NTSTATUS nttrans_set_sec_desc(struct smbsrv_request 
*req,
 static NTSTATUS nttrans_rename(struct smbsrv_request *req, 
                               struct nttrans_op *op)
 {
-       return NT_STATUS_NOT_IMPLEMENTED;
+       struct smb_nttrans *trans = op->trans;
+       union smb_rename *io;
+
+       if (trans->in.params.length < 5) {
+               return NT_STATUS_INVALID_PARAMETER;
+       }
+
+       /* parse the request */
+       io = talloc(req, union smb_rename);
+       NT_STATUS_HAVE_NO_MEMORY(io);
+
+       io->nttrans.level               = RAW_RENAME_NTTRANS;
+       io->nttrans.in.file.ntvfs       = smbsrv_pull_fnum(req, 
trans->in.params.data, 0);
+       io->nttrans.in.flags            = SVAL(trans->in.params.data, 2);
+
+       smbsrv_blob_pull_string(&req->in.bufinfo, &trans->in.params, 4,
+                               &io->nttrans.in.new_name,
+                               STR_TERMINATE);
+       if (!io->nttrans.in.new_name) {
+               return NT_STATUS_INVALID_PARAMETER;
+       }
+
+       SMBSRV_CHECK_FILE_HANDLE_NTSTATUS(io->nttrans.in.file.ntvfs);
+       return ntvfs_rename(req->ntvfs, io);
 }
 
 /* 


-- 
Samba Shared Repository

Reply via email to