plan9front/sys/src/libsec/port
Ori Bernstein c6a9c55de7 x509: encode empty sequence as constructed
According to the ASN.1 BER spec, we should be encoding
all sequences (including empty ones) as constructed:

	8.9.1 The encoding of a sequence value shall be constructed.
	8.10.1 The encoding of a sequence-of value shall be constructed.
	8.11.1 The encoding of a set value shall be constructed.
	8.12.1 The encoding of a set-of value shall be constructed.

However, we were only setting them as constructed when the
list was non-empty.

This changes it, and makes letsencrypt happy with the CSRs that
we generate.
2021-08-09 15:33:16 +00:00
..
aes.c libsec: AES-NI support for amd64 2017-11-12 23:15:15 +01:00
aesCBC.c libsec: optimize aesCBCencrypt()/aesCBCdecrypt() 2017-11-27 01:31:19 +01:00
aesCFB.c libsec: add AES CFB and AES OFB stream ciphers 2017-10-17 21:34:01 +02:00
aesOFB.c libsec: add AES CFB and AES OFB stream ciphers 2017-10-17 21:34:01 +02:00
aesXCBmac.c libsec: add AES CFB and AES OFB stream ciphers 2017-10-17 21:34:01 +02:00
aes_gcm.c libsec: AES-NI support for amd64 2017-11-12 23:15:15 +01:00
aes_xts.c libsec: rewrite aex_xts_encrypt()/aes_xts_decrypt() 2017-10-29 21:49:24 +01:00
aesgcmtest.c libsec: make #include headers consistent 2016-04-10 20:23:18 +02:00
aesni.c libsec: AES-NI support for amd64 2017-11-12 23:15:15 +01:00
bftest.c fix blowfish endianess confusion (thanks erik) 2014-02-20 18:32:47 +01:00
blowfish.c libsec: make #include headers consistent 2016-04-10 20:23:18 +02:00
ccpoly.c libsec: make #include headers consistent 2016-04-10 20:23:18 +02:00
chacha.c libsec: write optimized _chachablock() function for amd64 / sse2 2017-11-20 00:10:35 +01:00
chachablock.c libsec: write optimized _chachablock() function for amd64 / sse2 2017-11-20 00:10:35 +01:00
chachatest.c libsec: implement extended 192-bit nonce xchacha variant and hchacha function 2017-01-12 20:16:38 +01:00
curve25519.c libsec: make #include headers consistent 2016-04-10 20:23:18 +02:00
curve25519_dh.c libsec: move zero check to curve25519_dh_finish() 2021-06-20 14:41:26 +00:00
decodepem.c libsec: allow \r\n terminated lines in decodePEM() 2017-10-05 20:33:46 +02:00
des.c
des3CBC.c libsec: make #include headers consistent 2016-04-10 20:23:18 +02:00
des3ECB.c libsec: make #include headers consistent 2016-04-10 20:23:18 +02:00
desCBC.c libsec: make #include headers consistent 2016-04-10 20:23:18 +02:00
desECB.c libsec: make #include headers consistent 2016-04-10 20:23:18 +02:00
desmodes.c
dh.c libsec: add q parameter to dh_new() for subgroup support, sanitize dh parameters 2015-08-26 05:59:42 +02:00
dsaalloc.c
dsagen.c
dsaprimes.c libsec: use u32int instead of uint when we need 32 bit (thanks erik) 2014-06-12 14:05:10 +02:00
dsaprivtopub.c
dsasign.c
dsaverify.c
ecc.c libsec/base58enc: null-terminate the result 2020-04-28 12:49:05 +02:00
egalloc.c
egdecrypt.c
egencrypt.c
eggen.c
egprivtopub.c
egsign.c
egtest.c libsec: mpconv -> mpfmt 2016-02-06 07:19:31 +01:00
egverify.c
fastrand.c libsec: make #include headers consistent 2016-04-10 20:23:18 +02:00
genprime.c libsec: fix genprime() to produce normalized result 2015-12-01 09:40:24 +01:00
genrandom.c libsec: replace des based X9.17 genrandom() with chacha random number generator 2016-12-28 02:02:00 +01:00
gensafeprime.c
genstrongprime.c
hkdf.c libsec: make #include headers consistent 2016-04-10 20:23:18 +02:00
hmac.c libsec: fix hmac for keys bigger then 64 byte block size 2014-09-14 02:26:26 +02:00
hmactest.c
jacobian.mp libsec: implement elliptic curve group operations in jacobian coordinate system 2016-04-20 20:09:59 +02:00
md4.c
md4test.c
md5.c
md5block.c
mkfile libsec: remove hash pickle functions, document ripemd160, cleanup sechash(2) manpage 2020-03-01 15:07:44 +01:00
nfastrand.c libsec: make #include headers consistent 2016-04-10 20:23:18 +02:00
pbkdf2.c libsec: make #include headers consistent 2016-04-10 20:23:18 +02:00
poly1305.c libsec: make #include headers consistent 2016-04-10 20:23:18 +02:00
primetest.c libsec: mpconv -> mpfmt 2016-02-06 07:19:31 +01:00
prng.c libsec: make #include headers consistent 2016-04-10 20:23:18 +02:00
probably_prime.c libsec: fix probably_prime() endless loop for n == 3 2015-08-23 23:49:31 +02:00
rc4.c
readcert.c libsec: open internal file-descriptors with OCEXEC flag 2020-12-07 17:14:34 +01:00
reduce
ripemd.c
rsaalloc.c
rsadecrypt.c
rsaencrypt.c
rsafill.c
rsagen.c rsagen: prefer 65537 as the default exponent when elen == 0, otherwise pick randomly 2017-02-06 04:25:38 +01:00
rsaprivtopub.c
rsatest.c
salsa.c libsec: avoid temp variables in chacha/salsa ENCRYPT() macro 2017-01-15 04:09:47 +01:00
scrypt.c libsec: add scrypt password based key derivation function 2016-07-10 21:41:57 +02:00
secp256k1.mp libsec: ecdsa client support for tlshand, cleanups 2016-02-01 21:34:49 +01:00
secp256r1.mp libsec: ecdsa client support for tlshand, cleanups 2016-02-01 21:34:49 +01:00
secp384r1.mp libsec: add secp384r1 curve parameters for tls 2016-10-30 02:15:40 +01:00
sha1.c
sha1block.c libsec: unroll portable sha1block function 2017-11-30 21:30:03 +01:00
sha2_64.c
sha2_128.c
sha2block64.c libsec: make includes consistent for sha2block*.c 2017-11-30 21:50:52 +01:00
sha2block128.c libsec: make includes consistent for sha2block*.c 2017-11-30 21:50:52 +01:00
sha2test.c
smallprimes.c
smallprimetest.c
thumb.c libsec: open internal file-descriptors with OCEXEC flag 2020-12-07 17:14:34 +01:00
tlshand.c libsec: move zero check to curve25519_dh_finish() 2021-06-20 14:41:26 +00:00
tsmemcmp.c libsec: make #include headers consistent 2016-04-10 20:23:18 +02:00
x509.c x509: encode empty sequence as constructed 2021-08-09 15:33:16 +00:00