include last-req's of type 6 and 7, if applicable
git-svn-id: svn://svn.h5l.se/heimdal/trunk/heimdal@2724 ec53bebd-3082-4978-b11e-865c3cabbd6b
This commit is contained in:
@@ -404,16 +404,25 @@ as_rep(KDC_REQ *req,
|
|||||||
*
|
*
|
||||||
* To fix this, always send at least one no-op last_req
|
* To fix this, always send at least one no-op last_req
|
||||||
*
|
*
|
||||||
* If there's a pw_end we will use that, otherwise just a dummy lr.
|
* If there's a pw_end or valid_end we will use that,
|
||||||
|
* otherwise just a dummy lr.
|
||||||
*/
|
*/
|
||||||
ek.last_req.len = 1;
|
ek.last_req.val = malloc(2 * sizeof(*ek.last_req.val));
|
||||||
ALLOC(ek.last_req.val);
|
ek.last_req.len = 0;
|
||||||
if (client->pw_end) {
|
if (client->pw_end) {
|
||||||
ek.last_req.val->lr_type = 6;
|
ek.last_req.val[ek.last_req.len].lr_type = 6;
|
||||||
ek.last_req.val->lr_value = *client->pw_end;
|
ek.last_req.val[ek.last_req.len].lr_value = *client->pw_end;
|
||||||
} else {
|
++ek.last_req.len;
|
||||||
ek.last_req.val->lr_type = 0;
|
}
|
||||||
ek.last_req.val->lr_value = 0;
|
if (client->valid_end) {
|
||||||
|
ek.last_req.val[ek.last_req.len].lr_type = 7;
|
||||||
|
ek.last_req.val[ek.last_req.len].lr_value = *client->valid_end;
|
||||||
|
++ek.last_req.len;
|
||||||
|
}
|
||||||
|
if (ek.last_req.len == 0) {
|
||||||
|
ek.last_req.val[ek.last_req.len].lr_type = 0;
|
||||||
|
ek.last_req.val[ek.last_req.len].lr_value = 0;
|
||||||
|
++ek.last_req.len;
|
||||||
}
|
}
|
||||||
ek.nonce = b->nonce;
|
ek.nonce = b->nonce;
|
||||||
if (client->valid_end || client->pw_end) {
|
if (client->valid_end || client->pw_end) {
|
||||||
|
Reference in New Issue
Block a user