require '_h2ph_pre.ph';

no warnings qw(redefine misc);

require 'stdlib.ph';
unless(defined(&OPENSSL_ASYNC_H)) {
    eval 'sub OPENSSL_ASYNC_H () {1;}' unless defined(&OPENSSL_ASYNC_H);
    require 'openssl/macros.ph';
    unless(defined(&OPENSSL_NO_DEPRECATED_3_0)) {
	eval 'sub HEADER_ASYNC_H () {1;}' unless defined(&HEADER_ASYNC_H);
    }
    if(defined(&_WIN32)) {
	if(defined(&BASETYPES) || defined(&_WINDEF_H)) {
	    eval 'sub OSSL_ASYNC_FD () { &HANDLE;}' unless defined(&OSSL_ASYNC_FD);
	    eval 'sub OSSL_BAD_ASYNC_FD () { &INVALID_HANDLE_VALUE;}' unless defined(&OSSL_BAD_ASYNC_FD);
	}
    } else {
	eval 'sub OSSL_ASYNC_FD () {\'int\';}' unless defined(&OSSL_ASYNC_FD);
	eval 'sub OSSL_BAD_ASYNC_FD () {-1;}' unless defined(&OSSL_BAD_ASYNC_FD);
    }
    require 'openssl/asyncerr.ph';
    if(defined(&__cplusplus)) {
    }
    eval 'sub ASYNC_ERR () {0;}' unless defined(&ASYNC_ERR);
    eval 'sub ASYNC_NO_JOBS () {1;}' unless defined(&ASYNC_NO_JOBS);
    eval 'sub ASYNC_PAUSE () {2;}' unless defined(&ASYNC_PAUSE);
    eval 'sub ASYNC_FINISH () {3;}' unless defined(&ASYNC_FINISH);
    eval 'sub ASYNC_STATUS_UNSUPPORTED () {0;}' unless defined(&ASYNC_STATUS_UNSUPPORTED);
    eval 'sub ASYNC_STATUS_ERR () {1;}' unless defined(&ASYNC_STATUS_ERR);
    eval 'sub ASYNC_STATUS_OK () {2;}' unless defined(&ASYNC_STATUS_OK);
    eval 'sub ASYNC_STATUS_EAGAIN () {3;}' unless defined(&ASYNC_STATUS_EAGAIN);
    if(defined(&OSSL_ASYNC_FD)) {
    }
    if(defined(&__cplusplus)) {
    }
}
1;
