/*
Unix SMB/CIFS implementation.
- async seqnums
+
+ async seqnums, update the seqnums in winbindd_cache.c
+
Copyright (C) Volker Lendecke 2009
This program is free software; you can redistribute it and/or modify
for (i=0; i<state->num_domains; i++) {
if (subreq == state->subreqs[i]) {
- state->subreqs[i] = NULL;
- state->stati[i] = status;
- if (NT_STATUS_IS_OK(status)) {
- state->seqnums[i] = seqnum;
- state->domains[i]->sequence_number = seqnum;
- }
break;
}
}
+ if (i < state->num_domains) {
+ /* found one */
+
+ state->subreqs[i] = NULL;
+ state->stati[i] = status;
+ if (NT_STATUS_IS_OK(status)) {
+ state->seqnums[i] = seqnum;
+
+ /*
+ * This first assignment might be removed
+ * later
+ */
+ state->domains[i]->sequence_number = seqnum;
+
+ if (!wcache_store_seqnum(state->domains[i]->name,
+ state->seqnums[i],
+ time(NULL))) {
+ DEBUG(1, ("wcache_store_seqnum failed for "
+ "domain %s\n",
+ state->domains[i]->name));
+ }
+ }
+ }
+
TALLOC_FREE(subreq);
state->num_received += 1;