update to the asn1 structures used in -25's

git-svn-id: svn://svn.h5l.se/heimdal/trunk/heimdal@14625 ec53bebd-3082-4978-b11e-865c3cabbd6b
This commit is contained in:
Love Hörnquist Åstrand
2005-03-08 22:17:46 +00:00
parent 3c06f39e98
commit 2b0b4dc044
2 changed files with 63 additions and 62 deletions

View File

@@ -416,7 +416,7 @@ build_auth_pack(krb5_context context,
unsigned nonce,
DH *dh,
const KDC_REQ_BODY *body,
AuthPack *a)
AuthPack_19 *a)
{
size_t buf_size, len;
krb5_cksumtype cksum;
@@ -590,7 +590,7 @@ pk_mk_padata(krb5_context context,
{
krb5_error_code ret;
const heim_oid *oid;
PA_PK_AS_REQ req;
PA_PK_AS_REQ_19 req;
size_t size;
krb5_data buf, sd_buf;
int pa_type;
@@ -622,20 +622,20 @@ pk_mk_padata(krb5_context context,
oid = &pkcs7_data_oid;
} else {
AuthPack ap;
AuthPack_19 ap;
memset(&ap, 0, sizeof(ap));
ret = build_auth_pack(context, nonce, ctx->dh, req_body, &ap);
if (ret) {
free_AuthPack(&ap);
free_AuthPack_19(&ap);
goto out;
}
ASN1_MALLOC_ENCODE(AuthPack, buf.data, buf.length, &ap, &size, ret);
free_AuthPack(&ap);
ASN1_MALLOC_ENCODE(AuthPack_19, buf.data, buf.length, &ap, &size, ret);
free_AuthPack_19(&ap);
if (ret) {
krb5_set_error_string(context, "AuthPack: %d", ret);
krb5_set_error_string(context, "AuthPack_19: %d", ret);
goto out;
}
if (buf.length != size)
@@ -686,7 +686,7 @@ pk_mk_padata(krb5_context context,
free_PA_PK_AS_REQ_Win2k(&winreq);
} else {
pa_type = KRB5_PADATA_PK_AS_REQ;
ASN1_MALLOC_ENCODE(PA_PK_AS_REQ, buf.data, buf.length,
ASN1_MALLOC_ENCODE(PA_PK_AS_REQ_19, buf.data, buf.length,
&req, &size, ret);
}
if (ret) {
@@ -1174,36 +1174,36 @@ get_reply_key(krb5_context context,
unsigned nonce,
krb5_keyblock **key)
{
ReplyKeyPack key_pack;
ReplyKeyPack_19 key_pack;
krb5_error_code ret;
size_t size;
ret = decode_ReplyKeyPack(content->data,
content->length,
&key_pack,
&size);
ret = decode_ReplyKeyPack_19(content->data,
content->length,
&key_pack,
&size);
if (ret) {
krb5_set_error_string(context, "PKINIT decoding reply key failed");
free_ReplyKeyPack(&key_pack);
free_ReplyKeyPack_19(&key_pack);
return ret;
}
if (key_pack.nonce != nonce) {
krb5_set_error_string(context, "PKINIT enckey nonce is wrong");
free_ReplyKeyPack(&key_pack);
free_ReplyKeyPack_19(&key_pack);
return KRB5KRB_AP_ERR_MODIFIED;
}
*key = malloc (sizeof (**key));
if (*key == NULL) {
krb5_set_error_string(context, "PKINIT failed allocating reply key");
free_ReplyKeyPack(&key_pack);
free_ReplyKeyPack_19(&key_pack);
krb5_set_error_string(context, "malloc: out of memory");
return ENOMEM;
}
ret = copy_EncryptionKey(&key_pack.replyKey, *key);
free_ReplyKeyPack(&key_pack);
free_ReplyKeyPack_19(&key_pack);
if (ret) {
krb5_set_error_string(context, "PKINIT failed copying reply key");
free(*key);
@@ -1579,7 +1579,7 @@ pk_rd_pa_reply_dh(krb5_context context,
static krb5_error_code
_krb5_pk_convert_rep(krb5_context context,
PA_PK_AS_REP_Win2k *r_win2k,
PA_PK_AS_REP *r)
PA_PK_AS_REP_19 *r)
{
krb5_error_code ret;
ContentInfo ci;
@@ -1587,7 +1587,7 @@ _krb5_pk_convert_rep(krb5_context context,
switch (r_win2k->element) {
case choice_PA_PK_AS_REP_Win2k_dhSignedData:
r->element = choice_PA_PK_AS_REP_dhSignedData;
r->element = choice_PA_PK_AS_REP_19_dhSignedData;
ret = decode_ContentInfo(r_win2k->u.dhSignedData.data,
r_win2k->u.dhSignedData.length,
@@ -1603,7 +1603,7 @@ _krb5_pk_convert_rep(krb5_context context,
break;
case choice_PA_PK_AS_REP_Win2k_encKeyPack:
r->element = choice_PA_PK_AS_REP_encKeyPack;
r->element = choice_PA_PK_AS_REP_19_encKeyPack;
ret = decode_ContentInfo(r_win2k->u.encKeyPack.data,
r_win2k->u.encKeyPack.length,
@@ -1635,20 +1635,20 @@ _krb5_pk_rd_pa_reply(krb5_context context,
{
krb5_pk_init_ctx ctx = c;
krb5_error_code ret;
PA_PK_AS_REP rep;
PA_PK_AS_REP_19 rep;
size_t size;
int win2k_compat = 0;
memset(&rep, 0, sizeof(rep));
ret = decode_PA_PK_AS_REP(pa->padata_value.data,
pa->padata_value.length,
&rep,
&size);
ret = decode_PA_PK_AS_REP_19(pa->padata_value.data,
pa->padata_value.length,
&rep,
&size);
if (ret != 0) {
PA_PK_AS_REP_Win2k w2krep;
free_PA_PK_AS_REP(&rep);
free_PA_PK_AS_REP_19(&rep);
memset(&rep, 0, sizeof(rep));
ret = decode_PA_PK_AS_REP_Win2k(pa->padata_value.data,
@@ -1669,11 +1669,11 @@ _krb5_pk_rd_pa_reply(krb5_context context,
}
switch(rep.element) {
case choice_PA_PK_AS_REP_dhSignedData:
case choice_PA_PK_AS_REP_19_dhSignedData:
ret = pk_rd_pa_reply_dh(context, &rep.u.dhSignedData, ctx,
etype, nonce, pa, key);
break;
case choice_PA_PK_AS_REP_encKeyPack:
case choice_PA_PK_AS_REP_19_encKeyPack:
ret = pk_rd_pa_reply_enckey(context, win2k_compat,
&rep.u.encKeyPack, ctx,
etype, nonce, pa, key);
@@ -1684,7 +1684,7 @@ _krb5_pk_rd_pa_reply(krb5_context context,
break;
}
free_PA_PK_AS_REP(&rep);
free_PA_PK_AS_REP_19(&rep);
return ret;
}