require '_h2ph_pre.ph';

no warnings qw(redefine misc);

unless(defined(&OPENSSL_CONF_H)) {
    eval 'sub OPENSSL_CONF_H () {1;}' unless defined(&OPENSSL_CONF_H);
    require 'openssl/macros.ph';
    unless(defined(&OPENSSL_NO_DEPRECATED_3_0)) {
	eval 'sub HEADER_CONF_H () {1;}' unless defined(&HEADER_CONF_H);
    }
    require 'openssl/bio.ph';
    require 'openssl/lhash.ph';
    require 'openssl/safestack.ph';
    require 'openssl/e_os2.ph';
    require 'openssl/types.ph';
    require 'openssl/conferr.ph';
    if(defined(&__cplusplus)) {
    }
    eval 'sub sk_CONF_VALUE_num {
        my($sk) = @_;
	    eval q( &OPENSSL_sk_num( &ossl_check_const_CONF_VALUE_sk_type($sk)));
    }' unless defined(&sk_CONF_VALUE_num);
    eval 'sub sk_CONF_VALUE_value {
        my($sk, $idx) = @_;
	    eval q((( &CONF_VALUE *) &OPENSSL_sk_value( &ossl_check_const_CONF_VALUE_sk_type($sk), ($idx))));
    }' unless defined(&sk_CONF_VALUE_value);
    eval 'sub sk_CONF_VALUE_new {
        my($cmp) = @_;
	    eval q((( &STACK_OF( &CONF_VALUE) *) &OPENSSL_sk_new( &ossl_check_CONF_VALUE_compfunc_type($cmp))));
    }' unless defined(&sk_CONF_VALUE_new);
    eval 'sub sk_CONF_VALUE_new_null () {
        eval q((( &STACK_OF( &CONF_VALUE) *) &OPENSSL_sk_new_null()));
    }' unless defined(&sk_CONF_VALUE_new_null);
    eval 'sub sk_CONF_VALUE_new_reserve {
        my($cmp, $n) = @_;
	    eval q((( &STACK_OF( &CONF_VALUE) *) &OPENSSL_sk_new_reserve( &ossl_check_CONF_VALUE_compfunc_type($cmp), ($n))));
    }' unless defined(&sk_CONF_VALUE_new_reserve);
    eval 'sub sk_CONF_VALUE_reserve {
        my($sk, $n) = @_;
	    eval q( &OPENSSL_sk_reserve( &ossl_check_CONF_VALUE_sk_type($sk), ($n)));
    }' unless defined(&sk_CONF_VALUE_reserve);
    eval 'sub sk_CONF_VALUE_free {
        my($sk) = @_;
	    eval q( &OPENSSL_sk_free( &ossl_check_CONF_VALUE_sk_type($sk)));
    }' unless defined(&sk_CONF_VALUE_free);
    eval 'sub sk_CONF_VALUE_zero {
        my($sk) = @_;
	    eval q( &OPENSSL_sk_zero( &ossl_check_CONF_VALUE_sk_type($sk)));
    }' unless defined(&sk_CONF_VALUE_zero);
    eval 'sub sk_CONF_VALUE_delete {
        my($sk, $i) = @_;
	    eval q((( &CONF_VALUE *) &OPENSSL_sk_delete( &ossl_check_CONF_VALUE_sk_type($sk), ($i))));
    }' unless defined(&sk_CONF_VALUE_delete);
    eval 'sub sk_CONF_VALUE_delete_ptr {
        my($sk, $ptr) = @_;
	    eval q((( &CONF_VALUE *) &OPENSSL_sk_delete_ptr( &ossl_check_CONF_VALUE_sk_type($sk),  &ossl_check_CONF_VALUE_type($ptr))));
    }' unless defined(&sk_CONF_VALUE_delete_ptr);
    eval 'sub sk_CONF_VALUE_push {
        my($sk, $ptr) = @_;
	    eval q( &OPENSSL_sk_push( &ossl_check_CONF_VALUE_sk_type($sk),  &ossl_check_CONF_VALUE_type($ptr)));
    }' unless defined(&sk_CONF_VALUE_push);
    eval 'sub sk_CONF_VALUE_unshift {
        my($sk, $ptr) = @_;
	    eval q( &OPENSSL_sk_unshift( &ossl_check_CONF_VALUE_sk_type($sk),  &ossl_check_CONF_VALUE_type($ptr)));
    }' unless defined(&sk_CONF_VALUE_unshift);
    eval 'sub sk_CONF_VALUE_pop {
        my($sk) = @_;
	    eval q((( &CONF_VALUE *) &OPENSSL_sk_pop( &ossl_check_CONF_VALUE_sk_type($sk))));
    }' unless defined(&sk_CONF_VALUE_pop);
    eval 'sub sk_CONF_VALUE_shift {
        my($sk) = @_;
	    eval q((( &CONF_VALUE *) &OPENSSL_sk_shift( &ossl_check_CONF_VALUE_sk_type($sk))));
    }' unless defined(&sk_CONF_VALUE_shift);
    eval 'sub sk_CONF_VALUE_pop_free {
        my($sk, $freefunc) = @_;
	    eval q( &OPENSSL_sk_pop_free( &ossl_check_CONF_VALUE_sk_type($sk), &ossl_check_CONF_VALUE_freefunc_type($freefunc)));
    }' unless defined(&sk_CONF_VALUE_pop_free);
    eval 'sub sk_CONF_VALUE_insert {
        my($sk, $ptr, $idx) = @_;
	    eval q( &OPENSSL_sk_insert( &ossl_check_CONF_VALUE_sk_type($sk),  &ossl_check_CONF_VALUE_type($ptr), ($idx)));
    }' unless defined(&sk_CONF_VALUE_insert);
    eval 'sub sk_CONF_VALUE_set {
        my($sk, $idx, $ptr) = @_;
	    eval q((( &CONF_VALUE *) &OPENSSL_sk_set( &ossl_check_CONF_VALUE_sk_type($sk), ($idx),  &ossl_check_CONF_VALUE_type($ptr))));
    }' unless defined(&sk_CONF_VALUE_set);
    eval 'sub sk_CONF_VALUE_find {
        my($sk, $ptr) = @_;
	    eval q( &OPENSSL_sk_find( &ossl_check_CONF_VALUE_sk_type($sk),  &ossl_check_CONF_VALUE_type($ptr)));
    }' unless defined(&sk_CONF_VALUE_find);
    eval 'sub sk_CONF_VALUE_find_ex {
        my($sk, $ptr) = @_;
	    eval q( &OPENSSL_sk_find_ex( &ossl_check_CONF_VALUE_sk_type($sk),  &ossl_check_CONF_VALUE_type($ptr)));
    }' unless defined(&sk_CONF_VALUE_find_ex);
    eval 'sub sk_CONF_VALUE_find_all {
        my($sk, $ptr, $pnum) = @_;
	    eval q( &OPENSSL_sk_find_all( &ossl_check_CONF_VALUE_sk_type($sk),  &ossl_check_CONF_VALUE_type($ptr), $pnum));
    }' unless defined(&sk_CONF_VALUE_find_all);
    eval 'sub sk_CONF_VALUE_sort {
        my($sk) = @_;
	    eval q( &OPENSSL_sk_sort( &ossl_check_CONF_VALUE_sk_type($sk)));
    }' unless defined(&sk_CONF_VALUE_sort);
    eval 'sub sk_CONF_VALUE_is_sorted {
        my($sk) = @_;
	    eval q( &OPENSSL_sk_is_sorted( &ossl_check_const_CONF_VALUE_sk_type($sk)));
    }' unless defined(&sk_CONF_VALUE_is_sorted);
    eval 'sub sk_CONF_VALUE_dup {
        my($sk) = @_;
	    eval q((( &STACK_OF( &CONF_VALUE) *) &OPENSSL_sk_dup( &ossl_check_const_CONF_VALUE_sk_type($sk))));
    }' unless defined(&sk_CONF_VALUE_dup);
    eval 'sub sk_CONF_VALUE_deep_copy {
        my($sk, $copyfunc, $freefunc) = @_;
	    eval q((( &STACK_OF( &CONF_VALUE) *) &OPENSSL_sk_deep_copy( &ossl_check_const_CONF_VALUE_sk_type($sk),  &ossl_check_CONF_VALUE_copyfunc_type($copyfunc),  &ossl_check_CONF_VALUE_freefunc_type($freefunc))));
    }' unless defined(&sk_CONF_VALUE_deep_copy);
    eval 'sub sk_CONF_VALUE_set_cmp_func {
        my($sk, $cmp) = @_;
	    eval q((( &sk_CONF_VALUE_compfunc) &OPENSSL_sk_set_cmp_func( &ossl_check_CONF_VALUE_sk_type($sk),  &ossl_check_CONF_VALUE_compfunc_type($cmp))));
    }' unless defined(&sk_CONF_VALUE_set_cmp_func);
    eval 'sub lh_CONF_VALUE_new {
        my($hfn, $cmp) = @_;
	    eval q((( &LHASH_OF( &CONF_VALUE) *) &OPENSSL_LH_new( &ossl_check_CONF_VALUE_lh_hashfunc_type($hfn),  &ossl_check_CONF_VALUE_lh_compfunc_type($cmp))));
    }' unless defined(&lh_CONF_VALUE_new);
    eval 'sub lh_CONF_VALUE_free {
        my($lh) = @_;
	    eval q( &OPENSSL_LH_free( &ossl_check_CONF_VALUE_lh_type($lh)));
    }' unless defined(&lh_CONF_VALUE_free);
    eval 'sub lh_CONF_VALUE_flush {
        my($lh) = @_;
	    eval q( &OPENSSL_LH_flush( &ossl_check_CONF_VALUE_lh_type($lh)));
    }' unless defined(&lh_CONF_VALUE_flush);
    eval 'sub lh_CONF_VALUE_insert {
        my($lh, $ptr) = @_;
	    eval q((( &CONF_VALUE *) &OPENSSL_LH_insert( &ossl_check_CONF_VALUE_lh_type($lh),  &ossl_check_CONF_VALUE_lh_plain_type($ptr))));
    }' unless defined(&lh_CONF_VALUE_insert);
    eval 'sub lh_CONF_VALUE_delete {
        my($lh, $ptr) = @_;
	    eval q((( &CONF_VALUE *) &OPENSSL_LH_delete( &ossl_check_CONF_VALUE_lh_type($lh),  &ossl_check_const_CONF_VALUE_lh_plain_type($ptr))));
    }' unless defined(&lh_CONF_VALUE_delete);
    eval 'sub lh_CONF_VALUE_retrieve {
        my($lh, $ptr) = @_;
	    eval q((( &CONF_VALUE *) &OPENSSL_LH_retrieve( &ossl_check_CONF_VALUE_lh_type($lh),  &ossl_check_const_CONF_VALUE_lh_plain_type($ptr))));
    }' unless defined(&lh_CONF_VALUE_retrieve);
    eval 'sub lh_CONF_VALUE_error {
        my($lh) = @_;
	    eval q( &OPENSSL_LH_error( &ossl_check_CONF_VALUE_lh_type($lh)));
    }' unless defined(&lh_CONF_VALUE_error);
    eval 'sub lh_CONF_VALUE_num_items {
        my($lh) = @_;
	    eval q( &OPENSSL_LH_num_items( &ossl_check_CONF_VALUE_lh_type($lh)));
    }' unless defined(&lh_CONF_VALUE_num_items);
    eval 'sub lh_CONF_VALUE_node_stats_bio {
        my($lh, $out) = @_;
	    eval q( &OPENSSL_LH_node_stats_bio( &ossl_check_const_CONF_VALUE_lh_type($lh), $out));
    }' unless defined(&lh_CONF_VALUE_node_stats_bio);
    eval 'sub lh_CONF_VALUE_node_usage_stats_bio {
        my($lh, $out) = @_;
	    eval q( &OPENSSL_LH_node_usage_stats_bio( &ossl_check_const_CONF_VALUE_lh_type($lh), $out));
    }' unless defined(&lh_CONF_VALUE_node_usage_stats_bio);
    eval 'sub lh_CONF_VALUE_stats_bio {
        my($lh, $out) = @_;
	    eval q( &OPENSSL_LH_stats_bio( &ossl_check_const_CONF_VALUE_lh_type($lh), $out));
    }' unless defined(&lh_CONF_VALUE_stats_bio);
    eval 'sub lh_CONF_VALUE_get_down_load {
        my($lh) = @_;
	    eval q( &OPENSSL_LH_get_down_load( &ossl_check_CONF_VALUE_lh_type($lh)));
    }' unless defined(&lh_CONF_VALUE_get_down_load);
    eval 'sub lh_CONF_VALUE_set_down_load {
        my($lh, $dl) = @_;
	    eval q( &OPENSSL_LH_set_down_load( &ossl_check_CONF_VALUE_lh_type($lh), $dl));
    }' unless defined(&lh_CONF_VALUE_set_down_load);
    eval 'sub lh_CONF_VALUE_doall {
        my($lh, $dfn) = @_;
	    eval q( &OPENSSL_LH_doall( &ossl_check_CONF_VALUE_lh_type($lh),  &ossl_check_CONF_VALUE_lh_doallfunc_type($dfn)));
    }' unless defined(&lh_CONF_VALUE_doall);
    unless(defined(&OPENSSL_NO_DEPRECATED_3_0)) {
	require 'openssl/conftypes.ph';
    }
    eval 'sub CONF_MFLAGS_IGNORE_ERRORS () {0x1;}' unless defined(&CONF_MFLAGS_IGNORE_ERRORS);
    eval 'sub CONF_MFLAGS_IGNORE_RETURN_CODES () {0x2;}' unless defined(&CONF_MFLAGS_IGNORE_RETURN_CODES);
    eval 'sub CONF_MFLAGS_SILENT () {0x4;}' unless defined(&CONF_MFLAGS_SILENT);
    eval 'sub CONF_MFLAGS_NO_DSO () {0x8;}' unless defined(&CONF_MFLAGS_NO_DSO);
    eval 'sub CONF_MFLAGS_IGNORE_MISSING_FILE () {0x10;}' unless defined(&CONF_MFLAGS_IGNORE_MISSING_FILE);
    eval 'sub CONF_MFLAGS_DEFAULT_SECTION () {0x20;}' unless defined(&CONF_MFLAGS_DEFAULT_SECTION);
    unless(defined(&OPENSSL_NO_STDIO)) {
    }
    unless(defined(&OPENSSL_NO_STDIO)) {
    }
    unless(defined(&OPENSSL_NO_DEPRECATED_1_1_0)) {
    }
    unless(defined(&OPENSSL_NO_DEPRECATED_1_1_0)) {
	eval 'sub OPENSSL_no_config () {
	    eval q( &OPENSSL_init_crypto( &OPENSSL_INIT_NO_LOAD_CONFIG,  &NULL));
	}' unless defined(&OPENSSL_no_config);
    }
    unless(defined(&OPENSSL_NO_DEPRECATED_3_0)) {
    }
    unless(defined(&OPENSSL_NO_STDIO)) {
    }
    unless(defined(&OPENSSL_NO_STDIO)) {
    }
    eval 'sub NCONF_get_number {
        my($c, $g, $n, $r) = @_;
	    eval q( &NCONF_get_number_e($c, $g, $n, $r));
    }' unless defined(&NCONF_get_number);
    unless(defined(&OPENSSL_NO_DEPRECATED_1_1_0)) {
	eval 'sub CONF_modules_free () {
	    eval q( &while (0)  &continue);
	}' unless defined(&CONF_modules_free);
    }
    if(defined(&__cplusplus)) {
    }
}
1;
