Paul Bakker
|
003dbad250
|
Fixed file descriptor leak in x509parse_crtpath()
|
2013-09-09 17:26:14 +02:00 |
|
Paul Bakker
|
a5943858d8
|
x509_verify() now case insensitive for cn (RFC 6125 6.4)
|
2013-09-09 17:21:45 +02:00 |
|
Manuel Pégourié-Gonnard
|
cffe4a65bd
|
Move "constant" code outside a loop
|
2013-08-28 13:13:20 +02:00 |
|
Manuel Pégourié-Gonnard
|
e511ffca50
|
Allow compiling without RSA or DH
Only library and programs now, need to check test suites later.
|
2013-08-27 22:21:21 +02:00 |
|
Manuel Pégourié-Gonnard
|
583b608401
|
Fix some return values
|
2013-08-27 22:21:20 +02:00 |
|
Manuel Pégourié-Gonnard
|
70f1768b9d
|
Make two format strings literal
Fixes clang warning
|
2013-08-26 14:31:33 +02:00 |
|
Manuel Pégourié-Gonnard
|
f73da02962
|
PK: change pk_verify arguments (md_info "optional")
|
2013-08-20 20:46:04 +02:00 |
|
Manuel Pégourié-Gonnard
|
ab46694558
|
Change pk_set_type to pk_init_ctx for consistency
|
2013-08-20 20:46:04 +02:00 |
|
Manuel Pégourié-Gonnard
|
3fb5c5ee1c
|
PK: rename members for consistency CIPHER, MD
Also add pk_get_name() to remove a direct access to pk_type
|
2013-08-20 20:46:04 +02:00 |
|
Manuel Pégourié-Gonnard
|
b3d9187cea
|
PK: add nice interface functions
Also fix a const-corectness issue.
|
2013-08-20 20:46:04 +02:00 |
|
Manuel Pégourié-Gonnard
|
3053f5bcb4
|
Get rid of pk_wrap_rsa()
|
2013-08-20 20:46:04 +02:00 |
|
Manuel Pégourié-Gonnard
|
f8c948a674
|
Add name and get_size() members in PK
|
2013-08-20 20:46:04 +02:00 |
|
Manuel Pégourié-Gonnard
|
f18c3e0378
|
Add a PK can_do() method and simplify code
|
2013-08-20 20:46:04 +02:00 |
|
Manuel Pégourié-Gonnard
|
d73b3c13be
|
PK: use wrappers and function pointers for verify
|
2013-08-20 20:46:03 +02:00 |
|
Manuel Pégourié-Gonnard
|
f84b4d6498
|
Check sig_pk for signature verification
|
2013-08-20 20:46:03 +02:00 |
|
Manuel Pégourié-Gonnard
|
96d5912088
|
Implement EC cert and crl verification
|
2013-08-20 20:26:28 +02:00 |
|
Manuel Pégourié-Gonnard
|
b4d69c41f8
|
Prepare for EC cert & crl validation
|
2013-08-20 20:26:28 +02:00 |
|
Paul Bakker
|
3a074a7996
|
Actually skip certificate if we do not understand hash type
|
2013-08-20 12:45:03 +02:00 |
|
Paul Bakker
|
dc4baf11ab
|
Removed errant printf in x509parse_self_test()
|
2013-08-20 12:44:33 +02:00 |
|
Paul Bakker
|
42c3ccf36e
|
Fixed potential negative value misinterpretation in load_file()
|
2013-08-19 14:29:31 +02:00 |
|
Paul Bakker
|
694d3aeb47
|
Fixed potential heap buffer overflow on large file reading
|
2013-08-19 14:23:38 +02:00 |
|
Manuel Pégourié-Gonnard
|
c13c0d4524
|
Add a length check in rsa_get_pubkey()
|
2013-08-16 14:00:52 +02:00 |
|
Manuel Pégourié-Gonnard
|
686bfae244
|
Fix memory error in x509_get_attr_type_value
|
2013-08-16 14:00:52 +02:00 |
|
Paul Bakker
|
d9ca94a677
|
Updated merged pk.c and x509parse.c changes with new memory allocation functions
|
2013-07-25 11:25:09 +02:00 |
|
Manuel Pégourié-Gonnard
|
ab2d9836b4
|
Fix some ifdef's in x509parse
While at it:
- move _rsa variants systematically after generic functions
- unsplit x509parse_key_pkcs8_encrypted_der() (reverts a5d9974 )
|
2013-07-17 15:59:44 +02:00 |
|
Manuel Pégourié-Gonnard
|
96f3a4e1b3
|
Rm ecp_keypair.alg
Avoid duplicating information already present in pk_context.
|
2013-07-17 15:59:44 +02:00 |
|
Manuel Pégourié-Gonnard
|
8b863cd641
|
Merge EC & RSA versions of x509_parse_key()
|
2013-07-17 15:59:44 +02:00 |
|
Manuel Pégourié-Gonnard
|
6e88202a95
|
Merge EC & RSA versions of parse_pkcs8_unencrypted
|
2013-07-17 15:59:43 +02:00 |
|
Manuel Pégourié-Gonnard
|
a2d4e644ac
|
Some more EC pubkey parsing refactoring
Fix a bug in pk_rsa() and pk_ec() along the way
|
2013-07-17 15:59:43 +02:00 |
|
Manuel Pégourié-Gonnard
|
1c808a011c
|
Refactor some EC key parsing code
|
2013-07-17 15:59:43 +02:00 |
|
Manuel Pégourié-Gonnard
|
991d0f5aca
|
Remove rsa member from x509_cert structure
|
2013-07-17 15:59:42 +02:00 |
|
Manuel Pégourié-Gonnard
|
ff56da3a26
|
Fix direct uses of x509_cert.rsa, now use pk_rsa()
|
2013-07-17 15:59:42 +02:00 |
|
Manuel Pégourié-Gonnard
|
5b18fb04ca
|
Fix bug in x509_get_{ecpubkey,subpubkey}()
- 'p' was not properly updated
- also add a few more checks while at it
|
2013-07-17 15:59:42 +02:00 |
|
Manuel Pégourié-Gonnard
|
360a583029
|
Adapt x509parse_cert_info() for EC
|
2013-07-17 15:59:41 +02:00 |
|
Manuel Pégourié-Gonnard
|
674b2243eb
|
Prepare transition from x509_cert.rsa to pk
|
2013-07-17 15:59:41 +02:00 |
|
Manuel Pégourié-Gonnard
|
a155513e7b
|
Rationalize use of x509_get_alg variants
|
2013-07-17 15:59:41 +02:00 |
|
Manuel Pégourié-Gonnard
|
7a287c409e
|
Rename x509_get_algid() to x509_get_pk_alg()
|
2013-07-17 15:59:41 +02:00 |
|
Manuel Pégourié-Gonnard
|
7c5819eb1e
|
Fix warnings (enum value missing from switch/case)
|
2013-07-17 15:59:41 +02:00 |
|
Manuel Pégourié-Gonnard
|
244569f4b1
|
Use generic x509_get_pubkey() for RSA functions
|
2013-07-17 15:59:40 +02:00 |
|
Manuel Pégourié-Gonnard
|
4fa0476675
|
Use new x509_get_pubkey() in x509parse_public_key()
|
2013-07-17 15:59:40 +02:00 |
|
Manuel Pégourié-Gonnard
|
c296c5925e
|
Introduce generic x509_get_pubkey()
|
2013-07-17 15:59:40 +02:00 |
|
Manuel Pégourié-Gonnard
|
094ad9e512
|
Rename x509_get_pubkey to _rsa and split it up
|
2013-07-17 15:59:40 +02:00 |
|
Manuel Pégourié-Gonnard
|
f16ac763f6
|
Simplify length mismatch check in x509_get_pubkey
|
2013-07-17 15:59:40 +02:00 |
|
Manuel Pégourié-Gonnard
|
20c12f6b5f
|
Factor more code into x509_get_pubkey()
|
2013-07-17 15:59:40 +02:00 |
|
Manuel Pégourié-Gonnard
|
788db112a5
|
Get rid of x509_cert.pkoid
Unused, comment did not match reality, and will soon be superseeded by the
'type' field of the pk_context which will replace rsa_context.
|
2013-07-17 15:59:39 +02:00 |
|
Manuel Pégourié-Gonnard
|
374e4b87d4
|
pk_set_type() cannot be used to reset key type
|
2013-07-17 15:59:39 +02:00 |
|
Manuel Pégourié-Gonnard
|
0a64e8f1fd
|
Rework algorithmIdentifier parsing
|
2013-07-17 15:59:39 +02:00 |
|
Manuel Pégourié-Gonnard
|
de44a4aecf
|
Rename ecp_check_prvkey with a 'i' for consistency
|
2013-07-09 16:42:34 +02:00 |
|
Manuel Pégourié-Gonnard
|
8838099330
|
Add x509parse_{,public}_key{,file}()
Also make previously public *_ec functions private.
|
2013-07-08 17:32:27 +02:00 |
|
Manuel Pégourié-Gonnard
|
d4ec21dd47
|
Add a check for multiple curve specification
|
2013-07-08 17:32:26 +02:00 |
|