]> git.ipfire.org Git - thirdparty/samba.git/commitdiff
smbd: Fix claiming version
authorVolker Lendecke <vl@samba.org>
Fri, 17 Jan 2020 15:00:18 +0000 (16:00 +0100)
committerJeremy Allison <jra@samba.org>
Sun, 19 Jan 2020 19:58:01 +0000 (19:58 +0000)
We now have to do an explicit DOWNGRADE when we want to change from
G_LOCK_WRITE to G_LOCK_READ.

Signed-off-by: Volker Lendecke <vl@samba.org>
Reviewed-by: Jeremy Allison <jra@samba.org>
Autobuild-User(master): Jeremy Allison <jra@samba.org>
Autobuild-Date(master): Sun Jan 19 19:58:01 UTC 2020 on sn-devel-184

source3/smbd/server.c

index cedd2b312a332c1d64e8e09dc2f1f6692b02ee15..10ae5a42dac92629cff88ee2dd06fe81ed81aab8 100644 (file)
@@ -1508,7 +1508,7 @@ static NTSTATUS smbd_claim_version(struct messaging_context *msg,
                return status;
        }
 
-       status = g_lock_lock(ctx, string_term_tdb_data(name), G_LOCK_READ,
+       status = g_lock_lock(ctx, string_term_tdb_data(name), G_LOCK_DOWNGRADE,
                             (struct timeval) { .tv_sec = 60 });
        if (!NT_STATUS_IS_OK(status)) {
                DBG_WARNING("g_lock_lock(G_LOCK_READ) failed: %s\n",