summaryrefslogtreecommitdiff
path: root/chromium/net/third_party/quiche/src/quiche/http2/adapter/nghttp2_data_provider.h
diff options
context:
space:
mode:
authorAllan Sandfeld Jensen <allan.jensen@qt.io>2022-05-17 17:24:03 +0200
committerAllan Sandfeld Jensen <allan.jensen@qt.io>2022-06-22 07:51:41 +0000
commit774f54339e5db91f785733232d3950366db65d07 (patch)
tree068e1b47bd1af94d77094ed12b604a6b83d9c22a /chromium/net/third_party/quiche/src/quiche/http2/adapter/nghttp2_data_provider.h
parentf7eaed5286974984ba5f9e3189d8f49d03e99f81 (diff)
downloadqtwebengine-chromium-774f54339e5db91f785733232d3950366db65d07.tar.gz
BASELINE: Update Chromium to 102.0.5005.57
Change-Id: I885f714bb40ee724c28f94ca6bd8dbdb39915158 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
Diffstat (limited to 'chromium/net/third_party/quiche/src/quiche/http2/adapter/nghttp2_data_provider.h')
-rw-r--r--chromium/net/third_party/quiche/src/quiche/http2/adapter/nghttp2_data_provider.h37
1 files changed, 37 insertions, 0 deletions
diff --git a/chromium/net/third_party/quiche/src/quiche/http2/adapter/nghttp2_data_provider.h b/chromium/net/third_party/quiche/src/quiche/http2/adapter/nghttp2_data_provider.h
new file mode 100644
index 00000000000..a3f09577344
--- /dev/null
+++ b/chromium/net/third_party/quiche/src/quiche/http2/adapter/nghttp2_data_provider.h
@@ -0,0 +1,37 @@
+#ifndef QUICHE_HTTP2_ADAPTER_NGHTTP2_DATA_PROVIDER_H_
+#define QUICHE_HTTP2_ADAPTER_NGHTTP2_DATA_PROVIDER_H_
+
+#include <cstdint>
+#include <memory>
+
+#include "quiche/http2/adapter/data_source.h"
+#include "quiche/http2/adapter/nghttp2.h"
+
+namespace http2 {
+namespace adapter {
+namespace callbacks {
+
+// Assumes |source| is a DataFrameSource.
+ssize_t DataFrameSourceReadCallback(nghttp2_session* /*session */,
+ int32_t /* stream_id */, uint8_t* /* buf */,
+ size_t length, uint32_t* data_flags,
+ nghttp2_data_source* source,
+ void* /* user_data */);
+
+int DataFrameSourceSendCallback(nghttp2_session* /* session */,
+ nghttp2_frame* /* frame */,
+ const uint8_t* framehd, size_t length,
+ nghttp2_data_source* source,
+ void* /* user_data */);
+
+} // namespace callbacks
+
+// Transforms a DataFrameSource into a nghttp2_data_provider. Does not take
+// ownership of |source|. Returns nullptr if |source| is nullptr.
+std::unique_ptr<nghttp2_data_provider> MakeDataProvider(
+ DataFrameSource* source);
+
+} // namespace adapter
+} // namespace http2
+
+#endif // QUICHE_HTTP2_ADAPTER_NGHTTP2_DATA_PROVIDER_H_