status = ndr_map_error2ntstatus(ndr_err);
return status;
}
+
+ DBG_DEBUG("Replay Cache: store create_guid [%s]\n",
+ GUID_buf_string(&op->global->create_guid, &buf));
+ if (CHECK_DEBUGLVL(DBGLVL_DEBUG)) {
+ NDR_PRINT_DEBUG(smbXsrv_open_replay_cache, &rc);
+ }
val = make_tdb_data(blob.data, blob.length);
status = dbwrap_store_bystring(db, guid_string, val, TDB_REPLACE);
struct GUID_txt_buf buf;
NTSTATUS status;
+ DBG_DEBUG("Replay Cache: purge create_guid [%s]\n",
+ GUID_buf_string(create_guid, &buf));
+
if (client->open_table == NULL) {
return NT_STATUS_OK;
}
return NT_STATUS_OK;
}
+ DBG_DEBUG("Replay Cache: clear create_guid [%s]\n",
+ GUID_buf_string(create_guid, &buf));
+
status = dbwrap_purge_bystring(db, GUID_buf_string(create_guid, &buf));
if (NT_STATUS_IS_OK(status)) {
if (val.dsize == 0) {
uint8_t data[SMBXSRV_OPEN_REPLAY_CACHE_FIXED_SIZE];
+ DBG_DEBUG("Fresh replay-cache record\n");
+ if (CHECK_DEBUGLVL(DBGLVL_DEBUG)) {
+ NDR_PRINT_DEBUG(smbXsrv_open_replay_cache, &rc);
+ }
+
blob = data_blob_const(data, ARRAY_SIZE(data));
ndr_err = ndr_push_struct_into_fixed_blob(&blob, &rc,
(ndr_push_flags_fn_t)ndr_push_smbXsrv_open_replay_cache);
TALLOC_FREE(frame);
return status;
}
+
+ DBG_DEBUG("Found smbXsrv_open_replay_cache record\n");
+ if (CHECK_DEBUGLVL(DBGLVL_DEBUG)) {
+ NDR_PRINT_DEBUG(smbXsrv_open_replay_cache, &rc);
+ }
+
if (rc.local_id != 0) {
+ DBG_DEBUG("Found replay-cache record with local_id\n");
if (GUID_equal(&rc.holder_req_guid, &caller_req_guid)) {
/*
* This should not happen
}
if (GUID_equal(&rc.holder_req_guid, &caller_req_guid)) {
+ DBG_DEBUG("Still the holder\n");
/*
* We're still the holder
*/