struct state_entry_t *next;
int tries;
- bool proxied;
TALLOC_CTX *ctx;
VALUE_PAIR *vps;
entry->state[8] = entry->state[2] ^ (((uint32_t) HEXIFY(RADIUSD_VERSION)) & 0xff);
entry->state[10] = entry->state[2] ^ ((((uint32_t) HEXIFY(RADIUSD_VERSION)) >> 8) & 0xff);
entry->state[12] = entry->state[2] ^ ((((uint32_t) HEXIFY(RADIUSD_VERSION)) >> 16) & 0xff);
-
- fr_assert(!entry->proxied);
}
/*
x = fr_rand();
memcpy(entry->state + (i * 4), &x, sizeof(x));
}
- } else {
- /*
- * There is a pre-existing State. It may be from
- * another server, in which case we don't want to
- * mangle external State
- */
- entry->proxied = (request->proxy && (request->proxy->dst_port != 0));
}
/*
/* Make unique for different virtual servers handling same request
*/
- if (request->server && !entry->proxied) {
+ if (request->server) {
/*
* Make unique for different virtual servers handling same request
*/
if (vp) return true;
/*
- * Create a State and add it to the packet.
+ *
*/
for (i = 0; i < sizeof(buffer) / sizeof(x); i++) {
x = fr_rand();
PTHREAD_MUTEX_UNLOCK(&state->mutex);
fr_state_cleanup(cleanup_list);
-#ifdef WITH_VERIFY_PTR
- if (request->proxy_reply && (request->proxy_reply->dst_port != 0)) {
- VALUE_PAIR *vp, *proxy;
-
- vp = fr_pair_find_by_num(request->reply->vps, PW_STATE, 0, TAG_ANY);
- fr_assert(vp != NULL);
-
- proxy = fr_pair_find_by_num(request->proxy_reply->vps, PW_STATE, 0, TAG_ANY);
-
- /*
- * We can't delete state, and we can't change it when proxying.
- */
- if (proxy && vp) {
- fr_assert(vp->vp_length == proxy->vp_length);
- fr_assert(memcmp(vp->vp_octets, proxy->vp_octets, vp->vp_length) == 0);
- }
- }
-#endif
-
VERIFY_REQUEST(request);
return true;
}