advapi32: Add stub FileEncryptionStatus and declarations (take 3)
Paul Chitescu
paulc at voip.null.ro
Fri May 19 08:19:18 CDT 2006
ChangeLog: stub FileEncryptionStatus and winbase.h declarations
XP and 2000+ function required by GoogleDesktop 4.0 to check user
preferences and index files.
I also fished the 'net for the encryption status constants - thanks to
FreePascal guys for providing them in jwawinbase.pas and to Google for
finding them ;-)
The patch is built on 0.9.10 but applies (with some offsets) to CVS
version.
Paul Chitescu
P.S. This is second attempt of second version - after noticing I did not
format the subject properly in the previous mail. I aplologise for
resending.
P.P.S. Third version - fixme message includes (parameters): stub
-------------- next part --------------
diff -ru wine-0.9.10-orig/dlls/advapi32/advapi32.spec wine-0.9.10/dlls/advapi32/advapi32.spec
--- wine-0.9.10-orig/dlls/advapi32/advapi32.spec 2006-03-15 16:50:30.000000000 +0200
+++ wine-0.9.10/dlls/advapi32/advapi32.spec 2006-05-16 21:58:39.000000000 +0300
@@ -217,8 +217,8 @@
# @ stub EqualDomainSid
@ stdcall EqualPrefixSid(ptr ptr)
@ stdcall EqualSid(ptr ptr)
-# @ stub FileEncryptionStatusA
-# @ stub FileEncryptionStatusW
+@ stdcall FileEncryptionStatusA(str ptr)
+@ stdcall FileEncryptionStatusW(wstr ptr)
@ stdcall FindFirstFreeAce(ptr ptr)
# @ stub FlushTraceA
# @ stub FlushTraceW
diff -ru wine-0.9.10-orig/dlls/advapi32/security.c wine-0.9.10/dlls/advapi32/security.c
--- wine-0.9.10-orig/dlls/advapi32/security.c 2006-03-15 16:50:30.000000000 +0200
+++ wine-0.9.10/dlls/advapi32/security.c 2006-05-19 16:07:04.000000000 +0300
@@ -3399,6 +3399,30 @@
}
/******************************************************************************
+ * FileEncryptionStatusW [ADVAPI32.@]
+ */
+BOOL WINAPI FileEncryptionStatusW(LPCWSTR lpFileName, LPDWORD lpStatus)
+{
+ FIXME("(%s %p): stub\n", debugstr_w(lpFileName), lpStatus);
+ if (!lpStatus)
+ return FALSE;
+ *lpStatus = FILE_SYSTEM_NOT_SUPPORT;
+ return TRUE;
+}
+
+/******************************************************************************
+ * FileEncryptionStatusA [ADVAPI32.@]
+ */
+BOOL WINAPI FileEncryptionStatusA(LPCSTR lpFileName, LPDWORD lpStatus)
+{
+ FIXME("(%s %p): stub\n", debugstr_a(lpFileName), lpStatus);
+ if (!lpStatus)
+ return FALSE;
+ *lpStatus = FILE_SYSTEM_NOT_SUPPORT;
+ return TRUE;
+}
+
+/******************************************************************************
* SetSecurityInfo [ADVAPI32.@]
*/
DWORD WINAPI SetSecurityInfo(HANDLE handle, SE_OBJECT_TYPE ObjectType,
diff -ru wine-0.9.10-orig/include/winbase.h wine-0.9.10/include/winbase.h
--- wine-0.9.10-orig/include/winbase.h 2006-03-15 16:50:45.000000000 +0200
+++ wine-0.9.10/include/winbase.h 2006-05-18 15:41:46.000000000 +0300
@@ -624,6 +624,19 @@
#define FILE_TYPE_PIPE 3
#define FILE_TYPE_REMOTE 32768
+/* File encryption status - used in XP, 2000 and beyond
+ */
+#define FILE_ENCRYPTABLE 0
+#define FILE_IS_ENCRYPTED 1
+#define FILE_SYSTEM_ATTR 2
+#define FILE_ROOT_DIR 3
+#define FILE_SYSTEM_DIR 4
+#define FILE_UNKNOWN 5
+#define FILE_SYSTEM_NOT_SUPPORT 6
+#define FILE_USER_DISALLOWED 7
+#define FILE_READ_ONLY 8
+#define FILE_DIR_DISALOWED 9
+
/* File creation flags
*/
#define FILE_FLAG_WRITE_THROUGH 0x80000000UL
@@ -1384,6 +1397,9 @@
void WINAPI FatalAppExitW(UINT,LPCWSTR);
void WINAPI FatalExit(int);
#define FatalAppExit WINELIB_NAME_AW(FatalAppExit)
+BOOL WINAPI FileEncryptionStatusA(LPCSTR,LPDWORD);
+BOOL WINAPI FileEncryptionStatusW(LPCWSTR,LPDWORD);
+#define FileEncryptionStatus WINELIB_NAME_AW(FileEncryptionStatus)
BOOL WINAPI FileTimeToDosDateTime(const FILETIME*,LPWORD,LPWORD);
BOOL WINAPI FileTimeToLocalFileTime(const FILETIME*,LPFILETIME);
BOOL WINAPI FileTimeToSystemTime(const FILETIME*,LPSYSTEMTIME);
More information about the wine-patches
mailing list