summaryrefslogtreecommitdiffhomepage
path: root/dev/Kernel/Sources/PEFSharedObject.cxx
diff options
context:
space:
mode:
authorAmlal El Mahrouss <amlal.elmahrouss@icloud.com>2024-08-18 21:39:29 +0200
committerAmlal El Mahrouss <amlal.elmahrouss@icloud.com>2024-08-18 21:39:29 +0200
commitda70596895d8135e08f8caac6978117697b4c021 (patch)
tree2516785b5434df8453687f05dc8dd877438901ab /dev/Kernel/Sources/PEFSharedObject.cxx
parent005de79004c9d30e64bdee6e14e06f9d47d1f2ab (diff)
[REFACTOR]
Improved project structure. Signed-off-by: Amlal El Mahrouss <amlal.elmahrouss@icloud.com>
Diffstat (limited to 'dev/Kernel/Sources/PEFSharedObject.cxx')
-rw-r--r--dev/Kernel/Sources/PEFSharedObject.cxx110
1 files changed, 0 insertions, 110 deletions
diff --git a/dev/Kernel/Sources/PEFSharedObject.cxx b/dev/Kernel/Sources/PEFSharedObject.cxx
deleted file mode 100644
index 22890e22..00000000
--- a/dev/Kernel/Sources/PEFSharedObject.cxx
+++ /dev/null
@@ -1,110 +0,0 @@
-/*
- * ========================================================
- *
- * Kernel
- * Copyright ZKA Technologies., all rights reserved.
- *
- * ========================================================
- */
-
-#include <KernelKit/DebugOutput.hxx>
-#include <KernelKit/PEF.hxx>
-#include <KernelKit/PEFSharedObject.hxx>
-#include <KernelKit/ProcessScheduler.hxx>
-#include <KernelKit/ThreadLocalStorage.hxx>
-#include <NewKit/Defines.hxx>
-
-/* -------------------------------------------
-
- Revision History:
-
- 01/02/24: Rework shared sharedObj ABI, except a rtl_init_shared_object and
- rtl_fini_shared_object (amlel) 15/02/24: Breaking changes, changed the name of the
- routines. (amlel)
-
- 07/28/24: Replace rt_library_free with rtl_fini_shared_object
-
- ------------------------------------------- */
-
-using namespace Kernel;
-
-/***********************************************************************************/
-/// @file PEFSharedObjectRT.cxx
-/// @brief PEF's shared object runtime.
-/***********************************************************************************/
-
-/***********************************************************************************/
-/** @brief Library initializer. */
-/***********************************************************************************/
-
-EXTERN_C SharedObjectPtr rtl_init_shared_object(PROCESS_HEADER_BLOCK* header)
-{
- SharedObjectPtr sharedObj = tls_new_class<PEFSharedObjectInterface>();
-
- if (!sharedObj)
- {
- header->Crash();
-
- return nullptr;
- }
-
- sharedObj->Mount(tls_new_class<PEFSharedObjectInterface::PEF_SHARED_OBJECT_TRAITS>());
-
- if (!sharedObj->Get())
- {
- header->Crash();
-
- return nullptr;
- }
-
- sharedObj->Get()->fImageObject =
- header->Image;
-
- if (!sharedObj->Get()->fImageObject)
- {
- header->Crash();
-
- return nullptr;
- }
-
- sharedObj->Get()->fImageEntrypointOffset =
- sharedObj->Load<VoidPtr>(kPefStart, rt_string_len(kPefStart, 0), kPefCode);
-
- return sharedObj;
-}
-
-/***********************************************************************************/
-/** @brief Frees the sharedObj. */
-/** @note Please check if the lib got freed! */
-/** @param lib The sharedObj to free. */
-/** @param successful Reports if successful or not. */
-/***********************************************************************************/
-
-EXTERN_C Void rtl_fini_shared_object(PROCESS_HEADER_BLOCK* header, SharedObjectPtr lib, Bool* successful)
-{
- MUST_PASS(successful);
-
- // sanity check (will also trigger a bug check if this fails)
- if (lib == nullptr)
- {
- *successful = false;
- header->Crash();
- }
-
- delete lib->Get();
- delete lib;
-
- lib = nullptr;
-
- *successful = true;
-}
-
-/***********************************************************************************/
-/// @brief Unimplemented function (crashes by default)
-/// @param
-/***********************************************************************************/
-
-EXTERN_C void __mh_purecall(void)
-{
- kcout << "newoskrnl: unimplemented symbol!\r";
-}