|
@@ -2057,23 +2057,13 @@ static ssize_t h2_submit(struct stream_ctx **pstream,
|
|
|
/* no longer needed */
|
|
|
Curl_h1_req_parse_free(&stream->h1);
|
|
|
|
|
|
- nheader = Curl_dynhds_count(&h2_headers);
|
|
|
- nva = malloc(sizeof(nghttp2_nv) * nheader);
|
|
|
+ nva = Curl_dynhds_to_nva(&h2_headers, &nheader);
|
|
|
if(!nva) {
|
|
|
*err = CURLE_OUT_OF_MEMORY;
|
|
|
nwritten = -1;
|
|
|
goto out;
|
|
|
}
|
|
|
|
|
|
- for(i = 0; i < nheader; ++i) {
|
|
|
- struct dynhds_entry *e = Curl_dynhds_getn(&h2_headers, i);
|
|
|
- nva[i].name = (unsigned char *)e->name;
|
|
|
- nva[i].namelen = e->namelen;
|
|
|
- nva[i].value = (unsigned char *)e->value;
|
|
|
- nva[i].valuelen = e->valuelen;
|
|
|
- nva[i].flags = NGHTTP2_NV_FLAG_NONE;
|
|
|
- }
|
|
|
-
|
|
|
h2_pri_spec(data, &pri_spec);
|
|
|
if(!nghttp2_session_check_request_allowed(ctx->h2))
|
|
|
CURL_TRC_CF(data, cf, "send request NOT allowed (via nghttp2)");
|