LCOV - code coverage report
Current view: top level - source/common/quic - envoy_quic_packet_writer.h (source / functions) Hit Total Coverage
Test: coverage.dat Lines: 0 5 0.0 %
Date: 2024-01-05 06:35:25 Functions: 0 5 0.0 %

          Line data    Source code
       1             : #pragma once
       2             : 
       3             : #include "envoy/network/udp_packet_writer_handler.h"
       4             : 
       5             : #include "quiche/quic/core/quic_packet_writer.h"
       6             : 
       7             : namespace Envoy {
       8             : namespace Quic {
       9             : 
      10             : class EnvoyQuicPacketWriter : public quic::QuicPacketWriter {
      11             : public:
      12             :   EnvoyQuicPacketWriter(Network::UdpPacketWriterPtr envoy_udp_packet_writer);
      13             : 
      14             :   quic::WriteResult WritePacket(const char* buffer, size_t buf_len,
      15             :                                 const quic::QuicIpAddress& self_address,
      16             :                                 const quic::QuicSocketAddress& peer_address,
      17             :                                 quic::PerPacketOptions* options,
      18             :                                 const quic::QuicPacketWriterParams& params) override;
      19             : 
      20             :   // quic::QuicPacketWriter
      21           0 :   bool IsWriteBlocked() const override { return envoy_udp_packet_writer_->isWriteBlocked(); }
      22           0 :   void SetWritable() override { envoy_udp_packet_writer_->setWritable(); }
      23           0 :   bool IsBatchMode() const override { return envoy_udp_packet_writer_->isBatchMode(); }
      24             :   // Currently this writer doesn't support pacing offload.
      25           0 :   bool SupportsReleaseTime() const override { return false; }
      26             :   // Currently this writer doesn't support Explicit Congestion Notification.
      27           0 :   bool SupportsEcn() const override { return false; }
      28             : 
      29             :   absl::optional<int> MessageTooBigErrorCode() const override;
      30             :   quic::QuicByteCount GetMaxPacketSize(const quic::QuicSocketAddress& peer_address) const override;
      31             :   quic::QuicPacketBuffer GetNextWriteLocation(const quic::QuicIpAddress& self_address,
      32             :                                               const quic::QuicSocketAddress& peer_address) override;
      33             :   quic::WriteResult Flush() override;
      34             : 
      35             : private:
      36             :   Network::UdpPacketWriterPtr envoy_udp_packet_writer_;
      37             : };
      38             : 
      39             : } // namespace Quic
      40             : } // namespace Envoy

Generated by: LCOV version 1.15