2004-11-07 15:37:41 +00:00
|
|
|
/*
|
|
|
|
* ReactOS SmartCard API
|
|
|
|
* Copyright (C) 2004 ReactOS Team
|
|
|
|
*
|
|
|
|
* This library is free software; you can redistribute it and/or
|
|
|
|
* modify it under the terms of the GNU Lesser General Public
|
|
|
|
* License as published by the Free Software Foundation; either
|
|
|
|
* version 2.1 of the License, or (at your option) any later version.
|
|
|
|
*
|
|
|
|
* This library is distributed in the hope that it will be useful,
|
|
|
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
|
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
|
|
|
* Lesser General Public License for more details.
|
|
|
|
*
|
|
|
|
* You should have received a copy of the GNU Lesser General Public
|
|
|
|
* License along with this library; if not, write to the Free Software
|
2009-10-27 10:34:16 +00:00
|
|
|
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
|
2004-11-07 15:37:41 +00:00
|
|
|
*/
|
2013-03-16 20:41:13 +00:00
|
|
|
/*
|
2004-11-07 15:37:41 +00:00
|
|
|
* 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;
|
|
|
|
|
|
|
|
/*
|
|
|
|
* @unimplemented
|
|
|
|
*/
|
|
|
|
HANDLE
|
2008-11-30 11:42:05 +00:00
|
|
|
WINAPI
|
2004-11-07 15:37:41 +00:00
|
|
|
SCardAccessStartedEvent(VOID)
|
|
|
|
{
|
|
|
|
UNIMPLEMENTED;
|
|
|
|
SetLastError(ERROR_CALL_NOT_IMPLEMENTED);
|
|
|
|
return NULL;
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
/*
|
|
|
|
* @unimplemented
|
|
|
|
*/
|
|
|
|
LONG
|
2008-11-30 11:42:05 +00:00
|
|
|
WINAPI
|
2004-11-07 15:37:41 +00:00
|
|
|
SCardAddReaderToGroupA(SCARDCONTEXT hContext,
|
|
|
|
LPCSTR szReaderName,
|
|
|
|
LPCSTR szGroupName)
|
|
|
|
{
|
|
|
|
UNIMPLEMENTED;
|
|
|
|
return SCARD_F_UNKNOWN_ERROR;
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
/*
|
|
|
|
* @unimplemented
|
|
|
|
*/
|
|
|
|
LONG
|
2008-11-30 11:42:05 +00:00
|
|
|
WINAPI
|
2004-11-07 15:37:41 +00:00
|
|
|
SCardAddReaderToGroupW(SCARDCONTEXT hContext,
|
|
|
|
LPCWSTR szReaderName,
|
|
|
|
LPCWSTR szGroupName)
|
|
|
|
{
|
|
|
|
UNIMPLEMENTED;
|
|
|
|
return SCARD_F_UNKNOWN_ERROR;
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
/*
|
|
|
|
* @unimplemented
|
|
|
|
*/
|
|
|
|
LONG
|
2008-11-30 11:42:05 +00:00
|
|
|
WINAPI
|
2004-11-07 15:37:41 +00:00
|
|
|
SCardBeginTransaction(SCARDHANDLE hCard)
|
|
|
|
{
|
|
|
|
UNIMPLEMENTED;
|
|
|
|
return SCARD_F_UNKNOWN_ERROR;
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
/*
|
|
|
|
* @unimplemented
|
|
|
|
*/
|
|
|
|
LONG
|
2008-11-30 11:42:05 +00:00
|
|
|
WINAPI
|
2004-11-07 15:37:41 +00:00
|
|
|
SCardCancel(SCARDCONTEXT hContext)
|
|
|
|
{
|
|
|
|
UNIMPLEMENTED;
|
|
|
|
return SCARD_F_UNKNOWN_ERROR;
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
/*
|
|
|
|
* @unimplemented
|
|
|
|
*/
|
|
|
|
LONG
|
2008-11-30 11:42:05 +00:00
|
|
|
WINAPI
|
2004-11-07 15:37:41 +00:00
|
|
|
SCardConnectA(SCARDCONTEXT hContext,
|
|
|
|
LPCSTR szReader,
|
|
|
|
DWORD dwShareMode,
|
|
|
|
DWORD dwPreferredProtocols,
|
|
|
|
LPSCARDHANDLE phCard,
|
|
|
|
LPDWORD pdwActiveProtocol)
|
|
|
|
{
|
|
|
|
UNIMPLEMENTED;
|
|
|
|
return SCARD_F_UNKNOWN_ERROR;
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
/*
|
|
|
|
* @unimplemented
|
|
|
|
*/
|
|
|
|
LONG
|
2008-11-30 11:42:05 +00:00
|
|
|
WINAPI
|
2004-11-07 15:37:41 +00:00
|
|
|
SCardConnectW(SCARDCONTEXT hContext,
|
|
|
|
LPCWSTR szReader,
|
|
|
|
DWORD dwShareMode,
|
|
|
|
DWORD dwPreferredProtocols,
|
|
|
|
LPSCARDHANDLE phCard,
|
|
|
|
LPDWORD pdwActiveProtocol)
|
|
|
|
{
|
|
|
|
UNIMPLEMENTED;
|
|
|
|
return SCARD_F_UNKNOWN_ERROR;
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
/*
|
|
|
|
* @unimplemented
|
|
|
|
*/
|
|
|
|
LONG
|
2008-11-30 11:42:05 +00:00
|
|
|
WINAPI
|
2004-11-07 15:37:41 +00:00
|
|
|
SCardControl(SCARDHANDLE hCard,
|
|
|
|
DWORD dwControlCode,
|
|
|
|
LPCVOID lpInBuffer,
|
|
|
|
DWORD nInBufferSize,
|
|
|
|
LPVOID lpOutBuffer,
|
|
|
|
DWORD nOutBufferSize,
|
|
|
|
LPDWORD lpBytesReturned)
|
|
|
|
{
|
|
|
|
UNIMPLEMENTED;
|
|
|
|
return SCARD_F_UNKNOWN_ERROR;
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
/*
|
|
|
|
* @unimplemented
|
|
|
|
*/
|
|
|
|
LONG
|
2008-11-30 11:42:05 +00:00
|
|
|
WINAPI
|
2004-11-07 15:37:41 +00:00
|
|
|
SCardDisconnect(SCARDHANDLE hCard,
|
|
|
|
DWORD dwDisposition)
|
|
|
|
{
|
|
|
|
UNIMPLEMENTED;
|
|
|
|
return SCARD_F_UNKNOWN_ERROR;
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
/*
|
|
|
|
* @unimplemented
|
|
|
|
*/
|
|
|
|
LONG
|
2008-11-30 11:42:05 +00:00
|
|
|
WINAPI
|
2004-11-07 15:37:41 +00:00
|
|
|
SCardEndTransaction(SCARDHANDLE hCard,
|
|
|
|
DWORD dwDisposition)
|
|
|
|
{
|
|
|
|
UNIMPLEMENTED;
|
|
|
|
return SCARD_F_UNKNOWN_ERROR;
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
/*
|
|
|
|
* @unimplemented
|
|
|
|
*/
|
|
|
|
LONG
|
2008-11-30 11:42:05 +00:00
|
|
|
WINAPI
|
2004-11-07 15:37:41 +00:00
|
|
|
SCardEstablishContext(DWORD dwScope,
|
|
|
|
LPCVOID pvReserved1,
|
|
|
|
LPCVOID pvReserved2,
|
|
|
|
LPSCARDCONTEXT phContext)
|
|
|
|
{
|
|
|
|
UNIMPLEMENTED;
|
|
|
|
return SCARD_F_UNKNOWN_ERROR;
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
/*
|
|
|
|
* @unimplemented
|
|
|
|
*/
|
|
|
|
LONG
|
2008-11-30 11:42:05 +00:00
|
|
|
WINAPI
|
2004-11-07 15:37:41 +00:00
|
|
|
SCardForgetCardTypeA(SCARDCONTEXT hContext,
|
|
|
|
LPCSTR szCardName)
|
|
|
|
{
|
|
|
|
UNIMPLEMENTED;
|
|
|
|
return SCARD_F_UNKNOWN_ERROR;
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
/*
|
|
|
|
* @unimplemented
|
|
|
|
*/
|
|
|
|
LONG
|
2008-11-30 11:42:05 +00:00
|
|
|
WINAPI
|
2004-11-07 15:37:41 +00:00
|
|
|
SCardForgetCardTypeW(SCARDCONTEXT hContext,
|
|
|
|
LPCWSTR szCardName)
|
|
|
|
{
|
|
|
|
UNIMPLEMENTED;
|
|
|
|
return SCARD_F_UNKNOWN_ERROR;
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
/*
|
|
|
|
* @unimplemented
|
|
|
|
*/
|
|
|
|
LONG
|
2008-11-30 11:42:05 +00:00
|
|
|
WINAPI
|
2004-11-07 15:37:41 +00:00
|
|
|
SCardForgetReaderA(SCARDCONTEXT hContext,
|
|
|
|
LPCSTR szReaderName)
|
|
|
|
{
|
|
|
|
UNIMPLEMENTED;
|
|
|
|
return SCARD_F_UNKNOWN_ERROR;
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
/*
|
|
|
|
* @unimplemented
|
|
|
|
*/
|
|
|
|
LONG
|
2008-11-30 11:42:05 +00:00
|
|
|
WINAPI
|
2004-11-07 15:37:41 +00:00
|
|
|
SCardForgetReaderW(SCARDCONTEXT hContext,
|
|
|
|
LPCWSTR szReaderName)
|
|
|
|
{
|
|
|
|
UNIMPLEMENTED;
|
|
|
|
return SCARD_F_UNKNOWN_ERROR;
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
/*
|
|
|
|
* @unimplemented
|
|
|
|
*/
|
|
|
|
LONG
|
2008-11-30 11:42:05 +00:00
|
|
|
WINAPI
|
2004-11-07 15:37:41 +00:00
|
|
|
SCardForgetReaderGroupA(SCARDCONTEXT hContext,
|
|
|
|
LPCSTR szGroupName)
|
|
|
|
{
|
|
|
|
UNIMPLEMENTED;
|
|
|
|
return SCARD_F_UNKNOWN_ERROR;
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
/*
|
|
|
|
* @unimplemented
|
|
|
|
*/
|
|
|
|
LONG
|
2008-11-30 11:42:05 +00:00
|
|
|
WINAPI
|
2004-11-07 15:37:41 +00:00
|
|
|
SCardForgetReaderGroupW(SCARDCONTEXT hContext,
|
|
|
|
LPCWSTR szGroupName)
|
|
|
|
{
|
|
|
|
UNIMPLEMENTED;
|
|
|
|
return SCARD_F_UNKNOWN_ERROR;
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
/*
|
|
|
|
* @unimplemented
|
|
|
|
*/
|
|
|
|
LONG
|
2008-11-30 11:42:05 +00:00
|
|
|
WINAPI
|
2004-11-07 15:37:41 +00:00
|
|
|
SCardFreeMemory(SCARDCONTEXT hContext,
|
|
|
|
LPCVOID pvMem)
|
|
|
|
{
|
|
|
|
UNIMPLEMENTED;
|
|
|
|
return SCARD_F_UNKNOWN_ERROR;
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
/*
|
|
|
|
* @unimplemented
|
|
|
|
*/
|
|
|
|
LONG
|
2008-11-30 11:42:05 +00:00
|
|
|
WINAPI
|
2004-11-07 15:37:41 +00:00
|
|
|
SCardGetAttrib(SCARDHANDLE hCard,
|
|
|
|
DWORD dwAttrId,
|
|
|
|
LPBYTE pbAttr,
|
|
|
|
LPDWORD pcbAttrLen)
|
|
|
|
{
|
|
|
|
UNIMPLEMENTED;
|
|
|
|
return SCARD_F_UNKNOWN_ERROR;
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
/*
|
|
|
|
* @unimplemented
|
|
|
|
*/
|
|
|
|
LONG
|
2008-11-30 11:42:05 +00:00
|
|
|
WINAPI
|
2004-11-07 15:37:41 +00:00
|
|
|
SCardGetCardTypeProviderNameA(SCARDCONTEXT hContext,
|
|
|
|
LPCSTR szCardName,
|
|
|
|
DWORD dwProviderId,
|
|
|
|
LPSTR szProvider,
|
|
|
|
LPDWORD pcchProvider)
|
|
|
|
{
|
|
|
|
UNIMPLEMENTED;
|
|
|
|
return SCARD_F_UNKNOWN_ERROR;
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
/*
|
|
|
|
* @unimplemented
|
|
|
|
*/
|
|
|
|
LONG
|
2008-11-30 11:42:05 +00:00
|
|
|
WINAPI
|
2004-11-07 15:37:41 +00:00
|
|
|
SCardGetCardTypeProviderNameW(SCARDCONTEXT hContext,
|
|
|
|
LPCWSTR szCardName,
|
|
|
|
DWORD dwProviderId,
|
|
|
|
LPWSTR szProvider,
|
|
|
|
LPDWORD pcchProvider)
|
|
|
|
{
|
|
|
|
UNIMPLEMENTED;
|
|
|
|
return SCARD_F_UNKNOWN_ERROR;
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
/*
|
|
|
|
* @unimplemented
|
|
|
|
*/
|
|
|
|
LONG
|
2008-11-30 11:42:05 +00:00
|
|
|
WINAPI
|
2004-11-07 15:37:41 +00:00
|
|
|
SCardGetProviderIdA(SCARDCONTEXT hContext,
|
|
|
|
LPCSTR szCard,
|
|
|
|
LPGUID pguidProviderId)
|
|
|
|
{
|
|
|
|
UNIMPLEMENTED;
|
|
|
|
return SCARD_F_UNKNOWN_ERROR;
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
/*
|
|
|
|
* @unimplemented
|
|
|
|
*/
|
|
|
|
LONG
|
2008-11-30 11:42:05 +00:00
|
|
|
WINAPI
|
2004-11-07 15:37:41 +00:00
|
|
|
SCardGetProviderIdW(SCARDCONTEXT hContext,
|
|
|
|
LPCWSTR szCard,
|
|
|
|
LPGUID pguidProviderId)
|
|
|
|
{
|
|
|
|
UNIMPLEMENTED;
|
|
|
|
return SCARD_F_UNKNOWN_ERROR;
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
/*
|
|
|
|
* @unimplemented
|
|
|
|
*/
|
|
|
|
LONG
|
2008-11-30 11:42:05 +00:00
|
|
|
WINAPI
|
2004-11-07 15:37:41 +00:00
|
|
|
SCardGetStatusChangeA(SCARDCONTEXT hContext,
|
|
|
|
DWORD dwTimeout,
|
|
|
|
LPSCARD_READERSTATEA rgReaderState,
|
|
|
|
DWORD cReaders)
|
|
|
|
{
|
|
|
|
UNIMPLEMENTED;
|
|
|
|
return SCARD_F_UNKNOWN_ERROR;
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
/*
|
|
|
|
* @unimplemented
|
|
|
|
*/
|
|
|
|
LONG
|
2008-11-30 11:42:05 +00:00
|
|
|
WINAPI
|
2004-11-07 15:37:41 +00:00
|
|
|
SCardGetStatusChangeW(SCARDCONTEXT hContext,
|
|
|
|
DWORD dwTimeout,
|
|
|
|
LPSCARD_READERSTATEW rgReaderState,
|
|
|
|
DWORD cReaders)
|
|
|
|
{
|
|
|
|
UNIMPLEMENTED;
|
|
|
|
return SCARD_F_UNKNOWN_ERROR;
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
/*
|
|
|
|
* @unimplemented
|
|
|
|
*/
|
|
|
|
LONG
|
2008-11-30 11:42:05 +00:00
|
|
|
WINAPI
|
2004-11-07 15:37:41 +00:00
|
|
|
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
|
2008-11-30 11:42:05 +00:00
|
|
|
WINAPI
|
2004-11-07 15:37:41 +00:00
|
|
|
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
|
2008-11-30 11:42:05 +00:00
|
|
|
WINAPI
|
2004-11-07 15:37:41 +00:00
|
|
|
SCardIntroduceReaderA(SCARDCONTEXT hContext,
|
|
|
|
LPCSTR szReaderName,
|
|
|
|
LPCSTR szDeviceName)
|
|
|
|
{
|
|
|
|
UNIMPLEMENTED;
|
|
|
|
return SCARD_F_UNKNOWN_ERROR;
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
/*
|
|
|
|
* @unimplemented
|
|
|
|
*/
|
|
|
|
LONG
|
2008-11-30 11:42:05 +00:00
|
|
|
WINAPI
|
2004-11-07 15:37:41 +00:00
|
|
|
SCardIntroduceReaderW(SCARDCONTEXT hContext,
|
|
|
|
LPCWSTR szReaderName,
|
|
|
|
LPCWSTR szDeviceName)
|
|
|
|
{
|
|
|
|
UNIMPLEMENTED;
|
|
|
|
return SCARD_F_UNKNOWN_ERROR;
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
/*
|
|
|
|
* @unimplemented
|
|
|
|
*/
|
|
|
|
LONG
|
2008-11-30 11:42:05 +00:00
|
|
|
WINAPI
|
2004-11-07 15:37:41 +00:00
|
|
|
SCardIntroduceReaderGroupA(SCARDCONTEXT hContext,
|
|
|
|
LPCSTR szGroupName)
|
|
|
|
{
|
|
|
|
UNIMPLEMENTED;
|
|
|
|
return SCARD_F_UNKNOWN_ERROR;
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
/*
|
|
|
|
* @unimplemented
|
|
|
|
*/
|
|
|
|
LONG
|
2008-11-30 11:42:05 +00:00
|
|
|
WINAPI
|
2004-11-07 15:37:41 +00:00
|
|
|
SCardIntroduceReaderGroupW(SCARDCONTEXT hContext,
|
|
|
|
LPCWSTR szGroupName)
|
|
|
|
{
|
|
|
|
UNIMPLEMENTED;
|
|
|
|
return SCARD_F_UNKNOWN_ERROR;
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
/*
|
|
|
|
* @unimplemented
|
|
|
|
*/
|
|
|
|
LONG
|
2008-11-30 11:42:05 +00:00
|
|
|
WINAPI
|
2004-11-07 15:37:41 +00:00
|
|
|
SCardIsValidContext(SCARDCONTEXT hContext)
|
|
|
|
{
|
|
|
|
UNIMPLEMENTED;
|
|
|
|
return SCARD_F_UNKNOWN_ERROR;
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
/*
|
|
|
|
* @unimplemented
|
|
|
|
*/
|
|
|
|
LONG
|
2008-11-30 11:42:05 +00:00
|
|
|
WINAPI
|
2004-11-07 15:37:41 +00:00
|
|
|
SCardListCardsA(SCARDCONTEXT hContext,
|
|
|
|
LPCBYTE pbAtr,
|
|
|
|
LPCGUID rgguidInterface,
|
|
|
|
DWORD cguidInterfaceCount,
|
|
|
|
LPCSTR mszCards,
|
|
|
|
LPDWORD pcchCards)
|
|
|
|
{
|
|
|
|
UNIMPLEMENTED;
|
|
|
|
return SCARD_F_UNKNOWN_ERROR;
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
/*
|
|
|
|
* @unimplemented
|
|
|
|
*/
|
|
|
|
LONG
|
2008-11-30 11:42:05 +00:00
|
|
|
WINAPI
|
2004-11-07 15:37:41 +00:00
|
|
|
SCardListCardsW(SCARDCONTEXT hContext,
|
|
|
|
LPCBYTE pbAtr,
|
|
|
|
LPCGUID rgguidInterface,
|
|
|
|
DWORD cguidInterfaceCount,
|
|
|
|
LPCWSTR mszCards,
|
|
|
|
LPDWORD pcchCards)
|
|
|
|
{
|
|
|
|
UNIMPLEMENTED;
|
|
|
|
return SCARD_F_UNKNOWN_ERROR;
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
/*
|
|
|
|
* @unimplemented
|
|
|
|
*/
|
|
|
|
LONG
|
2008-11-30 11:42:05 +00:00
|
|
|
WINAPI
|
2004-11-07 15:37:41 +00:00
|
|
|
SCardListInterfacesA(SCARDCONTEXT hContext,
|
|
|
|
LPCSTR szCard,
|
|
|
|
LPGUID pguidInterfaces,
|
|
|
|
LPDWORD pcguidInteraces)
|
|
|
|
{
|
|
|
|
UNIMPLEMENTED;
|
|
|
|
return SCARD_F_UNKNOWN_ERROR;
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
/*
|
|
|
|
* @unimplemented
|
|
|
|
*/
|
|
|
|
LONG
|
2008-11-30 11:42:05 +00:00
|
|
|
WINAPI
|
2004-11-07 15:37:41 +00:00
|
|
|
SCardListInterfacesW(SCARDCONTEXT hContext,
|
|
|
|
LPCWSTR szCard,
|
|
|
|
LPGUID pguidInterfaces,
|
|
|
|
LPDWORD pcguidInteraces)
|
|
|
|
{
|
|
|
|
UNIMPLEMENTED;
|
|
|
|
return SCARD_F_UNKNOWN_ERROR;
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
/*
|
|
|
|
* @unimplemented
|
|
|
|
*/
|
|
|
|
LONG
|
2008-11-30 11:42:05 +00:00
|
|
|
WINAPI
|
2004-11-07 15:37:41 +00:00
|
|
|
SCardListReaderGroupsA(SCARDCONTEXT hContext,
|
|
|
|
LPSTR mszGroups,
|
|
|
|
LPDWORD pcchGroups)
|
|
|
|
{
|
|
|
|
UNIMPLEMENTED;
|
|
|
|
return SCARD_F_UNKNOWN_ERROR;
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
/*
|
|
|
|
* @unimplemented
|
|
|
|
*/
|
|
|
|
LONG
|
2008-11-30 11:42:05 +00:00
|
|
|
WINAPI
|
2004-11-07 15:37:41 +00:00
|
|
|
SCardListReaderGroupsW(SCARDCONTEXT hContext,
|
|
|
|
LPWSTR mszGroups,
|
|
|
|
LPDWORD pcchGroups)
|
|
|
|
{
|
|
|
|
UNIMPLEMENTED;
|
|
|
|
return SCARD_F_UNKNOWN_ERROR;
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
/*
|
|
|
|
* @unimplemented
|
|
|
|
*/
|
|
|
|
LONG
|
2008-11-30 11:42:05 +00:00
|
|
|
WINAPI
|
2004-11-07 15:37:41 +00:00
|
|
|
SCardListReadersA(SCARDCONTEXT Context,
|
|
|
|
LPCSTR mszGroups,
|
|
|
|
LPSTR mszReaders,
|
|
|
|
LPDWORD pcchReaders)
|
|
|
|
{
|
|
|
|
UNIMPLEMENTED;
|
|
|
|
return SCARD_F_UNKNOWN_ERROR;
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
/*
|
|
|
|
* @unimplemented
|
|
|
|
*/
|
|
|
|
LONG
|
2008-11-30 11:42:05 +00:00
|
|
|
WINAPI
|
2004-11-07 15:37:41 +00:00
|
|
|
SCardListReadersW(SCARDCONTEXT Context,
|
|
|
|
LPCWSTR mszGroups,
|
|
|
|
LPWSTR mszReaders,
|
|
|
|
LPDWORD pcchReaders)
|
|
|
|
{
|
|
|
|
UNIMPLEMENTED;
|
|
|
|
return SCARD_F_UNKNOWN_ERROR;
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
/*
|
|
|
|
* @unimplemented
|
|
|
|
*/
|
|
|
|
LONG
|
2008-11-30 11:42:05 +00:00
|
|
|
WINAPI
|
2004-11-07 15:37:41 +00:00
|
|
|
SCardLocateCardsA(SCARDCONTEXT hContext,
|
|
|
|
LPCSTR mszCards,
|
|
|
|
LPSCARD_READERSTATEA rgReaderStates,
|
|
|
|
DWORD cReaders)
|
|
|
|
{
|
|
|
|
UNIMPLEMENTED;
|
|
|
|
return SCARD_F_UNKNOWN_ERROR;
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
/*
|
|
|
|
* @unimplemented
|
|
|
|
*/
|
|
|
|
LONG
|
2008-11-30 11:42:05 +00:00
|
|
|
WINAPI
|
2004-11-07 15:37:41 +00:00
|
|
|
SCardLocateCardsW(SCARDCONTEXT hContext,
|
|
|
|
LPCWSTR mszCards,
|
|
|
|
LPSCARD_READERSTATEW rgReaderStates,
|
|
|
|
DWORD cReaders)
|
|
|
|
{
|
|
|
|
UNIMPLEMENTED;
|
|
|
|
return SCARD_F_UNKNOWN_ERROR;
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
/*
|
|
|
|
* @unimplemented
|
|
|
|
*/
|
|
|
|
LONG
|
2008-11-30 11:42:05 +00:00
|
|
|
WINAPI
|
2004-11-07 15:37:41 +00:00
|
|
|
SCardLocateCardsByATRA(SCARDCONTEXT hContext,
|
|
|
|
LPSCARD_ATRMASK rgAtrMasks,
|
|
|
|
DWORD cAtrs,
|
|
|
|
LPSCARD_READERSTATEA rgReaderStates,
|
|
|
|
DWORD cReaders)
|
|
|
|
{
|
|
|
|
UNIMPLEMENTED;
|
|
|
|
return SCARD_F_UNKNOWN_ERROR;
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
/*
|
|
|
|
* @unimplemented
|
|
|
|
*/
|
|
|
|
LONG
|
2008-11-30 11:42:05 +00:00
|
|
|
WINAPI
|
2004-11-07 15:37:41 +00:00
|
|
|
SCardLocateCardsByATRW(SCARDCONTEXT hContext,
|
|
|
|
LPSCARD_ATRMASK rgAtrMasks,
|
|
|
|
DWORD cAtrs,
|
|
|
|
LPSCARD_READERSTATEW rgReaderStates,
|
|
|
|
DWORD cReaders)
|
|
|
|
{
|
|
|
|
UNIMPLEMENTED;
|
|
|
|
return SCARD_F_UNKNOWN_ERROR;
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
/*
|
|
|
|
* @unimplemented
|
|
|
|
*/
|
|
|
|
LONG
|
2008-11-30 11:42:05 +00:00
|
|
|
WINAPI
|
2004-11-07 15:37:41 +00:00
|
|
|
SCardReconnect(SCARDHANDLE hCard,
|
|
|
|
DWORD dwShareMode,
|
|
|
|
DWORD dwPreferredProtocols,
|
|
|
|
DWORD dwInitialization,
|
|
|
|
LPDWORD pdwActiveProtocol)
|
|
|
|
{
|
|
|
|
UNIMPLEMENTED;
|
|
|
|
return SCARD_F_UNKNOWN_ERROR;
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
/*
|
|
|
|
* @unimplemented
|
|
|
|
*/
|
|
|
|
LONG
|
2008-11-30 11:42:05 +00:00
|
|
|
WINAPI
|
2004-11-07 15:37:41 +00:00
|
|
|
SCardReleaseContext(SCARDCONTEXT hContext)
|
|
|
|
{
|
|
|
|
UNIMPLEMENTED;
|
|
|
|
return SCARD_F_UNKNOWN_ERROR;
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
/*
|
|
|
|
* @unimplemented
|
|
|
|
*/
|
|
|
|
VOID
|
2008-11-30 11:42:05 +00:00
|
|
|
WINAPI
|
2004-11-07 15:37:41 +00:00
|
|
|
SCardReleaseStartedEvent(HANDLE hStartedEventHandle)
|
|
|
|
{
|
|
|
|
UNIMPLEMENTED;
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
/*
|
|
|
|
* @unimplemented
|
|
|
|
*/
|
|
|
|
LONG
|
2008-11-30 11:42:05 +00:00
|
|
|
WINAPI
|
2004-11-07 15:37:41 +00:00
|
|
|
SCardRemoveReaderFromGroupA(SCARDCONTEXT hContext,
|
|
|
|
LPCSTR szReaderName,
|
|
|
|
LPCSTR szGroupname)
|
|
|
|
{
|
|
|
|
UNIMPLEMENTED;
|
|
|
|
return SCARD_F_UNKNOWN_ERROR;
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
/*
|
|
|
|
* @unimplemented
|
|
|
|
*/
|
|
|
|
LONG
|
2008-11-30 11:42:05 +00:00
|
|
|
WINAPI
|
2004-11-07 15:37:41 +00:00
|
|
|
SCardRemoveReaderFromGroupW(SCARDCONTEXT hContext,
|
|
|
|
LPCWSTR szReaderName,
|
|
|
|
LPCWSTR szGroupname)
|
|
|
|
{
|
|
|
|
UNIMPLEMENTED;
|
|
|
|
return SCARD_F_UNKNOWN_ERROR;
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
/*
|
|
|
|
* @unimplemented
|
|
|
|
*/
|
|
|
|
LONG
|
2008-11-30 11:42:05 +00:00
|
|
|
WINAPI
|
2004-11-07 15:37:41 +00:00
|
|
|
SCardSetAttrib(SCARDHANDLE hCard,
|
|
|
|
DWORD dwAttrId,
|
|
|
|
LPCBYTE pbAttr,
|
|
|
|
DWORD cbAttrLen)
|
|
|
|
{
|
|
|
|
UNIMPLEMENTED;
|
|
|
|
return SCARD_F_UNKNOWN_ERROR;
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
/*
|
|
|
|
* @unimplemented
|
|
|
|
*/
|
|
|
|
LONG
|
2008-11-30 11:42:05 +00:00
|
|
|
WINAPI
|
2004-11-07 15:37:41 +00:00
|
|
|
SCardSetCardTypeProviderNameA(SCARDCONTEXT hContext,
|
|
|
|
LPCSTR szCardName,
|
|
|
|
DWORD dwProviderId,
|
|
|
|
LPCSTR szProvider)
|
|
|
|
{
|
|
|
|
UNIMPLEMENTED;
|
|
|
|
return SCARD_F_UNKNOWN_ERROR;
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
/*
|
|
|
|
* @unimplemented
|
|
|
|
*/
|
|
|
|
LONG
|
2008-11-30 11:42:05 +00:00
|
|
|
WINAPI
|
2004-11-07 15:37:41 +00:00
|
|
|
SCardSetCardTypeProviderNameW(SCARDCONTEXT hContext,
|
|
|
|
LPCWSTR szCardName,
|
|
|
|
DWORD dwProviderId,
|
|
|
|
LPCWSTR szProvider)
|
|
|
|
{
|
|
|
|
UNIMPLEMENTED;
|
|
|
|
return SCARD_F_UNKNOWN_ERROR;
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
/*
|
|
|
|
* @unimplemented
|
|
|
|
*/
|
|
|
|
LONG
|
2008-11-30 11:42:05 +00:00
|
|
|
WINAPI
|
2004-11-07 15:37:41 +00:00
|
|
|
SCardState(SCARDHANDLE hCard,
|
|
|
|
LPDWORD pdwState,
|
|
|
|
LPDWORD pdwProtocol,
|
|
|
|
LPBYTE pbAtr,
|
|
|
|
LPDWORD pcbAtrlen)
|
|
|
|
{
|
|
|
|
UNIMPLEMENTED;
|
|
|
|
return SCARD_F_UNKNOWN_ERROR;
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
/*
|
|
|
|
* @unimplemented
|
|
|
|
*/
|
|
|
|
LONG
|
2008-11-30 11:42:05 +00:00
|
|
|
WINAPI
|
2004-11-07 15:37:41 +00:00
|
|
|
SCardStatusA(SCARDHANDLE hCard,
|
|
|
|
LPSTR szReaderName,
|
|
|
|
LPDWORD pcchReaderLen,
|
|
|
|
LPDWORD pdwState,
|
|
|
|
LPDWORD pdwProtocol,
|
|
|
|
LPBYTE pbAtr,
|
|
|
|
LPDWORD pcbAtrLen)
|
|
|
|
{
|
|
|
|
UNIMPLEMENTED;
|
|
|
|
return SCARD_F_UNKNOWN_ERROR;
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
/*
|
|
|
|
* @unimplemented
|
|
|
|
*/
|
|
|
|
LONG
|
2008-11-30 11:42:05 +00:00
|
|
|
WINAPI
|
2004-11-07 15:37:41 +00:00
|
|
|
SCardStatusW(SCARDHANDLE hCard,
|
|
|
|
LPWSTR szReaderName,
|
|
|
|
LPDWORD pcchReaderLen,
|
|
|
|
LPDWORD pdwState,
|
|
|
|
LPDWORD pdwProtocol,
|
|
|
|
LPBYTE pbAtr,
|
|
|
|
LPDWORD pcbAtrLen)
|
|
|
|
{
|
|
|
|
UNIMPLEMENTED;
|
|
|
|
return SCARD_F_UNKNOWN_ERROR;
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
/*
|
|
|
|
* @unimplemented
|
|
|
|
*/
|
|
|
|
LONG
|
2008-11-30 11:42:05 +00:00
|
|
|
WINAPI
|
2004-11-07 15:37:41 +00:00
|
|
|
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;
|
|
|
|
}
|
|
|
|
|