The branch, v4-0-test has been updated via a064b7c torture3: Fix bug 10687 via 4448c2e smbd: Avoid double-free in get_print_db_byname via a4622ad s3: smbd: Locking, fix off-by one calculation in brl_pending_overlap(). via 2d1dd83 smbstatus: Fix an uninitialized variable from 039297d s3:winbindd - fix bad bugfix for bug #10280 - winbind panic if AD server is down.
http://gitweb.samba.org/?p=samba.git;a=shortlog;h=v4-0-test - Log ----------------------------------------------------------------- commit a064b7c732f502a60e1db598238a82aef44817ee Author: Volker Lendecke <v...@samba.org> Date: Wed Jul 2 14:27:52 2014 +0000 torture3: Fix bug 10687 'RW2' smbtorture test fails when -N <numprocs> is set to 2 due to the invalid status check in the second client. Signed-off-by: Volker Lendecke <v...@samba.org> Autobuild-User(v4-0-test): Karolin Seeger <ksee...@samba.org> Autobuild-Date(v4-0-test): Fri Jul 11 12:02:38 CEST 2014 on sn-devel-104 commit 4448c2efb4149b94ccf0a21a6dd7bd5482f7ff18 Author: Volker Lendecke <v...@samba.org> Date: Tue Jul 8 14:30:54 2014 +0200 smbd: Avoid double-free in get_print_db_byname Signed-off-by: Volker Lendecke <v...@samba.org> Bug: https://bugzilla.samba.org/show_bug.cgi?id=10699 commit a4622adc5caeb80a91580d4c1193385cf2f33943 Author: Jeremy Allison <j...@samba.org> Date: Tue Jul 1 13:30:50 2014 -0700 s3: smbd: Locking, fix off-by one calculation in brl_pending_overlap(). Consider: lock = start=110,size=10 pend_lock = 100, size=10 Should not overlap. However, (lock->start <= pend_lock->start + pend_lock->size) 110 100 10 is true, so it returns true (overlap). lock->start <= pend_lock->start + pend_lock->size should be: lock->start < pend_lock->start + pend_lock->size https://bugzilla.samba.org/show_bug.cgi?id=10685 Signed-off-by: Jeremy Allison <j...@samba.org> commit 2d1dd83e9ec4333f6d68a471850079a8da8a90d5 Author: Volker Lendecke <v...@samba.org> Date: Sun Jun 29 08:56:03 2014 +0000 smbstatus: Fix an uninitialized variable We only print valid share mode entries, stale ones don't count. In traverse, let the callback decide about staleness. https://bugzilla.samba.org/show_bug.cgi?id=10680 Signed-off-by: Volker Lendecke <v...@samba.org> Reviewed-by: Jeremy Allison <j...@samba.org> (cherry picked from commit 9f2e90754bcb7bf5f7159d07f0bc5fe754e71bf5) ----------------------------------------------------------------------- Summary of changes: source3/locking/brlock.c | 2 +- source3/locking/share_mode_lock.c | 1 + source3/printing/printing_db.c | 4 ++-- source3/torture/torture.c | 2 +- 4 files changed, 5 insertions(+), 4 deletions(-) Changeset truncated at 500 lines: diff --git a/source3/locking/brlock.c b/source3/locking/brlock.c index 1a912c7..c73b7c2 100644 --- a/source3/locking/brlock.c +++ b/source3/locking/brlock.c @@ -229,7 +229,7 @@ static bool brl_pending_overlap(const struct lock_struct *lock, const struct loc { if ((lock->start <= pend_lock->start) && (lock->start + lock->size > pend_lock->start)) return True; - if ((lock->start >= pend_lock->start) && (lock->start <= pend_lock->start + pend_lock->size)) + if ((lock->start >= pend_lock->start) && (lock->start < pend_lock->start + pend_lock->size)) return True; return False; } diff --git a/source3/locking/share_mode_lock.c b/source3/locking/share_mode_lock.c index 6782f59..d9076db 100644 --- a/source3/locking/share_mode_lock.c +++ b/source3/locking/share_mode_lock.c @@ -487,6 +487,7 @@ static int traverse_fn(struct db_record *rec, void *_state) return 0; } for (i=0; i<d->num_share_modes; i++) { + d->share_modes[i].stale = false; /* [skip] in idl */ state->fn(&d->share_modes[i], d->servicepath, d->base_name, state->private_data); diff --git a/source3/printing/printing_db.c b/source3/printing/printing_db.c index ecb8ff6..b721317 100644 --- a/source3/printing/printing_db.c +++ b/source3/printing/printing_db.c @@ -65,9 +65,9 @@ struct tdb_print_db *get_print_db_byname(const char *printername) if (p->ref_count) continue; if (p->tdb) { - if (tdb_close(print_db_head->tdb)) { + if (tdb_close(p->tdb)) { DEBUG(0,("get_print_db: Failed to close tdb for printer %s\n", - print_db_head->printer_name )); + p->printer_name )); return NULL; } } diff --git a/source3/torture/torture.c b/source3/torture/torture.c index f8bef2d..460c860 100644 --- a/source3/torture/torture.c +++ b/source3/torture/torture.c @@ -711,7 +711,7 @@ static bool rw_torture3(struct cli_state *c, char *lockfname) { status = cli_openx(c, lockfname, O_RDONLY, DENY_NONE, &fnum); - if (!NT_STATUS_IS_OK(status)) { + if (NT_STATUS_IS_OK(status)) { break; } smb_msleep(10); -- Samba Shared Repository