diff options
author | Ralph Boehme <slow@samba.org> | 2015-10-12 12:28:04 +0200 |
---|---|---|
committer | Karolin Seeger <kseeger@samba.org> | 2015-10-20 08:48:17 +0200 |
commit | a83021fe900dbda5058f9a5f2f8c3dd8cd9f04db (patch) | |
tree | 72f504e01b927fa9fc45ad48b7948c76217ffce1 | |
parent | 46ace5b6275d2cb3aabc9f7894e6fe72ceeae4f0 (diff) | |
download | samba-a83021fe900dbda5058f9a5f2f8c3dd8cd9f04db.tar.gz |
s3:locking: initialize lease pointer in share_mode_traverse_fn()
Initialize lease pointer to point to the share_mode_data leases array
entry at index lease_idx.
This fixes a bug in smbstatus where the lease info is not printed.
Bug: https://bugzilla.samba.org/show_bug.cgi?id=11549
Signed-off-by: Ralph Boehme <slow@samba.org>
Reviewed-by: Jeremy Allison <jra@samba.org>
Autobuild-User(master): Jeremy Allison <jra@samba.org>
Autobuild-Date(master): Tue Oct 13 01:14:09 CEST 2015 on sn-devel-104
(cherry picked from commit 0ef9c67b56a0b493ed06f9a64ac2bc2233041aee)
-rw-r--r-- | source3/locking/share_mode_lock.c | 10 |
1 files changed, 7 insertions, 3 deletions
diff --git a/source3/locking/share_mode_lock.c b/source3/locking/share_mode_lock.c index 5eedcc5fbe4..c05d65d9ce7 100644 --- a/source3/locking/share_mode_lock.c +++ b/source3/locking/share_mode_lock.c @@ -687,13 +687,17 @@ static int share_mode_traverse_fn(struct db_record *rec, void *_state) DEBUG(1, ("ndr_pull_share_mode_lock failed\n")); return 0; } + + for (i=0; i<d->num_share_modes; i++) { + struct share_mode_entry *entry = &d->share_modes[i]; + entry->stale = false; /* [skip] in idl */ + entry->lease = &d->leases[entry->lease_idx]; + } + if (DEBUGLEVEL > 10) { DEBUG(11, ("parse_share_modes:\n")); NDR_PRINT_DEBUG(share_mode_data, d); } - for (i=0; i<d->num_share_modes; i++) { - d->share_modes[i].stale = false; /* [skip] in idl */ - } ret = state->fn(fid, d, state->private_data); |