diff options
author | Tim Schumacher <timschumi@gmx.de> | 2022-12-11 18:27:30 +0100 |
---|---|---|
committer | Andreas Kling <kling@serenityos.org> | 2022-12-12 14:16:42 +0100 |
commit | 6c7c5a6786f5f168b9e228f9d4b41ed1e64bc8f3 (patch) | |
tree | 327b04fb4820758e4d8cc60d30bd849d7b3511eb | |
parent | ed4c2f2f8ea59295edceca77bf308df5de6872d6 (diff) | |
download | serenity-6c7c5a6786f5f168b9e228f9d4b41ed1e64bc8f3.zip |
LibCore: Rename `Stream::*_or_error` to `*_entire_buffer`
All of our functions are `_or_error` (or are about to be), and maybe
making it less reminiscient of AK::Stream will make people use it more.
-rw-r--r-- | Meta/Lagom/Tools/CodeGenerators/LibWeb/GeneratorUtil.h | 2 | ||||
-rw-r--r-- | Tests/LibCore/TestLibCoreStream.cpp | 14 | ||||
-rw-r--r-- | Tests/LibCpp/test-cpp-parser.cpp | 2 | ||||
-rw-r--r-- | Tests/LibCpp/test-cpp-preprocessor.cpp | 2 | ||||
-rw-r--r-- | Tests/LibJS/test-test262.cpp | 4 | ||||
-rw-r--r-- | Tests/LibMarkdown/TestCommonmark.cpp | 2 | ||||
-rw-r--r-- | Tests/LibTLS/TestTLSHandshake.cpp | 6 | ||||
-rw-r--r-- | Userland/Applications/Browser/BrowserWindow.cpp | 2 | ||||
-rw-r--r-- | Userland/DevTools/SQLStudio/ScriptEditor.cpp | 4 | ||||
-rw-r--r-- | Userland/Libraries/LibCore/InputBitStream.h | 4 | ||||
-rw-r--r-- | Userland/Libraries/LibCore/MemoryStream.h | 2 | ||||
-rw-r--r-- | Userland/Libraries/LibCore/Stream.cpp | 4 | ||||
-rw-r--r-- | Userland/Libraries/LibCore/Stream.h | 16 | ||||
-rw-r--r-- | Userland/Libraries/LibGemini/Job.cpp | 2 | ||||
-rw-r--r-- | Userland/Libraries/LibHTTP/Job.cpp | 2 | ||||
-rw-r--r-- | Userland/Libraries/LibTLS/HandshakeClient.cpp | 10 | ||||
-rw-r--r-- | Userland/Libraries/LibWebSocket/Impl/WebSocketImplSerenity.cpp | 2 |
17 files changed, 44 insertions, 36 deletions
diff --git a/Meta/Lagom/Tools/CodeGenerators/LibWeb/GeneratorUtil.h b/Meta/Lagom/Tools/CodeGenerators/LibWeb/GeneratorUtil.h index 517543a135..d281ae77b8 100644 --- a/Meta/Lagom/Tools/CodeGenerators/LibWeb/GeneratorUtil.h +++ b/Meta/Lagom/Tools/CodeGenerators/LibWeb/GeneratorUtil.h @@ -59,7 +59,7 @@ ErrorOr<JsonValue> read_entire_file_as_json(StringView filename) auto file = TRY(Core::Stream::File::open(filename, Core::Stream::OpenMode::Read)); auto json_size = TRY(file->size()); auto json_data = TRY(ByteBuffer::create_uninitialized(json_size)); - if (!file->read_or_error(json_data.bytes())) + if (!file->read_entire_buffer(json_data.bytes())) return Error::from_string_literal("Failed to read json file."); return JsonValue::from_string(json_data); } diff --git a/Tests/LibCore/TestLibCoreStream.cpp b/Tests/LibCore/TestLibCoreStream.cpp index 0de1c01924..a56bc32044 100644 --- a/Tests/LibCore/TestLibCoreStream.cpp +++ b/Tests/LibCore/TestLibCoreStream.cpp @@ -87,17 +87,17 @@ TEST_CASE(file_seeking_around) EXPECT(!file->seek(500, Core::Stream::SeekMode::SetPosition).is_error()); EXPECT_EQ(file->tell().release_value(), 500); - EXPECT(file->read_or_error(buffer)); + EXPECT(file->read_entire_buffer(buffer)); EXPECT_EQ(buffer_contents, expected_seek_contents1); EXPECT(!file->seek(234, Core::Stream::SeekMode::FromCurrentPosition).is_error()); EXPECT_EQ(file->tell().release_value(), 750); - EXPECT(file->read_or_error(buffer)); + EXPECT(file->read_entire_buffer(buffer)); EXPECT_EQ(buffer_contents, expected_seek_contents2); EXPECT(!file->seek(-105, Core::Stream::SeekMode::FromEndPosition).is_error()); EXPECT_EQ(file->tell().release_value(), 8597); - EXPECT(file->read_or_error(buffer)); + EXPECT(file->read_entire_buffer(buffer)); EXPECT_EQ(buffer_contents, expected_seek_contents3); } @@ -120,7 +120,7 @@ TEST_CASE(file_adopt_fd) EXPECT(!file->seek(500, Core::Stream::SeekMode::SetPosition).is_error()); EXPECT_EQ(file->tell().release_value(), 500); - EXPECT(file->read_or_error(buffer)); + EXPECT(file->read_entire_buffer(buffer)); EXPECT_EQ(buffer_contents, expected_seek_contents1); // A single seek & read test should be fine for now. @@ -218,7 +218,7 @@ TEST_CASE(tcp_socket_write) auto server_socket = maybe_server_socket.release_value(); EXPECT(!server_socket->set_blocking(true).is_error()); - EXPECT(client_socket->write_or_error({ sent_data.characters_without_null_termination(), sent_data.length() })); + EXPECT(client_socket->write_entire_buffer({ sent_data.characters_without_null_termination(), sent_data.length() })); client_socket->close(); auto maybe_receive_buffer = ByteBuffer::create_uninitialized(64); @@ -282,7 +282,7 @@ TEST_CASE(udp_socket_read_write) auto client_socket = maybe_client_socket.release_value(); EXPECT(client_socket->is_open()); - EXPECT(client_socket->write_or_error({ sent_data.characters_without_null_termination(), sent_data.length() })); + EXPECT(client_socket->write_entire_buffer({ sent_data.characters_without_null_termination(), sent_data.length() })); // FIXME: UDPServer::receive sadly doesn't give us a way to block on it, // currently. @@ -400,7 +400,7 @@ TEST_CASE(local_socket_write) EXPECT(!maybe_client_socket.is_error()); auto client_socket = maybe_client_socket.release_value(); - EXPECT(client_socket->write_or_error({ sent_data.characters_without_null_termination(), sent_data.length() })); + EXPECT(client_socket->write_entire_buffer({ sent_data.characters_without_null_termination(), sent_data.length() })); client_socket->close(); return 0; diff --git a/Tests/LibCpp/test-cpp-parser.cpp b/Tests/LibCpp/test-cpp-parser.cpp index 52e105b9f0..da019721ec 100644 --- a/Tests/LibCpp/test-cpp-parser.cpp +++ b/Tests/LibCpp/test-cpp-parser.cpp @@ -18,7 +18,7 @@ static DeprecatedString read_all(DeprecatedString const& path) auto file = MUST(Core::Stream::File::open(path, Core::Stream::OpenMode::Read)); auto file_size = MUST(file->size()); auto content = MUST(ByteBuffer::create_uninitialized(file_size)); - if (!file->read_or_error(content.bytes())) + if (!file->read_entire_buffer(content.bytes())) VERIFY_NOT_REACHED(); return DeprecatedString { content.bytes() }; } diff --git a/Tests/LibCpp/test-cpp-preprocessor.cpp b/Tests/LibCpp/test-cpp-preprocessor.cpp index ba684dd0ba..8b973615e6 100644 --- a/Tests/LibCpp/test-cpp-preprocessor.cpp +++ b/Tests/LibCpp/test-cpp-preprocessor.cpp @@ -17,7 +17,7 @@ static DeprecatedString read_all(DeprecatedString const& path) auto file = MUST(Core::Stream::File::open(path, Core::Stream::OpenMode::Read)); auto file_size = MUST(file->size()); auto content = MUST(ByteBuffer::create_uninitialized(file_size)); - if (!file->read_or_error(content.bytes())) + if (!file->read_entire_buffer(content.bytes())) VERIFY_NOT_REACHED(); return DeprecatedString { content.bytes() }; } diff --git a/Tests/LibJS/test-test262.cpp b/Tests/LibJS/test-test262.cpp index 02fdf44733..46651647dd 100644 --- a/Tests/LibJS/test-test262.cpp +++ b/Tests/LibJS/test-test262.cpp @@ -161,7 +161,7 @@ public: } for (DeprecatedString const& line : lines) { - if (!m_output->write_or_error(DeprecatedString::formatted("{}\n", line).bytes())) + if (!m_output->write_entire_buffer(DeprecatedString::formatted("{}\n", line).bytes())) break; } @@ -427,7 +427,7 @@ void write_per_file(HashMap<size_t, TestResult> const& result_map, Vector<Deprec complete_results.set("duration", time_taken_in_ms / 1000.); complete_results.set("results", result_object); - if (!file->write_or_error(complete_results.to_deprecated_string().bytes())) + if (!file->write_entire_buffer(complete_results.to_deprecated_string().bytes())) warnln("Failed to write per-file"); file->close(); } diff --git a/Tests/LibMarkdown/TestCommonmark.cpp b/Tests/LibMarkdown/TestCommonmark.cpp index 16571b832e..a3a5e720cd 100644 --- a/Tests/LibMarkdown/TestCommonmark.cpp +++ b/Tests/LibMarkdown/TestCommonmark.cpp @@ -22,7 +22,7 @@ TEST_SETUP auto file = file_or_error.release_value(); auto file_size = MUST(file->size()); auto content = MUST(ByteBuffer::create_uninitialized(file_size)); - if (!file->read_or_error(content.bytes())) + if (!file->read_entire_buffer(content.bytes())) VERIFY_NOT_REACHED(); DeprecatedString test_data { content.bytes() }; diff --git a/Tests/LibTLS/TestTLSHandshake.cpp b/Tests/LibTLS/TestTLSHandshake.cpp index 861efae70e..f9b47d657f 100644 --- a/Tests/LibTLS/TestTLSHandshake.cpp +++ b/Tests/LibTLS/TestTLSHandshake.cpp @@ -96,17 +96,17 @@ TEST_CASE(test_TLS_hello_handshake) loop.quit(0); }; - if (!tls->write_or_error("GET / HTTP/1.1\r\nHost: "_b)) { + if (!tls->write_entire_buffer("GET / HTTP/1.1\r\nHost: "_b)) { FAIL("write(0) failed"); return; } auto the_server = DEFAULT_SERVER; - if (!tls->write_or_error(the_server.bytes())) { + if (!tls->write_entire_buffer(the_server.bytes())) { FAIL("write(1) failed"); return; } - if (!tls->write_or_error("\r\nConnection : close\r\n\r\n"_b)) { + if (!tls->write_entire_buffer("\r\nConnection : close\r\n\r\n"_b)) { FAIL("write(2) failed"); return; } diff --git a/Userland/Applications/Browser/BrowserWindow.cpp b/Userland/Applications/Browser/BrowserWindow.cpp index 8b4cfeba8d..0f9532d831 100644 --- a/Userland/Applications/Browser/BrowserWindow.cpp +++ b/Userland/Applications/Browser/BrowserWindow.cpp @@ -471,7 +471,7 @@ ErrorOr<void> BrowserWindow::load_search_engines(GUI::Menu& settings_menu) auto search_engines_file = TRY(Core::Stream::File::open(Browser::search_engines_file_path(), Core::Stream::OpenMode::Read)); auto file_size = TRY(search_engines_file->size()); auto buffer = TRY(ByteBuffer::create_uninitialized(file_size)); - if (search_engines_file->read_or_error(buffer)) { + if (search_engines_file->read_entire_buffer(buffer)) { StringView buffer_contents { buffer.bytes() }; if (auto json = TRY(JsonValue::from_string(buffer_contents)); json.is_array()) { auto json_array = json.as_array(); diff --git a/Userland/DevTools/SQLStudio/ScriptEditor.cpp b/Userland/DevTools/SQLStudio/ScriptEditor.cpp index 539e979e9c..0a4560e038 100644 --- a/Userland/DevTools/SQLStudio/ScriptEditor.cpp +++ b/Userland/DevTools/SQLStudio/ScriptEditor.cpp @@ -44,7 +44,7 @@ ErrorOr<bool> ScriptEditor::save() auto file = TRY(Core::Stream::File::open(m_path, Core::Stream::OpenMode::Write)); auto editor_text = text(); - if (editor_text.length() && !file->write_or_error(editor_text.bytes())) + if (editor_text.length() && !file->write_entire_buffer(editor_text.bytes())) return Error::from_string_literal("Failed to write to file"); document().set_unmodified(); @@ -60,7 +60,7 @@ ErrorOr<bool> ScriptEditor::save_as() auto file = TRY(Core::Stream::File::open(save_path, Core::Stream::OpenMode::Write)); auto editor_text = text(); - if (editor_text.length() && !file->write_or_error(editor_text.bytes())) + if (editor_text.length() && !file->write_entire_buffer(editor_text.bytes())) return Error::from_string_literal("Failed to write to file"); m_path = save_path; diff --git a/Userland/Libraries/LibCore/InputBitStream.h b/Userland/Libraries/LibCore/InputBitStream.h index 494963d2a8..f0eb126a39 100644 --- a/Userland/Libraries/LibCore/InputBitStream.h +++ b/Userland/Libraries/LibCore/InputBitStream.h @@ -40,7 +40,7 @@ public: return m_stream.read(bytes); } virtual ErrorOr<size_t> write(ReadonlyBytes bytes) override { return m_stream.write(bytes); } - virtual bool write_or_error(ReadonlyBytes bytes) override { return m_stream.write_or_error(bytes); } + virtual bool write_entire_buffer(ReadonlyBytes bytes) override { return m_stream.write_entire_buffer(bytes); } virtual bool is_eof() const override { return m_stream.is_eof() && !m_current_byte.has_value(); } virtual bool is_open() const override { return m_stream.is_open(); } virtual void close() override @@ -155,7 +155,7 @@ public: return m_stream.read(bytes); } virtual ErrorOr<size_t> write(ReadonlyBytes bytes) override { return m_stream.write(bytes); } - virtual bool write_or_error(ReadonlyBytes bytes) override { return m_stream.write_or_error(bytes); } + virtual bool write_entire_buffer(ReadonlyBytes bytes) override { return m_stream.write_entire_buffer(bytes); } virtual bool is_eof() const override { return m_stream.is_eof() && !m_current_byte.has_value(); } virtual bool is_open() const override { return m_stream.is_open(); } virtual void close() override diff --git a/Userland/Libraries/LibCore/MemoryStream.h b/Userland/Libraries/LibCore/MemoryStream.h index 811f5e8bc2..29ebcfc73b 100644 --- a/Userland/Libraries/LibCore/MemoryStream.h +++ b/Userland/Libraries/LibCore/MemoryStream.h @@ -79,7 +79,7 @@ public: m_offset += nwritten; return nwritten; } - virtual bool write_or_error(ReadonlyBytes bytes) override + virtual bool write_entire_buffer(ReadonlyBytes bytes) override { if (remaining() < bytes.size()) return false; diff --git a/Userland/Libraries/LibCore/Stream.cpp b/Userland/Libraries/LibCore/Stream.cpp index ba69c533c7..c8b0e477a1 100644 --- a/Userland/Libraries/LibCore/Stream.cpp +++ b/Userland/Libraries/LibCore/Stream.cpp @@ -23,7 +23,7 @@ namespace Core::Stream { -bool Stream::read_or_error(Bytes buffer) +bool Stream::read_entire_buffer(Bytes buffer) { VERIFY(buffer.size()); @@ -89,7 +89,7 @@ ErrorOr<void> Stream::discard(size_t discarded_bytes) return {}; } -bool Stream::write_or_error(ReadonlyBytes buffer) +bool Stream::write_entire_buffer(ReadonlyBytes buffer) { VERIFY(buffer.size()); diff --git a/Userland/Libraries/LibCore/Stream.h b/Userland/Libraries/LibCore/Stream.h index 550a376e03..ca440e6cb4 100644 --- a/Userland/Libraries/LibCore/Stream.h +++ b/Userland/Libraries/LibCore/Stream.h @@ -35,7 +35,7 @@ public: virtual ErrorOr<Bytes> read(Bytes) = 0; /// Tries to fill the entire buffer through reading. Returns whether the /// buffer was filled without an error. - virtual bool read_or_error(Bytes); + virtual bool read_entire_buffer(Bytes); /// Reads the stream until EOF, storing the contents into a ByteBuffer which /// is returned once EOF is encountered. The block size determines the size /// of newly allocated chunks while reading. @@ -50,9 +50,17 @@ public: /// bytes written into the stream, or an errno in the case of failure. virtual ErrorOr<size_t> write(ReadonlyBytes) = 0; /// Same as write, but does not return until either the entire buffer - /// contents are written or an error occurs. Returns whether the entire - /// contents were written without an error. - virtual bool write_or_error(ReadonlyBytes); + /// contents are written or an error occurs. + virtual bool write_entire_buffer(ReadonlyBytes); + + // This is a wrapper around `write_entire_buffer` that is compatible with + // `write_or_error`. This is required by some templated code in LibProtocol + // that needs to work with either type of stream. + // TODO: Fully port or wrap `Request::stream_into_impl` into `Core::Stream` and remove this. + bool write_or_error(ReadonlyBytes buffer) + { + return write_entire_buffer(buffer); + } /// Returns whether the stream has reached the end of file. For sockets, /// this most likely means that the protocol has disconnected (in the case diff --git a/Userland/Libraries/LibGemini/Job.cpp b/Userland/Libraries/LibGemini/Job.cpp index 1893ea5959..9cc936733f 100644 --- a/Userland/Libraries/LibGemini/Job.cpp +++ b/Userland/Libraries/LibGemini/Job.cpp @@ -75,7 +75,7 @@ bool Job::can_read() const bool Job::write(ReadonlyBytes bytes) { - return m_socket->write_or_error(bytes); + return m_socket->write_entire_buffer(bytes); } void Job::flush_received_buffers() diff --git a/Userland/Libraries/LibHTTP/Job.cpp b/Userland/Libraries/LibHTTP/Job.cpp index 5ab3ea0458..f870427498 100644 --- a/Userland/Libraries/LibHTTP/Job.cpp +++ b/Userland/Libraries/LibHTTP/Job.cpp @@ -220,7 +220,7 @@ void Job::on_socket_connected() dbgln("{}", DeprecatedString::copy(raw_request)); } - bool success = m_socket->write_or_error(raw_request); + bool success = m_socket->write_entire_buffer(raw_request); if (!success) deferred_invoke([this] { did_fail(Core::NetworkJob::Error::TransmissionFailed); }); diff --git a/Userland/Libraries/LibTLS/HandshakeClient.cpp b/Userland/Libraries/LibTLS/HandshakeClient.cpp index 20cfb8ac12..89bd1e88c3 100644 --- a/Userland/Libraries/LibTLS/HandshakeClient.cpp +++ b/Userland/Libraries/LibTLS/HandshakeClient.cpp @@ -141,11 +141,11 @@ bool TLSv12::compute_master_secret_from_pre_master_secret(size_t length) if constexpr (TLS_SSL_KEYLOG_DEBUG) { auto file = MUST(Core::Stream::File::open("/home/anon/ssl_keylog"sv, Core::Stream::OpenMode::Append | Core::Stream::OpenMode::Write)); - VERIFY(file->write_or_error("CLIENT_RANDOM "sv.bytes())); - VERIFY(file->write_or_error(encode_hex({ m_context.local_random, 32 }).bytes())); - VERIFY(file->write_or_error(" "sv.bytes())); - VERIFY(file->write_or_error(encode_hex(m_context.master_key).bytes())); - VERIFY(file->write_or_error("\n"sv.bytes())); + VERIFY(file->write_entire_buffer("CLIENT_RANDOM "sv.bytes())); + VERIFY(file->write_entire_buffer(encode_hex({ m_context.local_random, 32 }).bytes())); + VERIFY(file->write_entire_buffer(" "sv.bytes())); + VERIFY(file->write_entire_buffer(encode_hex(m_context.master_key).bytes())); + VERIFY(file->write_entire_buffer("\n"sv.bytes())); } expand_key(); diff --git a/Userland/Libraries/LibWebSocket/Impl/WebSocketImplSerenity.cpp b/Userland/Libraries/LibWebSocket/Impl/WebSocketImplSerenity.cpp index 0f2004a336..42ea661c71 100644 --- a/Userland/Libraries/LibWebSocket/Impl/WebSocketImplSerenity.cpp +++ b/Userland/Libraries/LibWebSocket/Impl/WebSocketImplSerenity.cpp @@ -21,7 +21,7 @@ bool WebSocketImplSerenity::can_read_line() bool WebSocketImplSerenity::send(ReadonlyBytes bytes) { - return m_socket->write_or_error(bytes); + return m_socket->write_entire_buffer(bytes); } bool WebSocketImplSerenity::eof() |