Fix no-stdio build
authorDavid Woodhouse <David.Woodhouse@intel.com>
Fri, 11 Sep 2015 18:56:32 +0000 (14:56 -0400)
committerRich Salz <rsalz@openssl.org>
Wed, 30 Sep 2015 01:59:19 +0000 (21:59 -0400)
Much related/similar work also done by
Ivan Nestlerode <ivan.nestlerode@sonos.com>

   +Replace FILE BIO's with dummy ops that fail.
   +Include <stdio.h> for sscanf() even with no-stdio (since the declaration
    is there). We rely on sscanf() to parse the OPENSSL_ia32cap environment
    variable, since it can be larger than a 'long'. And we don't rely on the
    availability of strtoull().
   +Remove OPENSSL_stderr(); not used.
   +Make OPENSSL_showfatal() do nothing (currently without stdio there's
    nothing we can do).
   +Remove file-based functionality from ssl/. The function
    prototypes were already gone, but not the functions themselves.
   +Remove unviable conf functionality via SYS_UEFI
   +Add fallback definition of BUFSIZ.
   +Remove functions taking FILE * from header files.
   +Add missing DECLARE_PEM_write_fp_const
   +Disable X509_LOOKUP_hash_dir(). X509_LOOKUP_file() was already compiled out,
    so remove its prototype.
   +Use OPENSSL_showfatal() in CRYPTO_destroy_dynlockid().
   +Eliminate SRP_VBASE_init() and supporting functions. Users will need to
    build the verifier manually instead.
   +Eliminate compiler warning for unused do_pk8pkey_fp().
   +Disable TEST_ENG_OPENSSL_PKEY.
   +Disable GOST engine as is uses [f]printf all over the place.
   +Eliminate compiler warning for unused send_fp_chars().

Signed-off-by: Rich Salz <rsalz@akamai.com>
Reviewed-by: Tim Hudson <tjh@openssl.org>
34 files changed:
CHANGES
Configure
crypto/asn1/Makefile
crypto/asn1/a_strex.c
crypto/asn1/tasn_utl.c
crypto/bio/bss_file.c
crypto/conf/conf_sap.c
crypto/cryptlib.c
crypto/des/read2pwd.c
crypto/ec/Makefile
crypto/ec/ec_key.c
crypto/engine/eng_openssl.c
crypto/include/internal/cryptlib.h
crypto/lock.c
crypto/pem/pem_pk8.c
crypto/ts/Makefile
crypto/ui/ui_util.c
crypto/x509/by_dir.c
crypto/x509/by_file.c
crypto/x509/x509_d2.c
e_os.h
include/openssl/bio.h
include/openssl/conf.h
include/openssl/pem.h
include/openssl/ssl.h
include/openssl/ts.h
include/openssl/x509_vfy.h
include/openssl/x509v3.h
ssl/ssl_cert.c
ssl/ssl_lib.c
ssl/ssl_rsa.c
test/Makefile
util/libeay.num
util/ssleay.num

diff --git a/CHANGES b/CHANGES
index 3aa9dc8..220ab60 100644 (file)
--- a/CHANGES
+++ b/CHANGES
@@ -9,7 +9,9 @@
      though the change is mostly in the more lenient direction, and
      legacy behaviour is preserved as much as possible.
      [Emilia K√§sper]
-
+  *) Fix no-stdio build.
+    [ David Woodhouse <David.Woodhouse@intel.com> and also
+      Ivan Nestlerode <ivan.nestlerode@sonos.com> ]
   *) New testing framework
      The testing framework has been largely rewritten and is now using
      perl and the perl modules Test::Harness and an extended variant of
index e1edfa9..b277957 100755 (executable)
--- a/Configure
+++ b/Configure
@@ -1086,7 +1086,7 @@ if (defined($disabled{"md5"}) || defined($disabled{"sha"})
 
 
 if (defined($disabled{"ec"}) || defined($disabled{"dsa"})
-    || defined($disabled{"dh"}))
+    || defined($disabled{"dh"}) || defined($disabled{"stdio"}))
        {
        $disabled{"gost"} = "forced";
        }
index b0d4e14..a6f1bac 100644 (file)
@@ -668,14 +668,16 @@ tasn_typ.o: ../../include/openssl/e_os2.h ../../include/openssl/opensslconf.h
 tasn_typ.o: ../../include/openssl/opensslv.h ../../include/openssl/ossl_typ.h
 tasn_typ.o: ../../include/openssl/safestack.h ../../include/openssl/stack.h
 tasn_typ.o: ../../include/openssl/symhacks.h tasn_typ.c
-tasn_utl.o: ../../include/openssl/asn1.h ../../include/openssl/asn1t.h
-tasn_utl.o: ../../include/openssl/bio.h ../../include/openssl/crypto.h
+tasn_utl.o: ../../e_os.h ../../include/openssl/asn1.h
+tasn_utl.o: ../../include/openssl/asn1t.h ../../include/openssl/bio.h
+tasn_utl.o: ../../include/openssl/buffer.h ../../include/openssl/crypto.h
 tasn_utl.o: ../../include/openssl/e_os2.h ../../include/openssl/err.h
 tasn_utl.o: ../../include/openssl/lhash.h ../../include/openssl/obj_mac.h
 tasn_utl.o: ../../include/openssl/objects.h ../../include/openssl/opensslconf.h
 tasn_utl.o: ../../include/openssl/opensslv.h ../../include/openssl/ossl_typ.h
 tasn_utl.o: ../../include/openssl/safestack.h ../../include/openssl/stack.h
-tasn_utl.o: ../../include/openssl/symhacks.h asn1_locl.h tasn_utl.c
+tasn_utl.o: ../../include/openssl/symhacks.h ../include/internal/cryptlib.h
+tasn_utl.o: asn1_locl.h tasn_utl.c
 x_algor.o: ../../include/openssl/asn1.h ../../include/openssl/asn1t.h
 x_algor.o: ../../include/openssl/bio.h ../../include/openssl/buffer.h
 x_algor.o: ../../include/openssl/crypto.h ../../include/openssl/e_os2.h
index 2f233a2..c9d3cea 100644 (file)
@@ -92,6 +92,7 @@ static int send_bio_chars(void *arg, const void *buf, int len)
     return 1;
 }
 
+#ifndef OPENSSL_NO_STDIO
 static int send_fp_chars(void *arg, const void *buf, int len)
 {
     if (!arg)
@@ -100,6 +101,7 @@ static int send_fp_chars(void *arg, const void *buf, int len)
         return 0;
     return 1;
 }
+#endif
 
 typedef int char_io (void *arg, const void *buf, int len);
 
index 76e9605..8b62341 100644 (file)
@@ -59,6 +59,7 @@
 
 #include <stddef.h>
 #include <string.h>
+#include <internal/cryptlib.h>
 #include <openssl/asn1.h>
 #include <openssl/asn1t.h>
 #include <openssl/objects.h>
index 8f22ef7..7692ee2 100644 (file)
@@ -467,6 +467,60 @@ static int file_puts(BIO *bp, const char *str)
     return (ret);
 }
 
+#else
+
+static int file_write(BIO *b, const char *in, int inl)
+{
+    return -1;
+}
+static int file_read(BIO *b, char *out, int outl)
+{
+    return -1;
+}
+static int file_puts(BIO *bp, const char *str)
+{
+    return -1;
+}
+static int file_gets(BIO *bp, char *buf, int size)
+{
+    return 0;
+}
+static long file_ctrl(BIO *b, int cmd, long num, void *ptr)
+{
+    return 0;
+}
+static int file_new(BIO *bi)
+{
+    return 0;
+}
+static int file_free(BIO *a)
+{
+    return 0;
+}
+
+static BIO_METHOD methods_filep = {
+    BIO_TYPE_FILE,
+    "FILE pointer",
+    file_write,
+    file_read,
+    file_puts,
+    file_gets,
+    file_ctrl,
+    file_new,
+    file_free,
+    NULL,
+};
+
+BIO_METHOD *BIO_s_file(void)
+{
+    return (&methods_filep);
+}
+
+BIO *BIO_new_file(const char *filename, const char *mode)
+{
+    return NULL;
+}
+
 # endif                         /* OPENSSL_NO_STDIO */
 
 #endif                          /* HEADER_BSS_FILE_C */
index e99a38e..308989b 100644 (file)
@@ -87,9 +87,11 @@ void OPENSSL_config(const char *config_name)
     ENGINE_load_builtin_engines();
 #endif
     ERR_clear_error();
+#ifndef OPENSSL_SYS_UEFI
     CONF_modules_load_file(NULL, config_name,
                                CONF_MFLAGS_DEFAULT_SECTION |
                                CONF_MFLAGS_IGNORE_MISSING_FILE);
+#endif
 }
 
 void OPENSSL_no_config()
index f0aaae6..a9f9697 100644 (file)
@@ -129,6 +129,7 @@ unsigned int *OPENSSL_ia32cap_loc(void)
 }
 
 # if defined(OPENSSL_CPUID_OBJ) && !defined(OPENSSL_NO_ASM) && !defined(I386_ONLY)
+#include <stdio.h>
 #  define OPENSSL_CPUID_SETUP
 typedef uint64_t IA32CAP;
 void OPENSSL_cpuid_setup(void)
@@ -432,11 +433,13 @@ void OPENSSL_showfatal(const char *fmta, ...)
 #else
 void OPENSSL_showfatal(const char *fmta, ...)
 {
+#ifndef OPENSSL_NO_STDIO
     va_list ap;
 
     va_start(ap, fmta);
     vfprintf(stderr, fmta, ap);
     va_end(ap);
+#endif
 }
 
 int OPENSSL_isservice(void)
@@ -463,11 +466,6 @@ void OpenSSLDie(const char *file, int line, const char *assertion)
 #endif
 }
 
-void *OPENSSL_stderr(void)
-{
-    return stderr;
-}
-
 int CRYPTO_memcmp(const void *in_a, const void *in_b, size_t len)
 {
     size_t i;
index 01e275f..7633139 100644 (file)
 #include <openssl/ui.h>
 #include <openssl/crypto.h>
 
+#ifndef BUFSIZ
+#define BUFSIZ 256
+#endif
+
 int DES_read_password(DES_cblock *key, const char *prompt, int verify)
 {
     int ok;
index 9ad71f6..18e9610 100644 (file)
@@ -169,14 +169,15 @@ ec_err.o: ../../include/openssl/lhash.h ../../include/openssl/opensslconf.h
 ec_err.o: ../../include/openssl/opensslv.h ../../include/openssl/ossl_typ.h
 ec_err.o: ../../include/openssl/safestack.h ../../include/openssl/stack.h
 ec_err.o: ../../include/openssl/symhacks.h ec_err.c
-ec_key.o: ../../include/openssl/asn1.h ../../include/openssl/bio.h
-ec_key.o: ../../include/openssl/bn.h ../../include/openssl/crypto.h
-ec_key.o: ../../include/openssl/e_os2.h ../../include/openssl/ec.h
-ec_key.o: ../../include/openssl/err.h ../../include/openssl/lhash.h
-ec_key.o: ../../include/openssl/obj_mac.h ../../include/openssl/opensslconf.h
-ec_key.o: ../../include/openssl/opensslv.h ../../include/openssl/ossl_typ.h
-ec_key.o: ../../include/openssl/safestack.h ../../include/openssl/stack.h
-ec_key.o: ../../include/openssl/symhacks.h ec_key.c ec_lcl.h
+ec_key.o: ../../e_os.h ../../include/openssl/asn1.h ../../include/openssl/bio.h
+ec_key.o: ../../include/openssl/bn.h ../../include/openssl/buffer.h
+ec_key.o: ../../include/openssl/crypto.h ../../include/openssl/e_os2.h
+ec_key.o: ../../include/openssl/ec.h ../../include/openssl/err.h
+ec_key.o: ../../include/openssl/lhash.h ../../include/openssl/obj_mac.h
+ec_key.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h
+ec_key.o: ../../include/openssl/ossl_typ.h ../../include/openssl/safestack.h
+ec_key.o: ../../include/openssl/stack.h ../../include/openssl/symhacks.h
+ec_key.o: ../include/internal/cryptlib.h ec_key.c ec_lcl.h
 ec_lib.o: ../../include/openssl/asn1.h ../../include/openssl/bio.h
 ec_lib.o: ../../include/openssl/bn.h ../../include/openssl/crypto.h
 ec_lib.o: ../../include/openssl/e_os2.h ../../include/openssl/ec.h
index 2380097..ddb3257 100644 (file)
@@ -61,6 +61,7 @@
  * contributed to the OpenSSL project.
  */
 
+#include <internal/cryptlib.h>
 #include <string.h>
 #include "ec_lcl.h"
 #include <openssl/err.h>
index 4bc9b2e..095b5a0 100644 (file)
@@ -89,7 +89,9 @@
  * this is no longer automatic in ENGINE_load_builtin_engines().
  */
 #define TEST_ENG_OPENSSL_RC4
+#ifndef OPENSSL_NO_STDIO
 #define TEST_ENG_OPENSSL_PKEY
+#endif
 /* #define TEST_ENG_OPENSSL_HMAC */
 /* #define TEST_ENG_OPENSSL_HMAC_INIT */
 /* #define TEST_ENG_OPENSSL_RC4_OTHERS */
index fba180a..d7018b6 100644 (file)
@@ -101,7 +101,6 @@ extern "C" {
 void OPENSSL_cpuid_setup(void);
 extern unsigned int OPENSSL_ia32cap_P[];
 void OPENSSL_showfatal(const char *fmta, ...);
-void *OPENSSL_stderr(void);
 extern int OPENSSL_NONPIC_relocated;
 
 #ifdef  __cplusplus
index d7d672d..12e4323 100644 (file)
@@ -309,8 +309,7 @@ void CRYPTO_destroy_dynlockid(int i)
         --pointer->references;
 #ifdef REF_CHECK
         if (pointer->references < 0) {
-            fprintf(stderr,
-                    "CRYPTO_destroy_dynlockid, bad reference count\n");
+            OPENSSL_showfatal("CRYPTO_destroy_dynlockid, bad reference count\n");
             abort();
         } else
 #endif
index ef5131f..e238b95 100644 (file)
 static int do_pk8pkey(BIO *bp, EVP_PKEY *x, int isder,
                       int nid, const EVP_CIPHER *enc,
                       char *kstr, int klen, pem_password_cb *cb, void *u);
+
+#ifndef OPENSSL_NO_STDIO
 static int do_pk8pkey_fp(FILE *bp, EVP_PKEY *x, int isder,
                          int nid, const EVP_CIPHER *enc,
                          char *kstr, int klen, pem_password_cb *cb, void *u);
-
+#endif
 /*
  * These functions write a private key in PKCS#8 format: it is a "drop in"
  * replacement for PEM_write_bio_PrivateKey() and friends. As usual if 'enc'
index 754b89a..76d1aea 100644 (file)
@@ -207,7 +207,7 @@ ts_rsp_sign.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
 ts_rsp_sign.o: ../../include/openssl/symhacks.h ../../include/openssl/ts.h
 ts_rsp_sign.o: ../../include/openssl/x509.h ../../include/openssl/x509_vfy.h
 ts_rsp_sign.o: ../../include/openssl/x509v3.h ../include/internal/cryptlib.h
-ts_rsp_sign.o: ../include/internal/x509_int.h ts_lcl.h ts_rsp_sign.c
+ts_rsp_sign.o: ts_lcl.h ts_rsp_sign.c
 ts_rsp_utils.o: ../../e_os.h ../../include/openssl/asn1.h
 ts_rsp_utils.o: ../../include/openssl/bio.h ../../include/openssl/buffer.h
 ts_rsp_utils.o: ../../include/openssl/conf.h ../../include/openssl/crypto.h
@@ -243,7 +243,7 @@ ts_rsp_verify.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
 ts_rsp_verify.o: ../../include/openssl/symhacks.h ../../include/openssl/ts.h
 ts_rsp_verify.o: ../../include/openssl/x509.h ../../include/openssl/x509_vfy.h
 ts_rsp_verify.o: ../../include/openssl/x509v3.h ../include/internal/cryptlib.h
-ts_rsp_verify.o: ../include/internal/x509_int.h ts_lcl.h ts_rsp_verify.c
+ts_rsp_verify.o: ts_lcl.h ts_rsp_verify.c
 ts_verify_ctx.o: ../../e_os.h ../../include/openssl/asn1.h
 ts_verify_ctx.o: ../../include/openssl/bio.h ../../include/openssl/buffer.h
 ts_verify_ctx.o: ../../include/openssl/conf.h ../../include/openssl/crypto.h
index f65f80d..b18e2a2 100644 (file)
 #include <string.h>
 #include "ui_locl.h"
 
+#ifndef BUFSIZ
+#define BUFSIZ 256
+#endif
+
 int UI_UTIL_read_pw_string(char *buf, int length, const char *prompt,
                            int verify)
 {
index 5241cad..3dd04d0 100644 (file)
@@ -69,6 +69,7 @@
 # include <sys/stat.h>
 #endif
 
+
 #include <openssl/lhash.h>
 #include <openssl/x509.h>
 #include "internal/x509_int.h"
index 6fbffe1..7983b15 100644 (file)
@@ -66,8 +66,6 @@
 #include <openssl/x509.h>
 #include <openssl/pem.h>
 
-#ifndef OPENSSL_NO_STDIO
-
 static int by_file_ctrl(X509_LOOKUP *ctx, int cmd, const char *argc,
                         long argl, char **ret);
 static X509_LOOKUP_METHOD x509_file_lookup = {
@@ -269,5 +267,3 @@ int X509_load_cert_crl_file(X509_LOOKUP *ctx, const char *file, int type)
     sk_X509_INFO_pop_free(inf, X509_INFO_free);
     return count;
 }
-
-#endif                          /* OPENSSL_NO_STDIO */
index 29bbf50..e3d0863 100644 (file)
@@ -61,7 +61,6 @@
 #include <openssl/crypto.h>
 #include <openssl/x509.h>
 
-#ifndef OPENSSL_NO_STDIO
 int X509_STORE_set_default_paths(X509_STORE *ctx)
 {
     X509_LOOKUP *lookup;
@@ -105,5 +104,3 @@ int X509_STORE_load_locations(X509_STORE *ctx, const char *file,
         return (0);
     return (1);
 }
-
-#endif
diff --git a/e_os.h b/e_os.h
index b3a3338..8c4223b 100644 (file)
--- a/e_os.h
+++ b/e_os.h
@@ -76,6 +76,12 @@ extern "C" {
 #  undef REF_PRINT
 #  define REF_PRINT(a,b)  fprintf(stderr,"%08X:%4d:%s\n",(int)b,b->references,a)
 # endif
+# if defined(OPENSSL_NO_STDIO) && defined(REF_CHECK)
+#  error "Cannot have REF_CHECK with no-stdio"
+# endif
+# if defined(OPENSSL_NO_STDIO) && defined(REF_PRINT)
+#  error "Cannot have REF_PRINT with no-stdio"
+# endif
 
 # ifndef DEVRANDOM
 /*
index 75d052f..0577bd8 100644 (file)
@@ -633,11 +633,11 @@ int BIO_asn1_set_suffix(BIO *b, asn1_ps_func *suffix,
 int BIO_asn1_get_suffix(BIO *b, asn1_ps_func **psuffix,
                         asn1_ps_func **psuffix_free);
 
-# ifndef OPENSSL_NO_STDIO
 BIO_METHOD *BIO_s_file(void);
 BIO *BIO_new_file(const char *filename, const char *mode);
+# define BIO_s_file_internal    BIO_s_file
+# ifndef OPENSSL_NO_STDIO
 BIO *BIO_new_fp(FILE *stream, int close_flag);
-#  define BIO_s_file_internal    BIO_s_file
 # endif
 BIO *BIO_new(BIO_METHOD *type);
 int BIO_set(BIO *a, BIO_METHOD *type);
index 06c7601..c111464 100644 (file)
@@ -133,7 +133,9 @@ char *CONF_get_string(LHASH_OF(CONF_VALUE) *conf, const char *group,
 long CONF_get_number(LHASH_OF(CONF_VALUE) *conf, const char *group,
                      const char *name);
 void CONF_free(LHASH_OF(CONF_VALUE) *conf);
+#ifndef OPENSSL_NO_STDIO
 int CONF_dump_fp(LHASH_OF(CONF_VALUE) *conf, FILE *out);
+#endif
 int CONF_dump_bio(LHASH_OF(CONF_VALUE) *conf, BIO *out);
 
 void OPENSSL_config(const char *config_name);
@@ -166,7 +168,9 @@ STACK_OF(CONF_VALUE) *NCONF_get_section(const CONF *conf,
 char *NCONF_get_string(const CONF *conf, const char *group, const char *name);
 int NCONF_get_number_e(const CONF *conf, const char *group, const char *name,
                        long *result);
+#ifndef OPENSSL_NO_STDIO
 int NCONF_dump_fp(const CONF *conf, FILE *out);
+#endif
 int NCONF_dump_bio(const CONF *conf, BIO *out);
 
 #define NCONF_get_number(c,g,n,r) NCONF_get_number_e(c,g,n,r)
index a1e5166..f9e23d2 100644 (file)
@@ -284,6 +284,7 @@ int PEM_write_bio_##name(BIO *bp, type *x, const EVP_CIPHER *enc, \
 
 #  define DECLARE_PEM_read_fp(name, type) /**/
 #  define DECLARE_PEM_write_fp(name, type) /**/
+#  define DECLARE_PEM_write_fp_const(name, type) /**/
 #  define DECLARE_PEM_write_cb_fp(name, type) /**/
 # else
 
@@ -361,6 +362,7 @@ int PEM_X509_INFO_write_bio(BIO *bp, X509_INFO *xi, EVP_CIPHER *enc,
                             unsigned char *kstr, int klen,
                             pem_password_cb *cd, void *u);
 
+#ifndef OPENSSL_NO_STDIO
 int PEM_read(FILE *fp, char **name, char **header,
              unsigned char **data, long *len);
 int PEM_write(FILE *fp, const char *name, const char *hdr,
@@ -372,6 +374,7 @@ int PEM_ASN1_write(i2d_of_void *i2d, const char *name, FILE *fp,
                    int klen, pem_password_cb *callback, void *u);
 STACK_OF(X509_INFO) *PEM_X509_INFO_read(FILE *fp, STACK_OF(X509_INFO) *sk,
                                         pem_password_cb *cb, void *u);
+#endif
 
 int PEM_SealInit(PEM_ENCODE_SEAL_CTX *ctx, EVP_CIPHER *type,
                  EVP_MD *md_type, unsigned char **ek, int *ekl,
@@ -437,6 +440,7 @@ int i2d_PKCS8PrivateKey_nid_bio(BIO *bp, EVP_PKEY *x, int nid,
 EVP_PKEY *d2i_PKCS8PrivateKey_bio(BIO *bp, EVP_PKEY **x, pem_password_cb *cb,
                                   void *u);
 
+#ifndef OPENSSL_NO_STDIO
 int i2d_PKCS8PrivateKey_fp(FILE *fp, EVP_PKEY *x, const EVP_CIPHER *enc,
                            char *kstr, int klen,
                            pem_password_cb *cb, void *u);
@@ -453,7 +457,7 @@ EVP_PKEY *d2i_PKCS8PrivateKey_fp(FILE *fp, EVP_PKEY **x, pem_password_cb *cb,
 int PEM_write_PKCS8PrivateKey(FILE *fp, EVP_PKEY *x, const EVP_CIPHER *enc,
                               char *kstr, int klen, pem_password_cb *cd,
                               void *u);
-
+#endif
 EVP_PKEY *PEM_read_bio_Parameters(BIO *bp, EVP_PKEY **x);
 int PEM_write_bio_Parameters(BIO *bp, EVP_PKEY *x);
 
index 04ef4d4..d488aa5 100644 (file)
@@ -1386,11 +1386,8 @@ __owur int SSL_use_certificate_ASN1(SSL *ssl, const unsigned char *d, int len);
 /* Set serverinfo data for the current active cert. */
 __owur int SSL_CTX_use_serverinfo(SSL_CTX *ctx, const unsigned char *serverinfo,
                            size_t serverinfo_length);
-# ifndef OPENSSL_NO_STDIO
 __owur int SSL_CTX_use_serverinfo_file(SSL_CTX *ctx, const char *file);
-# endif                        /* NO_STDIO */
 
-# ifndef OPENSSL_NO_STDIO
 __owur int SSL_use_RSAPrivateKey_file(SSL *ssl, const char *file, int type);
 __owur int SSL_use_PrivateKey_file(SSL *ssl, const char *file, int type);
 __owur int SSL_use_certificate_file(SSL *ssl, const char *file, int type);
@@ -1403,11 +1400,9 @@ __owur int SSL_use_certificate_chain_file(SSL *ssl, const char *file);
 __owur STACK_OF(X509_NAME) *SSL_load_client_CA_file(const char *file);
 __owur int SSL_add_file_cert_subjects_to_stack(STACK_OF(X509_NAME) *stackCAs,
                                         const char *file);
-#  ifndef OPENSSL_SYS_VMS
+# ifndef OPENSSL_SYS_VMS
 int SSL_add_dir_cert_subjects_to_stack(STACK_OF(X509_NAME) *stackCAs,
                                        const char *dir);
-#  endif
-
 # endif
 
 void SSL_load_error_strings(void);
index d66b49d..f74fce7 100644 (file)
@@ -133,8 +133,10 @@ TS_REQ *d2i_TS_REQ(TS_REQ **a, const unsigned char **pp, long length);
 
 TS_REQ *TS_REQ_dup(TS_REQ *a);
 
+#ifndef OPENSSL_NO_STDIO
 TS_REQ *d2i_TS_REQ_fp(FILE *fp, TS_REQ **a);
 int i2d_TS_REQ_fp(FILE *fp, TS_REQ *a);
+#endif
 TS_REQ *d2i_TS_REQ_bio(BIO *fp, TS_REQ **a);
 int i2d_TS_REQ_bio(BIO *fp, TS_REQ *a);
 
@@ -146,10 +148,12 @@ TS_MSG_IMPRINT *d2i_TS_MSG_IMPRINT(TS_MSG_IMPRINT **a,
 
 TS_MSG_IMPRINT *TS_MSG_IMPRINT_dup(TS_MSG_IMPRINT *a);
 
+#ifndef OPENSSL_NO_STDIO
 TS_MSG_IMPRINT *d2i_TS_MSG_IMPRINT_fp(FILE *fp, TS_MSG_IMPRINT **a);
 int i2d_TS_MSG_IMPRINT_fp(FILE *fp, TS_MSG_IMPRINT *a);
-TS_MSG_IMPRINT *d2i_TS_MSG_IMPRINT_bio(BIO *fp, TS_MSG_IMPRINT **a);
-int i2d_TS_MSG_IMPRINT_bio(BIO *fp, TS_MSG_IMPRINT *a);
+#endif
+TS_MSG_IMPRINT *d2i_TS_MSG_IMPRINT_bio(BIO *bio, TS_MSG_IMPRINT **a);
+int i2d_TS_MSG_IMPRINT_bio(BIO *bio, TS_MSG_IMPRINT *a);
 
 TS_RESP *TS_RESP_new(void);
 void TS_RESP_free(TS_RESP *a);
@@ -158,10 +162,12 @@ TS_RESP *d2i_TS_RESP(TS_RESP **a, const unsigned char **pp, long length);
 TS_TST_INFO *PKCS7_to_TS_TST_INFO(PKCS7 *token);
 TS_RESP *TS_RESP_dup(TS_RESP *a);
 
+#ifndef OPENSSL_NO_STDIO
 TS_RESP *d2i_TS_RESP_fp(FILE *fp, TS_RESP **a);
 int i2d_TS_RESP_fp(FILE *fp, TS_RESP *a);
-TS_RESP *d2i_TS_RESP_bio(BIO *fp, TS_RESP **a);
-int i2d_TS_RESP_bio(BIO *fp, TS_RESP *a);
+#endif
+TS_RESP *d2i_TS_RESP_bio(BIO *bio, TS_RESP **a);
+int i2d_TS_RESP_bio(BIO *bio, TS_RESP *a);
 
 TS_STATUS_INFO *TS_STATUS_INFO_new(void);
 void TS_STATUS_INFO_free(TS_STATUS_INFO *a);
@@ -177,10 +183,12 @@ TS_TST_INFO *d2i_TS_TST_INFO(TS_TST_INFO **a, const unsigned char **pp,
                              long length);
 TS_TST_INFO *TS_TST_INFO_dup(TS_TST_INFO *a);
 
+#ifndef OPENSSL_NO_STDIO
 TS_TST_INFO *d2i_TS_TST_INFO_fp(FILE *fp, TS_TST_INFO **a);
 int i2d_TS_TST_INFO_fp(FILE *fp, TS_TST_INFO *a);
-TS_TST_INFO *d2i_TS_TST_INFO_bio(BIO *fp, TS_TST_INFO **a);
-int i2d_TS_TST_INFO_bio(BIO *fp, TS_TST_INFO *a);
+#endif
+TS_TST_INFO *d2i_TS_TST_INFO_bio(BIO *bio, TS_TST_INFO **a);
+int i2d_TS_TST_INFO_bio(BIO *bio, TS_TST_INFO *a);
 
 TS_ACCURACY *TS_ACCURACY_new(void);
 void TS_ACCURACY_free(TS_ACCURACY *a);
index c78ba98..5d06b0d 100644 (file)
@@ -461,7 +461,6 @@ void X509_STORE_CTX_cleanup(X509_STORE_CTX *ctx);
 X509_STORE *X509_STORE_CTX_get0_store(X509_STORE_CTX *ctx);
 
 X509_LOOKUP *X509_STORE_add_lookup(X509_STORE *v, X509_LOOKUP_METHOD *m);
-
 X509_LOOKUP_METHOD *X509_LOOKUP_hash_dir(void);
 X509_LOOKUP_METHOD *X509_LOOKUP_file(void);
 
@@ -474,11 +473,9 @@ int X509_STORE_get_by_subject(X509_STORE_CTX *vs, int type, X509_NAME *name,
 int X509_LOOKUP_ctrl(X509_LOOKUP *ctx, int cmd, const char *argc,
                      long argl, char **ret);
 
-# ifndef OPENSSL_NO_STDIO
 int X509_load_cert_file(X509_LOOKUP *ctx, const char *file, int type);
 int X509_load_crl_file(X509_LOOKUP *ctx, const char *file, int type);
 int X509_load_cert_crl_file(X509_LOOKUP *ctx, const char *file, int type);
-# endif
 
 X509_LOOKUP *X509_LOOKUP_new(X509_LOOKUP_METHOD *method);
 void X509_LOOKUP_free(X509_LOOKUP *ctx);
@@ -494,11 +491,9 @@ int X509_LOOKUP_by_alias(X509_LOOKUP *ctx, int type, char *str, int len,
                          X509_OBJECT *ret);
 int X509_LOOKUP_shutdown(X509_LOOKUP *ctx);
 
-# ifndef OPENSSL_NO_STDIO
 int X509_STORE_load_locations(X509_STORE *ctx,
                               const char *file, const char *dir);
 int X509_STORE_set_default_paths(X509_STORE *ctx);
-# endif
 
 int X509_STORE_CTX_get_ex_new_index(long argl, void *argp,
                                     CRYPTO_EX_new *new_func,
index 3898426..9a68b73 100644 (file)
@@ -684,8 +684,9 @@ void X509V3_EXT_val_prn(BIO *out, STACK_OF(CONF_VALUE) *val, int indent,
                         int ml);
 int X509V3_EXT_print(BIO *out, X509_EXTENSION *ext, unsigned long flag,
                      int indent);
+#ifndef OPENSSL_NO_STDIO
 int X509V3_EXT_print_fp(FILE *out, X509_EXTENSION *ext, int flag, int indent);
-
+#endif
 int X509V3_extensions_print(BIO *out, char *title,
                             STACK_OF(X509_EXTENSION) *exts,
                             unsigned long flag, int indent);
index ecef7bd..fb8a9f9 100644 (file)
@@ -672,7 +672,6 @@ static int xname_cmp(const X509_NAME *const *a, const X509_NAME *const *b)
     return (X509_NAME_cmp(*a, *b));
 }
 
-#ifndef OPENSSL_NO_STDIO
 /**
  * Load CA certs from a file into a ::STACK. Note that it is somewhat misnamed;
  * it doesn't really have anything to do with clients (except that a common use
@@ -736,7 +735,6 @@ STACK_OF(X509_NAME) *SSL_load_client_CA_file(const char *file)
         ERR_clear_error();
     return (ret);
 }
-#endif
 
 /**
  * Add a file of certs to a stack.
index b68f16d..e80d5f1 100644 (file)
@@ -2781,7 +2781,6 @@ SSL_CTX *SSL_set_SSL_CTX(SSL *ssl, SSL_CTX *ctx)
     return (ssl->ctx);
 }
 
-#ifndef OPENSSL_NO_STDIO
 int SSL_CTX_set_default_verify_paths(SSL_CTX *ctx)
 {
     return (X509_STORE_set_default_paths(ctx->cert_store));
@@ -2823,7 +2822,6 @@ int SSL_CTX_load_verify_locations(SSL_CTX *ctx, const char *CAfile,
 {
     return (X509_STORE_load_locations(ctx->cert_store, CAfile, CApath));
 }
-#endif
 
 void SSL_set_info_callback(SSL *ssl,
                            void (*cb) (const SSL *ssl, int type, int val))
index f23137c..9a3e0ec 100644 (file)
@@ -911,7 +911,6 @@ int SSL_CTX_use_serverinfo(SSL_CTX *ctx, const unsigned char *serverinfo,
     return 1;
 }
 
-#ifndef OPENSSL_NO_STDIO
 int SSL_CTX_use_serverinfo_file(SSL_CTX *ctx, const char *file)
 {
     unsigned char *serverinfo = NULL;
@@ -1001,4 +1000,3 @@ int SSL_CTX_use_serverinfo_file(SSL_CTX *ctx, const char *file)
     BIO_free(bin);
     return ret;
 }
-#endif                         /* OPENSSL_NO_STDIO */
index 6f32758..5c695cd 100644 (file)
@@ -524,21 +524,8 @@ gmdifftest.o: ../include/openssl/opensslconf.h ../include/openssl/opensslv.h
 gmdifftest.o: ../include/openssl/ossl_typ.h ../include/openssl/safestack.h
 gmdifftest.o: ../include/openssl/stack.h ../include/openssl/symhacks.h
 gmdifftest.o: gmdifftest.c
-gost2814789test.o: ../e_os.h ../engines/ccgost/gost89.h
-gost2814789test.o: ../include/openssl/asn1.h ../include/openssl/bio.h
-gost2814789test.o: ../include/openssl/buffer.h ../include/openssl/conf.h
-gost2814789test.o: ../include/openssl/crypto.h ../include/openssl/e_os2.h
-gost2814789test.o: ../include/openssl/ec.h ../include/openssl/ecdh.h
-gost2814789test.o: ../include/openssl/ecdsa.h ../include/openssl/engine.h
-gost2814789test.o: ../include/openssl/err.h ../include/openssl/evp.h
-gost2814789test.o: ../include/openssl/hmac.h ../include/openssl/lhash.h
-gost2814789test.o: ../include/openssl/obj_mac.h ../include/openssl/objects.h
-gost2814789test.o: ../include/openssl/opensslconf.h
-gost2814789test.o: ../include/openssl/opensslv.h ../include/openssl/ossl_typ.h
-gost2814789test.o: ../include/openssl/pkcs7.h ../include/openssl/safestack.h
-gost2814789test.o: ../include/openssl/sha.h ../include/openssl/stack.h
-gost2814789test.o: ../include/openssl/symhacks.h ../include/openssl/x509.h
-gost2814789test.o: ../include/openssl/x509_vfy.h gost2814789test.c
+gost2814789test.o: ../include/openssl/e_os2.h ../include/openssl/opensslconf.h
+gost2814789test.o: gost2814789test.c
 heartbeat_test.o: ../e_os.h ../include/openssl/asn1.h ../include/openssl/bio.h
 heartbeat_test.o: ../include/openssl/bn.h ../include/openssl/buffer.h
 heartbeat_test.o: ../include/openssl/comp.h ../include/openssl/crypto.h
index 1ae0f8e..1d9e2a5 100755 (executable)
@@ -75,7 +75,7 @@ BIO_new                                 78    EXIST::FUNCTION:
 BIO_new_accept                          79     EXIST::FUNCTION:
 BIO_new_connect                         80     EXIST::FUNCTION:
 BIO_new_fd                              81     EXIST::FUNCTION:
-BIO_new_file                            82     EXIST::FUNCTION:STDIO
+BIO_new_file                            82     EXIST::FUNCTION:
 BIO_new_fp                              83     EXIST::FUNCTION:STDIO
 BIO_new_socket                          84     EXIST::FUNCTION:
 BIO_pop                                 85     EXIST::FUNCTION:
@@ -86,7 +86,7 @@ BIO_read                                89    EXIST::FUNCTION:
 BIO_s_accept                            90     EXIST::FUNCTION:
 BIO_s_connect                           91     EXIST::FUNCTION:
 BIO_s_fd                                92     EXIST::FUNCTION:
-BIO_s_file                              93     EXIST::FUNCTION:STDIO
+BIO_s_file                              93     EXIST::FUNCTION:
 BIO_s_mem                               95     EXIST::FUNCTION:
 BIO_s_null                              96     EXIST::FUNCTION:
 BIO_s_proxy_client                      97     NOEXIST::FUNCTION:
@@ -356,9 +356,9 @@ OBJ_nid2sn                              363 EXIST::FUNCTION:
 OBJ_obj2nid                             364    EXIST::FUNCTION:
 OBJ_sn2nid                              365    EXIST::FUNCTION:
 OBJ_txt2nid                             366    EXIST::FUNCTION:
-PEM_ASN1_read                           367    EXIST::FUNCTION:
+PEM_ASN1_read                           367    EXIST::FUNCTION:STDIO
 PEM_ASN1_read_bio                       368    EXIST::FUNCTION:
-PEM_ASN1_write                          369    EXIST::FUNCTION:
+PEM_ASN1_write                          369    EXIST::FUNCTION:STDIO
 PEM_ASN1_write_bio                      370    EXIST::FUNCTION:
 PEM_SealFinal                           371    EXIST::FUNCTION:RSA
 PEM_SealInit                            372    EXIST::FUNCTION:RSA
@@ -366,14 +366,14 @@ PEM_SealUpdate                          373       EXIST::FUNCTION:RSA
 PEM_SignFinal                           374    EXIST::FUNCTION:
 PEM_SignInit                            375    EXIST::FUNCTION:
 PEM_SignUpdate                          376    EXIST::FUNCTION:
-PEM_X509_INFO_read                      377    EXIST::FUNCTION:
+PEM_X509_INFO_read                      377    EXIST::FUNCTION:STDIO
 PEM_X509_INFO_read_bio                  378    EXIST::FUNCTION:
 PEM_X509_INFO_write_bio                 379    EXIST::FUNCTION:
 PEM_dek_info                            380    EXIST::FUNCTION:
 PEM_do_header                           381    EXIST::FUNCTION:
 PEM_get_EVP_CIPHER_INFO                 382    EXIST::FUNCTION:
 PEM_proc_type                           383    EXIST::FUNCTION:
-PEM_read                                384    EXIST::FUNCTION:
+PEM_read                                384    EXIST::FUNCTION:STDIO
 PEM_read_DHparams                       385    EXIST::FUNCTION:DH
 PEM_read_DSAPrivateKey                  386    EXIST::FUNCTION:DSA
 PEM_read_DSAparams                      387    EXIST::FUNCTION:DSA
@@ -393,7 +393,7 @@ PEM_read_bio_RSAPrivateKey              400 EXIST::FUNCTION:RSA
 PEM_read_bio_X509                       401    EXIST::FUNCTION:
 PEM_read_bio_X509_CRL                   402    EXIST::FUNCTION:
 PEM_read_bio_X509_REQ                   403    EXIST::FUNCTION:
-PEM_write                               404    EXIST::FUNCTION:
+PEM_write                               404    EXIST::FUNCTION:STDIO
 PEM_write_DHparams                      405    EXIST::FUNCTION:DH
 PEM_write_DSAPrivateKey                 406    EXIST::FUNCTION:DSA
 PEM_write_DSAparams                     407    EXIST::FUNCTION:DSA
@@ -618,9 +618,9 @@ X509_STORE_add_cert                     624 EXIST::FUNCTION:
 X509_STORE_add_lookup                   625    EXIST::FUNCTION:
 X509_STORE_free                         626    EXIST::FUNCTION:
 X509_STORE_get_by_subject               627    EXIST::FUNCTION:
-X509_STORE_load_locations               628    EXIST::FUNCTION:STDIO
+X509_STORE_load_locations               628    EXIST::FUNCTION:
 X509_STORE_new                          629    EXIST::FUNCTION:
-X509_STORE_set_default_paths            630    EXIST::FUNCTION:STDIO
+X509_STORE_set_default_paths            630    EXIST::FUNCTION:
 X509_VAL_free                           631    EXIST::FUNCTION:
 X509_VAL_new                            632    EXIST::FUNCTION:
 X509_add_ext                            633    EXIST::FUNCTION:
@@ -653,7 +653,7 @@ X509_issuer_and_serial_cmp              659 EXIST::FUNCTION:
 X509_issuer_and_serial_hash             660    EXIST::FUNCTION:
 X509_issuer_name_cmp                    661    EXIST::FUNCTION:
 X509_issuer_name_hash                   662    EXIST::FUNCTION:
-X509_load_cert_file                     663    EXIST::FUNCTION:STDIO
+X509_load_cert_file                     663    EXIST::FUNCTION:
 X509_new                                664    EXIST::FUNCTION:
 X509_print                              665    EXIST::FUNCTION:
 X509_print_fp                           666    EXIST::FUNCTION:STDIO
@@ -938,7 +938,7 @@ i2d_RSAPublicKey_fp                     954 EXIST::FUNCTION:RSA,STDIO
 BIO_copy_next_retry                     955    EXIST::FUNCTION:
 RSA_flags                               956    EXIST::FUNCTION:RSA
 X509_STORE_add_crl                      957    EXIST::FUNCTION:
-X509_load_crl_file                      958    EXIST::FUNCTION:STDIO
+X509_load_crl_file                      958    EXIST::FUNCTION:
 EVP_rc2_40_cbc                          959    EXIST::FUNCTION:RC2
 EVP_rc4_40                              960    EXIST::FUNCTION:RC4
 EVP_CIPHER_CTX_init                     961    EXIST::FUNCTION:
@@ -1154,7 +1154,7 @@ X509V3_EXT_conf_nid                     1177      EXIST::FUNCTION:
 X509V3_EXT_get                          1178   EXIST::FUNCTION:
 X509V3_EXT_get_nid                      1179   EXIST::FUNCTION:
 X509V3_EXT_print                        1180   EXIST::FUNCTION:
-X509V3_EXT_print_fp                     1181   EXIST::FUNCTION:
+X509V3_EXT_print_fp                     1181   EXIST::FUNCTION:STDIO
 X509V3_add_standard_extensions          1182   EXIST::FUNCTION:
 X509V3_add_value                        1183   EXIST::FUNCTION:
 X509V3_add_value_bool                   1184   EXIST::FUNCTION:
@@ -1451,7 +1451,7 @@ PKCS5_pbe2_set                          1794      EXIST::FUNCTION:
 PKCS5_PBKDF2_HMAC_SHA1                  1795   EXIST::FUNCTION:
 PKCS5_v2_PBE_keyivgen                   1796   EXIST::FUNCTION:
 PEM_write_bio_PKCS8PrivateKey           1797   EXIST::FUNCTION:
-PEM_write_PKCS8PrivateKey               1798   EXIST::FUNCTION:
+PEM_write_PKCS8PrivateKey               1798   EXIST::FUNCTION:STDIO
 BIO_ctrl_get_read_request               1799   EXIST::FUNCTION:
 BIO_ctrl_pending                        1800   EXIST::FUNCTION:
 BIO_ctrl_wpending                       1801   EXIST::FUNCTION:
@@ -1549,7 +1549,7 @@ PEM_write_bio_DSA_PUBKEY                1968      EXIST::FUNCTION:DSA
 X509_STORE_CTX_free                     1969   EXIST::FUNCTION:
 EVP_PKEY_set1_DSA                       1970   EXIST::FUNCTION:DSA
 i2d_DSA_PUBKEY_fp                       1971   EXIST::FUNCTION:DSA,STDIO
-X509_load_cert_crl_file                 1972   EXIST::FUNCTION:STDIO
+X509_load_cert_crl_file                 1972   EXIST::FUNCTION:
 ASN1_TIME_new                           1973   EXIST::FUNCTION:
 i2d_RSA_PUBKEY                          1974   EXIST::FUNCTION:RSA
 X509_STORE_CTX_purpose_inherit          1976   EXIST::FUNCTION:
@@ -1687,7 +1687,7 @@ CRYPTO_set_mem_debug_functions          2161      EXIST::FUNCTION:
 CRYPTO_pop_info                         2162   EXIST::FUNCTION:
 CRYPTO_push_info_                       2163   EXIST::FUNCTION:
 CRYPTO_set_mem_debug_options            2164   EXIST::FUNCTION:
-PEM_write_PKCS8PrivateKey_nid           2165   EXIST::FUNCTION:
+PEM_write_PKCS8PrivateKey_nid           2165   EXIST::FUNCTION:STDIO
 PEM_write_bio_PKCS8PrivateKey_nid       2166   EXIST:!VMS:FUNCTION:
 PEM_write_bio_PKCS8PrivKey_nid          2166   EXIST:VMS:FUNCTION:
 d2i_PKCS8PrivateKey_bio                 2167   EXIST::FUNCTION:
@@ -1695,10 +1695,10 @@ ASN1_NULL_free                          2168    EXIST::FUNCTION:
 d2i_ASN1_NULL                           2169   EXIST::FUNCTION:
 ASN1_NULL_new                           2170   EXIST::FUNCTION:
 i2d_PKCS8PrivateKey_bio                 2171   EXIST::FUNCTION:
-i2d_PKCS8PrivateKey_fp                  2172   EXIST::FUNCTION:
+i2d_PKCS8PrivateKey_fp                  2172   EXIST::FUNCTION:STDIO
 i2d_ASN1_NULL                           2173   EXIST::FUNCTION:
-i2d_PKCS8PrivateKey_nid_fp              2174   EXIST::FUNCTION:
-d2i_PKCS8PrivateKey_fp                  2175   EXIST::FUNCTION:
+i2d_PKCS8PrivateKey_nid_fp              2174   EXIST::FUNCTION:STDIO
+d2i_PKCS8PrivateKey_fp                  2175   EXIST::FUNCTION:STDIO
 i2d_PKCS8PrivateKey_nid_bio             2176   EXIST::FUNCTION:
 i2d_PKCS8PrivateKeyInfo_fp              2177   EXIST::FUNCTION:STDIO
 i2d_PKCS8PrivateKeyInfo_bio             2178   EXIST::FUNCTION:
@@ -1786,9 +1786,9 @@ NCONF_new                               2279      EXIST::FUNCTION:
 NCONF_get_string                        2280   EXIST::FUNCTION:
 NCONF_free                              2281   EXIST::FUNCTION:
 NCONF_get_number                        2282   NOEXIST::FUNCTION:
-CONF_dump_fp                            2283   EXIST::FUNCTION:
+CONF_dump_fp                            2283   EXIST::FUNCTION:STDIO
 NCONF_load_bio                          2284   EXIST::FUNCTION:
-NCONF_dump_fp                           2285   EXIST::FUNCTION:
+NCONF_dump_fp                           2285   EXIST::FUNCTION:STDIO
 NCONF_get_section                       2286   EXIST::FUNCTION:
 NCONF_dump_bio                          2287   EXIST::FUNCTION:
 CONF_dump_bio                           2288   EXIST::FUNCTION:
@@ -3730,7 +3730,7 @@ ERR_load_JPAKE_strings                  4112      EXIST::FUNCTION:JPAKE
 JPAKE_STEP2_init                        4113   EXIST::FUNCTION:JPAKE
 pqueue_size                             4114   EXIST::FUNCTION:
 i2d_TS_ACCURACY                         4115   EXIST::FUNCTION:
-i2d_TS_MSG_IMPRINT_fp                   4116   EXIST::FUNCTION:
+i2d_TS_MSG_IMPRINT_fp                   4116   EXIST::FUNCTION:STDIO
 i2d_TS_MSG_IMPRINT                      4117   EXIST::FUNCTION:
 EVP_PKEY_print_public                   4118   EXIST::FUNCTION:
 EVP_PKEY_CTX_new                        4119   EXIST::FUNCTION:
@@ -3746,14 +3746,14 @@ TS_RESP_dup                             4128    EXIST::FUNCTION:
 ENGINE_register_pkey_meths              4129   EXIST::FUNCTION:ENGINE
 EVP_PKEY_asn1_add0                      4130   EXIST::FUNCTION:
 PKCS7_add0_attrib_signing_time          4131   EXIST::FUNCTION:
-i2d_TS_TST_INFO_fp                      4132   EXIST::FUNCTION:
+i2d_TS_TST_INFO_fp                      4132   EXIST::FUNCTION:STDIO
 BIO_asn1_get_prefix                     4133   EXIST::FUNCTION:
 TS_TST_INFO_set_time                    4134   EXIST::FUNCTION:
 EVP_PKEY_meth_set_decrypt               4135   EXIST::FUNCTION:
 EVP_PKEY_set_type_str                   4136   EXIST::FUNCTION:
 EVP_PKEY_CTX_get_keygen_info            4137   EXIST::FUNCTION:
 TS_REQ_set_policy_id                    4138   EXIST::FUNCTION:
-d2i_TS_RESP_fp                          4139   EXIST::FUNCTION:
+d2i_TS_RESP_fp                          4139   EXIST::FUNCTION:STDIO
 ENGINE_get_pkey_asn1_meth_engine        4140   EXIST:!VMS:FUNCTION:ENGINE
 ENGINE_get_pkey_asn1_meth_eng           4140   EXIST:VMS:FUNCTION:ENGINE
 WHIRLPOOL_Init                          4141   EXIST::FUNCTION:WHIRLPOOL
@@ -3896,7 +3896,7 @@ PKCS7_to_TS_TST_INFO                    4273      EXIST::FUNCTION:
 ASN1_PCTX_get_oid_flags                 4274   EXIST::FUNCTION:
 TS_TST_INFO_add_ext                     4275   EXIST::FUNCTION:
 EVP_PKEY_meth_set_derive                4276   EXIST::FUNCTION:
-i2d_TS_RESP_fp                          4277   EXIST::FUNCTION:
+i2d_TS_RESP_fp                          4277   EXIST::FUNCTION:STDIO
 i2d_TS_MSG_IMPRINT_bio                  4278   EXIST::FUNCTION:
 TS_RESP_CTX_set_accuracy                4279   EXIST::FUNCTION:
 TS_REQ_set_nonce                        4280   EXIST::FUNCTION:
@@ -3925,7 +3925,7 @@ TS_REQ_get_cert_req                     4302      EXIST::FUNCTION:
 X509_CRL_set_meth_data                  4303   EXIST::FUNCTION:
 PKCS8_pkey_set0                         4304   EXIST::FUNCTION:
 ASN1_STRING_copy                        4305   EXIST::FUNCTION:
-d2i_TS_TST_INFO_fp                      4306   EXIST::FUNCTION:
+d2i_TS_TST_INFO_fp                      4306   EXIST::FUNCTION:STDIO
 X509_CRL_match                          4307   EXIST::FUNCTION:
 EVP_PKEY_asn1_set_private               4308   EXIST::FUNCTION:
 TS_TST_INFO_get_ext_d2i                 4309   EXIST::FUNCTION:
@@ -3968,7 +3968,7 @@ TS_REQ_set_cert_req                     4345      EXIST::FUNCTION:
 CRYPTO_THREADID_set_callback            4346   EXIST::FUNCTION:
 TS_CONF_set_serial                      4347   EXIST::FUNCTION:
 TS_TST_INFO_free                        4348   EXIST::FUNCTION:
-d2i_TS_REQ_fp                           4349   EXIST::FUNCTION:
+d2i_TS_REQ_fp                           4349   EXIST::FUNCTION:STDIO
 TS_RESP_verify_response                 4350   EXIST::FUNCTION:
 i2d_ESS_ISSUER_SERIAL                   4351   EXIST::FUNCTION:
 TS_ACCURACY_get_seconds                 4352   EXIST::FUNCTION:
@@ -4055,7 +4055,7 @@ EVP_CIPHER_do_all_sorted                4429      EXIST::FUNCTION:
 EVP_PKEY_CTX_free                       4430   EXIST::FUNCTION:
 ISSUING_DIST_POINT_it                   4431   EXIST:!EXPORT_VAR_AS_FUNCTION:VARIABLE:
 ISSUING_DIST_POINT_it                   4431   EXIST:EXPORT_VAR_AS_FUNCTION:FUNCTION:
-d2i_TS_MSG_IMPRINT_fp                   4432   EXIST::FUNCTION:
+d2i_TS_MSG_IMPRINT_fp                   4432   EXIST::FUNCTION:STDIO
 X509_STORE_get1_certs                   4433   EXIST::FUNCTION:
 EVP_PKEY_CTX_get_operation              4434   EXIST::FUNCTION:
 d2i_ESS_SIGNING_CERT                    4435   EXIST::FUNCTION:
@@ -4135,7 +4135,7 @@ TS_TST_INFO_set_msg_imprint             4505      EXIST::FUNCTION:
 GENERAL_NAME_cmp                        4506   EXIST::FUNCTION:
 d2i_ASN1_SET_ANY                        4507   EXIST::FUNCTION:
 ENGINE_set_pkey_meths                   4508   EXIST::FUNCTION:ENGINE
-i2d_TS_REQ_fp                           4509   EXIST::FUNCTION:
+i2d_TS_REQ_fp                           4509   EXIST::FUNCTION:STDIO
 d2i_ASN1_SEQUENCE_ANY                   4510   EXIST::FUNCTION:
 GENERAL_NAME_get0_otherName             4511   EXIST::FUNCTION:
 d2i_ESS_CERT_ID                         4512   EXIST::FUNCTION:
@@ -4305,7 +4305,7 @@ i2d_RSA_PSS_PARAMS                      4670      EXIST::FUNCTION:RSA
 ASN1_item_sign_ctx                      4671   EXIST::FUNCTION:
 EC_GFp_nistp521_method                  4672   EXIST:!WIN32:FUNCTION:EC,EC_NISTP_64_GCC_128
 EC_GFp_nistp256_method                  4673   EXIST:!WIN32:FUNCTION:EC,EC_NISTP_64_GCC_128
-OPENSSL_stderr                          4674   EXIST::FUNCTION:
+OPENSSL_stderr                          4674   NOEXIST::FUNCTION:
 OPENSSL_cpuid_setup                     4675   EXIST::FUNCTION:
 OPENSSL_showfatal                       4676   EXIST::FUNCTION:
 BIO_new_dgram_sctp                      4677   EXIST::FUNCTION:SCTP
@@ -4615,21 +4615,22 @@ TS_VERIFY_CTS_set_certs                 4973    EXIST::FUNCTION:
 TS_VERIFY_CTX_add_flags                 4974   EXIST::FUNCTION:
 TS_STATUS_INFO_set_status               4975   EXIST::FUNCTION:
 TS_VERIFY_CTX_set_store                 4976   EXIST::FUNCTION:
-EVP_PKEY_meth_get_decrypt               4977   EXIST::FUNCTION:
-EVP_PKEY_meth_get_derive                4978   EXIST::FUNCTION:
-EVP_PKEY_meth_get_verify                4979   EXIST::FUNCTION:
-EVP_PKEY_meth_get_ctrl                  4980   EXIST::FUNCTION:
-EVP_PKEY_meth_get_verifyctx             4981   EXIST::FUNCTION:
-EVP_PKEY_meth_get_paramgen              4982   EXIST::FUNCTION:
-EVP_PKEY_meth_get_init                  4983   EXIST::FUNCTION:
-EVP_PKEY_meth_get_cleanup               4984   EXIST::FUNCTION:
-EVP_PKEY_meth_get_keygen                4985   EXIST::FUNCTION:
-EVP_PKEY_meth_get_signctx               4986   EXIST::FUNCTION:
-EVP_PKEY_meth_get_sign                  4987   EXIST::FUNCTION:
-EVP_PKEY_meth_get_copy                  4988   EXIST::FUNCTION:
-EVP_PKEY_meth_get_verify_recover        4989   EXIST::FUNCTION:
-EVP_PKEY_meth_get_encrypt               4990   EXIST::FUNCTION:
+EVP_PKEY_meth_get_signctx               4977   EXIST::FUNCTION:
+EVP_PKEY_meth_get_paramgen              4978   EXIST::FUNCTION:
+EVP_PKEY_meth_get_encrypt               4979   EXIST::FUNCTION:
+EVP_PKEY_meth_get_keygen                4980   EXIST::FUNCTION:
+EVP_PKEY_meth_get_verify_recover        4981   EXIST::FUNCTION:
+EVP_PKEY_meth_get_cleanup               4982   EXIST::FUNCTION:
+EVP_PKEY_meth_get_verify                4984   EXIST::FUNCTION:
+EVP_PKEY_meth_get_init                  4985   EXIST::FUNCTION:
+EVP_PKEY_meth_get_sign                  4986   EXIST::FUNCTION:
+EVP_PKEY_meth_get_verifyctx             4987   EXIST::FUNCTION:
+EVP_PKEY_meth_get_ctrl                  4988   EXIST::FUNCTION:
+EVP_PKEY_meth_get_derive                4989   EXIST::FUNCTION:
+EVP_PKEY_meth_get_decrypt               4990   EXIST::FUNCTION:
+EVP_PKEY_meth_get_copy                  4991   EXIST::FUNCTION:
 X509_get0_subject_key_id                4991   EXIST::FUNCTION:
+declare_dh_bn                           4992   EXIST::FUNCTION:DH
 i2d_re_X509_CRL_tbs                     4992   EXIST::FUNCTION:
 X509_REQ_get_X509_PUBKEY                4993   EXIST::FUNCTION:
 X509_REQ_get0_signature                 4994   EXIST::FUNCTION:
index 4c7f8d3..4c8a783 100755 (executable)
@@ -18,13 +18,13 @@ SSL_CTX_set_ssl_version                 19  EXIST::FUNCTION:
 SSL_CTX_set_verify                      21     EXIST::FUNCTION:
 SSL_CTX_use_PrivateKey                  22     EXIST::FUNCTION:
 SSL_CTX_use_PrivateKey_ASN1             23     EXIST::FUNCTION:
-SSL_CTX_use_PrivateKey_file             24     EXIST::FUNCTION:STDIO
+SSL_CTX_use_PrivateKey_file             24     EXIST::FUNCTION:
 SSL_CTX_use_RSAPrivateKey               25     EXIST::FUNCTION:RSA
 SSL_CTX_use_RSAPrivateKey_ASN1          26     EXIST::FUNCTION:RSA
-SSL_CTX_use_RSAPrivateKey_file          27     EXIST::FUNCTION:RSA,STDIO
+SSL_CTX_use_RSAPrivateKey_file          27     EXIST::FUNCTION:RSA
 SSL_CTX_use_certificate                 28     EXIST::FUNCTION:
 SSL_CTX_use_certificate_ASN1            29     EXIST::FUNCTION:
-SSL_CTX_use_certificate_file            30     EXIST::FUNCTION:STDIO
+SSL_CTX_use_certificate_file            30     EXIST::FUNCTION:
 SSL_SESSION_free                        31     EXIST::FUNCTION:
 SSL_SESSION_new                         32     EXIST::FUNCTION:
 SSL_SESSION_print                       33     EXIST::FUNCTION:
@@ -60,7 +60,7 @@ SSL_get_verify_callback                 69    EXIST::FUNCTION:
 SSL_get_verify_mode                     70     EXIST::FUNCTION:
 SSL_get_version                         71     EXIST::FUNCTION:
 SSL_get_wbio                            72     EXIST::FUNCTION:
-SSL_load_client_CA_file                 73     EXIST::FUNCTION:STDIO
+SSL_load_client_CA_file                 73     EXIST::FUNCTION:
 SSL_load_error_strings                  74     EXIST::FUNCTION:
 SSL_new                                 75     EXIST::FUNCTION:
 SSL_peek                                76     EXIST::FUNCTION:
@@ -86,13 +86,13 @@ SSL_state_string                        97  EXIST::FUNCTION:
 SSL_state_string_long                   98     EXIST::FUNCTION:
 SSL_use_PrivateKey                      99     EXIST::FUNCTION:
 SSL_use_PrivateKey_ASN1                 100    EXIST::FUNCTION:
-SSL_use_PrivateKey_file                 101    EXIST::FUNCTION:STDIO
+SSL_use_PrivateKey_file                 101    EXIST::FUNCTION:
 SSL_use_RSAPrivateKey                   102    EXIST::FUNCTION:RSA
 SSL_use_RSAPrivateKey_ASN1              103    EXIST::FUNCTION:RSA
-SSL_use_RSAPrivateKey_file              104    EXIST::FUNCTION:RSA,STDIO
+SSL_use_RSAPrivateKey_file              104    EXIST::FUNCTION:RSA
 SSL_use_certificate                     105    EXIST::FUNCTION:
 SSL_use_certificate_ASN1                106    EXIST::FUNCTION:
-SSL_use_certificate_file                107    EXIST::FUNCTION:STDIO
+SSL_use_certificate_file                107    EXIST::FUNCTION:
 SSL_write                               108    EXIST::FUNCTION:
 SSLeay_add_ssl_algorithms               109    NOEXIST::FUNCTION:
 SSLv23_client_method                    110    NOEXIST::FUNCTION:
@@ -165,15 +165,15 @@ SSL_CTX_set_cert_store                  181       EXIST::FUNCTION:
 SSL_want                                182    EXIST::FUNCTION:
 SSL_library_init                        183    EXIST::FUNCTION:
 SSL_COMP_add_compression_method         184    EXIST::FUNCTION:
-SSL_add_file_cert_subjects_to_stack     185    EXIST:!VMS:FUNCTION:STDIO
-SSL_add_file_cert_subjs_to_stk          185    EXIST:VMS:FUNCTION:STDIO
+SSL_add_file_cert_subjects_to_stack     185    EXIST:!VMS:FUNCTION:
+SSL_add_file_cert_subjs_to_stk          185    EXIST:VMS:FUNCTION:
 SSL_set_tmp_rsa_callback                186    EXIST::FUNCTION:RSA
 SSL_set_tmp_dh_callback                 187    EXIST::FUNCTION:DH
-SSL_add_dir_cert_subjects_to_stack      188    EXIST:!VMS:FUNCTION:STDIO
-SSL_add_dir_cert_subjs_to_stk           188    EXIST:VMS:FUNCTION:STDIO
+SSL_add_dir_cert_subjects_to_stack      188    EXIST:!VMS:FUNCTION:
+SSL_add_dir_cert_subjs_to_stk           188    EXIST:VMS:FUNCTION:
 SSL_set_session_id_context              189    EXIST::FUNCTION:
-SSL_CTX_use_certificate_chain_file      222    EXIST:!VMS:FUNCTION:STDIO
-SSL_CTX_use_cert_chain_file             222    EXIST:VMS:FUNCTION:STDIO
+SSL_CTX_use_certificate_chain_file      222    EXIST:!VMS:FUNCTION:
+SSL_CTX_use_cert_chain_file             222    EXIST:VMS:FUNCTION:
 SSL_CTX_set_verify_depth                225    EXIST::FUNCTION:
 SSL_set_verify_depth                    226    EXIST::FUNCTION:
 SSL_CTX_get_verify_depth                228    EXIST::FUNCTION:
@@ -365,7 +365,7 @@ SSL_trace                               402 EXIST::FUNCTION:SSL_TRACE
 SSL_CTX_set_cli_supp_data               403    NOEXIST::FUNCTION:
 DTLSv1_2_method                         404    EXIST::FUNCTION:
 DTLS_server_method                      405    EXIST::FUNCTION:
-SSL_CTX_use_serverinfo_file             406    EXIST::FUNCTION:STDIO
+SSL_CTX_use_serverinfo_file             406    EXIST::FUNCTION:
 SSL_COMP_free_compress_methods          407    NOEXIST::FUNCTION:
 SSL_COMP_free_compression_methods       407    EXIST:!VMS:FUNCTION:
 SSL_COMP_free_compr_methods             407    EXIST:VMS:FUNCTION:
@@ -395,7 +395,7 @@ SSL_SESSION_get_ticket_lifetime_hint    429 EXIST::FUNCTION:
 SSL_set_rbio                            430    EXIST::FUNCTION:
 SSL_CIPHER_get_digest_nid               431    EXIST::FUNCTION:
 SSL_CIPHER_get_cipher_nid               432    EXIST::FUNCTION:
-SSL_use_certificate_chain_file          433    EXIST::FUNCTION:STDIO
+SSL_use_certificate_chain_file          433    EXIST::FUNCTION:
 TLS_server_method                       434    EXIST::FUNCTION:
 TLS_method                              435    EXIST::FUNCTION:
 TLS_client_method                       436    EXIST::FUNCTION: