Stefan Leichter : kernel32: Add stubs for CreateSymbolicLinkA/W.
Alexandre Julliard
julliard at wine.codeweavers.com
Fri Dec 5 15:36:55 CST 2014
Module: wine
Branch: master
Commit: 9668dddfc93a5241121137d6a9ad89aa0009ac08
URL: http://source.winehq.org/git/wine.git/?a=commit;h=9668dddfc93a5241121137d6a9ad89aa0009ac08
Author: Stefan Leichter <Stefan.Leichter at camline.com>
Date: Tue Dec 2 21:35:06 2014 +0100
kernel32: Add stubs for CreateSymbolicLinkA/W.
---
.../api-ms-win-core-file-l2-1-0.spec | 2 +-
.../api-ms-win-core-file-l2-1-1.spec | 2 +-
dlls/kernel32/kernel32.spec | 2 ++
dlls/kernel32/path.c | 18 ++++++++++++++++++
include/winbase.h | 3 +++
5 files changed, 25 insertions(+), 2 deletions(-)
diff --git a/dlls/api-ms-win-core-file-l2-1-0/api-ms-win-core-file-l2-1-0.spec b/dlls/api-ms-win-core-file-l2-1-0/api-ms-win-core-file-l2-1-0.spec
index 914e0c0..3c1e59c 100644
--- a/dlls/api-ms-win-core-file-l2-1-0/api-ms-win-core-file-l2-1-0.spec
+++ b/dlls/api-ms-win-core-file-l2-1-0/api-ms-win-core-file-l2-1-0.spec
@@ -2,7 +2,7 @@
@ stdcall CopyFileExW(wstr wstr ptr ptr ptr long) kernel32.CopyFileExW
@ stdcall CreateDirectoryExW(wstr wstr ptr) kernel32.CreateDirectoryExW
@ stdcall CreateHardLinkW(wstr wstr ptr) kernel32.CreateHardLinkW
-@ stub CreateSymbolicLinkW
+@ stdcall CreateSymbolicLinkW(wstr wstr long) kernel32.CreateSymbolicLinkW
@ stdcall GetFileInformationByHandleEx(long long ptr long) kernel32.GetFileInformationByHandleEx
@ stdcall MoveFileExW(wstr wstr long) kernel32.MoveFileExW
@ stdcall MoveFileWithProgressW(wstr wstr ptr ptr long) kernel32.MoveFileWithProgressW
diff --git a/dlls/api-ms-win-core-file-l2-1-1/api-ms-win-core-file-l2-1-1.spec b/dlls/api-ms-win-core-file-l2-1-1/api-ms-win-core-file-l2-1-1.spec
index 36cf6c3..6bfcb08 100644
--- a/dlls/api-ms-win-core-file-l2-1-1/api-ms-win-core-file-l2-1-1.spec
+++ b/dlls/api-ms-win-core-file-l2-1-1/api-ms-win-core-file-l2-1-1.spec
@@ -2,7 +2,7 @@
@ stdcall CopyFileExW(wstr wstr ptr ptr ptr long) kernel32.CopyFileExW
@ stdcall CreateDirectoryExW(wstr wstr ptr) kernel32.CreateDirectoryExW
@ stdcall CreateHardLinkW(wstr wstr ptr) kernel32.CreateHardLinkW
-@ stub CreateSymbolicLinkW
+@ stdcall CreateSymbolicLinkW(wstr wstr long) kernel32.CreateSymbolicLinkW
@ stdcall GetFileInformationByHandleEx(long long ptr long) kernel32.GetFileInformationByHandleEx
@ stdcall MoveFileExW(wstr wstr long) kernel32.MoveFileExW
@ stdcall MoveFileWithProgressW(wstr wstr ptr ptr long) kernel32.MoveFileWithProgressW
diff --git a/dlls/kernel32/kernel32.spec b/dlls/kernel32/kernel32.spec
index c072780..80c7a87 100644
--- a/dlls/kernel32/kernel32.spec
+++ b/dlls/kernel32/kernel32.spec
@@ -264,6 +264,8 @@
@ stdcall CreateSemaphoreExW(ptr long long wstr long long)
@ stdcall CreateSemaphoreW(ptr long long wstr)
@ stdcall CreateSocketHandle()
+@ stdcall CreateSymbolicLinkA(str str long)
+@ stdcall CreateSymbolicLinkW(wstr wstr long)
@ stdcall CreateTapePartition(long long long long)
@ stdcall CreateThread(ptr long ptr long long ptr)
@ stdcall CreateTimerQueue ()
diff --git a/dlls/kernel32/path.c b/dlls/kernel32/path.c
index c4a37b2..bb167a0 100644
--- a/dlls/kernel32/path.c
+++ b/dlls/kernel32/path.c
@@ -1954,3 +1954,21 @@ WCHAR * CDECL wine_get_dos_file_name( LPCSTR str )
nt_name.Buffer[1] = '\\';
return nt_name.Buffer;
}
+
+/*************************************************************************
+ * CreateSymbolicLinkW (KERNEL32.@)
+ */
+BOOL WINAPI CreateSymbolicLinkW(LPCWSTR link, LPCWSTR target, DWORD flags)
+{
+ FIXME("(%s %s %d): stub\n", debugstr_w(link), debugstr_w(target), flags);
+ return TRUE;
+}
+
+/*************************************************************************
+ * CreateSymbolicLinkA (KERNEL32.@)
+ */
+BOOL WINAPI CreateSymbolicLinkA(LPCSTR link, LPCSTR target, DWORD flags)
+{
+ FIXME("(%s %s %d): stub\n", debugstr_a(link), debugstr_a(target), flags);
+ return TRUE;
+}
diff --git a/include/winbase.h b/include/winbase.h
index 723da26..5ac55b7 100644
--- a/include/winbase.h
+++ b/include/winbase.h
@@ -1684,6 +1684,9 @@ WINBASEAPI HANDLE WINAPI CreateSemaphoreW(LPSECURITY_ATTRIBUTES,LONG,LONG,L
WINBASEAPI HANDLE WINAPI CreateSemaphoreExA(SECURITY_ATTRIBUTES*,LONG,LONG,LPCSTR,DWORD,DWORD);
WINBASEAPI HANDLE WINAPI CreateSemaphoreExW(SECURITY_ATTRIBUTES*,LONG,LONG,LPCWSTR,DWORD,DWORD);
#define CreateSemaphoreEx WINELIB_NAME_AW(CreateSemaphoreEx)
+WINBASEAPI BOOL WINAPI CreateSymbolicLinkA(LPCSTR,LPCSTR,DWORD);
+WINBASEAPI BOOL WINAPI CreateSymbolicLinkW(LPCWSTR,LPCWSTR,DWORD);
+#define CreateSymbolicLink WINELIB_NAME_AW(CreateSymbolicLink)
WINBASEAPI DWORD WINAPI CreateTapePartition(HANDLE,DWORD,DWORD,DWORD);
WINBASEAPI HANDLE WINAPI CreateThread(LPSECURITY_ATTRIBUTES,SIZE_T,LPTHREAD_START_ROUTINE,LPVOID,DWORD,LPDWORD);
WINBASEAPI HANDLE WINAPI CreateTimerQueue(void);
More information about the wine-cvs
mailing list