+diff --git a/engines/ccgost/e_gost_err.h b/engines/ccgost/e_gost_err.h\r
+index a2018ec..9eacdcf 100644\r
+--- a/engines/ccgost/e_gost_err.h\r
++++ b/engines/ccgost/e_gost_err.h\r
+@@ -67,7 +67,7 @@ extern "C" {\r
+ void ERR_load_GOST_strings(void);\r
+ void ERR_unload_GOST_strings(void);\r
+ void ERR_GOST_error(int function, int reason, char *file, int line);\r
+-# define GOSTerr(f,r) ERR_GOST_error((f),(r),__FILE__,__LINE__)\r
++# define GOSTerr(f,r) ERR_GOST_error((f),(r),OPENSSL_FILE,OPENSSL_LINE)\r
+ \r
+ /* Error codes for the GOST functions. */\r
+ \r
+diff --git a/engines/e_4758cca_err.h b/engines/e_4758cca_err.h\r
+index 2f29d96..47a2635 100644\r
+--- a/engines/e_4758cca_err.h\r
++++ b/engines/e_4758cca_err.h\r
+@@ -67,7 +67,7 @@ extern "C" {\r
+ static void ERR_load_CCA4758_strings(void);\r
+ static void ERR_unload_CCA4758_strings(void);\r
+ static void ERR_CCA4758_error(int function, int reason, char *file, int line);\r
+-# define CCA4758err(f,r) ERR_CCA4758_error((f),(r),__FILE__,__LINE__)\r
++# define CCA4758err(f,r) ERR_CCA4758_error((f),(r),OPENSSL_FILE,OPENSSL_LINE)\r
+ \r
+ /* Error codes for the CCA4758 functions. */\r
+ \r
+diff --git a/engines/e_aep_err.h b/engines/e_aep_err.h\r
+index 2ed0114..1f8fa5b 100644\r
+--- a/engines/e_aep_err.h\r
++++ b/engines/e_aep_err.h\r
+@@ -67,7 +67,7 @@ extern "C" {\r
+ static void ERR_load_AEPHK_strings(void);\r
+ static void ERR_unload_AEPHK_strings(void);\r
+ static void ERR_AEPHK_error(int function, int reason, char *file, int line);\r
+-# define AEPHKerr(f,r) ERR_AEPHK_error((f),(r),__FILE__,__LINE__)\r
++# define AEPHKerr(f,r) ERR_AEPHK_error((f),(r),OPENSSL_FILE,OPENSSL_LINE)\r
+ \r
+ /* Error codes for the AEPHK functions. */\r
+ \r
+diff --git a/engines/e_atalla_err.h b/engines/e_atalla_err.h\r
+index 7b71eff..d958496 100644\r
+--- a/engines/e_atalla_err.h\r
++++ b/engines/e_atalla_err.h\r
+@@ -67,7 +67,7 @@ extern "C" {\r
+ static void ERR_load_ATALLA_strings(void);\r
+ static void ERR_unload_ATALLA_strings(void);\r
+ static void ERR_ATALLA_error(int function, int reason, char *file, int line);\r
+-# define ATALLAerr(f,r) ERR_ATALLA_error((f),(r),__FILE__,__LINE__)\r
++# define ATALLAerr(f,r) ERR_ATALLA_error((f),(r),OPENSSL_FILE,OPENSSL_LINE)\r
+ \r
+ /* Error codes for the ATALLA functions. */\r
+ \r
+diff --git a/engines/e_capi_err.h b/engines/e_capi_err.h\r
+index b5d06dc..cfe46b1 100644\r
+--- a/engines/e_capi_err.h\r
++++ b/engines/e_capi_err.h\r
+@@ -67,7 +67,7 @@ extern "C" {\r
+ static void ERR_load_CAPI_strings(void);\r
+ static void ERR_unload_CAPI_strings(void);\r
+ static void ERR_CAPI_error(int function, int reason, char *file, int line);\r
+-# define CAPIerr(f,r) ERR_CAPI_error((f),(r),__FILE__,__LINE__)\r
++# define CAPIerr(f,r) ERR_CAPI_error((f),(r),OPENSSL_FILE,OPENSSL_LINE)\r
+ \r
+ /* Error codes for the CAPI functions. */\r
+ \r
+diff --git a/engines/e_chil_err.h b/engines/e_chil_err.h\r
+index d86a4ce..3d961b9 100644\r
+--- a/engines/e_chil_err.h\r
++++ b/engines/e_chil_err.h\r
+@@ -67,7 +67,7 @@ extern "C" {\r
+ static void ERR_load_HWCRHK_strings(void);\r
+ static void ERR_unload_HWCRHK_strings(void);\r
+ static void ERR_HWCRHK_error(int function, int reason, char *file, int line);\r
+-# define HWCRHKerr(f,r) ERR_HWCRHK_error((f),(r),__FILE__,__LINE__)\r
++# define HWCRHKerr(f,r) ERR_HWCRHK_error((f),(r),OPENSSL_FILE,OPENSSL_LINE)\r
+ \r
+ /* Error codes for the HWCRHK functions. */\r
+ \r
+diff --git a/engines/e_cswift_err.h b/engines/e_cswift_err.h\r
+index fde3a82..7c20691 100644\r
+--- a/engines/e_cswift_err.h\r
++++ b/engines/e_cswift_err.h\r
+@@ -67,7 +67,7 @@ extern "C" {\r
+ static void ERR_load_CSWIFT_strings(void);\r
+ static void ERR_unload_CSWIFT_strings(void);\r
+ static void ERR_CSWIFT_error(int function, int reason, char *file, int line);\r
+-# define CSWIFTerr(f,r) ERR_CSWIFT_error((f),(r),__FILE__,__LINE__)\r
++# define CSWIFTerr(f,r) ERR_CSWIFT_error((f),(r),OPENSSL_FILE,OPENSSL_LINE)\r
+ \r
+ /* Error codes for the CSWIFT functions. */\r
+ \r
+diff --git a/engines/e_gmp_err.h b/engines/e_gmp_err.h\r
+index 637abbc..ccaf3da 100644\r
+--- a/engines/e_gmp_err.h\r
++++ b/engines/e_gmp_err.h\r
+@@ -67,7 +67,7 @@ extern "C" {\r
+ static void ERR_load_GMP_strings(void);\r
+ static void ERR_unload_GMP_strings(void);\r
+ static void ERR_GMP_error(int function, int reason, char *file, int line);\r
+-# define GMPerr(f,r) ERR_GMP_error((f),(r),__FILE__,__LINE__)\r
++# define GMPerr(f,r) ERR_GMP_error((f),(r),OPENSSL_FILE,OPENSSL_LINE)\r
+ \r
+ /* Error codes for the GMP functions. */\r
+ \r
+diff --git a/engines/e_nuron_err.h b/engines/e_nuron_err.h\r
+index aa7849c..e607d3e 100644\r
+--- a/engines/e_nuron_err.h\r
++++ b/engines/e_nuron_err.h\r
+@@ -67,7 +67,7 @@ extern "C" {\r
+ static void ERR_load_NURON_strings(void);\r
+ static void ERR_unload_NURON_strings(void);\r
+ static void ERR_NURON_error(int function, int reason, char *file, int line);\r
+-# define NURONerr(f,r) ERR_NURON_error((f),(r),__FILE__,__LINE__)\r
++# define NURONerr(f,r) ERR_NURON_error((f),(r),OPENSSL_FILE,OPENSSL_LINE)\r
+ \r
+ /* Error codes for the NURON functions. */\r
+ \r
+diff --git a/engines/e_sureware_err.h b/engines/e_sureware_err.h\r
+index bef8623..54f2848 100644\r
+--- a/engines/e_sureware_err.h\r
++++ b/engines/e_sureware_err.h\r
+@@ -68,7 +68,7 @@ static void ERR_load_SUREWARE_strings(void);\r
+ static void ERR_unload_SUREWARE_strings(void);\r
+ static void ERR_SUREWARE_error(int function, int reason, char *file,\r
+ int line);\r
+-# define SUREWAREerr(f,r) ERR_SUREWARE_error((f),(r),__FILE__,__LINE__)\r
++# define SUREWAREerr(f,r) ERR_SUREWARE_error((f),(r),OPENSSL_FILE,OPENSSL_LINE)\r
+ \r
+ /* Error codes for the SUREWARE functions. */\r
+ \r
+diff --git a/engines/e_ubsec_err.h b/engines/e_ubsec_err.h\r
+index c8aec7c..67110ed 100644\r
+--- a/engines/e_ubsec_err.h\r
++++ b/engines/e_ubsec_err.h\r
+@@ -67,7 +67,7 @@ extern "C" {\r
+ static void ERR_load_UBSEC_strings(void);\r
+ static void ERR_unload_UBSEC_strings(void);\r
+ static void ERR_UBSEC_error(int function, int reason, char *file, int line);\r
+-# define UBSECerr(f,r) ERR_UBSEC_error((f),(r),__FILE__,__LINE__)\r
++# define UBSECerr(f,r) ERR_UBSEC_error((f),(r),OPENSSL_FILE,OPENSSL_LINE)\r
+ \r
+ /* Error codes for the UBSEC functions. */\r
+ \r
+diff --git a/ssl/d1_both.c b/ssl/d1_both.c\r
+index d1fc716..d5f661a 100644\r
+--- a/ssl/d1_both.c\r
++++ b/ssl/d1_both.c\r
+@@ -1053,7 +1053,7 @@ int dtls1_send_change_cipher_spec(SSL *s, int a, int b)\r
+ int dtls1_read_failed(SSL *s, int code)\r
+ {\r
+ if (code > 0) {\r
+- fprintf(stderr, "invalid state reached %s:%d", __FILE__, __LINE__);\r
++ fprintf(stderr, "dtls1_read_failed(); invalid state reached\n");\r
+ return 1;\r
+ }\r
+ \r
+diff --git a/ssl/ssl_asn1.c b/ssl/ssl_asn1.c\r
+index 35cc27c..a1f5335 100644\r
+--- a/ssl/ssl_asn1.c\r
++++ b/ssl/ssl_asn1.c\r
+@@ -418,7 +418,7 @@ SSL_SESSION *d2i_SSL_SESSION(SSL_SESSION **a, const unsigned char **pp,\r
+ if (ssl_version == SSL2_VERSION) {\r
+ if (os.length != 3) {\r
+ c.error = SSL_R_CIPHER_CODE_WRONG_LENGTH;\r
+- c.line = __LINE__;\r
++ c.line = OPENSSL_LINE;\r
+ goto err;\r
+ }\r
+ id = 0x02000000L |\r
+@@ -429,14 +429,14 @@ SSL_SESSION *d2i_SSL_SESSION(SSL_SESSION **a, const unsigned char **pp,\r
+ || ssl_version == DTLS1_BAD_VER) {\r
+ if (os.length != 2) {\r
+ c.error = SSL_R_CIPHER_CODE_WRONG_LENGTH;\r
+- c.line = __LINE__;\r
++ c.line = OPENSSL_LINE;\r
+ goto err;\r
+ }\r
+ id = 0x03000000L |\r
+ ((unsigned long)os.data[0] << 8L) | (unsigned long)os.data[1];\r
+ } else {\r
+ c.error = SSL_R_UNKNOWN_SSL_VERSION;\r
+- c.line = __LINE__;\r
++ c.line = OPENSSL_LINE;\r
+ goto err;\r
+ }\r
+ \r
+@@ -526,7 +526,7 @@ SSL_SESSION *d2i_SSL_SESSION(SSL_SESSION **a, const unsigned char **pp,\r
+ if (os.data != NULL) {\r
+ if (os.length > SSL_MAX_SID_CTX_LENGTH) {\r
+ c.error = SSL_R_BAD_LENGTH;\r
+- c.line = __LINE__;\r
++ c.line = OPENSSL_LINE;\r
+ goto err;\r
+ } else {\r
+ ret->sid_ctx_length = os.length;\r
+diff --git a/ssl/ssl_cert.c b/ssl/ssl_cert.c\r
+index a73f866..d534c0a 100644\r
+--- a/ssl/ssl_cert.c\r
++++ b/ssl/ssl_cert.c\r
+@@ -855,12 +855,13 @@ int SSL_CTX_add_client_CA(SSL_CTX *ctx, X509 *x)\r
+ return (add_client_CA(&(ctx->client_CA), x));\r
+ }\r
+ \r
++#ifndef OPENSSL_NO_STDIO\r
++\r
+ static int xname_cmp(const X509_NAME *const *a, const X509_NAME *const *b)\r
+ {\r
+ return (X509_NAME_cmp(*a, *b));\r
+ }\r
+ \r
+-#ifndef OPENSSL_NO_STDIO\r
+ /**\r
+ * Load CA certs from a file into a ::STACK. Note that it is somewhat misnamed;\r
+ * it doesn't really have anything to do with clients (except that a common use\r
+@@ -928,7 +929,6 @@ STACK_OF(X509_NAME) *SSL_load_client_CA_file(const char *file)\r
+ ERR_clear_error();\r
+ return (ret);\r
+ }\r
+-#endif\r
+ \r
+ /**\r
+ * Add a file of certs to a stack.\r
+@@ -1048,6 +1048,7 @@ int SSL_add_dir_cert_subjects_to_stack(STACK_OF(X509_NAME) *stack,\r
+ CRYPTO_w_unlock(CRYPTO_LOCK_READDIR);\r
+ return ret;\r
+ }\r
++#endif /* !OPENSSL_NO_STDIO */\r
+ \r
+ /* Add a certificate to a BUF_MEM structure */\r
+ \r
+diff --git a/ssl/ssl_conf.c b/ssl/ssl_conf.c\r
+index 5478840..c2ad7c9 100644\r
+--- a/ssl/ssl_conf.c\r
++++ b/ssl/ssl_conf.c\r
+@@ -362,6 +362,7 @@ static int cmd_Options(SSL_CONF_CTX *cctx, const char *value)\r
+ return CONF_parse_list(value, ',', 1, ssl_set_option_list, cctx);\r
+ }\r
+ \r
++#ifndef OPENSSL_NO_STDIO\r
+ static int cmd_Certificate(SSL_CONF_CTX *cctx, const char *value)\r
+ {\r
+ int rv = 1;\r
+@@ -428,7 +429,9 @@ static int cmd_DHParameters(SSL_CONF_CTX *cctx, const char *value)\r
+ BIO_free(in);\r
+ return rv > 0;\r
+ }\r
+-#endif\r
++#endif /* !OPENSSL_NO_DH */\r
++#endif /* !OPENSSL_NO_STDIO */\r
++\r
+ typedef struct {\r
+ int (*cmd) (SSL_CONF_CTX *cctx, const char *value);\r
+ const char *str_file;\r
+@@ -454,12 +457,14 @@ static const ssl_conf_cmd_tbl ssl_conf_cmds[] = {\r
+ SSL_CONF_CMD_STRING(CipherString, "cipher"),\r
+ SSL_CONF_CMD_STRING(Protocol, NULL),\r
+ SSL_CONF_CMD_STRING(Options, NULL),\r
++#ifndef OPENSSL_NO_STDIO\r
+ SSL_CONF_CMD(Certificate, "cert", SSL_CONF_TYPE_FILE),\r
+ SSL_CONF_CMD(PrivateKey, "key", SSL_CONF_TYPE_FILE),\r
+ SSL_CONF_CMD(ServerInfoFile, NULL, SSL_CONF_TYPE_FILE),\r
+ #ifndef OPENSSL_NO_DH\r
+ SSL_CONF_CMD(DHParameters, "dhparam", SSL_CONF_TYPE_FILE)\r
+ #endif\r
++#endif\r
+ };\r
+ \r
+ static int ssl_conf_cmd_skip_prefix(SSL_CONF_CTX *cctx, const char **pcmd)\r
+diff --git a/ssl/t1_enc.c b/ssl/t1_enc.c\r
+index 514fcb3..2a54cc9 100644\r
+--- a/ssl/t1_enc.c\r
++++ b/ssl/t1_enc.c\r
+@@ -780,9 +780,7 @@ int tls1_enc(SSL *s, int send)\r
+ * we can't write into the input stream: Can this ever\r
+ * happen?? (steve)\r
+ */\r
+- fprintf(stderr,\r
+- "%s:%d: rec->data != rec->input\n",\r
+- __FILE__, __LINE__);\r
++ fprintf(stderr, "tls1_enc: rec->data != rec->input\n");\r
+ else if (RAND_bytes(rec->input, ivlen) <= 0)\r
+ return -1;\r
+ }\r
+diff --git a/util/mkerr.pl b/util/mkerr.pl\r
+index 09ebebe..cd57ade 100644\r
+--- a/util/mkerr.pl\r
++++ b/util/mkerr.pl\r
+@@ -89,7 +89,7 @@ Options:\r
+ void ERR_load_<LIB>_strings(void);\r
+ void ERR_unload_<LIB>_strings(void);\r
+ void ERR_<LIB>_error(int f, int r, char *fn, int ln);\r
+- #define <LIB>err(f,r) ERR_<LIB>_error(f,r,__FILE__,__LINE__)\r
++ #define <LIB>err(f,r) ERR_<LIB>_error(f,r,OPENSSL_FILE,OPENSSL_LINE)\r
+ while the code facilitates the use of these in an environment\r
+ where the error support routines are dynamically loaded at \r
+ runtime.\r
+@@ -474,7 +474,7 @@ EOF\r
+ ${staticloader}void ERR_load_${lib}_strings(void);\r
+ ${staticloader}void ERR_unload_${lib}_strings(void);\r
+ ${staticloader}void ERR_${lib}_error(int function, int reason, char *file, int line);\r
+-# define ${lib}err(f,r) ERR_${lib}_error((f),(r),__FILE__,__LINE__)\r
++# define ${lib}err(f,r) ERR_${lib}_error((f),(r),OPENSSL_FILE,OPENSSL_LINE)\r
+ \r
+ EOF\r
+ }\r