We don't have to look at the leases.tdb record if it's our own lease.
Signed-off-by: Volker Lendecke <vl@samba.org>
Reviewed-by: Andreas Schneider <asn@samba.org>
Autobuild-User(master): Andreas Schneider <asn@cryptomilk.org>
Autobuild-Date(master): Thu May 16 07:59:52 UTC 2019 on sn-devel-184
if (e_is_lease) {
NTSTATUS status;
+ if (lease != NULL) {
+ bool our_lease = smb2_lease_equal(
+ fsp_client_guid(fsp),
+ &lease->lease_key,
+ &e->client_guid,
+ &e->lease_key);
+ if (our_lease) {
+ DBG_DEBUG("Ignoring our own lease\n");
+ continue;
+ }
+ }
+
status = leases_db_get(
&e->client_guid,
&e->lease_key,
(unsigned)i, (unsigned)e_lease_type,
(unsigned)will_overwrite));
- if (e_is_lease && lease != NULL) {
- bool ign;
-
- ign = smb2_lease_equal(fsp_client_guid(fsp),
- &lease->lease_key,
- &e->client_guid,
- &e->lease_key);
- if (ign) {
- continue;
- }
- }
-
if ((e_lease_type & ~break_to) == 0) {
if (lease_is_breaking) {
delay = true;