summaryrefslogtreecommitdiffhomepage
path: root/Kernel/Sources
diff options
context:
space:
mode:
Diffstat (limited to 'Kernel/Sources')
-rw-r--r--Kernel/Sources/Main.cxx6
-rw-r--r--Kernel/Sources/User.cxx10
2 files changed, 14 insertions, 2 deletions
diff --git a/Kernel/Sources/Main.cxx b/Kernel/Sources/Main.cxx
index 950a8e48..0f835adc 100644
--- a/Kernel/Sources/Main.cxx
+++ b/Kernel/Sources/Main.cxx
@@ -189,8 +189,10 @@ namespace Kernel::Detail
STATIC Kernel::Void ke_user_switch(Kernel::Void)
{
- Kernel::cRootUser = new User(RingKind::kRingSuperUser, kSuperUser);
- Kernel::kcout << "newoskrnl: logged in as: " << Kernel::cRootUser->Name().CData() << Kernel::endl;
+ Kernel::UserView::The()->fRootUser = new User(RingKind::kRingSuperUser, kSuperUser);
+ Kernel::kcout << "newoskrnl: logged in as: " << Kernel::UserView::The()->fRootUser->Name().CData() << Kernel::endl;
+
+ Kernel::UserView::The()->LogIn(Kernel::UserView::The()->fRootUser);
Kernel::kcout << "newoskrnl: " << cKernelVersion.GetKey().CData() << ": " << Kernel::number(cKernelVersion.GetValue()) << Kernel::endl;
}
diff --git a/Kernel/Sources/User.cxx b/Kernel/Sources/User.cxx
index 1deac5be..68d0d5be 100644
--- a/Kernel/Sources/User.cxx
+++ b/Kernel/Sources/User.cxx
@@ -51,4 +51,14 @@ namespace Kernel
{
return this->fRing;
}
+
+ Bool User::IsStdUser() noexcept
+ {
+ return this->Ring() == RingKind::kRingStdUser;
+ }
+
+ Bool User::IsSuperUser() noexcept
+ {
+ return this->Ring() == RingKind::kRingSuperUser;
+ }
} // namespace Kernel