Dr. Stephen Henson
8659dc73f4
Reencode certificates in X509_sign_ctx.
...
Reencode certificates in X509_sign_ctx as well as X509_sign.
This was causing a problem in the x509 application when it modified an
existing certificate.
(cherry picked from commit c6d8adb8a45186617e0a8e2c09469bd164b92b31)
2013-05-02 12:24:33 +01:00
Andy Polyakov
07464787a8
crypto/modes/modes_lcl.h: let STRICT_ALIGNMENT be on ARMv7.
...
While ARMv7 in general is capable of unaligned access, not all instructions
actually are. And trouble is that compiler doesn't seem to differentiate
those capable and incapable of unaligned access. Side effect is that kernel
goes into endless loop retrying same instruction triggering unaligned trap.
Problem was observed in xts128.c and ccm128.c modules. It's possible to
resolve it by using (volatile u32*) casts, but letting STRICT_ALIGNMENT
be feels more appropriate.
(cherry picked from commit 3bdd80521a81d50ade4214053cd9b293f920a77b)
2013-04-13 21:19:16 +02:00
Dr. Stephen Henson
a8cc9f1873
Typo.
...
(cherry picked from commit 0ded2a06891a4d5a207d8f29aa9a89a755158170)
2013-03-31 17:43:42 +01:00
Matt Caswell
4e5b9645e8
Make binary curve ASN.1 work in FIPS mode.
...
Don't check for binary curves by checking methods: the values will
be different in FIPS mode as they are redirected to the validated module
version.
(cherry picked from commit 94782e0e9c28bd872107b8f814f4db68c9fbf5ab)
2013-03-26 16:58:29 +00:00
Dr. Stephen Henson
04347839ea
enhance EC method to support setting curve type when generating keys and add parameter encoding option
...
(cherry picked from commit 24edfa9df9e6315b107b7c2d8ce0634208e8c350)
2013-03-20 15:54:05 +00:00
Andy Polyakov
2a1ab7b438
x86cpuid.pl: make it work with older CPUs.
...
PR: 3005
(cherry picked from commit 5702e965d759dde8a098d8108660721ba2b93a7d)
2013-03-18 19:50:09 +01:00
Andy Polyakov
dd1e4fbcc0
e_aes_cbc_hmac_sha1.c: fix rare bad record mac on AES-NI plaforms.
...
PR: 3002
(cherry picked from commit 5c60046553716fcf160718f59160493194f212dc)
2013-03-18 19:35:20 +01:00
Dr. Stephen Henson
d7e429b91d
Encode INTEGER correctly.
...
If an ASN1_INTEGER structure is allocated but not explicitly set encode
it as zero: don't generate an invalid zero length INTEGER.
(cherry picked from commit 1643edc63c3e15b6db5a15a728bc288f2cc2bbc7)
2013-03-18 14:22:01 +00:00
Andy Polyakov
2d9be79407
x86_64-gf2m.pl: fix typo.
...
(cherry picked from commit 342dbbbe4eb82b6e12163965a12f580c2deb03ad)
2013-03-01 22:37:53 +01:00
Andy Polyakov
2e4b7eede3
x86_64-gf2m.pl: add missing Windows build fix for #2963 .
...
PR: 3004
(cherry picked from commit 7c43601d4424575d589f028aed0d5a4ae337527f)
2013-03-01 21:57:25 +01:00
Dr. Stephen Henson
e1dee801b9
Add function CMS_RecipientInfo_encrypt
...
Add CMS_RecipientInfo_encrypt: this function encrypts an existing content
encryption key to match the key in the RecipientInfo structure: this is
useful if a new recpient is added to and existing enveloped data structure.
Add documentation.
(cherry picked from commit e1f1d28f34cc5cfc87772e0d8331e00137a4a213)
2013-02-26 17:06:08 +00:00
Andy Polyakov
b9eef98883
bn_nist.c: work around clang 3.0 bug.
...
(cherry picked from commit 750398acd85a7ae220d272d28a76dff7bb269c31)
2013-02-16 11:37:38 +01:00
Andy Polyakov
a3e66779d3
sparccpuid.S: work around emulator bug on T1.
...
(cherry picked from commit 3caeef94bd045608af03b061643992e3afd9c445)
2013-02-11 10:41:22 +01:00
Andy Polyakov
82425f2c28
e_aes_cbc_hmac_sha1.c: align calculated MAC at cache line.
...
It also ensures that valgring is happy.
(cherry picked from commit 2141e6f30b1fd2906830fd23d8eae71fe72acc47)
2013-02-08 10:35:02 +01:00
Andy Polyakov
af010edd55
e_aes_cbc_hmac_sha1.c: cleanse temporary copy of HMAC secret.
...
(cherry picked from commit 529d27ea472fc2c7ba9190a15a58cb84012d4ec6)
2013-02-06 13:56:15 +00:00
Andy Polyakov
5966f4d973
e_aes_cbc_hmac_sha1.c: address the CBC decrypt timing issues.
...
Address CBC decrypt timing issues and reenable the AESNI+SHA1 stitch.
(cherry picked from commit 125093b59f3c2a2d33785b5563d929d0472f1721)
2013-02-06 13:56:15 +00:00
Ben Laurie
fb0a59cc58
Make CBC decoding constant time.
...
This patch makes the decoding of SSLv3 and TLS CBC records constant
time. Without this, a timing side-channel can be used to build a padding
oracle and mount Vaudenay's attack.
This patch also disables the stitched AESNI+SHA mode pending a similar
fix to that code.
In order to be easy to backport, this change is implemented in ssl/,
rather than as a generic AEAD mode. In the future this should be changed
around so that HMAC isn't in ssl/, but crypto/ as FIPS expects.
(cherry picked from commit e130841bccfc0bb9da254dc84e23bc6a1c78a64e)
2013-02-06 13:56:12 +00:00
Ben Laurie
f5cd3561ba
Add and use a constant-time memcmp.
...
This change adds CRYPTO_memcmp, which compares two vectors of bytes in
an amount of time that's independent of their contents. It also changes
several MAC compares in the code to use this over the standard memcmp,
which may leak information about the size of a matching prefix.
(cherry picked from commit 2ee798880a246d648ecddadc5b91367bee4a5d98)
2013-02-06 13:56:12 +00:00
Andy Polyakov
2a713eadc3
bn_word.c: fix overflow bug in BN_add_word.
...
(cherry picked from commit 134c00659a1bc67ad35a1e4620e16bc4315e6e37)
2013-02-02 22:37:35 +01:00
Andy Polyakov
2e7900b624
x86_64 assembly pack: keep making Windows build more robust.
...
PR: 2963 and a number of others
(cherry picked from commit 4568182a8b8cbfd15cbc175189029ac547bd1762)
2013-02-02 19:56:43 +01:00
Dr. Stephen Henson
1db4354b53
Don't include comp.h in cmd_cd.c if OPENSSL_NO_COMP set
2013-01-23 01:11:05 +00:00
Andy Polyakov
3f233a1e77
x86_64 assembly pack: make Windows build more robust [from master].
...
PR: 2963 and a number of others
2013-01-22 22:51:29 +01:00
Andy Polyakov
b17ffba915
bn/asm/mips.pl: hardwire local call to bn_div_words.
2013-01-22 21:16:02 +01:00
Dr. Stephen Henson
3619e34f50
Don't include comp.h if no-comp set.
2013-01-20 01:10:03 +00:00
Dr. Stephen Henson
6a10f38daa
initial support for delta CRL generations by diffing two full CRLs
2013-01-17 18:51:50 +00:00
Dr. Stephen Henson
c644b83227
constify
2013-01-17 16:35:50 +00:00
Dr. Stephen Henson
75f535315a
New functions to set lookup_crls callback and to retrieve internal X509_STORE
...
from X509_STORE_CTX.
2013-01-17 16:32:33 +00:00
Dr. Stephen Henson
2aa3ef78b6
print out issuer and subject unique identifier fields in certificates
2013-01-16 15:08:34 +00:00
Dr. Stephen Henson
1c0964e87f
add wrapper function for certificate download
2013-01-15 18:01:54 +00:00
Dr. Stephen Henson
5c8d41be85
Generalise OCSP I/O functions to support dowloading of other ASN1
...
structures using HTTP. Add wrapper function to handle CRL download.
2013-01-15 18:01:31 +00:00
Dr. Stephen Henson
75a8ff9263
make update
2013-01-15 16:24:07 +00:00
Ben Laurie
24c45faba0
Fix some clang warnings.
2013-01-13 21:06:36 +00:00
Dr. Stephen Henson
1c25ed5dbb
In FIPS mode use PKCS#8 format when writing private keys:
...
traditional format uses MD5 which is prohibited in FIPS mode.
2013-01-07 16:16:43 +00:00
Ben Laurie
72dfff2d5e
Fix warning.
2013-01-06 21:03:05 +00:00
Dr. Stephen Henson
321a9fea75
make no-comp compile
2012-12-30 16:05:03 +00:00
Dr. Stephen Henson
29113688a1
Portability fix: use BIO_snprintf and pick up strcasecmp alternative
...
definitions from e_os.h
2012-12-26 23:51:41 +00:00
Dr. Stephen Henson
28fbbe3b1b
Add missing prototype to x509.h
2012-12-26 16:11:10 +00:00
Dr. Stephen Henson
8d2dbe6ac0
New function X509_chain_up_ref to dup and up the reference count of
...
a STACK_OF(X509): replace equivalent functionality in several places
by the equivalent call.
(backport from HEAD)
2012-12-26 16:04:03 +00:00
Dr. Stephen Henson
ba8bdea771
add suite B chain validation flags and associated verify errors
...
(backport from HEAD)
2012-12-26 16:01:31 +00:00
Dr. Stephen Henson
3d9916298a
Oops, add missing v3nametest.c
2012-12-26 15:59:57 +00:00
Dr. Stephen Henson
7d779eefb4
add ssl_locl.h to err header files, rebuild ssl error strings
...
(backport from HEAD)
2012-12-26 15:09:16 +00:00
Dr. Stephen Henson
bd9fc1d667
New functions to retrieve certificate signatures and signature OID NID.
...
(backport from HEAD)
2012-12-26 14:31:05 +00:00
Dr. Stephen Henson
2b5e5c3d08
Revert incompatible OCSP_basic_verify changes.
...
Make partial chain chekcing work with EE certificates only.
Remove unneeded -trust_other option from tocsp.
(Backport from HEAD)
2012-12-26 14:12:09 +00:00
Dr. Stephen Henson
70cd3c6b95
Integrate host, email and IP address checks into X509_verify.
...
Add new verify options to set checks.
(backport from HEAD)
2012-12-19 15:14:10 +00:00
Dr. Stephen Henson
45da1efcdb
Backport X509 hostname, IP address and email checking code from HEAD.
2012-12-19 15:01:59 +00:00
Dr. Stephen Henson
54a0076e94
Check chain is not NULL before assuming we have a validated chain. The
...
modification to the OCSP helper purpose breaks normal OCSP verification. It is
no longer needed now we can trust partial chains.
2012-12-19 15:01:32 +00:00
Dr. Stephen Henson
2e65277695
Use new partial chain flag instead of modifying input parameters.
...
(backport from HEAD)
2012-12-14 14:31:16 +00:00
Dr. Stephen Henson
9a1f59cd31
New verify flag to return success if we have any certificate in the trusted
...
store instead of the default which is to return an error if we can't build
the complete chain. [backport from HEAD]
2012-12-14 14:30:46 +00:00
Ben Laurie
d65b8b2162
Backport OCSP fixes.
2012-12-14 12:53:53 +00:00
Ben Laurie
2a2e537983
Ignore more.
2012-12-13 12:43:18 +00:00