OSDN Git Service

Update OpenSSL to 1.0.2a.
[ffftp/ffftp.git] / contrib / openssl / include / openssl / pem.h
index b109609..2967c7b 100644 (file)
  */\r
 \r
 #ifndef HEADER_PEM_H\r
-#define HEADER_PEM_H\r
-\r
-#include <openssl/e_os2.h>\r
-#ifndef OPENSSL_NO_BIO\r
-#include <openssl/bio.h>\r
-#endif\r
-#ifndef OPENSSL_NO_STACK\r
-#include <openssl/stack.h>\r
-#endif\r
-#include <openssl/evp.h>\r
-#include <openssl/x509.h>\r
-#include <openssl/pem2.h>\r
+# define HEADER_PEM_H\r
+\r
+# include <openssl/e_os2.h>\r
+# ifndef OPENSSL_NO_BIO\r
+#  include <openssl/bio.h>\r
+# endif\r
+# ifndef OPENSSL_NO_STACK\r
+#  include <openssl/stack.h>\r
+# endif\r
+# include <openssl/evp.h>\r
+# include <openssl/x509.h>\r
+# include <openssl/pem2.h>\r
 \r
 #ifdef  __cplusplus\r
 extern "C" {\r
 #endif\r
 \r
-#define PEM_BUFSIZE            1024\r
-\r
-#define PEM_OBJ_UNDEF          0\r
-#define PEM_OBJ_X509           1\r
-#define PEM_OBJ_X509_REQ       2\r
-#define PEM_OBJ_CRL            3\r
-#define PEM_OBJ_SSL_SESSION    4\r
-#define PEM_OBJ_PRIV_KEY       10\r
-#define PEM_OBJ_PRIV_RSA       11\r
-#define PEM_OBJ_PRIV_DSA       12\r
-#define PEM_OBJ_PRIV_DH                13\r
-#define PEM_OBJ_PUB_RSA                14\r
-#define PEM_OBJ_PUB_DSA                15\r
-#define PEM_OBJ_PUB_DH         16\r
-#define PEM_OBJ_DHPARAMS       17\r
-#define PEM_OBJ_DSAPARAMS      18\r
-#define PEM_OBJ_PRIV_RSA_PUBLIC        19\r
-#define PEM_OBJ_PRIV_ECDSA     20\r
-#define PEM_OBJ_PUB_ECDSA      21\r
-#define PEM_OBJ_ECPARAMETERS   22\r
-\r
-#define PEM_ERROR              30\r
-#define PEM_DEK_DES_CBC         40\r
-#define PEM_DEK_IDEA_CBC        45\r
-#define PEM_DEK_DES_EDE         50\r
-#define PEM_DEK_DES_ECB         60\r
-#define PEM_DEK_RSA             70\r
-#define PEM_DEK_RSA_MD2         80\r
-#define PEM_DEK_RSA_MD5         90\r
-\r
-#define PEM_MD_MD2             NID_md2\r
-#define PEM_MD_MD5             NID_md5\r
-#define PEM_MD_SHA             NID_sha\r
-#define PEM_MD_MD2_RSA         NID_md2WithRSAEncryption\r
-#define PEM_MD_MD5_RSA         NID_md5WithRSAEncryption\r
-#define PEM_MD_SHA_RSA         NID_sha1WithRSAEncryption\r
-\r
-#define PEM_STRING_X509_OLD    "X509 CERTIFICATE"\r
-#define PEM_STRING_X509                "CERTIFICATE"\r
-#define PEM_STRING_X509_PAIR   "CERTIFICATE PAIR"\r
-#define PEM_STRING_X509_TRUSTED        "TRUSTED CERTIFICATE"\r
-#define PEM_STRING_X509_REQ_OLD        "NEW CERTIFICATE REQUEST"\r
-#define PEM_STRING_X509_REQ    "CERTIFICATE REQUEST"\r
-#define PEM_STRING_X509_CRL    "X509 CRL"\r
-#define PEM_STRING_EVP_PKEY    "ANY PRIVATE KEY"\r
-#define PEM_STRING_PUBLIC      "PUBLIC KEY"\r
-#define PEM_STRING_RSA         "RSA PRIVATE KEY"\r
-#define PEM_STRING_RSA_PUBLIC  "RSA PUBLIC KEY"\r
-#define PEM_STRING_DSA         "DSA PRIVATE KEY"\r
-#define PEM_STRING_DSA_PUBLIC  "DSA PUBLIC KEY"\r
-#define PEM_STRING_PKCS7       "PKCS7"\r
-#define PEM_STRING_PKCS7_SIGNED        "PKCS #7 SIGNED DATA"\r
-#define PEM_STRING_PKCS8       "ENCRYPTED PRIVATE KEY"\r
-#define PEM_STRING_PKCS8INF    "PRIVATE KEY"\r
-#define PEM_STRING_DHPARAMS    "DH PARAMETERS"\r
-#define PEM_STRING_SSL_SESSION "SSL SESSION PARAMETERS"\r
-#define PEM_STRING_DSAPARAMS   "DSA PARAMETERS"\r
-#define PEM_STRING_ECDSA_PUBLIC "ECDSA PUBLIC KEY"\r
-#define PEM_STRING_ECPARAMETERS "EC PARAMETERS"\r
-#define PEM_STRING_ECPRIVATEKEY        "EC PRIVATE KEY"\r
-#define PEM_STRING_PARAMETERS  "PARAMETERS"\r
-#define PEM_STRING_CMS         "CMS"\r
-\r
-  /* Note that this structure is initialised by PEM_SealInit and cleaned up\r
-     by PEM_SealFinal (at least for now) */\r
-typedef struct PEM_Encode_Seal_st\r
-       {\r
-       EVP_ENCODE_CTX encode;\r
-       EVP_MD_CTX md;\r
-       EVP_CIPHER_CTX cipher;\r
-       } PEM_ENCODE_SEAL_CTX;\r
+# define PEM_BUFSIZE             1024\r
+\r
+# define PEM_OBJ_UNDEF           0\r
+# define PEM_OBJ_X509            1\r
+# define PEM_OBJ_X509_REQ        2\r
+# define PEM_OBJ_CRL             3\r
+# define PEM_OBJ_SSL_SESSION     4\r
+# define PEM_OBJ_PRIV_KEY        10\r
+# define PEM_OBJ_PRIV_RSA        11\r
+# define PEM_OBJ_PRIV_DSA        12\r
+# define PEM_OBJ_PRIV_DH         13\r
+# define PEM_OBJ_PUB_RSA         14\r
+# define PEM_OBJ_PUB_DSA         15\r
+# define PEM_OBJ_PUB_DH          16\r
+# define PEM_OBJ_DHPARAMS        17\r
+# define PEM_OBJ_DSAPARAMS       18\r
+# define PEM_OBJ_PRIV_RSA_PUBLIC 19\r
+# define PEM_OBJ_PRIV_ECDSA      20\r
+# define PEM_OBJ_PUB_ECDSA       21\r
+# define PEM_OBJ_ECPARAMETERS    22\r
+\r
+# define PEM_ERROR               30\r
+# define PEM_DEK_DES_CBC         40\r
+# define PEM_DEK_IDEA_CBC        45\r
+# define PEM_DEK_DES_EDE         50\r
+# define PEM_DEK_DES_ECB         60\r
+# define PEM_DEK_RSA             70\r
+# define PEM_DEK_RSA_MD2         80\r
+# define PEM_DEK_RSA_MD5         90\r
+\r
+# define PEM_MD_MD2              NID_md2\r
+# define PEM_MD_MD5              NID_md5\r
+# define PEM_MD_SHA              NID_sha\r
+# define PEM_MD_MD2_RSA          NID_md2WithRSAEncryption\r
+# define PEM_MD_MD5_RSA          NID_md5WithRSAEncryption\r
+# define PEM_MD_SHA_RSA          NID_sha1WithRSAEncryption\r
+\r
+# define PEM_STRING_X509_OLD     "X509 CERTIFICATE"\r
+# define PEM_STRING_X509         "CERTIFICATE"\r
+# define PEM_STRING_X509_PAIR    "CERTIFICATE PAIR"\r
+# define PEM_STRING_X509_TRUSTED "TRUSTED CERTIFICATE"\r
+# define PEM_STRING_X509_REQ_OLD "NEW CERTIFICATE REQUEST"\r
+# define PEM_STRING_X509_REQ     "CERTIFICATE REQUEST"\r
+# define PEM_STRING_X509_CRL     "X509 CRL"\r
+# define PEM_STRING_EVP_PKEY     "ANY PRIVATE KEY"\r
+# define PEM_STRING_PUBLIC       "PUBLIC KEY"\r
+# define PEM_STRING_RSA          "RSA PRIVATE KEY"\r
+# define PEM_STRING_RSA_PUBLIC   "RSA PUBLIC KEY"\r
+# define PEM_STRING_DSA          "DSA PRIVATE KEY"\r
+# define PEM_STRING_DSA_PUBLIC   "DSA PUBLIC KEY"\r
+# define PEM_STRING_PKCS7        "PKCS7"\r
+# define PEM_STRING_PKCS7_SIGNED "PKCS #7 SIGNED DATA"\r
+# define PEM_STRING_PKCS8        "ENCRYPTED PRIVATE KEY"\r
+# define PEM_STRING_PKCS8INF     "PRIVATE KEY"\r
+# define PEM_STRING_DHPARAMS     "DH PARAMETERS"\r
+# define PEM_STRING_DHXPARAMS    "X9.42 DH PARAMETERS"\r
+# define PEM_STRING_SSL_SESSION  "SSL SESSION PARAMETERS"\r
+# define PEM_STRING_DSAPARAMS    "DSA PARAMETERS"\r
+# define PEM_STRING_ECDSA_PUBLIC "ECDSA PUBLIC KEY"\r
+# define PEM_STRING_ECPARAMETERS "EC PARAMETERS"\r
+# define PEM_STRING_ECPRIVATEKEY "EC PRIVATE KEY"\r
+# define PEM_STRING_PARAMETERS   "PARAMETERS"\r
+# define PEM_STRING_CMS          "CMS"\r
+\r
+  /*\r
+   * Note that this structure is initialised by PEM_SealInit and cleaned up\r
+   * by PEM_SealFinal (at least for now)\r
+   */\r
+typedef struct PEM_Encode_Seal_st {\r
+    EVP_ENCODE_CTX encode;\r
+    EVP_MD_CTX md;\r
+    EVP_CIPHER_CTX cipher;\r
+} PEM_ENCODE_SEAL_CTX;\r
 \r
 /* enc_type is one off */\r
-#define PEM_TYPE_ENCRYPTED      10\r
-#define PEM_TYPE_MIC_ONLY       20\r
-#define PEM_TYPE_MIC_CLEAR      30\r
-#define PEM_TYPE_CLEAR         40\r
-\r
-typedef struct pem_recip_st\r
-       {\r
-       char *name;\r
-       X509_NAME *dn;\r
-\r
-       int cipher;\r
-       int key_enc;\r
-       /*      char iv[8]; unused and wrong size */\r
-       } PEM_USER;\r
-\r
-typedef struct pem_ctx_st\r
-       {\r
-       int type;               /* what type of object */\r
-\r
-       struct  {\r
-               int version;\r
-               int mode;\r
-               } proc_type;\r
-\r
-       char *domain;\r
-\r
-       struct  {\r
-               int cipher;\r
-       /* unused, and wrong size\r
-          unsigned char iv[8]; */\r
-               } DEK_info;\r
-\r
-       PEM_USER *originator;\r
-\r
-       int num_recipient;\r
-       PEM_USER **recipient;\r
-\r
-       /* XXX(ben): don#t think this is used!\r
-               STACK *x509_chain;      / * certificate chain */\r
-       EVP_MD *md;             /* signature type */\r
-\r
-       int md_enc;             /* is the md encrypted or not? */\r
-       int md_len;             /* length of md_data */\r
-       char *md_data;          /* message digest, could be pkey encrypted */\r
-\r
-       EVP_CIPHER *dec;        /* date encryption cipher */\r
-       int key_len;            /* key length */\r
-       unsigned char *key;     /* key */\r
-       /* unused, and wrong size\r
-          unsigned char iv[8]; */\r
-\r
-\r
-       int  data_enc;          /* is the data encrypted */\r
-       int data_len;\r
-       unsigned char *data;\r
-       } PEM_CTX;\r
-\r
-/* These macros make the PEM_read/PEM_write functions easier to maintain and\r
- * write. Now they are all implemented with either:\r
- * IMPLEMENT_PEM_rw(...) or IMPLEMENT_PEM_rw_cb(...)\r
+# define PEM_TYPE_ENCRYPTED      10\r
+# define PEM_TYPE_MIC_ONLY       20\r
+# define PEM_TYPE_MIC_CLEAR      30\r
+# define PEM_TYPE_CLEAR          40\r
+\r
+typedef struct pem_recip_st {\r
+    char *name;\r
+    X509_NAME *dn;\r
+    int cipher;\r
+    int key_enc;\r
+    /*      char iv[8]; unused and wrong size */\r
+} PEM_USER;\r
+\r
+typedef struct pem_ctx_st {\r
+    int type;                   /* what type of object */\r
+    struct {\r
+        int version;\r
+        int mode;\r
+    } proc_type;\r
+\r
+    char *domain;\r
+\r
+    struct {\r
+        int cipher;\r
+        /*-\r
+        unused, and wrong size\r
+        unsigned char iv[8]; */\r
+    } DEK_info;\r
+\r
+    PEM_USER *originator;\r
+\r
+    int num_recipient;\r
+    PEM_USER **recipient;\r
+/*-\r
+    XXX(ben): don#t think this is used!\r
+        STACK *x509_chain;      / * certificate chain */\r
+    EVP_MD *md;                 /* signature type */\r
+\r
+    int md_enc;                 /* is the md encrypted or not? */\r
+    int md_len;                 /* length of md_data */\r
+    char *md_data;              /* message digest, could be pkey encrypted */\r
+\r
+    EVP_CIPHER *dec;            /* date encryption cipher */\r
+    int key_len;                /* key length */\r
+    unsigned char *key;         /* key */\r
+  /*-\r
+    unused, and wrong size\r
+    unsigned char iv[8]; */\r
+\r
+    int data_enc;               /* is the data encrypted */\r
+    int data_len;\r
+    unsigned char *data;\r
+} PEM_CTX;\r
+\r
+/*\r
+ * These macros make the PEM_read/PEM_write functions easier to maintain and\r
+ * write. Now they are all implemented with either: IMPLEMENT_PEM_rw(...) or\r
+ * IMPLEMENT_PEM_rw_cb(...)\r
  */\r
 \r
-#ifdef OPENSSL_NO_FP_API\r
-\r
-#define IMPLEMENT_PEM_read_fp(name, type, str, asn1) /**/\r
-#define IMPLEMENT_PEM_write_fp(name, type, str, asn1) /**/\r
-#define IMPLEMENT_PEM_write_fp_const(name, type, str, asn1) /**/\r
-#define IMPLEMENT_PEM_write_cb_fp(name, type, str, asn1) /**/\r
-#define IMPLEMENT_PEM_write_cb_fp_const(name, type, str, asn1) /**/\r
+# ifdef OPENSSL_NO_FP_API\r
 \r
-#else\r
+#  define IMPLEMENT_PEM_read_fp(name, type, str, asn1) /**/\r
+#  define IMPLEMENT_PEM_write_fp(name, type, str, asn1) /**/\r
+#  define IMPLEMENT_PEM_write_fp_const(name, type, str, asn1) /**/\r
+#  define IMPLEMENT_PEM_write_cb_fp(name, type, str, asn1) /**/\r
+#  define IMPLEMENT_PEM_write_cb_fp_const(name, type, str, asn1) /**/\r
+# else\r
 \r
-#define IMPLEMENT_PEM_read_fp(name, type, str, asn1) \\r
+#  define IMPLEMENT_PEM_read_fp(name, type, str, asn1) \\r
 type *PEM_read_##name(FILE *fp, type **x, pem_password_cb *cb, void *u)\\r
 { \\r
 return PEM_ASN1_read((d2i_of_void *)d2i_##asn1, str,fp,(void **)x,cb,u); \\r
 }\r
 \r
-#define IMPLEMENT_PEM_write_fp(name, type, str, asn1) \\r
+#  define IMPLEMENT_PEM_write_fp(name, type, str, asn1) \\r
 int PEM_write_##name(FILE *fp, type *x) \\r
 { \\r
 return PEM_ASN1_write((i2d_of_void *)i2d_##asn1,str,fp,x,NULL,NULL,0,NULL,NULL); \\r
 }\r
 \r
-#define IMPLEMENT_PEM_write_fp_const(name, type, str, asn1) \\r
+#  define IMPLEMENT_PEM_write_fp_const(name, type, str, asn1) \\r
 int PEM_write_##name(FILE *fp, const type *x) \\r
 { \\r
 return PEM_ASN1_write((i2d_of_void *)i2d_##asn1,str,fp,(void *)x,NULL,NULL,0,NULL,NULL); \\r
 }\r
 \r
-#define IMPLEMENT_PEM_write_cb_fp(name, type, str, asn1) \\r
+#  define IMPLEMENT_PEM_write_cb_fp(name, type, str, asn1) \\r
 int PEM_write_##name(FILE *fp, type *x, const EVP_CIPHER *enc, \\r
-            unsigned char *kstr, int klen, pem_password_cb *cb, \\r
-                 void *u) \\r
-       { \\r
-       return PEM_ASN1_write((i2d_of_void *)i2d_##asn1,str,fp,x,enc,kstr,klen,cb,u); \\r
-       }\r
+             unsigned char *kstr, int klen, pem_password_cb *cb, \\r
+                  void *u) \\r
+        { \\r
+        return PEM_ASN1_write((i2d_of_void *)i2d_##asn1,str,fp,x,enc,kstr,klen,cb,u); \\r
+        }\r
 \r
-#define IMPLEMENT_PEM_write_cb_fp_const(name, type, str, asn1) \\r
+#  define IMPLEMENT_PEM_write_cb_fp_const(name, type, str, asn1) \\r
 int PEM_write_##name(FILE *fp, type *x, const EVP_CIPHER *enc, \\r
-            unsigned char *kstr, int klen, pem_password_cb *cb, \\r
-                 void *u) \\r
-       { \\r
-       return PEM_ASN1_write((i2d_of_void *)i2d_##asn1,str,fp,x,enc,kstr,klen,cb,u); \\r
-       }\r
+             unsigned char *kstr, int klen, pem_password_cb *cb, \\r
+                  void *u) \\r
+        { \\r
+        return PEM_ASN1_write((i2d_of_void *)i2d_##asn1,str,fp,x,enc,kstr,klen,cb,u); \\r
+        }\r
 \r
-#endif\r
+# endif\r
 \r
-#define IMPLEMENT_PEM_read_bio(name, type, str, asn1) \\r
+# define IMPLEMENT_PEM_read_bio(name, type, str, asn1) \\r
 type *PEM_read_bio_##name(BIO *bp, type **x, pem_password_cb *cb, void *u)\\r
 { \\r
 return PEM_ASN1_read_bio((d2i_of_void *)d2i_##asn1, str,bp,(void **)x,cb,u); \\r
 }\r
 \r
-#define IMPLEMENT_PEM_write_bio(name, type, str, asn1) \\r
+# define IMPLEMENT_PEM_write_bio(name, type, str, asn1) \\r
 int PEM_write_bio_##name(BIO *bp, type *x) \\r
 { \\r
 return PEM_ASN1_write_bio((i2d_of_void *)i2d_##asn1,str,bp,x,NULL,NULL,0,NULL,NULL); \\r
 }\r
 \r
-#define IMPLEMENT_PEM_write_bio_const(name, type, str, asn1) \\r
+# define IMPLEMENT_PEM_write_bio_const(name, type, str, asn1) \\r
 int PEM_write_bio_##name(BIO *bp, const type *x) \\r
 { \\r
 return PEM_ASN1_write_bio((i2d_of_void *)i2d_##asn1,str,bp,(void *)x,NULL,NULL,0,NULL,NULL); \\r
 }\r
 \r
-#define IMPLEMENT_PEM_write_cb_bio(name, type, str, asn1) \\r
+# define IMPLEMENT_PEM_write_cb_bio(name, type, str, asn1) \\r
 int PEM_write_bio_##name(BIO *bp, type *x, const EVP_CIPHER *enc, \\r
-            unsigned char *kstr, int klen, pem_password_cb *cb, void *u) \\r
-       { \\r
-       return PEM_ASN1_write_bio((i2d_of_void *)i2d_##asn1,str,bp,x,enc,kstr,klen,cb,u); \\r
-       }\r
+             unsigned char *kstr, int klen, pem_password_cb *cb, void *u) \\r
+        { \\r
+        return PEM_ASN1_write_bio((i2d_of_void *)i2d_##asn1,str,bp,x,enc,kstr,klen,cb,u); \\r
+        }\r
 \r
-#define IMPLEMENT_PEM_write_cb_bio_const(name, type, str, asn1) \\r
+# define IMPLEMENT_PEM_write_cb_bio_const(name, type, str, asn1) \\r
 int PEM_write_bio_##name(BIO *bp, type *x, const EVP_CIPHER *enc, \\r
-            unsigned char *kstr, int klen, pem_password_cb *cb, void *u) \\r
-       { \\r
-       return PEM_ASN1_write_bio((i2d_of_void *)i2d_##asn1,str,bp,(void *)x,enc,kstr,klen,cb,u); \\r
-       }\r
+             unsigned char *kstr, int klen, pem_password_cb *cb, void *u) \\r
+        { \\r
+        return PEM_ASN1_write_bio((i2d_of_void *)i2d_##asn1,str,bp,(void *)x,enc,kstr,klen,cb,u); \\r
+        }\r
 \r
-#define IMPLEMENT_PEM_write(name, type, str, asn1) \\r
-       IMPLEMENT_PEM_write_bio(name, type, str, asn1) \\r
-       IMPLEMENT_PEM_write_fp(name, type, str, asn1)\r
+# define IMPLEMENT_PEM_write(name, type, str, asn1) \\r
+        IMPLEMENT_PEM_write_bio(name, type, str, asn1) \\r
+        IMPLEMENT_PEM_write_fp(name, type, str, asn1)\r
 \r
-#define IMPLEMENT_PEM_write_const(name, type, str, asn1) \\r
-       IMPLEMENT_PEM_write_bio_const(name, type, str, asn1) \\r
-       IMPLEMENT_PEM_write_fp_const(name, type, str, asn1)\r
+# define IMPLEMENT_PEM_write_const(name, type, str, asn1) \\r
+        IMPLEMENT_PEM_write_bio_const(name, type, str, asn1) \\r
+        IMPLEMENT_PEM_write_fp_const(name, type, str, asn1)\r
 \r
-#define IMPLEMENT_PEM_write_cb(name, type, str, asn1) \\r
-       IMPLEMENT_PEM_write_cb_bio(name, type, str, asn1) \\r
-       IMPLEMENT_PEM_write_cb_fp(name, type, str, asn1)\r
+# define IMPLEMENT_PEM_write_cb(name, type, str, asn1) \\r
+        IMPLEMENT_PEM_write_cb_bio(name, type, str, asn1) \\r
+        IMPLEMENT_PEM_write_cb_fp(name, type, str, asn1)\r
 \r
-#define IMPLEMENT_PEM_write_cb_const(name, type, str, asn1) \\r
-       IMPLEMENT_PEM_write_cb_bio_const(name, type, str, asn1) \\r
-       IMPLEMENT_PEM_write_cb_fp_const(name, type, str, asn1)\r
+# define IMPLEMENT_PEM_write_cb_const(name, type, str, asn1) \\r
+        IMPLEMENT_PEM_write_cb_bio_const(name, type, str, asn1) \\r
+        IMPLEMENT_PEM_write_cb_fp_const(name, type, str, asn1)\r
 \r
-#define IMPLEMENT_PEM_read(name, type, str, asn1) \\r
-       IMPLEMENT_PEM_read_bio(name, type, str, asn1) \\r
-       IMPLEMENT_PEM_read_fp(name, type, str, asn1)\r
+# define IMPLEMENT_PEM_read(name, type, str, asn1) \\r
+        IMPLEMENT_PEM_read_bio(name, type, str, asn1) \\r
+        IMPLEMENT_PEM_read_fp(name, type, str, asn1)\r
 \r
-#define IMPLEMENT_PEM_rw(name, type, str, asn1) \\r
-       IMPLEMENT_PEM_read(name, type, str, asn1) \\r
-       IMPLEMENT_PEM_write(name, type, str, asn1)\r
+# define IMPLEMENT_PEM_rw(name, type, str, asn1) \\r
+        IMPLEMENT_PEM_read(name, type, str, asn1) \\r
+        IMPLEMENT_PEM_write(name, type, str, asn1)\r
 \r
-#define IMPLEMENT_PEM_rw_const(name, type, str, asn1) \\r
-       IMPLEMENT_PEM_read(name, type, str, asn1) \\r
-       IMPLEMENT_PEM_write_const(name, type, str, asn1)\r
+# define IMPLEMENT_PEM_rw_const(name, type, str, asn1) \\r
+        IMPLEMENT_PEM_read(name, type, str, asn1) \\r
+        IMPLEMENT_PEM_write_const(name, type, str, asn1)\r
 \r
-#define IMPLEMENT_PEM_rw_cb(name, type, str, asn1) \\r
-       IMPLEMENT_PEM_read(name, type, str, asn1) \\r
-       IMPLEMENT_PEM_write_cb(name, type, str, asn1)\r
+# define IMPLEMENT_PEM_rw_cb(name, type, str, asn1) \\r
+        IMPLEMENT_PEM_read(name, type, str, asn1) \\r
+        IMPLEMENT_PEM_write_cb(name, type, str, asn1)\r
 \r
 /* These are the same except they are for the declarations */\r
 \r
-#if defined(OPENSSL_NO_FP_API)\r
-\r
-#define DECLARE_PEM_read_fp(name, type) /**/\r
-#define DECLARE_PEM_write_fp(name, type) /**/\r
-#define DECLARE_PEM_write_cb_fp(name, type) /**/\r
-\r
-#else\r
-\r
-#define DECLARE_PEM_read_fp(name, type) \\r
-       type *PEM_read_##name(FILE *fp, type **x, pem_password_cb *cb, void *u);\r
-\r
-#define DECLARE_PEM_write_fp(name, type) \\r
-       int PEM_write_##name(FILE *fp, type *x);\r
-\r
-#define DECLARE_PEM_write_fp_const(name, type) \\r
-       int PEM_write_##name(FILE *fp, const type *x);\r
-\r
-#define DECLARE_PEM_write_cb_fp(name, type) \\r
-       int PEM_write_##name(FILE *fp, type *x, const EVP_CIPHER *enc, \\r
-            unsigned char *kstr, int klen, pem_password_cb *cb, void *u);\r
-\r
-#endif\r
-\r
-#ifndef OPENSSL_NO_BIO\r
-#define DECLARE_PEM_read_bio(name, type) \\r
-       type *PEM_read_bio_##name(BIO *bp, type **x, pem_password_cb *cb, void *u);\r
-\r
-#define DECLARE_PEM_write_bio(name, type) \\r
-       int PEM_write_bio_##name(BIO *bp, type *x);\r
-\r
-#define DECLARE_PEM_write_bio_const(name, type) \\r
-       int PEM_write_bio_##name(BIO *bp, const type *x);\r
-\r
-#define DECLARE_PEM_write_cb_bio(name, type) \\r
-       int PEM_write_bio_##name(BIO *bp, type *x, const EVP_CIPHER *enc, \\r
-            unsigned char *kstr, int klen, pem_password_cb *cb, void *u);\r
-\r
-#else\r
-\r
-#define DECLARE_PEM_read_bio(name, type) /**/\r
-#define DECLARE_PEM_write_bio(name, type) /**/\r
-#define DECLARE_PEM_write_bio_const(name, type) /**/\r
-#define DECLARE_PEM_write_cb_bio(name, type) /**/\r
-\r
-#endif\r
-\r
-#define DECLARE_PEM_write(name, type) \\r
-       DECLARE_PEM_write_bio(name, type) \\r
-       DECLARE_PEM_write_fp(name, type)\r
-\r
-#define DECLARE_PEM_write_const(name, type) \\r
-       DECLARE_PEM_write_bio_const(name, type) \\r
-       DECLARE_PEM_write_fp_const(name, type)\r
-\r
-#define DECLARE_PEM_write_cb(name, type) \\r
-       DECLARE_PEM_write_cb_bio(name, type) \\r
-       DECLARE_PEM_write_cb_fp(name, type)\r
-\r
-#define DECLARE_PEM_read(name, type) \\r
-       DECLARE_PEM_read_bio(name, type) \\r
-       DECLARE_PEM_read_fp(name, type)\r
-\r
-#define DECLARE_PEM_rw(name, type) \\r
-       DECLARE_PEM_read(name, type) \\r
-       DECLARE_PEM_write(name, type)\r
-\r
-#define DECLARE_PEM_rw_const(name, type) \\r
-       DECLARE_PEM_read(name, type) \\r
-       DECLARE_PEM_write_const(name, type)\r
-\r
-#define DECLARE_PEM_rw_cb(name, type) \\r
-       DECLARE_PEM_read(name, type) \\r
-       DECLARE_PEM_write_cb(name, type)\r
-\r
-#if 1\r
+# if defined(OPENSSL_NO_FP_API)\r
+\r
+#  define DECLARE_PEM_read_fp(name, type) /**/\r
+#  define DECLARE_PEM_write_fp(name, type) /**/\r
+#  define DECLARE_PEM_write_cb_fp(name, type) /**/\r
+# else\r
+\r
+#  define DECLARE_PEM_read_fp(name, type) \\r
+        type *PEM_read_##name(FILE *fp, type **x, pem_password_cb *cb, void *u);\r
+\r
+#  define DECLARE_PEM_write_fp(name, type) \\r
+        int PEM_write_##name(FILE *fp, type *x);\r
+\r
+#  define DECLARE_PEM_write_fp_const(name, type) \\r
+        int PEM_write_##name(FILE *fp, const type *x);\r
+\r
+#  define DECLARE_PEM_write_cb_fp(name, type) \\r
+        int PEM_write_##name(FILE *fp, type *x, const EVP_CIPHER *enc, \\r
+             unsigned char *kstr, int klen, pem_password_cb *cb, void *u);\r
+\r
+# endif\r
+\r
+# ifndef OPENSSL_NO_BIO\r
+#  define DECLARE_PEM_read_bio(name, type) \\r
+        type *PEM_read_bio_##name(BIO *bp, type **x, pem_password_cb *cb, void *u);\r
+\r
+#  define DECLARE_PEM_write_bio(name, type) \\r
+        int PEM_write_bio_##name(BIO *bp, type *x);\r
+\r
+#  define DECLARE_PEM_write_bio_const(name, type) \\r
+        int PEM_write_bio_##name(BIO *bp, const type *x);\r
+\r
+#  define DECLARE_PEM_write_cb_bio(name, type) \\r
+        int PEM_write_bio_##name(BIO *bp, type *x, const EVP_CIPHER *enc, \\r
+             unsigned char *kstr, int klen, pem_password_cb *cb, void *u);\r
+\r
+# else\r
+\r
+#  define DECLARE_PEM_read_bio(name, type) /**/\r
+#  define DECLARE_PEM_write_bio(name, type) /**/\r
+#  define DECLARE_PEM_write_bio_const(name, type) /**/\r
+#  define DECLARE_PEM_write_cb_bio(name, type) /**/\r
+# endif\r
+# define DECLARE_PEM_write(name, type) \\r
+        DECLARE_PEM_write_bio(name, type) \\r
+        DECLARE_PEM_write_fp(name, type)\r
+# define DECLARE_PEM_write_const(name, type) \\r
+        DECLARE_PEM_write_bio_const(name, type) \\r
+        DECLARE_PEM_write_fp_const(name, type)\r
+# define DECLARE_PEM_write_cb(name, type) \\r
+        DECLARE_PEM_write_cb_bio(name, type) \\r
+        DECLARE_PEM_write_cb_fp(name, type)\r
+# define DECLARE_PEM_read(name, type) \\r
+        DECLARE_PEM_read_bio(name, type) \\r
+        DECLARE_PEM_read_fp(name, type)\r
+# define DECLARE_PEM_rw(name, type) \\r
+        DECLARE_PEM_read(name, type) \\r
+        DECLARE_PEM_write(name, type)\r
+# define DECLARE_PEM_rw_const(name, type) \\r
+        DECLARE_PEM_read(name, type) \\r
+        DECLARE_PEM_write_const(name, type)\r
+# define DECLARE_PEM_rw_cb(name, type) \\r
+        DECLARE_PEM_read(name, type) \\r
+        DECLARE_PEM_write_cb(name, type)\r
+# if 1\r
 /* "userdata": new with OpenSSL 0.9.4 */\r
-typedef int pem_password_cb(char *buf, int size, int rwflag, void *userdata);\r
-#else\r
+typedef int pem_password_cb (char *buf, int size, int rwflag, void *userdata);\r
+# else\r
 /* OpenSSL 0.9.3, 0.9.3a */\r
-typedef int pem_password_cb(char *buf, int size, int rwflag);\r
-#endif\r
-\r
-int    PEM_get_EVP_CIPHER_INFO(char *header, EVP_CIPHER_INFO *cipher);\r
-int    PEM_do_header (EVP_CIPHER_INFO *cipher, unsigned char *data,long *len,\r
-       pem_password_cb *callback,void *u);\r
-\r
-#ifndef OPENSSL_NO_BIO\r
-int    PEM_read_bio(BIO *bp, char **name, char **header,\r
-               unsigned char **data,long *len);\r
-int    PEM_write_bio(BIO *bp,const char *name,char *hdr,unsigned char *data,\r
-               long len);\r
-int PEM_bytes_read_bio(unsigned char **pdata, long *plen, char **pnm, const char *name, BIO *bp,\r
-            pem_password_cb *cb, void *u);\r
-void * PEM_ASN1_read_bio(d2i_of_void *d2i, const char *name, BIO *bp,\r
-                         void **x, pem_password_cb *cb, void *u);\r
-int    PEM_ASN1_write_bio(i2d_of_void *i2d,const char *name,BIO *bp, void *x,\r
-                          const EVP_CIPHER *enc,unsigned char *kstr,int klen,\r
-                          pem_password_cb *cb, void *u);\r
-\r
-STACK_OF(X509_INFO) *  PEM_X509_INFO_read_bio(BIO *bp, STACK_OF(X509_INFO) *sk, pem_password_cb *cb, void *u);\r
-int    PEM_X509_INFO_write_bio(BIO *bp,X509_INFO *xi, EVP_CIPHER *enc,\r
-               unsigned char *kstr, int klen, pem_password_cb *cd, void *u);\r
-#endif\r
-\r
-int    PEM_read(FILE *fp, char **name, char **header,\r
-               unsigned char **data,long *len);\r
-int    PEM_write(FILE *fp,char *name,char *hdr,unsigned char *data,long len);\r
-void *  PEM_ASN1_read(d2i_of_void *d2i, const char *name, FILE *fp, void **x,\r
-                     pem_password_cb *cb, void *u);\r
-int    PEM_ASN1_write(i2d_of_void *i2d,const char *name,FILE *fp,\r
-                      void *x,const EVP_CIPHER *enc,unsigned char *kstr,\r
-                      int klen,pem_password_cb *callback, void *u);\r
-STACK_OF(X509_INFO) *  PEM_X509_INFO_read(FILE *fp, STACK_OF(X509_INFO) *sk,\r
-       pem_password_cb *cb, void *u);\r
-\r
-int    PEM_SealInit(PEM_ENCODE_SEAL_CTX *ctx, EVP_CIPHER *type,\r
-               EVP_MD *md_type, unsigned char **ek, int *ekl,\r
-               unsigned char *iv, EVP_PKEY **pubk, int npubk);\r
-void   PEM_SealUpdate(PEM_ENCODE_SEAL_CTX *ctx, unsigned char *out, int *outl,\r
-               unsigned char *in, int inl);\r
-int    PEM_SealFinal(PEM_ENCODE_SEAL_CTX *ctx, unsigned char *sig,int *sigl,\r
-               unsigned char *out, int *outl, EVP_PKEY *priv);\r
-\r
-void    PEM_SignInit(EVP_MD_CTX *ctx, EVP_MD *type);\r
-void    PEM_SignUpdate(EVP_MD_CTX *ctx,unsigned char *d,unsigned int cnt);\r
-int    PEM_SignFinal(EVP_MD_CTX *ctx, unsigned char *sigret,\r
-               unsigned int *siglen, EVP_PKEY *pkey);\r
-\r
-int    PEM_def_callback(char *buf, int num, int w, void *key);\r
-void   PEM_proc_type(char *buf, int type);\r
-void   PEM_dek_info(char *buf, const char *type, int len, char *str);\r
-\r
-\r
-#include <openssl/symhacks.h>\r
+typedef int pem_password_cb (char *buf, int size, int rwflag);\r
+# endif\r
+\r
+int PEM_get_EVP_CIPHER_INFO(char *header, EVP_CIPHER_INFO *cipher);\r
+int PEM_do_header(EVP_CIPHER_INFO *cipher, unsigned char *data, long *len,\r
+                  pem_password_cb *callback, void *u);\r
+\r
+# ifndef OPENSSL_NO_BIO\r
+int PEM_read_bio(BIO *bp, char **name, char **header,\r
+                 unsigned char **data, long *len);\r
+int PEM_write_bio(BIO *bp, const char *name, const char *hdr,\r
+                  const unsigned char *data, long len);\r
+int PEM_bytes_read_bio(unsigned char **pdata, long *plen, char **pnm,\r
+                       const char *name, BIO *bp, pem_password_cb *cb,\r
+                       void *u);\r
+void *PEM_ASN1_read_bio(d2i_of_void *d2i, const char *name, BIO *bp, void **x,\r
+                        pem_password_cb *cb, void *u);\r
+int PEM_ASN1_write_bio(i2d_of_void *i2d, const char *name, BIO *bp, void *x,\r
+                       const EVP_CIPHER *enc, unsigned char *kstr, int klen,\r
+                       pem_password_cb *cb, void *u);\r
+\r
+STACK_OF(X509_INFO) *PEM_X509_INFO_read_bio(BIO *bp, STACK_OF(X509_INFO) *sk,\r
+                                            pem_password_cb *cb, void *u);\r
+int PEM_X509_INFO_write_bio(BIO *bp, X509_INFO *xi, EVP_CIPHER *enc,\r
+                            unsigned char *kstr, int klen,\r
+                            pem_password_cb *cd, void *u);\r
+# endif\r
+\r
+int PEM_read(FILE *fp, char **name, char **header,\r
+             unsigned char **data, long *len);\r
+int PEM_write(FILE *fp, const char *name, const char *hdr,\r
+              const unsigned char *data, long len);\r
+void *PEM_ASN1_read(d2i_of_void *d2i, const char *name, FILE *fp, void **x,\r
+                    pem_password_cb *cb, void *u);\r
+int PEM_ASN1_write(i2d_of_void *i2d, const char *name, FILE *fp,\r
+                   void *x, const EVP_CIPHER *enc, unsigned char *kstr,\r
+                   int klen, pem_password_cb *callback, void *u);\r
+STACK_OF(X509_INFO) *PEM_X509_INFO_read(FILE *fp, STACK_OF(X509_INFO) *sk,\r
+                                        pem_password_cb *cb, void *u);\r
+\r
+int PEM_SealInit(PEM_ENCODE_SEAL_CTX *ctx, EVP_CIPHER *type,\r
+                 EVP_MD *md_type, unsigned char **ek, int *ekl,\r
+                 unsigned char *iv, EVP_PKEY **pubk, int npubk);\r
+void PEM_SealUpdate(PEM_ENCODE_SEAL_CTX *ctx, unsigned char *out, int *outl,\r
+                    unsigned char *in, int inl);\r
+int PEM_SealFinal(PEM_ENCODE_SEAL_CTX *ctx, unsigned char *sig, int *sigl,\r
+                  unsigned char *out, int *outl, EVP_PKEY *priv);\r
+\r
+void PEM_SignInit(EVP_MD_CTX *ctx, EVP_MD *type);\r
+void PEM_SignUpdate(EVP_MD_CTX *ctx, unsigned char *d, unsigned int cnt);\r
+int PEM_SignFinal(EVP_MD_CTX *ctx, unsigned char *sigret,\r
+                  unsigned int *siglen, EVP_PKEY *pkey);\r
+\r
+int PEM_def_callback(char *buf, int num, int w, void *key);\r
+void PEM_proc_type(char *buf, int type);\r
+void PEM_dek_info(char *buf, const char *type, int len, char *str);\r
+\r
+# include <openssl/symhacks.h>\r
 \r
 DECLARE_PEM_rw(X509, X509)\r
-\r
 DECLARE_PEM_rw(X509_AUX, X509)\r
-\r
 DECLARE_PEM_rw(X509_CERT_PAIR, X509_CERT_PAIR)\r
-\r
 DECLARE_PEM_rw(X509_REQ, X509_REQ)\r
 DECLARE_PEM_write(X509_REQ_NEW, X509_REQ)\r
-\r
 DECLARE_PEM_rw(X509_CRL, X509_CRL)\r
-\r
 DECLARE_PEM_rw(PKCS7, PKCS7)\r
-\r
 DECLARE_PEM_rw(NETSCAPE_CERT_SEQUENCE, NETSCAPE_CERT_SEQUENCE)\r
-\r
 DECLARE_PEM_rw(PKCS8, X509_SIG)\r
-\r
 DECLARE_PEM_rw(PKCS8_PRIV_KEY_INFO, PKCS8_PRIV_KEY_INFO)\r
-\r
-#ifndef OPENSSL_NO_RSA\r
-\r
+# ifndef OPENSSL_NO_RSA\r
 DECLARE_PEM_rw_cb(RSAPrivateKey, RSA)\r
-\r
 DECLARE_PEM_rw_const(RSAPublicKey, RSA)\r
 DECLARE_PEM_rw(RSA_PUBKEY, RSA)\r
-\r
-#endif\r
-\r
-#ifndef OPENSSL_NO_DSA\r
-\r
+# endif\r
+# ifndef OPENSSL_NO_DSA\r
 DECLARE_PEM_rw_cb(DSAPrivateKey, DSA)\r
-\r
 DECLARE_PEM_rw(DSA_PUBKEY, DSA)\r
-\r
 DECLARE_PEM_rw_const(DSAparams, DSA)\r
-\r
-#endif\r
-\r
-#ifndef OPENSSL_NO_EC\r
+# endif\r
+# ifndef OPENSSL_NO_EC\r
 DECLARE_PEM_rw_const(ECPKParameters, EC_GROUP)\r
 DECLARE_PEM_rw_cb(ECPrivateKey, EC_KEY)\r
 DECLARE_PEM_rw(EC_PUBKEY, EC_KEY)\r
-#endif\r
-\r
-#ifndef OPENSSL_NO_DH\r
-\r
+# endif\r
+# ifndef OPENSSL_NO_DH\r
 DECLARE_PEM_rw_const(DHparams, DH)\r
-\r
-#endif\r
-\r
+DECLARE_PEM_write_const(DHxparams, DH)\r
+# endif\r
 DECLARE_PEM_rw_cb(PrivateKey, EVP_PKEY)\r
-\r
 DECLARE_PEM_rw(PUBKEY, EVP_PKEY)\r
 \r
 int PEM_write_bio_PKCS8PrivateKey_nid(BIO *bp, EVP_PKEY *x, int nid,\r
-                                 char *kstr, int klen,\r
-                                 pem_password_cb *cb, void *u);\r
+                                      char *kstr, int klen,\r
+                                      pem_password_cb *cb, void *u);\r
 int PEM_write_bio_PKCS8PrivateKey(BIO *, EVP_PKEY *, const EVP_CIPHER *,\r
                                   char *, int, pem_password_cb *, void *);\r
 int i2d_PKCS8PrivateKey_bio(BIO *bp, EVP_PKEY *x, const EVP_CIPHER *enc,\r
-                                 char *kstr, int klen,\r
-                                 pem_password_cb *cb, void *u);\r
+                            char *kstr, int klen,\r
+                            pem_password_cb *cb, void *u);\r
 int i2d_PKCS8PrivateKey_nid_bio(BIO *bp, EVP_PKEY *x, int nid,\r
-                                 char *kstr, int klen,\r
-                                 pem_password_cb *cb, void *u);\r
-EVP_PKEY *d2i_PKCS8PrivateKey_bio(BIO *bp, EVP_PKEY **x, pem_password_cb *cb, void *u);\r
+                                char *kstr, int klen,\r
+                                pem_password_cb *cb, void *u);\r
+EVP_PKEY *d2i_PKCS8PrivateKey_bio(BIO *bp, EVP_PKEY **x, pem_password_cb *cb,\r
+                                  void *u);\r
 \r
 int i2d_PKCS8PrivateKey_fp(FILE *fp, EVP_PKEY *x, const EVP_CIPHER *enc,\r
-                                 char *kstr, int klen,\r
-                                 pem_password_cb *cb, void *u);\r
+                           char *kstr, int klen,\r
+                           pem_password_cb *cb, void *u);\r
 int i2d_PKCS8PrivateKey_nid_fp(FILE *fp, EVP_PKEY *x, int nid,\r
-                                 char *kstr, int klen,\r
-                                 pem_password_cb *cb, void *u);\r
+                               char *kstr, int klen,\r
+                               pem_password_cb *cb, void *u);\r
 int PEM_write_PKCS8PrivateKey_nid(FILE *fp, EVP_PKEY *x, int nid,\r
-                                 char *kstr, int klen,\r
-                                 pem_password_cb *cb, void *u);\r
+                                  char *kstr, int klen,\r
+                                  pem_password_cb *cb, void *u);\r
 \r
-EVP_PKEY *d2i_PKCS8PrivateKey_fp(FILE *fp, EVP_PKEY **x, pem_password_cb *cb, void *u);\r
+EVP_PKEY *d2i_PKCS8PrivateKey_fp(FILE *fp, EVP_PKEY **x, pem_password_cb *cb,\r
+                                 void *u);\r
 \r
-int PEM_write_PKCS8PrivateKey(FILE *fp,EVP_PKEY *x,const EVP_CIPHER *enc,\r
-                             char *kstr,int klen, pem_password_cb *cd, void *u);\r
+int PEM_write_PKCS8PrivateKey(FILE *fp, EVP_PKEY *x, const EVP_CIPHER *enc,\r
+                              char *kstr, int klen, pem_password_cb *cd,\r
+                              void *u);\r
 \r
 EVP_PKEY *PEM_read_bio_Parameters(BIO *bp, EVP_PKEY **x);\r
 int PEM_write_bio_Parameters(BIO *bp, EVP_PKEY *x);\r
 \r
-\r
 EVP_PKEY *b2i_PrivateKey(const unsigned char **in, long length);\r
 EVP_PKEY *b2i_PublicKey(const unsigned char **in, long length);\r
 EVP_PKEY *b2i_PrivateKey_bio(BIO *in);\r
 EVP_PKEY *b2i_PublicKey_bio(BIO *in);\r
 int i2b_PrivateKey_bio(BIO *out, EVP_PKEY *pk);\r
 int i2b_PublicKey_bio(BIO *out, EVP_PKEY *pk);\r
-#ifndef OPENSSL_NO_RC4\r
+# ifndef OPENSSL_NO_RC4\r
 EVP_PKEY *b2i_PVK_bio(BIO *in, pem_password_cb *cb, void *u);\r
 int i2b_PVK_bio(BIO *out, EVP_PKEY *pk, int enclevel,\r
-               pem_password_cb *cb, void *u);\r
-#endif\r
-\r
+                pem_password_cb *cb, void *u);\r
+# endif\r
 \r
 /* BEGIN ERROR CODES */\r
-/* The following lines are auto generated by the script mkerr.pl. Any changes\r
+/*\r
+ * The following lines are auto generated by the script mkerr.pl. Any changes\r
  * made after this point may be overwritten when the script is next run.\r
  */\r
 void ERR_load_PEM_strings(void);\r
@@ -564,76 +536,78 @@ void ERR_load_PEM_strings(void);
 /* Error codes for the PEM functions. */\r
 \r
 /* Function codes. */\r
-#define PEM_F_B2I_DSS                                   127\r
-#define PEM_F_B2I_PVK_BIO                               128\r
-#define PEM_F_B2I_RSA                                   129\r
-#define PEM_F_CHECK_BITLEN_DSA                          130\r
-#define PEM_F_CHECK_BITLEN_RSA                          131\r
-#define PEM_F_D2I_PKCS8PRIVATEKEY_BIO                   120\r
-#define PEM_F_D2I_PKCS8PRIVATEKEY_FP                    121\r
-#define PEM_F_DO_B2I                                    132\r
-#define PEM_F_DO_B2I_BIO                                133\r
-#define PEM_F_DO_BLOB_HEADER                            134\r
-#define PEM_F_DO_PK8PKEY                                126\r
-#define PEM_F_DO_PK8PKEY_FP                             125\r
-#define PEM_F_DO_PVK_BODY                               135\r
-#define PEM_F_DO_PVK_HEADER                             136\r
-#define PEM_F_I2B_PVK                                   137\r
-#define PEM_F_I2B_PVK_BIO                               138\r
-#define PEM_F_LOAD_IV                                   101\r
-#define PEM_F_PEM_ASN1_READ                             102\r
-#define PEM_F_PEM_ASN1_READ_BIO                                 103\r
-#define PEM_F_PEM_ASN1_WRITE                            104\r
-#define PEM_F_PEM_ASN1_WRITE_BIO                        105\r
-#define PEM_F_PEM_DEF_CALLBACK                          100\r
-#define PEM_F_PEM_DO_HEADER                             106\r
-#define PEM_F_PEM_F_PEM_WRITE_PKCS8PRIVATEKEY           118\r
-#define PEM_F_PEM_GET_EVP_CIPHER_INFO                   107\r
-#define PEM_F_PEM_PK8PKEY                               119\r
-#define PEM_F_PEM_READ                                  108\r
-#define PEM_F_PEM_READ_BIO                              109\r
-#define PEM_F_PEM_READ_BIO_PARAMETERS                   140\r
-#define PEM_F_PEM_READ_BIO_PRIVATEKEY                   123\r
-#define PEM_F_PEM_READ_PRIVATEKEY                       124\r
-#define PEM_F_PEM_SEALFINAL                             110\r
-#define PEM_F_PEM_SEALINIT                              111\r
-#define PEM_F_PEM_SIGNFINAL                             112\r
-#define PEM_F_PEM_WRITE                                         113\r
-#define PEM_F_PEM_WRITE_BIO                             114\r
-#define PEM_F_PEM_WRITE_PRIVATEKEY                      139\r
-#define PEM_F_PEM_X509_INFO_READ                        115\r
-#define PEM_F_PEM_X509_INFO_READ_BIO                    116\r
-#define PEM_F_PEM_X509_INFO_WRITE_BIO                   117\r
+# define PEM_F_B2I_DSS                                    127\r
+# define PEM_F_B2I_PVK_BIO                                128\r
+# define PEM_F_B2I_RSA                                    129\r
+# define PEM_F_CHECK_BITLEN_DSA                           130\r
+# define PEM_F_CHECK_BITLEN_RSA                           131\r
+# define PEM_F_D2I_PKCS8PRIVATEKEY_BIO                    120\r
+# define PEM_F_D2I_PKCS8PRIVATEKEY_FP                     121\r
+# define PEM_F_DO_B2I                                     132\r
+# define PEM_F_DO_B2I_BIO                                 133\r
+# define PEM_F_DO_BLOB_HEADER                             134\r
+# define PEM_F_DO_PK8PKEY                                 126\r
+# define PEM_F_DO_PK8PKEY_FP                              125\r
+# define PEM_F_DO_PVK_BODY                                135\r
+# define PEM_F_DO_PVK_HEADER                              136\r
+# define PEM_F_I2B_PVK                                    137\r
+# define PEM_F_I2B_PVK_BIO                                138\r
+# define PEM_F_LOAD_IV                                    101\r
+# define PEM_F_PEM_ASN1_READ                              102\r
+# define PEM_F_PEM_ASN1_READ_BIO                          103\r
+# define PEM_F_PEM_ASN1_WRITE                             104\r
+# define PEM_F_PEM_ASN1_WRITE_BIO                         105\r
+# define PEM_F_PEM_DEF_CALLBACK                           100\r
+# define PEM_F_PEM_DO_HEADER                              106\r
+# define PEM_F_PEM_F_PEM_WRITE_PKCS8PRIVATEKEY            118\r
+# define PEM_F_PEM_GET_EVP_CIPHER_INFO                    107\r
+# define PEM_F_PEM_PK8PKEY                                119\r
+# define PEM_F_PEM_READ                                   108\r
+# define PEM_F_PEM_READ_BIO                               109\r
+# define PEM_F_PEM_READ_BIO_DHPARAMS                      141\r
+# define PEM_F_PEM_READ_BIO_PARAMETERS                    140\r
+# define PEM_F_PEM_READ_BIO_PRIVATEKEY                    123\r
+# define PEM_F_PEM_READ_DHPARAMS                          142\r
+# define PEM_F_PEM_READ_PRIVATEKEY                        124\r
+# define PEM_F_PEM_SEALFINAL                              110\r
+# define PEM_F_PEM_SEALINIT                               111\r
+# define PEM_F_PEM_SIGNFINAL                              112\r
+# define PEM_F_PEM_WRITE                                  113\r
+# define PEM_F_PEM_WRITE_BIO                              114\r
+# define PEM_F_PEM_WRITE_PRIVATEKEY                       139\r
+# define PEM_F_PEM_X509_INFO_READ                         115\r
+# define PEM_F_PEM_X509_INFO_READ_BIO                     116\r
+# define PEM_F_PEM_X509_INFO_WRITE_BIO                    117\r
 \r
 /* Reason codes. */\r
-#define PEM_R_BAD_BASE64_DECODE                                 100\r
-#define PEM_R_BAD_DECRYPT                               101\r
-#define PEM_R_BAD_END_LINE                              102\r
-#define PEM_R_BAD_IV_CHARS                              103\r
-#define PEM_R_BAD_MAGIC_NUMBER                          116\r
-#define PEM_R_BAD_PASSWORD_READ                                 104\r
-#define PEM_R_BAD_VERSION_NUMBER                        117\r
-#define PEM_R_BIO_WRITE_FAILURE                                 118\r
-#define PEM_R_CIPHER_IS_NULL                            127\r
-#define PEM_R_ERROR_CONVERTING_PRIVATE_KEY              115\r
-#define PEM_R_EXPECTING_PRIVATE_KEY_BLOB                119\r
-#define PEM_R_EXPECTING_PUBLIC_KEY_BLOB                         120\r
-#define PEM_R_INCONSISTENT_HEADER                       121\r
-#define PEM_R_KEYBLOB_HEADER_PARSE_ERROR                122\r
-#define PEM_R_KEYBLOB_TOO_SHORT                                 123\r
-#define PEM_R_NOT_DEK_INFO                              105\r
-#define PEM_R_NOT_ENCRYPTED                             106\r
-#define PEM_R_NOT_PROC_TYPE                             107\r
-#define PEM_R_NO_START_LINE                             108\r
-#define PEM_R_PROBLEMS_GETTING_PASSWORD                         109\r
-#define PEM_R_PUBLIC_KEY_NO_RSA                                 110\r
-#define PEM_R_PVK_DATA_TOO_SHORT                        124\r
-#define PEM_R_PVK_TOO_SHORT                             125\r
-#define PEM_R_READ_KEY                                  111\r
-#define PEM_R_SHORT_HEADER                              112\r
-#define PEM_R_UNSUPPORTED_CIPHER                        113\r
-#define PEM_R_UNSUPPORTED_ENCRYPTION                    114\r
-#define PEM_R_UNSUPPORTED_KEY_COMPONENTS                126\r
+# define PEM_R_BAD_BASE64_DECODE                          100\r
+# define PEM_R_BAD_DECRYPT                                101\r
+# define PEM_R_BAD_END_LINE                               102\r
+# define PEM_R_BAD_IV_CHARS                               103\r
+# define PEM_R_BAD_MAGIC_NUMBER                           116\r
+# define PEM_R_BAD_PASSWORD_READ                          104\r
+# define PEM_R_BAD_VERSION_NUMBER                         117\r
+# define PEM_R_BIO_WRITE_FAILURE                          118\r
+# define PEM_R_CIPHER_IS_NULL                             127\r
+# define PEM_R_ERROR_CONVERTING_PRIVATE_KEY               115\r
+# define PEM_R_EXPECTING_PRIVATE_KEY_BLOB                 119\r
+# define PEM_R_EXPECTING_PUBLIC_KEY_BLOB                  120\r
+# define PEM_R_INCONSISTENT_HEADER                        121\r
+# define PEM_R_KEYBLOB_HEADER_PARSE_ERROR                 122\r
+# define PEM_R_KEYBLOB_TOO_SHORT                          123\r
+# define PEM_R_NOT_DEK_INFO                               105\r
+# define PEM_R_NOT_ENCRYPTED                              106\r
+# define PEM_R_NOT_PROC_TYPE                              107\r
+# define PEM_R_NO_START_LINE                              108\r
+# define PEM_R_PROBLEMS_GETTING_PASSWORD                  109\r
+# define PEM_R_PUBLIC_KEY_NO_RSA                          110\r
+# define PEM_R_PVK_DATA_TOO_SHORT                         124\r
+# define PEM_R_PVK_TOO_SHORT                              125\r
+# define PEM_R_READ_KEY                                   111\r
+# define PEM_R_SHORT_HEADER                               112\r
+# define PEM_R_UNSUPPORTED_CIPHER                         113\r
+# define PEM_R_UNSUPPORTED_ENCRYPTION                     114\r
+# define PEM_R_UNSUPPORTED_KEY_COMPONENTS                 126\r
 \r
 #ifdef  __cplusplus\r
 }\r