Re: [SCM] Samba Shared Repository - branch master updated - release-4-0-0alpha8-261-g431e63c

2009-07-07 Thread Stefan (metze) Metzmacher
Hi Tim,

> commit 18a27a8df223ba8eb0faf6a64384acce174f3ace
> Author: Tim Prouty 
> Date:   Thu Jul 2 10:27:01 2009 -0700
> 
> s3 sticky write time: Removed unused args and tighten up a function by 
> making an arg const

I don't think it makes sense to apply a const in non-pointers
parameters, the function always gets a copy of the callers variable.

Also you missed a const in the proto.h for set_sticky_write_time_path()
which is present in the function.

metze



signature.asc
Description: OpenPGP digital signature


[SCM] Samba Shared Repository - branch master updated - release-4-0-0alpha8-263-ga830a3f

2009-07-07 Thread Jeremy Allison
The branch, master has been updated
   via  a830a3f9e292931acd90b5cf5cdffc6e83ea00c7 (commit)
  from  6dd6ccbdc9451678180e0346780b0a5bf9cda229 (commit)

http://gitweb.samba.org/?p=samba.git;a=shortlog;h=master


- Log -
commit a830a3f9e292931acd90b5cf5cdffc6e83ea00c7
Author: Stefan Metzmacher 
Date:   Tue Jul 7 15:16:21 2009 +0200

s3:smbd: cancel all locks that are made before the first failure

s3:smbd: cancel all locks that are made before the first failure

We never reached the cleanup code and directly returned the error.

metze

---

Summary of changes:
 source3/smbd/reply.c |   12 ++--
 1 files changed, 6 insertions(+), 6 deletions(-)


Changeset truncated at 500 lines:

diff --git a/source3/smbd/reply.c b/source3/smbd/reply.c
index 8700146..c07ac33 100644
--- a/source3/smbd/reply.c
+++ b/source3/smbd/reply.c
@@ -7491,18 +7491,18 @@ void reply_lockingX(struct smb_request *req)
}
 
if (NT_STATUS_V(status)) {
-   END_PROFILE(SMBlockingX);
-   reply_nterror(req, status);
-   return;
+   break;
}
}
 
/* If any of the above locks failed, then we must unlock
   all of the previous locks (X/Open spec). */
+   if (num_locks != 0 && !NT_STATUS_IS_OK(status)) {
+
+   if (locktype & LOCKING_ANDX_CANCEL_LOCK) {
+   i = -1; /* we want to skip the for loop */
+   }
 
-   if (!(locktype & LOCKING_ANDX_CANCEL_LOCK) &&
-   (i != num_locks) &&
-   (num_locks != 0)) {
/*
 * Ensure we don't do a remove on the lock that just failed,
 * as under POSIX rules, if we have a lock already there, we


-- 
Samba Shared Repository


[SCM] Samba Shared Repository - branch master updated - release-4-0-0alpha8-264-g5ab0677

2009-07-07 Thread Volker Lendecke
The branch, master has been updated
   via  5ab0677b45c289d5454c32950276230278379ed0 (commit)
  from  a830a3f9e292931acd90b5cf5cdffc6e83ea00c7 (commit)

http://gitweb.samba.org/?p=samba.git;a=shortlog;h=master


- Log -
commit 5ab0677b45c289d5454c32950276230278379ed0
Author: Volker Lendecke 
Date:   Tue Jul 7 20:40:39 2009 +0200

Attempt to fix the build of vfs_catia.c -- Tim, please check!

---

Summary of changes:
 source3/modules/vfs_catia.c |4 ++--
 1 files changed, 2 insertions(+), 2 deletions(-)


Changeset truncated at 500 lines:

diff --git a/source3/modules/vfs_catia.c b/source3/modules/vfs_catia.c
index e577942..1fd1012 100644
--- a/source3/modules/vfs_catia.c
+++ b/source3/modules/vfs_catia.c
@@ -151,7 +151,7 @@ static int catia_open(vfs_handle_struct *handle,
tmp_base_name = smb_fname->base_name;
smb_fname->base_name = name;
 
-   ret = SMB_VFS_NEXT_OPEN(handle, name, fsp, flags, mode);
+   ret = SMB_VFS_NEXT_OPEN(handle, smb_fname, fsp, flags, mode);
 
smb_fname->base_name = tmp_base_name;
TALLOC_FREE(name);
@@ -204,7 +204,7 @@ static int catia_rename(vfs_handle_struct *handle,
  smb_fname_dst_tmp);
  out:
TALLOC_FREE(oname);
-   TALLOC_FREE(newname);
+   TALLOC_FREE(nname);
TALLOC_FREE(smb_fname_src_tmp);
TALLOC_FREE(smb_fname_dst_tmp);
return ret;


-- 
Samba Shared Repository


[SCM] Samba Shared Repository - branch master updated - release-4-0-0alpha8-265-ga285969

2009-07-07 Thread Björn Jacke
The branch, master has been updated
   via  a28596964b44f20d794999541d38fe4bae64b56b (commit)
  from  5ab0677b45c289d5454c32950276230278379ed0 (commit)

http://gitweb.samba.org/?p=samba.git;a=shortlog;h=master


- Log -
commit a28596964b44f20d794999541d38fe4bae64b56b
Author: Björn Jacke 
Date:   Tue Jul 7 22:11:50 2009 +0200

s3: QNX doesn't know uint - replace with uint_t

---

Summary of changes:
 source3/include/proto.h  |8 
 source3/libsmb/clirap2.c |8 
 2 files changed, 8 insertions(+), 8 deletions(-)


Changeset truncated at 500 lines:

diff --git a/source3/include/proto.h b/source3/include/proto.h
index dfcb38d..fb10dd2 100644
--- a/source3/include/proto.h
+++ b/source3/include/proto.h
@@ -2831,14 +2831,14 @@ bool cli_ns_check_server_type(struct cli_state *cli, 
char *workgroup, uint32 sty
 bool cli_NetWkstaUserLogoff(struct cli_state *cli, const char *user, const 
char *workstation);
 int cli_NetPrintQEnum(struct cli_state *cli,
void (*qfn)(const char*,uint16,uint16,uint16,const char*,const 
char*,const char*,const char*,const char*,uint16,uint16),
-   void (*jfn)(uint16,const char*,const char*,const char*,const 
char*,uint16,uint16,const char*,uint,uint,const char*));
+   void (*jfn)(uint16,const char*,const char*,const char*,const 
char*,uint16,uint16,const char*,uint_t,uint_t,const char*));
 int cli_NetPrintQGetInfo(struct cli_state *cli, const char *printer,
void (*qfn)(const char*,uint16,uint16,uint16,const char*,const 
char*,const char*,const char*,const char*,uint16,uint16),
-   void (*jfn)(uint16,const char*,const char*,const char*,const 
char*,uint16,uint16,const char*,uint,uint,const char*));
+   void (*jfn)(uint16,const char*,const char*,const char*,const 
char*,uint16,uint16,const char*,uint_t,uint_t,const char*));
 int cli_RNetServiceEnum(struct cli_state *cli, void (*fn)(const char *, const 
char *, void *), void *state);
-int cli_NetSessionEnum(struct cli_state *cli, void (*fn)(char *, char *, 
uint16, uint16, uint16, uint, uint, uint, char *));
+int cli_NetSessionEnum(struct cli_state *cli, void (*fn)(char *, char *, 
uint16, uint16, uint16, uint_t, uint_t, uint_t, char *));
 int cli_NetSessionGetInfo(struct cli_state *cli, const char *workstation,
-   void (*fn)(const char *, const char *, uint16, uint16, uint16, 
uint, uint, uint, const char *));
+   void (*fn)(const char *, const char *, uint16, uint16, uint16, 
uint_t, uint_t, uint_t, const char *));
 int cli_NetSessionDel(struct cli_state *cli, const char *workstation);
 int cli_NetConnectionEnum(struct cli_state *cli, const char *qualifier,
void (*fn)(uint16_t conid, uint16_t contype,
diff --git a/source3/libsmb/clirap2.c b/source3/libsmb/clirap2.c
index a15fa5f..4fd9dc6 100644
--- a/source3/libsmb/clirap2.c
+++ b/source3/libsmb/clirap2.c
@@ -1899,7 +1899,7 @@ bool cli_NetWkstaUserLogoff(struct cli_state *cli, const 
char *user, const char
 
 int cli_NetPrintQEnum(struct cli_state *cli,
void (*qfn)(const char*,uint16,uint16,uint16,const char*,const 
char*,const char*,const char*,const char*,uint16,uint16),
-   void (*jfn)(uint16,const char*,const char*,const char*,const 
char*,uint16,uint16,const char*,uint,uint,const char*))
+   void (*jfn)(uint16,const char*,const char*,const char*,const 
char*,uint16,uint16,const char*,uint_t,uint_t,const char*))
 {
char param[WORDSIZE /* api number*/
+sizeof(RAP_NetPrintQEnum_REQ)/* req string*/
@@ -2075,7 +2075,7 @@ int cli_NetPrintQEnum(struct cli_state *cli,
 
 int cli_NetPrintQGetInfo(struct cli_state *cli, const char *printer,
void (*qfn)(const char*,uint16,uint16,uint16,const char*,const 
char*,const char*,const char*,const char*,uint16,uint16),
-   void (*jfn)(uint16,const char*,const char*,const char*,const 
char*,uint16,uint16,const char*,uint,uint,const char*))
+   void (*jfn)(uint16,const char*,const char*,const char*,const 
char*,uint16,uint16,const char*,uint_t,uint_t,const char*))
 {
char param[WORDSIZE /* api number*/
+sizeof(RAP_NetPrintQGetInfo_REQ) /* req string*/
@@ -2335,7 +2335,7 @@ int cli_RNetServiceEnum(struct cli_state *cli, void 
(*fn)(const char *, const ch
  Call a NetSessionEnum - list workstations with sessions to an SMB server.
 /
 
-int cli_NetSessionEnum(struct cli_state *cli, void (*fn)(char *, char *, 
uint16, uint16, uint16, uint, uint, uint, char *))
+int cli_NetSessionEnum(struct cli_state *cli, void (*fn)(char *, char *, 
uint16, uint16, uint16, uint_t, uint_t, uint_t, char *))
 {
char param[WORDSIZE   /* api num

[SCM] Samba Shared Repository - branch master updated - release-4-0-0alpha8-266-g9aebdc2

2009-07-07 Thread Jeff Layton
The branch, master has been updated
   via  9aebdc25010548c00d64b02f827c80a6e8fee9bf (commit)
  from  a28596964b44f20d794999541d38fe4bae64b56b (commit)

http://gitweb.samba.org/?p=samba.git;a=shortlog;h=master


- Log -
commit 9aebdc25010548c00d64b02f827c80a6e8fee9bf
Author: Shirish Pargaonkar 
Date:   Tue Jul 7 16:35:06 2009 -0400

mount.cifs: clarify mapchars option

Signed-off-by: Shirish Pargaonkar 
Signed-off-by: Jeff Layton 

---

Summary of changes:
 docs-xml/manpages-3/mount.cifs.8.xml |4 +++-
 1 files changed, 3 insertions(+), 1 deletions(-)


Changeset truncated at 500 lines:

diff --git a/docs-xml/manpages-3/mount.cifs.8.xml 
b/docs-xml/manpages-3/mount.cifs.8.xml
index 6461d82..9383f3f 100644
--- a/docs-xml/manpages-3/mount.cifs.8.xml
+++ b/docs-xml/manpages-3/mount.cifs.8.xml
@@ -344,7 +344,9 @@ permissions in memory that can't be stored on the server. 
This information can d
 (which also forbids creating and opening files
 whose names contain any of these seven characters).
 This has no effect if the server does not support
-Unicode on the wire.
+Unicode on the wire. Please note that the files created
+   with mapchars mount option may not be accessible
+   if the share is mounted without that option.
 
 
 


-- 
Samba Shared Repository


[SCM] CTDB repository - branch master updated - ctdb-1.0.86-29-gb67946a

2009-07-07 Thread Ronnie Sahlberg
The branch, master has been updated
   via  b67946a6f6b185a7920bf1e560988417c8c4d87d (commit)
   via  3f7a4afa0fcc5825beb89267973939df8cde4999 (commit)
   via  8d12fe61eb59a4a611dd5950506d14bd4891075d (commit)
   via  aa9f79e4b3e077b48a8a16903d2236c284617e49 (commit)
   via  52e1cd7e9217cfa521850a9a9a9daddcce011f27 (commit)
   via  7c27c493a6de92544754e42f2a8f227b3d663c73 (commit)
   via  da87914ab47fe5786b620587464b58853e98dd7e (commit)
   via  56ece515e047a54f33e8b07726e52ba21a1d67e1 (commit)
   via  bebb21f18e3026cb78a306104e92ee005d1077b2 (commit)
  from  5e3b590e384bacfbebab1dd85e89cd87b63c620e (commit)

http://gitweb.samba.org/?p=sahlberg/ctdb.git;a=shortlog;h=master


- Log -
commit b67946a6f6b185a7920bf1e560988417c8c4d87d
Author: Martin Schwenke 
Date:   Mon Jul 6 17:52:11 2009 +1000

Test suite: better debug info when the cluster is unexpectedly unhealthy.

cluster_is_healthy() is now run locally in tests and internally causes
_cluster_is_healthy() to be run on node 0.  When it detects that the
cluster is unhealthy and $ctdb_test_restart_scheduled is not true,
debug information is printed.  This replaces the previous use of
$CTDB_TEST_CLEANING_UP.

To avoid spurious debug on expected restarts, added scheduled
restarts to several tests.

Signed-off-by: Martin Schwenke 

commit 3f7a4afa0fcc5825beb89267973939df8cde4999
Author: Martin Schwenke 
Date:   Mon Jul 6 16:40:31 2009 +1000

Make ctdbd restarts in tests more reliable.

This works around potential race conditions in the init script where
the restart operation is not necessarily reliable.  It just wraps the
actual restart in a loop and tries for a successful restart up to 5
times.

Signed-off-by: Martin Schwenke 

commit 8d12fe61eb59a4a611dd5950506d14bd4891075d
Author: Martin Schwenke 
Date:   Mon Jul 6 16:39:08 2009 +1000

When testing make the time taken for some operations more obvious.

If wait_until() does not timeout, print the time taken for the command
to succeed.

Signed-off-by: Martin Schwenke 

commit aa9f79e4b3e077b48a8a16903d2236c284617e49
Author: Martin Schwenke 
Date:   Fri Jul 3 20:55:02 2009 +1000

New tests for different aspects of failover.

3 separate tests:

* Check that gratuitous ARPs are received and take effect.

* Check that ping still works after failover.

* Check, via SSH, that the hostname changes after failover.

Signed-off-by: Martin Schwenke 

commit 52e1cd7e9217cfa521850a9a9a9daddcce011f27
Author: Martin Schwenke 
Date:   Fri Jul 3 20:44:55 2009 +1000

Updates to TCP tickle tests and supporting functions.

* Removed a race from tpcdump_start().  It seems impossible to tell
  when tcpdump is actually ready to capture packets.  So this function
  now generates some dummy ping packets and waits until it sees them
  in the output file.

* tcpdump_start() sets $tcpdump_filter.  This is the default filter
  for tcpdump_wait() and tcpdump_show(), but other filters may be
  passed to those functions.

* New functions tcptickle_sniff_start() and
  tcptickle_sniff_wait_show() handle capturing TCP tickle packets.
  These are used by complex/31_nfs_tickle.sh and
  complex/32_cifs_tickle.sh.

Signed-off-by: Martin Schwenke 

commit 7c27c493a6de92544754e42f2a8f227b3d663c73
Author: Martin Schwenke 
Date:   Fri Jul 3 18:01:29 2009 +1000

Add an extra ctdb recovery to test function restart_ctdb().

There are still very rare cases where IPs haven't been reallocated
before the beginning of the next test, so this adds a sleep and an
extra call to "ctdb recover" to restart_ctdb().

Signed-off-by: Martin Schwenke 

commit da87914ab47fe5786b620587464b58853e98dd7e
Author: Martin Schwenke 
Date:   Fri Jul 3 17:58:38 2009 +1000

Fix the run_tests script so that the number of columns is never 0.

Sometimes "stty size" reports 0, for example when running in a shell
under Emacs.  In this case, we just change it to 80.

Signed-off-by: Martin Schwenke 

commit 56ece515e047a54f33e8b07726e52ba21a1d67e1
Author: Martin Schwenke 
Date:   Fri Jul 3 17:40:16 2009 +1000

Separate test cleanup code in output and clean up ctdb restart code.

* ctdb_restart_when_done() now schedules a restart by setting an
  explicit variable that is respected in ctdb_test_exit(), rather than
  adding a restart to $ctdb_test_exit_hook.  This means that restarts
  are all done in one place.

* ctdb_test_exit() turns off "set -e" to make sure that all cleanup
  happens.

* ctdb_test_exit() now prints a clear message indicating where the
  test ends and the cleanup begins.  This message also includes the
  return code of the test.

* Add debug in cl

Build status as of Wed Jul 8 00:00:02 2009

2009-07-07 Thread build
URL: http://build.samba.org/

--- /home/build/master/cache/broken_results.txt.old 2009-07-07 
00:00:41.0 +
+++ /home/build/master/cache/broken_results.txt 2009-07-08 00:00:28.0 
+
@@ -1,22 +1,22 @@
-Build status as of Tue Jul  7 00:00:02 2009
+Build status as of Wed Jul  8 00:00:02 2009
 
 Build counts:
 Tree Total  Broken Panic 
 build_farm   0  0  0 
-ccache   33 8  0 
+ccache   24 3  0 
 distcc   0  0  0 
-ldb  33 33 0 
-libreplace   32 14 0 
+ldb  25 25 0 
+libreplace   24 11 0 
 lorikeet 0  0  0 
-pidl 22 2  0 
-ppp  12 0  0 
-rsync33 12 0 
+pidl 20 2  0 
+ppp  10 0  0 
+rsync25 8  0 
 samba-docs   0  0  0 
 samba-web0  0  0 
-samba_3_current 30 18 0 
-samba_3_master 31 23 3 
-samba_3_next 30 27 1 
-samba_4_0_test 32 27 14
-talloc   33 33 0 
-tdb  31 28 0 
+samba_3_current 23 13 0 
+samba_3_master 24 19 3 
+samba_3_next 24 22 1 
+samba_4_0_test 23 22 10
+talloc   25 25 0 
+tdb  23 23 0 
 


Re: [SCM] Samba Shared Repository - branch master updated- release-4-0-0alpha8-261-g431e63c

2009-07-07 Thread Tim Prouty


On Jul 7, 2009, at 1:14 AM, Stefan (metze) Metzmacher wrote:


Hi Tim,


commit 18a27a8df223ba8eb0faf6a64384acce174f3ace
Author: Tim Prouty 
Date:   Thu Jul 2 10:27:01 2009 -0700

   s3 sticky write time: Removed unused args and tighten up a  
function by making an arg const


I don't think it makes sense to apply a const in non-pointers
parameters, the function always gets a copy of the callers variable.

Also you missed a const in the proto.h for  
set_sticky_write_time_path()

which is present in the function.


Great point.  I'll push a patch that fixes this.

-Tim


Re: [SCM] Samba Shared Repository - branch master updated - release-4-0-0alpha8-264-g5ab0677

2009-07-07 Thread Tim Prouty


On Jul 7, 2009, at 11:42 AM, Volker Lendecke wrote:


The branch, master has been updated
  via  5ab0677b45c289d5454c32950276230278379ed0 (commit)
 from  a830a3f9e292931acd90b5cf5cdffc6e83ea00c7 (commit)

http://gitweb.samba.org/?p=samba.git;a=shortlog;h=master


- Log  
-

commit 5ab0677b45c289d5454c32950276230278379ed0
Author: Volker Lendecke 
Date:   Tue Jul 7 20:40:39 2009 +0200

   Attempt to fix the build of vfs_catia.c -- Tim, please check!


Thanks!  Apparently catia isn't getting built for some reason in my  
normal builds.  Are there any extra configure flags you use?


-Tim


[SCM] Samba Shared Repository - branch master updated - release-4-0-0alpha8-268-g7ca59ff

2009-07-07 Thread Tim Prouty
The branch, master has been updated
   via  7ca59ffe5a6608ac865e6fe403b17638af09595a (commit)
   via  0d9b2048823870363db1856b8f5113f35aeb6a08 (commit)
  from  9aebdc25010548c00d64b02f827c80a6e8fee9bf (commit)

http://gitweb.samba.org/?p=samba.git;a=shortlog;h=master


- Log -
commit 7ca59ffe5a6608ac865e6fe403b17638af09595a
Author: Tim Prouty 
Date:   Tue Jul 7 17:56:49 2009 -0700

s3: Migrate a few functions in open.c to take smb_filename

commit 0d9b2048823870363db1856b8f5113f35aeb6a08
Author: Tim Prouty 
Date:   Tue Jul 7 17:27:50 2009 -0700

s3: Remove unnecessary const qualifiers

---

Summary of changes:
 source3/include/proto.h   |9 -
 source3/locking/locking.c |3 +--
 source3/smbd/dosmode.c|5 ++---
 source3/smbd/open.c   |   28 +++-
 4 files changed, 22 insertions(+), 23 deletions(-)


Changeset truncated at 500 lines:

diff --git a/source3/include/proto.h b/source3/include/proto.h
index fb10dd2..0315f30 100644
--- a/source3/include/proto.h
+++ b/source3/include/proto.h
@@ -3474,8 +3474,7 @@ NTSTATUS can_set_delete_on_close(files_struct *fsp, bool 
delete_on_close,
 void set_delete_on_close_token(struct share_mode_lock *lck, const 
UNIX_USER_TOKEN *tok);
 void set_delete_on_close_lck(struct share_mode_lock *lck, bool 
delete_on_close, const UNIX_USER_TOKEN *tok);
 bool set_delete_on_close(files_struct *fsp, bool delete_on_close, const 
UNIX_USER_TOKEN *tok);
-bool set_sticky_write_time(const struct file_id fileid,
-  struct timespec write_time);
+bool set_sticky_write_time(struct file_id fileid, struct timespec write_time);
 bool set_write_time(struct file_id fileid, struct timespec write_time);
 int share_mode_forall(void (*fn)(const struct share_mode_entry *, const char *,
 const char *, void *),
@@ -6243,9 +6242,9 @@ int file_set_dosmode(connection_struct *conn, struct 
smb_filename *smb_fname,
 uint32 dosmode, const char *parent_dir, bool newfile);
 int file_ntimes(connection_struct *conn, const struct smb_filename *smb_fname,
struct smb_file_time *ft);
-bool set_sticky_write_time_path(struct file_id fileid,
-   const struct timespec mtime);
-bool set_sticky_write_time_fsp(struct files_struct *fsp, const struct timespec 
mtime);
+bool set_sticky_write_time_path(struct file_id fileid, struct timespec mtime);
+bool set_sticky_write_time_fsp(struct files_struct *fsp,
+  struct timespec mtime);
 bool update_write_time(struct files_struct *fsp);
 
 /* The following definitions come from smbd/error.c  */
diff --git a/source3/locking/locking.c b/source3/locking/locking.c
index 78064cf..dd735be 100644
--- a/source3/locking/locking.c
+++ b/source3/locking/locking.c
@@ -1415,8 +1415,7 @@ bool set_delete_on_close(files_struct *fsp, bool 
delete_on_close, const UNIX_USE
return True;
 }
 
-bool set_sticky_write_time(const struct file_id fileid,
-  struct timespec write_time)
+bool set_sticky_write_time(struct file_id fileid, struct timespec write_time)
 {
struct share_mode_lock *lck;
 
diff --git a/source3/smbd/dosmode.c b/source3/smbd/dosmode.c
index 76034db..9d44eee 100644
--- a/source3/smbd/dosmode.c
+++ b/source3/smbd/dosmode.c
@@ -781,8 +781,7 @@ int file_ntimes(connection_struct *conn, const struct 
smb_filename *smb_fname,
  returned on all future write time queries and set on close.
 **/
 
-bool set_sticky_write_time_path(const struct file_id fileid,
-   const struct timespec mtime)
+bool set_sticky_write_time_path(struct file_id fileid, struct timespec mtime)
 {
if (null_timespec(mtime)) {
return true;
@@ -800,7 +799,7 @@ bool set_sticky_write_time_path(const struct file_id fileid,
  returned on all future write time queries and set on close.
 **/
 
-bool set_sticky_write_time_fsp(struct files_struct *fsp, const struct timespec 
mtime)
+bool set_sticky_write_time_fsp(struct files_struct *fsp, struct timespec mtime)
 {
fsp->write_time_forced = true;
TALLOC_FREE(fsp->update_write_time_event);
diff --git a/source3/smbd/open.c b/source3/smbd/open.c
index 926c0ec..e93485b 100644
--- a/source3/smbd/open.c
+++ b/source3/smbd/open.c
@@ -65,7 +65,7 @@ NTSTATUS smb1_file_se_access_check(const struct 
security_descriptor *sd,
 /
 
 static NTSTATUS check_open_rights(struct connection_struct *conn,
-   const char *fname,
+   const struct smb_filename *smb_fname,
uint32_t ac

[SCM] CTDB repository - branch master updated - ctdb-1.0.86-52-g2ff6ee0

2009-07-07 Thread Ronnie Sahlberg
The branch, master has been updated
   via  2ff6ee042080ba1c2bea76bbef3742997d84c9a8 (commit)
   via  823019870c0831258b96654646f71e9dd69317ec (commit)
   via  de0b58e18fcc0f90075fca74077ab62ae8dab5da (commit)
   via  ee7caae3a55a64fb50cd28fa2fd4663c5dd83b4f (commit)
   via  1cac8a0ad429f29d1508158c7f7c42a2f1a22945 (commit)
   via  bdb856ee22816ae1f6b8d15856555f488054f489 (commit)
   via  92011cc05bbdb517ec6a4573f5cb9f6f21c3059e (commit)
   via  8e2a89935a969340bfead8ed040d74703947cb81 (commit)
   via  c2bdb77d91761c003e2f0e6918a27c54150f6030 (commit)
   via  e309cb3f95efcf6cff7d7c19713d7b161a138383 (commit)
   via  b6fa044a1364cbb3008085041453ee4885f7ced1 (commit)
   via  c97d56d93d9c1007a4e85affb19ed0c2d0e11b6d (commit)
   via  d440e83bb4f0c19c085915d0f0e87cc0dabbc569 (commit)
   via  8ddd5165f573fc6beaae589b86a6afa4bc17f32a (commit)
   via  10531b50e2d306a5e62b8d488a1acc9e75b0ad4b (commit)
   via  31cc46eb157ca1301312f14879e4fb4da7d81088 (commit)
   via  d5ca4ab325fce1f81361a4d79810cb543979ce57 (commit)
   via  d6e6909ac629212b3028e13b958e1a17c64bee8c (commit)
   via  92be87b5bfed7882b48f4034c82dfdb031f3afdc (commit)
   via  135b72828fc76856fa8f6d7f9c820120de05596b (commit)
   via  951dbcb29fd53cf51a08958efe185db4954d24f3 (commit)
   via  1ea6af7007fe3b5a48d48440a0924c71d7a6000a (commit)
   via  ee5d49324155e3e51371f6f8e5ed9eef4179f08d (commit)
  from  b67946a6f6b185a7920bf1e560988417c8c4d87d (commit)

http://gitweb.samba.org/?p=sahlberg/ctdb.git;a=shortlog;h=master


- Log -
commit 2ff6ee042080ba1c2bea76bbef3742997d84c9a8
Merge: de0b58e18fcc0f90075fca74077ab62ae8dab5da 
823019870c0831258b96654646f71e9dd69317ec
Author: Martin Schwenke 
Date:   Wed Jul 8 14:21:36 2009 +1000

Merge branch 'ronnie_merge'

commit 823019870c0831258b96654646f71e9dd69317ec
Merge: ee7caae3a55a64fb50cd28fa2fd4663c5dd83b4f 
b67946a6f6b185a7920bf1e560988417c8c4d87d
Author: Martin Schwenke 
Date:   Wed Jul 8 14:21:05 2009 +1000

Merge commit 'origin/master' into ronnie_merge

Conflicts:
config/ctdb.init

Signed-off-by: Martin Schwenke 

commit de0b58e18fcc0f90075fca74077ab62ae8dab5da
Author: Martin Schwenke 
Date:   Wed Jul 8 13:37:52 2009 +1000

Test suite: new tests and code factoring.

* 2 new tests for NFS failover.

* Factor repeated code from tests into new functions
  select_test_node_and_ips(), gratarp_sniff_start() and
  gratarp_sniff_wait_show().  Use these new functions in existing and
  new tests.

Signed-off-by: Martin Schwenke 

commit ee7caae3a55a64fb50cd28fa2fd4663c5dd83b4f
Author: Martin Schwenke 
Date:   Mon Jul 6 17:52:11 2009 +1000

Test suite: better debug info when the cluster is unexpectedly unhealthy.

cluster_is_healthy() is now run locally in tests and internally causes
_cluster_is_healthy() to be run on node 0.  When it detects that the
cluster is unhealthy and $ctdb_test_restart_scheduled is not true,
debug information is printed.  This replaces the previous use of
$CTDB_TEST_CLEANING_UP.

To avoid spurious debug on expected restarts, added scheduled
restarts to several tests.

Signed-off-by: Martin Schwenke 

commit 1cac8a0ad429f29d1508158c7f7c42a2f1a22945
Author: Martin Schwenke 
Date:   Mon Jul 6 16:40:31 2009 +1000

Make ctdbd restarts in tests more reliable.

This works around potential race conditions in the init script where
the restart operation is not necessarily reliable.  It just wraps the
actual restart in a loop and tries for a successful restart up to 5
times.

Signed-off-by: Martin Schwenke 

commit bdb856ee22816ae1f6b8d15856555f488054f489
Author: Martin Schwenke 
Date:   Mon Jul 6 16:39:08 2009 +1000

When testing make the time taken for some operations more obvious.

If wait_until() does not timeout, print the time taken for the command
to succeed.

Signed-off-by: Martin Schwenke 

commit 92011cc05bbdb517ec6a4573f5cb9f6f21c3059e
Author: Martin Schwenke 
Date:   Fri Jul 3 20:55:02 2009 +1000

New tests for different aspects of failover.

3 separate tests:

* Check that gratuitous ARPs are received and take effect.

* Check that ping still works after failover.

* Check, via SSH, that the hostname changes after failover.

Signed-off-by: Martin Schwenke 

commit 8e2a89935a969340bfead8ed040d74703947cb81
Author: Martin Schwenke 
Date:   Fri Jul 3 20:44:55 2009 +1000

Updates to TCP tickle tests and supporting functions.

* Removed a race from tpcdump_start().  It seems impossible to tell
  when tcpdump is actually ready to capture packets.  So this function
  now generates some dummy ping packets and waits until it sees them
  in the output file.

* tcpdump_start() sets $tcpdump_filter.  

[SCM] Samba Shared Repository - branch master updated - release-4-0-0alpha8-269-gdad9131

2009-07-07 Thread Tim Prouty
The branch, master has been updated
   via  dad913118344922139401ee5afaec8f3e68e05dd (commit)
  from  7ca59ffe5a6608ac865e6fe403b17638af09595a (commit)

http://gitweb.samba.org/?p=samba.git;a=shortlog;h=master


- Log -
commit dad913118344922139401ee5afaec8f3e68e05dd
Author: Tim Prouty 
Date:   Mon Jul 6 15:44:09 2009 -0700

s3 onefs: Fix a few bugs from the smb_filename migration

---

Summary of changes:
 source3/modules/onefs.h |6 ++-
 source3/modules/onefs_streams.c |   10 +
 source3/modules/vfs_onefs_shadow_copy.c |   68 +--
 3 files changed, 35 insertions(+), 49 deletions(-)


Changeset truncated at 500 lines:

diff --git a/source3/modules/onefs.h b/source3/modules/onefs.h
index 88ba5a9..e0e4637 100644
--- a/source3/modules/onefs.h
+++ b/source3/modules/onefs.h
@@ -72,7 +72,8 @@ int onefs_fstat(vfs_handle_struct *handle, struct 
files_struct *fsp,
 
 int onefs_lstat(vfs_handle_struct *handle, struct smb_filename *smb_fname);
 
-int onefs_unlink(vfs_handle_struct *handle, const char *path);
+int onefs_unlink(vfs_handle_struct *handle,
+const struct smb_filename *smb_fname);
 
 NTSTATUS onefs_streaminfo(vfs_handle_struct *handle,
  struct files_struct *fsp,
@@ -81,7 +82,8 @@ NTSTATUS onefs_streaminfo(vfs_handle_struct *handle,
  unsigned int *num_streams,
  struct stream_struct **streams);
 
-int onefs_vtimes_streams(vfs_handle_struct *handle, const char *fname,
+int onefs_vtimes_streams(vfs_handle_struct *handle,
+const struct smb_filename *smb_fname,
 int flags, struct timespec times[3]);
 
 NTSTATUS onefs_brl_lock_windows(vfs_handle_struct *handle,
diff --git a/source3/modules/onefs_streams.c b/source3/modules/onefs_streams.c
index 91917ee..d33d9f3 100644
--- a/source3/modules/onefs_streams.c
+++ b/source3/modules/onefs_streams.c
@@ -463,14 +463,12 @@ int onefs_lstat(vfs_handle_struct *handle, struct 
smb_filename *smb_fname)
 }
 
 int onefs_unlink(vfs_handle_struct *handle,
- const struct smb_filename *smb_fname)
+const struct smb_filename *smb_fname)
 {
struct smb_filename *smb_fname_onefs = NULL;
int ret;
-   bool is_stream;
-   char *base = NULL;
-   char *stream = NULL;
int dir_fd, saved_errno;
+   NTSTATUS status;
 
/* Not a stream. */
if (!is_ntfs_stream_smb_fname(smb_fname)) {
@@ -520,10 +518,6 @@ int onefs_vtimes_streams(vfs_handle_struct *handle,
 
START_PROFILE(syscall_ntimes);
 
-   ret = onefs_is_stream(fname, &base, &stream, &is_stream);
-   if (ret)
-   return ret;
-
if (!is_ntfs_stream_smb_fname(smb_fname)) {
ret = vtimes(smb_fname->base_name, times, flags);
return ret;
diff --git a/source3/modules/vfs_onefs_shadow_copy.c 
b/source3/modules/vfs_onefs_shadow_copy.c
index 651e20a..112ef30 100644
--- a/source3/modules/vfs_onefs_shadow_copy.c
+++ b/source3/modules/vfs_onefs_shadow_copy.c
@@ -143,6 +143,9 @@ onefs_shadow_copy_get_shadow_copy_data(vfs_handle_struct 
*handle,
return ret;   \
} while (0)   \
 
+/*
+ * XXX: Convert osc_canonicalize_path to use talloc instead of malloc.
+ */
 #define SHADOW_NEXT_SMB_FNAME(op, args, rtype) do {  \
char *smb_base_name_tmp = NULL;   \
char *cpath = NULL;   \
@@ -161,37 +164,6 @@ onefs_shadow_copy_get_shadow_copy_data(vfs_handle_struct 
*handle,
return ret; \
} while (0) \
 
-
-/*
- * XXX: Convert osc_canonicalize_path to use talloc instead of malloc.
- */
-#define SHADOW_NEXT_SMB_FNAME_CONST(op, args, rtype) do {\
-   struct smb_filename *smb_fname_tmp  = NULL;   \
-   char *cpath = NULL;   \
-   char *snap_component = NULL;  \
-   rtype ret;\
-   if (shadow_copy_match_name(smb_fname->base_name,  \
-   &snap_component)) { \
-   cpath = osc_canonicalize_path(smb_fname->base_name, \
-   snap_component);\
-   smb_fname->base_name = cpath;   \
-   }   \
-   status = create_synthetic_smb_fname(talloc_tos(),   \
-   

[SCM] Samba Shared Repository - branch master updated - release-4-0-0alpha8-271-ge3631da

2009-07-07 Thread Andrew Bartlett
The branch, master has been updated
   via  e3631da15893207b196201f89648a28f889ecb5e (commit)
   via  6b05a9079ce38eb590f4a94b427bc69123cd6a23 (commit)
  from  dad913118344922139401ee5afaec8f3e68e05dd (commit)

http://gitweb.samba.org/?p=samba.git;a=shortlog;h=master


- Log -
commit e3631da15893207b196201f89648a28f889ecb5e
Author: Anatoliy Atanasov 
Date:   Fri Jul 3 15:24:52 2009 +0300

Test for schemaUpdateNow command

commit 6b05a9079ce38eb590f4a94b427bc69123cd6a23
Author: Anatoliy Atanasov 
Date:   Fri Jul 3 15:24:40 2009 +0300

Fix for schemaUpdateNow command

---

Summary of changes:
 source4/dsdb/samdb/ldb_modules/partition.c   |8 +-
 source4/dsdb/samdb/ldb_modules/rootdse.c |2 +-
 source4/dsdb/samdb/ldb_modules/schema_fsmo.c |2 +
 source4/dsdb/schema/schema_init.c|2 +-
 source4/dsdb/schema/schema_set.c |6 +-
 source4/lib/ldb/tests/python/ldap.py |  180 ++
 6 files changed, 140 insertions(+), 60 deletions(-)


Changeset truncated at 500 lines:

diff --git a/source4/dsdb/samdb/ldb_modules/partition.c 
b/source4/dsdb/samdb/ldb_modules/partition.c
index 9763664..563abf6 100644
--- a/source4/dsdb/samdb/ldb_modules/partition.c
+++ b/source4/dsdb/samdb/ldb_modules/partition.c
@@ -1060,7 +1060,13 @@ static int partition_extended_schema_update_now(struct 
ldb_module *module, struc
}
 
/* fire the first one */
-   return partition_call_first(ac);
+   ret =  partition_call_first(ac);
+
+   if (ret != LDB_SUCCESS){
+   return ret;
+   }
+
+   return ldb_request_done(req, ret);
 }
 
 
diff --git a/source4/dsdb/samdb/ldb_modules/rootdse.c 
b/source4/dsdb/samdb/ldb_modules/rootdse.c
index 29c4f59..7080fb6 100644
--- a/source4/dsdb/samdb/ldb_modules/rootdse.c
+++ b/source4/dsdb/samdb/ldb_modules/rootdse.c
@@ -455,7 +455,7 @@ static int rootdse_modify(struct ldb_module *module, struct 
ldb_request *req)
}

talloc_free(ext_res);
-   return ret;
+   return ldb_request_done(req, ret);
 }
 
 _PUBLIC_ const struct ldb_module_ops ldb_rootdse_module_ops = {
diff --git a/source4/dsdb/samdb/ldb_modules/schema_fsmo.c 
b/source4/dsdb/samdb/ldb_modules/schema_fsmo.c
index b1d8711..1b8f786 100644
--- a/source4/dsdb/samdb/ldb_modules/schema_fsmo.c
+++ b/source4/dsdb/samdb/ldb_modules/schema_fsmo.c
@@ -297,6 +297,8 @@ static int schema_fsmo_extended(struct ldb_module *module, 
struct ldb_request *r
return ret;
}
 
+   dsdb_make_schema_global(ldb);
+
talloc_free(mem_ctx);
return LDB_SUCCESS;
 }
diff --git a/source4/dsdb/schema/schema_init.c 
b/source4/dsdb/schema/schema_init.c
index 1084679..dfa745e 100644
--- a/source4/dsdb/schema/schema_init.c
+++ b/source4/dsdb/schema/schema_init.c
@@ -576,7 +576,7 @@ WERROR dsdb_read_prefixes_from_ldb(TALLOC_CTX *mem_ctx, 
struct ldb_context *ldb,
(*prefixes)[i].id = blob->ctr.dsdb.mappings[i].id_prefix<<16;
oid = talloc_strdup(mem_ctx, 
blob->ctr.dsdb.mappings[i].oid.oid);
(*prefixes)[i].oid = talloc_asprintf_append(oid, "."); 
-   (*prefixes)[i].oid_len = 
strlen(blob->ctr.dsdb.mappings[i].oid.oid);
+   (*prefixes)[i].oid_len = strlen((*prefixes)[i].oid);
}
 
talloc_free(blob);
diff --git a/source4/dsdb/schema/schema_set.c b/source4/dsdb/schema/schema_set.c
index 8b1188a..5ded04e 100644
--- a/source4/dsdb/schema/schema_set.c
+++ b/source4/dsdb/schema/schema_set.c
@@ -135,7 +135,7 @@ static int dsdb_schema_set_attributes(struct ldb_context 
*ldb, struct dsdb_schem

mod_msg = ldb_msg_diff(ldb, res->msgs[0], msg);
if (mod_msg->num_elements > 0) {
-   ret = ldb_modify(ldb, mod_msg);
+   ret = samdb_replace(ldb, mem_ctx, mod_msg);
}
}
 
@@ -154,7 +154,7 @@ static int dsdb_schema_set_attributes(struct ldb_context 
*ldb, struct dsdb_schem
if (ret == LDB_ERR_NO_SUCH_OBJECT) {
ret = ldb_add(ldb, msg_idx);
} else if (ret != LDB_SUCCESS) {
-   } else if (res->count != 1) {
+   } else if (res_idx->count != 1) {
ret = ldb_add(ldb, msg_idx);
} else {
ret = LDB_SUCCESS;
@@ -163,7 +163,7 @@ static int dsdb_schema_set_attributes(struct ldb_context 
*ldb, struct dsdb_schem
 
mod_msg = ldb_msg_diff(ldb, res_idx->msgs[0], msg_idx);
if (mod_msg->num_elements > 0) {
-   ret = ldb_modify(ldb, mod_msg);
+   ret = samdb_replace(ldb, mem_ctx, mod_msg);
}
}
if (ret == LDB_ERR_INSUFFICIENT_ACCESS_RIGHTS) {
diff --git a/source4/lib/ldb/tests/python/ldap.py 
b/source4/lib/ldb/tests/python/ldap.