boringssl/include/openssl
David Benjamin d12f2ba55e Tweak RSA errors for compatibility.
cryptography.io wants RSA_R_BLOCK_TYPE_IS_NOT_02, only used by the
ancient RSA_padding_check_SSLv23 function. Define it but never emit it.

Additionally, it's rather finicky about RSA_R_TOO_LARGE* errors. We
merged them in BoringSSL because having RSA_R_TOO_LARGE,
RSA_R_TOO_LARGE_FOR_MODULUS, and RSA_R_TOO_LARGE_FOR_KEY_SIZE is a
little silly. But since we don't expect well-behaved code to condition
on error codes anyway, perhaps that wasn't worth it.  Split them back
up.

Looking through OpenSSL, there is a vague semantic difference:

RSA_R_DIGEST_TOO_BIG_FOR_RSA_KEY - Specifically emitted if a digest is
too big for PKCS#1 signing with this key.

RSA_R_DATA_TOO_LARGE_FOR_KEY_SIZE - You asked me to sign or encrypt a
digest/plaintext, but it's too big for this key.

RSA_R_DATA_TOO_LARGE_FOR_MODULUS - You gave me an RSA ciphertext or
signature and it is not fully reduced modulo N.
-OR-
The padding functions produced something that isn't reduced, but I
believe this is unreachable outside of RSA_NO_PADDING.

RSA_R_DATA_TOO_LARGE - Some low-level padding function was told to copy
a digest/plaintext into some buffer, but the buffer was too small. I
think this is basically unreachable.
-OR-
You asked me to verify a PSS signature, but I didn't need to bother
because the digest/salt parameters you picked were too big.

Update-Note: This depends on cl/196566462.
Change-Id: I2e539e075eff8bfcd52ccde365e975ebcee72567
Reviewed-on: https://boringssl-review.googlesource.com/28547
Reviewed-by: Adam Langley <agl@google.com>
2018-05-15 23:02:49 +00:00
..
aead.h Add M=8 L=2 AES-128-CCM as well. 2018-03-02 18:45:06 +00:00
aes.h
arm_arch.h
asn1_mac.h
asn1.h Use new encoding functions in ASN1_mbstring_ncopy. 2018-05-11 21:58:47 +00:00
asn1t.h
base64.h
base.h Bump BORINGSSL_API_VERSION. 2018-05-08 17:40:55 +00:00
bio.h Fix reference to nonexistent function. 2018-01-16 16:23:36 +00:00
blowfish.h
bn.h Require BN_mod_exp_mont* inputs be reduced. 2018-04-24 18:29:29 +00:00
buf.h Always process handshake records in full. 2017-10-17 14:53:11 +00:00
buffer.h
bytestring.h bytestring: document that |CBS_get_optional_asn1| can have a NULL output. 2018-03-19 20:22:25 +00:00
cast.h
chacha.h Add chacha.h to the list of documented headers. 2017-10-12 15:27:34 +00:00
cipher.h Add a Wycheproof driver for AES-CBC. 2018-05-02 19:41:48 +00:00
cmac.h Add some more compatibility functions. 2018-05-08 20:51:15 +00:00
conf.h Add more compatibility symbols for Node. 2017-11-03 01:31:50 +00:00
cpu.h Change OPENSSL_cpuid_setup to reserve more extended feature space. 2018-04-19 20:48:58 +00:00
crypto.h Return more placeholder version strings. 2018-05-15 22:57:30 +00:00
curve25519.h
des.h
dh.h
digest.h
dsa.h Remove DSA_sign_setup too. 2017-11-22 21:01:11 +00:00
dtls1.h
e_os2.h Add a stub e_os2.h header. 2018-05-08 01:32:14 +00:00
ec_key.h Fold EC_KEY_copy into EC_KEY_dup. 2018-03-07 21:17:02 +00:00
ec.h Add some OpenSSL compatibility functions and hacks. 2018-05-08 01:22:04 +00:00
ecdh.h
ecdsa.h Remove ECDSA_sign_setup and friends. 2017-11-22 20:23:40 +00:00
engine.h
err.h Add some more compatibility functions. 2018-05-08 20:51:15 +00:00
evp.h Add some OpenSSL compatibility functions and hacks. 2018-05-08 01:22:04 +00:00
ex_data.h
hkdf.h
hmac.h
is_boringssl.h
lhash_macros.h
lhash.h Unexport more of lhash. 2017-10-25 04:17:18 +00:00
md4.h
md5.h
mem.h
nid.h
obj_mac.h
obj.h Add some more compatibility functions. 2018-05-08 20:51:15 +00:00
objects.h
opensslconf.h
opensslv.h
ossl_typ.h
pem.h
pkcs7.h
pkcs8.h Add PKCS12_create. 2018-05-11 21:59:34 +00:00
pkcs12.h
poly1305.h
pool.h
rand.h
rc4.h
ripemd.h
rsa.h Tweak RSA errors for compatibility. 2018-05-15 23:02:49 +00:00
safestack.h
sha.h Add SHA256_TransformBlocks. 2018-04-25 17:51:50 +00:00
span.h Add runtime bounds checks to bssl::Span. 2018-04-16 16:26:33 +00:00
srtp.h
ssl3.h Remove remnants of the HRR message. 2018-03-13 21:10:03 +00:00
ssl.h Add APIs to query authentication properties of SSL_SESSIONs. 2018-05-14 19:10:48 +00:00
stack.h Avoid modifying stack in sk_find. 2018-04-12 21:02:12 +00:00
thread.h
tls1.h Implement legacy OCSP APIs for libssl. 2018-05-11 22:21:26 +00:00
type_check.h
x509_vfy.h Add a bunch of X509_STORE getters and setters. 2018-05-11 21:59:58 +00:00
x509.h Add PKCS12_create. 2018-05-11 21:59:34 +00:00
x509v3.h Fix up AUTHORITY_INFO_ACCESS/ACCESS_DESCRIPTION's deleter. 2018-04-02 17:07:46 +00:00