File History

History of cackey.c

2017-12-28
01:32
Updated to support supplying an empty PIN command to be equivelant to unsetting file: [911e072212] check-in: [9043258dc4] user: rkeene, branch: trunk, size: 224190 [annotate] [blame] [check-ins using] [diff]
2017-12-27
17:52
Started work on runtime loading of dependencies file: [47e7747ccc] check-in: [e14e862239] user: rkeene, branch: runtime-loading-of-deps, size: 225952 [annotate] [blame] [check-ins using] [diff]
2017-03-09
02:41
Updated to try more application IDs for CACs file: [de5cf6edd0] check-in: [fbed2df898] user: rkeene, branch: trunk, size: 224085 [annotate] [blame] [check-ins using] [diff]
2016-02-26
18:42
Updated to workaround a bug in Google's PCSC implementation where SCardStatus() requires a reader parameter file: [3a53605d32] check-in: [bf8001bc42] user: rkeene, branch: trunk, size: 223807 [annotate] [blame] [check-ins using] [diff]
18:36
Added additional debugging information for SCardTransmit() being done successfully file: [bf13559221] check-in: [7272e3d08a] user: rkeene, branch: trunk, size: 223369 [annotate] [blame] [check-ins using] [diff]
18:36
Updated to supply a pioRecvPci parameter to SCardTransmit(), needed by Google's PCSC implementation file: [36cd71f6ea] check-in: [dc38d00e61] user: rkeene, branch: trunk, size: 223215 [annotate] [blame] [check-ins using] [diff]
18:35
Corrected typo in debug message file: [efec2691f8] check-in: [b512a6df69] user: rkeene, branch: trunk, size: 223060 [annotate] [blame] [check-ins using] [diff]
18:28
Started working on improving slot reset mechanism file: [96360137ab] check-in: [32d54df268] user: rkeene, branch: improve-session-and-slot-reset, size: 222492 [annotate] [blame] [check-ins using] [diff]
2016-02-16
23:24
Simplified some slot disconnect logic and updated to store an ID type hint on the slot itself so that if we reinitialize we treat it as the same type of device file: [6db8eb96eb] check-in: [fdd66a54cd] user: rkeene, branch: trunk, size: 223060 [annotate] [blame] [check-ins using] [diff]
17:04
Added workaround for Google's PCSC where we cannot determine the amount of space required to hold the reader list automatically file: [ebe379d38c] check-in: [6218cc54fc] user: rkeene, branch: trunk, size: 222625 [annotate] [blame] [check-ins using] [diff]
16:06
Fixed an issue where the mutex released slightly too early file: [3b58f20dd7] check-in: [54d3a148ef] user: rkeene, branch: trunk, size: 222284 [annotate] [blame] [check-ins using] [diff]
16:06
Better handling of loss of connection to the PCSC daemon or card resetting file: [ef984b4aeb] check-in: [9f8b1347d9] user: rkeene, branch: trunk, size: 222284 [annotate] [blame] [check-ins using] [diff]
2016-02-15
08:31
Updated to print an error in debug mode if we run across compressed certificates without zlib support available file: [6bf4e65a64] check-in: [ecd7178afb] user: rkeene, branch: trunk, size: 218326 [annotate] [blame] [check-ins using] [diff]
07:49
Minor cleanup file: [788bc7d9fe] check-in: [43490cab39] user: rkeene, branch: trunk, size: 218204 [annotate] [blame] [check-ins using] [diff]
2016-02-12
03:47
Renamed our C_Login() function with a mutex arg to be a less annoying name file: [b22c79f8b7] check-in: [bd977f41d5] user: rkeene, branch: trunk, size: 218246 [annotate] [blame] [check-ins using] [diff]
2016-02-11
18:31
Started working on fixing an issue where if no hardware slots are present the internal slots would not show up file: [0be1a03436] check-in: [c18406ef3e] user: rkeene, branch: trunk, size: 218250 [annotate] [blame] [check-ins using] [diff]
2015-08-30
03:21
Updated to use older mechanism for activating gzip support in zlib, to support zlib older than zlib 1.2.4 file: [7fc12e8cff] check-in: [ce2ae07c02] user: rkeene, branch: trunk, size: 218299 [annotate] [blame] [check-ins using] [diff]
2015-07-24
15:11
Better cleanup now that we exclude some bytes in debug printing buffer file: [486977c92e] check-in: [75b2699549] user: rkeene, branch: trunk, size: 217877 [annotate] [blame] [check-ins using] [diff]
04:11
Further failure to free on error repaired and start of AFL testing code added. file: [a17e1982da] check-in: [8299a1c4f7] user: rkeene, branch: trunk, size: 217857 [annotate] [blame] [check-ins using] [diff]
04:07
Added more fixes for memory leaks or use of uninitialized memory file: [aa058371f0] check-in: [846e77f0f5] user: rkeene, branch: trunk, size: 217840 [annotate] [blame] [check-ins using] [diff]
2015-07-23
20:45
Fixed a couple of issues found setting up test cases for the AFL fuzzer file: [c129398723] check-in: [633a24960e] user: rkeene, branch: trunk, size: 217403 [annotate] [blame] [check-ins using] [diff]
18:27
Merged in trunk file: [0922233e4d] check-in: [4092b10f67] user: rkeene, branch: reader-filtering, size: 216540 [annotate] [blame] [check-ins using] [diff]
18:25
Updated to reset if signing fails and hope for the best afterwards file: [029de9965c] check-in: [b6e428f68c] user: rkeene, branch: trunk, size: 214198 [annotate] [blame] [check-ins using] [diff]
2015-07-17
18:54
Added support for reader filtering file: [fd4f0feee5] check-in: [a2a8052958] user: rkeene, branch: reader-filtering, size: 216190 [annotate] [blame] [check-ins using] [diff]
02:53
Made 0x6d00 wrong instruction handling handling also work for CACs file: [609a23ada9] check-in: [9723187878] user: rkeene, branch: trunk, size: 213848 [annotate] [blame] [check-ins using] [diff]
2015-07-16
16:06
Reset the card and rescan for certificates if we get the ISO 7816 error 6D 00 (Wrong instruction) error from the card when trying to verify. file: [06b013b460] check-in: [52569c3e74] user: rkeene, branch: piv-reset-on-wronginstruction, size: 213850 [annotate] [blame] [check-ins using] [diff]
2015-07-15
20:10
Merged in trunk file: [a802283a94] check-in: [38771da1e8] user: rkeene, branch: require-login-if-needed, size: 212713 [annotate] [blame] [check-ins using] [diff]
20:05
Added support for updating the PIN file: [3a0d4abad4] check-in: [b5ecb7c2d6] user: rkeene, branch: trunk, size: 212714 [annotate] [blame] [check-ins using] [diff]
2015-05-04
16:02
Merged in trunk file: [60fa6fcd12] check-in: [6938f7a82c] user: rkeene, branch: require-login-if-needed, size: 206470 [annotate] [blame] [check-ins using] [diff]
2015-03-05
17:49
Updated to set the output size after decompressing a certificate file: [65139610e9] check-in: [bc60cf4dca] user: rkeene, branch: trunk, size: 206471 [annotate] [blame] [check-ins using] [diff]
17:40
Updated to use fewer APDUs when signing/decrypting file: [a840779390] check-in: [4f5638aabf] user: rkeene, branch: trunk, size: 206429 [annotate] [blame] [check-ins using] [diff]
16:09
Removed extraneous code file: [6ee4372cd9] check-in: [47251b740c] user: rkeene, branch: trunk, size: 206269 [annotate] [blame] [check-ins using] [diff]
16:06
Updated to deal with reading impossibly small TLV buffers sanely file: [f036f2ae53] check-in: [614742ca67] user: rkeene, branch: trunk, size: 206521 [annotate] [blame] [check-ins using] [diff]
15:48
Added debugging to ASN.1 X.509 parser, added support for gzip'd certificates, and fixed a possible non-deterministic case with realloc(0) file: [7a1e8d322f] check-in: [e4a2e1c560] user: rkeene, branch: trunk, size: 206376 [annotate] [blame] [check-ins using] [diff]
2014-03-18
04:33
Updated to work with pclose() failures file: [fd9c15d1e5] check-in: [42891ae8ca] user: rkeene, branch: trunk, size: 204741 [annotate] [blame] [check-ins using] [diff]
2014-03-14
14:30
Merged in changes from PIV file: [3de1a30e4b] check-in: [8ba93699b4] user: rkeene, branch: trunk, size: 204451 [annotate] [blame] [check-ins using] [diff]
14:25
Updated to reset the card if a retry is required file: [318588635a] check-in: [ad6536ceb0] user: rkeene, branch: protected-auth-path, size: 204154 [annotate] [blame] [check-ins using] [diff]
2014-01-17
13:42
Merged in trunk file: [8c591e3548] check-in: [b5af3ab373] user: rkeene, branch: protected-auth-path, size: 203963 [annotate] [blame] [check-ins using] [diff]
13:35
Work towards fixing listing of slots to not list redundant slots file: [6eb21adaf8] check-in: [afd6df445d] user: rkeene, branch: trunk, size: 202560 [annotate] [blame] [check-ins using] [diff]
2013-10-17
20:29
Updated to deal with 6E00 and added support for win32 build options file: [e6fa629162] check-in: [6ba1dff55a] user: rkeene, branch: piv, size: 202337 [annotate] [blame] [check-ins using] [diff]
2013-09-14
04:11
Merged in changes from piv file: [5ad2713a20] check-in: [5f8f3e59a7] user: rkeene, branch: protected-auth-path, size: 203467 [annotate] [blame] [check-ins using] [diff]
02:50
Updated to treat a return code of 0x6E00 (wrong instruction class) the same as 0x6982 (security status not satisified) file: [c06e51ee9b] check-in: [2e1e0bfc20] user: rkeene, branch: piv, size: 202051 [annotate] [blame] [check-ins using] [diff]
2013-08-19
03:33
Updated to exclude USG certificates slot if compiled without it file: [b9c502e6af] check-in: [eba8a2346a] user: rkeene, branch: piv, size: 201993 [annotate] [blame] [check-ins using] [diff]
03:25
Fixed order of processing PIN command options file: [eb56c9fd75] check-in: [0e841c8724] user: rkeene, branch: piv, size: 201724 [annotate] [blame] [check-ins using] [diff]
03:19
Fixed memory leak when checking PIV certificates file: [2e881e3150] check-in: [182c88b988] user: rkeene, branch: piv, size: 201824 [annotate] [blame] [check-ins using] [diff]
03:14
Improved waiting for slot event to allow C_Finalize to terminate any waiting file: [ee6ec0dbf4] check-in: [d52881feec] user: rkeene, branch: wait-for-slot-event, size: 209674 [annotate] [blame] [check-ins using] [diff]
2013-08-18
07:02
Added support for CKF_DONT_BLOCK file: [5d076538a2] check-in: [0058a3b41b] user: rkeene, branch: wait-for-slot-event, size: 205249 [annotate] [blame] [check-ins using] [diff]
06:53
First work towards implementing C_WaitForSlotEvent file: [0817c7d1f8] check-in: [4d4946cc1f] user: rkeene, branch: wait-for-slot-event, size: 204978 [annotate] [blame] [check-ins using] [diff]
2013-08-14
06:29
Updated to not dead-lock when prompting for PIN during a signing operation file: [37c3fd69d4] check-in: [27d18fd03a] user: rkeene, branch: protected-auth-path, size: 203210 [annotate] [blame] [check-ins using] [diff]
05:53
If using Protected Authentication Path, don't set the LOGIN_REQUIRED flag file: [345685b667] check-in: [14d49a499f] user: rkeene, branch: protected-auth-path, size: 202666 [annotate] [blame] [check-ins using] [diff]
04:54
Added support for enabling the PROTECTED_AUTHENTICATION_PATH flag for the token if a command to provide the PIN is configured file: [ce38432e82] check-in: [8a76f09a85] user: rkeene, branch: piv, size: 201772 [annotate] [blame] [check-ins using] [diff]
04:49
Merged trunk file: [13b6e88e7c] check-in: [2e12e46ded] user: rkeene, branch: piv, size: 199008 [annotate] [blame] [check-ins using] [diff]
04:40
Updated to allow compilation excluding DoD certificates file: [967c6f655f] check-in: [b6863060d8] user: rkeene, branch: trunk, size: 186623 [annotate] [blame] [check-ins using] [diff]
04:22
Merged in updates file: [745d36081e] check-in: [5469f9a4d0] user: rkeene, branch: protected-auth-path, size: 201513 [annotate] [blame] [check-ins using] [diff]
04:22
Merged in trunk file: [6f86c48f0e] check-in: [8c73344738] user: rkeene, branch: piv, size: 198749 [annotate] [blame] [check-ins using] [diff]
04:16
Added return value printing for C_Login() and removed requirement that PIN not be provided if using protected authentication path (some tools provide it anyway) file: [1a206186e3] check-in: [a68e222d00] user: rkeene, branch: protected-auth-path, size: 201416 [annotate] [blame] [check-ins using] [diff]
03:55
Updated to allow the Protected Authentication Path to be set only if an X server display is available file: [b4f00ff994] check-in: [b6ea2dbe0a] user: rkeene, branch: protected-auth-path, size: 201072 [annotate] [blame] [check-ins using] [diff]
03:48
Added support for supplying a command to provide a PIN via standard output file: [1675cfdb33] check-in: [b6a0e30bff] user: rkeene, branch: protected-auth-path, size: 200675 [annotate] [blame] [check-ins using] [diff]
2013-01-18
15:11
Added support for compiling in a default debug log file file: [5df163c7aa] check-in: [0e0490e060] user: rkeene, branch: trunk, size: 186364 [annotate] [blame] [check-ins using] [diff]
2013-01-16
15:21
Updated to determine what kind of authentication to perform based on token present (PIV/CAC) file: [8554f45411] check-in: [def08b9deb] user: rkeene, branch: piv, size: 198652 [annotate] [blame] [check-ins using] [diff]
2013-01-15
21:12
Updated to label PIV keys with their types. Removed extraneous debugging output file: [0c58d0837a] check-in: [e2ba3f7684] user: rkeene, branch: piv, size: 198394 [annotate] [blame] [check-ins using] [diff]
21:00
Added additional debugging output file: [a01b1ce264] check-in: [b7f98935cd] user: rkeene, branch: piv, size: 198185 [annotate] [blame] [check-ins using] [diff]
15:59
Updated to use BER-TLV decoding to extract responses rather than hard-coded offsets file: [cc302eaf9b] check-in: [ab26dec401] user: rkeene, branch: piv, size: 198010 [annotate] [blame] [check-ins using] [diff]
14:12
Merged in trunk file: [ddd6381c90] check-in: [8f27214611] user: rkeene, branch: piv, size: 195827 [annotate] [blame] [check-ins using] [diff]
14:11
Updated debugging messages to be written in a single fprintf() call in an attempt to avoid having them intermingled when written from multiple threads file: [6307d2f89c] check-in: [402217513a] user: rkeene, branch: trunk, size: 186267 [annotate] [blame] [check-ins using] [diff]
05:27
Updated to copy type when copying pcsc_identities file: [edf097489b] check-in: [150cbc7790] user: rkeene, branch: piv, size: 195718 [annotate] [blame] [check-ins using] [diff]
04:52
Minor cleanup file: [50fa54ae2c] check-in: [eed54cb794] user: rkeene, branch: piv, size: 195536 [annotate] [blame] [check-ins using] [diff]
04:50
Corrected signature unpacking file: [cdf2a50539] check-in: [ea4c430c50] user: rkeene, branch: piv, size: 195589 [annotate] [blame] [check-ins using] [diff]
04:48
Updated code so that information on accessing each certificate for different kinds of cards is not shared file: [9baedfd1c9] check-in: [dc6044978a] user: rkeene, branch: piv, size: 195577 [annotate] [blame] [check-ins using] [diff]
2013-01-14
17:56
Updated documentation for cackey_get_data file: [f720f246a4] check-in: [a02a881547] user: rkeene, branch: piv, size: 194158 [annotate] [blame] [check-ins using] [diff]
17:53
Updated extended modes to use BER encoding and added some basic comments file: [d345cec881] check-in: [de23309dd3] user: rkeene, branch: piv, size: 194164 [annotate] [blame] [check-ins using] [diff]
2013-01-10
19:39
Added debug messages for newly supported features which may not function. Updated to not use newly supported features, which seem to fail sometimes. file: [fc1d1ef268] check-in: [1b3d97f6ef] user: rkeene, branch: piv, size: 194067 [annotate] [blame] [check-ins using] [diff]
05:10
Renamed "DoD Certs" slot to "US Government Certs" and added Federal Certificates to built-in list file: [77eca6ccda] check-in: [3f1484d1ad] user: rkeene, branch: piv, size: 193761 [annotate] [blame] [check-ins using] [diff]
05:00
Cleaned up debug messages file: [04de0bb64d] check-in: [cfa10c1ef8] user: rkeene, branch: piv, size: 193741 [annotate] [blame] [check-ins using] [diff]
04:59
Updated to provide basic (and buggy) PIV functionality file: [d2a004aade] check-in: [b9b26ebc73] user: rkeene, branch: piv, size: 193712 [annotate] [blame] [check-ins using] [diff]
01:00
Began adding PIV support file: [e326e231e2] check-in: [1494008def] user: rkeene, branch: piv, size: 191437 [annotate] [blame] [check-ins using] [diff]
2012-07-30
05:06
Updated to cache certificate information

Added a C_FindObject() speed test macro

Updated to reset slot less frequently file: [3db9c71bd5] check-in: [a5af46b2b5] user: rkeene, branch: trunk, size: 186158 [annotate] [blame] [check-ins using] [diff]

2012-07-27
18:39
Moved computation of number of objects per DoD cert into the cackey_read_dod_identities() function file: [984e852cb7] check-in: [8a57ac5688] user: rkeene, branch: trunk, size: 183579 [annotate] [blame] [check-ins using] [diff]
18:29
Initialized variables we pass into PC/SC file: [c4124c11f6] check-in: [af692c90b0] user: rkeene, branch: trunk, size: 183459 [annotate] [blame] [check-ins using] [diff]
18:29
Removed extraneous parameter of cackey_read_dod_identities() file: [c41337ffcb] check-in: [e491e4b5f9] user: rkeene, branch: trunk, size: 183447 [annotate] [blame] [check-ins using] [diff]
18:27
Fixed bug where DoD certs were overwriting random parts of memory causing strange bugs, fixes [b9306c2b35] file: [2007da4548] check-in: [3efa328414] user: rkeene, branch: trunk, size: 183459 [annotate] [blame] [check-ins using] [diff]
2012-07-24
15:55
Added basic stub for adding support for checking if LOGIN_REQUIRED is needed file: [711a90f529] check-in: [6db637b204] user: rkeene, branch: require-login-if-needed, size: 181158 [annotate] [blame] [check-ins using] [diff]
2012-07-21
06:50
Updated to allow the user to specify (via environment variables) whether or not to include the DoD certificates on the hardware slot tokens file: [0661f619de] check-in: [b957a3fa2e] user: rkeene, branch: dodcerts-on-seperate-slot, size: 183451 [annotate] [blame] [check-ins using] [diff]
06:19
Protected access to cackey_slots with mutex file: [8e07ff4bd1] check-in: [90faf75892] user: rkeene, branch: dodcerts-on-seperate-slot, size: 182630 [annotate] [blame] [check-ins using] [diff]
06:09
Added support for treating the DoD certs as a seperate slot file: [42750d148e] check-in: [b6b2190360] user: rkeene, branch: dodcerts-on-seperate-slot, size: 182373 [annotate] [blame] [check-ins using] [diff]
2012-07-20
01:04
Corrected casting to for %p formatting file: [1be2f8a22e] check-in: [c634e02a7f] user: rkeene, branch: trunk, size: 180973 [annotate] [blame] [check-ins using] [diff]
00:53
Corrected type-punning issue file: [0c7ae7a3d1] check-in: [9bed3538e1] user: rkeene, branch: trunk, size: 180928 [annotate] [blame] [check-ins using] [diff]
2012-07-19
18:03
Added support for logging to a file using CACKEY_DEBUG_LOGFILE environment variable file: [556e3f5257] check-in: [b9df324b66] user: rkeene, branch: trunk, size: 180928 [annotate] [blame] [check-ins using] [diff]
18:03
Corrected type for debugging certificates file: [f9930320b1] check-in: [ecfb2af250] user: rkeene, branch: trunk, size: 179863 [annotate] [blame] [check-ins using] [diff]
2012-05-09
16:38
Updated to print attribute type as string in lookups

Updated to include public key objects for DoD certificates file: [dce840ec61] check-in: [638b5f52a7] user: rkeene, branch: trunk, size: 179862 [annotate] [blame] [check-ins using] [diff]

16:22
Added support for CKO_PUBLIC_KEY objects file: [5510d07f5c] check-in: [30d36fdd77] user: rkeene, branch: trunk, size: 176477 [annotate] [blame] [check-ins using] [diff]
2012-04-26
01:10
Updated to support an environment variable named CACKEY_NO_EXTRA_CERTS to inhibit DoD certs from being presented file: [6206331092] check-in: [b9bcff12a6] user: rkeene, branch: trunk, size: 176262 [annotate] [blame] [check-ins using] [diff]
2012-04-21
01:14
Fixed issue with C_GetMechanismList rejecting valid buffer sizes file: [e9059b3fc8] check-in: [dbd79de227] user: rkeene, branch: trunk, size: 175916 [annotate] [blame] [check-ins using] [diff]
01:13
Fixed issue with C_GetMechanismList reporting wrong number of mechanisms when asked file: [0c1884cff7] check-in: [66ea8c8073] user: rkeene, branch: trunk, size: 175916 [annotate] [blame] [check-ins using] [diff]
2012-02-12
06:26
Stopped reporting CKM_SHA1_RSA_PKCS as a supported mechanism -- it was never actually supported file: [498d154f21] check-in: [b673394c9a] user: rkeene, branch: trunk, size: 175916 [annotate] [blame] [check-ins using] [diff]
2011-09-08
01:47
CACKey 0.6.2

Updated to include sha1.c, md5.c, and asn1-x509.c in the cackey.c translation unit so that these symbols never get exported and conflict with existing programs

Updated to try harder to remove and weaken symbols from shared object file: [09dbb17ef5] check-in: [02f5cea2da] user: rkeene, branch: trunk, size: 176935 [annotate] [blame] [check-ins using] [diff]

2011-08-26
05:29
Updated to include DoD root CAs as objects in the PKCS#11 module

Updated to include Netscape Trust Objects (https://developer.mozilla.org/index.php?title=en/NSS/PKCS_%2311_Netscape_Trust) in PKCS#11 module

Added more attributes to scan for to test driver file: [e7404c7b1a] check-in: [5027cbae9b] user: rkeene, branch: trunk, size: 176721 [annotate] [blame] [check-ins using] [diff]

2011-08-24
03:35
Updated to deal with comparing the MODULUS attribute with non-exact matches file: [05aec72ac3] check-in: [d689039e52] user: rkeene, branch: trunk, size: 173370 [annotate] [blame] [check-ins using] [diff]
2011-06-17
06:26
Corrected small issues file: [375972947e] check-in: [80df9c1ff5] user: rkeene, branch: trunk, size: 172521 [annotate] [blame] [check-ins using] [diff]
2010-10-15
09:53
Added mostly-compiling Win32 support

Added local copy of RSA PKCS#11 file: [426f7e236e] check-in: [ec1f93c869] user: rkeene, branch: trunk, size: 172485 [annotate] [blame] [check-ins using] [diff]

2010-10-10
09:10
CACKey 0.5.20

Updated CACKey to not require pReserved to be set to NULL

Fixed bug where Sign and Decrypt operations would not terminate correctly file: [195b1c0ba3] check-in: [8aec474c2b] user: rkeene, branch: trunk, size: 172403 [annotate] [blame] [check-ins using] [diff]

2010-07-23
22:25
CACKey 0.5.18

Fixed issue with reset clean-up marking slot as reset (infinite loop) file: [8363ed8d3c] check-in: [aff9dd7ca3] user: rkeene, branch: trunk, size: 170786 [annotate] [blame] [check-ins using] [diff]

21:58
Updated to call SCardDisconnect if we detect a previously connected slot -- this fixes a regression in the previous commit where a smartcard would not function after being inserted, removed, and reinserted file: [831193de85] check-in: [84aaf35a0e] user: rkeene, branch: trunk, size: 170747 [annotate] [blame] [check-ins using] [diff]
21:46
Consolidated slot resetting into a single function.

Updated slot resetting to invalidate slot PC/SC handle. file: [6b202c653c] check-in: [1edf82bc16] user: rkeene, branch: trunk, size: 170655 [annotate] [blame] [check-ins using] [diff]

21:23
Added timing information to debug output

Fixed issue where readers that were removed and readded weren't connected to properly file: [5667b1108e] check-in: [e4fd58cbb9] user: rkeene, branch: trunk, size: 170182 [annotate] [blame] [check-ins using] [diff]

17:24
Fixed retry on NOT_TRANSACTED to retry at a higher level

Consolidated all SCardReconnect calls into a wrapper that takes care of T=0 or T=1 selection file: [5f33c366a8] check-in: [93bc06dab6] user: rkeene, branch: trunk, size: 169034 [annotate] [blame] [check-ins using] [diff]

09:08
Fixed bug with selecting between T=0 and T=1 protocol and card going to sleep

Fixed bug with soft-transactions

Updated soft-transactions to re-lock hardware card if possible file: [4c31fc86bf] check-in: [9b04a062cc] user: rkeene, branch: trunk, size: 167475 [annotate] [blame] [check-ins using] [diff]

2010-07-21
21:21
Updated to allow use of protocol T=0 or protocol T=1

Fixed minor warning in debug mode file: [5676179bd7] check-in: [d85f1a762d] user: rkeene, branch: trunk, size: 164598 [annotate] [blame] [check-ins using] [diff]

2010-07-11
06:32
Updated to include PCSC header "winstype.h"

Updated PCSC header inclusion to be more robust file: [ecdd31141d] check-in: [fea904e63c] user: rkeene, branch: trunk, size: 163691 [annotate] [blame] [check-ins using] [diff]

2010-06-23
22:13
CACKey 0.5.13

Updated debugging messages file: [c6e4c2b8b9] check-in: [b09d33f9bc] user: rkeene, branch: trunk, size: 163637 [annotate] [blame] [check-ins using] [diff]

2010-06-07
19:20
Corrected compiler warning file: [7d1ac77f37] check-in: [2c67b3f70f] user: rkeene, branch: trunk, size: 163548 [annotate] [blame] [check-ins using] [diff]
17:35
Updated to correctly handle condition where pSignature is NULL in C_Sign() file: [b61b0b2a2f] check-in: [85feb752e1] user: rkeene, branch: trunk, size: 163539 [annotate] [blame] [check-ins using] [diff]
2010-06-05
20:17
Updated to correctly deep copy pTemplate in C_FindObjectsInit

Added support for CKA_TRUSTED file: [c16f533241] check-in: [965b9a28c7] user: rkeene, branch: trunk, size: 163318 [annotate] [blame] [check-ins using] [diff]

2010-06-03
22:58
Updated to work around issues with loss of connectivity to PC/SC

Updated to re-power card if needed file: [67b5263486] check-in: [55457b92ff] user: rkeene, branch: trunk, size: 162300 [annotate] [blame] [check-ins using] [diff]

19:16
Corrected issues with compiling without zlib support file: [1e8e0d368b] check-in: [bd8ec23325] user: rkeene, branch: trunk, size: 161614 [annotate] [blame] [check-ins using] [diff]
2010-05-26
15:58
Corrected issue with sending wrong APDU for selecting applet, failing on older cards file: [595ac3f06f] check-in: [68ed2268aa] user: rkeene, branch: trunk, size: 161607 [annotate] [blame] [check-ins using] [diff]
2010-05-23
07:07
Added more debugging for failed realloc()s

Added ifdefs to support more versions of PCSC in debug mode file: [c8c7e5c610] check-in: [170e3dfda4] user: rkeene, branch: trunk, size: 161607 [annotate] [blame] [check-ins using] [diff]

05:36
Updated to strip library more on Linux, and work on Solaris

Updated to try to support more protocols file: [5e1ae9e427] check-in: [5ba02cbd65] user: rkeene, branch: trunk, size: 161536 [annotate] [blame] [check-ins using] [diff]

04:17
Updated return code documentation file: [60d21a7b2f] check-in: [f337c480d8] user: rkeene, branch: trunk, size: 161423 [annotate] [blame] [check-ins using] [diff]
04:00
Removed retry on NOT_TRANSACTED file: [a75c87a979] check-in: [ab991c0450] user: rkeene, branch: trunk, size: 161301 [annotate] [blame] [check-ins using] [diff]
03:42
Updated to retry if got NOT_TRANSACTED

Fixed issue with retry in APDU transmit file: [c59120c23a] check-in: [7cc9fb64cc] user: rkeene, branch: trunk, size: 161569 [annotate] [blame] [check-ins using] [diff]

02:59
Updated to retry APDU in some cases

Updated to recognize when a card is logged out without being switched file: [6811fa6136] check-in: [9b8b8e3b4a] user: rkeene, branch: trunk, size: 161405 [annotate] [blame] [check-ins using] [diff]

2010-05-22
21:31
Updated to set LOGIN_REQUIRED flag when C_Logout is called

Updated to check all references to a session's slot file: [26bb9837f1] check-in: [a08de24384] user: rkeene, branch: trunk, size: 160324 [annotate] [blame] [check-ins using] [diff]

2010-05-21
22:09
Updated comments regarding bug in GDM file: [ca30d967da] check-in: [dd81bbaf7e] user: rkeene, branch: trunk, size: 158202 [annotate] [blame] [check-ins using] [diff]
21:09
Added support for more PC/SC errors file: [087ebbfb5f] check-in: [a5be7fbdf0] user: rkeene, branch: trunk, size: 158166 [annotate] [blame] [check-ins using] [diff]
17:25
Fixed issue with C_Sign updating buffer twice when buffer is too small. file: [2531c8311d] check-in: [56e8c0ae09] user: rkeene, branch: trunk, size: 158043 [annotate] [blame] [check-ins using] [diff]
15:43
Worked around bug in GDM (619297) that rejects a slotid of 0 file: [a529afaf0b] check-in: [78b2c8546f] user: rkeene, branch: trunk, size: 157488 [annotate] [blame] [check-ins using] [diff]
2010-05-20
23:45
Corrected unpadding

Changed label to be generated, rather than derived from card

Added support for reading the modulus and exponent from an X.509 certificate

Added additional attributes file: [1aac84790e] check-in: [ef50f6c143] user: rkeene, branch: trunk, size: 156978 [annotate] [blame] [check-ins using] [diff]

20:08
Fixed missing card reset file: [4ec2269ed9] check-in: [d37223bd9d] user: rkeene, branch: trunk, size: 154937 [annotate] [blame] [check-ins using] [diff]
17:58
Fixed issue with signing wrong data file: [93de8e257c] check-in: [d76d28b9e9] user: rkeene, branch: trunk, size: 154868 [annotate] [blame] [check-ins using] [diff]
2010-05-19
22:14
Updated to set SIGN_RECOVER attribute in all objects file: [24493cef2c] check-in: [af6a31403e] user: rkeene, branch: trunk, size: 154867 [annotate] [blame] [check-ins using] [diff]
2010-05-18
15:35
Moved PC/SC calls within big global lock file: [47f51881b0] check-in: [468216a439] user: rkeene, branch: trunk, size: 154524 [annotate] [blame] [check-ins using] [diff]
15:31
Updated to check for token presence using PC/SC rather than probing the CCC

Updated to cache token label file: [f66c56f731] check-in: [491b6e0b00] user: rkeene, branch: trunk, size: 154524 [annotate] [blame] [check-ins using] [diff]

14:28
Updated to always flush stderr file: [a15198f18c] check-in: [b8b081a8e4] user: rkeene, branch: trunk, size: 151894 [annotate] [blame] [check-ins using] [diff]
14:22
Updated to support CKF_USER_PIN_FINAL_TRY file: [53e2f62fc8] check-in: [0fda67f954] user: rkeene, branch: trunk, size: 151794 [annotate] [blame] [check-ins using] [diff]
14:11
Updated to keep track of required token flags file: [86c9a91f33] check-in: [93bbed97eb] user: rkeene, branch: trunk, size: 151608 [annotate] [blame] [check-ins using] [diff]
2010-05-17
23:11
Updated debugging output file: [806bbf2a79] check-in: [824ac1bc2e] user: rkeene, branch: trunk, size: 151066 [annotate] [blame] [check-ins using] [diff]
22:22
Updated to support unpadding file: [b1f39a9840] check-in: [ebeffd66b4] user: rkeene, branch: trunk, size: 150908 [annotate] [blame] [check-ins using] [diff]
21:50
Corrected issue with sign/decrypt buffer sizes file: [6f8796b70d] check-in: [9aa715ce7f] user: rkeene, branch: trunk, size: 148661 [annotate] [blame] [check-ins using] [diff]
21:39
Updated to deal with reads of unknown size file: [ace314276a] check-in: [a42647e45a] user: rkeene, branch: trunk, size: 148519 [annotate] [blame] [check-ins using] [diff]
20:20
Updated to not set "Le" when asking to sign/decrypt (discovered from ActivClient APDU dump)

Reverted last commit where reads of 0 bytes were converted to no-ops file: [c23e82a84b] check-in: [f276873873] user: rkeene, branch: trunk, size: 148354 [annotate] [blame] [check-ins using] [diff]

19:53
Updated to treat a request of read of 0 bytes as a no-op. file: [84da4e7494] check-in: [45212cc4ca] user: rkeene, branch: trunk, size: 148532 [annotate] [blame] [check-ins using] [diff]
19:43
Fixed issues with padding file: [64d4505a46] check-in: [66507306f5] user: rkeene, branch: trunk, size: 148394 [annotate] [blame] [check-ins using] [diff]
19:37
Updated to support determining key size from X.509 object (untested)

Updated to set HW TOKEN flag

Updated to pad sign/decrypt message to key size (untested) file: [e6d26b97df] check-in: [a2ac84031e] user: rkeene, branch: trunk, size: 148161 [annotate] [blame] [check-ins using] [diff]

14:55
Added removable device flag to slot info file: [6b8855e22d] check-in: [b4a6b9d685] user: rkeene, branch: trunk, size: 146546 [annotate] [blame] [check-ins using] [diff]
07:19
Updated PC/SC identity member of cackey identity name to be more descriptive

Added more sanity checks

Updated to populate pcsc_identity structure of cackey identity from certificate information file: [9bef8e6303] check-in: [26acceb6f2] user: rkeene, branch: trunk, size: 146527 [annotate] [blame] [check-ins using] [diff]

05:09
Fixed issue with double-free when PC/SC connection manager is unavailable

Fixed issues found from splint(1) output file: [ddbf6476ef] check-in: [c70fbcca60] user: rkeene, branch: trunk, size: 145721 [annotate] [blame] [check-ins using] [diff]

00:20
Fixed issues with signdecrypt buffer sizes

Centralized reading of identities

Added debugging to determine why wrong applet ID is being stored in identity file: [4cc11579bd] check-in: [eaa9f36a2b] user: rkeene, branch: trunk, size: 144712 [annotate] [blame] [check-ins using] [diff]

2010-05-15
00:39
Updated to censor PIN in debugging output file: [e8f3ee7748] check-in: [0233c7b5fe] user: rkeene, branch: trunk, size: 143682 [annotate] [blame] [check-ins using] [diff]
00:34
Added line numbers to debugging output

Added overloaded debugging strdup to check for leaks file: [e77001954d] check-in: [709b50760d] user: rkeene, branch: trunk, size: 143513 [annotate] [blame] [check-ins using] [diff]

00:25
Updated to select correct applet and file for given identity for sign/decrypt

Added more debugging for selecting a key for sign/decrypt file: [36bd79ba26] check-in: [9fc3b9fa03] user: rkeene, branch: trunk, size: 143042 [annotate] [blame] [check-ins using] [diff]

2010-05-14
23:33
Added untested support for Sign/Decrypt file: [4487b6bfe2] check-in: [fc063dd0df] user: rkeene, branch: trunk, size: 142021 [annotate] [blame] [check-ins using] [diff]
23:11
Fixed memory leaks

Updated to only rescan for identities if a slot reset has been detected file: [ab26d90d17] check-in: [f006b206b1] user: rkeene, branch: trunk, size: 140540 [annotate] [blame] [check-ins using] [diff]

22:10
Wrote function for freeing identities

Wrote function for determining label from identity

Consolidated freeing of identities to use new function

Consolidated label lookups to use new function

Fixed bug with releasing identities, but not reducing the number of identities file: [97ac9efbb9] check-in: [1b3d82054b] user: rkeene, branch: trunk, size: 139130 [annotate] [blame] [check-ins using] [diff]

20:50
Added support for reading label from CAC as string file: [be5fbbbf72] check-in: [2f0a97a3f1] user: rkeene, branch: trunk, size: 137841 [annotate] [blame] [check-ins using] [diff]
06:08
Updated to decompress certificates

Updated to correctly process TLV elements -- fixes bug where iterated past them when processing

Updated to correclty process TLV element total length file: [941bf5cf9b] check-in: [b9e3c7741b] user: rkeene, branch: trunk, size: 137434 [annotate] [blame] [check-ins using] [diff]

03:32
Updated transaction support file: [884439a73b] check-in: [c2e40da095] user: rkeene, branch: trunk, size: 136695 [annotate] [blame] [check-ins using] [diff]
03:28
Updated transactional support to recursive transactions file: [0fee951b43] check-in: [43170e1dd9] user: rkeene, branch: trunk, size: 136557 [annotate] [blame] [check-ins using] [diff]
02:34
Put all calls to functions that talk to the smartcard inside the big global mutex file: [38178200a5] check-in: [da2b17a36c] user: rkeene, branch: trunk, size: 134683 [annotate] [blame] [check-ins using] [diff]
02:16
Added transaction support

Updated reading certs to be transactional

Added function to connect to card file: [4f1f703fd4] check-in: [fab9cf1772] user: rkeene, branch: trunk, size: 133367 [annotate] [blame] [check-ins using] [diff]

00:56
Added comments

Updated buffer name in PRINTBUF to avoid aliases file: [b9a7131d32] check-in: [11bf77ef42] user: rkeene, branch: trunk, size: 130498 [annotate] [blame] [check-ins using] [diff]

2010-05-13
19:23
Removed incorrect comment file: [95e7747218] check-in: [a52326f02b] user: rkeene, branch: trunk, size: 124758 [annotate] [blame] [check-ins using] [diff]
18:57
Updated to pad CAC PIN, as from CoolKey file: [4922b8062e] check-in: [95a0d07484] user: rkeene, branch: trunk, size: 124823 [annotate] [blame] [check-ins using] [diff]
18:22
Updated to use unified return codes file: [65f29eb7d2] check-in: [123c71d946] user: rkeene, branch: trunk, size: 124553 [annotate] [blame] [check-ins using] [diff]
16:19
Updated to determine subject from certificate file: [cf1bec3529] check-in: [5534d640e4] user: rkeene, branch: trunk, size: 123408 [annotate] [blame] [check-ins using] [diff]
15:58
Updated to use certificate from identity in attribute finding

Updated to correctly pass certificate number file: [2223838f44] check-in: [9b6cdd281c] user: rkeene, branch: trunk, size: 123230 [annotate] [blame] [check-ins using] [diff]

2010-05-12
23:58
Moved certificate examination to occur during search initialization

Added support for logging in via PC/SC in C_Login() file: [cd6ed6e22a] check-in: [0c536f15c1] user: rkeene, branch: trunk, size: 122757 [annotate] [blame] [check-ins using] [diff]

21:52
Added routines for reading certificates

Updated OpenSession to use PC/SC certificates

Comment and debugging update

Updated to read in larger chunks to improve speed file: [80414011fe] check-in: [06e07b8f0d] user: rkeene, branch: trunk, size: 121225 [annotate] [blame] [check-ins using] [diff]

19:35
Updated ignores

Updated read_tlv to return a list

Added a free_tlv function

Updated value->str conversion functions to be more flexible/direct

Added sample code to select all PKI applets/files

Simplified TLV entity file: [e9e3a11241] check-in: [330efa4f3b] user: rkeene, branch: trunk, size: 117072 [annotate] [blame] [check-ins using] [diff]

17:25
Updated PC/SC error messages to include text return value as well as numeric value

Minor reorganization file: [d5b94d106d] check-in: [2d8b4030f7] user: rkeene, branch: trunk, size: 113326 [annotate] [blame] [check-ins using] [diff]

14:52
Added test driver (from libssh-agent-pkcs11-provider)

Added basic ASN.1 X.509 BER decoder (from libssh-agent-pkcs11-provider)

Work towards updating CACKey to talk to CAC using PC/SC file: [c365c15fc9] check-in: [a3d727289c] user: rkeene, branch: trunk, size: 109701 [annotate] [blame] [check-ins using] [diff]

2010-05-11
16:49
Removed unused variables

Began work towards talking to the smartcard through PC/SC

Began work on a GSC-IS v2.1 SPM implementation file: [efb7accc6b] check-in: [40726d3b6c] user: rkeene, branch: trunk, size: 87521 [annotate] [blame] [check-ins using] [diff]

2010-05-04
19:04
Copied SSH Agent PKCS11 Provider to CACKey for use as a base file: [f34f4e9e63] check-in: [074f157a6a] user: rkeene, branch: trunk, size: 85897 [annotate] [blame] [check-ins using] [diff]
18:30
Added checks for PCSC Header

Updated ignores file: [02188b8075] check-in: [8a2230f927] user: rkeene, branch: trunk, size: 103 [annotate] [blame] [check-ins using] [diff]

18:05
Added CACKey project file: [5d2cb9e273] check-in: [5f05cafcb7] user: rkeene, branch: trunk, size: 52 Added [annotate] [blame] [check-ins using]