Commit Graph

179 Commits

Author SHA1 Message Date
nils 08826acb4d flags/types are unsigned int, the exponent shouldn't be negative and more const
git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@2040 c6295689-39f2-0310-b995-f0e70906c6a9
2004-12-22 09:54:41 +00:00
nils 8673508a43 fix memory leak, cleanup: use object specific release method
git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@2024 c6295689-39f2-0310-b995-f0e70906c6a9
2004-12-18 14:14:57 +00:00
nils 5985415603 some cleanup: 'int' -> 'unsigned int' for flags, 'int' -> 'size_t'
for length + remove some compiler warnings


git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@1940 c6295689-39f2-0310-b995-f0e70906c6a9
2004-10-17 20:20:59 +00:00
nils 5b4730dabd flags should be stored in a 'unsigned int' (at least this seems to be
the convention in libopensc) => change tokenInfo flags from
'unsigned long' to 'unsigned int'


git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@1936 c6295689-39f2-0310-b995-f0e70906c6a9
2004-10-17 16:46:34 +00:00
nils 5a328e3dcc update pkcs15 emulation stuff
git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@1916 c6295689-39f2-0310-b995-f0e70906c6a9
2004-10-08 21:29:55 +00:00
nils 02cbe02bc2 include common object attributes in the sc_pkcs15emu_add_* api
git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@1781 c6295689-39f2-0310-b995-f0e70906c6a9
2004-05-04 17:58:04 +00:00
sth 345d30a9d6 Moved the sc_pkcs15emu_xxx() functions to pkcs15_syn.c
git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@1755 c6295689-39f2-0310-b995-f0e70906c6a9
2004-03-08 13:59:27 +00:00
sth 9abadbc711 Increased the maximum number of PINs and removed some unused #defines
git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@1713 c6295689-39f2-0310-b995-f0e70906c6a9
2004-01-07 09:51:07 +00:00
okir 9ee5c76a4d - Support direct encoding of certs in the CDF
- Added prototypes for sc_der_{copy,clear}
- Changed sc_pkcs15_print_id to return const char *


git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@1613 c6295689-39f2-0310-b995-f0e70906c6a9
2003-11-19 20:31:52 +00:00
okir d91ecdc245 - Moved sc_pkcs15_bind_synthetic to a separate file
- Moved sc_pkcs15_print_card to ../tests/print.c
- added dll_handle and preferred_language fields to p15card


git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@1583 c6295689-39f2-0310-b995-f0e70906c6a9
2003-10-31 12:26:24 +00:00
okir d3d7664c11 - Changed the internal object search machinery quite a bit so it
can search for more than one type of object at the same time.
- When enumerating a DF as part of the search, no longer ignore all
  errors.
- When parsing a DF, SC_ERROR_ASN1_END_OF_CONTENTS really means
  we've just reached the end of data in the file, so return 0
  instead


git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@1573 c6295689-39f2-0310-b995-f0e70906c6a9
2003-10-30 11:43:21 +00:00
okir 9e70efba8a - sc_pkcs15_find_pin_by_reference now searches by reference and path
git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@1548 c6295689-39f2-0310-b995-f0e70906c6a9
2003-10-21 11:02:48 +00:00
okir 45e820cdac - added sc_pkcs15_find_prkey_by_reference
git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@1506 c6295689-39f2-0310-b995-f0e70906c6a9
2003-10-13 14:35:27 +00:00
sth 3669fa86e7 Increased the pkcs15 ID size from 16 to 255
git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@1238 c6295689-39f2-0310-b995-f0e70906c6a9
2003-06-28 07:02:26 +00:00
okir 7fe0ba8749 - fixed typodef in sc_pkcs15_*_info_t (spotted by Nils)
git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@1178 c6295689-39f2-0310-b995-f0e70906c6a9
2003-05-30 09:54:14 +00:00
okir 2abc504051 - remove signedness warnings printed by new gcc
git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@1176 c6295689-39f2-0310-b995-f0e70906c6a9
2003-05-30 08:54:42 +00:00
okir 27e105540e - added sc_pkcs15_find_pin_by_reference
git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@1114 c6295689-39f2-0310-b995-f0e70906c6a9
2003-05-15 11:27:38 +00:00
aj 7cbe523cc4 At least the rainbow ikey 3000 need bigger labels.
Label size should be 255, as per pkcs15.


git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@1100 c6295689-39f2-0310-b995-f0e70906c6a9
2003-05-13 13:43:09 +00:00
okir d2075b2c13 - implemented split-key support for CardOS
git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@1038 c6295689-39f2-0310-b995-f0e70906c6a9
2003-04-17 12:38:08 +00:00
okir 3b36593ada - added pkcs15 unblock functionality
git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@1008 c6295689-39f2-0310-b995-f0e70906c6a9
2003-04-14 14:51:42 +00:00
okir c07de5157a - added SC_PKCS15_PIN_TYPE_* defines for weirdo encodings
git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@983 c6295689-39f2-0310-b995-f0e70906c6a9
2003-04-11 10:30:25 +00:00
sth a7a5701e0c added support for max pin length
git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@922 c6295689-39f2-0310-b995-f0e70906c6a9
2003-02-20 23:19:01 +00:00
okir a7615abdeb - attempt to fix DODF encoding/decoding
git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@798 c6295689-39f2-0310-b995-f0e70906c6a9
2002-12-19 14:26:54 +00:00
okir b86d2e994b - First shot at pkcs15 data objects from Danny De Cock
git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@788 c6295689-39f2-0310-b995-f0e70906c6a9
2002-12-18 10:17:01 +00:00
jey 79b5672edc - Keep the DER encoding of each PKCS #15 object in memory
git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@761 c6295689-39f2-0310-b995-f0e70906c6a9
2002-12-10 13:27:17 +00:00
jey d38851b9e4 - Fixed prototype for sc_pkcs15_card_new()
git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@687 c6295689-39f2-0310-b995-f0e70906c6a9
2002-08-21 10:22:48 +00:00
okir 7f6453d715 - sc_pkcs15_decipher now takes a flags argument, so we know when to
strip off any pkcs#1 padding.


git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@585 c6295689-39f2-0310-b995-f0e70906c6a9
2002-04-23 08:17:06 +00:00
aet f7fcaee513 Extract certificate crlDistributionPoints and store it in sc_pkcs15_cert
git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@580 c6295689-39f2-0310-b995-f0e70906c6a9
2002-04-21 18:54:10 +00:00
aet 3dccd63989 - C++ support. Compiles with gcc/g++ for Linux, otherwise
completely untested.


git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@574 c6295689-39f2-0310-b995-f0e70906c6a9
2002-04-19 14:23:31 +00:00
jey 546f920fc1 - PKCS #15 objects and DFs are now stored with linked lists
in struct sc_pkcs15_card; this way we can have 'floating'
  objects that don't belong in any DF, for e.g. generating
  public key objects from certificates
- Removed some unused function prototypes


git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@572 c6295689-39f2-0310-b995-f0e70906c6a9
2002-04-19 09:22:44 +00:00
okir 7cd061c91a - added a bunch of prototypes
git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@567 c6295689-39f2-0310-b995-f0e70906c6a9
2002-04-18 10:59:35 +00:00
okir 2b65c73cfb - missing prototypes for {de,en}code_prkey
git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@555 c6295689-39f2-0310-b995-f0e70906c6a9
2002-04-17 20:45:15 +00:00
okir fcbbb6c3e5 - eliminated RSA specific code to support generic pubkeys instead
git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@548 c6295689-39f2-0310-b995-f0e70906c6a9
2002-04-17 18:33:27 +00:00
okir af262521e7 - new generic function sc_pkcs15_read_file
- structs and functions for data wrap/unwrap


git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@534 c6295689-39f2-0310-b995-f0e70906c6a9
2002-04-17 09:00:52 +00:00
okir 596220e821 - pkcs15-init does not require openssl anymore
git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@523 c6295689-39f2-0310-b995-f0e70906c6a9
2002-04-15 13:42:10 +00:00
okir 2d47103692 - implemented sc_pkcs15_find_so_pin
git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@496 c6295689-39f2-0310-b995-f0e70906c6a9
2002-04-08 15:45:28 +00:00
jey 22636c2df9 - Added SC_ERROR_FILE_ALREADY_EXISTS
- Changed call convention for reader finish()
- CT-API driver now frees its resources correctly
- Added year 2002 to some of the copyright statements
- sc_pkcs15_decipher() and sc_pkcs15_compute_signature()
  now select only the parent DF of the private key file


git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@463 c6295689-39f2-0310-b995-f0e70906c6a9
2002-04-05 14:46:44 +00:00
aet 076a26bbac Rework the header structure
Currently fails to compile, unless you symlink
all the necessary headers to src/include/opensc
by yourself.


git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@459 c6295689-39f2-0310-b995-f0e70906c6a9
2002-04-05 13:48:00 +00:00
aet d81d10ba90 Upgrade sources to use new headers, part #1
git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@458 c6295689-39f2-0310-b995-f0e70906c6a9
2002-04-05 10:44:51 +00:00
jey 0fe85e6563 - Added typedefs for the most common structs
git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@436 c6295689-39f2-0310-b995-f0e70906c6a9
2002-04-04 09:20:19 +00:00
okir 8f07d6706d - now extracting issuer from certificate
git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@346 c6295689-39f2-0310-b995-f0e70906c6a9
2002-03-20 13:08:09 +00:00
okir 7d6cf8fa81 - extract certificate issuer and store it in sc_pkcs15_cert
git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@338 c6295689-39f2-0310-b995-f0e70906c6a9
2002-03-15 15:19:34 +00:00
jey a3b521a704 - started adding support for DSA private keys
git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@337 c6295689-39f2-0310-b995-f0e70906c6a9
2002-03-15 12:48:06 +00:00
jey 67ffdfa213 - Added support for big serial numbers in certificates
git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@332 c6295689-39f2-0310-b995-f0e70906c6a9
2002-03-15 10:10:33 +00:00
okir 41cd4c4d2c - implemented sc_pkcs15_free_pubkey
git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@330 c6295689-39f2-0310-b995-f0e70906c6a9
2002-03-15 10:01:25 +00:00
okir c94fb9a1d5 - added sc_pkcs15_read_pubkey to retrieve public key from a public key file
git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@281 c6295689-39f2-0310-b995-f0e70906c6a9
2002-03-08 19:47:26 +00:00
jey 3416461c4b - Added X.509 algorithm id decoding and encoding to asn1.c
- Implemented a generic ATR matching helper function
- Made signing much smarter (should even work now)
- Added info about supported crypto algorithms to struct sc_card


git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@276 c6295689-39f2-0310-b995-f0e70906c6a9
2002-03-08 05:59:57 +00:00
okir 364328212b - sc_pkcs15_parse_df now understands PuKDFs
git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@271 c6295689-39f2-0310-b995-f0e70906c6a9
2002-03-07 12:33:42 +00:00
jey 6b07ff64f6 - Reworked PKCS #15 structure a bit (MANY THINGS
WILL BREAK)
- Added support for public key DFs (not tested yet)


git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@251 c6295689-39f2-0310-b995-f0e70906c6a9
2002-03-03 00:32:28 +00:00
jey e78dc96440 - added ATR for RSA SecurID 3100
- exported pkcs15_encode_* functions
- minor modification to sc_file_add_acl_entry()
- boosted up opensc-explorer
- added error(), warn() and fatal()
- implemented a generic PKCS #15 structure generation tool


git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@215 c6295689-39f2-0310-b995-f0e70906c6a9
2002-02-21 18:53:23 +00:00
jey 61fc1f9327 - all instances struct sc_file should now be
dynamically allocated with sc_file_new() and released
  with sc_file_free()
- improved ACL's
- moved struct sc_card_error to opensc.h
- moved EF(DIR) parsing and encoding to dir.c
  (encoding is not working yet)
- removed hst-test.c and filetest.c


git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@213 c6295689-39f2-0310-b995-f0e70906c6a9
2002-02-20 09:56:47 +00:00
jey fd9c25eeed - added README.Cryptoflex
- modified ChangeLog
- _really_ bumped up the version number this time


git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@192 c6295689-39f2-0310-b995-f0e70906c6a9
2002-01-24 16:24:24 +00:00
jey c1cac5f311 - bumped up version number in preparation of the new release
- unified PKCS #15 DF decoding
- added PKCS #15 file caching


git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@191 c6295689-39f2-0310-b995-f0e70906c6a9
2002-01-24 16:02:54 +00:00
jey d9792242cc - fixed a bug with file permissions in flex_create_file()
- added RSA signature generation with Cryptoflex cards
- improved security environment handling
- implemented cryptoflex-tool


git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@177 c6295689-39f2-0310-b995-f0e70906c6a9
2002-01-20 21:20:09 +00:00
jey e7c65bf669 - PKCS #15 generation is now in a semi-working state
- started coding crypto support for Cryptoflexes


git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@175 c6295689-39f2-0310-b995-f0e70906c6a9
2002-01-17 23:47:03 +00:00
jey 54e5d23e93 - improved PKCS #15 generation
git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@170 c6295689-39f2-0310-b995-f0e70906c6a9
2002-01-17 11:44:27 +00:00
jey 20adb4b39c - continued to improve PKCS #15 generation
- fixed a few problems in sc_set_security_env
- started to implement Better (tm) object handling for
  PKCS #15 objects


git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@167 c6295689-39f2-0310-b995-f0e70906c6a9
2002-01-16 23:59:18 +00:00
jey 452b9d4193 - pretty much finished the DER encoder
- added delete and create file support for 'flex cards
- PKCS #15 DF's are now stored more flexibly; this makes
  adding new types of DF's (such as PuKDF's) easier
- added 'get' and 'put' commands to opensc-explorer


git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@160 c6295689-39f2-0310-b995-f0e70906c6a9
2002-01-13 23:56:13 +00:00
jey 9dc7054919 - added preliminary ASN.1 encoding support
- modified ASN.1 decoding to make it easier to
  port decoder structures to the encoder
- fixed a recently introduced bug in card driver handling
- opensc-explorer will now allow only DF's to be cd'd into


git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@156 c6295689-39f2-0310-b995-f0e70906c6a9
2002-01-10 12:33:56 +00:00
jey 7ff4c4544c - added preliminary CryptoFlex 16k support
- added short names to card drivers
- moved various ISO 7816-9 functions to their correct places
- added write binary support
- renamed opensc-crypt to pkcs15-crypt
- split a part opensc-tool to pkcs15-tool


git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@150 c6295689-39f2-0310-b995-f0e70906c6a9
2002-01-08 13:56:50 +00:00
aet 607271df53 Merges with SCIDI to help integrating build process with it
Remove some gcc specific flags from Makefile.am
Rename some header defines
size_t vs. int fixups
opensc.h: Define inline as null for other compilers than gcc, for now
Port pam_pkcs15 to compile for Solaris and HP-UX, untested
Fix compiler warnings

OpenSC now compiles cleanly for Tru64, AIX and HP-UX.

The only problem is the tools using getopt_long() (GNU extension),
to be fixed later..


git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@120 c6295689-39f2-0310-b995-f0e70906c6a9
2001-12-30 21:17:34 +00:00
jey ad2e34cb6c - added preliminary support for EMV cards
- changed a few function prototypes
- implemented access control lists to files
- added sc_read_record() function
- updated the NEWS file


git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@111 c6295689-39f2-0310-b995-f0e70906c6a9
2001-12-29 02:07:32 +00:00
jey c37418d3b0 - sc_pkcs15_change_pin() prototype changed
git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@109 c6295689-39f2-0310-b995-f0e70906c6a9
2001-12-28 14:23:17 +00:00
jey c344e28a92 - added card abstraction layer support
- pretty much finished migrating to new ASN.1 code
- changed call semantics for sc_select_file()
- moved functions around


git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@89 c6295689-39f2-0310-b995-f0e70906c6a9
2001-12-22 20:43:09 +00:00
jey 0bba170d91 - LINT fixes
git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@88 c6295689-39f2-0310-b995-f0e70906c6a9
2001-12-22 13:38:25 +00:00
jey c17ff3ebdf - continued improving ASN.1 decoding
- improved debug levels
- added some PC/SC Lite workarounds


git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@87 c6295689-39f2-0310-b995-f0e70906c6a9
2001-12-21 23:34:47 +00:00
jey 5e00917fcc - bumped version number up to 0.4.0
- improved ASN.1 decoding _lots_


git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@80 c6295689-39f2-0310-b995-f0e70906c6a9
2001-12-16 18:46:32 +00:00
jey 86bef9c75e - improved certificate caching
git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@67 c6295689-39f2-0310-b995-f0e70906c6a9
2001-12-11 14:52:17 +00:00
jey 683f561800 - removed config directory
- fixed compiling with C++
- added error SC_ERROR_CARD_RESET


git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@65 c6295689-39f2-0310-b995-f0e70906c6a9
2001-12-08 15:27:40 +00:00
jey a1349a68c4 - added defaults for FINEID S4-2 (organization) cards
- fixed a few typos
- renamed _sc_sw_to_errorcode() to sc_sw_to_errorcode()
- PAM module now uses RSA_sign instead of RSA_public_encrypt


git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@55 c6295689-39f2-0310-b995-f0e70906c6a9
2001-11-26 16:14:22 +00:00
jey 5c4c94779d - changed "sc.h" to "opensc.h"
git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@54 c6295689-39f2-0310-b995-f0e70906c6a9
2001-11-24 15:12:32 +00:00
jey 939146ffed - changed project name to OpenSC
git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@52 c6295689-39f2-0310-b995-f0e70906c6a9
2001-11-24 13:32:52 +00:00
jey 674cbb1979 - added sc-crypt program
git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@51 c6295689-39f2-0310-b995-f0e70906c6a9
2001-11-22 15:40:51 +00:00
jey 2ac6b811a5 - added install target to libsc Makefile
- added a few functions
- added a patch against OpenSSH 3.0.1p1 to enable libsc support


git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@48 c6295689-39f2-0310-b995-f0e70906c6a9
2001-11-21 21:19:58 +00:00
jey ea594e3e50 - added very partial SSH support
- rearranged some functions
- added several new functions
- fixed handling of SW's


git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@47 c6295689-39f2-0310-b995-f0e70906c6a9
2001-11-20 22:21:58 +00:00
jey 1194017d5a - added defaults; full PKCS#15 parsing is no-longer required at startup
git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@43 c6295689-39f2-0310-b995-f0e70906c6a9
2001-11-17 14:55:41 +00:00
jey 18bab373b8 - changed license to LGPL
- moved ASN.1 function definitions from sc.h to sc-asn1.h


git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@36 c6295689-39f2-0310-b995-f0e70906c6a9
2001-11-06 18:34:19 +00:00
jey 27cc0a0189 - fixed base64 encoding function
- added file listing test to hst-test.c


git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@35 c6295689-39f2-0310-b995-f0e70906c6a9
2001-11-05 19:39:18 +00:00
jey c57e2e266d - moved libsc to its own directory
- added non-working MIME plugin for "text/x-text-to-sign"
- added pseudo-random number generator support
- split hst-test.c into smaller files


git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@31 c6295689-39f2-0310-b995-f0e70906c6a9
2001-11-01 15:43:20 +00:00