require '_h2ph_pre.ph';

no warnings qw(redefine misc);

unless(defined(&OPENSSL_SYMHACKS_H)) {
    eval 'sub OPENSSL_SYMHACKS_H () {1;}' unless defined(&OPENSSL_SYMHACKS_H);
    require 'openssl/macros.ph';
    unless(defined(&OPENSSL_NO_DEPRECATED_3_0)) {
	eval 'sub HEADER_SYMHACKS_H () {1;}' unless defined(&HEADER_SYMHACKS_H);
    }
    require 'openssl/e_os2.ph';
    if(defined(&OPENSSL_SYS_VMS)) {
	undef(&ERR_load_CRYPTO_strings) if defined(&ERR_load_CRYPTO_strings);
	eval 'sub ERR_load_CRYPTO_strings () { &ERR_load_CRYPTOlib_strings;}' unless defined(&ERR_load_CRYPTO_strings);
	undef(&OCSP_crlID_new) if defined(&OCSP_crlID_new);
	eval 'sub OCSP_crlID_new () { &OCSP_crlID2_new;}' unless defined(&OCSP_crlID_new);
	undef(&d2i_ECPARAMETERS) if defined(&d2i_ECPARAMETERS);
	eval 'sub d2i_ECPARAMETERS () { &d2i_UC_ECPARAMETERS;}' unless defined(&d2i_ECPARAMETERS);
	undef(&i2d_ECPARAMETERS) if defined(&i2d_ECPARAMETERS);
	eval 'sub i2d_ECPARAMETERS () { &i2d_UC_ECPARAMETERS;}' unless defined(&i2d_ECPARAMETERS);
	undef(&d2i_ECPKPARAMETERS) if defined(&d2i_ECPKPARAMETERS);
	eval 'sub d2i_ECPKPARAMETERS () { &d2i_UC_ECPKPARAMETERS;}' unless defined(&d2i_ECPKPARAMETERS);
	undef(&i2d_ECPKPARAMETERS) if defined(&i2d_ECPKPARAMETERS);
	eval 'sub i2d_ECPKPARAMETERS () { &i2d_UC_ECPKPARAMETERS;}' unless defined(&i2d_ECPKPARAMETERS);
    }
}
1;
