(only_older_enctype_p): check request if the client only supports old
enctypes, before it used the database git-svn-id: svn://svn.h5l.se/heimdal/trunk/heimdal@12787 ec53bebd-3082-4978-b11e-865c3cabbd6b
This commit is contained in:
@@ -430,15 +430,18 @@ make_etype_info2_entry(ETYPE_INFO2_ENTRY *ent, Key *key)
|
|||||||
*/
|
*/
|
||||||
|
|
||||||
static int
|
static int
|
||||||
only_older_enctype_p(const hdb_entry *client)
|
only_older_enctype_p(const KDC_REQ *req)
|
||||||
{
|
{
|
||||||
int i;
|
int i;
|
||||||
|
|
||||||
for(i = 0; i < client->keys.len; i++) {
|
for(i = 0; i < req->req_body.etype.len; i++) {
|
||||||
switch (client->keys.val[i].key.keytype) {
|
switch (req->req_body.etype.val[i]) {
|
||||||
case KEYTYPE_DES:
|
case ETYPE_DES_CBC_CRC:
|
||||||
case KEYTYPE_DES3:
|
case ETYPE_DES_CBC_MD4:
|
||||||
case KEYTYPE_ARCFOUR:
|
case ETYPE_DES_CBC_MD5:
|
||||||
|
case ETYPE_DES3_CBC_SHA1:
|
||||||
|
case ETYPE_ARCFOUR_HMAC_MD5:
|
||||||
|
case ETYPE_ARCFOUR_HMAC_MD5_56:
|
||||||
break;
|
break;
|
||||||
default:
|
default:
|
||||||
return 0;
|
return 0;
|
||||||
@@ -821,7 +824,7 @@ as_rep(KDC_REQ *req,
|
|||||||
pa->padata_value.data = NULL;
|
pa->padata_value.data = NULL;
|
||||||
|
|
||||||
/* XXX check ret */
|
/* XXX check ret */
|
||||||
if (only_older_enctype_p(client))
|
if (only_older_enctype_p(req))
|
||||||
ret = get_pa_etype_info(&method_data, client,
|
ret = get_pa_etype_info(&method_data, client,
|
||||||
b->etype.val, b->etype.len);
|
b->etype.val, b->etype.len);
|
||||||
/* XXX check ret */
|
/* XXX check ret */
|
||||||
|
Reference in New Issue
Block a user