  };
  
  /* Number of standard extensions */
+diff --git a/crypto/x509v3/v3_pci.c b/crypto/x509v3/v3_pci.c
+index 34cad53..12f12a7 100644
+--- a/crypto/x509v3/v3_pci.c
++++ b/crypto/x509v3/v3_pci.c
+@@ -149,6 +149,7 @@ static int process_pci_value(CONF_VALUE *val,
+                 goto err;
+             }
+             OPENSSL_free(tmp_data2);
++#ifndef OPENSSL_NO_STDIO
+         } else if (strncmp(val->value, "file:", 5) == 0) {
+             unsigned char buf[2048];
+             int n;
+@@ -181,6 +182,7 @@ static int process_pci_value(CONF_VALUE *val,
+                 X509V3_conf_err(val);
+                 goto err;
+             }
++#endif /* !OPENSSL_NO_STDIO */
+         } else if (strncmp(val->value, "text:", 5) == 0) {
+             val_len = strlen(val->value + 5);
+             tmp_data = OPENSSL_realloc((*policy)->data,
+diff --git a/crypto/x509v3/x509v3.h b/crypto/x509v3/x509v3.h
+index f5c6156..a2e78aa 100644
+--- a/crypto/x509v3/x509v3.h
++++ b/crypto/x509v3/x509v3.h
+@@ -688,8 +688,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_FP_API
+ 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);
 diff --git a/e_os.h b/e_os.h
 index 1fa36c1..3e9dae2 100644
 --- a/e_os.h

 #  define DECLARE_PEM_write_cb_fp(name, type) /**/
 # else
 
diff --git a/crypto/pkcs7/pk7_smime.c b/crypto/pkcs7/pk7_smime.c
index c4d3724..fd531c9 100644
--- a/crypto/pkcs7/pk7_smime.c

 
 # define X509_VP_FLAG_DEFAULT                    0x1
 # define X509_VP_FLAG_OVERWRITE                  0x2
@@ -490,9 +492,10 @@ 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);
-
+#ifndef OPENSSL_NO_STDIO
 X509_LOOKUP_METHOD *X509_LOOKUP_hash_dir(void);
 X509_LOOKUP_METHOD *X509_LOOKUP_file(void);
+#endif
 
 int X509_STORE_add_cert(X509_STORE *ctx, X509 *x);
 int X509_STORE_add_crl(X509_STORE *ctx, X509_CRL *x);
diff --git a/crypto/x509v3/ext_dat.h b/crypto/x509v3/ext_dat.h
index c3a6fce..01edd2a 100644
--- a/crypto/x509v3/ext_dat.h
