[SCM] Samba Shared Repository - branch master updated

2022-09-19 Thread Jeremy Allison
The branch, master has been updated
   via  3b6255b5b90 s3:locking: remove unused get_share_mode_lock()
   via  680c7907325 s3:smbd: make use of 
share_mode_entry_prepare_{lock_add,unlock}() in open_{file_ntcreate,directory}()
   via  12f6c129219 s3:smbd: let open_file_ntcreate() calculate info = 
FILE_WAS_* before get_share_mode_lock()
   via  1ae7e47a6b0 s3:smbd: make use of 
share_mode_entry_prepare_{lock_del,unlock}() in 
close_{remove_share_mode,directory}()
   via  d04b6e9dd0d s3:smbd: make use of 
close_share_mode_lock_{prepare,cleanup}() in close_directory()
   via  f9ea7839894 s3:smbd: split out some generic code from 
close_remove_share_mode()
   via  0f02f68f9f1 s3:smbd: avoid remove_oplock() in 
close_remove_share_mode()
   via  ac811f6f8cb s3:smbd: let close_directory() only change the user if 
needed
   via  b0082076f9f s3:smbd: remove one indentation level in 
close_directory()
   via  dab7df93211 s3:smbd: let close_directory() use the same delete_dir 
logic as close_remove_share_mode()
   via  ce868b095c0 s3:smbd: improve !delete_file logic in 
close_remove_share_mode()
   via  095da847e74 s3:smbd: let close_directory() hold the lock during 
delete_all_streams/rmdir_internals
   via  387f126d074 s3:smbd: remove static from release_file_oplock()
   via  a4dd4d5f0fd s3:smbd: maintain all SHARE_MODE_LEASE_* flags not only 
_READ
   via  26669613e2d s3:smbd: split out check_and_store_share_mode()
   via  9e619f535fa s3:smbd: also call handle_share_mode_lease for 
directories
   via  0a8619c8458 s3:smbd: prepare delay_for_oplock() for directories
   via  0bfdae92db0 s3:smbd: call set_file_oplock() after set_share_mode()
   via  4d06aa1550b s3:smbd: call grant_fsp_lease() after set_share_mode()
   via  aae504cdaa0 s3:smbd: move grant_fsp_lease()/set_file_oplock() out 
of handle_share_mode_lease()
   via  0796c5de6f3 s3:smbd: move grant_fsp_lease()/set_file_oplock() out 
of delay_for_oplocks()
   via  150308d1d0d s3:smbd: add more detailed debugging to 
delay_for_oplock()
   via  775dc007d21 s3:locking: add 
share_mode_entry_prepare_{lock,unlock}() infrastructure
   via  cba169252ea s3:locking: optimize share_mode_do_locked_vfs_denied() 
with g_lock_lock callback
   via  b971a21aa34 s3:locking: add current_share_mode_glck helper functions
   via  17e496c6f91 s3:g_lock: add callback function to g_lock_lock()
   via  37c9600ff1b s3:g_lock: add callback function to g_lock_lock_send()
   via  01c629a4098 s3:g_lock: add callback function to 
g_lock_lock_simple_fn()
   via  63291ea5c5d s3:g_lock: add callback function to g_lock_trylock()
   via  6bda68910e2 s3:g_lock: reorder the logic in g_lock_trylock()
   via  7cac6eb5d81 s3:g_lock: remove redundant code in g_lock_trylock()
   via  d19fa657d72 s3:g_lock: add g_lock_ctx->busy and assert it to false
   via  a75194d41b4 s3:g_lock: add g_lock_lock_cb_state infrastructure
   via  3a5174136d6 s3:g_lock: reorder the logic in g_lock_lock_simple_fn()
   via  3c26ee84ce8 lib/dbwrap: allow dbwrap_merge_dbufs() to update an 
existing buffer
   via  6f2ce1fd346 s3:dbwrap_watch: add 
dbwrap_watched_watch_force_alerting()
   via  3829acc4743 s3:dbwrap_watch: add 
dbwrap_watched_watch_reset_alerting() helper
   via  c1ec8310496 s3:dbwrap_watch: let 
dbwrap_watched_watch_skip_alerting() also clear the selected watcher
   via  d7f42946928 s3:locking: let _share_mode_do_locked_vfs_* use 
get/put_share_mode_lock_internal
   via  a2f6f96ac74 s3:locking: split out put_share_mode_lock_internal()
   via  977498d3eb8 s3:locking: split out get_share_mode_lock_internal()
   via  0b94695ebf8 s3:locking: remove static_share_mode_data_refcount
   via  ca9014d0378 s3:locking: move from uint8_t 
share_mode_lock_key_data[] to struct file_id
   via  0fbd125453f s3:smb2_trans2: make use of 
share_mode_do_locked_vfs_allowed() in smb_posix_unlink()
   via  b80bc6307cf s3:smbd: let update_write_time_on_close() use 
share_mode_do_locked_vfs_denied()
   via  1288989f0f5 s3:smbd: let update_write_time_on_close() use 
share_mode_{old,changed}_write_time()
   via  b9edf3c6428 s3:locking: make use of 
share_mode_do_locked_vfs_denied() in set_sticky_write_time()
   via  2474b063da9 s3:locking: make use of 
share_mode_do_locked_vfs_denied() in set_write_time()
   via  1198e8c0f6c s3:locking: make use of 
share_mode_do_locked_vfs_denied() in file_has_open_streams()
   via  42f96d29335 s3:smbd: let lease_match() use 
share_mode_do_locked_vfs_denied()
   via  c8458f237cd s3:locking: let set_delete_on_close() use 
share_mode_do_locked_vfs_denied()
   via  bb7d7656638 s3:locking: make use of new 
share_mode_set_{changed,old}_write_time() helpers
   via  432272a7c83 s3:locking: add 
share_mode_set_{changed,old}_write_time() helpers
   via  c5c7a377c3d s3:smbd: let setup_poll_open() use 
sh

[SCM] Samba Shared Repository - branch master updated

2022-09-19 Thread Jeremy Allison
The branch, master has been updated
   via  36c5f31d77a libsmb: Use find_snapshot_token() for 
clistr_is_previous_version_path()
   via  6a3da608b87 lib: Add separator argument to find_snapshot_token()
   via  bfe07fda67f lib: Move extract_snapshot_token() to util_path.c
   via  f0108015515 vfs: Simplify xattr_tdb_mkdirat()
   via  e343d24d237 streams_xattr: Avoid a talloc_strdup
   via  b7359c527da smbd: Fix a typo
   via  46f4d645967 smbd: Use PATH_MAX as symlink target buffer
   via  9d5f4563831 shadow_copy2: Don't implicitly return memory off 
talloc_tos()
   via  26bfffc6209 shadow_copy2: Avoid a few ZERO_STRUCT()s
   via  724dcb1457c source3: A few whitespace fixes
   via  f41c7ea8a27 registry3: Move registry_value_cmp() to its only user
   via  cb6d2a91d0c registry3: Remove some unused functions
   via  3b344f502d5 vfs: Simplify vfswrap_parent_pathname()
   via  e4d8dc7943b vfs: Avoid a talloc in vfswrap_parent_pathname()
   via  68d20326db8 libsmb: Use tevent_req_nterror()'s retval
  from  063976fca37 WHATSNEW: samba-tool: fewer tracebacks, more colour

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


- Log -
commit 36c5f31d77a6307ba1fe009c960419a8485525cf
Author: Volker Lendecke 
Date:   Sat Sep 17 14:02:31 2022 -0700

libsmb: Use find_snapshot_token() for clistr_is_previous_version_path()

Dedup that string parsing logic

Signed-off-by: Volker Lendecke 
Reviewed-by: Jeremy Allison 

Autobuild-User(master): Jeremy Allison 
Autobuild-Date(master): Mon Sep 19 18:21:56 UTC 2022 on sn-devel-184

commit 6a3da608b87b137fbe1712cb7ed5c1de3aae83c9
Author: Volker Lendecke 
Date:   Sat Sep 17 13:48:31 2022 -0700

lib: Add separator argument to find_snapshot_token()

We'll use the logic for \ based strings next

Signed-off-by: Volker Lendecke 
Reviewed-by: Jeremy Allison 

commit bfe07fda67f1dac932f57c984b0cdac1df8bc11c
Author: Volker Lendecke 
Date:   Sat Sep 17 10:13:27 2022 -0700

lib: Move extract_snapshot_token() to util_path.c

Make it available to replace clistr_is_previous_version_path() in
libsmb/

Signed-off-by: Volker Lendecke 
Reviewed-by: Jeremy Allison 

commit f0108015515da97fe31eb1b896a9fc36e5052b49
Author: Volker Lendecke 
Date:   Fri Sep 16 20:29:30 2022 -0700

vfs: Simplify xattr_tdb_mkdirat()

We have the dirfsp and the relative name. And with fstatat we don't
need the full pathname anymore.

Signed-off-by: Volker Lendecke 
Reviewed-by: Jeremy Allison 

commit e343d24d2376601afbaaaf010f0cdd8861a33bd1
Author: Volker Lendecke 
Date:   Fri Sep 16 09:54:05 2022 -0700

streams_xattr: Avoid a talloc_strdup

We can print a short string with %.*s, no talloc_strdup()
and *stype='\0' required.

Signed-off-by: Volker Lendecke 
Reviewed-by: Jeremy Allison 

commit b7359c527da297861ca24d59bd7e2a91b8d72e85
Author: Volker Lendecke 
Date:   Wed Sep 7 11:32:26 2022 +0200

smbd: Fix a typo

Signed-off-by: Volker Lendecke 
Reviewed-by: Jeremy Allison 

commit 46f4d64596729bf665c92fd8ca3fe57e780c1018
Author: Volker Lendecke 
Date:   Wed Sep 7 10:39:26 2022 +0200

smbd: Use PATH_MAX as symlink target buffer

We use that instead of the arbitrary 4k in open.c as well

Signed-off-by: Volker Lendecke 
Reviewed-by: Jeremy Allison 

commit 9d5f4563831c50fd7cc68594168d5944af1b53bc
Author: Volker Lendecke 
Date:   Wed Sep 14 17:16:46 2022 -0700

shadow_copy2: Don't implicitly return memory off talloc_tos()

Signed-off-by: Volker Lendecke 
Reviewed-by: Jeremy Allison 

commit 26bfffc6209c413bed36c7684ad10c3824933961
Author: Volker Lendecke 
Date:   Fri Sep 9 05:55:46 2022 +0200

shadow_copy2: Avoid a few ZERO_STRUCT()s

Give the compiler more hints what's going on

Signed-off-by: Volker Lendecke 
Reviewed-by: Jeremy Allison 

commit 724dcb1457c4c006214887594a95abe6eb136949
Author: Volker Lendecke 
Date:   Mon Sep 12 10:20:38 2022 -0700

source3: A few whitespace fixes

review with git sh -w

Signed-off-by: Volker Lendecke 
Reviewed-by: Jeremy Allison 

commit f41c7ea8a27fa49e3d5d5446ced5123aedd58d0e
Author: Volker Lendecke 
Date:   Mon Sep 12 10:17:09 2022 -0700

registry3: Move registry_value_cmp() to its only user

Signed-off-by: Volker Lendecke 
Reviewed-by: Jeremy Allison 

commit cb6d2a91d0c265dffae74b01c1494a284df9ae1d
Author: Volker Lendecke 
Date:   Mon Sep 12 10:13:46 2022 -0700

registry3: Remove some unused functions

Signed-off-by: Volker Lendecke 
Reviewed-by: Jeremy Allison 

commit 3b344f502d595fb43e15c1677a67b75fa8f61f68
Author: Volker Lendecke 
Date:   Fri Sep 9 13:59:28 2022 +0200

vfs: Simplify vfswrap_parent_pathname()

We don't really need a talloc_stackframe() here

Sig

[SCM] Samba Shared Repository - branch master updated

2022-09-19 Thread Andrew Bartlett
The branch, master has been updated
   via  063976fca37 WHATSNEW: samba-tool: fewer tracebacks, more colour
   via  dad0c9a52eb docs/man/samba-tool explain --color
   via  98c7af03945 py/dbcheck: improve 'please --fix' message
   via  10bcf2bb08e dbcheck: don't recommend --fix for errors we can't fix
   via  d71258b4550 dbcheck: do not crash on empty DN
   via  2b039eb8c52 samba-tool dbcheck: use colour if wanted
   via  318eb65cb8d py/dbchecker: dbcheck prints bits of colour if asked
  from  6e5d79ff408 shadow_copy2: Remove an intermediate if-statement

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


- Log -
commit 063976fca375be367fa6b471389a3d7258b73460
Author: Douglas Bagnall 
Date:   Thu Sep 15 16:48:31 2022 +1200

WHATSNEW: samba-tool: fewer tracebacks, more colour

Signed-off-by: Douglas Bagnall 
Reviewed-by: Andrew Bartlett 

Autobuild-User(master): Andrew Bartlett 
Autobuild-Date(master): Mon Sep 19 07:14:31 UTC 2022 on sn-devel-184

commit dad0c9a52eb142ea105231ab1e8df75ff00da210
Author: Douglas Bagnall 
Date:   Thu Sep 15 12:41:13 2022 +1200

docs/man/samba-tool explain --color

Signed-off-by: Douglas Bagnall 
Reviewed-by: Andrew Bartlett 

commit 98c7af03945e9af7fa032dc2d8682838b0b2d5fc
Author: Douglas Bagnall 
Date:   Sat Sep 17 18:18:25 2022 +1200

py/dbcheck: improve 'please --fix' message

The dbcheck module is used in places other than samba-tool (backup,
provision) where the old 'use --fix' message made no sense. Also,
now that we're not necessarily claiming to fix all errors, we say
how many we think we can.

Signed-off-by: Douglas Bagnall 
Reviewed-by: Andrew Bartlett 

commit 10bcf2bb08ee742023325bcbb3005d6a9e8295b6
Author: Douglas Bagnall 
Date:   Fri Sep 16 16:26:41 2022 +1200

dbcheck: don't recommend --fix for errors we can't fix

and/or won't fix.

I think there are others that should be here.

Signed-off-by: Douglas Bagnall 
Reviewed-by: Andrew Bartlett 

commit d71258b45502a5552cf3540c854b925be3194b8c
Author: Douglas Bagnall 
Date:   Thu Sep 15 11:20:25 2022 +1200

dbcheck: do not crash on empty DN

we had

$ bin/samba-tool dbcheck -H st/rpc_proxy/private/sam.ldb
Checking 202 objects
ERROR(): uncaught exception - unable to parse dn string
  File "/home/douglasb/src/samba/bin/python/samba/netcmd/__init__.py", line 
230, in _run
return self.run(*args, **kwargs)
  File "/home/douglasb/src/samba/bin/python/samba/netcmd/dbcheck.py", line 
173, in run
error_count = chk.check_database(DN=DN, scope=search_scope,
  File "/home/douglasb/src/samba/bin/python/samba/dbchecker.py", line 255, 
in check_database
error_count += self.check_object(object.dn, requested_attrs=attrs)
  File "/home/douglasb/src/samba/bin/python/samba/dbchecker.py", line 2616, 
in check_object
expected_dn = ldb.Dn(self.samdb, "RDN=RDN,%s" % (parent_dn))

Now we have:

$ bin/samba-tool dbcheck -H st/rpc_proxy/private/sam.ldb
Checking 202 objects
ERROR: could not handle parent DN '': skipping RDN checks
Please use --fix to fix these errors
Checked 202 objects (1 errors)

which is still not really right, since --fix won't help.

(same with st/s4member/private/sam.ldb).

Signed-off-by: Douglas Bagnall 
Reviewed-by: Andrew Bartlett 

commit 2b039eb8c52a491c3d7b5bcae952e826b3ac1b21
Author: Douglas Bagnall 
Date:   Thu Sep 15 10:17:16 2022 +1200

samba-tool dbcheck: use colour if wanted

Signed-off-by: Douglas Bagnall 
Reviewed-by: Andrew Bartlett 

commit 318eb65cb8d777651861266818c646246f82e1a1
Author: Douglas Bagnall 
Date:   Thu Sep 15 11:13:30 2022 +1200

py/dbchecker: dbcheck prints bits of colour if asked

Prefixes like ERROR, WARNING, and INFO are given interpretive colours.

This won't change anything until samba-tool decides to ask for colour,
which, who knows, might even be in the next commit.

Signed-off-by: Douglas Bagnall 
Reviewed-by: Andrew Bartlett 

---

Summary of changes:
 WHATSNEW.txt   | 60 ++
 docs-xml/manpages/samba-tool.8.xml | 23 ++
 python/samba/dbchecker.py  | 86 ++
 python/samba/netcmd/dbcheck.py |  9 +++-
 4 files changed, 151 insertions(+), 27 deletions(-)


Changeset truncated at 500 lines:

diff --git a/WHATSNEW.txt b/WHATSNEW.txt
index c9cd84faa26..94ced206dbb 100644
--- a/WHATSNEW.txt
+++ b/WHATSNEW.txt
@@ -16,6 +16,66 @@ UPGRADING
 NEW FEATURES/CHANGES
 
 
+More succinct samba-tool error messages
+---
+
+Historically samba-tool has reported user error or misconfiguration by