settings_writer.h
Go to the documentation of this file.
1 /* Copyright (c) 2018, Google Inc.
2  *
3  * Permission to use, copy, modify, and/or distribute this software for any
4  * purpose with or without fee is hereby granted, provided that the above
5  * copyright notice and this permission notice appear in all copies.
6  *
7  * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
8  * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
9  * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY
10  * SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
11  * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION
12  * OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN
13  * CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. */
14 
15 #ifndef HEADER_SETTINGS_WRITER
16 #define HEADER_SETTINGS_WRITER
17 
18 #include <string>
19 
20 #include <openssl/bytestring.h>
21 #include <openssl/ssl.h>
22 
23 #include "test_config.h"
24 
26  public:
28 
29  // Init initializes the writer for a new connection, given by |i|. Each
30  // connection gets a unique output file.
31  bool Init(int i, const TestConfig *config, SSL_SESSION *session);
32 
33  // Commit writes the buffered data to disk.
34  bool Commit();
35 
36  bool WriteHandoff(bssl::Span<const uint8_t> handoff);
37  bool WriteHandback(bssl::Span<const uint8_t> handback);
38  bool WriteHints(bssl::Span<const uint8_t> hints);
39 
40  private:
41  bool WriteData(uint16_t tag, bssl::Span<const uint8_t> data);
42 
44  bssl::ScopedCBB cbb_;
45 };
46 
47 #endif // HEADER_SETTINGS_WRITER
SettingsWriter::WriteData
bool WriteData(uint16_t tag, bssl::Span< const uint8_t > data)
Definition: settings_writer.cc:99
uint16_t
unsigned short uint16_t
Definition: stdint-msvc2008.h:79
SettingsWriter::SettingsWriter
SettingsWriter()
Definition: settings_writer.cc:25
testing::internal::string
::std::string string
Definition: bloaty/third_party/protobuf/third_party/googletest/googletest/include/gtest/internal/gtest-port.h:881
TestConfig
Definition: third_party/boringssl-with-bazel/src/ssl/test/test_config.h:27
test_config.h
SettingsWriter::Commit
bool Commit()
Definition: settings_writer.cc:65
bytestring.h
tag
static void * tag(intptr_t t)
Definition: bad_client.cc:318
data
char data[kBufferLength]
Definition: abseil-cpp/absl/strings/internal/str_format/float_conversion.cc:1006
SettingsWriter::path_
std::string path_
Definition: settings_writer.h:43
ssl.h
SettingsWriter::WriteHints
bool WriteHints(bssl::Span< const uint8_t > hints)
Definition: settings_writer.cc:95
ssl_session_st
Definition: third_party/boringssl-with-bazel/src/ssl/internal.h:3787
SettingsWriter::Init
bool Init(int i, const TestConfig *config, SSL_SESSION *session)
Definition: settings_writer.cc:27
SettingsWriter::cbb_
bssl::ScopedCBB cbb_
Definition: settings_writer.h:44
config_s
Definition: bloaty/third_party/zlib/deflate.c:120
SettingsWriter::WriteHandoff
bool WriteHandoff(bssl::Span< const uint8_t > handoff)
Definition: settings_writer.cc:87
SettingsWriter::WriteHandback
bool WriteHandback(bssl::Span< const uint8_t > handback)
Definition: settings_writer.cc:91
i
uint64_t i
Definition: abseil-cpp/absl/container/btree_benchmark.cc:230
SettingsWriter
Definition: settings_writer.h:25


grpc
Author(s):
autogenerated on Thu Mar 13 2025 03:01:18