[#OSSL_HTTP_REQ_CTX_nbio_d2i]
= OSSL&lowbar;HTTP&lowbar;REQ&lowbar;CTX&lowbar;nbio&lowbar;d2i
:mrdocs:

Exchange an HTTP request non&hyphen;blockingly and decode the response body as ASN&period;1&period;

== Synopsis

Declared in `&lt;openssl&sol;http&period;h&gt;`

[source,cpp,subs="verbatim,replacements,macros,-callouts"]
----
int
OSSL&lowbar;HTTP&lowbar;REQ&lowbar;CTX&lowbar;nbio&lowbar;d2i(
    xref:OSSL_HTTP_REQ_CTX.adoc[OSSL&lowbar;HTTP&lowbar;REQ&lowbar;CTX]* rctx,
    xref:ASN1_VALUE.adoc[ASN1&lowbar;VALUE]** pval,
    xref:ASN1_ITEM.adoc[ASN1&lowbar;ITEM] const* it);
----

== Return Value

1 on completion with success, 0 on failure, or &hyphen;1 if the I&sol;O would block (retry later)&period;

== Parameters

[cols="1,4"]
|===
| Name| Description
| *rctx*
| Request context prepared with headers&sol;body&semi; may need multiple calls when BIOs would block&period;
| *pval*
| Destination for the decoded ASN&period;1 value (type described by `it)&period;`
| *it*
| ASN&period;1 item descriptor used to decode the HTTP response body&period;
|===


[.small]#Created with https://www.mrdocs.com[MrDocs]#
