Commit Graph

2718 Commits

Author SHA1 Message Date
aj 0c604cb294 silence more warnings.
git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@3183 c6295689-39f2-0310-b995-f0e70906c6a9
2007-06-21 12:58:57 +00:00
aj c66889dc9e fix broken changes.
git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@3182 c6295689-39f2-0310-b995-f0e70906c6a9
2007-06-21 12:14:50 +00:00
aj de0ca91355 make sc_pkcs11_print_attrs non static.
git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@3181 c6295689-39f2-0310-b995-f0e70906c6a9
2007-06-21 12:06:33 +00:00
aj 4f0329cd18 silence more gcc/sparse warnings.
git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@3180 c6295689-39f2-0310-b995-f0e70906c6a9
2007-06-21 12:01:39 +00:00
aj 9c35397f50 revert change - is needed by pkcs15-syn.c
git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@3179 c6295689-39f2-0310-b995-f0e70906c6a9
2007-06-21 11:34:08 +00:00
aj 047ee1d73e fix more warnings found by gcc/sparse.
git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@3178 c6295689-39f2-0310-b995-f0e70906c6a9
2007-06-21 11:07:00 +00:00
aj 4acfe6b096 fix compiler/sparse warnings.
git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@3177 c6295689-39f2-0310-b995-f0e70906c6a9
2007-06-21 10:07:01 +00:00
aj 4cc1a50a49 Alessandro Premoli:
add support for reading, writing and deleting private (require cache_pins) and
public data objects in PKCS11. updated the pkcs11-tool and fixed a few
bugs in the code. Tested on an aladdin etoken.


git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@3176 c6295689-39f2-0310-b995-f0e70906c6a9
2007-06-21 09:37:18 +00:00
aj a4cd33e77f Douglas E. Engert:
Looking at framework-pkcs11.c, it looks like there is a bug in the handling of
auth_count, if there is more then one pin, and one of the pins is a
SC_PKCS15_PIN_FLAG_SO_PIN. 

The for loop at line 767 will add a slot for each non SO_PIN or UNBLOCKING_PIN.
But at line 812, the auth_count is still set to the number of pins, even though
the SO_PIN did not cause a new slot to be allocated and thus the test of
hide_empty_tokens will not be used. 

With the attached patch, I can get the expected behavior when hide_empty_tokens
= yes in the opensc.conf from pkcs11-tool -L, pkcs11-tool -O and pkcs11-tool -O
-l 

There is only 1 slot allocated, the pkcs11-tool -O shows all the public
objects, and pkcs11-tool -O -l (after PIN) shows all the objects, and Heimdal
PKINIT still runs. 

I still think that if two or more slots need to be allocated for multiple auth
pins, then all the public objects should be added to each. I have an additional
mod for this too. 

Since the cards I am working with only have 1 pin, the attached mods works for
me. Note it looks like the pkcs15-openpgp.c might also be affected by this
change as it defines two pins an auth pin and a SO_PIN, much like the PIV card
does.


git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@3175 c6295689-39f2-0310-b995-f0e70906c6a9
2007-06-21 07:11:21 +00:00
aj 9946e237de Douglas E. Engert:
Major improvments in the PIV card modules: 
* OpenSC-0.11.2 only supported RSA 1K keys, the patch supports RSA 2K and 3K
  keys.
* The FASC-N in the CHUID object is used as the card serial number. 
* A PIV card may have additional objects. These can now be read by pkcs11-tool
  and pkcs15-tool. 
* The p15card-helper.c module is no longer used. The code to call the
  sc_pkcs15emu_* routines has been moved back into pkcs15-piv.c and uses
  existing OpenSC routines to parse the certificate to find the modulus_len. 
* pkcs15-piv.c will now get the modulus_len from the certificates to store into
  the emulated prvkey an pubkey objects as they are being created using the
  sc_pkcs15emu_* routines. 
* The caching code that was added to card-piv.c in 0.11.2 is disabled, as
  pkcs15-piv.c will cache the certificate using existing OpenSC routines. 
* piv-tool will now print a serial number. 
* The key-usage bits for prvkey and pubkey objects are set in pkcs15-piv.c 
* The PIV "9E" key was added. It is not a private object, and can be used
  without a PIN. It is used with the "Certificate for Card Authenticaiton". 
* When used with the OpenSSL engine to generate a certificate request, the
  public key saved by piv-tool during a "generate asymmetric key pair" card
  command can be read from a file pointed at by the environment variable
  PIV_9*_KEY. Where * is A, C, D or E. 
* In the card_atr section of opensc.conf, flags = 20; can be used to only show
  the PIV Authentication cert. This feature was in 0.11.1 but was dropped in
  0.11.2 when the p15card-helper.c was introduced.


git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@3174 c6295689-39f2-0310-b995-f0e70906c6a9
2007-06-21 07:07:49 +00:00
aj 20985fcfdc Added the application name to logging to allow for easier debugging. Since a
lot of testing needed multiple applications to be running, it became important
to know what application was making each log entry. 
This was reported by Russell Larner <rlarner@rsasecurity.com> on 5/17/2007


git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@3173 c6295689-39f2-0310-b995-f0e70906c6a9
2007-05-25 20:10:34 +00:00
aj 6c324049e7 If a PKCS11 get attrribute failes for some reason, pkcs11-tool may return
garbage along with the error message. The attached patch to pkcs11-tool.c
initializes the type to 0 so the attribute will be 0 in case of an error.
by Douglas E. Engert


git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@3172 c6295689-39f2-0310-b995-f0e70906c6a9
2007-05-25 20:09:11 +00:00
aj f065546ccd The framework-pkcs15 will filed the modulus in a certificate and copy it to a
pubkey or from apubkey to a privkey object. But it does not copy the
modulus_len. 

This patch will look at pub_info->modulus_len and prv_info->modulus_len and
copy the modulus_len while copying the modulus.  This will be used with the
pkcs15-piv code when it creates pub and priv objects, as it has no way other
then from the certificates to know the modulus_len.

By  Douglas E. Engert.


git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@3171 c6295689-39f2-0310-b995-f0e70906c6a9
2007-05-25 20:06:59 +00:00
nils a8908b8548 252 bytes work as well
git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@3170 c6295689-39f2-0310-b995-f0e70906c6a9
2007-05-13 15:43:22 +00:00
nils dee4faea64 fix warning
git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@3169 c6295689-39f2-0310-b995-f0e70906c6a9
2007-05-13 09:32:13 +00:00
nils 37157f38ee bugfix: try to read at most 248 bytes
git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@3168 c6295689-39f2-0310-b995-f0e70906c6a9
2007-05-13 09:31:46 +00:00
nils 8135be4166 bugfix: avoid recursion
git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@3167 c6295689-39f2-0310-b995-f0e70906c6a9
2007-05-13 09:30:53 +00:00
aj e3935077e1 enable pin caching by default.
git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@3158 c6295689-39f2-0310-b995-f0e70906c6a9
2007-04-24 07:54:18 +00:00
aj c3438ef4ff use 255/256 bytes as max_send/recv_size by default.
git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@3155 c6295689-39f2-0310-b995-f0e70906c6a9
2007-04-24 07:52:27 +00:00
nils 1645684fd5 increase size of pin buffer
git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@3153 c6295689-39f2-0310-b995-f0e70906c6a9
2007-04-23 19:23:51 +00:00
nils 4199969461 authenticate if data object is protected
git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@3151 c6295689-39f2-0310-b995-f0e70906c6a9
2007-04-23 19:18:46 +00:00
nils 91109128c0 request at most for 256 bytes
git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@3149 c6295689-39f2-0310-b995-f0e70906c6a9
2007-04-15 17:26:42 +00:00
aj c3fcd9f7dd Steve Jacobs: fix muscle driver.
git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@3148 c6295689-39f2-0310-b995-f0e70906c6a9
2007-04-10 19:49:26 +00:00
nils ef7d8ffa86 bugfix: don't use the size of a void pointer, thanks to Carl Przybylek <crprzyby@gmail.com>
git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@3146 c6295689-39f2-0310-b995-f0e70906c6a9
2007-04-01 17:03:08 +00:00
martin d0a0103c70 Build a pkcs11 module with only one pin exposed to overcome issues described in #132. Closes #132
git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@3145 c6295689-39f2-0310-b995-f0e70906c6a9
2007-03-29 10:25:16 +00:00
martin 60b4570531 * Add support for SCARD_E_NO_READERS_AVAILABLE to describe errors like:
{{{
sc.c:201:sc_detect_card_presence: returning with: Unknown error
SCardGetStatusChange failed: 8010002e
}}}
 * When doing a reset with pcsc_reconnect do a cold reset instead a warm one to allow next change
 * Change the protocol force feature to change the protocol with a hard reset only when needed to prevent:
{{{
SCardConnect failed: 8010000f
card.c:228:sc_connect_card: returning with: Unknown error
}}}



git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@3144 c6295689-39f2-0310-b995-f0e70906c6a9
2007-03-21 09:41:08 +00:00
martin fa272faf68 Missing file
git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@3143 c6295689-39f2-0310-b995-f0e70906c6a9
2007-03-21 09:34:10 +00:00
martin 5dba203363 Make sure the right thing is always selected on the card by bypassing cache
git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@3142 c6295689-39f2-0310-b995-f0e70906c6a9
2007-03-21 09:33:40 +00:00
martin 62d2d6cbe0 Simplify esteid detection
git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@3141 c6295689-39f2-0310-b995-f0e70906c6a9
2007-03-21 09:32:36 +00:00
aj e7d88163ea fix --serial option.
git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@3139 c6295689-39f2-0310-b995-f0e70906c6a9
2007-03-18 17:55:15 +00:00
aj 38b9a8091f add missing header file to noinst_HEADERS.
git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@3132 c6295689-39f2-0310-b995-f0e70906c6a9
2007-03-14 18:26:37 +00:00
aj 74610a8fdf Ian Young: use proper card type for acos5.
git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@3131 c6295689-39f2-0310-b995-f0e70906c6a9
2007-03-13 23:10:54 +00:00
aj 25f8509fc1 Douglas E. Engert:
piv-tool needs openssl, so compile only if it is present.


git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@3130 c6295689-39f2-0310-b995-f0e70906c6a9
2007-03-13 20:59:15 +00:00
aj 1ca622b7f7 Patch by Douglas E. Engert:
use c style comments and different header files (for mac os X?).


git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@3129 c6295689-39f2-0310-b995-f0e70906c6a9
2007-03-13 20:57:55 +00:00
aj 97f2569f14 Add acos5 driver by Ian Young.
git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@3128 c6295689-39f2-0310-b995-f0e70906c6a9
2007-03-13 13:38:24 +00:00
aj 39b5c42397 test new chop size (256 bytes by default).
git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@3127 c6295689-39f2-0310-b995-f0e70906c6a9
2007-03-12 20:17:29 +00:00
aj eab8ade2ec changes by Douglas E. Engert:
change the do_decompress* to sc_decompress* and the initialize_* to
sc_pkcs15emu_initialize_* in the new code.


git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@3126 c6295689-39f2-0310-b995-f0e70906c6a9
2007-03-12 20:15:39 +00:00
aj c6954a9c33 full piv update by Thomas harning Jr. and David E. Engert,
adding compression etc. Also enables opensc to be compiled
with and without zlib support.


git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@3125 c6295689-39f2-0310-b995-f0e70906c6a9
2007-03-10 10:46:32 +00:00
vtarasov d7758e6c05 after Douglas Engert's remarks on the coding style
git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@3123 c6295689-39f2-0310-b995-f0e70906c6a9
2007-03-07 12:39:52 +00:00
vtarasov 9e33d45edb some ACLs was forgotten; i compute_signature() le should not be more then 256
git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@3122 c6295689-39f2-0310-b995-f0e70906c6a9
2007-03-07 09:38:01 +00:00
vtarasov 7ce5aa3b13 change inappropriate oberthur profile
git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@3121 c6295689-39f2-0310-b995-f0e70906c6a9
2007-03-05 17:30:35 +00:00
ludovic.rousseau 282000fbae update Giuseppe Amato email at his request (he is no more working for ST
Incard srl)


git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@3120 c6295689-39f2-0310-b995-f0e70906c6a9
2007-03-03 20:24:55 +00:00
martin 1a26ba3d66 Include files from [3113]
git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@3119 c6295689-39f2-0310-b995-f0e70906c6a9
2007-02-09 11:08:11 +00:00
ludovic.rousseau 45f5fcea0e comment out static and unused functions (sc_pkcs15init_read_unusedspace,
sc_pkcs15init_update_unusedspace, merge_paths,
sc_pkcs15init_add_unusedspace and sc_pkcs15init_remove_unusedspace)


git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@3118 c6295689-39f2-0310-b995-f0e70906c6a9
2007-02-06 14:29:45 +00:00
ludovic.rousseau d7a55bb423 correct 3 warning: unused variable 'entry'
git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@3117 c6295689-39f2-0310-b995-f0e70906c6a9
2007-02-06 14:20:44 +00:00
ludovic.rousseau 71bef700bf use SCARD_SCOPE_USER instead of the pcsc-lite specific
SCARD_SCOPE_GLOBAL


git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@3116 c6295689-39f2-0310-b995-f0e70906c6a9
2007-02-06 14:17:02 +00:00
nils a2f622a215 implement support for SHA2 (still experimental)
git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@3115 c6295689-39f2-0310-b995-f0e70906c6a9
2007-02-02 22:15:14 +00:00
nils 1b4472ca9f use const, add yet another ACL
git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@3114 c6295689-39f2-0310-b995-f0e70906c6a9
2007-01-20 12:46:40 +00:00
nils 8cdd0810c7 conditionally check 2048 bit rsa key ops
git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@3113 c6295689-39f2-0310-b995-f0e70906c6a9
2007-01-19 21:10:24 +00:00
nils 139ff4c39c check key size, set so-pin ref
git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@3112 c6295689-39f2-0310-b995-f0e70906c6a9
2007-01-19 21:08:20 +00:00
nils 4c72646a35 increase pointer
git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@3111 c6295689-39f2-0310-b995-f0e70906c6a9
2007-01-15 20:32:58 +00:00
nils 49fe6b5163 undo last change: converting a binary file to utf-8 isn't really a good idea ;-)
git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@3110 c6295689-39f2-0310-b995-f0e70906c6a9
2007-01-09 21:16:52 +00:00
nils 0ccd6daf8d improve get_response logic: try to read at least as much bytes
as indicated in the 0x61xx response.


git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@3109 c6295689-39f2-0310-b995-f0e70906c6a9
2007-01-09 19:41:05 +00:00
aj 6e32cb6e84 improve atr masking code - also mask atr to match.
and add more debugging messages.


git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@3108 c6295689-39f2-0310-b995-f0e70906c6a9
2007-01-09 07:22:58 +00:00
nils 0592929105 remove unnecessary assertion
git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@3107 c6295689-39f2-0310-b995-f0e70906c6a9
2007-01-08 21:10:07 +00:00
nils 1d1b8779e3 use EVP API for DES encryption
git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@3106 c6295689-39f2-0310-b995-f0e70906c6a9
2007-01-08 20:19:10 +00:00
nils 3db0036e8d use EVP api for DES encryption
git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@3105 c6295689-39f2-0310-b995-f0e70906c6a9
2007-01-08 17:04:39 +00:00
martin 1bee8bf5c6 off by 1
git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@3104 c6295689-39f2-0310-b995-f0e70906c6a9
2007-01-07 23:40:44 +00:00
martin 30d0066a58 Stop MS visual studio 2005 complaints.
git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@3103 c6295689-39f2-0310-b995-f0e70906c6a9
2007-01-06 16:35:38 +00:00
nils 2e1c80f3fe use EVP api
git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@3102 c6295689-39f2-0310-b995-f0e70906c6a9
2007-01-06 13:23:52 +00:00
martin 83862fc356 Properly set the defaults for pcsc reader options even if no configuration file is found/available
git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@3101 c6295689-39f2-0310-b995-f0e70906c6a9
2007-01-05 16:36:33 +00:00
martin f747fc0c28 * Add a few debug lines
* Remove the locked status from the reader no matter what SCardEndTransaction thinks - either the card was removed or broken pcsc allowed to reset the card while in a transaction (pcsc-lite before Oct. 2006)



git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@3100 c6295689-39f2-0310-b995-f0e70906c6a9
2007-01-05 16:25:31 +00:00
martin 9f1d63a56c Allow to specify at compile time that a card will work only via pkcs15 emulation. This way no matter what is
configured in the config file (try_emulation_first option) the card is usable via pkcs15 tools.



git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@3099 c6295689-39f2-0310-b995-f0e70906c6a9
2007-01-05 16:20:50 +00:00
martin 779326b9e5 Match EstEID based on ATR contents rather than the full ATR itself.
git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@3098 c6295689-39f2-0310-b995-f0e70906c6a9
2007-01-05 16:13:46 +00:00
vtarasov 210bb4a5aa change encoding
git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@3097 c6295689-39f2-0310-b995-f0e70906c6a9
2007-01-03 11:44:24 +00:00
vtarasov 58b1931640 prepare Oberthur card support for secure messaging
git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@3096 c6295689-39f2-0310-b995-f0e70906c6a9
2007-01-02 10:06:32 +00:00
vtarasov 02215882f3 prepare Oberthur card support for secure messaging
git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@3095 c6295689-39f2-0310-b995-f0e70906c6a9
2007-01-02 10:06:02 +00:00
vtarasov 0d0048e5ad introduce SC_PATH_TYPE_FROM_CURRENT and SC_PATH_TYPE_PARENT path types
git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@3094 c6295689-39f2-0310-b995-f0e70906c6a9
2007-01-02 10:04:35 +00:00
aj dad82e19d7 only the first apdu (command) tells us how many bytes we need to get.
we need to keep this value and call get_response as often as needed
to get them part by part.


git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@3093 c6295689-39f2-0310-b995-f0e70906c6a9
2006-12-29 09:44:13 +00:00
nils d08c8344ec encode max pin length as well
git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@3092 c6295689-39f2-0310-b995-f0e70906c6a9
2006-12-22 12:43:00 +00:00
aj 1a9d5290f1 kill warnings.
git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@3091 c6295689-39f2-0310-b995-f0e70906c6a9
2006-12-19 22:11:07 +00:00
aj db0a552d7b convert to utf-8.
git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@3090 c6295689-39f2-0310-b995-f0e70906c6a9
2006-12-19 21:35:42 +00:00
aj f76ec85fac replace with an ascii test string.
git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@3089 c6295689-39f2-0310-b995-f0e70906c6a9
2006-12-19 21:34:49 +00:00
aj 9287da54da convert to utf-8.
git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@3088 c6295689-39f2-0310-b995-f0e70906c6a9
2006-12-19 21:34:00 +00:00
aj 61c4acc141 convert to utf-8.
git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@3087 c6295689-39f2-0310-b995-f0e70906c6a9
2006-12-19 21:33:40 +00:00
aj 5db87927d4 convert to utf-8.
git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@3086 c6295689-39f2-0310-b995-f0e70906c6a9
2006-12-19 21:33:15 +00:00
aj ad79822134 convert to utf-8.
git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@3085 c6295689-39f2-0310-b995-f0e70906c6a9
2006-12-19 21:32:31 +00:00
aj b3ad2f9dd2 convert to utf-8.
git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@3084 c6295689-39f2-0310-b995-f0e70906c6a9
2006-12-19 21:31:17 +00:00
aj 11064cff89 convert to unix style line ending.
git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@3081 c6295689-39f2-0310-b995-f0e70906c6a9
2006-12-19 20:48:56 +00:00
aj 38720ba5e1 update to latest muscle code.
git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@3080 c6295689-39f2-0310-b995-f0e70906c6a9
2006-12-18 21:58:16 +00:00
aj a157eebec5 apcos driver is not yet commited.
git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@3079 c6295689-39f2-0310-b995-f0e70906c6a9
2006-12-18 21:34:49 +00:00
nils 5977ce4f21 pad only if necessary
git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@3078 c6295689-39f2-0310-b995-f0e70906c6a9
2006-12-18 11:23:42 +00:00
nils c3fbf281b3 remove comment
git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@3077 c6295689-39f2-0310-b995-f0e70906c6a9
2006-12-18 11:22:51 +00:00
nils 0199dfa29b use net size if available
git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@3076 c6295689-39f2-0310-b995-f0e70906c6a9
2006-12-18 11:22:22 +00:00
aj d537651ab7 update to latest pkcs11.h version.
git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@3075 c6295689-39f2-0310-b995-f0e70906c6a9
2006-12-18 07:42:06 +00:00
nils f23ddbdba1 make it work with my compiler, add missing parenthesis
git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@3074 c6295689-39f2-0310-b995-f0e70906c6a9
2006-12-10 13:33:34 +00:00
aj 9aa18ea1ce update to latest pkcs11.h from Marcus.
git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@3073 c6295689-39f2-0310-b995-f0e70906c6a9
2006-12-10 07:57:22 +00:00
aj 44d54b68dd pkcs11.h with updates from Alon.
git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@3071 c6295689-39f2-0310-b995-f0e70906c6a9
2006-12-09 15:41:27 +00:00
jps 462cd0defc Initial support for SetCOSXpresso (GemXpresso R4 with EID 2.x applet)
git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@3070 c6295689-39f2-0310-b995-f0e70906c6a9
2006-12-08 14:56:09 +00:00
aj 31f4fada5b define these constants where used to kill warnings.
git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@3069 c6295689-39f2-0310-b995-f0e70906c6a9
2006-12-07 10:53:37 +00:00
aj 5610edfc2f Thomas Harning: patch to fix the MuscleCard driver to work in the
case of forced drivers.  drv_data is used as a flag so that muscle_init
knows if the applet has been selected during initialization.


git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@3068 c6295689-39f2-0310-b995-f0e70906c6a9
2006-12-07 10:35:40 +00:00
aj b3822c349b update the MuscleCard driver for OpenSC to use an msc_id struct rather than
int/bytes and messing around with byte-swapping for that. (by Thomas Harning)


git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@3067 c6295689-39f2-0310-b995-f0e70906c6a9
2006-11-30 08:14:16 +00:00
aj b9daff9b28 replace rsa pkcs#11 header files with rewrite.
git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@3066 c6295689-39f2-0310-b995-f0e70906c6a9
2006-11-30 08:11:58 +00:00
martin ff5f55417f Have equal number of sc_lock and sc_unlock loglines to aid debugging locking.
git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@3064 c6295689-39f2-0310-b995-f0e70906c6a9
2006-11-28 11:54:51 +00:00
nils 7164006b44 enable APDU logging again
git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@3062 c6295689-39f2-0310-b995-f0e70906c6a9
2006-11-23 22:40:01 +00:00
nils 6b40cf4caa remove unused variable, cleanup
git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@3061 c6295689-39f2-0310-b995-f0e70906c6a9
2006-11-22 19:27:52 +00:00
nils 9be468b3a8 try to read at most max_recv_size bytes in GET RESPONSE
git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@3060 c6295689-39f2-0310-b995-f0e70906c6a9
2006-11-21 22:10:11 +00:00
pk 4744121915 Support for DATEV smartcard classic
git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@3059 c6295689-39f2-0310-b995-f0e70906c6a9
2006-11-18 00:05:48 +00:00
aj 9abf0cc841 size_t is 64bit on 64bit plattforms, thus use %ld and convert to unsigned long.
git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@3058 c6295689-39f2-0310-b995-f0e70906c6a9
2006-11-17 11:50:41 +00:00
nils 28c6c1ebc1 git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@3057 c6295689-39f2-0310-b995-f0e70906c6a9 2006-11-12 21:01:01 +00:00
nils 4f1bdbe99d fix typo
git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@3056 c6295689-39f2-0310-b995-f0e70906c6a9
2006-11-11 11:47:48 +00:00
nils 651d2c554d remove useless code
git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@3055 c6295689-39f2-0310-b995-f0e70906c6a9
2006-11-11 11:46:36 +00:00
nils c208794ca8 check types before concatenating paths
git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@3054 c6295689-39f2-0310-b995-f0e70906c6a9
2006-11-11 11:09:57 +00:00
nils ed2c784d44 update; patch supploed by Douglas E. Engert <deengert@anl.gov>
git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@3053 c6295689-39f2-0310-b995-f0e70906c6a9
2006-11-10 23:07:45 +00:00
nils 4e401b6c06 fix typo
git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@3052 c6295689-39f2-0310-b995-f0e70906c6a9
2006-11-09 21:26:19 +00:00
vtarasov 2d4bd463b0 Use do {...} while(0) construction for SC_TEST_RET, SC_FUNC_RETURN and SC_FUNC_CALLED defines
git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@3050 c6295689-39f2-0310-b995-f0e70906c6a9
2006-11-06 11:15:09 +00:00
nils 7da8984462 set path type; patch supplied by Thomas Irlet <iksiloev@gmail.com>
git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@3049 c6295689-39f2-0310-b995-f0e70906c6a9
2006-11-02 13:58:58 +00:00
vtarasov 71aab076aa When forgetting PIN set to 'null' the corresponding named_pin's entry
git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@3048 c6295689-39f2-0310-b995-f0e70906c6a9
2006-11-02 09:19:17 +00:00
aj ef012c94f5 Thomas Harning: sc_list_files doesn't return the length of the
applicable buffer, but instead the # of files. Fixed.


git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@3047 c6295689-39f2-0310-b995-f0e70906c6a9
2006-11-02 06:55:29 +00:00
pk 1c78d9e688 Netkey E4 emulation
git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@3046 c6295689-39f2-0310-b995-f0e70906c6a9
2006-10-31 17:29:19 +00:00
nils 01f72933af add support to parse the seInfo TokenInfo entry, improve aid support in opensc-explorer
git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@3045 c6295689-39f2-0310-b995-f0e70906c6a9
2006-10-30 18:51:48 +00:00
ludovic.rousseau bd753c4967 use the OPENSC_DEBUG environment variable to overwite the configuration
variable debug in opensc.conf


git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@3043 c6295689-39f2-0310-b995-f0e70906c6a9
2006-10-30 07:37:44 +00:00
martin 821a009609 New EstEID v1.5 card ATR
git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@3042 c6295689-39f2-0310-b995-f0e70906c6a9
2006-10-09 15:09:44 +00:00
ludovic.rousseau 07b7abdccd c_asn1_toki[]: the serialNumber field is not mandatory in ISO 7816-15
see
http://www.opensc-project.org/pipermail/opensc-devel/2006-October/009025.html


git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@3041 c6295689-39f2-0310-b995-f0e70906c6a9
2006-10-04 07:00:15 +00:00
nils 65658db6e4 make the decision which locking functions to use more explicit; patch supplied by Martin
git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@3040 c6295689-39f2-0310-b995-f0e70906c6a9
2006-10-02 17:26:48 +00:00
nils e2dea71ad4 restore backward compatibility: try READ BINARY in case of a unknown file type
git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@3039 c6295689-39f2-0310-b995-f0e70906c6a9
2006-10-02 16:49:26 +00:00
ludovic.rousseau 4a296307ac c_asn1_ddo[]: the oid field of the DDO is not mandatory in ISO 7816-15
See
http://www.opensc-project.org/pipermail/opensc-devel/2006-October/009022.html


git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@3038 c6295689-39f2-0310-b995-f0e70906c6a9
2006-10-02 13:46:00 +00:00
nils 45e22aa7be add the possibility to read the pin from stdin
git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@3036 c6295689-39f2-0310-b995-f0e70906c6a9
2006-10-02 10:34:57 +00:00
nils aeae39f47d fix warnings
git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@3035 c6295689-39f2-0310-b995-f0e70906c6a9
2006-10-01 20:52:37 +00:00
nils 7c823d89ca fix warning
git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@3034 c6295689-39f2-0310-b995-f0e70906c6a9
2006-10-01 20:39:53 +00:00
nils a946dc98bf set CKF_USER_PIN_INITIALIZED only if we really have a pin object
git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@3033 c6295689-39f2-0310-b995-f0e70906c6a9
2006-09-27 22:10:12 +00:00
ludovic.rousseau 1ac9b2aba1 sc_pkcs15_make_absolute_path(): a 0 length path stays a 0 length pat
git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@3032 c6295689-39f2-0310-b995-f0e70906c6a9
2006-09-27 12:02:02 +00:00
ludovic.rousseau 45fc350513 iso7816_process_fci(): dump the filename in Hex + ASCII instead of just
ASCII in the debug log


git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@3031 c6295689-39f2-0310-b995-f0e70906c6a9
2006-09-27 12:01:31 +00:00
nils 11779dce60 fix apdu
git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@3030 c6295689-39f2-0310-b995-f0e70906c6a9
2006-09-26 18:17:14 +00:00
nils 636f694291 check if the ef type is in range; thanks to Thomas Irlet
git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@3029 c6295689-39f2-0310-b995-f0e70906c6a9
2006-09-26 18:01:03 +00:00
henryk b45617c451 Make absolute paths from all paths read from the PKCS#15 directories by prepending the DF(PKCS#15) path if necessary.
Fixes compatibility with Siemens HiPath SIcurity formatted cards which use relative paths.


git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@3028 c6295689-39f2-0310-b995-f0e70906c6a9
2006-09-26 10:55:02 +00:00
henryk 12c6b11bdd Fix handling for SIMPLE-TLV records with a three-byte length
git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@3027 c6295689-39f2-0310-b995-f0e70906c6a9
2006-09-26 10:43:28 +00:00
henryk 325b9480ea opensc-siemens.diff
Adds support for record-oriented files in linear variable, simple-tlv format.
TODO: Add support for all the other file formats, too.


git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@3026 c6295689-39f2-0310-b995-f0e70906c6a9
2006-09-26 10:36:35 +00:00
henryk 5a0e1849d5 Make do { ... } while (...); into while (...) { ... };.
Fixes behaviour with empty files.


git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@3025 c6295689-39f2-0310-b995-f0e70906c6a9
2006-09-26 10:31:03 +00:00
nils f087a937ff implement workaround for the Taiwanese id card
git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@3024 c6295689-39f2-0310-b995-f0e70906c6a9
2006-09-24 14:05:06 +00:00
nils 8d38746c28 keep index and count parameters
git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@3023 c6295689-39f2-0310-b995-f0e70906c6a9
2006-09-24 12:50:41 +00:00
nils bf389495a8 add starcos spk 2.4 ATR
git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@3022 c6295689-39f2-0310-b995-f0e70906c6a9
2006-09-22 14:34:51 +00:00
nils eb3b27709c bugfix
git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@3021 c6295689-39f2-0310-b995-f0e70906c6a9
2006-09-22 14:18:22 +00:00
aj 91912bab20 scconf needs strlcpy too.
git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@3020 c6295689-39f2-0310-b995-f0e70906c6a9
2006-09-20 13:33:50 +00:00
aj d2e004d09b ntohl is in ws2_32.lib / dll.
git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@3019 c6295689-39f2-0310-b995-f0e70906c6a9
2006-09-20 12:32:59 +00:00
aj a39e3824e4 don't forget part10.h (only used on windows I think).
git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@3018 c6295689-39f2-0310-b995-f0e70906c6a9
2006-09-20 12:10:05 +00:00
nils a127dd93ef add option to write data objects; patch supplied by Cornelius Kölbel <cornelius.koelbel@lsexperts.de> et. al.
git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@3017 c6295689-39f2-0310-b995-f0e70906c6a9
2006-09-18 05:30:41 +00:00
nils 1104e92bde remove check for T0 as it seems to work for T1 as well
git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@3016 c6295689-39f2-0310-b995-f0e70906c6a9
2006-09-17 18:34:52 +00:00
ludovic.rousseau 3e2e82dde9 C_GetInfo(): use "OpenSC (www.opensc-project.org)" instead of
"OpenSC Project (www.opensc-project.org)" for the manufacturerID to
avoid a truncation at 32 characters


git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@3012 c6295689-39f2-0310-b995-f0e70906c6a9
2006-09-14 08:55:06 +00:00
martin b1a87b6fa5 Make sure every new opensc instance sees the card from the sight starting point.
git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@3011 c6295689-39f2-0310-b995-f0e70906c6a9
2006-09-04 20:01:20 +00:00
martin 3fab062b09 Update for [2836] chganges.
git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@3010 c6295689-39f2-0310-b995-f0e70906c6a9
2006-09-03 15:58:36 +00:00
aj 198b68a6d3 shorten string, fixing #98.
git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@3009 c6295689-39f2-0310-b995-f0e70906c6a9
2006-08-27 18:25:43 +00:00
martin adc082b957 * Fix endianness for PCSCv2 part 10 IOCTLs
* Add support for start/finish style IOCTLs
 * Add support for the same pinpad functionality on windows
 
Some code from Robert Konklewski and Ludovic Rousseau
 


git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@3007 c6295689-39f2-0310-b995-f0e70906c6a9
2006-08-16 16:36:00 +00:00
aj 4608716c53 Douglas E. Engert:
Change PKCS11-Spy so it looks in HKEY_LOCAL_MACHINE, before
HKEY_LOCAL_USER.

This should not cause any problems, as the HKEY_LOCAL_MACHINE,
"Software\PKCS11-Spy" would not normally be set, accept while
the sysadmin of the machine as trying to debug a login type problem. 


git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@3006 c6295689-39f2-0310-b995-f0e70906c6a9
2006-08-13 21:20:05 +00:00
nils aec987df38 build fixes for win; patch supplied by Douglas E. Engert <deengert@anl.gov>
git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@3005 c6295689-39f2-0310-b995-f0e70906c6a9
2006-08-03 21:05:59 +00:00
nils b5dbdd9475 fix warnings
git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@3004 c6295689-39f2-0310-b995-f0e70906c6a9
2006-08-02 19:43:13 +00:00
nils 42ad6be451 win build fixes; patch supplied by Douglas E. Engert <deengert@anl.gov>
git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@3003 c6295689-39f2-0310-b995-f0e70906c6a9
2006-08-02 19:31:34 +00:00
nils 81fd37e617 fix sc_compare_path_prefix(); patch supplied by Henryk Plötz <henryk@ploetzli.ch>
git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@3002 c6295689-39f2-0310-b995-f0e70906c6a9
2006-08-01 18:49:08 +00:00
nils 0037ceb09c check the value of the pin type before accessing the array; patch supplied by Henryk Plötz <henryk@ploetzli.ch>
git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@3001 c6295689-39f2-0310-b995-f0e70906c6a9
2006-07-23 08:02:37 +00:00
nils 5efe5b3603 bugfix: copy the first n characters (if possible)
git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@2999 c6295689-39f2-0310-b995-f0e70906c6a9
2006-07-14 08:18:57 +00:00
nils 886e63c60e cardos v4.3b support
git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@2998 c6295689-39f2-0310-b995-f0e70906c6a9
2006-07-13 21:01:46 +00:00
nils ae5866b244 don't accept invalid OIDs
git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@2997 c6295689-39f2-0310-b995-f0e70906c6a9
2006-07-13 20:40:50 +00:00
nils 940c67b78a cardos v4.3
git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@2996 c6295689-39f2-0310-b995-f0e70906c6a9
2006-07-13 20:37:05 +00:00
nils d502887f55 bugfixes ...
git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@2995 c6295689-39f2-0310-b995-f0e70906c6a9
2006-07-13 20:35:17 +00:00
nils 9a5bf3602d initialize pointer
git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@2994 c6295689-39f2-0310-b995-f0e70906c6a9
2006-07-13 19:59:23 +00:00
ludovic.rousseau 126593aa01 - use strlcpy() instead of strncpy() to always have a terminating
NUL-byte

- use sizeof(field) instead of SC_PKCS15_MAX_LABEL_SIZE-1 or equivalent as
  the 3rd argument of strlcpy()


git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@2993 c6295689-39f2-0310-b995-f0e70906c6a9
2006-07-12 08:12:38 +00:00
ludovic.rousseau 382a7d6301 add $(top_srcdir)/src/common/strlcpy.c to libscconf_la_SOURCES since
src/scconf/parse.c now uses strlcpy().

Note that, since libopensc uses libscconf, strlcpy() will be available
from any program linked with libopensc


git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@2992 c6295689-39f2-0310-b995-f0e70906c6a9
2006-07-12 08:09:58 +00:00
ludovic.rousseau 5e922b5325 add -I$(top_srcdir)/src/common so that strlcpy.h is found
git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@2991 c6295689-39f2-0310-b995-f0e70906c6a9
2006-07-12 08:06:59 +00:00
ludovic.rousseau 9ce3d4c663 add strlcpy.{c,h} from
ftp://ftp.openbsd.org/pub/OpenBSD/src/lib/libc/string/


git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@2990 c6295689-39f2-0310-b995-f0e70906c6a9
2006-07-12 08:05:54 +00:00
ludovic.rousseau 2495268d98 - remove src/common/getopt.h since it collide with /usr/include/getopt.h
- replace @GETOPTSRC@ by $(top_srcdir)/src/common/my_getopt.c in
  Makefile.am files

- change the detection of getopt_long in configure.in since GETOPTSRC is
  not used anymore. my_getopt.c is now always compiled and used but
  provides getopt_long() only if HAVE_GETOPT_H is NOT defined (ie. if
  getopt_long() is not provided by the system)

- src/common/my_getopt.c: the code is within #ifndef HAVE_GETOPT_H

- move the useful lines of src/common/getopt.h in src/common/my_getopt.h


git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@2989 c6295689-39f2-0310-b995-f0e70906c6a9
2006-07-12 07:43:38 +00:00
ludovic.rousseau 1eb33bc946 rename README in README.my_getopt
git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@2988 c6295689-39f2-0310-b995-f0e70906c6a9
2006-07-12 07:32:40 +00:00
ludovic.rousseau 39a4d12795 use LIBASSUAN_* instead of ASSUAN_* so the assuan library is correctly
found and we avoid "undefined symbol: assuan_strerror
(.libs/opensc-signer.so)", etc


git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@2987 c6295689-39f2-0310-b995-f0e70906c6a9
2006-07-12 06:41:10 +00:00
nils fdd0baa633 bugfix: return error if OID is invalid
git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@2986 c6295689-39f2-0310-b995-f0e70906c6a9
2006-07-11 22:25:45 +00:00
nils c044be5c72 fix typo
git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@2985 c6295689-39f2-0310-b995-f0e70906c6a9
2006-07-11 21:43:44 +00:00
nils a29a92686e changes for cardos 4.3b
git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@2984 c6295689-39f2-0310-b995-f0e70906c6a9
2006-07-08 12:31:33 +00:00
aj 6287cf4d9b replace static buffer with dynamically allocated buffer.
patch by Tomasz Lemiech to fix a problem with setec cards.


git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@2983 c6295689-39f2-0310-b995-f0e70906c6a9
2006-07-05 19:45:53 +00:00
aj 7dd7df4e7c Tomasz Lemiech wrote: I found that struct c_asn1_odf[] in pkcs15.c does not
define secretKeys object (as specified in PKCS#15 v. 1.1 standard, par. 6.2).
I consider this to be an omission. My Setec card contains objects of this type
and all PKCS#15 operations fail with "Unable to parse ODF". Attached patch
fixes this issue. 


git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@2982 c6295689-39f2-0310-b995-f0e70906c6a9
2006-07-05 19:36:26 +00:00
aj 607e85ad9b add new atr reported by Sven Loeschner as Cryptoflex 32k Card.
git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@2981 c6295689-39f2-0310-b995-f0e70906c6a9
2006-06-27 21:54:24 +00:00
sth ee37240479 Added doxygen comments
git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@2980 c6295689-39f2-0310-b995-f0e70906c6a9
2006-06-27 17:56:19 +00:00
sth bf23c032ca Endian-independent way to convert numbers to a byte array + vice versa
git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@2979 c6295689-39f2-0310-b995-f0e70906c6a9
2006-06-27 17:49:19 +00:00
aj ec38927731 check for environment variable first on windows, too.
git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@2978 c6295689-39f2-0310-b995-f0e70906c6a9
2006-06-26 21:03:11 +00:00
nils fae6f3feae fix apdu types and response buffer length
git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@2977 c6295689-39f2-0310-b995-f0e70906c6a9
2006-06-23 16:09:18 +00:00
nils 6df2a05975 bring implementation in accordance with the docu in opensc.conf
git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@2976 c6295689-39f2-0310-b995-f0e70906c6a9
2006-06-21 20:05:17 +00:00
aj f1d9cda57c the cryptoflex manual states the last two bytes of the atr are some
software version so we can ignore them. use the atr mask to do that.


git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@2975 c6295689-39f2-0310-b995-f0e70906c6a9
2006-06-19 23:04:13 +00:00
nils 5c9c6aaff0 fix docu
git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@2974 c6295689-39f2-0310-b995-f0e70906c6a9
2006-06-19 19:01:39 +00:00
sth 6d96437c4a The applet returns unexpected values when entering a wrong PIN; this is a work-around by Thomas Harning
git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@2973 c6295689-39f2-0310-b995-f0e70906c6a9
2006-06-18 20:52:10 +00:00
nils 409fe3a9a0 fix warnings
git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@2972 c6295689-39f2-0310-b995-f0e70906c6a9
2006-06-17 15:07:49 +00:00
nils 88bae5c923 remove iso logout function, remove dummy logout functions and remove logout call from sc_unlock()
git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@2971 c6295689-39f2-0310-b995-f0e70906c6a9
2006-06-17 12:24:04 +00:00
nils 5691420588 fix warning
git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@2970 c6295689-39f2-0310-b995-f0e70906c6a9
2006-06-16 20:47:59 +00:00
aj 746dc392d8 Fix makefile: add muscle files.
git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@2969 c6295689-39f2-0310-b995-f0e70906c6a9
2006-06-08 08:12:50 +00:00
sth 50490acca0 Added support for MuscleCard applet. Thanks to Thomas Harning, David Corcoran of Identity Alliance
git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@2968 c6295689-39f2-0310-b995-f0e70906c6a9
2006-06-07 08:33:37 +00:00
aj e225efc982 add new card reported to work by Christian Koegler. Thanks Christian!
git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@2967 c6295689-39f2-0310-b995-f0e70906c6a9
2006-06-06 06:00:51 +00:00
aj f9dd89e53b sprintf bad. maybe even potential exploitable?
bug found by ville skytta using pscan.


git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@2964 c6295689-39f2-0310-b995-f0e70906c6a9
2006-05-23 20:53:15 +00:00
aj 5d1f80d9fa fix compiling netkey-tool on win32.
git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@2963 c6295689-39f2-0310-b995-f0e70906c6a9
2006-05-23 12:55:40 +00:00
aj d42495b01d try to fix windows compile (include netkey-tool and cryptoflex-tool).
git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@2960 c6295689-39f2-0310-b995-f0e70906c6a9
2006-05-23 09:09:29 +00:00
aj 0f64e9d3f1 make objects on piv card public.
git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@2957 c6295689-39f2-0310-b995-f0e70906c6a9
2006-05-20 16:06:42 +00:00
aj c7a5ce3b50 revert prior change as it breaks the regression tests.
git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@2956 c6295689-39f2-0310-b995-f0e70906c6a9
2006-05-20 16:05:14 +00:00
ludovic.rousseau 1c56f74b6c pcsc_connect(): use an explicit debug message if the reader supports PIN
verification/modification but that feature is not enabled in opensc.conf
(enable_pinpad = true)


git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@2954 c6295689-39f2-0310-b995-f0e70906c6a9
2006-05-17 09:07:17 +00:00
nils bfe05f31dc check for existing public key before creating one from the certificate; patch supplied by Albert Solana <asb@c3po.es>
git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@2953 c6295689-39f2-0310-b995-f0e70906c6a9
2006-05-15 18:48:30 +00:00
aj 77ce30fe26 Douglas E. Engert:
removes the private bit on the pubkey. Without this change the openssl req with engine can not be used to generate a certificate request, as it will not be 
able to find the public key that should have been saved by the piv-tool when 
the private key was generated on the card.


git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@2951 c6295689-39f2-0310-b995-f0e70906c6a9
2006-05-12 20:03:45 +00:00
aj 45007b3da7 compile fixes for win32.
git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@2949 c6295689-39f2-0310-b995-f0e70906c6a9
2006-05-12 20:01:26 +00:00
nils b28f8ed9c4 improve buffer length check
git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@2943 c6295689-39f2-0310-b995-f0e70906c6a9
2006-05-09 21:35:07 +00:00
aj f7110c593b oops, we forgot to update the version. fix that for opensc 0.11.1.
git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@2942 c6295689-39f2-0310-b995-f0e70906c6a9
2006-05-09 19:39:33 +00:00
nils 0c39b21b99 set the default for lock_login to false (as documented in opensc.conf)
git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@2941 c6295689-39f2-0310-b995-f0e70906c6a9
2006-05-05 10:35:02 +00:00
nils dd44fd8234 if the card doesn't support a logout functionality it's not an error
git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@2940 c6295689-39f2-0310-b995-f0e70906c6a9
2006-05-05 10:10:00 +00:00
nils 9b52eebdda bugfix: Le must be <= buffer size
git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@2939 c6295689-39f2-0310-b995-f0e70906c6a9
2006-05-05 10:06:38 +00:00
aj d78f5ad5c2 piv fixes by Douglas E. Engert.
This patch will allow a flag in the opensc.conf file to be set to
only expose the PIV authentication certificate and matching keys.


git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@2938 c6295689-39f2-0310-b995-f0e70906c6a9
2006-05-04 06:50:56 +00:00
nils 9e5ed96912 use correct ef attribute in switch statement; thanks to Chaskiel M Grundman <cg2v@andrew.cmu.edu>
git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@2937 c6295689-39f2-0310-b995-f0e70906c6a9
2006-05-03 07:16:38 +00:00
aj 21c821194b close memory leaks.
git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@2935 c6295689-39f2-0310-b995-f0e70906c6a9
2006-05-01 10:27:06 +00:00
aj a48fe86b66 close some memory leaks.
git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@2934 c6295689-39f2-0310-b995-f0e70906c6a9
2006-05-01 10:26:17 +00:00
aj 65a2cabffc make sure result is null-terminated.
git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@2933 c6295689-39f2-0310-b995-f0e70906c6a9
2006-05-01 10:23:15 +00:00
aj 6cfbd9d4f9 at least partialy close memory leak.
git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@2932 c6295689-39f2-0310-b995-f0e70906c6a9
2006-05-01 10:22:25 +00:00
aj 45742fc5d0 check df before dereferencing it.
git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@2931 c6295689-39f2-0310-b995-f0e70906c6a9
2006-05-01 10:21:16 +00:00
aj 449a1841b1 free(data)
(allocated by sc_pkcs15_read_data_object, no reference kept anywhere).


git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@2930 c6295689-39f2-0310-b995-f0e70906c6a9
2006-05-01 10:20:22 +00:00
aj 5cb1c13c45 if exec() fails, exit with return code 1.
git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@2929 c6295689-39f2-0310-b995-f0e70906c6a9
2006-05-01 10:17:11 +00:00
aj 56082ee3a0 initialize with NULL, so the later check for NULL will work.
git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@2928 c6295689-39f2-0310-b995-f0e70906c6a9
2006-05-01 10:16:48 +00:00
aj b507ee68e4 add support for d-trust cards.
git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@2927 c6295689-39f2-0310-b995-f0e70906c6a9
2006-05-01 10:12:36 +00:00
aj 8fe04d5a86 revert bogus change.
git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@2926 c6295689-39f2-0310-b995-f0e70906c6a9
2006-05-01 10:10:35 +00:00
aj 6258b954e3 bogus change, no segfault here.
git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@2925 c6295689-39f2-0310-b995-f0e70906c6a9
2006-05-01 10:07:53 +00:00
aj 7c6baba8e7 revert bogus patch.
git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@2924 c6295689-39f2-0310-b995-f0e70906c6a9
2006-05-01 10:06:35 +00:00
aj ab0066b0d7 fix printf size_t problem with "%lu" and (unsigned long) cast.
git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@2923 c6295689-39f2-0310-b995-f0e70906c6a9
2006-05-01 10:02:50 +00:00
pk_opensc 60d9e4bf0e TCOS-Emulation, support for Uni-Giessen card
git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@2920 c6295689-39f2-0310-b995-f0e70906c6a9
2006-04-29 22:10:32 +00:00
ludovic.rousseau 2b4e6a5e98 fix a memory leak that occurs when the APDU exchange fails
git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@2919 c6295689-39f2-0310-b995-f0e70906c6a9
2006-04-27 20:44:24 +00:00
aj 41ff15ec1f fix signed and size_t warnings.
git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@2916 c6295689-39f2-0310-b995-f0e70906c6a9
2006-04-26 11:41:57 +00:00
aj 03f5827c30 make sure buffer is 0 terminated.
git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@2913 c6295689-39f2-0310-b995-f0e70906c6a9
2006-04-26 10:08:00 +00:00
aj 2327835416 fix a memory leak.
don't access buffer beyond length.


git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@2912 c6295689-39f2-0310-b995-f0e70906c6a9
2006-04-26 10:07:20 +00:00
aj 878f9c3de2 maybe it would be good to check the return value?
git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@2909 c6295689-39f2-0310-b995-f0e70906c6a9
2006-04-26 10:05:55 +00:00
aj 156e3a574d maybe it would be good to check he return value?
git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@2908 c6295689-39f2-0310-b995-f0e70906c6a9
2006-04-26 10:05:21 +00:00
aj 5dcaeccb1e fix double free and segfault.
git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@2905 c6295689-39f2-0310-b995-f0e70906c6a9
2006-04-26 10:04:33 +00:00
aj 8df47f6bb0 fix memory leak.
git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@2904 c6295689-39f2-0310-b995-f0e70906c6a9
2006-04-26 10:02:31 +00:00
aj 7ffd0f1d79 remove dead code.
git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@2902 c6295689-39f2-0310-b995-f0e70906c6a9
2006-04-26 10:01:52 +00:00
aj 3066830238 close memory leaks.
git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@2899 c6295689-39f2-0310-b995-f0e70906c6a9
2006-04-26 10:01:06 +00:00
aj beb55b8104 not sure it is a good idea to ignore the return value.
git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@2898 c6295689-39f2-0310-b995-f0e70906c6a9
2006-04-26 10:00:23 +00:00
aj 8fa4891bde no idea how to fix, at least document it.
git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@2895 c6295689-39f2-0310-b995-f0e70906c6a9
2006-04-26 09:59:27 +00:00
aj 96cb7fa722 fix off by one bug.
git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@2893 c6295689-39f2-0310-b995-f0e70906c6a9
2006-04-26 09:58:47 +00:00
aj 1810d4d3fb tcos updates by Peter Koch.
git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@2891 c6295689-39f2-0310-b995-f0e70906c6a9
2006-04-24 18:41:57 +00:00
aj 347c5b0496 remove a function that is no longer used at all.
git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@2888 c6295689-39f2-0310-b995-f0e70906c6a9
2006-04-18 15:15:45 +00:00
aj 807b4c7275 improve regression tests: cleanup failed/ and out/ folder.
specify path to opensc-pkcs11.so module.


git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@2887 c6295689-39f2-0310-b995-f0e70906c6a9
2006-04-18 15:15:02 +00:00
aj 5adad6431a Lindent so the result is easier to read / diff.
git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@2886 c6295689-39f2-0310-b995-f0e70906c6a9
2006-04-18 08:16:21 +00:00
aj 0222683058 Douglas E. Engert wrote:
The attached change to card-piv.c is need to recognize a
valid PIV card applet. All of the previous test cards would
return in response to a SELECT the full AID where as they
should have returned the the PIX portion of the AID. The newest
test cards are now doing this correctly.

This change will recognize either as a PIV applet.


git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@2885 c6295689-39f2-0310-b995-f0e70906c6a9
2006-04-11 20:50:13 +00:00
sth 435d8ac62b There doesn't seem to be a need to leave the certs (and CDF) unprotected. In case there do are problems, please revert this change
git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@2884 c6295689-39f2-0310-b995-f0e70906c6a9
2006-04-06 18:41:12 +00:00
sth 9409c278df Set the user pin reference when writing a cert. If not, there's a problem with the onepin profile option: the CDF (and certs) will be created with NONE ACs instead of ACs that refer to the user PIN
git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@2883 c6295689-39f2-0310-b995-f0e70906c6a9
2006-04-06 18:38:20 +00:00
sth 95163a2678 protect certs by default
git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@2882 c6295689-39f2-0310-b995-f0e70906c6a9
2006-04-06 18:35:01 +00:00
nils 83c7dc9045 return an error if offset is too large
git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@2881 c6295689-39f2-0310-b995-f0e70906c6a9
2006-04-03 10:42:00 +00:00
aj 41d35027cc install signer in libdir like everything else.
git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@2880 c6295689-39f2-0310-b995-f0e70906c6a9
2006-03-24 23:54:12 +00:00
nils b791b1d6bc check the private flag of public key objects; patch supplied by Albert Solana <asb@c3po.es>
git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@2879 c6295689-39f2-0310-b995-f0e70906c6a9
2006-03-24 10:55:33 +00:00
martin 1180345d75 Threading: Reader locking can fail as well
git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@2878 c6295689-39f2-0310-b995-f0e70906c6a9
2006-03-24 08:06:19 +00:00
nils 8be396fee3 add function sc_reset() to reset a card; patch supplied by Josep Monés Teixidor <jmt@c3po.es>
git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@2877 c6295689-39f2-0310-b995-f0e70906c6a9
2006-03-22 21:44:09 +00:00
nils 40e6c491ed fix ACs; patch supplied by njustin@idealx.com
git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@2876 c6295689-39f2-0310-b995-f0e70906c6a9
2006-03-22 17:12:00 +00:00
nils 8e170f689e initial support for the Swedish NIDEL card
git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@2873 c6295689-39f2-0310-b995-f0e70906c6a9
2006-03-09 20:35:19 +00:00
ludovic.rousseau 2b8a2f4d90 sc_pkcs15_parse_tokeninfo() and sc_pkcs15_encode_tokeninfo() now use a
(sc_pkcs15_tokeninfo_t *) instead of struct (sc_pkcs15_card *)


git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@2872 c6295689-39f2-0310-b995-f0e70906c6a9
2006-03-07 07:22:58 +00:00
ludovic.rousseau 6737a4dc5c __sc_ui_read_pin(): use "%lu" and (unsigned long) cast to print a (size_t)
value (size_t is 32 or 64 bits depending on the platform)


git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@2871 c6295689-39f2-0310-b995-f0e70906c6a9
2006-03-06 09:21:22 +00:00
nils 383602b6fe - move logging to the reader driver
- log APDUs only if DEBUG is defined (sensitive APDUs should
  never be logged and we cannot know whether a APDU is sensitive
  or not => enable APDU logging only in a non-production debug
  build)
- remove OPENSC_DONT_LOG_SENSITIVE configure option as it's 
  needed anymore 


git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@2868 c6295689-39f2-0310-b995-f0e70906c6a9
2006-03-03 22:56:41 +00:00
nils beb9d34db0 add some doxygen comments
git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@2867 c6295689-39f2-0310-b995-f0e70906c6a9
2006-03-03 21:10:02 +00:00
nils d893720f03 add note
git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@2866 c6295689-39f2-0310-b995-f0e70906c6a9
2006-03-02 18:24:45 +00:00
nils 3b25ca27e9 remove useless code
git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@2865 c6295689-39f2-0310-b995-f0e70906c6a9
2006-03-02 16:17:05 +00:00
ludovic.rousseau d1c9ee9087 sc_pkcs15emu_actalis_init(): define 3 variables only #ifdef HAVE_ZLIB_H
since they are used in this case only


git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@2864 c6295689-39f2-0310-b995-f0e70906c6a9
2006-03-02 14:16:52 +00:00
ludovic.rousseau 984d652072 __sc_ui_read_pin(): use %lu instead of %u to avoid a warning: format
'%u' expects type 'unsigned int', but argument 3 has t ype 'size_t'


git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@2863 c6295689-39f2-0310-b995-f0e70906c6a9
2006-03-02 14:12:39 +00:00
nils 0bc5cb45fe mark second parameter of sc_disconnect_card() as unused
git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@2862 c6295689-39f2-0310-b995-f0e70906c6a9
2006-03-01 22:34:54 +00:00
martin e1ef4ec241 Remove the disconnect action from internal reader api
git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@2861 c6295689-39f2-0310-b995-f0e70906c6a9
2006-03-01 09:45:09 +00:00