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:
Johan Danielsson
1998-01-22 22:31:13 +00:00
parent 49462b6592
commit 55c4e2bb6c

View File

@@ -384,25 +384,21 @@ string_to_key_internal (const unsigned char *str,
unsigned char *s = NULL;
krb5_error_code ret;
switch(ktype){
switch(ktype & KEYTYPE_KEYTYPE_MASK){
case KEYTYPE_DES:{
des_cblock tmpkey;
s = get_str(str, str_len, salt->data, salt->length, &len);
if(s == NULL)
return ENOMEM;
DES_string_to_key(s, len, &tmpkey);
if(ktype & KEYTYPE_USE_AFS3_SALT)
AFS3_string_to_key(str, str_len, salt->data, salt->length, &tmpkey);
else{
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));
memset(&tmpkey, 0, sizeof(tmpkey));
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:{
des_cblock keys[3];
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)
return ret;
key->keytype = ktype;
key->keytype = ktype & KEYTYPE_KEYTYPE_MASK;
return 0;
}