summaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorAmlal El Mahrouss <amlal@nekernel.org>2025-06-22 15:33:29 +0200
committerGitHub <noreply@github.com>2025-06-22 15:33:29 +0200
commit5ef054f3516d03ee82b235061a0df60a3b65bfc9 (patch)
tree3aacd7e32a623eae7845a8d671d752fd03040fac
parente1e17a268dcf871c4458024aec9894bf623a31c7 (diff)
parent367ad9d23ccd56b0394d213c78ed2da5fe2fe592 (diff)
Merge pull request #43 from 0xf00sec/0xf00sec-patch-6.5
UserMgr.cc
-rw-r--r--dev/kernel/src/UserMgr.cc7
1 files changed, 5 insertions, 2 deletions
diff --git a/dev/kernel/src/UserMgr.cc b/dev/kernel/src/UserMgr.cc
index 8eade85e..78a306f7 100644
--- a/dev/kernel/src/UserMgr.cc
+++ b/dev/kernel/src/UserMgr.cc
@@ -15,6 +15,9 @@
#include <KernelKit/KPC.h>
#include <KernelKit/UserMgr.h>
#include <NeKit/KernelPanic.h>
+#include <NeKit/KString.h>
+#include <NeKit/ThreadLocalStorage.h>
+#include <NeKit/Utils.h>
#define kStdUserType (0xEE)
#define kSuperUserType (0xEF)
@@ -56,14 +59,14 @@ namespace Detail {
////////////////////////////////////////////////////////////
User::User(const Int32& sel, const Char* user_name) : mUserRing((UserRingKind) sel) {
MUST_PASS(sel >= 0);
- rt_copy_memory((VoidPtr) user_name, this->mUserName, rt_string_len(user_name));
+ rt_copy_memory_safe((VoidPtr) user_name, this->mUserName, rt_string_len(user_name), kMaxUserNameLen);
}
////////////////////////////////////////////////////////////
/// @brief User ring constructor.
////////////////////////////////////////////////////////////
User::User(const UserRingKind& ring_kind, const Char* user_name) : mUserRing(ring_kind) {
- rt_copy_memory((VoidPtr) user_name, this->mUserName, rt_string_len(user_name));
+ rt_copy_memory_safe((VoidPtr) user_name, this->mUserName, rt_string_len(user_name), kMaxUserNameLen);
}
////////////////////////////////////////////////////////////