Rename QUICHE_EXPORT_PRIVATE to QUICHE_EXPORT We do not distinguish between those in practice, and this is causing confusion, so we should stick to one, and QUICHE_EXPORT is shorter. PiperOrigin-RevId: 482823752
diff --git a/quiche/balsa/balsa_enums.h b/quiche/balsa/balsa_enums.h index 34bfd4d..07a46bf 100644 --- a/quiche/balsa/balsa_enums.h +++ b/quiche/balsa/balsa_enums.h
@@ -9,7 +9,7 @@ namespace quiche { -struct QUICHE_EXPORT_PRIVATE BalsaFrameEnums { +struct QUICHE_EXPORT BalsaFrameEnums { enum ParseState : int { ERROR, READING_HEADER_AND_FIRSTLINE, @@ -112,7 +112,7 @@ static const char* ErrorCodeToString(ErrorCode error_code); }; -struct QUICHE_EXPORT_PRIVATE BalsaHeadersEnums { +struct QUICHE_EXPORT BalsaHeadersEnums { enum ContentLengthStatus : int { INVALID_CONTENT_LENGTH, CONTENT_LENGTH_OVERFLOW,
diff --git a/quiche/balsa/balsa_frame.h b/quiche/balsa/balsa_frame.h index 70d3aaf..a698298 100644 --- a/quiche/balsa/balsa_frame.h +++ b/quiche/balsa/balsa_frame.h
@@ -28,7 +28,7 @@ } // namespace test // BalsaFrame is a lightweight HTTP framer. -class QUICHE_EXPORT_PRIVATE BalsaFrame : public FramerInterface { +class QUICHE_EXPORT BalsaFrame : public FramerInterface { public: typedef std::vector<std::pair<size_t, size_t> > Lines;
diff --git a/quiche/balsa/balsa_headers.h b/quiche/balsa/balsa_headers.h index 3287cc0..106b3d7 100644 --- a/quiche/balsa/balsa_headers.h +++ b/quiche/balsa/balsa_headers.h
@@ -75,7 +75,7 @@ // - at this point, perhaps just use a vector of strings, and let // the allocator do the right thing. // -class QUICHE_EXPORT_PRIVATE BalsaBuffer { +class QUICHE_EXPORT BalsaBuffer { public: static constexpr size_t kDefaultBlocksize = 4096; @@ -85,7 +85,7 @@ // sizes and bytes free. It *may* be possible to replace this // with a vector<char>, but it's unclear whether moving a vector // can invalidate pointers into it. LWG issue 2321 proposes to fix this. - struct QUICHE_EXPORT_PRIVATE BufferBlock { + struct QUICHE_EXPORT BufferBlock { public: std::unique_ptr<char[]> buffer; size_t buffer_size = 0; @@ -362,13 +362,13 @@ // // Key comparisons are case-insensitive. -class QUICHE_EXPORT_PRIVATE BalsaHeaders : public HeaderApi { +class QUICHE_EXPORT BalsaHeaders : public HeaderApi { public: // Each header line is parsed into a HeaderLineDescription, which maintains // pointers into the BalsaBuffer. // // Succinctly describes one header line as indices into a buffer. - struct QUICHE_EXPORT_PRIVATE HeaderLineDescription { + struct QUICHE_EXPORT HeaderLineDescription { HeaderLineDescription(size_t first_character_index, size_t key_end_index, size_t value_begin_index, size_t last_character_index, size_t buffer_base_index) @@ -418,7 +418,7 @@ // A simple class that can be used in a range-based for loop. template <typename IteratorType> - class QUICHE_EXPORT_PRIVATE iterator_range { + class QUICHE_EXPORT iterator_range { public: using iterator = IteratorType; using const_iterator = IteratorType; @@ -1180,7 +1180,7 @@ // Base class for iterating the headers in a BalsaHeaders object, returning a // pair of string_view's for each header. -class QUICHE_EXPORT_PRIVATE BalsaHeaders::iterator_base +class QUICHE_EXPORT BalsaHeaders::iterator_base : public std::iterator<std::forward_iterator_tag, std::pair<absl::string_view, absl::string_view>> { public: @@ -1223,8 +1223,8 @@ // operator<< work for the classes it sees. It would be better if there // was an additional traits-like system for the gUnit output... but oh // well. - friend QUICHE_EXPORT_PRIVATE std::ostream& operator<<( - std::ostream& os, const iterator_base& it) { + friend QUICHE_EXPORT std::ostream& operator<<(std::ostream& os, + const iterator_base& it) { os << "[" << it.headers_ << ", " << it.idx_ << "]"; return os; } @@ -1276,7 +1276,7 @@ }; // A const iterator for all the header lines. -class QUICHE_EXPORT_PRIVATE BalsaHeaders::const_header_lines_iterator +class QUICHE_EXPORT BalsaHeaders::const_header_lines_iterator : public BalsaHeaders::iterator_base { public: const_header_lines_iterator() : iterator_base() {} @@ -1295,7 +1295,7 @@ }; // A const iterator that stops only on header lines for a particular key. -class QUICHE_EXPORT_PRIVATE BalsaHeaders::const_header_lines_key_iterator +class QUICHE_EXPORT BalsaHeaders::const_header_lines_key_iterator : public BalsaHeaders::iterator_base { public: const_header_lines_key_iterator& operator++() {
diff --git a/quiche/balsa/balsa_visitor_interface.h b/quiche/balsa/balsa_visitor_interface.h index 7dc9de7..74aed5c 100644 --- a/quiche/balsa/balsa_visitor_interface.h +++ b/quiche/balsa/balsa_visitor_interface.h
@@ -21,7 +21,7 @@ // BalsaFrame, then you should subclass it, and set an instantiation of your // subclass as the current visitor for the BalsaFrame class using // BalsaFrame::set_visitor(). -class QUICHE_EXPORT_PRIVATE BalsaVisitorInterface { +class QUICHE_EXPORT BalsaVisitorInterface { public: virtual ~BalsaVisitorInterface() {}
diff --git a/quiche/balsa/framer_interface.h b/quiche/balsa/framer_interface.h index eaa143b..fdb0f7d 100644 --- a/quiche/balsa/framer_interface.h +++ b/quiche/balsa/framer_interface.h
@@ -13,7 +13,7 @@ // A minimal interface supported by BalsaFrame and other framer types. For use // in HttpReader. -class QUICHE_EXPORT_PRIVATE FramerInterface { +class QUICHE_EXPORT FramerInterface { public: virtual ~FramerInterface() {} virtual size_t ProcessInput(const char* input, size_t length) = 0;
diff --git a/quiche/balsa/header_api.h b/quiche/balsa/header_api.h index 09789f5..889c984 100644 --- a/quiche/balsa/header_api.h +++ b/quiche/balsa/header_api.h
@@ -36,7 +36,7 @@ // already lowercaseified. It's faster to avoid converting them to and from // lowercase. Additionally, some implementations of ConstHeaderApi might take // advantage of a constant-time lookup for inlined headers. -class QUICHE_EXPORT_PRIVATE ConstHeaderApi { +class QUICHE_EXPORT ConstHeaderApi { public: virtual ~ConstHeaderApi() {} @@ -186,7 +186,7 @@ // // Operations on header keys are case-insensitive while operations on header // values are case-sensitive. -class QUICHE_EXPORT_PRIVATE HeaderApi : public virtual ConstHeaderApi { +class QUICHE_EXPORT HeaderApi : public virtual ConstHeaderApi { public: // Replaces header entries with key |key| if they exist, or appends // a new header if none exist.
diff --git a/quiche/balsa/header_properties.h b/quiche/balsa/header_properties.h index f94eaa2..cbd5c59 100644 --- a/quiche/balsa/header_properties.h +++ b/quiche/balsa/header_properties.h
@@ -16,7 +16,7 @@ // practices) indicates that header can have multiple values. Note that nothing // stops clients from sending multiple values of other headers, so this may not // be perfectly reliable in practice. -QUICHE_EXPORT_PRIVATE bool IsMultivaluedHeader(absl::string_view header); +QUICHE_EXPORT bool IsMultivaluedHeader(absl::string_view header); // An array of characters that are invalid in HTTP header field names. // These are control characters, including \t, \n, \r, as well as space and @@ -39,11 +39,11 @@ 0x17, 0x18, 0x19, 0x1A, 0x1B, 0x1C, 0x1D, 0x1E, 0x1F, 0x7F}; // Returns true if the given `c` is invalid in a header field name. -QUICHE_EXPORT_PRIVATE bool IsInvalidHeaderKeyChar(uint8_t c); +QUICHE_EXPORT bool IsInvalidHeaderKeyChar(uint8_t c); // Returns true if the given `c` is invalid in a header field or the `value` has // invalid characters. -QUICHE_EXPORT_PRIVATE bool IsInvalidHeaderChar(uint8_t c); -QUICHE_EXPORT_PRIVATE bool HasInvalidHeaderChars(absl::string_view value); +QUICHE_EXPORT bool IsInvalidHeaderChar(uint8_t c); +QUICHE_EXPORT bool HasInvalidHeaderChars(absl::string_view value); } // namespace quiche::header_properties
diff --git a/quiche/balsa/http_validation_policy.h b/quiche/balsa/http_validation_policy.h index b51b1d5..89926c6 100644 --- a/quiche/balsa/http_validation_policy.h +++ b/quiche/balsa/http_validation_policy.h
@@ -14,7 +14,7 @@ // An HttpValidationPolicy captures policy choices affecting parsing of HTTP // requests. It offers individual Boolean member functions to be consulted // during the parsing of an HTTP request. -class QUICHE_EXPORT_PRIVATE HttpValidationPolicy { +class QUICHE_EXPORT HttpValidationPolicy { public: HttpValidationPolicy(bool enforce_all); @@ -39,7 +39,7 @@ bool operator==(const HttpValidationPolicy& other) const; - friend QUICHE_EXPORT_PRIVATE std::ostream& operator<<( + friend QUICHE_EXPORT std::ostream& operator<<( std::ostream& os, const HttpValidationPolicy& policy) { os << "HttpValidationPolicy(enforce_all_=" << policy.enforce_all_ << ")"; return os;
diff --git a/quiche/balsa/noop_balsa_visitor.h b/quiche/balsa/noop_balsa_visitor.h index 4045cf8..9555b52 100644 --- a/quiche/balsa/noop_balsa_visitor.h +++ b/quiche/balsa/noop_balsa_visitor.h
@@ -18,7 +18,7 @@ // Provides empty BalsaVisitorInterface overrides for convenience. // Intended to be used as a base class for BalsaVisitorInterface subclasses that // only need to override a small number of methods. -class QUICHE_EXPORT_PRIVATE NoOpBalsaVisitor : public BalsaVisitorInterface { +class QUICHE_EXPORT NoOpBalsaVisitor : public BalsaVisitorInterface { public: NoOpBalsaVisitor() = default;
diff --git a/quiche/balsa/simple_buffer.h b/quiche/balsa/simple_buffer.h index fe81e33..96fd25f 100644 --- a/quiche/balsa/simple_buffer.h +++ b/quiche/balsa/simple_buffer.h
@@ -18,7 +18,7 @@ // SimpleBuffer stores data in a contiguous region. It can grow on demand, // which involves moving its data. It keeps track of a read and a write // position. Reading consumes data. -class QUICHE_EXPORT_PRIVATE SimpleBuffer { +class QUICHE_EXPORT SimpleBuffer { public: SimpleBuffer() = default; // Create SimpleBuffer with at least `size` reserved capacity.
diff --git a/quiche/binary_http/binary_http_message.h b/quiche/binary_http/binary_http_message.h index 70e1dff..250e109 100644 --- a/quiche/binary_http/binary_http_message.h +++ b/quiche/binary_http/binary_http_message.h
@@ -20,7 +20,7 @@ // Supports encoding and decoding Binary Http messages. // Currently limited to known-length messages. // https://www.ietf.org/archive/id/draft-ietf-httpbis-binary-message-06.html -class QUICHE_EXPORT_PRIVATE BinaryHttpMessage { +class QUICHE_EXPORT BinaryHttpMessage { public: // Name value pair of either a header or trailer field. struct Field { @@ -108,7 +108,7 @@ bool has_host_ = false; }; -class QUICHE_EXPORT_PRIVATE BinaryHttpRequest : public BinaryHttpMessage { +class QUICHE_EXPORT BinaryHttpRequest : public BinaryHttpMessage { public: // HTTP request must have all of the following fields. // Some examples are: @@ -161,10 +161,9 @@ const ControlData control_data_; }; -void QUICHE_EXPORT_PRIVATE PrintTo(const BinaryHttpRequest& msg, - std::ostream* os); +void QUICHE_EXPORT PrintTo(const BinaryHttpRequest& msg, std::ostream* os); -class QUICHE_EXPORT_PRIVATE BinaryHttpResponse : public BinaryHttpMessage { +class QUICHE_EXPORT BinaryHttpResponse : public BinaryHttpMessage { public: // https://www.ietf.org/archive/id/draft-ietf-httpbis-binary-message-06.html#name-response-control-data // A response can contain 0 to N informational responses. Each informational @@ -259,8 +258,7 @@ const uint16_t status_code_; }; -void QUICHE_EXPORT_PRIVATE PrintTo(const BinaryHttpResponse& msg, - std::ostream* os); +void QUICHE_EXPORT PrintTo(const BinaryHttpResponse& msg, std::ostream* os); } // namespace quiche #endif // QUICHE_BINARY_HTTP_BINARY_HTTP_MESSAGE_H_
diff --git a/quiche/common/masque/connect_udp_datagram_payload.h b/quiche/common/masque/connect_udp_datagram_payload.h index 8091670..adc0fea 100644 --- a/quiche/common/masque/connect_udp_datagram_payload.h +++ b/quiche/common/masque/connect_udp_datagram_payload.h
@@ -17,7 +17,7 @@ // UDP-proxying HTTP Datagram payload for use with CONNECT-UDP. See RFC 9298, // Section 5. -class QUICHE_EXPORT_PRIVATE ConnectUdpDatagramPayload { +class QUICHE_EXPORT ConnectUdpDatagramPayload { public: using ContextId = uint64_t; enum class Type { kUdpPacket, kUnknown }; @@ -54,7 +54,7 @@ }; // UDP-proxying HTTP Datagram payload that encodes a UDP packet. -class QUICHE_EXPORT_PRIVATE ConnectUdpDatagramUdpPacketPayload final +class QUICHE_EXPORT ConnectUdpDatagramUdpPacketPayload final : public ConnectUdpDatagramPayload { public: static constexpr ContextId kContextId = 0; @@ -75,7 +75,7 @@ absl::string_view udp_packet_; }; -class QUICHE_EXPORT_PRIVATE ConnectUdpDatagramUnknownPayload final +class QUICHE_EXPORT ConnectUdpDatagramUnknownPayload final : public ConnectUdpDatagramPayload { public: // `udp_proxying_payload` represents the inner payload contained by the UDP-
diff --git a/quiche/common/platform/api/quiche_export.h b/quiche/common/platform/api/quiche_export.h index 4f64819..3f11ccc 100644 --- a/quiche/common/platform/api/quiche_export.h +++ b/quiche/common/platform/api/quiche_export.h
@@ -7,13 +7,11 @@ #include "quiche_platform_impl/quiche_export_impl.h" -// QUICHE_EXPORT is not meant to be used. +// QUICHE_EXPORT is meant for QUICHE functionality that is built in +// Chromium as part of //net/third_party/quiche component, and not fully +// contained in headers. It is required for Windows DLL builds to work. #define QUICHE_EXPORT QUICHE_EXPORT_IMPL -// QUICHE_EXPORT_PRIVATE is meant for QUICHE functionality that is built in -// Chromium as part of //net, and not fully contained in headers. -#define QUICHE_EXPORT_PRIVATE QUICHE_EXPORT_PRIVATE_IMPL - // QUICHE_NO_EXPORT is meant for QUICHE functionality that is either fully // defined in a header, or is built in Chromium as part of tests or tools. #define QUICHE_NO_EXPORT QUICHE_NO_EXPORT_IMPL
diff --git a/quiche/common/platform/api/quiche_hostname_utils.h b/quiche/common/platform/api/quiche_hostname_utils.h index 00c611f..10aa399 100644 --- a/quiche/common/platform/api/quiche_hostname_utils.h +++ b/quiche/common/platform/api/quiche_hostname_utils.h
@@ -12,7 +12,7 @@ namespace quiche { -class QUICHE_EXPORT_PRIVATE QuicheHostnameUtils { +class QUICHE_EXPORT QuicheHostnameUtils { public: QuicheHostnameUtils() = delete;
diff --git a/quiche/common/platform/api/quiche_mem_slice.h b/quiche/common/platform/api/quiche_mem_slice.h index 42c3e58..18319f8 100644 --- a/quiche/common/platform/api/quiche_mem_slice.h +++ b/quiche/common/platform/api/quiche_mem_slice.h
@@ -16,7 +16,7 @@ // QuicheMemSlice is a wrapper around a platform-specific I/O buffer type. It // may be reference counted, though QUICHE itself does not rely on that. -class QUICHE_EXPORT_PRIVATE QuicheMemSlice { +class QUICHE_EXPORT QuicheMemSlice { public: // Constructs a empty QuicheMemSlice with no underlying data. QuicheMemSlice() = default;
diff --git a/quiche/common/platform/api/quiche_mutex.h b/quiche/common/platform/api/quiche_mutex.h index ce982bc..11e6287 100644 --- a/quiche/common/platform/api/quiche_mutex.h +++ b/quiche/common/platform/api/quiche_mutex.h
@@ -21,7 +21,7 @@ namespace quiche { // A class representing a non-reentrant mutex in QUIC. -class QUICHE_LOCKABLE QUICHE_EXPORT_PRIVATE QuicheMutex { +class QUICHE_LOCKABLE QUICHE_EXPORT QuicheMutex { public: QuicheMutex() = default; QuicheMutex(const QuicheMutex&) = delete; @@ -50,7 +50,7 @@ // A helper class that acquires the given QuicheMutex shared lock while the // QuicheReaderMutexLock is in scope. -class QUICHE_SCOPED_LOCKABLE QUICHE_EXPORT_PRIVATE QuicheReaderMutexLock { +class QUICHE_SCOPED_LOCKABLE QUICHE_EXPORT QuicheReaderMutexLock { public: explicit QuicheReaderMutexLock(QuicheMutex* lock) QUICHE_SHARED_LOCK_FUNCTION(lock); @@ -65,7 +65,7 @@ // A helper class that acquires the given QuicheMutex exclusive lock while the // QuicheWriterMutexLock is in scope. -class QUICHE_SCOPED_LOCKABLE QUICHE_EXPORT_PRIVATE QuicheWriterMutexLock { +class QUICHE_SCOPED_LOCKABLE QUICHE_EXPORT QuicheWriterMutexLock { public: explicit QuicheWriterMutexLock(QuicheMutex* lock) QUICHE_EXCLUSIVE_LOCK_FUNCTION(lock); @@ -80,7 +80,7 @@ // A Notification allows threads to receive notification of a single occurrence // of a single event. -class QUICHE_EXPORT_PRIVATE QuicheNotification { +class QUICHE_EXPORT QuicheNotification { public: QuicheNotification() = default; QuicheNotification(const QuicheNotification&) = delete;
diff --git a/quiche/common/platform/api/quiche_reference_counted.h b/quiche/common/platform/api/quiche_reference_counted.h index 61016da..226a155 100644 --- a/quiche/common/platform/api/quiche_reference_counted.h +++ b/quiche/common/platform/api/quiche_reference_counted.h
@@ -11,8 +11,7 @@ namespace quiche { // Base class for explicitly reference-counted objects in QUIC. -class QUICHE_EXPORT_PRIVATE QuicheReferenceCounted - : public QuicheReferenceCountedImpl { +class QUICHE_EXPORT QuicheReferenceCounted : public QuicheReferenceCountedImpl { public: QuicheReferenceCounted() {}
diff --git a/quiche/common/platform/api/quiche_thread.h b/quiche/common/platform/api/quiche_thread.h index 96a596b..0a15e23 100644 --- a/quiche/common/platform/api/quiche_thread.h +++ b/quiche/common/platform/api/quiche_thread.h
@@ -13,7 +13,7 @@ namespace quiche { // A class representing a thread of execution in QUIC. -class QUICHE_EXPORT_PRIVATE QuicheThread : public QuicheThreadImpl { +class QUICHE_EXPORT QuicheThread : public QuicheThreadImpl { public: QuicheThread(const std::string& string) : QuicheThreadImpl(string) {} QuicheThread(const QuicheThread&) = delete;
diff --git a/quiche/common/platform/default/quiche_platform_impl/quiche_export_impl.h b/quiche/common/platform/default/quiche_platform_impl/quiche_export_impl.h index 74018b0..64396f7 100644 --- a/quiche/common/platform/default/quiche_platform_impl/quiche_export_impl.h +++ b/quiche/common/platform/default/quiche_platform_impl/quiche_export_impl.h
@@ -13,7 +13,6 @@ #define QUICHE_EXPORT_IMPL #endif -#define QUICHE_EXPORT_PRIVATE_IMPL QUICHE_EXPORT_IMPL #define QUICHE_NO_EXPORT_IMPL QUICHE_EXPORT_IMPL #endif // QUICHE_COMMON_PLATFORM_DEFAULT_QUICHE_PLATFORM_IMPL_QUICHE_EXPORT_IMPL_H_
diff --git a/quiche/common/platform/default/quiche_platform_impl/quiche_flags_impl.h b/quiche/common/platform/default/quiche_platform_impl/quiche_flags_impl.h index 9e97b26..4565cd8 100644 --- a/quiche/common/platform/default/quiche_platform_impl/quiche_flags_impl.h +++ b/quiche/common/platform/default/quiche_platform_impl/quiche_flags_impl.h
@@ -13,19 +13,19 @@ #include "quiche/common/platform/api/quiche_export.h" -#define QUIC_FLAG(flag, value) QUICHE_EXPORT_PRIVATE extern bool FLAGS_##flag; +#define QUIC_FLAG(flag, value) QUICHE_EXPORT extern bool FLAGS_##flag; #include "quiche/quic/core/quic_flags_list.h" #undef QUIC_FLAG // Protocol flags. TODO(bnc): Move to quiche_protocol_flags_list.h. #define QUIC_PROTOCOL_FLAG(type, flag, ...) \ - QUICHE_EXPORT_PRIVATE extern type FLAGS_##flag; + QUICHE_EXPORT extern type FLAGS_##flag; #include "quiche/quic/core/quic_protocol_flags_list.h" #undef QUIC_PROTOCOL_FLAG // Protocol flags. #define QUICHE_PROTOCOL_FLAG(type, flag, ...) \ - QUICHE_EXPORT_PRIVATE extern type FLAGS_##flag; + QUICHE_EXPORT extern type FLAGS_##flag; #include "quiche/common/quiche_protocol_flags_list.h" #undef QUICHE_PROTOCOL_FLAG
diff --git a/quiche/common/platform/default/quiche_platform_impl/quiche_iovec_impl.h b/quiche/common/platform/default/quiche_platform_impl/quiche_iovec_impl.h index 51bebc4..b4ac17f 100644 --- a/quiche/common/platform/default/quiche_platform_impl/quiche_iovec_impl.h +++ b/quiche/common/platform/default/quiche_platform_impl/quiche_iovec_impl.h
@@ -10,7 +10,7 @@ #if defined(_WIN32) // See <https://pubs.opengroup.org/onlinepubs/009604599/basedefs/sys/uio.h.html> -struct QUICHE_EXPORT_PRIVATE iovec { +struct QUICHE_EXPORT iovec { void* iov_base; size_t iov_len; };
diff --git a/quiche/common/platform/default/quiche_platform_impl/quiche_logging_impl.h b/quiche/common/platform/default/quiche_platform_impl/quiche_logging_impl.h index c2372ca..7ab2966 100644 --- a/quiche/common/platform/default/quiche_platform_impl/quiche_logging_impl.h +++ b/quiche/common/platform/default/quiche_platform_impl/quiche_logging_impl.h
@@ -22,7 +22,7 @@ namespace quiche { -class QUICHE_EXPORT_PRIVATE LogStreamVoidHelper { +class QUICHE_EXPORT LogStreamVoidHelper { public: // This operator has lower precedence than << but higher than ?:, which is // useful for implementing QUICHE_DISREGARD_LOG_STREAM below. @@ -31,7 +31,7 @@ // NoopLogSink provides a log sink that does not put the data that it logs // anywhere. -class QUICHE_EXPORT_PRIVATE NoopLogSink { +class QUICHE_EXPORT NoopLogSink { public: NoopLogSink() {} @@ -52,7 +52,7 @@ // We need to actually implement LOG(FATAL), otherwise some functions will fail // to compile due to the "failed to return value from non-void function" error. -class QUICHE_EXPORT_PRIVATE FatalLogSink : public NoopLogSink { +class QUICHE_EXPORT FatalLogSink : public NoopLogSink { public: ABSL_ATTRIBUTE_NORETURN ~FatalLogSink() { std::cerr << str() << std::endl; @@ -61,7 +61,7 @@ } }; -class QUICHE_EXPORT_PRIVATE CheckLogSink : public NoopLogSink { +class QUICHE_EXPORT CheckLogSink : public NoopLogSink { public: CheckLogSink(bool condition) : condition_(condition) {} ~CheckLogSink() {
diff --git a/quiche/common/platform/default/quiche_platform_impl/quiche_lower_case_string_impl.h b/quiche/common/platform/default/quiche_platform_impl/quiche_lower_case_string_impl.h index 856928a..5761012 100644 --- a/quiche/common/platform/default/quiche_platform_impl/quiche_lower_case_string_impl.h +++ b/quiche/common/platform/default/quiche_platform_impl/quiche_lower_case_string_impl.h
@@ -9,7 +9,7 @@ namespace quiche { -class QUICHE_EXPORT_PRIVATE QuicheLowerCaseStringImpl { +class QUICHE_EXPORT QuicheLowerCaseStringImpl { public: QuicheLowerCaseStringImpl(absl::string_view str) : str_(absl::AsciiStrToLower(str)) {}
diff --git a/quiche/common/platform/default/quiche_platform_impl/quiche_mem_slice_impl.h b/quiche/common/platform/default/quiche_platform_impl/quiche_mem_slice_impl.h index a40fa94..b422b5c 100644 --- a/quiche/common/platform/default/quiche_platform_impl/quiche_mem_slice_impl.h +++ b/quiche/common/platform/default/quiche_platform_impl/quiche_mem_slice_impl.h
@@ -7,7 +7,7 @@ namespace quiche { -class QUICHE_EXPORT_PRIVATE QuicheMemSliceImpl { +class QUICHE_EXPORT QuicheMemSliceImpl { public: QuicheMemSliceImpl() = default;
diff --git a/quiche/common/platform/default/quiche_platform_impl/quiche_mutex_impl.h b/quiche/common/platform/default/quiche_platform_impl/quiche_mutex_impl.h index e358c2b..c6f6655 100644 --- a/quiche/common/platform/default/quiche_platform_impl/quiche_mutex_impl.h +++ b/quiche/common/platform/default/quiche_platform_impl/quiche_mutex_impl.h
@@ -19,7 +19,7 @@ namespace quiche { // A class wrapping a non-reentrant mutex. -class ABSL_LOCKABLE QUICHE_EXPORT_PRIVATE QuicheLockImpl { +class ABSL_LOCKABLE QUICHE_EXPORT QuicheLockImpl { public: QuicheLockImpl() = default; QuicheLockImpl(const QuicheLockImpl&) = delete; @@ -47,7 +47,7 @@ // A Notification allows threads to receive notification of a single occurrence // of a single event. -class QUICHE_EXPORT_PRIVATE QuicheNotificationImpl { +class QUICHE_EXPORT QuicheNotificationImpl { public: QuicheNotificationImpl() = default; QuicheNotificationImpl(const QuicheNotificationImpl&) = delete;
diff --git a/quiche/common/platform/default/quiche_platform_impl/quiche_reference_counted_impl.h b/quiche/common/platform/default/quiche_platform_impl/quiche_reference_counted_impl.h index 8f8a514..b568da6 100644 --- a/quiche/common/platform/default/quiche_platform_impl/quiche_reference_counted_impl.h +++ b/quiche/common/platform/default/quiche_platform_impl/quiche_reference_counted_impl.h
@@ -14,7 +14,7 @@ namespace quiche { -class QUICHE_EXPORT_PRIVATE QuicheReferenceCountedImpl { +class QUICHE_EXPORT QuicheReferenceCountedImpl { public: virtual ~QuicheReferenceCountedImpl() { QUICHE_DCHECK_EQ(ref_count_, 0); }
diff --git a/quiche/common/platform/default/quiche_platform_impl/quiche_system_event_loop_impl.h b/quiche/common/platform/default/quiche_platform_impl/quiche_system_event_loop_impl.h index c3305c2..f810fa8 100644 --- a/quiche/common/platform/default/quiche_platform_impl/quiche_system_event_loop_impl.h +++ b/quiche/common/platform/default/quiche_platform_impl/quiche_system_event_loop_impl.h
@@ -12,7 +12,7 @@ inline void QuicheRunSystemEventLoopIterationImpl() {} -class QUICHE_EXPORT_PRIVATE QuicheSystemEventLoopImpl { +class QUICHE_EXPORT QuicheSystemEventLoopImpl { public: QuicheSystemEventLoopImpl(std::string context_name) { QUICHE_LOG(INFO) << "Starting event loop for " << context_name;
diff --git a/quiche/common/platform/default/quiche_platform_impl/quiche_url_utils_impl.h b/quiche/common/platform/default/quiche_platform_impl/quiche_url_utils_impl.h index dd042a3..45d87e0 100644 --- a/quiche/common/platform/default/quiche_platform_impl/quiche_url_utils_impl.h +++ b/quiche/common/platform/default/quiche_platform_impl/quiche_url_utils_impl.h
@@ -19,7 +19,7 @@ // Parameters are URL-encoded. Collects the names of any expanded variables in // |vars_found|. Supports level 1 templates as specified in RFC 6570. Returns // true if the template was parseable, false if it was malformed. -QUICHE_EXPORT_PRIVATE bool ExpandURITemplateImpl( +QUICHE_EXPORT bool ExpandURITemplateImpl( const std::string& uri_template, const absl::flat_hash_map<std::string, std::string>& parameters, std::string* target, @@ -27,7 +27,7 @@ // Decodes a URL-encoded string and converts it to ASCII. If the decoded input // contains non-ASCII characters, decoding fails and absl::nullopt is returned. -QUICHE_EXPORT_PRIVATE absl::optional<std::string> AsciiUrlDecodeImpl( +QUICHE_EXPORT absl::optional<std::string> AsciiUrlDecodeImpl( absl::string_view input); } // namespace quiche
diff --git a/quiche/common/print_elements.h b/quiche/common/print_elements.h index 627b4c9..ae69c40 100644 --- a/quiche/common/print_elements.h +++ b/quiche/common/print_elements.h
@@ -16,7 +16,7 @@ // Print elements of any iterable container that has cbegin() and cend() methods // and the elements have operator<<(ostream) override. template <typename T> -QUICHE_EXPORT_PRIVATE inline std::string PrintElements(const T& container) { +QUICHE_EXPORT inline std::string PrintElements(const T& container) { std::stringstream debug_string; debug_string << "{"; auto it = container.cbegin();
diff --git a/quiche/common/quiche_buffer_allocator.h b/quiche/common/quiche_buffer_allocator.h index 6bb1af9..0f36842 100644 --- a/quiche/common/quiche_buffer_allocator.h +++ b/quiche/common/quiche_buffer_allocator.h
@@ -16,7 +16,7 @@ namespace quiche { // Abstract base class for classes which allocate and delete buffers. -class QUICHE_EXPORT_PRIVATE QuicheBufferAllocator { +class QUICHE_EXPORT QuicheBufferAllocator { public: virtual ~QuicheBufferAllocator() = default; @@ -38,7 +38,7 @@ // A deleter that can be used to manage ownership of buffers allocated via // QuicheBufferAllocator through std::unique_ptr. -class QUICHE_EXPORT_PRIVATE QuicheBufferDeleter { +class QUICHE_EXPORT QuicheBufferDeleter { public: explicit QuicheBufferDeleter(QuicheBufferAllocator* allocator) : allocator_(allocator) {} @@ -62,7 +62,7 @@ // QuicheMemSlice, except unlike QuicheMemSlice, QuicheBuffer is mutable and is // not platform-specific. Also unlike QuicheMemSlice, QuicheBuffer can be // empty. -class QUICHE_EXPORT_PRIVATE QuicheBuffer { +class QUICHE_EXPORT QuicheBuffer { public: QuicheBuffer() : buffer_(nullptr, QuicheBufferDeleter(nullptr)), size_(0) {} QuicheBuffer(QuicheBufferAllocator* allocator, size_t size)
diff --git a/quiche/common/quiche_data_reader.h b/quiche/common/quiche_data_reader.h index ed05b69..9f7dd56 100644 --- a/quiche/common/quiche_data_reader.h +++ b/quiche/common/quiche_data_reader.h
@@ -26,7 +26,7 @@ // trusted and it is up to the caller to throw away the failed instance and // handle the error as appropriate. None of the Read*() methods should ever be // called after failure, as they will also fail immediately. -class QUICHE_EXPORT_PRIVATE QuicheDataReader { +class QUICHE_EXPORT QuicheDataReader { public: // Constructs a reader using NETWORK_BYTE_ORDER endianness. // Caller must provide an underlying buffer to work on.
diff --git a/quiche/common/quiche_data_writer.h b/quiche/common/quiche_data_writer.h index 8035bb2..bb691cd 100644 --- a/quiche/common/quiche_data_writer.h +++ b/quiche/common/quiche_data_writer.h
@@ -40,7 +40,7 @@ // The QuicheDataWriter supports appending primitive values (int, string, etc) // to a frame instance. The internal memory buffer is exposed as the "data" // of the QuicheDataWriter. -class QUICHE_EXPORT_PRIVATE QuicheDataWriter { +class QUICHE_EXPORT QuicheDataWriter { public: // Creates a QuicheDataWriter where |buffer| is not owned // using NETWORK_BYTE_ORDER endianness.
diff --git a/quiche/common/quiche_endian.h b/quiche/common/quiche_endian.h index 5af28af..2aaa478 100644 --- a/quiche/common/quiche_endian.h +++ b/quiche/common/quiche_endian.h
@@ -20,7 +20,7 @@ // Provide utility functions that convert from/to network order (big endian) // to/from host order (little endian). -class QUICHE_EXPORT_PRIVATE QuicheEndian { +class QUICHE_EXPORT QuicheEndian { public: // Convert |x| from host order (little endian) to network order (big endian). #if defined(__clang__) || \
diff --git a/quiche/common/quiche_ip_address.h b/quiche/common/quiche_ip_address.h index 9267922..a6eeffd 100644 --- a/quiche/common/quiche_ip_address.h +++ b/quiche/common/quiche_ip_address.h
@@ -25,7 +25,7 @@ namespace quiche { // Represents an IP address. -class QUICHE_EXPORT_PRIVATE QuicheIpAddress { +class QUICHE_EXPORT QuicheIpAddress { public: // Sizes of IP addresses of different types, in bytes. enum : size_t { @@ -46,10 +46,10 @@ explicit QuicheIpAddress(const in6_addr& ipv6_address); QuicheIpAddress& operator=(const QuicheIpAddress& other) = default; QuicheIpAddress& operator=(QuicheIpAddress&& other) = default; - QUICHE_EXPORT_PRIVATE friend bool operator==(QuicheIpAddress lhs, - QuicheIpAddress rhs); - QUICHE_EXPORT_PRIVATE friend bool operator!=(QuicheIpAddress lhs, - QuicheIpAddress rhs); + QUICHE_EXPORT friend bool operator==(QuicheIpAddress lhs, + QuicheIpAddress rhs); + QUICHE_EXPORT friend bool operator!=(QuicheIpAddress lhs, + QuicheIpAddress rhs); bool IsInitialized() const; IpAddressFamily address_family() const; @@ -95,7 +95,7 @@ } // Represents an IP prefix, which is an IP address and a prefix length in bits. -class QUICHE_EXPORT_PRIVATE QuicheIpPrefix { +class QUICHE_EXPORT QuicheIpPrefix { public: QuicheIpPrefix(); explicit QuicheIpPrefix(const QuicheIpAddress& address); @@ -110,10 +110,10 @@ QuicheIpPrefix(const QuicheIpPrefix& other) = default; QuicheIpPrefix& operator=(const QuicheIpPrefix& other) = default; QuicheIpPrefix& operator=(QuicheIpPrefix&& other) = default; - QUICHE_EXPORT_PRIVATE friend bool operator==(const QuicheIpPrefix& lhs, - const QuicheIpPrefix& rhs); - QUICHE_EXPORT_PRIVATE friend bool operator!=(const QuicheIpPrefix& lhs, - const QuicheIpPrefix& rhs); + QUICHE_EXPORT friend bool operator==(const QuicheIpPrefix& lhs, + const QuicheIpPrefix& rhs); + QUICHE_EXPORT friend bool operator!=(const QuicheIpPrefix& lhs, + const QuicheIpPrefix& rhs); private: QuicheIpAddress address_;
diff --git a/quiche/common/quiche_mem_slice_storage.h b/quiche/common/quiche_mem_slice_storage.h index 0b6376a..1439d63 100644 --- a/quiche/common/quiche_mem_slice_storage.h +++ b/quiche/common/quiche_mem_slice_storage.h
@@ -18,7 +18,7 @@ // QuicheMemSliceStorage is a container class that store QuicheMemSlices for // further use cases such as turning into QuicheMemSliceSpan. -class QUICHE_EXPORT_PRIVATE QuicheMemSliceStorage { +class QUICHE_EXPORT QuicheMemSliceStorage { public: QuicheMemSliceStorage(const struct iovec* iov, int iov_count, QuicheBufferAllocator* allocator,
diff --git a/quiche/common/quiche_random.h b/quiche/common/quiche_random.h index 7ee2995..724bcca 100644 --- a/quiche/common/quiche_random.h +++ b/quiche/common/quiche_random.h
@@ -9,7 +9,7 @@ namespace quiche { // The interface for a random number generator. -class QUICHE_EXPORT_PRIVATE QuicheRandom { +class QUICHE_EXPORT QuicheRandom { public: virtual ~QuicheRandom() {}
diff --git a/quiche/common/quiche_text_utils.h b/quiche/common/quiche_text_utils.h index 2398559..b433718 100644 --- a/quiche/common/quiche_text_utils.h +++ b/quiche/common/quiche_text_utils.h
@@ -17,7 +17,7 @@ namespace quiche { -struct QUICHE_EXPORT_PRIVATE StringPieceCaseHash { +struct QUICHE_EXPORT StringPieceCaseHash { size_t operator()(absl::string_view data) const { std::string lower = absl::AsciiStrToLower(data); absl::Hash<absl::string_view> hasher; @@ -25,14 +25,14 @@ } }; -struct QUICHE_EXPORT_PRIVATE StringPieceCaseEqual { +struct QUICHE_EXPORT StringPieceCaseEqual { bool operator()(absl::string_view piece1, absl::string_view piece2) const { return absl::EqualsIgnoreCase(piece1, piece2); } }; // Various utilities for manipulating text. -class QUICHE_EXPORT_PRIVATE QuicheTextUtils { +class QUICHE_EXPORT QuicheTextUtils { public: // Returns a new string in which |data| has been converted to lower case. static std::string ToLower(absl::string_view data) {
diff --git a/quiche/common/simple_buffer_allocator.h b/quiche/common/simple_buffer_allocator.h index d5ed06f..babfa55 100644 --- a/quiche/common/simple_buffer_allocator.h +++ b/quiche/common/simple_buffer_allocator.h
@@ -13,8 +13,7 @@ // Provides buffer allocation using operators new[] and delete[] on char arrays. // Note that some of the QUICHE code relies on this being the case for deleting // new[]-allocated arrays from elsewhere. -class QUICHE_EXPORT_PRIVATE SimpleBufferAllocator - : public QuicheBufferAllocator { +class QUICHE_EXPORT SimpleBufferAllocator : public QuicheBufferAllocator { public: static SimpleBufferAllocator* Get() { static SimpleBufferAllocator* singleton = new SimpleBufferAllocator();
diff --git a/quiche/common/structured_headers.h b/quiche/common/structured_headers.h index 8e0520b..c9f2795 100644 --- a/quiche/common/structured_headers.h +++ b/quiche/common/structured_headers.h
@@ -57,7 +57,7 @@ // present in Structured Header values, and will cause the entire header to fail // to parse.) -class QUICHE_EXPORT_PRIVATE Item { +class QUICHE_EXPORT Item { public: enum ItemType { kNullType, @@ -77,8 +77,7 @@ Item(const char* value, Item::ItemType type = kStringType); Item(std::string value, Item::ItemType type = kStringType); - QUICHE_EXPORT_PRIVATE friend bool operator==(const Item& lhs, - const Item& rhs); + QUICHE_EXPORT friend bool operator==(const Item& lhs, const Item& rhs); inline friend bool operator!=(const Item& lhs, const Item& rhs) { return !(lhs == rhs); } @@ -145,7 +144,7 @@ // Holds a ParameterizedIdentifier (draft 9 only). The contained Item must be a // Token, and there may be any number of parameters. Parameter ordering is not // significant. -struct QUICHE_EXPORT_PRIVATE ParameterisedIdentifier { +struct QUICHE_EXPORT ParameterisedIdentifier { using Parameters = std::map<std::string, Item>; Item identifier; @@ -166,7 +165,7 @@ using Parameters = std::vector<std::pair<std::string, Item>>; -struct QUICHE_EXPORT_PRIVATE ParameterizedItem { +struct QUICHE_EXPORT ParameterizedItem { Item item; Parameters params; @@ -190,7 +189,7 @@ // Holds a ParameterizedMember, which may be either an single Item, or an Inner // List of ParameterizedItems, along with any number of parameters. Parameter // ordering is significant. -struct QUICHE_EXPORT_PRIVATE ParameterizedMember { +struct QUICHE_EXPORT ParameterizedMember { std::vector<ParameterizedItem> member; // If false, then |member| should only hold one Item. bool member_is_inner_list = false; @@ -218,7 +217,7 @@ using DictionaryMember = std::pair<std::string, ParameterizedMember>; // Structured Headers RFC8941 Dictionary. -class QUICHE_EXPORT_PRIVATE Dictionary { +class QUICHE_EXPORT Dictionary { public: using iterator = std::vector<DictionaryMember>::iterator; using const_iterator = std::vector<DictionaryMember>::const_iterator; @@ -277,13 +276,13 @@ // Returns the result of parsing the header value as an Item, if it can be // parsed as one, or nullopt if it cannot. Note that this uses the Draft 15 // parsing rules, and so applies tighter range limits to integers. -QUICHE_EXPORT_PRIVATE absl::optional<ParameterizedItem> ParseItem( +QUICHE_EXPORT absl::optional<ParameterizedItem> ParseItem( absl::string_view str); // Returns the result of parsing the header value as an Item with no parameters, // or nullopt if it cannot. Note that this uses the Draft 15 parsing rules, and // so applies tighter range limits to integers. -QUICHE_EXPORT_PRIVATE absl::optional<Item> ParseBareItem(absl::string_view str); +QUICHE_EXPORT absl::optional<Item> ParseBareItem(absl::string_view str); // Returns the result of parsing the header value as a Parameterised List, if it // can be parsed as one, or nullopt if it cannot. Note that parameter keys will @@ -291,7 +290,7 @@ // as well as parameter values, will be returned as Items. This method uses the // Draft 09 parsing rules for Items, so integers have the 64-bit int range. // Structured-Headers Draft 09 only. -QUICHE_EXPORT_PRIVATE absl::optional<ParameterisedList> ParseParameterisedList( +QUICHE_EXPORT absl::optional<ParameterisedList> ParseParameterisedList( absl::string_view str); // Returns the result of parsing the header value as a List of Lists, if it can @@ -299,28 +298,26 @@ // as Items. This method uses the Draft 09 parsing rules for Items, so integers // have the 64-bit int range. // Structured-Headers Draft 09 only. -QUICHE_EXPORT_PRIVATE absl::optional<ListOfLists> ParseListOfLists( +QUICHE_EXPORT absl::optional<ListOfLists> ParseListOfLists( absl::string_view str); // Returns the result of parsing the header value as a general List, if it can // be parsed as one, or nullopt if it cannot. // Structured-Headers Draft 15 only. -QUICHE_EXPORT_PRIVATE absl::optional<List> ParseList(absl::string_view str); +QUICHE_EXPORT absl::optional<List> ParseList(absl::string_view str); // Returns the result of parsing the header value as a general Dictionary, if it // can be parsed as one, or nullopt if it cannot. Structured-Headers Draft 15 // only. -QUICHE_EXPORT_PRIVATE absl::optional<Dictionary> ParseDictionary( +QUICHE_EXPORT absl::optional<Dictionary> ParseDictionary( const absl::string_view& str); // Serialization is implemented for Structured-Headers Draft 15 only. -QUICHE_EXPORT_PRIVATE absl::optional<std::string> SerializeItem( - const Item& value); -QUICHE_EXPORT_PRIVATE absl::optional<std::string> SerializeItem( +QUICHE_EXPORT absl::optional<std::string> SerializeItem(const Item& value); +QUICHE_EXPORT absl::optional<std::string> SerializeItem( const ParameterizedItem& value); -QUICHE_EXPORT_PRIVATE absl::optional<std::string> SerializeList( - const List& value); -QUICHE_EXPORT_PRIVATE absl::optional<std::string> SerializeDictionary( +QUICHE_EXPORT absl::optional<std::string> SerializeList(const List& value); +QUICHE_EXPORT absl::optional<std::string> SerializeDictionary( const Dictionary& value); } // namespace structured_headers
diff --git a/quiche/http2/adapter/callback_visitor.h b/quiche/http2/adapter/callback_visitor.h index 217ad62..7c982e8 100644 --- a/quiche/http2/adapter/callback_visitor.h +++ b/quiche/http2/adapter/callback_visitor.h
@@ -17,7 +17,7 @@ // This visitor implementation accepts a set of nghttp2 callbacks and a "user // data" pointer, and invokes the callbacks according to HTTP/2 events received. -class QUICHE_EXPORT_PRIVATE CallbackVisitor : public Http2VisitorInterface { +class QUICHE_EXPORT CallbackVisitor : public Http2VisitorInterface { public: // Called when the visitor receives a close event for `stream_id`. using StreamCloseListener = std::function<void(Http2StreamId stream_id)>; @@ -79,7 +79,7 @@ } private: - struct QUICHE_EXPORT_PRIVATE StreamInfo { + struct QUICHE_EXPORT StreamInfo { bool before_sent_headers = false; bool sent_headers = false; bool received_headers = false;
diff --git a/quiche/http2/adapter/data_source.h b/quiche/http2/adapter/data_source.h index 0c40095..ffd78a0 100644 --- a/quiche/http2/adapter/data_source.h +++ b/quiche/http2/adapter/data_source.h
@@ -12,7 +12,7 @@ namespace adapter { // Represents a source of DATA frames for transmission to the peer. -class QUICHE_EXPORT_PRIVATE DataFrameSource { +class QUICHE_EXPORT DataFrameSource { public: virtual ~DataFrameSource() {} @@ -34,7 +34,7 @@ }; // Represents a source of metadata frames for transmission to the peer. -class QUICHE_EXPORT_PRIVATE MetadataSource { +class QUICHE_EXPORT MetadataSource { public: virtual ~MetadataSource() {}
diff --git a/quiche/http2/adapter/event_forwarder.h b/quiche/http2/adapter/event_forwarder.h index efa1031..74140f9 100644 --- a/quiche/http2/adapter/event_forwarder.h +++ b/quiche/http2/adapter/event_forwarder.h
@@ -13,8 +13,7 @@ // provided predicate succeeds. Currently, OnHeaderFrameStart() is always // forwarded regardless of the predicate. // TODO(diannahu): Add a NoOpHeadersHandler if needed. -class QUICHE_EXPORT_PRIVATE EventForwarder - : public spdy::SpdyFramerVisitorInterface { +class QUICHE_EXPORT EventForwarder : public spdy::SpdyFramerVisitorInterface { public: // Whether the forwarder can forward events to the receiver. using ForwardPredicate = std::function<bool()>;
diff --git a/quiche/http2/adapter/header_validator.h b/quiche/http2/adapter/header_validator.h index ca82b08..096f76f 100644 --- a/quiche/http2/adapter/header_validator.h +++ b/quiche/http2/adapter/header_validator.h
@@ -12,7 +12,7 @@ namespace http2 { namespace adapter { -class QUICHE_EXPORT_PRIVATE HeaderValidator : public HeaderValidatorBase { +class QUICHE_EXPORT HeaderValidator : public HeaderValidatorBase { public: HeaderValidator() = default;
diff --git a/quiche/http2/adapter/header_validator_base.h b/quiche/http2/adapter/header_validator_base.h index 9a6787a..23be794 100644 --- a/quiche/http2/adapter/header_validator_base.h +++ b/quiche/http2/adapter/header_validator_base.h
@@ -23,7 +23,7 @@ kDisallow, }; -class QUICHE_EXPORT_PRIVATE HeaderValidatorBase { +class QUICHE_EXPORT HeaderValidatorBase { public: HeaderValidatorBase() = default; virtual ~HeaderValidatorBase() = default;
diff --git a/quiche/http2/adapter/http2_adapter.h b/quiche/http2/adapter/http2_adapter.h index efdbcb7..fb9df13 100644 --- a/quiche/http2/adapter/http2_adapter.h +++ b/quiche/http2/adapter/http2_adapter.h
@@ -21,7 +21,7 @@ // invokes corresponding callbacks on its passed-in Http2VisitorInterface. // Http2Adapter is a base class shared between client-side and server-side // implementations. -class QUICHE_EXPORT_PRIVATE Http2Adapter { +class QUICHE_EXPORT Http2Adapter { public: Http2Adapter(const Http2Adapter&) = delete; Http2Adapter& operator=(const Http2Adapter&) = delete;
diff --git a/quiche/http2/adapter/http2_protocol.h b/quiche/http2/adapter/http2_protocol.h index 02a423a..0c2c2c1 100644 --- a/quiche/http2/adapter/http2_protocol.h +++ b/quiche/http2/adapter/http2_protocol.h
@@ -34,13 +34,12 @@ using Header = std::pair<HeaderRep, HeaderRep>; // Represents an HTTP/2 SETTINGS key-value parameter. -struct QUICHE_EXPORT_PRIVATE Http2Setting { +struct QUICHE_EXPORT Http2Setting { Http2SettingsId id; uint32_t value; }; -QUICHE_EXPORT_PRIVATE bool operator==(const Http2Setting& a, - const Http2Setting& b); +QUICHE_EXPORT bool operator==(const Http2Setting& a, const Http2Setting& b); // The maximum possible stream ID. const Http2StreamId kMaxStreamId = 0x7FFFFFFF; @@ -63,21 +62,15 @@ // The pseudo-header fields as specified in RFC 7540 Section 8.1.2.3 (request) // and Section 8.1.2.4 (response). -ABSL_CONST_INIT QUICHE_EXPORT_PRIVATE extern const char - kHttp2MethodPseudoHeader[]; -ABSL_CONST_INIT QUICHE_EXPORT_PRIVATE extern const char - kHttp2SchemePseudoHeader[]; -ABSL_CONST_INIT QUICHE_EXPORT_PRIVATE extern const char - kHttp2AuthorityPseudoHeader[]; -ABSL_CONST_INIT QUICHE_EXPORT_PRIVATE extern const char - kHttp2PathPseudoHeader[]; -ABSL_CONST_INIT QUICHE_EXPORT_PRIVATE extern const char - kHttp2StatusPseudoHeader[]; +ABSL_CONST_INIT QUICHE_EXPORT extern const char kHttp2MethodPseudoHeader[]; +ABSL_CONST_INIT QUICHE_EXPORT extern const char kHttp2SchemePseudoHeader[]; +ABSL_CONST_INIT QUICHE_EXPORT extern const char kHttp2AuthorityPseudoHeader[]; +ABSL_CONST_INIT QUICHE_EXPORT extern const char kHttp2PathPseudoHeader[]; +ABSL_CONST_INIT QUICHE_EXPORT extern const char kHttp2StatusPseudoHeader[]; -ABSL_CONST_INIT QUICHE_EXPORT_PRIVATE extern const uint8_t kMetadataFrameType; -ABSL_CONST_INIT QUICHE_EXPORT_PRIVATE extern const uint8_t kMetadataEndFlag; -ABSL_CONST_INIT QUICHE_EXPORT_PRIVATE extern const uint16_t - kMetadataExtensionId; +ABSL_CONST_INIT QUICHE_EXPORT extern const uint8_t kMetadataFrameType; +ABSL_CONST_INIT QUICHE_EXPORT extern const uint8_t kMetadataEndFlag; +ABSL_CONST_INIT QUICHE_EXPORT extern const uint16_t kMetadataExtensionId; enum class FrameType : uint8_t { DATA = 0x0,
diff --git a/quiche/http2/adapter/http2_session.h b/quiche/http2/adapter/http2_session.h index 0a76726..7b01000 100644 --- a/quiche/http2/adapter/http2_session.h +++ b/quiche/http2/adapter/http2_session.h
@@ -10,10 +10,10 @@ namespace http2 { namespace adapter { -struct QUICHE_EXPORT_PRIVATE Http2SessionCallbacks {}; +struct QUICHE_EXPORT Http2SessionCallbacks {}; // A class to represent the state of a single HTTP/2 connection. -class QUICHE_EXPORT_PRIVATE Http2Session { +class QUICHE_EXPORT Http2Session { public: Http2Session() = default; virtual ~Http2Session() {}
diff --git a/quiche/http2/adapter/http2_util.h b/quiche/http2/adapter/http2_util.h index 00580a3..12015a3 100644 --- a/quiche/http2/adapter/http2_util.h +++ b/quiche/http2/adapter/http2_util.h
@@ -11,22 +11,19 @@ namespace http2 { namespace adapter { -QUICHE_EXPORT_PRIVATE spdy::SpdyErrorCode TranslateErrorCode( - Http2ErrorCode code); -QUICHE_EXPORT_PRIVATE Http2ErrorCode -TranslateErrorCode(spdy::SpdyErrorCode code); +QUICHE_EXPORT spdy::SpdyErrorCode TranslateErrorCode(Http2ErrorCode code); +QUICHE_EXPORT Http2ErrorCode TranslateErrorCode(spdy::SpdyErrorCode code); -QUICHE_EXPORT_PRIVATE absl::string_view ConnectionErrorToString( +QUICHE_EXPORT absl::string_view ConnectionErrorToString( Http2VisitorInterface::ConnectionError error); -QUICHE_EXPORT_PRIVATE absl::string_view InvalidFrameErrorToString( +QUICHE_EXPORT absl::string_view InvalidFrameErrorToString( Http2VisitorInterface::InvalidFrameError error); // A WINDOW_UPDATE sending strategy that returns true if the `delta` to be sent // is positive and at least half of the window `limit`. -QUICHE_EXPORT_PRIVATE bool DeltaAtLeastHalfLimit(int64_t limit, - int64_t /*size*/, - int64_t delta); +QUICHE_EXPORT bool DeltaAtLeastHalfLimit(int64_t limit, int64_t /*size*/, + int64_t delta); } // namespace adapter } // namespace http2
diff --git a/quiche/http2/adapter/http2_visitor_interface.h b/quiche/http2/adapter/http2_visitor_interface.h index 4e6bcb8..77bcd7f 100644 --- a/quiche/http2/adapter/http2_visitor_interface.h +++ b/quiche/http2/adapter/http2_visitor_interface.h
@@ -46,7 +46,7 @@ // - OnCloseStream() // // More details are at RFC 7540 (go/http2spec). -class QUICHE_EXPORT_PRIVATE Http2VisitorInterface { +class QUICHE_EXPORT Http2VisitorInterface { public: Http2VisitorInterface(const Http2VisitorInterface&) = delete; Http2VisitorInterface& operator=(const Http2VisitorInterface&) = delete;
diff --git a/quiche/http2/adapter/nghttp2_adapter.h b/quiche/http2/adapter/nghttp2_adapter.h index 6e34f74..7ae9645 100644 --- a/quiche/http2/adapter/nghttp2_adapter.h +++ b/quiche/http2/adapter/nghttp2_adapter.h
@@ -13,7 +13,7 @@ namespace http2 { namespace adapter { -class QUICHE_EXPORT_PRIVATE NgHttp2Adapter : public Http2Adapter { +class QUICHE_EXPORT NgHttp2Adapter : public Http2Adapter { public: ~NgHttp2Adapter() override;
diff --git a/quiche/http2/adapter/nghttp2_session.h b/quiche/http2/adapter/nghttp2_session.h index 5837f2f..b07119f 100644 --- a/quiche/http2/adapter/nghttp2_session.h +++ b/quiche/http2/adapter/nghttp2_session.h
@@ -12,7 +12,7 @@ namespace adapter { // A C++ wrapper around common nghttp2_session operations. -class QUICHE_EXPORT_PRIVATE NgHttp2Session : public Http2Session { +class QUICHE_EXPORT NgHttp2Session : public Http2Session { public: // Does not take ownership of |options|. NgHttp2Session(Perspective perspective,
diff --git a/quiche/http2/adapter/noop_header_validator.h b/quiche/http2/adapter/noop_header_validator.h index 52d1791..f6b95e9 100644 --- a/quiche/http2/adapter/noop_header_validator.h +++ b/quiche/http2/adapter/noop_header_validator.h
@@ -9,7 +9,7 @@ namespace adapter { // A validator that does not actually perform any validation. -class QUICHE_EXPORT_PRIVATE NoopHeaderValidator : public HeaderValidatorBase { +class QUICHE_EXPORT NoopHeaderValidator : public HeaderValidatorBase { public: NoopHeaderValidator() = default;
diff --git a/quiche/http2/adapter/oghttp2_adapter.h b/quiche/http2/adapter/oghttp2_adapter.h index be1cd66..76e3b93 100644 --- a/quiche/http2/adapter/oghttp2_adapter.h +++ b/quiche/http2/adapter/oghttp2_adapter.h
@@ -12,7 +12,7 @@ namespace http2 { namespace adapter { -class QUICHE_EXPORT_PRIVATE OgHttp2Adapter : public Http2Adapter { +class QUICHE_EXPORT OgHttp2Adapter : public Http2Adapter { public: using Options = OgHttp2Session::Options; static std::unique_ptr<OgHttp2Adapter> Create(Http2VisitorInterface& visitor,
diff --git a/quiche/http2/adapter/oghttp2_session.h b/quiche/http2/adapter/oghttp2_session.h index e28af7a..342f773 100644 --- a/quiche/http2/adapter/oghttp2_session.h +++ b/quiche/http2/adapter/oghttp2_session.h
@@ -35,11 +35,10 @@ namespace adapter { // This class manages state associated with a single multiplexed HTTP/2 session. -class QUICHE_EXPORT_PRIVATE OgHttp2Session - : public Http2Session, - public spdy::SpdyFramerVisitorInterface { +class QUICHE_EXPORT OgHttp2Session : public Http2Session, + public spdy::SpdyFramerVisitorInterface { public: - struct QUICHE_EXPORT_PRIVATE Options { + struct QUICHE_EXPORT Options { // Returns whether to send a WINDOW_UPDATE based on the window limit, window // size, and delta that would be sent in the WINDOW_UPDATE. WindowManager::ShouldWindowUpdateFn should_window_update_fn = @@ -214,7 +213,7 @@ Http2VisitorInterface::OnHeaderResult result); private: - struct QUICHE_EXPORT_PRIVATE StreamState { + struct QUICHE_EXPORT StreamState { StreamState(int32_t stream_receive_window, int32_t stream_send_window, WindowManager::WindowUpdateListener listener, WindowManager::ShouldWindowUpdateFn should_window_update_fn) @@ -238,13 +237,13 @@ }; using StreamStateMap = absl::flat_hash_map<Http2StreamId, StreamState>; - struct QUICHE_EXPORT_PRIVATE PendingStreamState { + struct QUICHE_EXPORT PendingStreamState { spdy::Http2HeaderBlock headers; std::unique_ptr<DataFrameSource> data_source; void* user_data = nullptr; }; - class QUICHE_EXPORT_PRIVATE PassthroughHeadersHandler + class QUICHE_EXPORT PassthroughHeadersHandler : public spdy::SpdyHeadersHandlerInterface { public: PassthroughHeadersHandler(OgHttp2Session& session, @@ -293,7 +292,7 @@ bool frame_contains_fin_ = false; }; - struct QUICHE_EXPORT_PRIVATE ProcessBytesResultVisitor; + struct QUICHE_EXPORT ProcessBytesResultVisitor; // Queues the connection preface, if not already done. If not // `sending_outbound_settings` and the preface has not yet been queued, this
diff --git a/quiche/http2/adapter/oghttp2_util.h b/quiche/http2/adapter/oghttp2_util.h index 7d41cbd..0aba100 100644 --- a/quiche/http2/adapter/oghttp2_util.h +++ b/quiche/http2/adapter/oghttp2_util.h
@@ -9,7 +9,7 @@ namespace http2 { namespace adapter { -QUICHE_EXPORT_PRIVATE spdy::Http2HeaderBlock ToHeaderBlock( +QUICHE_EXPORT spdy::Http2HeaderBlock ToHeaderBlock( absl::Span<const Header> headers); } // namespace adapter
diff --git a/quiche/http2/adapter/window_manager.h b/quiche/http2/adapter/window_manager.h index 272f96c..759a3d3 100644 --- a/quiche/http2/adapter/window_manager.h +++ b/quiche/http2/adapter/window_manager.h
@@ -16,7 +16,7 @@ // This class keeps track of a HTTP/2 flow control window, notifying a listener // when a window update needs to be sent. This class is not thread-safe. -class QUICHE_EXPORT_PRIVATE WindowManager { +class QUICHE_EXPORT WindowManager { public: // A WindowUpdateListener is invoked when it is time to send a window update. using WindowUpdateListener = std::function<void(int64_t)>;
diff --git a/quiche/http2/core/http2_trace_logging.h b/quiche/http2/core/http2_trace_logging.h index 7273770..f7218fe 100644 --- a/quiche/http2/core/http2_trace_logging.h +++ b/quiche/http2/core/http2_trace_logging.h
@@ -29,8 +29,7 @@ // Note any new methods in SpdyFramerVisitorInterface MUST be overridden here to // properly forward the event. This could be ensured by making every event in // SpdyFramerVisitorInterface a pure virtual. -class QUICHE_EXPORT_PRIVATE Http2TraceLogger - : public spdy::SpdyFramerVisitorInterface { +class QUICHE_EXPORT Http2TraceLogger : public spdy::SpdyFramerVisitorInterface { public: typedef spdy::SpdyAltSvcWireFormat SpdyAltSvcWireFormat; typedef spdy::SpdyErrorCode SpdyErrorCode; @@ -104,7 +103,7 @@ }; // Visitor to log control frames that have been written. -class QUICHE_EXPORT_PRIVATE Http2FrameLogger : public spdy::SpdyFrameVisitor { +class QUICHE_EXPORT Http2FrameLogger : public spdy::SpdyFrameVisitor { public: // This class will preface all of its log messages with the value of // |connection_id| in hexadecimal.
diff --git a/quiche/http2/core/priority_write_scheduler.h b/quiche/http2/core/priority_write_scheduler.h index c6d06b2..7335545 100644 --- a/quiche/http2/core/priority_write_scheduler.h +++ b/quiche/http2/core/priority_write_scheduler.h
@@ -40,7 +40,7 @@ // I/O event that occurred for a stream of that priority. // template <typename StreamIdType> -class QUICHE_EXPORT_PRIVATE PriorityWriteScheduler +class QUICHE_EXPORT PriorityWriteScheduler : public WriteScheduler<StreamIdType> { public: using typename WriteScheduler<StreamIdType>::StreamPrecedenceType; @@ -290,7 +290,7 @@ // State kept for all registered streams. All ready streams have ready = true // and should be present in priority_infos_[priority].ready_list. - struct QUICHE_EXPORT_PRIVATE StreamInfo { + struct QUICHE_EXPORT StreamInfo { spdy::SpdyPriority priority; StreamIdType stream_id; bool ready; @@ -300,7 +300,7 @@ using ReadyList = quiche::QuicheCircularDeque<StreamInfo*>; // State kept for each priority level. - struct QUICHE_EXPORT_PRIVATE PriorityInfo { + struct QUICHE_EXPORT PriorityInfo { // IDs of streams that are ready to write. ReadyList ready_list; // Time of latest write event for stream of this priority, in microseconds.
diff --git a/quiche/http2/core/write_scheduler.h b/quiche/http2/core/write_scheduler.h index 6086672..ce0ddc1 100644 --- a/quiche/http2/core/write_scheduler.h +++ b/quiche/http2/core/write_scheduler.h
@@ -32,7 +32,7 @@ // returned by PopNextReadyStream(); when returned by that method, the stream's // state changes to not ready. template <typename StreamIdType> -class QUICHE_EXPORT_PRIVATE WriteScheduler { +class QUICHE_EXPORT WriteScheduler { public: typedef spdy::StreamPrecedence<StreamIdType> StreamPrecedenceType;
diff --git a/quiche/http2/decoder/decode_buffer.h b/quiche/http2/decoder/decode_buffer.h index 0824b1f..5c9262f 100644 --- a/quiche/http2/decoder/decode_buffer.h +++ b/quiche/http2/decoder/decode_buffer.h
@@ -24,7 +24,7 @@ namespace http2 { class DecodeBufferSubset; -class QUICHE_EXPORT_PRIVATE DecodeBuffer { +class QUICHE_EXPORT DecodeBuffer { public: // We assume the decode buffers will typically be modest in size (i.e. often a // few KB, perhaps as high as 100KB). Let's make sure during testing that we @@ -134,7 +134,7 @@ // DecodeBuffer, though they can be nested (i.e. a DecodeBufferSubset's // base may itself be a DecodeBufferSubset). This avoids the AdvanceCursor // being called erroneously. -class QUICHE_EXPORT_PRIVATE DecodeBufferSubset : public DecodeBuffer { +class QUICHE_EXPORT DecodeBufferSubset : public DecodeBuffer { public: DecodeBufferSubset(DecodeBuffer* base, size_t subset_len) : DecodeBuffer(base->cursor(), base->MinLengthRemaining(subset_len)),
diff --git a/quiche/http2/decoder/decode_http2_structures.h b/quiche/http2/decoder/decode_http2_structures.h index eeb69a9..9740497 100644 --- a/quiche/http2/decoder/decode_http2_structures.h +++ b/quiche/http2/decoder/decode_http2_structures.h
@@ -17,19 +17,16 @@ // to end, advancing the cursor by STRUCTURE::EncodedSize(). The decode buffer // must be large enough (i.e. b->Remaining() >= STRUCTURE::EncodedSize()). -QUICHE_EXPORT_PRIVATE void DoDecode(Http2FrameHeader* out, DecodeBuffer* b); -QUICHE_EXPORT_PRIVATE void DoDecode(Http2PriorityFields* out, DecodeBuffer* b); -QUICHE_EXPORT_PRIVATE void DoDecode(Http2RstStreamFields* out, DecodeBuffer* b); -QUICHE_EXPORT_PRIVATE void DoDecode(Http2SettingFields* out, DecodeBuffer* b); -QUICHE_EXPORT_PRIVATE void DoDecode(Http2PushPromiseFields* out, - DecodeBuffer* b); -QUICHE_EXPORT_PRIVATE void DoDecode(Http2PingFields* out, DecodeBuffer* b); -QUICHE_EXPORT_PRIVATE void DoDecode(Http2GoAwayFields* out, DecodeBuffer* b); -QUICHE_EXPORT_PRIVATE void DoDecode(Http2WindowUpdateFields* out, - DecodeBuffer* b); -QUICHE_EXPORT_PRIVATE void DoDecode(Http2AltSvcFields* out, DecodeBuffer* b); -QUICHE_EXPORT_PRIVATE void DoDecode(Http2PriorityUpdateFields* out, - DecodeBuffer* b); +QUICHE_EXPORT void DoDecode(Http2FrameHeader* out, DecodeBuffer* b); +QUICHE_EXPORT void DoDecode(Http2PriorityFields* out, DecodeBuffer* b); +QUICHE_EXPORT void DoDecode(Http2RstStreamFields* out, DecodeBuffer* b); +QUICHE_EXPORT void DoDecode(Http2SettingFields* out, DecodeBuffer* b); +QUICHE_EXPORT void DoDecode(Http2PushPromiseFields* out, DecodeBuffer* b); +QUICHE_EXPORT void DoDecode(Http2PingFields* out, DecodeBuffer* b); +QUICHE_EXPORT void DoDecode(Http2GoAwayFields* out, DecodeBuffer* b); +QUICHE_EXPORT void DoDecode(Http2WindowUpdateFields* out, DecodeBuffer* b); +QUICHE_EXPORT void DoDecode(Http2AltSvcFields* out, DecodeBuffer* b); +QUICHE_EXPORT void DoDecode(Http2PriorityUpdateFields* out, DecodeBuffer* b); } // namespace http2
diff --git a/quiche/http2/decoder/decode_status.h b/quiche/http2/decoder/decode_status.h index e59d68a..7571938 100644 --- a/quiche/http2/decoder/decode_status.h +++ b/quiche/http2/decoder/decode_status.h
@@ -25,8 +25,7 @@ // an HTTP/2 frame has padding declared to be larger than the payload). kDecodeError, }; -QUICHE_EXPORT_PRIVATE std::ostream& operator<<(std::ostream& out, - DecodeStatus v); +QUICHE_EXPORT std::ostream& operator<<(std::ostream& out, DecodeStatus v); } // namespace http2
diff --git a/quiche/http2/decoder/frame_decoder_state.h b/quiche/http2/decoder/frame_decoder_state.h index 3e01155..39757da 100644 --- a/quiche/http2/decoder/frame_decoder_state.h +++ b/quiche/http2/decoder/frame_decoder_state.h
@@ -30,7 +30,7 @@ class FrameDecoderStatePeer; } // namespace test -class QUICHE_EXPORT_PRIVATE FrameDecoderState { +class QUICHE_EXPORT FrameDecoderState { public: FrameDecoderState() {}
diff --git a/quiche/http2/decoder/http2_frame_decoder.h b/quiche/http2/decoder/http2_frame_decoder.h index 1df3d76..3d8f1ac 100644 --- a/quiche/http2/decoder/http2_frame_decoder.h +++ b/quiche/http2/decoder/http2_frame_decoder.h
@@ -47,7 +47,7 @@ class Http2FrameDecoderPeer; } // namespace test -class QUICHE_EXPORT_PRIVATE Http2FrameDecoder { +class QUICHE_EXPORT Http2FrameDecoder { public: explicit Http2FrameDecoder(Http2FrameDecoderListener* listener); @@ -126,8 +126,7 @@ }; friend class test::Http2FrameDecoderPeer; - QUICHE_EXPORT_PRIVATE friend std::ostream& operator<<(std::ostream& out, - State v); + QUICHE_EXPORT friend std::ostream& operator<<(std::ostream& out, State v); DecodeStatus StartDecodingPayload(DecodeBuffer* db); DecodeStatus ResumeDecodingPayload(DecodeBuffer* db);
diff --git a/quiche/http2/decoder/http2_frame_decoder_listener.h b/quiche/http2/decoder/http2_frame_decoder_listener.h index a6839ab..0a98b3d 100644 --- a/quiche/http2/decoder/http2_frame_decoder_listener.h +++ b/quiche/http2/decoder/http2_frame_decoder_listener.h
@@ -39,7 +39,7 @@ // TODO(jamessynge): Consider sorting the methods by frequency of call, if that // helps at all. -class QUICHE_EXPORT_PRIVATE Http2FrameDecoderListener { +class QUICHE_EXPORT Http2FrameDecoderListener { public: Http2FrameDecoderListener() {} virtual ~Http2FrameDecoderListener() {} @@ -315,7 +315,7 @@ }; // Do nothing for each call. Useful for ignoring a frame that is invalid. -class QUICHE_EXPORT_PRIVATE Http2FrameDecoderNoOpListener +class QUICHE_EXPORT Http2FrameDecoderNoOpListener : public Http2FrameDecoderListener { public: Http2FrameDecoderNoOpListener() {}
diff --git a/quiche/http2/decoder/http2_structure_decoder.h b/quiche/http2/decoder/http2_structure_decoder.h index 77d7fd2..1daee07 100644 --- a/quiche/http2/decoder/http2_structure_decoder.h +++ b/quiche/http2/decoder/http2_structure_decoder.h
@@ -27,7 +27,7 @@ class Http2StructureDecoderPeer; } // namespace test -class QUICHE_EXPORT_PRIVATE Http2StructureDecoder { +class QUICHE_EXPORT Http2StructureDecoder { public: // The caller needs to keep track of whether to call Start or Resume. //
diff --git a/quiche/http2/decoder/payload_decoders/altsvc_payload_decoder.h b/quiche/http2/decoder/payload_decoders/altsvc_payload_decoder.h index 64cf703..2829249 100644 --- a/quiche/http2/decoder/payload_decoders/altsvc_payload_decoder.h +++ b/quiche/http2/decoder/payload_decoders/altsvc_payload_decoder.h
@@ -18,7 +18,7 @@ class AltSvcPayloadDecoderPeer; } // namespace test -class QUICHE_EXPORT_PRIVATE AltSvcPayloadDecoder { +class QUICHE_EXPORT AltSvcPayloadDecoder { public: // States during decoding of a ALTSVC frame. enum class PayloadState {
diff --git a/quiche/http2/decoder/payload_decoders/continuation_payload_decoder.h b/quiche/http2/decoder/payload_decoders/continuation_payload_decoder.h index ba23a56..b599fb5 100644 --- a/quiche/http2/decoder/payload_decoders/continuation_payload_decoder.h +++ b/quiche/http2/decoder/payload_decoders/continuation_payload_decoder.h
@@ -14,7 +14,7 @@ namespace http2 { -class QUICHE_EXPORT_PRIVATE ContinuationPayloadDecoder { +class QUICHE_EXPORT ContinuationPayloadDecoder { public: // Starts the decoding of a CONTINUATION frame's payload, and completes // it if the entire payload is in the provided decode buffer.
diff --git a/quiche/http2/decoder/payload_decoders/data_payload_decoder.h b/quiche/http2/decoder/payload_decoders/data_payload_decoder.h index ffc516f..b0b117d 100644 --- a/quiche/http2/decoder/payload_decoders/data_payload_decoder.h +++ b/quiche/http2/decoder/payload_decoders/data_payload_decoder.h
@@ -17,7 +17,7 @@ class DataPayloadDecoderPeer; } // namespace test -class QUICHE_EXPORT_PRIVATE DataPayloadDecoder { +class QUICHE_EXPORT DataPayloadDecoder { public: // States during decoding of a DATA frame. enum class PayloadState {
diff --git a/quiche/http2/decoder/payload_decoders/goaway_payload_decoder.h b/quiche/http2/decoder/payload_decoders/goaway_payload_decoder.h index 2664642..1f3b69c 100644 --- a/quiche/http2/decoder/payload_decoders/goaway_payload_decoder.h +++ b/quiche/http2/decoder/payload_decoders/goaway_payload_decoder.h
@@ -21,7 +21,7 @@ class GoAwayPayloadDecoderPeer; } // namespace test -class QUICHE_EXPORT_PRIVATE GoAwayPayloadDecoder { +class QUICHE_EXPORT GoAwayPayloadDecoder { public: // States during decoding of a GOAWAY frame. enum class PayloadState {
diff --git a/quiche/http2/decoder/payload_decoders/headers_payload_decoder.h b/quiche/http2/decoder/payload_decoders/headers_payload_decoder.h index e76908b..05979cd 100644 --- a/quiche/http2/decoder/payload_decoders/headers_payload_decoder.h +++ b/quiche/http2/decoder/payload_decoders/headers_payload_decoder.h
@@ -18,7 +18,7 @@ class HeadersPayloadDecoderPeer; } // namespace test -class QUICHE_EXPORT_PRIVATE HeadersPayloadDecoder { +class QUICHE_EXPORT HeadersPayloadDecoder { public: // States during decoding of a HEADERS frame, unless the fast path kicks // in, in which case the state machine will be bypassed.
diff --git a/quiche/http2/decoder/payload_decoders/ping_payload_decoder.h b/quiche/http2/decoder/payload_decoders/ping_payload_decoder.h index 71e4928..0b9e963 100644 --- a/quiche/http2/decoder/payload_decoders/ping_payload_decoder.h +++ b/quiche/http2/decoder/payload_decoders/ping_payload_decoder.h
@@ -19,7 +19,7 @@ class PingPayloadDecoderPeer; } // namespace test -class QUICHE_EXPORT_PRIVATE PingPayloadDecoder { +class QUICHE_EXPORT PingPayloadDecoder { public: // Starts the decoding of a PING frame's payload, and completes it if the // entire payload is in the provided decode buffer.
diff --git a/quiche/http2/decoder/payload_decoders/priority_payload_decoder.h b/quiche/http2/decoder/payload_decoders/priority_payload_decoder.h index 5ee3dc9..2056ff9 100644 --- a/quiche/http2/decoder/payload_decoders/priority_payload_decoder.h +++ b/quiche/http2/decoder/payload_decoders/priority_payload_decoder.h
@@ -18,7 +18,7 @@ class PriorityPayloadDecoderPeer; } // namespace test -class QUICHE_EXPORT_PRIVATE PriorityPayloadDecoder { +class QUICHE_EXPORT PriorityPayloadDecoder { public: // Starts the decoding of a PRIORITY frame's payload, and completes it if // the entire payload is in the provided decode buffer.
diff --git a/quiche/http2/decoder/payload_decoders/priority_update_payload_decoder.h b/quiche/http2/decoder/payload_decoders/priority_update_payload_decoder.h index 9cfba58..39d0817 100644 --- a/quiche/http2/decoder/payload_decoders/priority_update_payload_decoder.h +++ b/quiche/http2/decoder/payload_decoders/priority_update_payload_decoder.h
@@ -18,7 +18,7 @@ class PriorityUpdatePayloadDecoderPeer; } // namespace test -class QUICHE_EXPORT_PRIVATE PriorityUpdatePayloadDecoder { +class QUICHE_EXPORT PriorityUpdatePayloadDecoder { public: // States during decoding of a PRIORITY_UPDATE frame. enum class PayloadState {
diff --git a/quiche/http2/decoder/payload_decoders/push_promise_payload_decoder.h b/quiche/http2/decoder/payload_decoders/push_promise_payload_decoder.h index f5bf53d..c6bf2a2 100644 --- a/quiche/http2/decoder/payload_decoders/push_promise_payload_decoder.h +++ b/quiche/http2/decoder/payload_decoders/push_promise_payload_decoder.h
@@ -18,7 +18,7 @@ class PushPromisePayloadDecoderPeer; } // namespace test -class QUICHE_EXPORT_PRIVATE PushPromisePayloadDecoder { +class QUICHE_EXPORT PushPromisePayloadDecoder { public: // States during decoding of a PUSH_PROMISE frame. enum class PayloadState {
diff --git a/quiche/http2/decoder/payload_decoders/rst_stream_payload_decoder.h b/quiche/http2/decoder/payload_decoders/rst_stream_payload_decoder.h index a263bd2..68e701e 100644 --- a/quiche/http2/decoder/payload_decoders/rst_stream_payload_decoder.h +++ b/quiche/http2/decoder/payload_decoders/rst_stream_payload_decoder.h
@@ -18,7 +18,7 @@ class RstStreamPayloadDecoderPeer; } // namespace test -class QUICHE_EXPORT_PRIVATE RstStreamPayloadDecoder { +class QUICHE_EXPORT RstStreamPayloadDecoder { public: // Starts the decoding of a RST_STREAM frame's payload, and completes it if // the entire payload is in the provided decode buffer.
diff --git a/quiche/http2/decoder/payload_decoders/settings_payload_decoder.h b/quiche/http2/decoder/payload_decoders/settings_payload_decoder.h index a9516ee..c7a6266 100644 --- a/quiche/http2/decoder/payload_decoders/settings_payload_decoder.h +++ b/quiche/http2/decoder/payload_decoders/settings_payload_decoder.h
@@ -19,7 +19,7 @@ class SettingsPayloadDecoderPeer; } // namespace test -class QUICHE_EXPORT_PRIVATE SettingsPayloadDecoder { +class QUICHE_EXPORT SettingsPayloadDecoder { public: // Starts the decoding of a SETTINGS frame's payload, and completes it if // the entire payload is in the provided decode buffer.
diff --git a/quiche/http2/decoder/payload_decoders/unknown_payload_decoder.h b/quiche/http2/decoder/payload_decoders/unknown_payload_decoder.h index 4d4f85a..bdc5d81 100644 --- a/quiche/http2/decoder/payload_decoders/unknown_payload_decoder.h +++ b/quiche/http2/decoder/payload_decoders/unknown_payload_decoder.h
@@ -17,7 +17,7 @@ namespace http2 { -class QUICHE_EXPORT_PRIVATE UnknownPayloadDecoder { +class QUICHE_EXPORT UnknownPayloadDecoder { public: // Starts decoding a payload of unknown type; just passes it to the listener. DecodeStatus StartDecodingPayload(FrameDecoderState* state, DecodeBuffer* db);
diff --git a/quiche/http2/decoder/payload_decoders/window_update_payload_decoder.h b/quiche/http2/decoder/payload_decoders/window_update_payload_decoder.h index c12c347..659a715 100644 --- a/quiche/http2/decoder/payload_decoders/window_update_payload_decoder.h +++ b/quiche/http2/decoder/payload_decoders/window_update_payload_decoder.h
@@ -18,7 +18,7 @@ class WindowUpdatePayloadDecoderPeer; } // namespace test -class QUICHE_EXPORT_PRIVATE WindowUpdatePayloadDecoder { +class QUICHE_EXPORT WindowUpdatePayloadDecoder { public: // Starts decoding a WINDOW_UPDATE frame's payload, and completes it if // the entire payload is in the provided decode buffer.
diff --git a/quiche/http2/hpack/decoder/hpack_block_decoder.h b/quiche/http2/hpack/decoder/hpack_block_decoder.h index 0706067..4eeb6d3 100644 --- a/quiche/http2/hpack/decoder/hpack_block_decoder.h +++ b/quiche/http2/hpack/decoder/hpack_block_decoder.h
@@ -22,7 +22,7 @@ namespace http2 { -class QUICHE_EXPORT_PRIVATE HpackBlockDecoder { +class QUICHE_EXPORT HpackBlockDecoder { public: explicit HpackBlockDecoder(HpackEntryDecoderListener* listener) : listener_(listener) { @@ -61,8 +61,8 @@ bool before_entry_ = true; }; -QUICHE_EXPORT_PRIVATE std::ostream& operator<<(std::ostream& out, - const HpackBlockDecoder& v); +QUICHE_EXPORT std::ostream& operator<<(std::ostream& out, + const HpackBlockDecoder& v); } // namespace http2
diff --git a/quiche/http2/hpack/decoder/hpack_decoder.h b/quiche/http2/hpack/decoder/hpack_decoder.h index 393a6ca..9e4b68b 100644 --- a/quiche/http2/hpack/decoder/hpack_decoder.h +++ b/quiche/http2/hpack/decoder/hpack_decoder.h
@@ -37,7 +37,7 @@ class HpackDecoderPeer; } // namespace test -class QUICHE_EXPORT_PRIVATE HpackDecoder { +class QUICHE_EXPORT HpackDecoder { public: HpackDecoder(HpackDecoderListener* listener, size_t max_string_size); virtual ~HpackDecoder();
diff --git a/quiche/http2/hpack/decoder/hpack_decoder_listener.h b/quiche/http2/hpack/decoder/hpack_decoder_listener.h index bd87c62..37564a4 100644 --- a/quiche/http2/hpack/decoder/hpack_decoder_listener.h +++ b/quiche/http2/hpack/decoder/hpack_decoder_listener.h
@@ -14,7 +14,7 @@ namespace http2 { -class QUICHE_EXPORT_PRIVATE HpackDecoderListener { +class QUICHE_EXPORT HpackDecoderListener { public: HpackDecoderListener(); virtual ~HpackDecoderListener(); @@ -41,8 +41,7 @@ // A no-op implementation of HpackDecoderListener, useful for ignoring // callbacks once an error is detected. -class QUICHE_EXPORT_PRIVATE HpackDecoderNoOpListener - : public HpackDecoderListener { +class QUICHE_EXPORT HpackDecoderNoOpListener : public HpackDecoderListener { public: HpackDecoderNoOpListener(); ~HpackDecoderNoOpListener() override;
diff --git a/quiche/http2/hpack/decoder/hpack_decoder_state.h b/quiche/http2/hpack/decoder/hpack_decoder_state.h index 8b4c0fa..4198ef4 100644 --- a/quiche/http2/hpack/decoder/hpack_decoder_state.h +++ b/quiche/http2/hpack/decoder/hpack_decoder_state.h
@@ -30,7 +30,7 @@ class HpackDecoderStatePeer; } // namespace test -class QUICHE_EXPORT_PRIVATE HpackDecoderState : public HpackWholeEntryListener { +class QUICHE_EXPORT HpackDecoderState : public HpackWholeEntryListener { public: explicit HpackDecoderState(HpackDecoderListener* listener); ~HpackDecoderState() override;
diff --git a/quiche/http2/hpack/decoder/hpack_decoder_string_buffer.h b/quiche/http2/hpack/decoder/hpack_decoder_string_buffer.h index 3136e8e..a2b8605 100644 --- a/quiche/http2/hpack/decoder/hpack_decoder_string_buffer.h +++ b/quiche/http2/hpack/decoder/hpack_decoder_string_buffer.h
@@ -20,7 +20,7 @@ namespace http2 { -class QUICHE_EXPORT_PRIVATE HpackDecoderStringBuffer { +class QUICHE_EXPORT HpackDecoderStringBuffer { public: enum class State : uint8_t { RESET, COLLECTING, COMPLETE }; enum class Backing : uint8_t { RESET, UNBUFFERED, BUFFERED, STATIC }; @@ -93,8 +93,8 @@ Backing backing_; }; -QUICHE_EXPORT_PRIVATE std::ostream& operator<<( - std::ostream& out, const HpackDecoderStringBuffer& v); +QUICHE_EXPORT std::ostream& operator<<(std::ostream& out, + const HpackDecoderStringBuffer& v); } // namespace http2
diff --git a/quiche/http2/hpack/decoder/hpack_decoder_tables.h b/quiche/http2/hpack/decoder/hpack_decoder_tables.h index e78b91d..38f665d 100644 --- a/quiche/http2/hpack/decoder/hpack_decoder_tables.h +++ b/quiche/http2/hpack/decoder/hpack_decoder_tables.h
@@ -33,7 +33,7 @@ class HpackDecoderTablesPeer; } // namespace test -struct QUICHE_EXPORT_PRIVATE HpackStringPair { +struct QUICHE_EXPORT HpackStringPair { HpackStringPair(std::string name, std::string value); ~HpackStringPair(); @@ -47,13 +47,13 @@ const std::string value; }; -QUICHE_EXPORT_PRIVATE std::ostream& operator<<(std::ostream& os, - const HpackStringPair& p); +QUICHE_EXPORT std::ostream& operator<<(std::ostream& os, + const HpackStringPair& p); // See http://httpwg.org/specs/rfc7541.html#static.table.definition for the // contents, and http://httpwg.org/specs/rfc7541.html#index.address.space for // info about accessing the static table. -class QUICHE_EXPORT_PRIVATE HpackDecoderStaticTable { +class QUICHE_EXPORT HpackDecoderStaticTable { public: explicit HpackDecoderStaticTable(const std::vector<HpackStringPair>* table); // Uses a global table shared by all threads. @@ -73,7 +73,7 @@ // in the dynamic table. See these sections of the RFC: // http://httpwg.org/specs/rfc7541.html#dynamic.table // http://httpwg.org/specs/rfc7541.html#dynamic.table.management -class QUICHE_EXPORT_PRIVATE HpackDecoderDynamicTable { +class QUICHE_EXPORT HpackDecoderDynamicTable { public: HpackDecoderDynamicTable(); ~HpackDecoderDynamicTable(); @@ -120,7 +120,7 @@ size_t insert_count_; }; -class QUICHE_EXPORT_PRIVATE HpackDecoderTables { +class QUICHE_EXPORT HpackDecoderTables { public: HpackDecoderTables(); ~HpackDecoderTables();
diff --git a/quiche/http2/hpack/decoder/hpack_decoding_error.h b/quiche/http2/hpack/decoder/hpack_decoding_error.h index e24eaf1..538237f 100644 --- a/quiche/http2/hpack/decoder/hpack_decoding_error.h +++ b/quiche/http2/hpack/decoder/hpack_decoding_error.h
@@ -43,7 +43,7 @@ kCompressedHeaderSizeExceedsLimit, }; -QUICHE_EXPORT_PRIVATE absl::string_view HpackDecodingErrorToString( +QUICHE_EXPORT absl::string_view HpackDecodingErrorToString( HpackDecodingError error); } // namespace http2
diff --git a/quiche/http2/hpack/decoder/hpack_entry_decoder.h b/quiche/http2/hpack/decoder/hpack_entry_decoder.h index 75ffbac..85b8a78 100644 --- a/quiche/http2/hpack/decoder/hpack_entry_decoder.h +++ b/quiche/http2/hpack/decoder/hpack_entry_decoder.h
@@ -24,7 +24,7 @@ namespace http2 { -class QUICHE_EXPORT_PRIVATE HpackEntryDecoder { +class QUICHE_EXPORT HpackEntryDecoder { public: enum class EntryDecoderState { // Have started decoding the type/varint, but didn't finish on the previous @@ -80,9 +80,9 @@ HpackDecodingError error_ = HpackDecodingError::kOk; }; -QUICHE_EXPORT_PRIVATE std::ostream& operator<<(std::ostream& out, - const HpackEntryDecoder& v); -QUICHE_EXPORT_PRIVATE std::ostream& operator<<( +QUICHE_EXPORT std::ostream& operator<<(std::ostream& out, + const HpackEntryDecoder& v); +QUICHE_EXPORT std::ostream& operator<<( std::ostream& out, HpackEntryDecoder::EntryDecoderState state); } // namespace http2
diff --git a/quiche/http2/hpack/decoder/hpack_entry_decoder_listener.h b/quiche/http2/hpack/decoder/hpack_entry_decoder_listener.h index 1ba9339..86230df 100644 --- a/quiche/http2/hpack/decoder/hpack_entry_decoder_listener.h +++ b/quiche/http2/hpack/decoder/hpack_entry_decoder_listener.h
@@ -16,7 +16,7 @@ namespace http2 { -class QUICHE_EXPORT_PRIVATE HpackEntryDecoderListener { +class QUICHE_EXPORT HpackEntryDecoderListener { public: virtual ~HpackEntryDecoderListener() {} @@ -64,7 +64,7 @@ virtual void OnDynamicTableSizeUpdate(size_t size) = 0; }; -class QUICHE_EXPORT_PRIVATE HpackEntryDecoderVLoggingListener +class QUICHE_EXPORT HpackEntryDecoderVLoggingListener : public HpackEntryDecoderListener { public: HpackEntryDecoderVLoggingListener() : wrapped_(nullptr) {} @@ -88,7 +88,7 @@ }; // A no-op implementation of HpackEntryDecoderListener. -class QUICHE_EXPORT_PRIVATE HpackEntryDecoderNoOpListener +class QUICHE_EXPORT HpackEntryDecoderNoOpListener : public HpackEntryDecoderListener { public: ~HpackEntryDecoderNoOpListener() override {}
diff --git a/quiche/http2/hpack/decoder/hpack_entry_type_decoder.h b/quiche/http2/hpack/decoder/hpack_entry_type_decoder.h index bf6a2c9..2548ef5 100644 --- a/quiche/http2/hpack/decoder/hpack_entry_type_decoder.h +++ b/quiche/http2/hpack/decoder/hpack_entry_type_decoder.h
@@ -22,7 +22,7 @@ namespace http2 { -class QUICHE_EXPORT_PRIVATE HpackEntryTypeDecoder { +class QUICHE_EXPORT HpackEntryTypeDecoder { public: // Only call when the decode buffer has data (i.e. HpackEntryDecoder must // not call until there is data). @@ -50,8 +50,8 @@ HpackEntryType entry_type_ = HpackEntryType::kIndexedHeader; }; -QUICHE_EXPORT_PRIVATE std::ostream& operator<<(std::ostream& out, - const HpackEntryTypeDecoder& v); +QUICHE_EXPORT std::ostream& operator<<(std::ostream& out, + const HpackEntryTypeDecoder& v); } // namespace http2 #endif // QUICHE_HTTP2_HPACK_DECODER_HPACK_ENTRY_TYPE_DECODER_H_
diff --git a/quiche/http2/hpack/decoder/hpack_string_decoder.h b/quiche/http2/hpack/decoder/hpack_string_decoder.h index c8b88f3..897ce76 100644 --- a/quiche/http2/hpack/decoder/hpack_string_decoder.h +++ b/quiche/http2/hpack/decoder/hpack_string_decoder.h
@@ -33,7 +33,7 @@ // Resume() when more input is available, repeating until kDecodeInProgress is // not returned. If kDecodeDone or kDecodeError is returned, then Resume() must // not be called until Start() has been called to start decoding a new string. -class QUICHE_EXPORT_PRIVATE HpackStringDecoder { +class QUICHE_EXPORT HpackStringDecoder { public: enum StringDecoderState { kStartDecodingLength, @@ -200,8 +200,8 @@ bool huffman_encoded_ = false; }; -QUICHE_EXPORT_PRIVATE std::ostream& operator<<(std::ostream& out, - const HpackStringDecoder& v); +QUICHE_EXPORT std::ostream& operator<<(std::ostream& out, + const HpackStringDecoder& v); } // namespace http2 #endif // QUICHE_HTTP2_HPACK_DECODER_HPACK_STRING_DECODER_H_
diff --git a/quiche/http2/hpack/decoder/hpack_string_decoder_listener.h b/quiche/http2/hpack/decoder/hpack_string_decoder_listener.h index c343d40..9420560 100644 --- a/quiche/http2/hpack/decoder/hpack_string_decoder_listener.h +++ b/quiche/http2/hpack/decoder/hpack_string_decoder_listener.h
@@ -20,7 +20,7 @@ // HpackStringDecoder methods require a listener that implements the methods // below, but it is NOT necessary to extend this class because the methods // are templates. -class QUICHE_EXPORT_PRIVATE HpackStringDecoderListener { +class QUICHE_EXPORT HpackStringDecoderListener { public: virtual ~HpackStringDecoderListener() {} @@ -39,7 +39,7 @@ virtual void OnStringEnd() = 0; }; -class QUICHE_EXPORT_PRIVATE HpackStringDecoderVLoggingListener +class QUICHE_EXPORT HpackStringDecoderVLoggingListener : public HpackStringDecoderListener { public: HpackStringDecoderVLoggingListener() : wrapped_(nullptr) {}
diff --git a/quiche/http2/hpack/decoder/hpack_whole_entry_buffer.h b/quiche/http2/hpack/decoder/hpack_whole_entry_buffer.h index 0cdde65..b7bd108 100644 --- a/quiche/http2/hpack/decoder/hpack_whole_entry_buffer.h +++ b/quiche/http2/hpack/decoder/hpack_whole_entry_buffer.h
@@ -24,8 +24,7 @@ // TODO(jamessynge): Consider renaming HpackEntryDecoderListener to // HpackEntryPartsListener or HpackEntryFragmentsListener. -class QUICHE_EXPORT_PRIVATE HpackWholeEntryBuffer - : public HpackEntryDecoderListener { +class QUICHE_EXPORT HpackWholeEntryBuffer : public HpackEntryDecoderListener { public: // max_string_size specifies the maximum size of an on-the-wire string (name // or value, plain or Huffman encoded) that will be accepted. See sections
diff --git a/quiche/http2/hpack/decoder/hpack_whole_entry_listener.h b/quiche/http2/hpack/decoder/hpack_whole_entry_listener.h index a0776a6..54e4506 100644 --- a/quiche/http2/hpack/decoder/hpack_whole_entry_listener.h +++ b/quiche/http2/hpack/decoder/hpack_whole_entry_listener.h
@@ -19,7 +19,7 @@ namespace http2 { -class QUICHE_EXPORT_PRIVATE HpackWholeEntryListener { +class QUICHE_EXPORT HpackWholeEntryListener { public: virtual ~HpackWholeEntryListener(); @@ -55,7 +55,7 @@ // A no-op implementation of HpackWholeEntryDecoderListener, useful for ignoring // callbacks once an error is detected. -class QUICHE_EXPORT_PRIVATE HpackWholeEntryNoOpListener +class QUICHE_EXPORT HpackWholeEntryNoOpListener : public HpackWholeEntryListener { public: ~HpackWholeEntryNoOpListener() override;
diff --git a/quiche/http2/hpack/http2_hpack_constants.h b/quiche/http2/hpack/http2_hpack_constants.h index a10b140..1deaf05 100644 --- a/quiche/http2/hpack/http2_hpack_constants.h +++ b/quiche/http2/hpack/http2_hpack_constants.h
@@ -52,11 +52,10 @@ }; // Returns the name of the enum member. -QUICHE_EXPORT_PRIVATE std::string HpackEntryTypeToString(HpackEntryType v); +QUICHE_EXPORT std::string HpackEntryTypeToString(HpackEntryType v); // Inserts the name of the enum member into |out|. -QUICHE_EXPORT_PRIVATE std::ostream& operator<<(std::ostream& out, - HpackEntryType v); +QUICHE_EXPORT std::ostream& operator<<(std::ostream& out, HpackEntryType v); } // namespace http2
diff --git a/quiche/http2/hpack/huffman/hpack_huffman_decoder.h b/quiche/http2/hpack/huffman/hpack_huffman_decoder.h index 9befd6c..910aba5 100644 --- a/quiche/http2/hpack/huffman/hpack_huffman_decoder.h +++ b/quiche/http2/hpack/huffman/hpack_huffman_decoder.h
@@ -38,7 +38,7 @@ // HuffmanBitBuffer stores the leading edge of bits to be decoded. The high // order bit of accumulator_ is the next bit to be decoded. -class QUICHE_EXPORT_PRIVATE HuffmanBitBuffer { +class QUICHE_EXPORT HuffmanBitBuffer { public: HuffmanBitBuffer(); @@ -85,7 +85,7 @@ return out << v.DebugString(); } -class QUICHE_EXPORT_PRIVATE HpackHuffmanDecoder { +class QUICHE_EXPORT HpackHuffmanDecoder { public: HpackHuffmanDecoder(); ~HpackHuffmanDecoder();
diff --git a/quiche/http2/hpack/huffman/hpack_huffman_encoder.h b/quiche/http2/hpack/huffman/hpack_huffman_encoder.h index 7e73187..e6056c1 100644 --- a/quiche/http2/hpack/huffman/hpack_huffman_encoder.h +++ b/quiche/http2/hpack/huffman/hpack_huffman_encoder.h
@@ -18,22 +18,20 @@ // Returns the size of the Huffman encoding of |plain|, which may be greater // than plain.size(). -QUICHE_EXPORT_PRIVATE size_t HuffmanSize(absl::string_view plain); +QUICHE_EXPORT size_t HuffmanSize(absl::string_view plain); // Encode the plain text string |plain| with the Huffman encoding defined in the // HPACK RFC, 7541. |encoded_size| is used to pre-allocate storage and it // should be the value returned by HuffmanSize(). Appends the result to // |*huffman|. -QUICHE_EXPORT_PRIVATE void HuffmanEncode(absl::string_view plain, - size_t encoded_size, - std::string* huffman); +QUICHE_EXPORT void HuffmanEncode(absl::string_view plain, size_t encoded_size, + std::string* huffman); // Encode |input| with the Huffman encoding defined RFC7541, used in HPACK and // QPACK. |encoded_size| must be the value returned by HuffmanSize(). // Appends the result to the end of |*output|. -QUICHE_EXPORT_PRIVATE void HuffmanEncodeFast(absl::string_view input, - size_t encoded_size, - std::string* output); +QUICHE_EXPORT void HuffmanEncodeFast(absl::string_view input, + size_t encoded_size, std::string* output); } // namespace http2
diff --git a/quiche/http2/hpack/huffman/huffman_spec_tables.h b/quiche/http2/hpack/huffman/huffman_spec_tables.h index 1c1b500..7e66fef 100644 --- a/quiche/http2/hpack/huffman/huffman_spec_tables.h +++ b/quiche/http2/hpack/huffman/huffman_spec_tables.h
@@ -13,7 +13,7 @@ namespace http2 { -struct QUICHE_EXPORT_PRIVATE HuffmanSpecTables { +struct QUICHE_EXPORT HuffmanSpecTables { // Number of bits in the encoding of each symbol (byte). static const uint8_t kCodeLengths[257];
diff --git a/quiche/http2/hpack/varint/hpack_varint_decoder.h b/quiche/http2/hpack/varint/hpack_varint_decoder.h index 0036752..af998a2 100644 --- a/quiche/http2/hpack/varint/hpack_varint_decoder.h +++ b/quiche/http2/hpack/varint/hpack_varint_decoder.h
@@ -55,7 +55,7 @@ // needed. Start and StartExtended handles the initialization of member // variables. This is necessary in order for HpackVarintDecoder to be part // of a union. -class QUICHE_EXPORT_PRIVATE HpackVarintDecoder { +class QUICHE_EXPORT HpackVarintDecoder { public: // |prefix_value| is the first byte of the encoded varint. // |prefix_length| is number of bits in the first byte that are used for
diff --git a/quiche/http2/hpack/varint/hpack_varint_encoder.h b/quiche/http2/hpack/varint/hpack_varint_encoder.h index 69acc16..0e16009 100644 --- a/quiche/http2/hpack/varint/hpack_varint_encoder.h +++ b/quiche/http2/hpack/varint/hpack_varint_encoder.h
@@ -16,7 +16,7 @@ // HPACK integer encoder class with single static method implementing variable // length integer representation defined in RFC7541, Section 5.1: // https://httpwg.org/specs/rfc7541.html#integer.representation -class QUICHE_EXPORT_PRIVATE HpackVarintEncoder { +class QUICHE_EXPORT HpackVarintEncoder { public: // Encode |varint|, appending encoded data to |*output|. // Appends between 1 and 11 bytes in total.
diff --git a/quiche/http2/http2_constants.h b/quiche/http2/http2_constants.h index 6395cf1..f4034bd 100644 --- a/quiche/http2/http2_constants.h +++ b/quiche/http2/http2_constants.h
@@ -57,10 +57,10 @@ // for each unsupported value. Since these are just used for debugging/error // messages, that isn't a cost to we need to worry about. The same applies to // the functions later in this file. -QUICHE_EXPORT_PRIVATE std::string Http2FrameTypeToString(Http2FrameType v); -QUICHE_EXPORT_PRIVATE std::string Http2FrameTypeToString(uint8_t v); -QUICHE_EXPORT_PRIVATE inline std::ostream& operator<<(std::ostream& out, - Http2FrameType v) { +QUICHE_EXPORT std::string Http2FrameTypeToString(Http2FrameType v); +QUICHE_EXPORT std::string Http2FrameTypeToString(uint8_t v); +QUICHE_EXPORT inline std::ostream& operator<<(std::ostream& out, + Http2FrameType v) { return out << Http2FrameTypeToString(v); } @@ -76,10 +76,9 @@ // Formats zero or more flags for the specified type of frame. Returns an // empty string if flags==0. -QUICHE_EXPORT_PRIVATE std::string Http2FrameFlagsToString(Http2FrameType type, - uint8_t flags); -QUICHE_EXPORT_PRIVATE std::string Http2FrameFlagsToString(uint8_t type, - uint8_t flags); +QUICHE_EXPORT std::string Http2FrameFlagsToString(Http2FrameType type, + uint8_t flags); +QUICHE_EXPORT std::string Http2FrameFlagsToString(uint8_t type, uint8_t flags); // Error codes for GOAWAY and RST_STREAM frames. enum class Http2ErrorCode : uint32_t { @@ -143,10 +142,10 @@ } // Format the specified error code. -QUICHE_EXPORT_PRIVATE std::string Http2ErrorCodeToString(uint32_t v); -QUICHE_EXPORT_PRIVATE std::string Http2ErrorCodeToString(Http2ErrorCode v); -QUICHE_EXPORT_PRIVATE inline std::ostream& operator<<(std::ostream& out, - Http2ErrorCode v) { +QUICHE_EXPORT std::string Http2ErrorCodeToString(uint32_t v); +QUICHE_EXPORT std::string Http2ErrorCodeToString(Http2ErrorCode v); +QUICHE_EXPORT inline std::ostream& operator<<(std::ostream& out, + Http2ErrorCode v) { return out << Http2ErrorCodeToString(v); } @@ -223,8 +222,8 @@ } // Format the specified settings parameter. -QUICHE_EXPORT_PRIVATE std::string Http2SettingsParameterToString(uint32_t v); -QUICHE_EXPORT_PRIVATE std::string Http2SettingsParameterToString( +QUICHE_EXPORT std::string Http2SettingsParameterToString(uint32_t v); +QUICHE_EXPORT std::string Http2SettingsParameterToString( Http2SettingsParameter v); inline std::ostream& operator<<(std::ostream& out, Http2SettingsParameter v) { return out << Http2SettingsParameterToString(v); @@ -232,7 +231,7 @@ // Information about the initial, minimum and maximum value of settings (not // applicable to all settings parameters). -class QUICHE_EXPORT_PRIVATE Http2SettingsInfo { +class QUICHE_EXPORT Http2SettingsInfo { public: // Default value for HEADER_TABLE_SIZE. static constexpr uint32_t DefaultHeaderTableSize() { return 4096; } @@ -264,7 +263,7 @@ quiche::StringPieceCaseEqual>; // Returns all disallowed HTTP/2 headers. -QUICHE_EXPORT_PRIVATE const InvalidHeaderSet& GetInvalidHttp2HeaderSet(); +QUICHE_EXPORT const InvalidHeaderSet& GetInvalidHttp2HeaderSet(); } // namespace http2
diff --git a/quiche/http2/http2_structures.h b/quiche/http2/http2_structures.h index 496746b..3e1e4dd 100644 --- a/quiche/http2/http2_structures.h +++ b/quiche/http2/http2_structures.h
@@ -37,7 +37,7 @@ namespace http2 { -struct QUICHE_EXPORT_PRIVATE Http2FrameHeader { +struct QUICHE_EXPORT Http2FrameHeader { Http2FrameHeader() {} Http2FrameHeader(uint32_t payload_length, Http2FrameType type, uint8_t flags, uint32_t stream_id) @@ -127,18 +127,18 @@ uint8_t flags; }; -QUICHE_EXPORT_PRIVATE bool operator==(const Http2FrameHeader& a, - const Http2FrameHeader& b); -QUICHE_EXPORT_PRIVATE inline bool operator!=(const Http2FrameHeader& a, - const Http2FrameHeader& b) { +QUICHE_EXPORT bool operator==(const Http2FrameHeader& a, + const Http2FrameHeader& b); +QUICHE_EXPORT inline bool operator!=(const Http2FrameHeader& a, + const Http2FrameHeader& b) { return !(a == b); } -QUICHE_EXPORT_PRIVATE std::ostream& operator<<(std::ostream& out, - const Http2FrameHeader& v); +QUICHE_EXPORT std::ostream& operator<<(std::ostream& out, + const Http2FrameHeader& v); // Http2PriorityFields: -struct QUICHE_EXPORT_PRIVATE Http2PriorityFields { +struct QUICHE_EXPORT Http2PriorityFields { Http2PriorityFields() {} Http2PriorityFields(uint32_t stream_dependency, uint32_t weight, bool is_exclusive) @@ -170,18 +170,18 @@ bool is_exclusive; }; -QUICHE_EXPORT_PRIVATE bool operator==(const Http2PriorityFields& a, - const Http2PriorityFields& b); -QUICHE_EXPORT_PRIVATE inline bool operator!=(const Http2PriorityFields& a, - const Http2PriorityFields& b) { +QUICHE_EXPORT bool operator==(const Http2PriorityFields& a, + const Http2PriorityFields& b); +QUICHE_EXPORT inline bool operator!=(const Http2PriorityFields& a, + const Http2PriorityFields& b) { return !(a == b); } -QUICHE_EXPORT_PRIVATE std::ostream& operator<<(std::ostream& out, - const Http2PriorityFields& v); +QUICHE_EXPORT std::ostream& operator<<(std::ostream& out, + const Http2PriorityFields& v); // Http2RstStreamFields: -struct QUICHE_EXPORT_PRIVATE Http2RstStreamFields { +struct QUICHE_EXPORT Http2RstStreamFields { static constexpr size_t EncodedSize() { return 4; } bool IsSupportedErrorCode() const { return IsSupportedHttp2ErrorCode(error_code); @@ -190,18 +190,18 @@ Http2ErrorCode error_code; }; -QUICHE_EXPORT_PRIVATE bool operator==(const Http2RstStreamFields& a, - const Http2RstStreamFields& b); -QUICHE_EXPORT_PRIVATE inline bool operator!=(const Http2RstStreamFields& a, - const Http2RstStreamFields& b) { +QUICHE_EXPORT bool operator==(const Http2RstStreamFields& a, + const Http2RstStreamFields& b); +QUICHE_EXPORT inline bool operator!=(const Http2RstStreamFields& a, + const Http2RstStreamFields& b) { return !(a == b); } -QUICHE_EXPORT_PRIVATE std::ostream& operator<<(std::ostream& out, - const Http2RstStreamFields& v); +QUICHE_EXPORT std::ostream& operator<<(std::ostream& out, + const Http2RstStreamFields& v); // Http2SettingFields: -struct QUICHE_EXPORT_PRIVATE Http2SettingFields { +struct QUICHE_EXPORT Http2SettingFields { Http2SettingFields() {} Http2SettingFields(Http2SettingsParameter parameter, uint32_t value) : parameter(parameter), value(value) {} @@ -214,52 +214,52 @@ uint32_t value; }; -QUICHE_EXPORT_PRIVATE bool operator==(const Http2SettingFields& a, - const Http2SettingFields& b); -QUICHE_EXPORT_PRIVATE inline bool operator!=(const Http2SettingFields& a, - const Http2SettingFields& b) { +QUICHE_EXPORT bool operator==(const Http2SettingFields& a, + const Http2SettingFields& b); +QUICHE_EXPORT inline bool operator!=(const Http2SettingFields& a, + const Http2SettingFields& b) { return !(a == b); } -QUICHE_EXPORT_PRIVATE std::ostream& operator<<(std::ostream& out, - const Http2SettingFields& v); +QUICHE_EXPORT std::ostream& operator<<(std::ostream& out, + const Http2SettingFields& v); // Http2PushPromiseFields: -struct QUICHE_EXPORT_PRIVATE Http2PushPromiseFields { +struct QUICHE_EXPORT Http2PushPromiseFields { static constexpr size_t EncodedSize() { return 4; } uint32_t promised_stream_id; }; -QUICHE_EXPORT_PRIVATE bool operator==(const Http2PushPromiseFields& a, - const Http2PushPromiseFields& b); -QUICHE_EXPORT_PRIVATE inline bool operator!=(const Http2PushPromiseFields& a, - const Http2PushPromiseFields& b) { +QUICHE_EXPORT bool operator==(const Http2PushPromiseFields& a, + const Http2PushPromiseFields& b); +QUICHE_EXPORT inline bool operator!=(const Http2PushPromiseFields& a, + const Http2PushPromiseFields& b) { return !(a == b); } -QUICHE_EXPORT_PRIVATE std::ostream& operator<<(std::ostream& out, - const Http2PushPromiseFields& v); +QUICHE_EXPORT std::ostream& operator<<(std::ostream& out, + const Http2PushPromiseFields& v); // Http2PingFields: -struct QUICHE_EXPORT_PRIVATE Http2PingFields { +struct QUICHE_EXPORT Http2PingFields { static constexpr size_t EncodedSize() { return 8; } uint8_t opaque_bytes[8]; }; -QUICHE_EXPORT_PRIVATE bool operator==(const Http2PingFields& a, - const Http2PingFields& b); -QUICHE_EXPORT_PRIVATE inline bool operator!=(const Http2PingFields& a, - const Http2PingFields& b) { +QUICHE_EXPORT bool operator==(const Http2PingFields& a, + const Http2PingFields& b); +QUICHE_EXPORT inline bool operator!=(const Http2PingFields& a, + const Http2PingFields& b) { return !(a == b); } -QUICHE_EXPORT_PRIVATE std::ostream& operator<<(std::ostream& out, - const Http2PingFields& v); +QUICHE_EXPORT std::ostream& operator<<(std::ostream& out, + const Http2PingFields& v); // Http2GoAwayFields: -struct QUICHE_EXPORT_PRIVATE Http2GoAwayFields { +struct QUICHE_EXPORT Http2GoAwayFields { Http2GoAwayFields() {} Http2GoAwayFields(uint32_t last_stream_id, Http2ErrorCode error_code) : last_stream_id(last_stream_id), error_code(error_code) {} @@ -272,18 +272,18 @@ Http2ErrorCode error_code; }; -QUICHE_EXPORT_PRIVATE bool operator==(const Http2GoAwayFields& a, - const Http2GoAwayFields& b); -QUICHE_EXPORT_PRIVATE inline bool operator!=(const Http2GoAwayFields& a, - const Http2GoAwayFields& b) { +QUICHE_EXPORT bool operator==(const Http2GoAwayFields& a, + const Http2GoAwayFields& b); +QUICHE_EXPORT inline bool operator!=(const Http2GoAwayFields& a, + const Http2GoAwayFields& b) { return !(a == b); } -QUICHE_EXPORT_PRIVATE std::ostream& operator<<(std::ostream& out, - const Http2GoAwayFields& v); +QUICHE_EXPORT std::ostream& operator<<(std::ostream& out, + const Http2GoAwayFields& v); // Http2WindowUpdateFields: -struct QUICHE_EXPORT_PRIVATE Http2WindowUpdateFields { +struct QUICHE_EXPORT Http2WindowUpdateFields { static constexpr size_t EncodedSize() { return 4; } // 31-bit, unsigned increase in the window size (only positive values are @@ -291,36 +291,36 @@ uint32_t window_size_increment; }; -QUICHE_EXPORT_PRIVATE bool operator==(const Http2WindowUpdateFields& a, - const Http2WindowUpdateFields& b); -QUICHE_EXPORT_PRIVATE inline bool operator!=(const Http2WindowUpdateFields& a, - const Http2WindowUpdateFields& b) { +QUICHE_EXPORT bool operator==(const Http2WindowUpdateFields& a, + const Http2WindowUpdateFields& b); +QUICHE_EXPORT inline bool operator!=(const Http2WindowUpdateFields& a, + const Http2WindowUpdateFields& b) { return !(a == b); } -QUICHE_EXPORT_PRIVATE std::ostream& operator<<( - std::ostream& out, const Http2WindowUpdateFields& v); +QUICHE_EXPORT std::ostream& operator<<(std::ostream& out, + const Http2WindowUpdateFields& v); // Http2AltSvcFields: -struct QUICHE_EXPORT_PRIVATE Http2AltSvcFields { +struct QUICHE_EXPORT Http2AltSvcFields { static constexpr size_t EncodedSize() { return 2; } // This is the one fixed size portion of the ALTSVC payload. uint16_t origin_length; }; -QUICHE_EXPORT_PRIVATE bool operator==(const Http2AltSvcFields& a, - const Http2AltSvcFields& b); -QUICHE_EXPORT_PRIVATE inline bool operator!=(const Http2AltSvcFields& a, - const Http2AltSvcFields& b) { +QUICHE_EXPORT bool operator==(const Http2AltSvcFields& a, + const Http2AltSvcFields& b); +QUICHE_EXPORT inline bool operator!=(const Http2AltSvcFields& a, + const Http2AltSvcFields& b) { return !(a == b); } -QUICHE_EXPORT_PRIVATE std::ostream& operator<<(std::ostream& out, - const Http2AltSvcFields& v); +QUICHE_EXPORT std::ostream& operator<<(std::ostream& out, + const Http2AltSvcFields& v); // Http2PriorityUpdateFields: -struct QUICHE_EXPORT_PRIVATE Http2PriorityUpdateFields { +struct QUICHE_EXPORT Http2PriorityUpdateFields { Http2PriorityUpdateFields() {} Http2PriorityUpdateFields(uint32_t prioritized_stream_id) : prioritized_stream_id(prioritized_stream_id) {} @@ -333,14 +333,14 @@ uint32_t prioritized_stream_id; }; -QUICHE_EXPORT_PRIVATE bool operator==(const Http2PriorityUpdateFields& a, - const Http2PriorityUpdateFields& b); -QUICHE_EXPORT_PRIVATE inline bool operator!=( - const Http2PriorityUpdateFields& a, const Http2PriorityUpdateFields& b) { +QUICHE_EXPORT bool operator==(const Http2PriorityUpdateFields& a, + const Http2PriorityUpdateFields& b); +QUICHE_EXPORT inline bool operator!=(const Http2PriorityUpdateFields& a, + const Http2PriorityUpdateFields& b) { return !(a == b); } -QUICHE_EXPORT_PRIVATE std::ostream& operator<<( - std::ostream& out, const Http2PriorityUpdateFields& v); +QUICHE_EXPORT std::ostream& operator<<(std::ostream& out, + const Http2PriorityUpdateFields& v); } // namespace http2
diff --git a/quiche/oblivious_http/buffers/oblivious_http_request.h b/quiche/oblivious_http/buffers/oblivious_http_request.h index 1aef1f2..1963693 100644 --- a/quiche/oblivious_http/buffers/oblivious_http_request.h +++ b/quiche/oblivious_http/buffers/oblivious_http_request.h
@@ -16,7 +16,7 @@ // 2. Handles server side decryption of the payload received in HTTP POST body // from Relay. // https://www.ietf.org/archive/id/draft-ietf-ohai-ohttp-03.html#name-encapsulation-of-requests -class QUICHE_EXPORT_PRIVATE ObliviousHttpRequest { +class QUICHE_EXPORT ObliviousHttpRequest { public: // Holds the HPKE related data received from request. This context is created // during request processing, and subsequently passed into response handling
diff --git a/quiche/oblivious_http/buffers/oblivious_http_response.h b/quiche/oblivious_http/buffers/oblivious_http_response.h index 3ebd25d..40279fc 100644 --- a/quiche/oblivious_http/buffers/oblivious_http_response.h +++ b/quiche/oblivious_http/buffers/oblivious_http_response.h
@@ -12,7 +12,7 @@ namespace quiche { -class QUICHE_EXPORT_PRIVATE ObliviousHttpResponse { +class QUICHE_EXPORT ObliviousHttpResponse { public: // Parse and decrypt the OHttp response using ObliviousHttpContext context obj // that was returned from `CreateClientObliviousRequest` method. On success,
diff --git a/quiche/oblivious_http/common/oblivious_http_header_key_config.h b/quiche/oblivious_http/common/oblivious_http_header_key_config.h index 6447bab..9c46f81 100644 --- a/quiche/oblivious_http/common/oblivious_http_header_key_config.h +++ b/quiche/oblivious_http/common/oblivious_http_header_key_config.h
@@ -14,7 +14,7 @@ namespace quiche { -class QUICHE_EXPORT_PRIVATE ObliviousHttpHeaderKeyConfig { +class QUICHE_EXPORT ObliviousHttpHeaderKeyConfig { public: // https://www.ietf.org/archive/id/draft-ietf-ohai-ohttp-03.html#section-4.1-4.2 static constexpr absl::string_view kOhttpRequestLabel = @@ -109,7 +109,7 @@ // for details of the "Key Configuration" spec. // // ObliviousHttpKeyConfigs objects are immutable after construction. -class QUICHE_EXPORT_PRIVATE ObliviousHttpKeyConfigs { +class QUICHE_EXPORT ObliviousHttpKeyConfigs { public: // Parses the "application/ohttp-keys" media type, which is a byte string // formatted according to the spec:
diff --git a/quiche/oblivious_http/oblivious_http_client.h b/quiche/oblivious_http/oblivious_http_client.h index 10a2f60..93cf1a2 100644 --- a/quiche/oblivious_http/oblivious_http_client.h +++ b/quiche/oblivious_http/oblivious_http_client.h
@@ -25,7 +25,7 @@ // 4. Handles BoringSSL HPKE context setup and bookkeeping. // This class is immutable (except moves) and thus trivially thread-safe. -class QUICHE_EXPORT_PRIVATE ObliviousHttpClient { +class QUICHE_EXPORT ObliviousHttpClient { public: static absl::StatusOr<ObliviousHttpClient> Create( absl::string_view hpke_public_key,
diff --git a/quiche/oblivious_http/oblivious_http_gateway.h b/quiche/oblivious_http/oblivious_http_gateway.h index 8f70356..299f2bb 100644 --- a/quiche/oblivious_http/oblivious_http_gateway.h +++ b/quiche/oblivious_http/oblivious_http_gateway.h
@@ -23,7 +23,7 @@ // This class is immutable (except moves) and thus trivially thread-safe, // assuming the `QuicheRandom* quiche_random` passed in with `Create` is // thread-safe. Note that default `QuicheRandom::GetInstance()` is thread-safe. -class QUICHE_EXPORT_PRIVATE ObliviousHttpGateway { +class QUICHE_EXPORT ObliviousHttpGateway { public: // @params: If callers would like to pass in their own `QuicheRandom` // instance, they can make use of the param `quiche_random`. Otherwise, the
diff --git a/quiche/quic/bindings/quic_libevent.h b/quiche/quic/bindings/quic_libevent.h index b06ab4e..82783e9 100644 --- a/quiche/quic/bindings/quic_libevent.h +++ b/quiche/quic/bindings/quic_libevent.h
@@ -20,7 +20,7 @@ // Provides a libevent-based implementation of QuicEventLoop. Since libevent // uses relative time for all timeouts, the provided clock does not need to use // the UNIX time. -class QUICHE_EXPORT_PRIVATE LibeventQuicEventLoop : public QuicEventLoop { +class QUICHE_EXPORT LibeventQuicEventLoop : public QuicEventLoop { public: explicit LibeventQuicEventLoop(event_base* base, QuicClock* clock); @@ -91,7 +91,7 @@ }; // RAII-style wrapper around event_base. -class QUICHE_EXPORT_PRIVATE LibeventLoop { +class QUICHE_EXPORT LibeventLoop { public: LibeventLoop(struct event_base* base) : event_base_(base) {} ~LibeventLoop() { event_base_free(event_base_); } @@ -106,7 +106,7 @@ // that the inheritance order here matters, since otherwise the `event_base` in // question will be deleted before the LibeventQuicEventLoop object referencing // it. -class QUICHE_EXPORT_PRIVATE LibeventQuicEventLoopWithOwnership +class QUICHE_EXPORT LibeventQuicEventLoopWithOwnership : public LibeventLoop, public LibeventQuicEventLoop { public: @@ -119,8 +119,7 @@ : LibeventLoop(base), LibeventQuicEventLoop(base, clock) {} }; -class QUICHE_EXPORT_PRIVATE QuicLibeventEventLoopFactory - : public QuicEventLoopFactory { +class QUICHE_EXPORT QuicLibeventEventLoopFactory : public QuicEventLoopFactory { public: // Provides the preferred libevent backend. static QuicLibeventEventLoopFactory* Get() {
diff --git a/quiche/quic/core/connecting_client_socket.h b/quiche/quic/core/connecting_client_socket.h index d5f8ee4..0670d91 100644 --- a/quiche/quic/core/connecting_client_socket.h +++ b/quiche/quic/core/connecting_client_socket.h
@@ -28,7 +28,7 @@ // handles IO on a single thread, so if making calls from that typical // environment, it would be problematic to make a blocking call and block that // single thread. -class QUICHE_EXPORT_PRIVATE ConnectingClientSocket { +class QUICHE_EXPORT ConnectingClientSocket { public: class AsyncVisitor { public:
diff --git a/quiche/quic/core/io/event_loop_connecting_client_socket.h b/quiche/quic/core/io/event_loop_connecting_client_socket.h index c85911c..a7fb32c 100644 --- a/quiche/quic/core/io/event_loop_connecting_client_socket.h +++ b/quiche/quic/core/io/event_loop_connecting_client_socket.h
@@ -23,7 +23,7 @@ // A connection-based client socket implemented using an underlying // QuicEventLoop. -class QUICHE_EXPORT_PRIVATE EventLoopConnectingClientSocket +class QUICHE_EXPORT EventLoopConnectingClientSocket : public ConnectingClientSocket, public QuicSocketEventListener { public:
diff --git a/quiche/quic/core/io/event_loop_socket_factory.h b/quiche/quic/core/io/event_loop_socket_factory.h index ee9a9f3..8edf020 100644 --- a/quiche/quic/core/io/event_loop_socket_factory.h +++ b/quiche/quic/core/io/event_loop_socket_factory.h
@@ -19,7 +19,7 @@ // A socket factory that creates sockets implemented using an underlying // QuicEventLoop. -class QUICHE_EXPORT_PRIVATE EventLoopSocketFactory : public SocketFactory { +class QUICHE_EXPORT EventLoopSocketFactory : public SocketFactory { public: // `event_loop` and `buffer_allocator` must outlive the created factory. EventLoopSocketFactory(QuicEventLoop* event_loop,
diff --git a/quiche/quic/core/io/socket.h b/quiche/quic/core/io/socket.h index 8d32bc3..7298f7e 100644 --- a/quiche/quic/core/io/socket.h +++ b/quiche/quic/core/io/socket.h
@@ -51,7 +51,7 @@ return "unknown"; } -struct QUICHE_EXPORT_PRIVATE AcceptResult { +struct QUICHE_EXPORT AcceptResult { // Socket for interacting with the accepted connection. SocketFd fd;
diff --git a/quiche/quic/core/socket_factory.h b/quiche/quic/core/socket_factory.h index d37499d..708ff7d 100644 --- a/quiche/quic/core/socket_factory.h +++ b/quiche/quic/core/socket_factory.h
@@ -15,7 +15,7 @@ namespace quic { // A factory to create objects of type Socket and derived interfaces. -class QUICHE_EXPORT_PRIVATE SocketFactory { +class QUICHE_EXPORT SocketFactory { public: virtual ~SocketFactory() = default;
diff --git a/quiche/quic/platform/api/quic_export.h b/quiche/quic/platform/api/quic_export.h index 5edb835..13e43ca 100644 --- a/quiche/quic/platform/api/quic_export.h +++ b/quiche/quic/platform/api/quic_export.h
@@ -12,7 +12,7 @@ // QUIC_EXPORT_PRIVATE is meant for QUIC functionality that is built in Chromium // as part of //net, and not fully contained in headers. -#define QUIC_EXPORT_PRIVATE QUICHE_EXPORT_PRIVATE +#define QUIC_EXPORT_PRIVATE QUICHE_EXPORT // QUIC_NO_EXPORT is meant for QUIC functionality that is either fully defined // in a header, or is built in Chromium as part of tests or tools.
diff --git a/quiche/spdy/core/array_output_buffer.h b/quiche/spdy/core/array_output_buffer.h index 002c30a..edce72c 100644 --- a/quiche/spdy/core/array_output_buffer.h +++ b/quiche/spdy/core/array_output_buffer.h
@@ -12,7 +12,7 @@ namespace spdy { -class QUICHE_EXPORT_PRIVATE ArrayOutputBuffer : public ZeroCopyOutputBuffer { +class QUICHE_EXPORT ArrayOutputBuffer : public ZeroCopyOutputBuffer { public: // |buffer| is pointed to the output to write to, and |size| is the capacity // of the output.
diff --git a/quiche/spdy/core/header_byte_listener_interface.h b/quiche/spdy/core/header_byte_listener_interface.h index 7b738af..308110f 100644 --- a/quiche/spdy/core/header_byte_listener_interface.h +++ b/quiche/spdy/core/header_byte_listener_interface.h
@@ -8,7 +8,7 @@ namespace spdy { // Listens for the receipt of uncompressed header bytes. -class QUICHE_EXPORT_PRIVATE HeaderByteListenerInterface { +class QUICHE_EXPORT HeaderByteListenerInterface { public: virtual ~HeaderByteListenerInterface() {}
diff --git a/quiche/spdy/core/hpack/hpack_constants.h b/quiche/spdy/core/hpack/hpack_constants.h index ca57ea0..1220a38 100644 --- a/quiche/spdy/core/hpack/hpack_constants.h +++ b/quiche/spdy/core/hpack/hpack_constants.h
@@ -19,13 +19,13 @@ // An HpackPrefix signifies |bits| stored in the top |bit_size| bits // of an octet. -struct QUICHE_EXPORT_PRIVATE HpackPrefix { +struct QUICHE_EXPORT HpackPrefix { uint8_t bits; size_t bit_size; }; // Represents a symbol and its Huffman code (stored in most-significant bits). -struct QUICHE_EXPORT_PRIVATE HpackHuffmanSymbol { +struct QUICHE_EXPORT HpackHuffmanSymbol { uint32_t code; uint8_t length; uint16_t id; @@ -33,7 +33,7 @@ // An entry in the static table. Must be a POD in order to avoid static // initializers, i.e. no user-defined constructors or destructors. -struct QUICHE_EXPORT_PRIVATE HpackStaticEntry { +struct QUICHE_EXPORT HpackStaticEntry { const char* const name; const size_t name_len; const char* const value; @@ -70,17 +70,15 @@ const HpackPrefix kHeaderTableSizeUpdateOpcode = {0b001, 3}; // RFC 7541, Appendix B: Huffman Code. -QUICHE_EXPORT_PRIVATE const std::vector<HpackHuffmanSymbol>& -HpackHuffmanCodeVector(); +QUICHE_EXPORT const std::vector<HpackHuffmanSymbol>& HpackHuffmanCodeVector(); // RFC 7541, Appendix A: Static Table Definition. -QUICHE_EXPORT_PRIVATE const std::vector<HpackStaticEntry>& -HpackStaticTableVector(); +QUICHE_EXPORT const std::vector<HpackStaticEntry>& HpackStaticTableVector(); // Returns a HpackStaticTable instance initialized with |kHpackStaticTable|. // The instance is read-only, has static lifetime, and is safe to share amoung // threads. This function is thread-safe. -QUICHE_EXPORT_PRIVATE const HpackStaticTable& ObtainHpackStaticTable(); +QUICHE_EXPORT const HpackStaticTable& ObtainHpackStaticTable(); // RFC 7541, 8.1.2.1: Pseudo-headers start with a colon. const char kPseudoHeaderPrefix = ':';
diff --git a/quiche/spdy/core/hpack/hpack_decoder_adapter.h b/quiche/spdy/core/hpack/hpack_decoder_adapter.h index 5cd16fc..d5685a5 100644 --- a/quiche/spdy/core/hpack/hpack_decoder_adapter.h +++ b/quiche/spdy/core/hpack/hpack_decoder_adapter.h
@@ -28,7 +28,7 @@ class HpackDecoderAdapterPeer; } // namespace test -class QUICHE_EXPORT_PRIVATE HpackDecoderAdapter { +class QUICHE_EXPORT HpackDecoderAdapter { public: friend test::HpackDecoderAdapterPeer; HpackDecoderAdapter(); @@ -91,8 +91,7 @@ std::string detailed_error() const { return detailed_error_; } private: - class QUICHE_EXPORT_PRIVATE ListenerAdapter - : public http2::HpackDecoderListener { + class QUICHE_EXPORT ListenerAdapter : public http2::HpackDecoderListener { public: ListenerAdapter(); ~ListenerAdapter() override;
diff --git a/quiche/spdy/core/hpack/hpack_encoder.h b/quiche/spdy/core/hpack/hpack_encoder.h index d63c9f2..50e4711 100644 --- a/quiche/spdy/core/hpack/hpack_encoder.h +++ b/quiche/spdy/core/hpack/hpack_encoder.h
@@ -30,7 +30,7 @@ class HpackEncoderPeer; } // namespace test -class QUICHE_EXPORT_PRIVATE HpackEncoder { +class QUICHE_EXPORT HpackEncoder { public: using Representation = std::pair<absl::string_view, absl::string_view>; using Representations = std::vector<Representation>; @@ -53,7 +53,7 @@ // Encodes and returns the given header set as a string. std::string EncodeHeaderBlock(const Http2HeaderBlock& header_set); - class QUICHE_EXPORT_PRIVATE ProgressiveEncoder { + class QUICHE_EXPORT ProgressiveEncoder { public: virtual ~ProgressiveEncoder() {}
diff --git a/quiche/spdy/core/hpack/hpack_entry.h b/quiche/spdy/core/hpack/hpack_entry.h index 26eeb6a..b57203d 100644 --- a/quiche/spdy/core/hpack/hpack_entry.h +++ b/quiche/spdy/core/hpack/hpack_entry.h
@@ -23,7 +23,7 @@ constexpr size_t kHpackEntrySizeOverhead = 32; // A structure for looking up entries in the static and dynamic tables. -struct QUICHE_EXPORT_PRIVATE HpackLookupEntry { +struct QUICHE_EXPORT HpackLookupEntry { absl::string_view name; absl::string_view value; @@ -40,7 +40,7 @@ // A structure for an entry in the static table (3.3.1) // and the header table (3.3.2). -class QUICHE_EXPORT_PRIVATE HpackEntry { +class QUICHE_EXPORT HpackEntry { public: HpackEntry(std::string name, std::string value);
diff --git a/quiche/spdy/core/hpack/hpack_header_table.h b/quiche/spdy/core/hpack/hpack_header_table.h index 7886dde..a22b762 100644 --- a/quiche/spdy/core/hpack/hpack_header_table.h +++ b/quiche/spdy/core/hpack/hpack_header_table.h
@@ -33,7 +33,7 @@ constexpr size_t kHpackEntryNotFound = 0; // A data structure for the static table (2.3.1) and the dynamic table (2.3.2). -class QUICHE_EXPORT_PRIVATE HpackHeaderTable { +class QUICHE_EXPORT HpackHeaderTable { public: friend class test::HpackHeaderTablePeer;
diff --git a/quiche/spdy/core/hpack/hpack_output_stream.h b/quiche/spdy/core/hpack/hpack_output_stream.h index cd8ce46..0d3bf8c 100644 --- a/quiche/spdy/core/hpack/hpack_output_stream.h +++ b/quiche/spdy/core/hpack/hpack_output_stream.h
@@ -20,7 +20,7 @@ // An HpackOutputStream handles all the low-level details of encoding // header fields. -class QUICHE_EXPORT_PRIVATE HpackOutputStream { +class QUICHE_EXPORT HpackOutputStream { public: HpackOutputStream(); HpackOutputStream(const HpackOutputStream&) = delete;
diff --git a/quiche/spdy/core/hpack/hpack_static_table.h b/quiche/spdy/core/hpack/hpack_static_table.h index fda34d1..278c242 100644 --- a/quiche/spdy/core/hpack/hpack_static_table.h +++ b/quiche/spdy/core/hpack/hpack_static_table.h
@@ -19,7 +19,7 @@ // encoding and decoding contexts. Once initialized, an instance is read only // and may be accessed only through its const interface. Such an instance may // be shared accross multiple HPACK contexts. -class QUICHE_EXPORT_PRIVATE HpackStaticTable { +class QUICHE_EXPORT HpackStaticTable { public: HpackStaticTable(); ~HpackStaticTable();
diff --git a/quiche/spdy/core/http2_frame_decoder_adapter.h b/quiche/spdy/core/http2_frame_decoder_adapter.h index f185713..adfb14c 100644 --- a/quiche/spdy/core/http2_frame_decoder_adapter.h +++ b/quiche/spdy/core/http2_frame_decoder_adapter.h
@@ -33,7 +33,7 @@ namespace http2 { // Adapts SpdyFramer interface to use Http2FrameDecoder. -class QUICHE_EXPORT_PRIVATE Http2DecoderAdapter +class QUICHE_EXPORT Http2DecoderAdapter : public http2::Http2FrameDecoderListener { public: // HTTP2 states. @@ -363,7 +363,7 @@ // been delivered for the control frame. // During step 2, if the visitor is not interested in accepting the header data, // it should return a no-op implementation of SpdyHeadersHandlerInterface. -class QUICHE_EXPORT_PRIVATE SpdyFramerVisitorInterface { +class QUICHE_EXPORT SpdyFramerVisitorInterface { public: virtual ~SpdyFramerVisitorInterface() {} @@ -542,7 +542,7 @@ absl::string_view payload) = 0; }; -class QUICHE_EXPORT_PRIVATE ExtensionVisitorInterface { +class QUICHE_EXPORT ExtensionVisitorInterface { public: virtual ~ExtensionVisitorInterface() {}
diff --git a/quiche/spdy/core/http2_header_block.h b/quiche/spdy/core/http2_header_block.h index 867a566..e0da8f5 100644 --- a/quiche/spdy/core/http2_header_block.h +++ b/quiche/spdy/core/http2_header_block.h
@@ -46,11 +46,11 @@ // // This implementation does not make much of an effort to minimize wasted space. // It's expected that keys are rarely deleted from a Http2HeaderBlock. -class QUICHE_EXPORT_PRIVATE Http2HeaderBlock { +class QUICHE_EXPORT Http2HeaderBlock { private: // Stores a list of value fragments that can be joined later with a // key-dependent separator. - class QUICHE_EXPORT_PRIVATE HeaderValue { + class QUICHE_EXPORT HeaderValue { public: HeaderValue(Http2HeaderStorage* storage, absl::string_view key, absl::string_view initial_value); @@ -102,7 +102,7 @@ // absl::string_view>, even though the underlying MapType::value_type is // different. Dereferencing the iterator will result in memory allocation for // multi-value headers. - class QUICHE_EXPORT_PRIVATE iterator { + class QUICHE_EXPORT iterator { public: // The following type definitions fulfill the requirements for iterator // implementations. @@ -205,7 +205,7 @@ // be nearly a drop-in replacement for // SpdyLinkedHashMap<std::string, std::string>. // It reads data from or writes data to a Http2HeaderStorage. - class QUICHE_EXPORT_PRIVATE ValueProxy { + class QUICHE_EXPORT ValueProxy { public: ~ValueProxy();
diff --git a/quiche/spdy/core/http2_header_block_hpack_listener.h b/quiche/spdy/core/http2_header_block_hpack_listener.h index 598ec96..2733a85 100644 --- a/quiche/spdy/core/http2_header_block_hpack_listener.h +++ b/quiche/spdy/core/http2_header_block_hpack_listener.h
@@ -11,7 +11,7 @@ // This class simply gathers the key-value pairs emitted by an HpackDecoder in // a Http2HeaderBlock. -class QUICHE_EXPORT_PRIVATE Http2HeaderBlockHpackListener +class QUICHE_EXPORT Http2HeaderBlockHpackListener : public http2::HpackDecoderListener { public: Http2HeaderBlockHpackListener() {}
diff --git a/quiche/spdy/core/http2_header_storage.h b/quiche/spdy/core/http2_header_storage.h index fd49cc3..bc275b3 100644 --- a/quiche/spdy/core/http2_header_storage.h +++ b/quiche/spdy/core/http2_header_storage.h
@@ -16,7 +16,7 @@ // Write operations always append to the last block. If there is not enough // space to perform the write, a new block is allocated, and any unused space // is wasted. -class QUICHE_EXPORT_PRIVATE Http2HeaderStorage { +class QUICHE_EXPORT Http2HeaderStorage { public: Http2HeaderStorage(); @@ -49,9 +49,9 @@ // Writes |fragments| to |dst|, joined by |separator|. |dst| must be large // enough to hold the result. Returns the number of bytes written. -QUICHE_EXPORT_PRIVATE size_t -Join(char* dst, const std::vector<absl::string_view>& fragments, - absl::string_view separator); +QUICHE_EXPORT size_t Join(char* dst, + const std::vector<absl::string_view>& fragments, + absl::string_view separator); } // namespace spdy
diff --git a/quiche/spdy/core/metadata_extension.h b/quiche/spdy/core/metadata_extension.h index a749904..9ac2b91 100644 --- a/quiche/spdy/core/metadata_extension.h +++ b/quiche/spdy/core/metadata_extension.h
@@ -21,8 +21,7 @@ // a setting with a setting ID of kMetadataExtensionId and a value of 1. // // Metadata is represented as a HPACK header block with literal encoding. -class QUICHE_EXPORT_PRIVATE MetadataVisitor - : public spdy::ExtensionVisitorInterface { +class QUICHE_EXPORT MetadataVisitor : public spdy::ExtensionVisitorInterface { public: using MetadataPayload = spdy::Http2HeaderBlock; @@ -93,7 +92,7 @@ // This class uses an HpackEncoder to serialize a METADATA block as a series of // METADATA frames. -class QUICHE_EXPORT_PRIVATE MetadataFrameSequence { +class QUICHE_EXPORT MetadataFrameSequence { public: MetadataFrameSequence(SpdyStreamId stream_id, spdy::Http2HeaderBlock payload);
diff --git a/quiche/spdy/core/no_op_headers_handler.h b/quiche/spdy/core/no_op_headers_handler.h index 9db36d2..2e0c82f 100644 --- a/quiche/spdy/core/no_op_headers_handler.h +++ b/quiche/spdy/core/no_op_headers_handler.h
@@ -9,8 +9,7 @@ // Drops all header data, but passes information about header bytes parsed to // a listener. -class QUICHE_EXPORT_PRIVATE NoOpHeadersHandler - : public SpdyHeadersHandlerInterface { +class QUICHE_EXPORT NoOpHeadersHandler : public SpdyHeadersHandlerInterface { public: // Does not take ownership of listener. explicit NoOpHeadersHandler(HeaderByteListenerInterface* listener)
diff --git a/quiche/spdy/core/recording_headers_handler.h b/quiche/spdy/core/recording_headers_handler.h index a605944..54165eb 100644 --- a/quiche/spdy/core/recording_headers_handler.h +++ b/quiche/spdy/core/recording_headers_handler.h
@@ -18,7 +18,7 @@ // RecordingHeadersHandler copies the headers emitted from the deframer, and // when needed can forward events to another wrapped handler. -class QUICHE_EXPORT_PRIVATE RecordingHeadersHandler +class QUICHE_EXPORT RecordingHeadersHandler : public SpdyHeadersHandlerInterface { public: explicit RecordingHeadersHandler(
diff --git a/quiche/spdy/core/spdy_alt_svc_wire_format.h b/quiche/spdy/core/spdy_alt_svc_wire_format.h index 66e54c7..ec0c124 100644 --- a/quiche/spdy/core/spdy_alt_svc_wire_format.h +++ b/quiche/spdy/core/spdy_alt_svc_wire_format.h
@@ -24,11 +24,11 @@ class SpdyAltSvcWireFormatPeer; } // namespace test -class QUICHE_EXPORT_PRIVATE SpdyAltSvcWireFormat { +class QUICHE_EXPORT SpdyAltSvcWireFormat { public: using VersionVector = absl::InlinedVector<uint32_t, 8>; - struct QUICHE_EXPORT_PRIVATE AlternativeService { + struct QUICHE_EXPORT AlternativeService { std::string protocol_id; std::string host;
diff --git a/quiche/spdy/core/spdy_frame_builder.h b/quiche/spdy/core/spdy_frame_builder.h index 8fec09b..69cf352 100644 --- a/quiche/spdy/core/spdy_frame_builder.h +++ b/quiche/spdy/core/spdy_frame_builder.h
@@ -29,7 +29,7 @@ // to a frame instance. The SpdyFrameBuilder grows its internal memory buffer // dynamically to hold the sequence of primitive values. The internal memory // buffer is exposed as the "data" of the SpdyFrameBuilder. -class QUICHE_EXPORT_PRIVATE SpdyFrameBuilder { +class QUICHE_EXPORT SpdyFrameBuilder { public: // Initializes a SpdyFrameBuilder with a buffer of given size explicit SpdyFrameBuilder(size_t size);
diff --git a/quiche/spdy/core/spdy_frame_builder_test.cc b/quiche/spdy/core/spdy_frame_builder_test.cc index b981a58..293d7d8 100644 --- a/quiche/spdy/core/spdy_frame_builder_test.cc +++ b/quiche/spdy/core/spdy_frame_builder_test.cc
@@ -16,7 +16,7 @@ namespace test { -class QUICHE_EXPORT_PRIVATE SpdyFrameBuilderPeer { +class QUICHE_EXPORT SpdyFrameBuilderPeer { public: static char* GetWritableBuffer(SpdyFrameBuilder* builder, size_t length) { return builder->GetWritableBuffer(length);
diff --git a/quiche/spdy/core/spdy_framer.h b/quiche/spdy/core/spdy_framer.h index db8a64a..ea886ca 100644 --- a/quiche/spdy/core/spdy_framer.h +++ b/quiche/spdy/core/spdy_framer.h
@@ -32,7 +32,7 @@ } // namespace test -class QUICHE_EXPORT_PRIVATE SpdyFrameSequence { +class QUICHE_EXPORT SpdyFrameSequence { public: virtual ~SpdyFrameSequence() {} @@ -47,7 +47,7 @@ virtual const SpdyFrameIR& GetIR() const = 0; }; -class QUICHE_EXPORT_PRIVATE SpdyFramer { +class QUICHE_EXPORT SpdyFramer { public: enum CompressionOption { ENABLE_COMPRESSION, @@ -252,7 +252,7 @@ // // Write failed; // } // } - class QUICHE_EXPORT_PRIVATE SpdyFrameIterator : public SpdyFrameSequence { + class QUICHE_EXPORT SpdyFrameIterator : public SpdyFrameSequence { public: // Creates an iterator with the provided framer. // Does not take ownership of |framer|. @@ -295,8 +295,7 @@ // Iteratively converts a SpdyHeadersIR (with a possibly huge // Http2HeaderBlock) into an appropriate sequence of SpdySerializedFrames, and // write to the output. - class QUICHE_EXPORT_PRIVATE SpdyHeaderFrameIterator - : public SpdyFrameIterator { + class QUICHE_EXPORT SpdyHeaderFrameIterator : public SpdyFrameIterator { public: // Does not take ownership of |framer|. Take ownership of |headers_ir|. SpdyHeaderFrameIterator(SpdyFramer* framer, @@ -316,8 +315,7 @@ // Iteratively converts a SpdyPushPromiseIR (with a possibly huge // Http2HeaderBlock) into an appropriate sequence of SpdySerializedFrames, and // write to the output. - class QUICHE_EXPORT_PRIVATE SpdyPushPromiseFrameIterator - : public SpdyFrameIterator { + class QUICHE_EXPORT SpdyPushPromiseFrameIterator : public SpdyFrameIterator { public: // Does not take ownership of |framer|. Take ownership of |push_promise_ir|. SpdyPushPromiseFrameIterator( @@ -337,8 +335,7 @@ // Converts a SpdyFrameIR into one Spdy frame (a sequence of length 1), and // write it to the output. - class QUICHE_EXPORT_PRIVATE SpdyControlFrameIterator - : public SpdyFrameSequence { + class QUICHE_EXPORT SpdyControlFrameIterator : public SpdyFrameSequence { public: SpdyControlFrameIterator(SpdyFramer* framer, std::unique_ptr<const SpdyFrameIR> frame_ir);
diff --git a/quiche/spdy/core/spdy_headers_handler_interface.h b/quiche/spdy/core/spdy_headers_handler_interface.h index 00f95da..6298741 100644 --- a/quiche/spdy/core/spdy_headers_handler_interface.h +++ b/quiche/spdy/core/spdy_headers_handler_interface.h
@@ -14,7 +14,7 @@ // This interface defines how an object that accepts header data should behave. // It is used by both SpdyHeadersBlockParser and HpackDecoder. -class QUICHE_EXPORT_PRIVATE SpdyHeadersHandlerInterface { +class QUICHE_EXPORT SpdyHeadersHandlerInterface { public: virtual ~SpdyHeadersHandlerInterface() {}
diff --git a/quiche/spdy/core/spdy_intrusive_list.h b/quiche/spdy/core/spdy_intrusive_list.h index bbced57..bdf1614 100644 --- a/quiche/spdy/core/spdy_intrusive_list.h +++ b/quiche/spdy/core/spdy_intrusive_list.h
@@ -97,7 +97,7 @@ class SpdyIntrusiveList; template <typename T, typename ListID = void> -class QUICHE_EXPORT_PRIVATE SpdyIntrusiveLink { +class QUICHE_EXPORT SpdyIntrusiveLink { protected: // We declare the constructor protected so that only derived types and the // befriended list can construct this. @@ -122,7 +122,7 @@ }; template <typename T, typename ListID = void> -class QUICHE_EXPORT_PRIVATE SpdyIntrusiveList { +class QUICHE_EXPORT SpdyIntrusiveList { template <typename QualifiedT, typename QualifiedLinkT> class iterator_impl; @@ -268,7 +268,7 @@ // variant of T and the matching qualified link type. Essentially, QualifiedT // will either be 'T' or 'const T', the latter for a const_iterator. template <typename QualifiedT, typename QualifiedLinkT> - class QUICHE_EXPORT_PRIVATE iterator_impl { + class QUICHE_EXPORT iterator_impl { public: using iterator_category = std::bidirectional_iterator_tag; using value_type = QualifiedT;
diff --git a/quiche/spdy/core/spdy_no_op_visitor.h b/quiche/spdy/core/spdy_no_op_visitor.h index e8fd79d..b20c9c3 100644 --- a/quiche/spdy/core/spdy_no_op_visitor.h +++ b/quiche/spdy/core/spdy_no_op_visitor.h
@@ -18,10 +18,9 @@ namespace spdy { -class QUICHE_EXPORT_PRIVATE SpdyNoOpVisitor - : public SpdyFramerVisitorInterface, - public SpdyFramerDebugVisitorInterface, - public SpdyHeadersHandlerInterface { +class QUICHE_EXPORT SpdyNoOpVisitor : public SpdyFramerVisitorInterface, + public SpdyFramerDebugVisitorInterface, + public SpdyHeadersHandlerInterface { public: SpdyNoOpVisitor(); ~SpdyNoOpVisitor() override;
diff --git a/quiche/spdy/core/spdy_pinnable_buffer_piece.h b/quiche/spdy/core/spdy_pinnable_buffer_piece.h index 1b1bd32..d73a400 100644 --- a/quiche/spdy/core/spdy_pinnable_buffer_piece.h +++ b/quiche/spdy/core/spdy_pinnable_buffer_piece.h
@@ -20,7 +20,7 @@ // Represents a piece of consumed buffer which may (or may not) own its // underlying storage. Users may "pin" the buffer at a later time to ensure // a SpdyPinnableBufferPiece owns and retains storage of the buffer. -struct QUICHE_EXPORT_PRIVATE SpdyPinnableBufferPiece { +struct QUICHE_EXPORT SpdyPinnableBufferPiece { public: SpdyPinnableBufferPiece(); ~SpdyPinnableBufferPiece();
diff --git a/quiche/spdy/core/spdy_prefixed_buffer_reader.h b/quiche/spdy/core/spdy_prefixed_buffer_reader.h index d0d3956..c102ee6 100644 --- a/quiche/spdy/core/spdy_prefixed_buffer_reader.h +++ b/quiche/spdy/core/spdy_prefixed_buffer_reader.h
@@ -14,7 +14,7 @@ // Reader class which simplifies reading contiguously from // from a disjoint buffer prefix & suffix. -class QUICHE_EXPORT_PRIVATE SpdyPrefixedBufferReader { +class QUICHE_EXPORT SpdyPrefixedBufferReader { public: SpdyPrefixedBufferReader(const char* prefix, size_t prefix_length, const char* suffix, size_t suffix_length);
diff --git a/quiche/spdy/core/spdy_protocol.h b/quiche/spdy/core/spdy_protocol.h index 1166125..d475cb0 100644 --- a/quiche/spdy/core/spdy_protocol.h +++ b/quiche/spdy/core/spdy_protocol.h
@@ -81,7 +81,7 @@ // defined as a string literal with a null terminator, the actual connection // preface is only the first |kHttp2ConnectionHeaderPrefixSize| bytes, which // excludes the null terminator. -QUICHE_EXPORT_PRIVATE extern const char* const kHttp2ConnectionHeaderPrefix; +QUICHE_EXPORT extern const char* const kHttp2ConnectionHeaderPrefix; const int kHttp2ConnectionHeaderPrefixSize = 24; // Wire values for HTTP2 frame types. @@ -163,13 +163,13 @@ // This explicit operator is needed, otherwise compiler finds // overloaded operator to be ambiguous. -QUICHE_EXPORT_PRIVATE std::ostream& operator<<(std::ostream& out, - SpdyKnownSettingsId id); +QUICHE_EXPORT std::ostream& operator<<(std::ostream& out, + SpdyKnownSettingsId id); // This operator is needed, because SpdyFrameType is an enum class, // therefore implicit conversion to underlying integer type is not allowed. -QUICHE_EXPORT_PRIVATE std::ostream& operator<<(std::ostream& out, - SpdyFrameType frame_type); +QUICHE_EXPORT std::ostream& operator<<(std::ostream& out, + SpdyFrameType frame_type); using SettingsMap = std::map<SpdySettingsId, uint32_t>; @@ -211,7 +211,7 @@ const SpdyPriority kV3LowestPriority = 7; // Returns SPDY 3.x priority value clamped to the valid range of [0, 7]. -QUICHE_EXPORT_PRIVATE SpdyPriority ClampSpdy3Priority(SpdyPriority priority); +QUICHE_EXPORT SpdyPriority ClampSpdy3Priority(SpdyPriority priority); // HTTP/2 stream weights are integers in range [1, 256], as specified in RFC // 7540 section 5.3.2. Default stream weight is defined in section 5.3.5. @@ -220,19 +220,19 @@ const int kHttp2DefaultStreamWeight = 16; // Returns HTTP/2 weight clamped to the valid range of [1, 256]. -QUICHE_EXPORT_PRIVATE int ClampHttp2Weight(int weight); +QUICHE_EXPORT int ClampHttp2Weight(int weight); // Maps SPDY 3.x priority value in range [0, 7] to HTTP/2 weight value in range // [1, 256], where priority 0 (i.e. highest precedence) corresponds to maximum // weight 256 and priority 7 (lowest precedence) corresponds to minimum weight // 1. -QUICHE_EXPORT_PRIVATE int Spdy3PriorityToHttp2Weight(SpdyPriority priority); +QUICHE_EXPORT int Spdy3PriorityToHttp2Weight(SpdyPriority priority); // Maps HTTP/2 weight value in range [1, 256] to SPDY 3.x priority value in // range [0, 7], where minimum weight 1 corresponds to priority 7 (lowest // precedence) and maximum weight 256 corresponds to priority 0 (highest // precedence). -QUICHE_EXPORT_PRIVATE SpdyPriority Http2WeightToSpdy3Priority(int weight); +QUICHE_EXPORT SpdyPriority Http2WeightToSpdy3Priority(int weight); // Reserved ID for root stream of HTTP/2 stream dependency tree, as specified // in RFC 7540 section 5.3.1. @@ -242,47 +242,46 @@ // Returns true if a given on-the-wire enumeration of a frame type is defined // in a standardized HTTP/2 specification, false otherwise. -QUICHE_EXPORT_PRIVATE bool IsDefinedFrameType(uint8_t frame_type_field); +QUICHE_EXPORT bool IsDefinedFrameType(uint8_t frame_type_field); // Parses a frame type from an on-the-wire enumeration. // Behavior is undefined for invalid frame type fields; consumers should first // use IsValidFrameType() to verify validity of frame type fields. -QUICHE_EXPORT_PRIVATE SpdyFrameType ParseFrameType(uint8_t frame_type_field); +QUICHE_EXPORT SpdyFrameType ParseFrameType(uint8_t frame_type_field); // Serializes a frame type to the on-the-wire value. -QUICHE_EXPORT_PRIVATE uint8_t SerializeFrameType(SpdyFrameType frame_type); +QUICHE_EXPORT uint8_t SerializeFrameType(SpdyFrameType frame_type); // (HTTP/2) All standard frame types except WINDOW_UPDATE are // (stream-specific xor connection-level). Returns false iff we know // the given frame type does not align with the given streamID. -QUICHE_EXPORT_PRIVATE bool IsValidHTTP2FrameStreamId( +QUICHE_EXPORT bool IsValidHTTP2FrameStreamId( SpdyStreamId current_frame_stream_id, SpdyFrameType frame_type_field); // Serialize |frame_type| to string for logging/debugging. -QUICHE_EXPORT_PRIVATE const char* FrameTypeToString(SpdyFrameType frame_type); +QUICHE_EXPORT const char* FrameTypeToString(SpdyFrameType frame_type); // If |wire_setting_id| is the on-the-wire representation of a defined SETTINGS // parameter, parse it to |*setting_id| and return true. -QUICHE_EXPORT_PRIVATE bool ParseSettingsId(SpdySettingsId wire_setting_id, - SpdyKnownSettingsId* setting_id); +QUICHE_EXPORT bool ParseSettingsId(SpdySettingsId wire_setting_id, + SpdyKnownSettingsId* setting_id); // Returns a string representation of the |id| for logging/debugging. Returns // the |id| prefixed with "SETTINGS_UNKNOWN_" for unknown SETTINGS IDs. To parse // the |id| into a SpdyKnownSettingsId (if applicable), use ParseSettingsId(). -QUICHE_EXPORT_PRIVATE std::string SettingsIdToString(SpdySettingsId id); +QUICHE_EXPORT std::string SettingsIdToString(SpdySettingsId id); // Parse |wire_error_code| to a SpdyErrorCode. // Treat unrecognized error codes as INTERNAL_ERROR // as recommended by the HTTP/2 specification. -QUICHE_EXPORT_PRIVATE SpdyErrorCode ParseErrorCode(uint32_t wire_error_code); +QUICHE_EXPORT SpdyErrorCode ParseErrorCode(uint32_t wire_error_code); // Serialize RST_STREAM or GOAWAY frame error code to string // for logging/debugging. -QUICHE_EXPORT_PRIVATE const char* ErrorCodeToString(SpdyErrorCode error_code); +QUICHE_EXPORT const char* ErrorCodeToString(SpdyErrorCode error_code); // Serialize |type| to string for logging/debugging. -QUICHE_EXPORT_PRIVATE const char* WriteSchedulerTypeToString( - WriteSchedulerType type); +QUICHE_EXPORT const char* WriteSchedulerTypeToString(WriteSchedulerType type); // Minimum size of a frame, in octets. const size_t kFrameMinimumSize = kFrameHeaderSize; @@ -327,30 +326,30 @@ // Initial window size for a session in bytes. const int32_t kInitialSessionWindowSize = 64 * 1024 - 1; // The NPN string for HTTP2, "h2". -QUICHE_EXPORT_PRIVATE extern const char* const kHttp2Npn; +QUICHE_EXPORT extern const char* const kHttp2Npn; // An estimate size of the HPACK overhead for each header field. 1 bytes for // indexed literal, 1 bytes for key literal and length encoding, and 2 bytes for // value literal and length encoding. const size_t kPerHeaderHpackOverhead = 4; // Names of pseudo-headers defined for HTTP/2 requests. -QUICHE_EXPORT_PRIVATE extern const char* const kHttp2AuthorityHeader; -QUICHE_EXPORT_PRIVATE extern const char* const kHttp2MethodHeader; -QUICHE_EXPORT_PRIVATE extern const char* const kHttp2PathHeader; -QUICHE_EXPORT_PRIVATE extern const char* const kHttp2SchemeHeader; -QUICHE_EXPORT_PRIVATE extern const char* const kHttp2ProtocolHeader; +QUICHE_EXPORT extern const char* const kHttp2AuthorityHeader; +QUICHE_EXPORT extern const char* const kHttp2MethodHeader; +QUICHE_EXPORT extern const char* const kHttp2PathHeader; +QUICHE_EXPORT extern const char* const kHttp2SchemeHeader; +QUICHE_EXPORT extern const char* const kHttp2ProtocolHeader; // Name of pseudo-header defined for HTTP/2 responses. -QUICHE_EXPORT_PRIVATE extern const char* const kHttp2StatusHeader; +QUICHE_EXPORT extern const char* const kHttp2StatusHeader; -QUICHE_EXPORT_PRIVATE size_t GetNumberRequiredContinuationFrames(size_t size); +QUICHE_EXPORT size_t GetNumberRequiredContinuationFrames(size_t size); // Variant type (i.e. tagged union) that is either a SPDY 3.x priority value, // or else an HTTP/2 stream dependency tuple {parent stream ID, weight, // exclusive bit}. Templated to allow for use by QUIC code; SPDY and HTTP/2 // code should use the concrete type instantiation SpdyStreamPrecedence. template <typename StreamIdType> -class QUICHE_EXPORT_PRIVATE StreamPrecedence { +class QUICHE_EXPORT StreamPrecedence { public: // Constructs instance that is a SPDY 3.x priority. Clamps priority value to // the valid range [0, 7]. @@ -426,7 +425,7 @@ } private: - struct QUICHE_EXPORT_PRIVATE Http2StreamDependency { + struct QUICHE_EXPORT Http2StreamDependency { StreamIdType parent_id; int weight; bool is_exclusive; @@ -444,7 +443,7 @@ class SpdyFrameVisitor; // Intermediate representation for HTTP2 frames. -class QUICHE_EXPORT_PRIVATE SpdyFrameIR { +class QUICHE_EXPORT SpdyFrameIR { public: virtual ~SpdyFrameIR() {} @@ -472,7 +471,7 @@ // Abstract class intended to be inherited by IRs that have the option of a FIN // flag. -class QUICHE_EXPORT_PRIVATE SpdyFrameWithFinIR : public SpdyFrameIR { +class QUICHE_EXPORT SpdyFrameWithFinIR : public SpdyFrameIR { public: ~SpdyFrameWithFinIR() override {} bool fin() const override; @@ -490,8 +489,7 @@ // Abstract class intended to be inherited by IRs that contain a header // block. Implies SpdyFrameWithFinIR. -class QUICHE_EXPORT_PRIVATE SpdyFrameWithHeaderBlockIR - : public SpdyFrameWithFinIR { +class QUICHE_EXPORT SpdyFrameWithHeaderBlockIR : public SpdyFrameWithFinIR { public: ~SpdyFrameWithHeaderBlockIR() override; @@ -515,7 +513,7 @@ Http2HeaderBlock header_block_; }; -class QUICHE_EXPORT_PRIVATE SpdyDataIR : public SpdyFrameWithFinIR { +class QUICHE_EXPORT SpdyDataIR : public SpdyFrameWithFinIR { public: // Performs a deep copy on data. SpdyDataIR(SpdyStreamId stream_id, absl::string_view data); @@ -589,7 +587,7 @@ int padding_payload_len_; }; -class QUICHE_EXPORT_PRIVATE SpdyRstStreamIR : public SpdyFrameIR { +class QUICHE_EXPORT SpdyRstStreamIR : public SpdyFrameIR { public: SpdyRstStreamIR(SpdyStreamId stream_id, SpdyErrorCode error_code); SpdyRstStreamIR(const SpdyRstStreamIR&) = delete; @@ -610,7 +608,7 @@ SpdyErrorCode error_code_; }; -class QUICHE_EXPORT_PRIVATE SpdySettingsIR : public SpdyFrameIR { +class QUICHE_EXPORT SpdySettingsIR : public SpdyFrameIR { public: SpdySettingsIR(); SpdySettingsIR(const SpdySettingsIR&) = delete; @@ -635,7 +633,7 @@ bool is_ack_; }; -class QUICHE_EXPORT_PRIVATE SpdyPingIR : public SpdyFrameIR { +class QUICHE_EXPORT SpdyPingIR : public SpdyFrameIR { public: explicit SpdyPingIR(SpdyPingId id) : id_(id), is_ack_(false) {} SpdyPingIR(const SpdyPingIR&) = delete; @@ -656,7 +654,7 @@ bool is_ack_; }; -class QUICHE_EXPORT_PRIVATE SpdyGoAwayIR : public SpdyFrameIR { +class QUICHE_EXPORT SpdyGoAwayIR : public SpdyFrameIR { public: // References description, doesn't copy it, so description must outlast // this SpdyGoAwayIR. @@ -703,7 +701,7 @@ const absl::string_view description_; }; -class QUICHE_EXPORT_PRIVATE SpdyHeadersIR : public SpdyFrameWithHeaderBlockIR { +class QUICHE_EXPORT SpdyHeadersIR : public SpdyFrameWithHeaderBlockIR { public: explicit SpdyHeadersIR(SpdyStreamId stream_id) : SpdyHeadersIR(stream_id, Http2HeaderBlock()) {} @@ -745,7 +743,7 @@ int padding_payload_len_ = 0; }; -class QUICHE_EXPORT_PRIVATE SpdyWindowUpdateIR : public SpdyFrameIR { +class QUICHE_EXPORT SpdyWindowUpdateIR : public SpdyFrameIR { public: SpdyWindowUpdateIR(SpdyStreamId stream_id, int32_t delta) : SpdyFrameIR(stream_id) { @@ -771,8 +769,7 @@ int32_t delta_; }; -class QUICHE_EXPORT_PRIVATE SpdyPushPromiseIR - : public SpdyFrameWithHeaderBlockIR { +class QUICHE_EXPORT SpdyPushPromiseIR : public SpdyFrameWithHeaderBlockIR { public: SpdyPushPromiseIR(SpdyStreamId stream_id, SpdyStreamId promised_stream_id) : SpdyPushPromiseIR(stream_id, promised_stream_id, Http2HeaderBlock()) {} @@ -809,7 +806,7 @@ int padding_payload_len_; }; -class QUICHE_EXPORT_PRIVATE SpdyContinuationIR : public SpdyFrameIR { +class QUICHE_EXPORT SpdyContinuationIR : public SpdyFrameIR { public: explicit SpdyContinuationIR(SpdyStreamId stream_id); SpdyContinuationIR(const SpdyContinuationIR&) = delete; @@ -831,7 +828,7 @@ bool end_headers_; }; -class QUICHE_EXPORT_PRIVATE SpdyAltSvcIR : public SpdyFrameIR { +class QUICHE_EXPORT SpdyAltSvcIR : public SpdyFrameIR { public: explicit SpdyAltSvcIR(SpdyStreamId stream_id); SpdyAltSvcIR(const SpdyAltSvcIR&) = delete; @@ -859,7 +856,7 @@ SpdyAltSvcWireFormat::AlternativeServiceVector altsvc_vector_; }; -class QUICHE_EXPORT_PRIVATE SpdyPriorityIR : public SpdyFrameIR { +class QUICHE_EXPORT SpdyPriorityIR : public SpdyFrameIR { public: SpdyPriorityIR(SpdyStreamId stream_id, SpdyStreamId parent_stream_id, int weight, bool exclusive) @@ -885,7 +882,7 @@ bool exclusive_; }; -class QUICHE_EXPORT_PRIVATE SpdyPriorityUpdateIR : public SpdyFrameIR { +class QUICHE_EXPORT SpdyPriorityUpdateIR : public SpdyFrameIR { public: SpdyPriorityUpdateIR(SpdyStreamId stream_id, SpdyStreamId prioritized_stream_id, @@ -911,7 +908,7 @@ std::string priority_field_value_; }; -struct QUICHE_EXPORT_PRIVATE AcceptChOriginValuePair { +struct QUICHE_EXPORT AcceptChOriginValuePair { std::string origin; std::string value; bool operator==(const AcceptChOriginValuePair& rhs) const { @@ -919,7 +916,7 @@ } }; -class QUICHE_EXPORT_PRIVATE SpdyAcceptChIR : public SpdyFrameIR { +class QUICHE_EXPORT SpdyAcceptChIR : public SpdyFrameIR { public: SpdyAcceptChIR(std::vector<AcceptChOriginValuePair> entries) : entries_(std::move(entries)) {} @@ -941,7 +938,7 @@ }; // Represents a frame of unrecognized type. -class QUICHE_EXPORT_PRIVATE SpdyUnknownIR : public SpdyFrameIR { +class QUICHE_EXPORT SpdyUnknownIR : public SpdyFrameIR { public: SpdyUnknownIR(SpdyStreamId stream_id, uint8_t type, uint8_t flags, std::string payload) @@ -976,7 +973,7 @@ const std::string payload_; }; -class QUICHE_EXPORT_PRIVATE SpdySerializedFrame { +class QUICHE_EXPORT SpdySerializedFrame { public: SpdySerializedFrame() : frame_(const_cast<char*>("")), size_(0), owns_buffer_(false) {} @@ -1062,7 +1059,7 @@ // having to know what type they are. An instance of this interface can be // passed to a SpdyFrameIR's Visit method, and the appropriate type-specific // method of this class will be called. -class QUICHE_EXPORT_PRIVATE SpdyFrameVisitor { +class QUICHE_EXPORT SpdyFrameVisitor { public: SpdyFrameVisitor() {} SpdyFrameVisitor(const SpdyFrameVisitor&) = delete; @@ -1094,7 +1091,7 @@ // operates. // // Most HTTP2 implementations need not bother with this interface at all. -class QUICHE_EXPORT_PRIVATE SpdyFramerDebugVisitorInterface { +class QUICHE_EXPORT SpdyFramerDebugVisitorInterface { public: virtual ~SpdyFramerDebugVisitorInterface() {}
diff --git a/quiche/spdy/core/spdy_simple_arena.h b/quiche/spdy/core/spdy_simple_arena.h index a423a79..dae6879 100644 --- a/quiche/spdy/core/spdy_simple_arena.h +++ b/quiche/spdy/core/spdy_simple_arena.h
@@ -14,9 +14,9 @@ // Allocates large blocks of memory, and doles them out in smaller chunks. // Not thread-safe. -class QUICHE_EXPORT_PRIVATE SpdySimpleArena { +class QUICHE_EXPORT SpdySimpleArena { public: - class QUICHE_EXPORT_PRIVATE Status { + class QUICHE_EXPORT Status { private: friend class SpdySimpleArena; size_t bytes_allocated_; @@ -52,7 +52,7 @@ Status status() const { return status_; } private: - struct QUICHE_EXPORT_PRIVATE Block { + struct QUICHE_EXPORT Block { std::unique_ptr<char[]> data; size_t size = 0; size_t used = 0;
diff --git a/quiche/spdy/core/zero_copy_output_buffer.h b/quiche/spdy/core/zero_copy_output_buffer.h index 2536979..2ab92ed 100644 --- a/quiche/spdy/core/zero_copy_output_buffer.h +++ b/quiche/spdy/core/zero_copy_output_buffer.h
@@ -11,7 +11,7 @@ namespace spdy { -class QUICHE_EXPORT_PRIVATE ZeroCopyOutputBuffer { +class QUICHE_EXPORT ZeroCopyOutputBuffer { public: virtual ~ZeroCopyOutputBuffer() {}