[WINSCARD]

* Import from Wine 1.7.17.
* Properly stub some exports thanks to our previous code.
* Add to build.
CORE-8224 #resolve #comment Added in r63328. Thanks for reporting!
CORE-8080

svn path=/trunk/; revision=63329
This commit is contained in:
Amine Khaldi 2014-05-17 14:06:12 +00:00
parent b0f91e882d
commit 1a4036b369
8 changed files with 825 additions and 880 deletions

View file

@ -227,7 +227,7 @@ add_subdirectory(wing32)
add_subdirectory(winhttp)
add_subdirectory(wininet)
add_subdirectory(winmm)
#add_subdirectory(winscard) # not built in trunk
add_subdirectory(winscard)
add_subdirectory(winspool)
add_subdirectory(winsta)
add_subdirectory(wintrust)

View file

@ -0,0 +1,21 @@
add_definitions(-D__WINESRC__)
include_directories(${REACTOS_SOURCE_DIR}/include/reactos/wine)
spec2def(winscard.dll winscard.spec)
list(APPEND SOURCE
winscard.c
stubs.c
precomp.h
${CMAKE_CURRENT_BINARY_DIR}/winscard_stubs.c)
add_library(winscard SHARED
${SOURCE}
winscard.rc
${CMAKE_CURRENT_BINARY_DIR}/winscard.def)
set_module_type(winscard win32dll)
target_link_libraries(winscard wine)
add_importlibs(winscard msvcrt kernel32 ntdll)
add_pch(winscard precomp.h SOURCE)
add_cd_file(TARGET winscard DESTINATION reactos/system32 FOR all)

View file

@ -1,5 +1,19 @@
#include <windows.h>
#include <WinSCard.h>
#include <debug.h>
#ifndef _WINSCARD_PCH_
#define _WINSCARD_PCH_
/* EOF */
#include <wine/config.h>
#include <stdarg.h>
#define WIN32_NO_STATUS
#define _INC_WINDOWS
#define COM_NO_WINDOWS_H
#include <windef.h>
#include <winbase.h>
#include <winscard.h>
#include <wine/debug.h>
WINE_DEFAULT_DEBUG_CHANNEL(winscard);
#endif /* _WINSCARD_PCH_ */

View file

@ -0,0 +1,645 @@
/*
* PROJECT: ReactOS SmartCard API
* FILE: dll/win32/winscard/stubs.c
* PURPOSE: ReactOS SmartCard API
* PROGRAMMER: Thomas Weidenmueller <w3seek@reactos.com>
*
* UPDATE HISTORY:
* 11/07/2004 Created
*/
#include <precomp.h>
/*
* @unimplemented
*/
LONG
WINAPI
SCardBeginTransaction(SCARDHANDLE hCard)
{
UNIMPLEMENTED;
return SCARD_F_UNKNOWN_ERROR;
}
/*
* @unimplemented
*/
LONG
WINAPI
SCardCancel(SCARDCONTEXT hContext)
{
UNIMPLEMENTED;
return SCARD_F_UNKNOWN_ERROR;
}
/*
* @unimplemented
*/
LONG
WINAPI
SCardConnectA(SCARDCONTEXT hContext,
LPCSTR szReader,
DWORD dwShareMode,
DWORD dwPreferredProtocols,
LPSCARDHANDLE phCard,
LPDWORD pdwActiveProtocol)
{
UNIMPLEMENTED;
return SCARD_F_UNKNOWN_ERROR;
}
/*
* @unimplemented
*/
LONG
WINAPI
SCardConnectW(SCARDCONTEXT hContext,
LPCWSTR szReader,
DWORD dwShareMode,
DWORD dwPreferredProtocols,
LPSCARDHANDLE phCard,
LPDWORD pdwActiveProtocol)
{
UNIMPLEMENTED;
return SCARD_F_UNKNOWN_ERROR;
}
/*
* @unimplemented
*/
LONG
WINAPI
SCardControl(SCARDHANDLE hCard,
DWORD dwControlCode,
LPCVOID lpInBuffer,
DWORD nInBufferSize,
LPVOID lpOutBuffer,
DWORD nOutBufferSize,
LPDWORD lpBytesReturned)
{
UNIMPLEMENTED;
return SCARD_F_UNKNOWN_ERROR;
}
/*
* @unimplemented
*/
LONG
WINAPI
SCardDisconnect(SCARDHANDLE hCard,
DWORD dwDisposition)
{
UNIMPLEMENTED;
return SCARD_F_UNKNOWN_ERROR;
}
/*
* @unimplemented
*/
LONG
WINAPI
SCardEndTransaction(SCARDHANDLE hCard,
DWORD dwDisposition)
{
UNIMPLEMENTED;
return SCARD_F_UNKNOWN_ERROR;
}
/*
* @unimplemented
*/
LONG
WINAPI
SCardForgetCardTypeA(SCARDCONTEXT hContext,
LPCSTR szCardName)
{
UNIMPLEMENTED;
return SCARD_F_UNKNOWN_ERROR;
}
/*
* @unimplemented
*/
LONG
WINAPI
SCardForgetCardTypeW(SCARDCONTEXT hContext,
LPCWSTR szCardName)
{
UNIMPLEMENTED;
return SCARD_F_UNKNOWN_ERROR;
}
/*
* @unimplemented
*/
LONG
WINAPI
SCardForgetReaderA(SCARDCONTEXT hContext,
LPCSTR szReaderName)
{
UNIMPLEMENTED;
return SCARD_F_UNKNOWN_ERROR;
}
/*
* @unimplemented
*/
LONG
WINAPI
SCardForgetReaderW(SCARDCONTEXT hContext,
LPCWSTR szReaderName)
{
UNIMPLEMENTED;
return SCARD_F_UNKNOWN_ERROR;
}
/*
* @unimplemented
*/
LONG
WINAPI
SCardForgetReaderGroupA(SCARDCONTEXT hContext,
LPCSTR szGroupName)
{
UNIMPLEMENTED;
return SCARD_F_UNKNOWN_ERROR;
}
/*
* @unimplemented
*/
LONG
WINAPI
SCardForgetReaderGroupW(SCARDCONTEXT hContext,
LPCWSTR szGroupName)
{
UNIMPLEMENTED;
return SCARD_F_UNKNOWN_ERROR;
}
/*
* @unimplemented
*/
LONG
WINAPI
SCardFreeMemory(SCARDCONTEXT hContext,
LPCVOID pvMem)
{
UNIMPLEMENTED;
return SCARD_F_UNKNOWN_ERROR;
}
/*
* @unimplemented
*/
LONG
WINAPI
SCardGetAttrib(SCARDHANDLE hCard,
DWORD dwAttrId,
LPBYTE pbAttr,
LPDWORD pcbAttrLen)
{
UNIMPLEMENTED;
return SCARD_F_UNKNOWN_ERROR;
}
/*
* @unimplemented
*/
LONG
WINAPI
SCardGetCardTypeProviderNameA(SCARDCONTEXT hContext,
LPCSTR szCardName,
DWORD dwProviderId,
LPSTR szProvider,
LPDWORD pcchProvider)
{
UNIMPLEMENTED;
return SCARD_F_UNKNOWN_ERROR;
}
/*
* @unimplemented
*/
LONG
WINAPI
SCardGetCardTypeProviderNameW(SCARDCONTEXT hContext,
LPCWSTR szCardName,
DWORD dwProviderId,
LPWSTR szProvider,
LPDWORD pcchProvider)
{
UNIMPLEMENTED;
return SCARD_F_UNKNOWN_ERROR;
}
/*
* @unimplemented
*/
LONG
WINAPI
SCardGetProviderIdA(SCARDCONTEXT hContext,
LPCSTR szCard,
LPGUID pguidProviderId)
{
UNIMPLEMENTED;
return SCARD_F_UNKNOWN_ERROR;
}
/*
* @unimplemented
*/
LONG
WINAPI
SCardGetProviderIdW(SCARDCONTEXT hContext,
LPCWSTR szCard,
LPGUID pguidProviderId)
{
UNIMPLEMENTED;
return SCARD_F_UNKNOWN_ERROR;
}
/*
* @unimplemented
*/
LONG
WINAPI
SCardGetStatusChangeA(SCARDCONTEXT hContext,
DWORD dwTimeout,
LPSCARD_READERSTATEA rgReaderState,
DWORD cReaders)
{
UNIMPLEMENTED;
return SCARD_F_UNKNOWN_ERROR;
}
/*
* @unimplemented
*/
LONG
WINAPI
SCardGetStatusChangeW(SCARDCONTEXT hContext,
DWORD dwTimeout,
LPSCARD_READERSTATEW rgReaderState,
DWORD cReaders)
{
UNIMPLEMENTED;
return SCARD_F_UNKNOWN_ERROR;
}
/*
* @unimplemented
*/
LONG
WINAPI
SCardIntroduceCardTypeA(SCARDCONTEXT hContext,
LPCSTR szCardName,
LPCGUID pguidPrimaryProvider,
LPCGUID rgguidInterfaces,
DWORD dwInterfaceCount,
LPCBYTE pbAtr,
LPCBYTE pbAtrMask,
DWORD cbAtrLen)
{
UNIMPLEMENTED;
return SCARD_F_UNKNOWN_ERROR;
}
/*
* @unimplemented
*/
LONG
WINAPI
SCardIntroduceCardTypeW(SCARDCONTEXT hContext,
LPCWSTR szCardName,
LPCGUID pguidPrimaryProvider,
LPCGUID rgguidInterfaces,
DWORD dwInterfaceCount,
LPCBYTE pbAtr,
LPCBYTE pbAtrMask,
DWORD cbAtrLen)
{
UNIMPLEMENTED;
return SCARD_F_UNKNOWN_ERROR;
}
/*
* @unimplemented
*/
LONG
WINAPI
SCardIntroduceReaderA(SCARDCONTEXT hContext,
LPCSTR szReaderName,
LPCSTR szDeviceName)
{
UNIMPLEMENTED;
return SCARD_F_UNKNOWN_ERROR;
}
/*
* @unimplemented
*/
LONG
WINAPI
SCardIntroduceReaderW(SCARDCONTEXT hContext,
LPCWSTR szReaderName,
LPCWSTR szDeviceName)
{
UNIMPLEMENTED;
return SCARD_F_UNKNOWN_ERROR;
}
/*
* @unimplemented
*/
LONG
WINAPI
SCardIntroduceReaderGroupA(SCARDCONTEXT hContext,
LPCSTR szGroupName)
{
UNIMPLEMENTED;
return SCARD_F_UNKNOWN_ERROR;
}
/*
* @unimplemented
*/
LONG
WINAPI
SCardIntroduceReaderGroupW(SCARDCONTEXT hContext,
LPCWSTR szGroupName)
{
UNIMPLEMENTED;
return SCARD_F_UNKNOWN_ERROR;
}
/*
* @unimplemented
*/
LONG
WINAPI
SCardListCardsW(SCARDCONTEXT hContext,
LPCBYTE pbAtr,
LPCGUID rgguidInterface,
DWORD cguidInterfaceCount,
LPWSTR mszCards,
LPDWORD pcchCards)
{
UNIMPLEMENTED;
return SCARD_F_UNKNOWN_ERROR;
}
/*
* @unimplemented
*/
LONG
WINAPI
SCardListInterfacesA(SCARDCONTEXT hContext,
LPCSTR szCard,
LPGUID pguidInterfaces,
LPDWORD pcguidInteraces)
{
UNIMPLEMENTED;
return SCARD_F_UNKNOWN_ERROR;
}
/*
* @unimplemented
*/
LONG
WINAPI
SCardListInterfacesW(SCARDCONTEXT hContext,
LPCWSTR szCard,
LPGUID pguidInterfaces,
LPDWORD pcguidInteraces)
{
UNIMPLEMENTED;
return SCARD_F_UNKNOWN_ERROR;
}
/*
* @unimplemented
*/
LONG
WINAPI
SCardListReaderGroupsA(SCARDCONTEXT hContext,
LPSTR mszGroups,
LPDWORD pcchGroups)
{
UNIMPLEMENTED;
return SCARD_F_UNKNOWN_ERROR;
}
/*
* @unimplemented
*/
LONG
WINAPI
SCardListReaderGroupsW(SCARDCONTEXT hContext,
LPWSTR mszGroups,
LPDWORD pcchGroups)
{
UNIMPLEMENTED;
return SCARD_F_UNKNOWN_ERROR;
}
/*
* @unimplemented
*/
LONG
WINAPI
SCardListReadersA(SCARDCONTEXT Context,
LPCSTR mszGroups,
LPSTR mszReaders,
LPDWORD pcchReaders)
{
UNIMPLEMENTED;
return SCARD_F_UNKNOWN_ERROR;
}
/*
* @unimplemented
*/
LONG
WINAPI
SCardListReadersW(SCARDCONTEXT Context,
LPCWSTR mszGroups,
LPWSTR mszReaders,
LPDWORD pcchReaders)
{
UNIMPLEMENTED;
return SCARD_F_UNKNOWN_ERROR;
}
/*
* @unimplemented
*/
LONG
WINAPI
SCardLocateCardsA(SCARDCONTEXT hContext,
LPCSTR mszCards,
LPSCARD_READERSTATEA rgReaderStates,
DWORD cReaders)
{
UNIMPLEMENTED;
return SCARD_F_UNKNOWN_ERROR;
}
/*
* @unimplemented
*/
LONG
WINAPI
SCardLocateCardsW(SCARDCONTEXT hContext,
LPCWSTR mszCards,
LPSCARD_READERSTATEW rgReaderStates,
DWORD cReaders)
{
UNIMPLEMENTED;
return SCARD_F_UNKNOWN_ERROR;
}
/*
* @unimplemented
*/
LONG
WINAPI
SCardLocateCardsByATRA(SCARDCONTEXT hContext,
LPSCARD_ATRMASK rgAtrMasks,
DWORD cAtrs,
LPSCARD_READERSTATEA rgReaderStates,
DWORD cReaders)
{
UNIMPLEMENTED;
return SCARD_F_UNKNOWN_ERROR;
}
/*
* @unimplemented
*/
LONG
WINAPI
SCardLocateCardsByATRW(SCARDCONTEXT hContext,
LPSCARD_ATRMASK rgAtrMasks,
DWORD cAtrs,
LPSCARD_READERSTATEW rgReaderStates,
DWORD cReaders)
{
UNIMPLEMENTED;
return SCARD_F_UNKNOWN_ERROR;
}
/*
* @unimplemented
*/
LONG
WINAPI
SCardReconnect(SCARDHANDLE hCard,
DWORD dwShareMode,
DWORD dwPreferredProtocols,
DWORD dwInitialization,
LPDWORD pdwActiveProtocol)
{
UNIMPLEMENTED;
return SCARD_F_UNKNOWN_ERROR;
}
/*
* @unimplemented
*/
LONG
WINAPI
SCardRemoveReaderFromGroupA(SCARDCONTEXT hContext,
LPCSTR szReaderName,
LPCSTR szGroupname)
{
UNIMPLEMENTED;
return SCARD_F_UNKNOWN_ERROR;
}
/*
* @unimplemented
*/
LONG
WINAPI
SCardRemoveReaderFromGroupW(SCARDCONTEXT hContext,
LPCWSTR szReaderName,
LPCWSTR szGroupname)
{
UNIMPLEMENTED;
return SCARD_F_UNKNOWN_ERROR;
}
/*
* @unimplemented
*/
LONG
WINAPI
SCardSetAttrib(SCARDHANDLE hCard,
DWORD dwAttrId,
LPCBYTE pbAttr,
DWORD cbAttrLen)
{
UNIMPLEMENTED;
return SCARD_F_UNKNOWN_ERROR;
}
/*
* @unimplemented
*/
LONG
WINAPI
SCardSetCardTypeProviderNameA(SCARDCONTEXT hContext,
LPCSTR szCardName,
DWORD dwProviderId,
LPCSTR szProvider)
{
UNIMPLEMENTED;
return SCARD_F_UNKNOWN_ERROR;
}
/*
* @unimplemented
*/
LONG
WINAPI
SCardSetCardTypeProviderNameW(SCARDCONTEXT hContext,
LPCWSTR szCardName,
DWORD dwProviderId,
LPCWSTR szProvider)
{
UNIMPLEMENTED;
return SCARD_F_UNKNOWN_ERROR;
}
/*
* @unimplemented
*/
LONG
WINAPI
SCardState(SCARDHANDLE hCard,
LPDWORD pdwState,
LPDWORD pdwProtocol,
LPBYTE pbAtr,
LPDWORD pcbAtrlen)
{
UNIMPLEMENTED;
return SCARD_F_UNKNOWN_ERROR;
}
/*
* @unimplemented
*/
LONG
WINAPI
SCardTransmit(SCARDHANDLE hCard,
LPCSCARD_IO_REQUEST pioSendPci,
LPCBYTE pbSendBuffer,
DWORD cbSendLength,
LPSCARD_IO_REQUEST pioRecvPci,
LPBYTE pbRecvBuffer,
LPDWORD pcbRecvLength)
{
UNIMPLEMENTED;
return SCARD_F_UNKNOWN_ERROR;
}

View file

@ -1,6 +1,5 @@
/*
* ReactOS SmartCard API
* Copyright (C) 2004 ReactOS Team
* Copyright 2007 Mounir IDRASSI (mounir.idrassi@idrix.fr, for IDRIX)
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
@ -14,843 +13,113 @@
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
* Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
*/
/*
* PROJECT: ReactOS SmartCard API
* FILE: lib/winscard/winscard.c
* PURPOSE: ReactOS SmartCard API
* PROGRAMMER: Thomas Weidenmueller <w3seek@reactos.com>
*
* UPDATE HISTORY:
* 11/07/2004 Created
*/
#include "precomp.h"
const SCARD_IO_REQUEST g_rgSCardT0Pci;
const SCARD_IO_REQUEST g_rgSCardT1Pci;
const SCARD_IO_REQUEST g_rgSCardRawPci;
#include <precomp.h>
/*
* @unimplemented
*/
HANDLE
WINAPI
SCardAccessStartedEvent(VOID)
#include <winternl.h>
static HANDLE g_startedEvent = NULL;
const SCARD_IO_REQUEST g_rgSCardT0Pci = { SCARD_PROTOCOL_T0, 8 };
const SCARD_IO_REQUEST g_rgSCardT1Pci = { SCARD_PROTOCOL_T1, 8 };
const SCARD_IO_REQUEST g_rgSCardRawPci = { SCARD_PROTOCOL_RAW, 8 };
BOOL WINAPI DllMain (HINSTANCE hinstDLL, DWORD fdwReason, LPVOID lpvReserved)
{
UNIMPLEMENTED;
SetLastError(ERROR_CALL_NOT_IMPLEMENTED);
return NULL;
TRACE("%p,%x,%p\n", hinstDLL, fdwReason, lpvReserved);
switch (fdwReason)
{
case DLL_PROCESS_ATTACH:
DisableThreadLibraryCalls(hinstDLL);
/* FIXME: for now, we act as if the pcsc daemon is always started */
g_startedEvent = CreateEventA(NULL,TRUE,TRUE,NULL);
break;
case DLL_PROCESS_DETACH:
if (lpvReserved) break;
CloseHandle(g_startedEvent);
break;
}
return TRUE;
}
/*
* @unimplemented
*/
LONG
WINAPI
SCardAddReaderToGroupA(SCARDCONTEXT hContext,
LPCSTR szReaderName,
LPCSTR szGroupName)
HANDLE WINAPI SCardAccessStartedEvent(void)
{
UNIMPLEMENTED;
return SCARD_F_UNKNOWN_ERROR;
return g_startedEvent;
}
/*
* @unimplemented
*/
LONG
WINAPI
SCardAddReaderToGroupW(SCARDCONTEXT hContext,
LPCWSTR szReaderName,
LPCWSTR szGroupName)
LONG WINAPI SCardAddReaderToGroupA(SCARDCONTEXT context, LPCSTR reader, LPCSTR group)
{
UNIMPLEMENTED;
return SCARD_F_UNKNOWN_ERROR;
LONG retval;
UNICODE_STRING readerW, groupW;
if(reader) RtlCreateUnicodeStringFromAsciiz(&readerW,reader);
else readerW.Buffer = NULL;
if(group) RtlCreateUnicodeStringFromAsciiz(&groupW,group);
else groupW.Buffer = NULL;
retval = SCardAddReaderToGroupW(context, readerW.Buffer, groupW.Buffer);
RtlFreeUnicodeString(&readerW);
RtlFreeUnicodeString(&groupW);
return retval;
}
/*
* @unimplemented
*/
LONG
WINAPI
SCardBeginTransaction(SCARDHANDLE hCard)
LONG WINAPI SCardAddReaderToGroupW(SCARDCONTEXT context, LPCWSTR reader, LPCWSTR group)
{
UNIMPLEMENTED;
return SCARD_F_UNKNOWN_ERROR;
FIXME("%x %s %s\n", (unsigned int) context, debugstr_w(reader), debugstr_w(group));
return SCARD_S_SUCCESS;
}
/*
* @unimplemented
*/
LONG
WINAPI
SCardCancel(SCARDCONTEXT hContext)
LONG WINAPI SCardEstablishContext(DWORD dwScope, LPCVOID pvReserved1,
LPCVOID pvReserved2, LPSCARDCONTEXT phContext)
{
UNIMPLEMENTED;
return SCARD_F_UNKNOWN_ERROR;
FIXME("(%x,%p,%p,%p) stub\n", dwScope, pvReserved1, pvReserved2, phContext);
SetLastError(ERROR_CALL_NOT_IMPLEMENTED);
return SCARD_F_INTERNAL_ERROR;
}
/*
* @unimplemented
*/
LONG
WINAPI
SCardConnectA(SCARDCONTEXT hContext,
LPCSTR szReader,
DWORD dwShareMode,
DWORD dwPreferredProtocols,
LPSCARDHANDLE phCard,
LPDWORD pdwActiveProtocol)
LONG WINAPI SCardIsValidContext(SCARDCONTEXT context)
{
UNIMPLEMENTED;
return SCARD_F_UNKNOWN_ERROR;
FIXME("(%lx) stub\n", context);
SetLastError(ERROR_CALL_NOT_IMPLEMENTED);
return SCARD_F_INTERNAL_ERROR;
}
/*
* @unimplemented
*/
LONG
WINAPI
SCardConnectW(SCARDCONTEXT hContext,
LPCWSTR szReader,
DWORD dwShareMode,
DWORD dwPreferredProtocols,
LPSCARDHANDLE phCard,
LPDWORD pdwActiveProtocol)
LONG WINAPI SCardListCardsA(SCARDCONTEXT hContext, LPCBYTE pbAtr, LPCGUID rgguidInterfaces, DWORD cguidInterfaceCount, LPSTR mszCards, LPDWORD pcchCards)
{
UNIMPLEMENTED;
return SCARD_F_UNKNOWN_ERROR;
FIXME(": stub\n");
SetLastError(ERROR_CALL_NOT_IMPLEMENTED);
return SCARD_F_INTERNAL_ERROR;
}
/*
* @unimplemented
*/
LONG
WINAPI
SCardControl(SCARDHANDLE hCard,
DWORD dwControlCode,
LPCVOID lpInBuffer,
DWORD nInBufferSize,
LPVOID lpOutBuffer,
DWORD nOutBufferSize,
LPDWORD lpBytesReturned)
LONG WINAPI SCardReleaseContext(SCARDCONTEXT context)
{
UNIMPLEMENTED;
return SCARD_F_UNKNOWN_ERROR;
FIXME("(%lx) stub\n", context);
SetLastError(ERROR_CALL_NOT_IMPLEMENTED);
return SCARD_F_INTERNAL_ERROR;
}
/*
* @unimplemented
*/
LONG
WINAPI
SCardDisconnect(SCARDHANDLE hCard,
DWORD dwDisposition)
LONG WINAPI SCardStatusA(SCARDHANDLE context, LPSTR szReaderName, LPDWORD pcchReaderLen, LPDWORD pdwState, LPDWORD pdwProtocol, LPBYTE pbAtr, LPDWORD pcbAtrLen)
{
UNIMPLEMENTED;
return SCARD_F_UNKNOWN_ERROR;
FIXME("(%lx) stub\n", context);
SetLastError(ERROR_CALL_NOT_IMPLEMENTED);
return SCARD_F_INTERNAL_ERROR;
}
/*
* @unimplemented
*/
LONG
WINAPI
SCardEndTransaction(SCARDHANDLE hCard,
DWORD dwDisposition)
LONG WINAPI SCardStatusW(SCARDHANDLE context, LPWSTR szReaderName, LPDWORD pcchReaderLen, LPDWORD pdwState,LPDWORD pdwProtocol,LPBYTE pbAtr,LPDWORD pcbArtLen)
{
UNIMPLEMENTED;
return SCARD_F_UNKNOWN_ERROR;
FIXME("(%lx) stub\n", context);
SetLastError(ERROR_CALL_NOT_IMPLEMENTED);
return SCARD_F_INTERNAL_ERROR;
}
/*
* @unimplemented
*/
LONG
WINAPI
SCardEstablishContext(DWORD dwScope,
LPCVOID pvReserved1,
LPCVOID pvReserved2,
LPSCARDCONTEXT phContext)
void WINAPI SCardReleaseStartedEvent(void)
{
UNIMPLEMENTED;
return SCARD_F_UNKNOWN_ERROR;
FIXME("stub\n");
}
/*
* @unimplemented
*/
LONG
WINAPI
SCardForgetCardTypeA(SCARDCONTEXT hContext,
LPCSTR szCardName)
{
UNIMPLEMENTED;
return SCARD_F_UNKNOWN_ERROR;
}
/*
* @unimplemented
*/
LONG
WINAPI
SCardForgetCardTypeW(SCARDCONTEXT hContext,
LPCWSTR szCardName)
{
UNIMPLEMENTED;
return SCARD_F_UNKNOWN_ERROR;
}
/*
* @unimplemented
*/
LONG
WINAPI
SCardForgetReaderA(SCARDCONTEXT hContext,
LPCSTR szReaderName)
{
UNIMPLEMENTED;
return SCARD_F_UNKNOWN_ERROR;
}
/*
* @unimplemented
*/
LONG
WINAPI
SCardForgetReaderW(SCARDCONTEXT hContext,
LPCWSTR szReaderName)
{
UNIMPLEMENTED;
return SCARD_F_UNKNOWN_ERROR;
}
/*
* @unimplemented
*/
LONG
WINAPI
SCardForgetReaderGroupA(SCARDCONTEXT hContext,
LPCSTR szGroupName)
{
UNIMPLEMENTED;
return SCARD_F_UNKNOWN_ERROR;
}
/*
* @unimplemented
*/
LONG
WINAPI
SCardForgetReaderGroupW(SCARDCONTEXT hContext,
LPCWSTR szGroupName)
{
UNIMPLEMENTED;
return SCARD_F_UNKNOWN_ERROR;
}
/*
* @unimplemented
*/
LONG
WINAPI
SCardFreeMemory(SCARDCONTEXT hContext,
LPCVOID pvMem)
{
UNIMPLEMENTED;
return SCARD_F_UNKNOWN_ERROR;
}
/*
* @unimplemented
*/
LONG
WINAPI
SCardGetAttrib(SCARDHANDLE hCard,
DWORD dwAttrId,
LPBYTE pbAttr,
LPDWORD pcbAttrLen)
{
UNIMPLEMENTED;
return SCARD_F_UNKNOWN_ERROR;
}
/*
* @unimplemented
*/
LONG
WINAPI
SCardGetCardTypeProviderNameA(SCARDCONTEXT hContext,
LPCSTR szCardName,
DWORD dwProviderId,
LPSTR szProvider,
LPDWORD pcchProvider)
{
UNIMPLEMENTED;
return SCARD_F_UNKNOWN_ERROR;
}
/*
* @unimplemented
*/
LONG
WINAPI
SCardGetCardTypeProviderNameW(SCARDCONTEXT hContext,
LPCWSTR szCardName,
DWORD dwProviderId,
LPWSTR szProvider,
LPDWORD pcchProvider)
{
UNIMPLEMENTED;
return SCARD_F_UNKNOWN_ERROR;
}
/*
* @unimplemented
*/
LONG
WINAPI
SCardGetProviderIdA(SCARDCONTEXT hContext,
LPCSTR szCard,
LPGUID pguidProviderId)
{
UNIMPLEMENTED;
return SCARD_F_UNKNOWN_ERROR;
}
/*
* @unimplemented
*/
LONG
WINAPI
SCardGetProviderIdW(SCARDCONTEXT hContext,
LPCWSTR szCard,
LPGUID pguidProviderId)
{
UNIMPLEMENTED;
return SCARD_F_UNKNOWN_ERROR;
}
/*
* @unimplemented
*/
LONG
WINAPI
SCardGetStatusChangeA(SCARDCONTEXT hContext,
DWORD dwTimeout,
LPSCARD_READERSTATEA rgReaderState,
DWORD cReaders)
{
UNIMPLEMENTED;
return SCARD_F_UNKNOWN_ERROR;
}
/*
* @unimplemented
*/
LONG
WINAPI
SCardGetStatusChangeW(SCARDCONTEXT hContext,
DWORD dwTimeout,
LPSCARD_READERSTATEW rgReaderState,
DWORD cReaders)
{
UNIMPLEMENTED;
return SCARD_F_UNKNOWN_ERROR;
}
/*
* @unimplemented
*/
LONG
WINAPI
SCardIntroduceCardTypeA(SCARDCONTEXT hContext,
LPCSTR szCardName,
LPCGUID pguidPrimaryProvider,
LPCGUID rgguidInterfaces,
DWORD dwInterfaceCount,
LPCBYTE pbAtr,
LPCBYTE pbAtrMask,
DWORD cbAtrLen)
{
UNIMPLEMENTED;
return SCARD_F_UNKNOWN_ERROR;
}
/*
* @unimplemented
*/
LONG
WINAPI
SCardIntroduceCardTypeW(SCARDCONTEXT hContext,
LPCWSTR szCardName,
LPCGUID pguidPrimaryProvider,
LPCGUID rgguidInterfaces,
DWORD dwInterfaceCount,
LPCBYTE pbAtr,
LPCBYTE pbAtrMask,
DWORD cbAtrLen)
{
UNIMPLEMENTED;
return SCARD_F_UNKNOWN_ERROR;
}
/*
* @unimplemented
*/
LONG
WINAPI
SCardIntroduceReaderA(SCARDCONTEXT hContext,
LPCSTR szReaderName,
LPCSTR szDeviceName)
{
UNIMPLEMENTED;
return SCARD_F_UNKNOWN_ERROR;
}
/*
* @unimplemented
*/
LONG
WINAPI
SCardIntroduceReaderW(SCARDCONTEXT hContext,
LPCWSTR szReaderName,
LPCWSTR szDeviceName)
{
UNIMPLEMENTED;
return SCARD_F_UNKNOWN_ERROR;
}
/*
* @unimplemented
*/
LONG
WINAPI
SCardIntroduceReaderGroupA(SCARDCONTEXT hContext,
LPCSTR szGroupName)
{
UNIMPLEMENTED;
return SCARD_F_UNKNOWN_ERROR;
}
/*
* @unimplemented
*/
LONG
WINAPI
SCardIntroduceReaderGroupW(SCARDCONTEXT hContext,
LPCWSTR szGroupName)
{
UNIMPLEMENTED;
return SCARD_F_UNKNOWN_ERROR;
}
/*
* @unimplemented
*/
LONG
WINAPI
SCardIsValidContext(SCARDCONTEXT hContext)
{
UNIMPLEMENTED;
return SCARD_F_UNKNOWN_ERROR;
}
/*
* @unimplemented
*/
LONG
WINAPI
SCardListCardsA(SCARDCONTEXT hContext,
LPCBYTE pbAtr,
LPCGUID rgguidInterface,
DWORD cguidInterfaceCount,
LPCSTR mszCards,
LPDWORD pcchCards)
{
UNIMPLEMENTED;
return SCARD_F_UNKNOWN_ERROR;
}
/*
* @unimplemented
*/
LONG
WINAPI
SCardListCardsW(SCARDCONTEXT hContext,
LPCBYTE pbAtr,
LPCGUID rgguidInterface,
DWORD cguidInterfaceCount,
LPCWSTR mszCards,
LPDWORD pcchCards)
{
UNIMPLEMENTED;
return SCARD_F_UNKNOWN_ERROR;
}
/*
* @unimplemented
*/
LONG
WINAPI
SCardListInterfacesA(SCARDCONTEXT hContext,
LPCSTR szCard,
LPGUID pguidInterfaces,
LPDWORD pcguidInteraces)
{
UNIMPLEMENTED;
return SCARD_F_UNKNOWN_ERROR;
}
/*
* @unimplemented
*/
LONG
WINAPI
SCardListInterfacesW(SCARDCONTEXT hContext,
LPCWSTR szCard,
LPGUID pguidInterfaces,
LPDWORD pcguidInteraces)
{
UNIMPLEMENTED;
return SCARD_F_UNKNOWN_ERROR;
}
/*
* @unimplemented
*/
LONG
WINAPI
SCardListReaderGroupsA(SCARDCONTEXT hContext,
LPSTR mszGroups,
LPDWORD pcchGroups)
{
UNIMPLEMENTED;
return SCARD_F_UNKNOWN_ERROR;
}
/*
* @unimplemented
*/
LONG
WINAPI
SCardListReaderGroupsW(SCARDCONTEXT hContext,
LPWSTR mszGroups,
LPDWORD pcchGroups)
{
UNIMPLEMENTED;
return SCARD_F_UNKNOWN_ERROR;
}
/*
* @unimplemented
*/
LONG
WINAPI
SCardListReadersA(SCARDCONTEXT Context,
LPCSTR mszGroups,
LPSTR mszReaders,
LPDWORD pcchReaders)
{
UNIMPLEMENTED;
return SCARD_F_UNKNOWN_ERROR;
}
/*
* @unimplemented
*/
LONG
WINAPI
SCardListReadersW(SCARDCONTEXT Context,
LPCWSTR mszGroups,
LPWSTR mszReaders,
LPDWORD pcchReaders)
{
UNIMPLEMENTED;
return SCARD_F_UNKNOWN_ERROR;
}
/*
* @unimplemented
*/
LONG
WINAPI
SCardLocateCardsA(SCARDCONTEXT hContext,
LPCSTR mszCards,
LPSCARD_READERSTATEA rgReaderStates,
DWORD cReaders)
{
UNIMPLEMENTED;
return SCARD_F_UNKNOWN_ERROR;
}
/*
* @unimplemented
*/
LONG
WINAPI
SCardLocateCardsW(SCARDCONTEXT hContext,
LPCWSTR mszCards,
LPSCARD_READERSTATEW rgReaderStates,
DWORD cReaders)
{
UNIMPLEMENTED;
return SCARD_F_UNKNOWN_ERROR;
}
/*
* @unimplemented
*/
LONG
WINAPI
SCardLocateCardsByATRA(SCARDCONTEXT hContext,
LPSCARD_ATRMASK rgAtrMasks,
DWORD cAtrs,
LPSCARD_READERSTATEA rgReaderStates,
DWORD cReaders)
{
UNIMPLEMENTED;
return SCARD_F_UNKNOWN_ERROR;
}
/*
* @unimplemented
*/
LONG
WINAPI
SCardLocateCardsByATRW(SCARDCONTEXT hContext,
LPSCARD_ATRMASK rgAtrMasks,
DWORD cAtrs,
LPSCARD_READERSTATEW rgReaderStates,
DWORD cReaders)
{
UNIMPLEMENTED;
return SCARD_F_UNKNOWN_ERROR;
}
/*
* @unimplemented
*/
LONG
WINAPI
SCardReconnect(SCARDHANDLE hCard,
DWORD dwShareMode,
DWORD dwPreferredProtocols,
DWORD dwInitialization,
LPDWORD pdwActiveProtocol)
{
UNIMPLEMENTED;
return SCARD_F_UNKNOWN_ERROR;
}
/*
* @unimplemented
*/
LONG
WINAPI
SCardReleaseContext(SCARDCONTEXT hContext)
{
UNIMPLEMENTED;
return SCARD_F_UNKNOWN_ERROR;
}
/*
* @unimplemented
*/
VOID
WINAPI
SCardReleaseStartedEvent(HANDLE hStartedEventHandle)
{
UNIMPLEMENTED;
}
/*
* @unimplemented
*/
LONG
WINAPI
SCardRemoveReaderFromGroupA(SCARDCONTEXT hContext,
LPCSTR szReaderName,
LPCSTR szGroupname)
{
UNIMPLEMENTED;
return SCARD_F_UNKNOWN_ERROR;
}
/*
* @unimplemented
*/
LONG
WINAPI
SCardRemoveReaderFromGroupW(SCARDCONTEXT hContext,
LPCWSTR szReaderName,
LPCWSTR szGroupname)
{
UNIMPLEMENTED;
return SCARD_F_UNKNOWN_ERROR;
}
/*
* @unimplemented
*/
LONG
WINAPI
SCardSetAttrib(SCARDHANDLE hCard,
DWORD dwAttrId,
LPCBYTE pbAttr,
DWORD cbAttrLen)
{
UNIMPLEMENTED;
return SCARD_F_UNKNOWN_ERROR;
}
/*
* @unimplemented
*/
LONG
WINAPI
SCardSetCardTypeProviderNameA(SCARDCONTEXT hContext,
LPCSTR szCardName,
DWORD dwProviderId,
LPCSTR szProvider)
{
UNIMPLEMENTED;
return SCARD_F_UNKNOWN_ERROR;
}
/*
* @unimplemented
*/
LONG
WINAPI
SCardSetCardTypeProviderNameW(SCARDCONTEXT hContext,
LPCWSTR szCardName,
DWORD dwProviderId,
LPCWSTR szProvider)
{
UNIMPLEMENTED;
return SCARD_F_UNKNOWN_ERROR;
}
/*
* @unimplemented
*/
LONG
WINAPI
SCardState(SCARDHANDLE hCard,
LPDWORD pdwState,
LPDWORD pdwProtocol,
LPBYTE pbAtr,
LPDWORD pcbAtrlen)
{
UNIMPLEMENTED;
return SCARD_F_UNKNOWN_ERROR;
}
/*
* @unimplemented
*/
LONG
WINAPI
SCardStatusA(SCARDHANDLE hCard,
LPSTR szReaderName,
LPDWORD pcchReaderLen,
LPDWORD pdwState,
LPDWORD pdwProtocol,
LPBYTE pbAtr,
LPDWORD pcbAtrLen)
{
UNIMPLEMENTED;
return SCARD_F_UNKNOWN_ERROR;
}
/*
* @unimplemented
*/
LONG
WINAPI
SCardStatusW(SCARDHANDLE hCard,
LPWSTR szReaderName,
LPDWORD pcchReaderLen,
LPDWORD pdwState,
LPDWORD pdwProtocol,
LPBYTE pbAtr,
LPDWORD pcbAtrLen)
{
UNIMPLEMENTED;
return SCARD_F_UNKNOWN_ERROR;
}
/*
* @unimplemented
*/
LONG
WINAPI
SCardTransmit(SCARDHANDLE hCard,
LPCSCARD_IO_REQUEST pioSendPci,
LPCBYTE pbSendBuffer,
DWORD cbSendLength,
LPSCARD_IO_REQUEST pioRecvPci,
LPBYTE pbRecvBuffer,
LPDWORD pcbRecvLength)
{
UNIMPLEMENTED;
return SCARD_F_UNKNOWN_ERROR;
}

View file

@ -1,68 +0,0 @@
LIBRARY winscard.dll
EXPORTS
;ClassInstall32@0 @1
;SCardAccessNewReaderEvent@0 @2
;SCardReleaseAllEvents@0 @3
;SCardReleaseNewReaderEvent@0 @4
SCardAccessStartedEvent@0 @5
SCardAddReaderToGroupA@12 @6
SCardAddReaderToGroupW@12 @7
SCardBeginTransaction@4 @8
SCardCancel@4 @9
SCardConnectA@24 @10
SCardConnectW@24 @11
SCardControl@28 @12
SCardDisconnect@8 @13
SCardEndTransaction@8 @14
SCardEstablishContext@16 @15
SCardForgetCardTypeA@8 @16
SCardForgetCardTypeW@8 @17
SCardForgetReaderA@8 @18
SCardForgetReaderGroupA@8 @19
SCardForgetReaderGroupW@8 @20
SCardForgetReaderW@8 @21
SCardFreeMemory@8 @22
SCardGetAttrib@16 @23
SCardGetCardTypeProviderNameA@20 @24
SCardGetCardTypeProviderNameW@20 @25
SCardGetProviderIdA@12 @26
SCardGetProviderIdW@12 @27
SCardGetStatusChangeA@16 @28
SCardGetStatusChangeW@16 @29
SCardIntroduceCardTypeA@32 @30
SCardIntroduceCardTypeW@32 @31
SCardIntroduceReaderA@12 @32
SCardIntroduceReaderGroupA@8 @33
SCardIntroduceReaderGroupW@8 @34
SCardIntroduceReaderW@12 @35
SCardIsValidContext@4 @36
SCardListCardsA@24 @37
SCardListCardsW@24 @38
SCardListInterfacesA@16 @39
SCardListInterfacesW@16 @40
SCardListReaderGroupsA@12 @41
SCardListReaderGroupsW@12 @42
SCardListReadersA@16 @43
SCardListReadersW@16 @44
SCardLocateCardsA@16 @45
SCardLocateCardsByATRA@20 @46
SCardLocateCardsByATRW@20 @47
SCardLocateCardsW@16 @48
SCardReconnect@20 @49
SCardReleaseContext@4 @50
SCardReleaseStartedEvent@4 @51
SCardRemoveReaderFromGroupA@12 @52
SCardRemoveReaderFromGroupW@12 @53
SCardSetAttrib@16 @54
SCardSetCardTypeProviderNameA@16 @55
SCardSetCardTypeProviderNameW@16 @56
SCardState@20 @57
SCardStatusA@28 @58
SCardStatusW@28 @59
SCardTransmit@28 @60
g_rgSCardRawPci @61 DATA
g_rgSCardT0Pci @62 DATA
g_rgSCardT1Pci @63 DATA
; EOF

View file

@ -0,0 +1,63 @@
@ stdcall -stub ClassInstall32(long ptr ptr)
@ stdcall -stub SCardAccessNewReaderEvent()
@ stdcall -stub SCardReleaseAllEvents()
@ stub SCardReleaseNewReaderEvent
@ stdcall SCardAccessStartedEvent()
@ stdcall SCardAddReaderToGroupA(long str str)
@ stdcall SCardAddReaderToGroupW(long wstr wstr)
@ stdcall SCardBeginTransaction(long)
@ stdcall SCardCancel(long)
@ stdcall SCardConnectA(long ptr long long ptr ptr)
@ stdcall SCardConnectW(long ptr long long ptr ptr)
@ stdcall SCardControl(long long ptr long ptr long ptr)
@ stdcall SCardDisconnect(long long)
@ stdcall SCardEndTransaction(long long)
@ stdcall SCardEstablishContext(long ptr ptr ptr)
@ stdcall SCardForgetCardTypeA(long ptr)
@ stdcall SCardForgetCardTypeW(long ptr)
@ stdcall SCardForgetReaderA(long ptr)
@ stdcall SCardForgetReaderGroupA(long ptr)
@ stdcall SCardForgetReaderGroupW(long ptr)
@ stdcall SCardForgetReaderW(long ptr)
@ stdcall SCardFreeMemory(long ptr)
@ stdcall SCardGetAttrib(long long ptr ptr)
@ stdcall SCardGetCardTypeProviderNameA(long ptr long ptr ptr)
@ stdcall SCardGetCardTypeProviderNameW(long ptr long ptr ptr)
@ stdcall SCardGetProviderIdA(long ptr ptr)
@ stdcall SCardGetProviderIdW(long ptr ptr)
@ stdcall SCardGetStatusChangeA(long long ptr long)
@ stdcall SCardGetStatusChangeW(long long ptr long)
@ stdcall SCardIntroduceCardTypeA(long ptr ptr ptr long ptr ptr long)
@ stdcall SCardIntroduceCardTypeW(long ptr ptr ptr long ptr ptr long)
@ stdcall SCardIntroduceReaderA(long ptr ptr)
@ stdcall SCardIntroduceReaderGroupA(long ptr)
@ stdcall SCardIntroduceReaderGroupW(long ptr)
@ stdcall SCardIntroduceReaderW(long ptr ptr)
@ stdcall SCardIsValidContext(long)
@ stdcall SCardListCardsA(long ptr ptr long str long)
@ stdcall SCardListCardsW(long ptr ptr long str long)
@ stdcall SCardListInterfacesA(long ptr ptr ptr)
@ stdcall SCardListInterfacesW(long ptr ptr ptr)
@ stdcall SCardListReaderGroupsA(long ptr ptr)
@ stdcall SCardListReaderGroupsW(long ptr ptr)
@ stdcall SCardListReadersA(long ptr ptr ptr)
@ stdcall SCardListReadersW(long ptr ptr ptr)
@ stdcall SCardLocateCardsA(long ptr ptr long)
@ stdcall SCardLocateCardsByATRA(long ptr long ptr long)
@ stdcall SCardLocateCardsByATRW(long ptr long ptr long)
@ stdcall SCardLocateCardsW(long ptr ptr long)
@ stdcall SCardReconnect(long long long long ptr)
@ stdcall SCardReleaseContext(long)
@ stdcall SCardReleaseStartedEvent()
@ stdcall SCardRemoveReaderFromGroupA(long ptr ptr)
@ stdcall SCardRemoveReaderFromGroupW(long ptr ptr)
@ stdcall SCardSetAttrib(long long ptr long)
@ stdcall SCardSetCardTypeProviderNameA(long ptr long ptr)
@ stdcall SCardSetCardTypeProviderNameW(long ptr long ptr)
@ stdcall SCardState(long ptr ptr ptr ptr)
@ stdcall SCardStatusA (long str long long long ptr long )
@ stdcall SCardStatusW (long wstr long long long ptr long )
@ stdcall SCardTransmit(long ptr ptr long ptr ptr ptr)
@ extern g_rgSCardRawPci
@ extern g_rgSCardT0Pci
@ extern g_rgSCardT1Pci

View file

@ -212,6 +212,7 @@ reactos/dll/win32/wininet # Synced to Wine-1.7.17
reactos/dll/win32/winmm # Forked at Wine-20050628
reactos/dll/win32/winmm/midimap # Forked at Wine-20050628
reactos/dll/win32/winmm/wavemap # Forked at Wine-20050628
reactos/dll/win32/winscard # Synced to Wine-1.7.17
reactos/dll/win32/wintrust # Synced to Wine-1.7.17
reactos/dll/win32/wldap32 # Synced to Wine-1.7.17
reactos/dll/win32/wmi # Synced to Wine-1.7.17