79 |
dwReturn = SCARD_E_INVALID_PARAMETER; |
dwReturn = SCARD_E_INVALID_PARAMETER; |
80 |
__leave; |
__leave; |
81 |
} |
} |
82 |
|
if ( *pszFileName == 0 ) |
83 |
|
{ |
84 |
|
Trace(WINEVENT_LEVEL_ERROR, L"pszFileName empty"); |
85 |
|
dwReturn = SCARD_E_INVALID_PARAMETER; |
86 |
|
__leave; |
87 |
|
} |
88 |
if (ppbData == NULL) |
if (ppbData == NULL) |
89 |
{ |
{ |
90 |
Trace(WINEVENT_LEVEL_ERROR, L"ppbData == NULL"); |
Trace(WINEVENT_LEVEL_ERROR, L"ppbData == NULL"); |
108 |
{ |
{ |
109 |
__leave; |
__leave; |
110 |
} |
} |
111 |
dwReturn = SCardReadFile(pCardData, pszDirectoryName, pszFileName, ppbData, pcbData); |
dwReturn = OCardReadFile(pCardData, pszDirectoryName, pszFileName, ppbData, pcbData); |
112 |
} |
} |
113 |
__finally |
__finally |
114 |
{ |
{ |
129 |
) |
) |
130 |
{ |
{ |
131 |
DWORD dwReturn = 0; |
DWORD dwReturn = 0; |
132 |
|
POPENPGP_CONTEXT pContext = NULL; |
133 |
Trace(WINEVENT_LEVEL_VERBOSE, L"Enter"); |
Trace(WINEVENT_LEVEL_VERBOSE, L"Enter"); |
134 |
__try |
__try |
135 |
{ |
{ |
150 |
{ |
{ |
151 |
__leave; |
__leave; |
152 |
} |
} |
153 |
dwReturn = SCardCreateFile(pCardData, pszDirectoryName, pszFileName); |
pContext = (POPENPGP_CONTEXT) pCardData->pvVendorSpecific; |
154 |
|
if (pContext->fIsReadOnly) |
155 |
|
{ |
156 |
|
dwReturn = SCARD_E_UNSUPPORTED_FEATURE; |
157 |
|
Trace(WINEVENT_LEVEL_ERROR, L"Readonly card"); |
158 |
|
__leave; |
159 |
|
} |
160 |
|
dwReturn = OCardCreateFile(pCardData, pszDirectoryName, pszFileName); |
161 |
} |
} |
162 |
__finally |
__finally |
163 |
{ |
{ |
175 |
__inout PCARD_FILE_INFO pCardFileInfo |
__inout PCARD_FILE_INFO pCardFileInfo |
176 |
) |
) |
177 |
{ |
{ |
178 |
DWORD dwReturn = 0; |
DWORD dwReturn = 0, dwVersion; |
179 |
|
|
180 |
Trace(WINEVENT_LEVEL_VERBOSE, L"Enter"); |
Trace(WINEVENT_LEVEL_VERBOSE, L"Enter"); |
181 |
__try |
__try |
198 |
dwReturn = SCARD_E_INVALID_PARAMETER; |
dwReturn = SCARD_E_INVALID_PARAMETER; |
199 |
__leave; |
__leave; |
200 |
} |
} |
201 |
|
dwVersion = (pCardFileInfo->dwVersion == 0) ? 1 : pCardFileInfo->dwVersion; |
202 |
|
if ( dwVersion != CARD_CAPABILITIES_CURRENT_VERSION ) |
203 |
|
{ |
204 |
|
Trace(WINEVENT_LEVEL_ERROR, L"dwVersion %d", dwVersion); |
205 |
|
dwReturn = ERROR_REVISION_MISMATCH; |
206 |
|
__leave; |
207 |
|
} |
208 |
dwReturn = CheckContext(pCardData); |
dwReturn = CheckContext(pCardData); |
209 |
if (dwReturn) |
if (dwReturn) |
210 |
{ |
{ |
211 |
__leave; |
__leave; |
212 |
} |
} |
213 |
dwReturn = SCardGetFileInfo(pCardData, pszDirectoryName, pszFileName, pCardFileInfo); |
dwReturn = OCardGetFileInfo(pCardData, pszDirectoryName, pszFileName, pCardFileInfo); |
214 |
|
|
215 |
} |
} |
216 |
__finally |
__finally |
234 |
) |
) |
235 |
{ |
{ |
236 |
DWORD dwReturn = 0; |
DWORD dwReturn = 0; |
237 |
|
POPENPGP_CONTEXT pContext = NULL; |
238 |
Trace(WINEVENT_LEVEL_VERBOSE, L"Enter"); |
Trace(WINEVENT_LEVEL_VERBOSE, L"Enter"); |
239 |
__try |
__try |
240 |
{ |
{ |
273 |
{ |
{ |
274 |
__leave; |
__leave; |
275 |
} |
} |
276 |
dwReturn = SCardWriteFile(pCardData, pszDirectoryName, pszFileName, pbData, cbData); |
pContext = (POPENPGP_CONTEXT) pCardData->pvVendorSpecific; |
277 |
|
if (pContext->fIsReadOnly) |
278 |
|
{ |
279 |
|
dwReturn = SCARD_E_UNSUPPORTED_FEATURE; |
280 |
|
Trace(WINEVENT_LEVEL_ERROR, L"Readonly card"); |
281 |
|
__leave; |
282 |
|
} |
283 |
|
dwReturn = OCardWriteFile(pCardData, pszDirectoryName, pszFileName, pbData, cbData); |
284 |
} |
} |
285 |
__finally |
__finally |
286 |
{ |
{ |
300 |
) |
) |
301 |
{ |
{ |
302 |
DWORD dwReturn = 0; |
DWORD dwReturn = 0; |
303 |
|
POPENPGP_CONTEXT pContext = NULL; |
304 |
PBYTE pbData = NULL; |
PBYTE pbData = NULL; |
305 |
DWORD dwSize = 0; |
DWORD dwSize = 0; |
306 |
Trace(WINEVENT_LEVEL_VERBOSE, L"Enter"); |
Trace(WINEVENT_LEVEL_VERBOSE, L"Enter"); |
324 |
dwReturn = SCARD_E_INVALID_PARAMETER; |
dwReturn = SCARD_E_INVALID_PARAMETER; |
325 |
__leave; |
__leave; |
326 |
} |
} |
|
// try to read the file to see if it exists and return the right error code |
|
327 |
dwReturn = CheckContext(pCardData); |
dwReturn = CheckContext(pCardData); |
328 |
if (dwReturn) |
if (dwReturn) |
329 |
{ |
{ |
330 |
__leave; |
__leave; |
331 |
} |
} |
332 |
dwReturn = SCardDeleteFile(pCardData, pszDirectoryName, pszFileName); |
pContext = (POPENPGP_CONTEXT) pCardData->pvVendorSpecific; |
333 |
|
if (pContext->fIsReadOnly) |
334 |
|
{ |
335 |
|
dwReturn = SCARD_E_UNSUPPORTED_FEATURE; |
336 |
|
Trace(WINEVENT_LEVEL_ERROR, L"Readonly card"); |
337 |
|
__leave; |
338 |
|
} |
339 |
|
dwReturn = OCardDeleteFile(pCardData, pszDirectoryName, pszFileName); |
340 |
} |
} |
341 |
__finally |
__finally |
342 |
{ |
{ |
358 |
{ |
{ |
359 |
DWORD dwReturn = 0; |
DWORD dwReturn = 0; |
360 |
PSTR szFiles = NULL; |
PSTR szFiles = NULL; |
|
|
|
361 |
Trace(WINEVENT_LEVEL_VERBOSE, L"Enter"); |
Trace(WINEVENT_LEVEL_VERBOSE, L"Enter"); |
362 |
__try |
__try |
363 |
{ |
{ |
373 |
dwReturn = SCARD_E_INVALID_PARAMETER; |
dwReturn = SCARD_E_INVALID_PARAMETER; |
374 |
__leave; |
__leave; |
375 |
} |
} |
376 |
if ( pmszFileNames == NULL ) |
if ( pdwcbFileName == NULL ) |
377 |
{ |
{ |
378 |
Trace(WINEVENT_LEVEL_ERROR, L"pmszFileNames == NULL"); |
Trace(WINEVENT_LEVEL_ERROR, L"pmszFileNames == NULL"); |
379 |
dwReturn = SCARD_E_INVALID_PARAMETER; |
dwReturn = SCARD_E_INVALID_PARAMETER; |
400 |
{ |
{ |
401 |
__leave; |
__leave; |
402 |
} |
} |
403 |
dwReturn = SCardEnumFile(pCardData, pszDirectoryName, pmszFileNames, pdwcbFileName); |
dwReturn = OCardEnumFile(pCardData, pszDirectoryName, pmszFileNames, pdwcbFileName); |
404 |
} |
} |
405 |
__finally |
__finally |
406 |
{ |
{ |
416 |
__inout PCARD_FREE_SPACE_INFO pCardFreeSpaceInfo |
__inout PCARD_FREE_SPACE_INFO pCardFreeSpaceInfo |
417 |
) |
) |
418 |
{ |
{ |
419 |
DWORD dwReturn = 0; |
DWORD dwReturn = 0, dwVersion; |
420 |
Trace(WINEVENT_LEVEL_VERBOSE, L"Enter"); |
Trace(WINEVENT_LEVEL_VERBOSE, L"Enter"); |
421 |
__try |
__try |
422 |
{ |
{ |
432 |
dwReturn = SCARD_E_INVALID_PARAMETER; |
dwReturn = SCARD_E_INVALID_PARAMETER; |
433 |
__leave; |
__leave; |
434 |
} |
} |
435 |
|
dwVersion = (pCardFreeSpaceInfo->dwVersion == 0) ? 1 : pCardFreeSpaceInfo->dwVersion; |
436 |
|
if ( dwVersion != CARD_FREE_SPACE_INFO_CURRENT_VERSION ) |
437 |
|
{ |
438 |
|
Trace(WINEVENT_LEVEL_ERROR, L"dwVersion %d", dwVersion); |
439 |
|
dwReturn = ERROR_REVISION_MISMATCH; |
440 |
|
__leave; |
441 |
|
} |
442 |
if (dwFlags) |
if (dwFlags) |
443 |
{ |
{ |
444 |
Trace(WINEVENT_LEVEL_ERROR, L"dwFlags == 0"); |
Trace(WINEVENT_LEVEL_ERROR, L"dwFlags == 0"); |