Overview
Comment: | Added support for CKO_PUBLIC_KEY objects |
---|---|
Downloads: | Tarball | ZIP archive | SQL archive |
Timelines: | family | ancestors | descendants | both | trunk |
Files: | files | file ages | folders |
SHA1: |
30d36fdd77e9842d711d21e296ba61cf |
User & Date: | rkeene on 2012-05-09 16:22:06 |
Other Links: | manifest | tags |
Context
2012-05-09
| ||
16:37 | Removed spurious variables check-in: cfd166f381 user: rkeene tags: trunk | |
16:22 | Added support for CKO_PUBLIC_KEY objects check-in: 30d36fdd77 user: rkeene tags: trunk | |
2012-04-26
| ||
01:53 | CACKey 0.6.6 check-in: db27c32333 user: rkeene tags: 0.6.6, trunk | |
Changes
Modified asn1-x509.c from [d088e178d2] to [4068b9a871].
︙ | ︙ | |||
199 200 201 202 203 204 205 206 207 208 209 210 211 212 | if (outbuf) { *outbuf = x509.serial_number.asn1rep; } return(x509.serial_number.asn1rep_len); } static ssize_t x509_to_modulus(void *x509_der_buf, size_t x509_der_buf_len, void **outbuf) { struct asn1_object null, pubkey, modulus, exponent; struct x509_object x509; int read_ret; read_ret = asn1_x509_read_object(x509_der_buf, x509_der_buf_len, &x509); | > > > > > > > > > > > > > > | 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 | if (outbuf) { *outbuf = x509.serial_number.asn1rep; } return(x509.serial_number.asn1rep_len); } static ssize_t x509_to_pubkey(void *x509_der_buf, size_t x509_der_buf_len, void **outbuf) { struct asn1_object null, pubkey, modulus, exponent; struct x509_object x509; int read_ret; read_ret = asn1_x509_read_object(x509_der_buf, x509_der_buf_len, &x509); if (read_ret != 0) { return(-1); } *outbuf = x509.pubkey.contents; return(x509.pubkey.size); } static ssize_t x509_to_modulus(void *x509_der_buf, size_t x509_der_buf_len, void **outbuf) { struct asn1_object null, pubkey, modulus, exponent; struct x509_object x509; int read_ret; read_ret = asn1_x509_read_object(x509_der_buf, x509_der_buf_len, &x509); |
︙ | ︙ |
Modified asn1-x509.h from [69520a462e] to [b2869862b9].
︙ | ︙ | |||
11 12 13 14 15 16 17 18 19 20 21 22 23 24 | #endif static ssize_t x509_to_subject(void *x509_der_buf, size_t x509_der_buf_len, void **outbuf); static ssize_t x509_to_issuer(void *x509_der_buf, size_t x509_der_buf_len, void **outbuf); static ssize_t x509_to_serial(void *x509_der_buf, size_t x509_der_buf_len, void **outbuf); static ssize_t x509_to_modulus(void *x509_der_buf, size_t x509_der_buf_len, void **outbuf); static ssize_t x509_to_exponent(void *x509_der_buf, size_t x509_der_buf_len, void **outbuf); static ssize_t x509_to_keysize(void *x509_der_buf, size_t x509_der_buf_len); | > > | 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 | #endif static ssize_t x509_to_subject(void *x509_der_buf, size_t x509_der_buf_len, void **outbuf); static ssize_t x509_to_issuer(void *x509_der_buf, size_t x509_der_buf_len, void **outbuf); static ssize_t x509_to_serial(void *x509_der_buf, size_t x509_der_buf_len, void **outbuf); static ssize_t x509_to_pubkey(void *x509_der_buf, size_t x509_der_buf_len, void **outbuf); static ssize_t x509_to_modulus(void *x509_der_buf, size_t x509_der_buf_len, void **outbuf); static ssize_t x509_to_exponent(void *x509_der_buf, size_t x509_der_buf_len, void **outbuf); static ssize_t x509_to_keysize(void *x509_der_buf, size_t x509_der_buf_len); |
︙ | ︙ |
Modified cackey.c from [6206331092] to [5510d07f5c].
︙ | ︙ | |||
2822 2823 2824 2825 2826 2827 2828 | break; case CKO_NETSCAPE_TRUST: CACKEY_DEBUG_PRINTF(" ... but not getting it because we are a Netscape trust object"); break; case CKO_PUBLIC_KEY: | | > > > > > > > | 2822 2823 2824 2825 2826 2827 2828 2829 2830 2831 2832 2833 2834 2835 2836 2837 2838 2839 2840 2841 2842 2843 | break; case CKO_NETSCAPE_TRUST: CACKEY_DEBUG_PRINTF(" ... but not getting it because we are a Netscape trust object"); break; case CKO_PUBLIC_KEY: if (certificate_len >= 0) { x509_read_ret = x509_to_pubkey(certificate, certificate_len, &pValue); if (x509_read_ret < 0) { pValue = NULL; } else { ulValueLen = x509_read_ret; } } break; case CKO_CERTIFICATE: pValue = certificate; ulValueLen = certificate_len; break; |
︙ | ︙ |