diff options
author | Tim Schumacher <timschumi@gmx.de> | 2023-02-07 15:01:39 +0100 |
---|---|---|
committer | Linus Groh <mail@linusgroh.de> | 2023-02-08 18:51:02 +0000 |
commit | 185787d29d8ab9e0d58e8996ca63f7728b425f84 (patch) | |
tree | de01f267c86bf5742a27336ed84fe9194ea96ff7 | |
parent | 43f36d5e7fb1ede3c9be8adaea2c94b91bb67bf2 (diff) | |
download | serenity-185787d29d8ab9e0d58e8996ca63f7728b425f84.zip |
TelnetServer: Use `AK::Stream` to serialize commands
-rw-r--r-- | Userland/Services/TelnetServer/Client.cpp | 13 |
1 files changed, 8 insertions, 5 deletions
diff --git a/Userland/Services/TelnetServer/Client.cpp b/Userland/Services/TelnetServer/Client.cpp index e55484e4c7..c4027d2a65 100644 --- a/Userland/Services/TelnetServer/Client.cpp +++ b/Userland/Services/TelnetServer/Client.cpp @@ -7,8 +7,8 @@ #include "Client.h" #include <AK/ByteBuffer.h> -#include <AK/DeprecatedMemoryStream.h> #include <AK/DeprecatedString.h> +#include <AK/MemoryStream.h> #include <AK/StringBuilder.h> #include <AK/StringView.h> #include <AK/Types.h> @@ -194,12 +194,15 @@ ErrorOr<void> Client::send_command(Command command) ErrorOr<void> Client::send_commands(Vector<Command> commands) { auto buffer = TRY(ByteBuffer::create_uninitialized(commands.size() * 3)); - DeprecatedOutputMemoryStream stream { buffer }; + FixedMemoryStream stream { buffer.span() }; - for (auto& command : commands) - stream << (u8)IAC << command.command << command.subcommand; + for (auto& command : commands) { + MUST(stream.write_value<u8>(IAC)); + MUST(stream.write_value(command.command)); + MUST(stream.write_value(command.subcommand)); + } - VERIFY(stream.is_end()); + VERIFY(TRY(stream.tell()) == buffer.size()); TRY(m_socket->write({ buffer.data(), buffer.size() })); return {}; } |