diff options
| author | Ken Raeburn <raeburn@mit.edu> | 2008-10-06 20:25:45 +0000 |
|---|---|---|
| committer | Ken Raeburn <raeburn@mit.edu> | 2008-10-06 20:25:45 +0000 |
| commit | a7735754e826b831e8249cfb31718699d164ceed (patch) | |
| tree | 35e56827db4f44c3c55c72871bef75b2c2b70ed5 /src/plugins/kdb | |
| parent | 3fa2e4f2a79729357db7b3d91229b8da4dd4ac4f (diff) | |
| download | krb5-a7735754e826b831e8249cfb31718699d164ceed.tar.gz krb5-a7735754e826b831e8249cfb31718699d164ceed.tar.xz krb5-a7735754e826b831e8249cfb31718699d164ceed.zip | |
Change LDAP key-sequence encoder to use a single data structure
git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@20829 dc483132-0cff-0310-8789-dd5450dbe970
Diffstat (limited to 'src/plugins/kdb')
| -rw-r--r-- | src/plugins/kdb/ldap/libkdb_ldap/ldap_principal2.c | 19 |
1 files changed, 15 insertions, 4 deletions
diff --git a/src/plugins/kdb/ldap/libkdb_ldap/ldap_principal2.c b/src/plugins/kdb/ldap/libkdb_ldap/ldap_principal2.c index 6e7ba33f1..12f0dd360 100644 --- a/src/plugins/kdb/ldap/libkdb_ldap/ldap_principal2.c +++ b/src/plugins/kdb/ldap/libkdb_ldap/ldap_principal2.c @@ -325,6 +325,7 @@ asn1_encode_sequence_of_keys (krb5_key_data *key_data, krb5_int16 n_key_data, krb5_int32 mkvno, krb5_data **code) { krb5_error_code err; + ldap_seqof_key_data val; /* * This should be pushed back into other library initialization @@ -334,8 +335,11 @@ asn1_encode_sequence_of_keys (krb5_key_data *key_data, krb5_int16 n_key_data, if (err) return err; - return accessor.asn1_ldap_encode_sequence_of_keys(key_data, n_key_data, - mkvno, code); + val.key_data = key_data; + val.n_key_data = n_key_data; + val.mkvno = mkvno; + + return accessor.asn1_ldap_encode_sequence_of_keys(&val, code); } static krb5_error_code @@ -343,6 +347,7 @@ asn1_decode_sequence_of_keys (krb5_data *in, krb5_key_data **out, krb5_int16 *n_key_data, int *mkvno) { krb5_error_code err; + ldap_seqof_key_data *p; /* * This should be pushed back into other library initialization @@ -352,8 +357,14 @@ asn1_decode_sequence_of_keys (krb5_data *in, krb5_key_data **out, if (err) return err; - return accessor.asn1_ldap_decode_sequence_of_keys(in, out, n_key_data, - mkvno); + err = accessor.asn1_ldap_decode_sequence_of_keys(in, &p); + if (err) + return err; + *out = p->key_data; + *n_key_data = p->n_key_data; + *mkvno = p->mkvno; + free(p); + return 0; } |
