123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739moduleCI=Cstubs_internalsexternalasync_ssl_stub_1_TLS_method:unit->CI.voidp="async_ssl_stub_1_TLS_method"externalasync_ssl_stub_2_TLSv1_method:unit->CI.voidp="async_ssl_stub_2_TLSv1_method"externalasync_ssl_stub_3_TLSv1_1_method:unit->CI.voidp="async_ssl_stub_3_TLSv1_1_method"externalasync_ssl_stub_4_TLSv1_2_method:unit->CI.voidp="async_ssl_stub_4_TLSv1_2_method"externalasync_ssl_stub_5_ERR_get_error:unit->Unsigned.ulong="async_ssl_stub_5_ERR_get_error"externalasync_ssl_stub_6_ERR_error_string_n:Unsigned.ulong->_CI.fatptr->int->unit="async_ssl_stub_6_ERR_error_string_n"externalasync_ssl_stub_7_OpenSSL_add_all_digests:unit->unit="async_ssl_stub_7_OpenSSL_add_all_digests"externalasync_ssl_stub_8_OpenSSL_add_all_ciphers:unit->unit="async_ssl_stub_8_OpenSSL_add_all_ciphers"externalasync_ssl_stub_9_OpenSSL_add_ssl_algorithms:unit->unit="async_ssl_stub_9_OpenSSL_add_ssl_algorithms"externalasync_ssl_stub_10_OPENSSL_config:_CI.fatptr->unit="async_ssl_stub_10_OPENSSL_config"externalasync_ssl_stub_11_SSL_library_init:unit->Unsigned.ulong="async_ssl_stub_11_SSL_library_init"externalasync_ssl_stub_12_SSL_load_error_strings:unit->unit="async_ssl_stub_12_SSL_load_error_strings"externalasync_ssl_stub_13_ERR_load_crypto_strings:unit->unit="async_ssl_stub_13_ERR_load_crypto_strings"externalasync_ssl_stub_14_ENGINE_load_builtin_engines:unit->unit="async_ssl_stub_14_ENGINE_load_builtin_engines"externalasync_ssl_stub_15_ENGINE_register_all_complete:unit->unit="async_ssl_stub_15_ENGINE_register_all_complete"externalasync_ssl_stub_16_SSL_CTX_new:_CI.fatptr->CI.voidp="async_ssl_stub_16_SSL_CTX_new"externalasync_ssl_stub_17_SSL_CTX_free:_CI.fatptr->unit="async_ssl_stub_17_SSL_CTX_free"externalasync_ssl_stub_18_SSL_CTX_set_security_level:_CI.fatptr->int->unit="async_ssl_stub_18_SSL_CTX_set_security_level"externalasync_ssl_stub_19_SSL_CTX_load_verify_locations:_CI.fatptr->_CI.fatptr->_CI.fatptr->int="async_ssl_stub_19_SSL_CTX_load_verify_locations"externalasync_ssl_stub_20_SSL_CTX_set_default_verify_paths:_CI.fatptr->int="async_ssl_stub_20_SSL_CTX_set_default_verify_paths"externalasync_ssl_stub_21_SSL_CTX_set_session_id_context:_CI.fatptr->_CI.fatptr->Unsigned.uint->int="async_ssl_stub_21_SSL_CTX_set_session_id_context"externalasync_ssl_stub_22_SSL_CTX_set_cipher_list:_CI.fatptr->_CI.fatptr->int="async_ssl_stub_22_SSL_CTX_set_cipher_list"externalasync_ssl_stub_23_SSL_CTX_set_options:_CI.fatptr->Unsigned.ulong->Unsigned.ulong="async_ssl_stub_23_SSL_CTX_set_options"externalasync_ssl_stub_24_SSL_CTX_use_certificate_chain_file:_CI.fatptr->_CI.fatptr->int="async_ssl_stub_24_SSL_CTX_use_certificate_chain_file"externalasync_ssl_stub_25_SSL_CTX_use_certificate_file:_CI.fatptr->_CI.fatptr->int->int="async_ssl_stub_25_SSL_CTX_use_certificate_file"externalasync_ssl_stub_26_SSL_CTX_use_PrivateKey_file:_CI.fatptr->_CI.fatptr->int->int="async_ssl_stub_26_SSL_CTX_use_PrivateKey_file"externalasync_ssl_stub_27_BIO_new:_CI.fatptr->CI.voidp="async_ssl_stub_27_BIO_new"externalasync_ssl_stub_28_BIO_s_mem:unit->CI.voidp="async_ssl_stub_28_BIO_s_mem"externalasync_ssl_stub_29_BIO_read:_CI.fatptr->_CI.fatptr->int->int="async_ssl_stub_29_BIO_read"externalasync_ssl_stub_30_BIO_write:_CI.fatptr->_CI.fatptr->int->int="async_ssl_stub_30_BIO_write"externalasync_ssl_stub_31_OBJ_obj2nid:_CI.fatptr->int="async_ssl_stub_31_OBJ_obj2nid"externalasync_ssl_stub_32_OBJ_nid2sn:int->CI.voidp="async_ssl_stub_32_OBJ_nid2sn"externalasync_ssl_stub_33_OBJ_txt2nid:_CI.fatptr->int="async_ssl_stub_33_OBJ_txt2nid"externalasync_ssl_stub_34_ASN1_STRING_length:_CI.fatptr->int="async_ssl_stub_34_ASN1_STRING_length"externalasync_ssl_stub_35_ASN1_STRING_data:_CI.fatptr->CI.voidp="async_ssl_stub_35_ASN1_STRING_data"externalasync_ssl_stub_36_X509_NAME_ENTRY_get_object:_CI.fatptr->CI.voidp="async_ssl_stub_36_X509_NAME_ENTRY_get_object"externalasync_ssl_stub_37_X509_NAME_ENTRY_get_data:_CI.fatptr->CI.voidp="async_ssl_stub_37_X509_NAME_ENTRY_get_data"externalasync_ssl_stub_38_X509_NAME_entry_count:_CI.fatptr->int="async_ssl_stub_38_X509_NAME_entry_count"externalasync_ssl_stub_39_X509_NAME_get_entry:_CI.fatptr->int->CI.voidp="async_ssl_stub_39_X509_NAME_get_entry"externalasync_ssl_stub_40_EVP_sha1:unit->CI.voidp="async_ssl_stub_40_EVP_sha1"externalasync_ssl_stub_41_X509_get_subject_name:_CI.fatptr->CI.voidp="async_ssl_stub_41_X509_get_subject_name"externalasync_ssl_stub_42_X509_verify_cert_error_string:Signed.long->CI.voidp="async_ssl_stub_42_X509_verify_cert_error_string"externalasync_ssl_stub_43_X509_free:_CI.fatptr->unit="async_ssl_stub_43_X509_free"externalasync_ssl_stub_44_async_ssl__subject_alt_names:_CI.fatptr->CI.voidp="async_ssl_stub_44_async_ssl__subject_alt_names"externalasync_ssl_stub_45_async_ssl__free_subject_alt_names:_CI.fatptr->unit="async_ssl_stub_45_async_ssl__free_subject_alt_names"externalasync_ssl_stub_46_X509_digest:_CI.fatptr->_CI.fatptr->_CI.fatptr->_CI.fatptr->bool="async_ssl_stub_46_X509_digest"externalasync_ssl_stub_47_SSL_SESSION_new:unit->CI.voidp="async_ssl_stub_47_SSL_SESSION_new"externalasync_ssl_stub_48_SSL_SESSION_free:_CI.fatptr->unit="async_ssl_stub_48_SSL_SESSION_free"externalasync_ssl_stub_49_BN_new:unit->CI.voidp="async_ssl_stub_49_BN_new"externalasync_ssl_stub_50_BN_free:_CI.fatptr->unit="async_ssl_stub_50_BN_free"externalasync_ssl_stub_51_BN_bin2bn:_CI.fatptr->int->_CI.fatptr->CI.voidp="async_ssl_stub_51_BN_bin2bn"externalasync_ssl_stub_52_BN_hex2bn:_CI.fatptr->_CI.fatptr->int="async_ssl_stub_52_BN_hex2bn"externalasync_ssl_stub_53_DH_new:unit->CI.voidp="async_ssl_stub_53_DH_new"externalasync_ssl_stub_54_DH_free:_CI.fatptr->unit="async_ssl_stub_54_DH_free"externalasync_ssl_stub_55_DH_generate_parameters:int->int->_CI.fatfunptr->_CI.fatptr->CI.voidp="async_ssl_stub_55_DH_generate_parameters"externalasync_ssl_stub_56_SSL_new:_CI.fatptr->CI.voidp="async_ssl_stub_56_SSL_new"externalasync_ssl_stub_57_SSL_free:_CI.fatptr->unit="async_ssl_stub_57_SSL_free"externalasync_ssl_stub_58_SSL_set_ssl_method:_CI.fatptr->_CI.fatptr->int="async_ssl_stub_58_SSL_set_ssl_method"externalasync_ssl_stub_59_SSL_get_error:_CI.fatptr->int->int="async_ssl_stub_59_SSL_get_error"externalasync_ssl_stub_60_SSL_set_connect_state:_CI.fatptr->unit="async_ssl_stub_60_SSL_set_connect_state"externalasync_ssl_stub_61_SSL_set_accept_state:_CI.fatptr->unit="async_ssl_stub_61_SSL_set_accept_state"externalasync_ssl_stub_62_SSL_connect:_CI.fatptr->int="async_ssl_stub_62_SSL_connect"externalasync_ssl_stub_63_SSL_accept:_CI.fatptr->int="async_ssl_stub_63_SSL_accept"externalasync_ssl_stub_64_SSL_set_bio:_CI.fatptr->_CI.fatptr->_CI.fatptr->unit="async_ssl_stub_64_SSL_set_bio"externalasync_ssl_stub_65_SSL_read:_CI.fatptr->_CI.fatptr->int->int="async_ssl_stub_65_SSL_read"externalasync_ssl_stub_66_SSL_write:_CI.fatptr->_CI.fatptr->int->int="async_ssl_stub_66_SSL_write"externalasync_ssl_stub_67_SSL_set_verify:_CI.fatptr->int->_CI.fatptr->unit="async_ssl_stub_67_SSL_set_verify"externalasync_ssl_stub_68_SSL_set_cipher_list:_CI.fatptr->_CI.fatptr->int="async_ssl_stub_68_SSL_set_cipher_list"externalasync_ssl_stub_69_SSL_get_cipher_list:_CI.fatptr->int->CI.voidp="async_ssl_stub_69_SSL_get_cipher_list"externalasync_ssl_stub_70_SSL_set1_groups_list:_CI.fatptr->_CI.fatptr->int="async_ssl_stub_70_SSL_set1_groups_list"externalasync_ssl_stub_71_SSL_get_peer_certificate:_CI.fatptr->CI.voidp="async_ssl_stub_71_SSL_get_peer_certificate"externalasync_ssl_stub_72_SSL_get_verify_result:_CI.fatptr->Signed.long="async_ssl_stub_72_SSL_get_verify_result"externalasync_ssl_stub_73_SSL_get_version:_CI.fatptr->CI.voidp="async_ssl_stub_73_SSL_get_version"externalasync_ssl_stub_74_SSL_set_session:_CI.fatptr->_CI.fatptr->int="async_ssl_stub_74_SSL_set_session"externalasync_ssl_stub_75_SSL_session_reused:_CI.fatptr->int="async_ssl_stub_75_SSL_session_reused"externalasync_ssl_stub_76_SSL_get1_session:_CI.fatptr->CI.voidp="async_ssl_stub_76_SSL_get1_session"externalasync_ssl_stub_77_SSL_check_private_key:_CI.fatptr->int="async_ssl_stub_77_SSL_check_private_key"externalasync_ssl_stub_78_SSL_set_tlsext_host_name:_CI.fatptr->_CI.fatptr->int="async_ssl_stub_78_SSL_set_tlsext_host_name"externalasync_ssl_stub_79_async_ssl__pem_peer_certificate_chain:_CI.fatptr->CI.voidp="async_ssl_stub_79_async_ssl__pem_peer_certificate_chain"externalasync_ssl_stub_80_async_ssl__free_pem_peer_certificate_chain:_CI.fatptr->unit="async_ssl_stub_80_async_ssl__free_pem_peer_certificate_chain"type'aresult='atype'areturn='atype'afn=|Returns:'aCI.typ->'areturnfn|Function:'aCI.typ*'bfn->('a->'b)fnletmap_resultfx=fxletreturningt=Returnstlet(@->)fp=Function(f,p)letforeign:typeab.string->(a->b)fn->(a->b)=funnamet->matcht,namewith|Function(CI.Pointer_,ReturnsCI.Void),"async_ssl__free_pem_peer_certificate_chain"->(funx1->letCI.CPointerx2=x1inasync_ssl_stub_80_async_ssl__free_pem_peer_certificate_chainx2)|Function(CI.Pointer_,Returns(CI.View{CI.ty=CI.Pointerx5;read=x6;_})),"async_ssl__pem_peer_certificate_chain"->(funx3->letCI.CPointerx4=x3inx6(CI.make_ptrx5(async_ssl_stub_79_async_ssl__pem_peer_certificate_chainx4)))|Function(CI.Pointer_,Function(CI.Pointer_,Returns(CI.PrimitiveCI.Int))),"SSL_set_tlsext_host_name"->(funx7x9->letCI.CPointerx10=x9inletCI.CPointerx8=x7inasync_ssl_stub_78_SSL_set_tlsext_host_namex8x10)|Function(CI.Pointer_,Returns(CI.PrimitiveCI.Int)),"SSL_check_private_key"->(funx11->letCI.CPointerx12=x11inasync_ssl_stub_77_SSL_check_private_keyx12)|Function(CI.Pointer_,Returns(CI.View{CI.ty=CI.Pointerx15;read=x16;_})),"SSL_get1_session"->(funx13->letCI.CPointerx14=x13inx16(CI.make_ptrx15(async_ssl_stub_76_SSL_get1_sessionx14)))|Function(CI.Pointer_,Returns(CI.PrimitiveCI.Int)),"SSL_session_reused"->(funx17->letCI.CPointerx18=x17inasync_ssl_stub_75_SSL_session_reusedx18)|Function(CI.Pointer_,Function(CI.Pointer_,Returns(CI.PrimitiveCI.Int))),"SSL_set_session"->(funx19x21->letCI.CPointerx22=x21inletCI.CPointerx20=x19inasync_ssl_stub_74_SSL_set_sessionx20x22)|Function(CI.Pointer_,Returns(CI.View{CI.ty=CI.Pointerx25;read=x26;_})),"SSL_get_version"->(funx23->letCI.CPointerx24=x23inx26(CI.make_ptrx25(async_ssl_stub_73_SSL_get_versionx24)))|Function(CI.Pointer_,Returns(CI.PrimitiveCI.Long)),"SSL_get_verify_result"->(funx27->letCI.CPointerx28=x27inasync_ssl_stub_72_SSL_get_verify_resultx28)|Function(CI.Pointer_,Returns(CI.View{CI.ty=CI.Pointerx31;read=x32;_})),"SSL_get_peer_certificate"->(funx29->letCI.CPointerx30=x29inx32(CI.make_ptrx31(async_ssl_stub_71_SSL_get_peer_certificatex30)))|Function(CI.Pointer_,Function(CI.View{CI.ty=CI.Pointer_;write=x36;_},Returns(CI.PrimitiveCI.Int))),"SSL_set1_groups_list"->(funx33x35->letCI.CPointerx38=x36x35inletCI.CPointerx34=x33inletx37=x38inasync_ssl_stub_70_SSL_set1_groups_listx34x37)|Function(CI.Pointer_,Function(CI.PrimitiveCI.Int,Returns(CI.View{CI.ty=CI.Pointerx42;read=x43;_}))),"SSL_get_cipher_list"->(funx39x41->letCI.CPointerx40=x39inx43(CI.make_ptrx42(async_ssl_stub_69_SSL_get_cipher_listx40x41)))|Function(CI.Pointer_,Function(CI.View{CI.ty=CI.Pointer_;write=x47;_},Returns(CI.PrimitiveCI.Int))),"SSL_set_cipher_list"->(funx44x46->letCI.CPointerx49=x47x46inletCI.CPointerx45=x44inletx48=x49inasync_ssl_stub_68_SSL_set_cipher_listx45x48)|Function(CI.Pointer_,Function(CI.PrimitiveCI.Int,Function(CI.Pointer_,ReturnsCI.Void))),"SSL_set_verify"->(funx50x52x53->letCI.CPointerx54=x53inletCI.CPointerx51=x50inasync_ssl_stub_67_SSL_set_verifyx51x52x54)|Function(CI.Pointer_,Function(CI.View{CI.ty=CI.Pointer_;write=x58;_},Function(CI.PrimitiveCI.Int,Returns(CI.PrimitiveCI.Int)))),"SSL_write"->(funx55x57x61->letCI.CPointerx60=x58x57inletCI.CPointerx56=x55inletx59=x60inasync_ssl_stub_66_SSL_writex56x59x61)|Function(CI.Pointer_,Function(CI.Pointer_,Function(CI.PrimitiveCI.Int,Returns(CI.PrimitiveCI.Int)))),"SSL_read"->(funx62x64x66->letCI.CPointerx65=x64inletCI.CPointerx63=x62inasync_ssl_stub_65_SSL_readx63x65x66)|Function(CI.Pointer_,Function(CI.Pointer_,Function(CI.Pointer_,ReturnsCI.Void))),"SSL_set_bio"->(funx67x69x71->letCI.CPointerx72=x71inletCI.CPointerx70=x69inletCI.CPointerx68=x67inasync_ssl_stub_64_SSL_set_biox68x70x72)|Function(CI.Pointer_,Returns(CI.PrimitiveCI.Int)),"SSL_accept"->(funx73->letCI.CPointerx74=x73inasync_ssl_stub_63_SSL_acceptx74)|Function(CI.Pointer_,Returns(CI.PrimitiveCI.Int)),"SSL_connect"->(funx75->letCI.CPointerx76=x75inasync_ssl_stub_62_SSL_connectx76)|Function(CI.Pointer_,ReturnsCI.Void),"SSL_set_accept_state"->(funx77->letCI.CPointerx78=x77inasync_ssl_stub_61_SSL_set_accept_statex78)|Function(CI.Pointer_,ReturnsCI.Void),"SSL_set_connect_state"->(funx79->letCI.CPointerx80=x79inasync_ssl_stub_60_SSL_set_connect_statex80)|Function(CI.Pointer_,Function(CI.PrimitiveCI.Int,Returns(CI.PrimitiveCI.Int))),"SSL_get_error"->(funx81x83->letCI.CPointerx82=x81inasync_ssl_stub_59_SSL_get_errorx82x83)|Function(CI.Pointer_,Function(CI.Pointer_,Returns(CI.PrimitiveCI.Int))),"SSL_set_ssl_method"->(funx84x86->letCI.CPointerx87=x86inletCI.CPointerx85=x84inasync_ssl_stub_58_SSL_set_ssl_methodx85x87)|Function(CI.Pointer_,ReturnsCI.Void),"SSL_free"->(funx88->letCI.CPointerx89=x88inasync_ssl_stub_57_SSL_freex89)|Function(CI.Pointer_,Returns(CI.View{CI.ty=CI.Pointerx92;read=x93;_})),"SSL_new"->(funx90->letCI.CPointerx91=x90inx93(CI.make_ptrx92(async_ssl_stub_56_SSL_newx91)))|Function(CI.PrimitiveCI.Int,Function(CI.PrimitiveCI.Int,Function(CI.View{CI.ty=CI.Funptr_;write=x97;_},Function(CI.Pointer_,Returns(CI.View{CI.ty=CI.Pointerx102;read=x103;_}))))),"DH_generate_parameters"->(funx94x95x96x100->letCI.CPointerx101=x100inletCI.Static_funptrx99=x97x96inletx98=x99inx103(CI.make_ptrx102(async_ssl_stub_55_DH_generate_parametersx94x95x98x101)))|Function(CI.Pointer_,ReturnsCI.Void),"DH_free"->(funx104->letCI.CPointerx105=x104inasync_ssl_stub_54_DH_freex105)|Function(CI.Void,Returns(CI.View{CI.ty=CI.Pointerx107;read=x108;_})),"DH_new"->(funx106->x108(CI.make_ptrx107(async_ssl_stub_53_DH_newx106)))|Function(CI.Pointer_,Function(CI.View{CI.ty=CI.Pointer_;write=x112;_},Returns(CI.PrimitiveCI.Int))),"BN_hex2bn"->(funx109x111->letCI.CPointerx114=x112x111inletCI.CPointerx110=x109inletx113=x114inasync_ssl_stub_52_BN_hex2bnx110x113)|Function(CI.Pointer_,Function(CI.PrimitiveCI.Int,Function(CI.Pointer_,Returns(CI.Pointerx120)))),"BN_bin2bn"->(funx115x117x118->letCI.CPointerx119=x118inletCI.CPointerx116=x115inCI.make_ptrx120(async_ssl_stub_51_BN_bin2bnx116x117x119))|Function(CI.Pointer_,ReturnsCI.Void),"BN_free"->(funx121->letCI.CPointerx122=x121inasync_ssl_stub_50_BN_freex122)|Function(CI.Void,Returns(CI.View{CI.ty=CI.Pointerx124;read=x125;_})),"BN_new"->(funx123->x125(CI.make_ptrx124(async_ssl_stub_49_BN_newx123)))|Function(CI.Pointer_,ReturnsCI.Void),"SSL_SESSION_free"->(funx126->letCI.CPointerx127=x126inasync_ssl_stub_48_SSL_SESSION_freex127)|Function(CI.Void,Returns(CI.View{CI.ty=CI.Pointerx129;read=x130;_})),"SSL_SESSION_new"->(funx128->x130(CI.make_ptrx129(async_ssl_stub_47_SSL_SESSION_newx128)))|Function(CI.Pointer_,Function(CI.Pointer_,Function(CI.Pointer_,Function(CI.Pointer_,Returns(CI.PrimitiveCI.Bool))))),"X509_digest"->(funx131x133x135x137->letCI.CPointerx138=x137inletCI.CPointerx136=x135inletCI.CPointerx134=x133inletCI.CPointerx132=x131inasync_ssl_stub_46_X509_digestx132x134x136x138)|Function(CI.Pointer_,ReturnsCI.Void),"async_ssl__free_subject_alt_names"->(funx139->letCI.CPointerx140=x139inasync_ssl_stub_45_async_ssl__free_subject_alt_namesx140)|Function(CI.Pointer_,Returns(CI.View{CI.ty=CI.Pointerx143;read=x144;_})),"async_ssl__subject_alt_names"->(funx141->letCI.CPointerx142=x141inx144(CI.make_ptrx143(async_ssl_stub_44_async_ssl__subject_alt_namesx142)))|Function(CI.Pointer_,ReturnsCI.Void),"X509_free"->(funx145->letCI.CPointerx146=x145inasync_ssl_stub_43_X509_freex146)|Function(CI.PrimitiveCI.Long,Returns(CI.View{CI.ty=CI.Pointerx148;read=x149;_})),"X509_verify_cert_error_string"->(funx147->x149(CI.make_ptrx148(async_ssl_stub_42_X509_verify_cert_error_stringx147)))|Function(CI.Pointer_,Returns(CI.View{CI.ty=CI.Pointerx152;read=x153;_})),"X509_get_subject_name"->(funx150->letCI.CPointerx151=x150inx153(CI.make_ptrx152(async_ssl_stub_41_X509_get_subject_namex151)))|Function(CI.Void,Returns(CI.Pointerx155)),"EVP_sha1"->(funx154->CI.make_ptrx155(async_ssl_stub_40_EVP_sha1x154))|Function(CI.Pointer_,Function(CI.PrimitiveCI.Int,Returns(CI.Pointerx159))),"X509_NAME_get_entry"->(funx156x158->letCI.CPointerx157=x156inCI.make_ptrx159(async_ssl_stub_39_X509_NAME_get_entryx157x158))|Function(CI.Pointer_,Returns(CI.PrimitiveCI.Int)),"X509_NAME_entry_count"->(funx160->letCI.CPointerx161=x160inasync_ssl_stub_38_X509_NAME_entry_countx161)|Function(CI.Pointer_,Returns(CI.Pointerx164)),"X509_NAME_ENTRY_get_data"->(funx162->letCI.CPointerx163=x162inCI.make_ptrx164(async_ssl_stub_37_X509_NAME_ENTRY_get_datax163))|Function(CI.Pointer_,Returns(CI.Pointerx167)),"X509_NAME_ENTRY_get_object"->(funx165->letCI.CPointerx166=x165inCI.make_ptrx167(async_ssl_stub_36_X509_NAME_ENTRY_get_objectx166))|Function(CI.Pointer_,Returns(CI.View{CI.ty=CI.Pointerx170;read=x171;_})),"ASN1_STRING_data"->(funx168->letCI.CPointerx169=x168inx171(CI.make_ptrx170(async_ssl_stub_35_ASN1_STRING_datax169)))|Function(CI.Pointer_,Returns(CI.PrimitiveCI.Int)),"ASN1_STRING_length"->(funx172->letCI.CPointerx173=x172inasync_ssl_stub_34_ASN1_STRING_lengthx173)|Function(CI.View{CI.ty=CI.Pointer_;write=x175;_},Returns(CI.PrimitiveCI.Int)),"OBJ_txt2nid"->(funx174->letCI.CPointerx177=x175x174inletx176=x177inasync_ssl_stub_33_OBJ_txt2nidx176)|Function(CI.PrimitiveCI.Int,Returns(CI.View{CI.ty=CI.Pointerx179;read=x180;_})),"OBJ_nid2sn"->(funx178->x180(CI.make_ptrx179(async_ssl_stub_32_OBJ_nid2snx178)))|Function(CI.Pointer_,Returns(CI.PrimitiveCI.Int)),"OBJ_obj2nid"->(funx181->letCI.CPointerx182=x181inasync_ssl_stub_31_OBJ_obj2nidx182)|Function(CI.Pointer_,Function(CI.View{CI.ty=CI.Pointer_;write=x186;_},Function(CI.PrimitiveCI.Int,Returns(CI.PrimitiveCI.Int)))),"BIO_write"->(funx183x185x189->letCI.CPointerx188=x186x185inletCI.CPointerx184=x183inletx187=x188inasync_ssl_stub_30_BIO_writex184x187x189)|Function(CI.Pointer_,Function(CI.Pointer_,Function(CI.PrimitiveCI.Int,Returns(CI.PrimitiveCI.Int)))),"BIO_read"->(funx190x192x194->letCI.CPointerx193=x192inletCI.CPointerx191=x190inasync_ssl_stub_29_BIO_readx191x193x194)|Function(CI.Void,Returns(CI.Pointerx196)),"BIO_s_mem"->(funx195->CI.make_ptrx196(async_ssl_stub_28_BIO_s_memx195))|Function(CI.Pointer_,Returns(CI.Pointerx199)),"BIO_new"->(funx197->letCI.CPointerx198=x197inCI.make_ptrx199(async_ssl_stub_27_BIO_newx198))|Function(CI.Pointer_,Function(CI.View{CI.ty=CI.Pointer_;write=x203;_},Function(CI.PrimitiveCI.Int,Returns(CI.PrimitiveCI.Int)))),"SSL_CTX_use_PrivateKey_file"->(funx200x202x206->letCI.CPointerx205=x203x202inletCI.CPointerx201=x200inletx204=x205inasync_ssl_stub_26_SSL_CTX_use_PrivateKey_filex201x204x206)|Function(CI.Pointer_,Function(CI.View{CI.ty=CI.Pointer_;write=x210;_},Function(CI.PrimitiveCI.Int,Returns(CI.PrimitiveCI.Int)))),"SSL_CTX_use_certificate_file"->(funx207x209x213->letCI.CPointerx212=x210x209inletCI.CPointerx208=x207inletx211=x212inasync_ssl_stub_25_SSL_CTX_use_certificate_filex208x211x213)|Function(CI.Pointer_,Function(CI.View{CI.ty=CI.Pointer_;write=x217;_},Returns(CI.PrimitiveCI.Int))),"SSL_CTX_use_certificate_chain_file"->(funx214x216->letCI.CPointerx219=x217x216inletCI.CPointerx215=x214inletx218=x219inasync_ssl_stub_24_SSL_CTX_use_certificate_chain_filex215x218)|Function(CI.Pointer_,Function(CI.PrimitiveCI.Ulong,Returns(CI.PrimitiveCI.Ulong))),"SSL_CTX_set_options"->(funx220x222->letCI.CPointerx221=x220inasync_ssl_stub_23_SSL_CTX_set_optionsx221x222)|Function(CI.Pointer_,Function(CI.View{CI.ty=CI.Pointer_;write=x226;_},Returns(CI.PrimitiveCI.Int))),"SSL_CTX_set_cipher_list"->(funx223x225->letCI.CPointerx228=x226x225inletCI.CPointerx224=x223inletx227=x228inasync_ssl_stub_22_SSL_CTX_set_cipher_listx224x227)|Function(CI.Pointer_,Function(CI.Pointer_,Function(CI.PrimitiveCI.Uint,Returns(CI.PrimitiveCI.Int)))),"SSL_CTX_set_session_id_context"->(funx229x231x233->letCI.CPointerx232=x231inletCI.CPointerx230=x229inasync_ssl_stub_21_SSL_CTX_set_session_id_contextx230x232x233)|Function(CI.Pointer_,Returns(CI.PrimitiveCI.Int)),"SSL_CTX_set_default_verify_paths"->(funx234->letCI.CPointerx235=x234inasync_ssl_stub_20_SSL_CTX_set_default_verify_pathsx235)|Function(CI.Pointer_,Function(CI.View{CI.ty=CI.Pointer_;write=x239;_},Function(CI.View{CI.ty=CI.Pointer_;write=x243;_},Returns(CI.PrimitiveCI.Int)))),"SSL_CTX_load_verify_locations"->(funx236x238x242->letCI.CPointerx245=x243x242inletCI.CPointerx241=x239x238inletCI.CPointerx237=x236inletx240=x241inletx244=x245inasync_ssl_stub_19_SSL_CTX_load_verify_locationsx237x240x244)|Function(CI.Pointer_,Function(CI.PrimitiveCI.Int,ReturnsCI.Void)),"SSL_CTX_set_security_level"->(funx246x248->letCI.CPointerx247=x246inasync_ssl_stub_18_SSL_CTX_set_security_levelx247x248)|Function(CI.Pointer_,ReturnsCI.Void),"SSL_CTX_free"->(funx249->letCI.CPointerx250=x249inasync_ssl_stub_17_SSL_CTX_freex250)|Function(CI.Pointer_,Returns(CI.View{CI.ty=CI.Pointerx253;read=x254;_})),"SSL_CTX_new"->(funx251->letCI.CPointerx252=x251inx254(CI.make_ptrx253(async_ssl_stub_16_SSL_CTX_newx252)))|Function(CI.Void,ReturnsCI.Void),"ENGINE_register_all_complete"->async_ssl_stub_15_ENGINE_register_all_complete|Function(CI.Void,ReturnsCI.Void),"ENGINE_load_builtin_engines"->async_ssl_stub_14_ENGINE_load_builtin_engines|Function(CI.Void,ReturnsCI.Void),"ERR_load_crypto_strings"->async_ssl_stub_13_ERR_load_crypto_strings|Function(CI.Void,ReturnsCI.Void),"SSL_load_error_strings"->async_ssl_stub_12_SSL_load_error_strings|Function(CI.Void,Returns(CI.PrimitiveCI.Ulong)),"SSL_library_init"->async_ssl_stub_11_SSL_library_init|Function(CI.View{CI.ty=CI.Pointer_;write=x261;_},ReturnsCI.Void),"OPENSSL_config"->(funx260->letCI.CPointerx263=x261x260inletx262=x263inasync_ssl_stub_10_OPENSSL_configx262)|Function(CI.Void,ReturnsCI.Void),"OpenSSL_add_ssl_algorithms"->async_ssl_stub_9_OpenSSL_add_ssl_algorithms|Function(CI.Void,ReturnsCI.Void),"OpenSSL_add_all_ciphers"->async_ssl_stub_8_OpenSSL_add_all_ciphers|Function(CI.Void,ReturnsCI.Void),"OpenSSL_add_all_digests"->async_ssl_stub_7_OpenSSL_add_all_digests|Function(CI.PrimitiveCI.Ulong,Function(CI.Pointer_,Function(CI.PrimitiveCI.Int,ReturnsCI.Void))),"ERR_error_string_n"->(funx267x268x270->letCI.CPointerx269=x268inasync_ssl_stub_6_ERR_error_string_nx267x269x270)|Function(CI.Void,Returns(CI.PrimitiveCI.Ulong)),"ERR_get_error"->async_ssl_stub_5_ERR_get_error|Function(CI.Void,Returns(CI.Pointerx273)),"TLSv1_2_method"->(funx272->CI.make_ptrx273(async_ssl_stub_4_TLSv1_2_methodx272))|Function(CI.Void,Returns(CI.Pointerx275)),"TLSv1_1_method"->(funx274->CI.make_ptrx275(async_ssl_stub_3_TLSv1_1_methodx274))|Function(CI.Void,Returns(CI.Pointerx277)),"TLSv1_method"->(funx276->CI.make_ptrx277(async_ssl_stub_2_TLSv1_methodx276))|Function(CI.Void,Returns(CI.Pointerx279)),"TLS_method"->(funx278->CI.make_ptrx279(async_ssl_stub_1_TLS_methodx278))|_,s->Printf.ksprintffailwith"No match for %s"sletforeign_value:typea.string->aCtypes.typ->aCtypes.ptr=funnamet->matcht,namewith|_,s->Printf.ksprintffailwith"No match for %s"s