OpenSSL CVS Repository
http://cvs.openssl.org/
____________________________________________________________
________________
Server: cvs.openssl.org Name: Dr.
Stephen Henson
Root: /v/openssl/cvs Email: steve openssl.org
Module: openssl Date:
13-Mar-2008 15:26:05
Branch: OpenSSL-fips-0_9_8-stable Handle:
2008031314260400
Modified files: (Branch:
OpenSSL-fips-0_9_8-stable)
openssl/crypto/pem pem_all.c
Log:
Use correct EC string when writing private keys in FIPS
mode.
Summary:
Revision Changes Path
1.26.2.1.2.2+21 -4 openssl/crypto/pem/pem_all.c
____________________________________________________________
________________
patch -p0 <<' .'
Index: openssl/crypto/pem/pem_all.c
============================================================
================
$ cvs diff -u -r1.26.2.1.2.1 -r1.26.2.1.2.2 pem_all.c
--- openssl/crypto/pem/pem_all.c 22 Mar 2007 00:38:25
-0000 1.26.2.1.2.1
+++ openssl/crypto/pem/pem_all.c 13 Mar 2008 14:26:04
-0000 1.26.2.1.2.2
 -427,6 +427,25 
#ifdef OPENSSL_FIPS
+static const char *pkey_str(EVP_PKEY *x)
+ {
+ switch (x->type)
+ {
+ case EVP_PKEY_RSA:
+ return PEM_STRING_RSA;
+
+ case EVP_PKEY_DSA:
+ return PEM_STRING_DSA;
+
+ case EVP_PKEY_EC:
+ return PEM_STRING_ECPRIVATEKEY;
+
+ default:
+ return NULL;
+ }
+ }
+
+
int PEM_write_bio_PrivateKey(BIO *bp, EVP_PKEY *x, const
EVP_CIPHER *enc,
unsigned
char *kstr, int klen,
pem_password_cb *cb, void *u)
 -436,8 +455,7 
(char *)kstr, klen, cb, u);
else
return PEM_ASN1_write_bio((i2d_of_void
*)i2d_PrivateKey,
- (((x)->type ==
EVP_PKEY_DSA)?PEM_STRING_DSA:PEM_STRING_RSA),
- bp,(char
*)x,enc,kstr,klen,cb,u);
+ pkey_str(x), bp,(char *)x,enc,kstr,klen,cb,u);
}
#ifndef OPENSSL_NO_FP_API
 -450,8 +468,7 
(char *)kstr, klen, cb, u);
else
return PEM_ASN1_write((i2d_of_void
*)i2d_PrivateKey,
- (((x)->type ==
EVP_PKEY_DSA)?PEM_STRING_DSA:PEM_STRING_RSA),
- fp,(char
*)x,enc,kstr,klen,cb,u);
+ pkey_str(x), fp,(char *)x,enc,kstr,klen,cb,u);
}
#endif
 .
____________________________________________________________
__________
OpenSSL Project http://www.openssl.org
CVS Repository Commit List
openssl-cvs openssl.org
Automated List Manager
majordomo openssl.org
|