Merge entries for KEYTYPE_DES and KEYTYPE_DES_AFS3.
git-svn-id: svn://svn.h5l.se/heimdal/trunk/heimdal@4347 ec53bebd-3082-4978-b11e-865c3cabbd6b
This commit is contained in:
@@ -384,25 +384,21 @@ string_to_key_internal (const unsigned char *str,
|
|||||||
unsigned char *s = NULL;
|
unsigned char *s = NULL;
|
||||||
krb5_error_code ret;
|
krb5_error_code ret;
|
||||||
|
|
||||||
switch(ktype){
|
switch(ktype & KEYTYPE_KEYTYPE_MASK){
|
||||||
case KEYTYPE_DES:{
|
case KEYTYPE_DES:{
|
||||||
des_cblock tmpkey;
|
des_cblock tmpkey;
|
||||||
s = get_str(str, str_len, salt->data, salt->length, &len);
|
if(ktype & KEYTYPE_USE_AFS3_SALT)
|
||||||
if(s == NULL)
|
AFS3_string_to_key(str, str_len, salt->data, salt->length, &tmpkey);
|
||||||
return ENOMEM;
|
else{
|
||||||
DES_string_to_key(s, len, &tmpkey);
|
s = get_str(str, str_len, salt->data, salt->length, &len);
|
||||||
|
if(s == NULL)
|
||||||
|
return ENOMEM;
|
||||||
|
DES_string_to_key(s, len, &tmpkey);
|
||||||
|
}
|
||||||
ret = krb5_data_copy(&key->keyvalue, tmpkey, sizeof(des_cblock));
|
ret = krb5_data_copy(&key->keyvalue, tmpkey, sizeof(des_cblock));
|
||||||
memset(&tmpkey, 0, sizeof(tmpkey));
|
memset(&tmpkey, 0, sizeof(tmpkey));
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
case KEYTYPE_DES_AFS3:{
|
|
||||||
des_cblock tmpkey;
|
|
||||||
AFS3_string_to_key(str, str_len, salt->data, salt->length, &tmpkey);
|
|
||||||
ret = krb5_data_copy(&key->keyvalue, tmpkey, sizeof(des_cblock));
|
|
||||||
key->keytype = KEYTYPE_DES;
|
|
||||||
memset(&tmpkey, 0, sizeof(tmpkey));
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
case KEYTYPE_DES3:{
|
case KEYTYPE_DES3:{
|
||||||
des_cblock keys[3];
|
des_cblock keys[3];
|
||||||
s = get_str(str, str_len, salt->data, salt->length, &len);
|
s = get_str(str, str_len, salt->data, salt->length, &len);
|
||||||
@@ -423,7 +419,7 @@ string_to_key_internal (const unsigned char *str,
|
|||||||
}
|
}
|
||||||
if(ret)
|
if(ret)
|
||||||
return ret;
|
return ret;
|
||||||
key->keytype = ktype;
|
key->keytype = ktype & KEYTYPE_KEYTYPE_MASK;
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user