6277N/AIn-house patch created to clear any merge conflicts from source in archive
6277N/Arepo to build properly on Solaris.
6277N/A-static unsigned char *inputData;
6277N/A-static unsigned long inputDataLen;
6277N/A-/* Include the CACKey source */
6277N/A-#define CACKEY_DEBUG_PRINTF(x...) /**/
6277N/A-const SCARD_IO_REQUEST g_rgSCardT0Pci, g_rgSCardT1Pci;
6277N/A-static int scard_inTransaction = 0;
6277N/A-static LONG scard_protocol;
6277N/A-PCSC_API LONG SCardEstablishContext(DWORD dwScope, LPCVOID pvReserved1, LPCVOID pvReserved2, LPSCARDCONTEXT phContext) {
6277N/A- CACKEY_DEBUG_PRINTF("Called");
6277N/A-PCSC_API LONG SCardIsValidContext(SCARDCONTEXT hContext) {
6277N/A- CACKEY_DEBUG_PRINTF("Called");
6277N/A- return(SCARD_E_INVALID_HANDLE);
6277N/A-PCSC_API LONG SCardListReaders(SCARDCONTEXT hContext, LPCSTR mszGroups, LPSTR mszReaders, LPDWORD pcchReaders) {
6277N/A- static char *readers = "READER0";
6277N/A- CACKEY_DEBUG_PRINTF("Called");
6277N/A- return(SCARD_E_INVALID_HANDLE);
6277N/A- *pcchReaders = strlen(readers) + 1;
6277N/A- memcpy(mszReaders, readers, *pcchReaders);
6277N/A-PCSC_API LONG SCardBeginTransaction(SCARDHANDLE hCard) {
6277N/A- CACKEY_DEBUG_PRINTF("Called");
6277N/A- return(SCARD_E_INVALID_HANDLE);
6277N/A- if (scard_inTransaction) {
6277N/A- return(SCARD_E_SHARING_VIOLATION);
6277N/A-PCSC_API LONG SCardEndTransaction(SCARDHANDLE hCard, DWORD dwDisposition) {
6277N/A- CACKEY_DEBUG_PRINTF("Called");
6277N/A- return(SCARD_E_INVALID_HANDLE);
6277N/A-PCSC_API LONG SCardStatus(SCARDHANDLE hCard, LPSTR mszReaderName, LPDWORD pcchReaderLen, LPDWORD pdwState, LPDWORD pdwProtocol, LPBYTE pbAtr, LPDWORD pcbAtrLen) {
6277N/A- LONG scardlistreaders_ret;
6277N/A- CACKEY_DEBUG_PRINTF("Called");
6277N/A- return(SCARD_E_INVALID_HANDLE);
6277N/A- scardlistreaders_ret = SCardListReaders(42, NULL, mszReaderName, pcchReaderLen);
6277N/A- if (scardlistreaders_ret != SCARD_S_SUCCESS) {
6277N/A- return(scardlistreaders_ret);
6277N/A- *pdwProtocol = scard_protocol;
6277N/A-PCSC_API LONG SCardConnect(SCARDCONTEXT hContext, LPCSTR szReader, DWORD dwShareMode, DWORD dwPreferredProtocols, LPSCARDHANDLE phCard, LPDWORD pdwActiveProtocol) {
6277N/A- CACKEY_DEBUG_PRINTF("Called");
6277N/A- return(SCARD_E_INVALID_HANDLE);
6277N/A- if ((dwPreferredProtocols & SCARD_PROTOCOL_T0) == SCARD_PROTOCOL_T0) {
6277N/A- *pdwActiveProtocol = SCARD_PROTOCOL_T0;
6277N/A- *pdwActiveProtocol = SCARD_PROTOCOL_T1;
6277N/A- scard_protocol = *pdwActiveProtocol;
6277N/A-PCSC_API LONG SCardDisconnect(SCARDHANDLE hCard, DWORD dwDisposition) {
6277N/A- CACKEY_DEBUG_PRINTF("Called");
6277N/A- return(SCARD_E_INVALID_HANDLE);
6277N/A-PCSC_API LONG SCardReconnect(SCARDHANDLE hCard, DWORD dwShareMode, DWORD dwPreferredProtocols, DWORD dwInitialization, LPDWORD pdwActiveProtocol) {
6277N/A- CACKEY_DEBUG_PRINTF("Called");
6277N/A- return(SCARD_E_INVALID_HANDLE);
6277N/A- return(SCardConnect(42, NULL, dwShareMode, dwPreferredProtocols, NULL, pdwActiveProtocol));
6277N/A-PCSC_API LONG SCardReleaseContext(SCARDCONTEXT hContext) {
6277N/A- CACKEY_DEBUG_PRINTF("Called");
6277N/A- return(SCARD_E_INVALID_HANDLE);
6277N/A-PCSC_API LONG SCardTransmit(SCARDHANDLE hCard, const SCARD_IO_REQUEST *pioSendPci, LPCBYTE pbSendBuffer, DWORD cbSendLength, SCARD_IO_REQUEST *pioRecvPci, LPBYTE pbRecvBuffer, LPDWORD pcbRecvLength) {
6277N/A- CACKEY_DEBUG_PRINTF("Called");
6277N/A- return(SCARD_E_INVALID_HANDLE);
6277N/A- bytesToRead = (inputData[0] << 8) | inputData[1];
6277N/A- if (bytesToRead > inputDataLen) {
6277N/A- bytesToRead = inputDataLen;
6277N/A- if (bytesToRead > *pcbRecvLength) {
6277N/A- return(SCARD_E_INSUFFICIENT_BUFFER);
6277N/A- *pcbRecvLength = bytesToRead;
6277N/A- memcpy(pbRecvBuffer, inputData, bytesToRead);
6277N/A- inputDataLen -= bytesToRead;
6277N/A-static void loadTestData(const char *fileName) {
6277N/A- fd = open(fileName, O_RDONLY);
6277N/A- inputData = malloc(inputDataLen);
6277N/A- read_ret = read(fd, inputData, inputDataLen);
6277N/A- inputData = realloc(inputData, inputDataLen);
6277N/A-static void loadTestData(const char *filename) {
6277N/A static char *pkcs11_attribute_to_name(CK_ATTRIBUTE_TYPE attrib) {
6277N/A printf(" Id : %lu\n", (unsigned long) slots[currSlot]);
6277N/A chk_rv = C_OpenSession(slots[0], CKF_SERIAL_SESSION, NULL, NULL, &hSession);
6277N/A chk_rv = C_GetTokenInfo(slots[0], &tokenInfo);
6277N/A while (fgets_ret == NULL) {
6277N/A fgets_ret = fgets((char *) user_pin, sizeof(user_pin), stdin);
6277N/A- memcpy(user_pin, "0000000", 8);
6277N/A- fgets_ret = (char *) user_pin;
6277N/A- fgets_ret = fgets((char *) user_pin, sizeof(user_pin), stdin);
6277N/A if (strlen((char *) user_pin) >= 1) {
6277N/A-int main(int argc, char **argv) {
6277N/A printf("Testing libcackey...\n");