https://git.reactos.org/?p=reactos.git;a=commitdiff;h=70b6658af86266b6ea803990aca3d57a571cbe11

commit 70b6658af86266b6ea803990aca3d57a571cbe11
Author:     Oleg Dubinskiy <oleg.dubinskij2...@yandex.ua>
AuthorDate: Sun Apr 26 22:15:21 2020 +0300
Commit:     GitHub <nore...@github.com>
CommitDate: Sun Apr 26 21:15:21 2020 +0200

    [PROFMAP] Initial implementation (#2119)
    
    Co-Authored-By: Stanislav Motylkov <x86co...@gmail.com>
---
 dll/win32/CMakeLists.txt         |  1 +
 dll/win32/profmap/CMakeLists.txt | 13 +++++++
 dll/win32/profmap/profmap.c      | 77 ++++++++++++++++++++++++++++++++++++++++
 dll/win32/profmap/profmap.rc     |  5 +++
 dll/win32/profmap/profmap.spec   |  6 ++++
 5 files changed, 102 insertions(+)

diff --git a/dll/win32/CMakeLists.txt b/dll/win32/CMakeLists.txt
index d8ecf5ca50f..e69b50bc877 100644
--- a/dll/win32/CMakeLists.txt
+++ b/dll/win32/CMakeLists.txt
@@ -158,6 +158,7 @@ add_subdirectory(pdh)
 add_subdirectory(pidgen)
 add_subdirectory(powrprof)
 add_subdirectory(printui)
+add_subdirectory(profmap)
 add_subdirectory(propsys)
 add_subdirectory(psapi)
 add_subdirectory(pstorec)
diff --git a/dll/win32/profmap/CMakeLists.txt b/dll/win32/profmap/CMakeLists.txt
new file mode 100644
index 00000000000..03c350c0330
--- /dev/null
+++ b/dll/win32/profmap/CMakeLists.txt
@@ -0,0 +1,13 @@
+
+spec2def(profmap.dll profmap.spec)
+
+list(APPEND SOURCE
+    profmap.c
+    profmap.rc
+    ${CMAKE_CURRENT_BINARY_DIR}/profmap_stubs.c
+    ${CMAKE_CURRENT_BINARY_DIR}/profmap.def)
+
+add_library(profmap MODULE ${SOURCE})
+set_module_type(profmap win32dll)
+add_importlibs(profmap msvcrt kernel32 ntdll)
+add_cd_file(TARGET profmap DESTINATION reactos/system32 FOR all)
diff --git a/dll/win32/profmap/profmap.c b/dll/win32/profmap/profmap.c
new file mode 100644
index 00000000000..a9a75946a4f
--- /dev/null
+++ b/dll/win32/profmap/profmap.c
@@ -0,0 +1,77 @@
+/*
+ * PROJECT:         ReactOS system libraries
+ * LICENSE:         GPL-2.0-or-later 
(https://spdx.org/licenses/GPL-2.0-or-later)
+ * FILE:            dll/win32/profmap/profmap.c
+ * PURPOSE:         ReactOS User Profile Mapping API
+ * COPYRIGHT:       Copyright 2019 Oleg Dubinskiy 
(oleg.dubinskij2...@yandex.ua)
+ */
+
+/* INCLUDES 
*******************************************************************/
+
+#include <windef.h>
+#include <winbase.h>
+
+#define NDEBUG
+#include <debug.h>
+
+/* PUBLIC FUNCTIONS 
***********************************************************/
+
+/*
+ * @implemented
+ */
+BOOL
+WINAPI
+DllMain(HINSTANCE hinstDll,
+        DWORD dwReason,
+        LPVOID reserved)
+{
+    switch (dwReason)
+    {
+        case DLL_PROCESS_ATTACH:
+            DisableThreadLibraryCalls(hinstDll);
+            break;
+
+        case DLL_PROCESS_DETACH:
+            break;
+    }
+
+    return TRUE;
+}
+
+/*
+ * @unimplemented
+ * 
+ * NOTES:
+ *   Based on the documentation from:
+ *   
http://sendmail2.blogspot.com/2012/11/windows-small-business-server-2008_7553.html?view=magazine
+ */
+BOOL
+WINAPI
+RemapAndMoveUserA(IN LPCSTR pComputer,
+                  IN DWORD dwFlags,
+                  IN LPCSTR pCurrentUser,
+                  IN LPCSTR pNewUser)
+{
+    UNIMPLEMENTED;
+    return FALSE;
+}
+
+/*
+ * @unimplemented
+ * 
+ * NOTES:
+ *   Based on the documentation from:
+ *   
http://sendmail2.blogspot.com/2012/11/windows-small-business-server-2008_7553.html?view=magazine
+ */
+BOOL
+WINAPI
+RemapAndMoveUserW(IN LPCWSTR pComputer,
+                  IN DWORD dwFlags,
+                  IN LPCWSTR pCurrentUser,
+                  IN LPCWSTR pNewUser)
+{
+    UNIMPLEMENTED;
+    return FALSE;
+}
+
+/* EOF */
diff --git a/dll/win32/profmap/profmap.rc b/dll/win32/profmap/profmap.rc
new file mode 100644
index 00000000000..abbb3ca5283
--- /dev/null
+++ b/dll/win32/profmap/profmap.rc
@@ -0,0 +1,5 @@
+#define REACTOS_VERSION_DLL
+#define REACTOS_STR_FILE_DESCRIPTION  "ReactOS User Profile Mapping API"
+#define REACTOS_STR_INTERNAL_NAME     "profmap"
+#define REACTOS_STR_ORIGINAL_FILENAME "profmap.dll"
+#include <reactos/version.rc>
diff --git a/dll/win32/profmap/profmap.spec b/dll/win32/profmap/profmap.spec
new file mode 100644
index 00000000000..d4039086339
--- /dev/null
+++ b/dll/win32/profmap/profmap.spec
@@ -0,0 +1,6 @@
+@ stdcall DllMain(ptr long ptr)
+@ stub InitializeProfileMappingApi
+@ stdcall RemapAndMoveUserA(str long str str)
+@ stdcall RemapAndMoveUserW(wstr long wstr wstr)
+@ stub RemapUserProfileA
+@ stub RemapUserProfileW

Reply via email to