Kernel: Remove UserOrKernelBuffer::copy_into_string()

All former users of this API have been converted to use KString. :^)
This commit is contained in:
Andreas Kling 2021-09-04 23:48:46 +02:00
parent 211c1c087d
commit 393229e2aa
Notes: sideshowbarker 2024-07-18 04:44:32 +09:00
2 changed files with 2 additions and 17 deletions

View file

@ -1,5 +1,6 @@
/*
* Copyright (c) 2020, the SerenityOS developers.
* Copyright (c) 2020, Andreas Kling <kling@serenityos.org>
*
* SPDX-License-Identifier: BSD-2-Clause
*/
@ -14,21 +15,6 @@ bool UserOrKernelBuffer::is_kernel_buffer() const
return !Memory::is_user_address(VirtualAddress(m_buffer));
}
String UserOrKernelBuffer::copy_into_string(size_t size) const
{
if (!m_buffer)
return {};
if (Memory::is_user_address(VirtualAddress(m_buffer))) {
char* buffer;
auto data_copy = StringImpl::create_uninitialized(size, buffer);
if (!copy_from_user(buffer, m_buffer, size))
return {};
return data_copy;
}
return String(ReadonlyBytes { m_buffer, size });
}
KResultOr<NonnullOwnPtr<KString>> UserOrKernelBuffer::try_copy_into_kstring(size_t size) const
{
if (!m_buffer)

View file

@ -1,12 +1,12 @@
/*
* Copyright (c) 2020, the SerenityOS developers.
* Copyright (c) 2021, Andreas Kling <kling@serenityos.org>
*
* SPDX-License-Identifier: BSD-2-Clause
*/
#pragma once
#include <AK/String.h>
#include <AK/Types.h>
#include <AK/Userspace.h>
#include <Kernel/Memory/MemoryManager.h>
@ -54,7 +54,6 @@ public:
return offset_buffer;
}
[[nodiscard]] String copy_into_string(size_t size) const;
[[nodiscard]] KResultOr<NonnullOwnPtr<KString>> try_copy_into_kstring(size_t) const;
[[nodiscard]] bool write(const void* src, size_t offset, size_t len);
[[nodiscard]] bool write(const void* src, size_t len)