Make it build using OpenSSL 1.1.0 #48
Conversation
| break; | ||
| case KEY_RSA_CERT: | ||
| #if 0 |
Jakuje
Oct 21, 2016
Contributor
This is intentionally left out or like todo for future readers?
This is intentionally left out or like todo for future readers?
kroeckx
Oct 21, 2016
Author
I've added the message I sent to the openssh-unix list about this. Does that clear things up?
I've added the message I sent to the openssh-unix list about this. Does that clear things up?
Jakuje
Oct 21, 2016
Contributor
Thank you. I noticed your message on the mailing list, but forgot to check it properly before commenting. Adding it here clears that up. Thank you.
Thank you. I noticed your message on the mailing list, but forgot to check it properly before commenting. Adding it here clears that up. Thank you.
|
It has the same regression tests failures as the master branch, and it has been tested with both 1.0.2 and 1.1.0. Some comments about the patch:
|
|
|
||
| if (p == NULL || q == NULL || g == NULL || | ||
| pub_key == NULL || | ||
| (ret = sshbuf_put_bignum2(cert, p)) != 0 || |
Jakuje
Oct 27, 2016
Contributor
This is certainly wrong. In this case, you should not allocate&put&set. It should be get&put. The same for below RSA case.
This is certainly wrong. In this case, you should not allocate&put&set. It should be get&put. The same for below RSA case.
kroeckx
Oct 27, 2016
Author
You're right, new commit added.
You're right, new commit added.
|
I noticed you didn't port the SSH1 code to OpenSSL 1.1.0 -- we don't care about this protocol, but in clients it will be among us for some time. I added a the missing (only client side) bits in the answer on the mailing list [1]. Also I noticed you created a new compat filename, even though, there is already Also the missing part under [1] http://lists.mindrot.org/pipermail/openssh-unix-dev/2016-November/035454.html |
|
Please expedite this patch. Lack of OpenSSL 1.1.0 support is harming users. From OpenSSL 1.1.0 integrtion on the user mailing list:
|
|
@cookiengineer The most of the discussion about this topic was held on the mailing list thread linked from the previous comment. The bottom-line can be found here: http://lists.mindrot.org/pipermail/openssh-unix-dev/2016-November/035497.html There is no work need to be done on this PR (ok, there are few problems in this PR resolved by the patch carried in Fedora) or upstream, but some compatibility between OpenSSL releases was requested which is very unclear if it can realistically happen. |
The proposed openssl 1.1 patches are here: openssh/openssh-portable#48 Openssl maintainers are not in a hurry to get 1.1 support in; if it doesn't show up within reasonable time, we can take a patch from Fedora: http://lists.mindrot.org/pipermail/openssh-unix-dev/2016-November/035454.html Signed-off-by: Alexander Kanavin <alexander.kanavin@linux.intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
The proposed openssl 1.1 patches are here: openssh/openssh-portable#48 Openssl maintainers are not in a hurry to get 1.1 support in; if it doesn't show up within reasonable time, we can take a patch from Fedora: http://lists.mindrot.org/pipermail/openssh-unix-dev/2016-November/035454.html (From OE-Core rev: 66a6ef9bf0d368cea6fb0df7d23c49c1f66667a1) Signed-off-by: Alexander Kanavin <alexander.kanavin@linux.intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
The proposed openssl 1.1 patches are here: openssh/openssh-portable#48 Openssl maintainers are not in a hurry to get 1.1 support in; if it doesn't show up within reasonable time, we can take a patch from Fedora: http://lists.mindrot.org/pipermail/openssh-unix-dev/2016-November/035454.html Signed-off-by: Alexander Kanavin <alexander.kanavin@linux.intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
The proposed openssl 1.1 patches are here: openssh/openssh-portable#48 Openssl maintainers are not in a hurry to get 1.1 support in; if it doesn't show up within reasonable time, we can take a patch from Fedora: http://lists.mindrot.org/pipermail/openssh-unix-dev/2016-November/035454.html (From OE-Core rev: 5ccf4a9786fc607a5838edb3bf409f83d7483ba6) Signed-off-by: Alexander Kanavin <alexander.kanavin@linux.intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
The proposed openssl 1.1 patches are here: openssh/openssh-portable#48 Openssl maintainers are not in a hurry to get 1.1 support in; if it doesn't show up within reasonable time, we can take a patch from Fedora: http://lists.mindrot.org/pipermail/openssh-unix-dev/2016-November/035454.html (From OE-Core rev: 5ccf4a9786fc607a5838edb3bf409f83d7483ba6) Signed-off-by: Alexander Kanavin <alexander.kanavin@linux.intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
The proposed openssl 1.1 patches are here: openssh/openssh-portable#48 Openssl maintainers are not in a hurry to get 1.1 support in; if it doesn't show up within reasonable time, we can take a patch from Fedora: http://lists.mindrot.org/pipermail/openssh-unix-dev/2016-November/035454.html (From OE-Core rev: 5ccf4a9786fc607a5838edb3bf409f83d7483ba6) Signed-off-by: Alexander Kanavin <alexander.kanavin@linux.intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
Someone pointed this patch out to me as something Debian was considering picking up? A few drive-by comments: |
| DH_free(dh); | ||
| return NULL; | ||
| } | ||
| BIGNUM *p, *g; |
davidben
Oct 16, 2017
This should be NULL-initialized otherwise some of the goto err paths below will get confused on malloc error.
This should be NULL-initialized otherwise some of the goto err paths below will get confused on malloc error.
| (g = BN_new()) == NULL) | ||
| goto err; | ||
| if (BN_hex2bn(&p, modulus) == 0 || | ||
| BN_hex2bn(&g, gen) == 0 || |
davidben
Oct 16, 2017
Nit: I believe you can just omit lines 294 and 295 (after fixing the NULL-initializing above). BN_hex2bn just allocates things for you.
Nit: I believe you can just omit lines 294 and 295 (after fixing the NULL-initializing above). BN_hex2bn just allocates things for you.
| @@ -372,7 +372,7 @@ cipher_init(struct sshcipher_ctx **ccp, const struct sshcipher *cipher, | |||
| ret = SSH_ERR_ALLOC_FAIL; | |||
| goto out; | |||
| } | |||
| if (EVP_CipherInit(cc->evp, type, NULL, (u_char *)iv, | |||
| if (EVP_CipherInit(cc->evp, type, (u_char *)key, (u_char *)iv, | |||
davidben
Oct 16, 2017
Asking EVP_CipherInit to copy keylen bytes worth of key before telling it what keylen is (EVP_CIPHER_CTX_set_key_length) seems kind of questionable, notably for ciphers with variable-length keys. Are you sure this works? It was probably previously in two steps so it'd all happen in the right order.
Asking EVP_CipherInit to copy keylen bytes worth of key before telling it what keylen is (EVP_CIPHER_CTX_set_key_length) seems kind of questionable, notably for ciphers with variable-length keys. Are you sure this works? It was probably previously in two steps so it'd all happen in the right order.
kroeckx
Oct 17, 2017
Author
I can't even remember why I did change (it's been more than a year). But I guess the same applies to the IV?
I can't even remember why I did change (it's been more than a year). But I guess the same applies to the IV?
kroeckx
Oct 17, 2017
Author
Oh, I did make a comment about this:
I've replaced the 2 EVP_CipherInit() calls in cipher_init() with 1. OpenSSL now clears
everything when you call EVP_CipherInit() again, so what was passed in the first but not
in the second call, and what the function calls between them did, was lost.
I wonder if this is actually a problem in OpenSSL.
Oh, I did make a comment about this:
I've replaced the 2 EVP_CipherInit() calls in cipher_init() with 1. OpenSSL now clears
everything when you call EVP_CipherInit() again, so what was passed in the first but not
in the second call, and what the function calls between them did, was lost.
I wonder if this is actually a problem in OpenSSL.
davidben
Oct 17, 2017
I think the IV can be passed in at either time? OpenSSL doesn't have a mechanism for ciphers with variable-length IVs as far as I know.
If the EVP_CIPHER has a fixed length key [and you already took care that what you're passing as the right size, since the EVP_CipherInit API isn't bounds-checked], you don't need to do EVP_CIPHER_CTX_set_key_length first. If you have a variable-length key cipher [and you're not using whatever the default key size is], you do.
Granted, it seems the only such ciphers, barring ENGINE mischief, are Blowfish, CAST, RC2, RC4, and RC5 so this pattern is only of so much interest... :-) Though the existing EVP_CIPHER_CTX_set_key_length logic did also act as a bounds check I think.
https://git.openssl.org/gitweb/?p=openssl.git&a=search&h=HEAD&st=grep&s=EVP_CIPH_VARIABLE_LENGTH
https://git.openssl.org/gitweb/?p=openssl.git&a=search&h=HEAD&st=grep&s=EVP_CIPH_CUSTOM_KEY_LENGTH
I think the IV can be passed in at either time? OpenSSL doesn't have a mechanism for ciphers with variable-length IVs as far as I know.
If the EVP_CIPHER has a fixed length key [and you already took care that what you're passing as the right size, since the EVP_CipherInit API isn't bounds-checked], you don't need to do EVP_CIPHER_CTX_set_key_length first. If you have a variable-length key cipher [and you're not using whatever the default key size is], you do.
Granted, it seems the only such ciphers, barring ENGINE mischief, are Blowfish, CAST, RC2, RC4, and RC5 so this pattern is only of so much interest... :-) Though the existing EVP_CIPHER_CTX_set_key_length logic did also act as a bounds check I think.
https://git.openssl.org/gitweb/?p=openssl.git&a=search&h=HEAD&st=grep&s=EVP_CIPH_VARIABLE_LENGTH
https://git.openssl.org/gitweb/?p=openssl.git&a=search&h=HEAD&st=grep&s=EVP_CIPH_CUSTOM_KEY_LENGTH
davidben
Oct 17, 2017
Aha! I think what might actually be going on here is that openssh should have been using EVP_CipherInit_ex, not EVP_CipherInit. EVP_CipherInit was for folks who didn't call EVP_CIPHER_CTX_init (which EVP_CIPHER_CTX_new did implicitly).
But in 1.0.2, there was this weird quirk where EVP_CipherInit would skip EVP_CIPHER_CTX_init if cipher was NULL:
https://git.openssl.org/gitweb/?p=openssl.git;a=blob;f=crypto/evp/evp_enc.c;h=be577bac767fe9cf2c163be6967b20d1f6cc9014;hb=refs/heads/OpenSSL_1_0_2-stable#l94
OpenSSL 1.1.0 lost this behavior:
https://git.openssl.org/gitweb/?p=openssl.git;a=blob;f=crypto/evp/evp_enc.c;h=d21a0c7e54d54a5a77a2d5a6593e4851cf2f5291;hb=HEAD#l50
So I believe you want to revert this and merely switch those EVP_CipherInit calls to EVP_CipherInit_ex, which should work fine in 1.0.2 and 1.1.0. (Unless 1.1.0 additionally changed behavior here in ways I'm missing.) You may also wish to consider at minimum marking EVP_CipherInit as deprecated and documenting this behavior change, and possibly restoring the 1.0.2 behavior to avoid breaking folks.
Aha! I think what might actually be going on here is that openssh should have been using EVP_CipherInit_ex, not EVP_CipherInit. EVP_CipherInit was for folks who didn't call EVP_CIPHER_CTX_init (which EVP_CIPHER_CTX_new did implicitly).
But in 1.0.2, there was this weird quirk where EVP_CipherInit would skip EVP_CIPHER_CTX_init if cipher was NULL:
https://git.openssl.org/gitweb/?p=openssl.git;a=blob;f=crypto/evp/evp_enc.c;h=be577bac767fe9cf2c163be6967b20d1f6cc9014;hb=refs/heads/OpenSSL_1_0_2-stable#l94
OpenSSL 1.1.0 lost this behavior:
https://git.openssl.org/gitweb/?p=openssl.git;a=blob;f=crypto/evp/evp_enc.c;h=d21a0c7e54d54a5a77a2d5a6593e4851cf2f5291;hb=HEAD#l50
So I believe you want to revert this and merely switch those EVP_CipherInit calls to EVP_CipherInit_ex, which should work fine in 1.0.2 and 1.1.0. (Unless 1.1.0 additionally changed behavior here in ways I'm missing.) You may also wish to consider at minimum marking EVP_CipherInit as deprecated and documenting this behavior change, and possibly restoring the 1.0.2 behavior to avoid breaking folks.
| if (EVP_DigestInit_ex(&ret->mdctx, digest->mdfunc(), NULL) != 1) { | ||
| ret->mdctx = EVP_MD_CTX_new(); | ||
| if (ret->mdctx == NULL || | ||
| EVP_DigestInit_ex(ret->mdctx, digest->mdfunc(), NULL) != 1) { | ||
| free(ret); |
davidben
Oct 16, 2017
This now leaks ret->mdctx if EVP_DigestInit_ex hits a malloc failure. You want EVP_MD_CTX_free(ret->mdctx); free(ret); or ssh_digest_free(ret).
This now leaks ret->mdctx if EVP_DigestInit_ex hits a malloc failure. You want EVP_MD_CTX_free(ret->mdctx); free(ret); or ssh_digest_free(ret).
| @@ -0,0 +1,410 @@ | |||
| /* | |||
davidben
Oct 16, 2017
(Personally I would have just made these header-only, but whatever.)
(Personally I would have just made these header-only, but whatever.)
| buffer_get_bignum_bits(b, key->dsa->q); | ||
| buffer_get_bignum_bits(b, key->dsa->pub_key); | ||
| buffer_get_bignum_bits(b, key->dsa->priv_key); | ||
| case KEY_DSA: { |
davidben
Oct 16, 2017
Nit: These blocks seem over-indented (which makes the diff a little more annoying), or is that the preferred style here? Ditto with the other case FOO: { ... } blocks.
Nit: These blocks seem over-indented (which makes the diff a little more annoying), or is that the preferred style here? Ditto with the other case FOO: { ... } blocks.
| @@ -67,7 +67,7 @@ struct pkcs11_key { | |||
| struct pkcs11_provider *provider; | |||
| CK_ULONG slotidx; | |||
| int (*orig_finish)(RSA *rsa); | |||
| RSA_METHOD rsa_method; | |||
| RSA_METHOD *rsa_method; | |||
davidben
Oct 16, 2017
pkcs11_rsa_finish doesn't free this.
pkcs11_rsa_finish doesn't free this.
| attribs[2].ulValueLen, NULL); | ||
| if (RSA_set0_key(rsa, rsa_n, rsa_e, NULL) == 0) |
davidben
Oct 16, 2017
Check that rsa_n and rsa_e are NULL.
Check that rsa_n and rsa_e are NULL.
| helper_rsa.rsa_priv_enc = pkcs11_rsa_private_encrypt; | ||
| RSA_set_method(rsa, &helper_rsa); | ||
| if (helper_rsa == NULL) { | ||
| helper_rsa = RSA_meth_dup(RSA_get_default_method()); |
davidben
Oct 16, 2017
Error-handling?
Error-handling?
| switch (k->type) { | ||
| #ifdef WITH_OPENSSL | ||
| case KEY_RSA1: | ||
| case KEY_RSA: | ||
| case KEY_RSA_CERT: | ||
| return BN_num_bits(k->rsa->n); | ||
| RSA_get0_key(k->rsa, &bn, NULL, NULL); | ||
| return BN_num_bits(bn); |
davidben
Oct 16, 2017
RSA_bits? (Also DSA_bits below, but you'll need to add a new compat wrapper.)
RSA_bits? (Also DSA_bits below, but you'll need to add a new compat wrapper.)
|
I've fixed the merge conflicts, rebased it against current master, and fixed various issues. |
| == NULL) { | ||
| error("RSAPublicKey_dup"); | ||
| } | ||
| if (x509) | ||
| X509_free(x509); | ||
| } | ||
| if (rsa && rsa->n && rsa->e && | ||
| RSA_get0_key(rsa, &n, &e, NULL); |
Jakuje
Nov 14, 2017
Contributor
This needs to be rewritten to something like the following, otherwise it will segfault for non-RSA keys (ECC on yubikey):
if (rsa && RSA_get0_key(rsa, &n, &e, NULL) && n && e &&
I just noticed it with the version I run on Fedora.
This needs to be rewritten to something like the following, otherwise it will segfault for non-RSA keys (ECC on yubikey):
if (rsa && RSA_get0_key(rsa, &n, &e, NULL) && n && e &&
I just noticed it with the version I run on Fedora.
Jakuje
Nov 15, 2017
Contributor
nope ... the RSA_get0_key() is void function so it will not work this way. But clearly we can call this function only if we are sure the rsa is not NULL.
nope ... the RSA_get0_key() is void function so it will not work this way. But clearly we can call this function only if we are sure the rsa is not NULL.
noloader
Nov 15, 2017
the RSA_get0_key() is void function so it will not work this way. But clearly we can call this function only if we are sure the rsa is not NULL
Just my 2¢, but if RSA_get0_key can't handle a NULL parameter, then it sounds like an OpenSSL bug. The RSA_get0_key document does not state the parameter cannot be NULL; and it also states other parameters can be NULL.
the RSA_get0_key() is void function so it will not work this way. But clearly we can call this function only if we are sure the rsa is not NULL
Just my 2¢, but if RSA_get0_key can't handle a NULL parameter, then it sounds like an OpenSSL bug. The RSA_get0_key document does not state the parameter cannot be NULL; and it also states other parameters can be NULL.
|
Anything still blocking here, other than the |
|
I've fixed the RSA_get0_key() call. |
|
Any remaining blockers here? It seems like the primary issue that's been raised is compatibility with both the 1.0 and 1.1 APIs, which is handled here. It appears that all review comments have been addressed. Is this just pending additional review? |
|
From the TLS Working Group mailing list at 3rd WGLC: draft-ietf-tls-tls13: |
|
On my Gentoo box (using OpenSSL 1.1.0g configured with --api=1.0.0 and no
Hope that helps! |
|
Will be this issue fixed in OpenSSH 7.7? I migrated to OpenSSL 1.1.1, because of TLS 1.3 support, which is really nice to have! |
|
as far as I can recall, openssh provides only executables. no shared objects. libssh and libssh2 build with openssl-1.1.x not bad. probably, now it is good opportunity for somebody to start concurrent project to openssh.. ;) |
After reading through this: openssh/openssh-portable#48 and this thread: https://lists.mindrot.org/pipermail/openssh-unix-dev/2017-October/036344.html I've concluded that this is the best of the three not-great options. The alternatives: - bundle libressl inside openssh packages - keep openssh dependent on openssl 1.0 and wait until upstream does something are both inferior. Libressl is used with openssh in OpenBSD and in OS X, so it did get at least some testing in the real world. Signed-off-by: Alexander Kanavin <alexander.kanavin@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
After reading through this: openssh/openssh-portable#48 and this thread: https://lists.mindrot.org/pipermail/openssh-unix-dev/2017-October/036344.html I've concluded that this is the best of the three not-great options. The alternatives: - bundle libressl inside openssh packages - keep openssh dependent on openssl 1.0 and wait until upstream does something are both inferior. Libressl is used with openssh in OpenBSD and in OS X, so it did get at least some testing in the real world. (From OE-Core rev: 1fa56a688237816fb47d92769e612e251384df83) Signed-off-by: Alexander Kanavin <alexander.kanavin@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
After reading through this: openssh/openssh-portable#48 and this thread: https://lists.mindrot.org/pipermail/openssh-unix-dev/2017-October/036344.html I've concluded that this is the best of the three not-great options. The alternatives: - bundle libressl inside openssh packages - keep openssh dependent on openssl 1.0 and wait until upstream does something are both inferior. Libressl is used with openssh in OpenBSD and in OS X, so it did get at least some testing in the real world. (From OE-Core rev: 1fa56a688237816fb47d92769e612e251384df83) Signed-off-by: Alexander Kanavin <alexander.kanavin@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
After reading through this: openssh/openssh-portable#48 and this thread: https://lists.mindrot.org/pipermail/openssh-unix-dev/2017-October/036344.html I've concluded that this is the best of the three not-great options. The alternatives: - bundle libressl inside openssh packages - keep openssh dependent on openssl 1.0 and wait until upstream does something are both inferior. Libressl is used with openssh in OpenBSD and in OS X, so it did get at least some testing in the real world. Signed-off-by: Alexander Kanavin <alexander.kanavin@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
After reading through this: openssh/openssh-portable#48 and this thread: https://lists.mindrot.org/pipermail/openssh-unix-dev/2017-October/036344.html I've concluded that this is the best of the three not-great options. The alternatives: - bundle libressl inside openssh packages - keep openssh dependent on openssl 1.0 and wait until upstream does something are both inferior. Libressl is used with openssh in OpenBSD and in OS X, so it did get at least some testing in the real world. Signed-off-by: Alexander Kanavin <alexander.kanavin@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
After reading through this: openssh/openssh-portable#48 and this thread: https://lists.mindrot.org/pipermail/openssh-unix-dev/2017-October/036344.html I've concluded that this is the best of the three not-great options. The alternatives: - bundle libressl inside openssh packages - keep openssh dependent on openssl 1.0 and wait until upstream does something are both inferior. Libressl is used with openssh in OpenBSD and in OS X, so it did get at least some testing in the real world. (From OE-Core rev: 26edbb9546436e04b96ca77ea828a7a7831a8319) Signed-off-by: Alexander Kanavin <alexander.kanavin@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
After reading through this: openssh/openssh-portable#48 and this thread: https://lists.mindrot.org/pipermail/openssh-unix-dev/2017-October/036344.html I've concluded that this is the best of the three not-great options. The alternatives: - bundle libressl inside openssh packages - keep openssh dependent on openssl 1.0 and wait until upstream does something are both inferior. Libressl is used with openssh in OpenBSD and in OS X, so it did get at least some testing in the real world. (From OE-Core rev: 26edbb9546436e04b96ca77ea828a7a7831a8319) Signed-off-by: Alexander Kanavin <alexander.kanavin@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This is a rebase of Kurt Roeckx's patch openssh/openssh-portable#48 On top of that, the calls to deprecated openssl functions were updated, and added a fix for redeclaration of pthread functions. Signed-off-by: Eneas U de Queiroz <cote2004-github@yahoo.com>
After reading through this: openssh/openssh-portable#48 and this thread: https://lists.mindrot.org/pipermail/openssh-unix-dev/2017-October/036344.html I've concluded that this is the best of the three not-great options. The alternatives: - bundle libressl inside openssh packages - keep openssh dependent on openssl 1.0 and wait until upstream does something are both inferior. Libressl is used with openssh in OpenBSD and in OS X, so it did get at least some testing in the real world. Signed-off-by: Alexander Kanavin <alexander.kanavin@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
After reading through this: openssh/openssh-portable#48 and this thread: https://lists.mindrot.org/pipermail/openssh-unix-dev/2017-October/036344.html I've concluded that this is the best of the three not-great options. The alternatives: - bundle libressl inside openssh packages - keep openssh dependent on openssl 1.0 and wait until upstream does something are both inferior. Libressl is used with openssh in OpenBSD and in OS X, so it did get at least some testing in the real world. (From OE-Core rev: 15002f4fde44a66cadaa94989ca11a418a3db572) Signed-off-by: Alexander Kanavin <alexander.kanavin@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
After reading through this: openssh/openssh-portable#48 and this thread: https://lists.mindrot.org/pipermail/openssh-unix-dev/2017-October/036344.html I've concluded that this is the best of the three not-great options. The alternatives: - bundle libressl inside openssh packages - keep openssh dependent on openssl 1.0 and wait until upstream does something are both inferior. Libressl is used with openssh in OpenBSD and in OS X, so it did get at least some testing in the real world. (From OE-Core rev: 15002f4fde44a66cadaa94989ca11a418a3db572) Signed-off-by: Alexander Kanavin <alexander.kanavin@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
After reading through this: openssh/openssh-portable#48 and this thread: https://lists.mindrot.org/pipermail/openssh-unix-dev/2017-October/036344.html I've concluded that this is the best of the three not-great options. The alternatives: - bundle libressl inside openssh packages - keep openssh dependent on openssl 1.0 and wait until upstream does something are both inferior. Libressl is used with openssh in OpenBSD and in OS X, so it did get at least some testing in the real world. Signed-off-by: Alexander Kanavin <alexander.kanavin@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
After reading through this: openssh/openssh-portable#48 and this thread: https://lists.mindrot.org/pipermail/openssh-unix-dev/2017-October/036344.html I've concluded that this is the best of the three not-great options. The alternatives: - bundle libressl inside openssh packages - keep openssh dependent on openssl 1.0 and wait until upstream does something are both inferior. Libressl is used with openssh in OpenBSD and in OS X, so it did get at least some testing in the real world. (From OE-Core rev: 0c9757e00e1763d10270d71a732620a1927874b6) Signed-off-by: Alexander Kanavin <alexander.kanavin@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
After reading through this: openssh/openssh-portable#48 and this thread: https://lists.mindrot.org/pipermail/openssh-unix-dev/2017-October/036344.html I've concluded that this is the best of the three not-great options. The alternatives: - bundle libressl inside openssh packages - keep openssh dependent on openssl 1.0 and wait until upstream does something are both inferior. Libressl is used with openssh in OpenBSD and in OS X, so it did get at least some testing in the real world. Signed-off-by: Alexander Kanavin <alexander.kanavin@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
After reading through this: openssh/openssh-portable#48 and this thread: https://lists.mindrot.org/pipermail/openssh-unix-dev/2017-October/036344.html I've concluded that this is the best of the three not-great options. The alternatives: - bundle libressl inside openssh packages - keep openssh dependent on openssl 1.0 and wait until upstream does something are both inferior. Libressl is used with openssh in OpenBSD and in OS X, so it did get at least some testing in the real world. (From OE-Core rev: 3b8bbd02fa0fbf74cb42fcf28596c551e9fa4447) Signed-off-by: Alexander Kanavin <alexander.kanavin@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
After reading through this: openssh/openssh-portable#48 and this thread: https://lists.mindrot.org/pipermail/openssh-unix-dev/2017-October/036344.html I've concluded that this is the best of the three not-great options. The alternatives: - bundle libressl inside openssh packages - keep openssh dependent on openssl 1.0 and wait until upstream does something are both inferior. Libressl is used with openssh in OpenBSD and in OS X, so it did get at least some testing in the real world. Signed-off-by: Alexander Kanavin <alexander.kanavin@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
After reading through this: openssh/openssh-portable#48 and this thread: https://lists.mindrot.org/pipermail/openssh-unix-dev/2017-October/036344.html I've concluded that this is the best of the three not-great options. The alternatives: - bundle libressl inside openssh packages - keep openssh dependent on openssl 1.0 and wait until upstream does something are both inferior. Libressl is used with openssh in OpenBSD and in OS X, so it did get at least some testing in the real world. (From OE-Core rev: 7c9eda8535b88a8889629b52342935894d71d9c9) Signed-off-by: Alexander Kanavin <alexander.kanavin@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
After reading through this: openssh/openssh-portable#48 and this thread: https://lists.mindrot.org/pipermail/openssh-unix-dev/2017-October/036344.html I've concluded that this is the best of the three not-great options. The alternatives: - bundle libressl inside openssh packages - keep openssh dependent on openssl 1.0 and wait until upstream does something are both inferior. Libressl is used with openssh in OpenBSD and in OS X, so it did get at least some testing in the real world. (From OE-Core rev: 7c9eda8535b88a8889629b52342935894d71d9c9) Signed-off-by: Alexander Kanavin <alexander.kanavin@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
After reading through this: openssh/openssh-portable#48 and this thread: https://lists.mindrot.org/pipermail/openssh-unix-dev/2017-October/036344.html I've concluded that this is the best of the three not-great options. The alternatives: - bundle libressl inside openssh packages - keep openssh dependent on openssl 1.0 and wait until upstream does something are both inferior. Libressl is used with openssh in OpenBSD and in OS X, so it did get at least some testing in the real world. Signed-off-by: Alexander Kanavin <alexander.kanavin@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
After reading through this: openssh/openssh-portable#48 and this thread: https://lists.mindrot.org/pipermail/openssh-unix-dev/2017-October/036344.html I've concluded that this is the best of the three not-great options. The alternatives: - bundle libressl inside openssh packages - keep openssh dependent on openssl 1.0 and wait until upstream does something are both inferior. Libressl is used with openssh in OpenBSD and in OS X, so it did get at least some testing in the real world. (From OE-Core rev: e7ac137bfc59bc67e17d5372b59d20bdbfcc2550) Signed-off-by: Alexander Kanavin <alexander.kanavin@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Source: poky MR: 00000 Type: Integration Disposition: Merged from poky ChangeID: 7294453 Description: After reading through this: openssh/openssh-portable#48 and this thread: https://lists.mindrot.org/pipermail/openssh-unix-dev/2017-October/036344.html I've concluded that this is the best of the three not-great options. The alternatives: - bundle libressl inside openssh packages - keep openssh dependent on openssl 1.0 and wait until upstream does something are both inferior. Libressl is used with openssh in OpenBSD and in OS X, so it did get at least some testing in the real world. (From OE-Core rev: e7ac137bfc59bc67e17d5372b59d20bdbfcc2550) Signed-off-by: Alexander Kanavin <alexander.kanavin@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org> Signed-off-by: Jeremy Puhlman <jpuhlman@mvista.com>
|
https://www.openssl.org/blog/blog/2018/09/11/release111/
|
This is a rebase of Kurt Roeckx's patch openssh/openssh-portable#48 On top of that, the calls to deprecated openssl functions were updated, and added a fix for redeclaration of pthread functions. Signed-off-by: Eneas U de Queiroz <cote2004-github@yahoo.com>
This is a rebase of Kurt Roeckx's patch openssh/openssh-portable#48 On top of that, the calls to deprecated openssl functions were updated, and added a fix for redeclaration of pthread functions. Signed-off-by: Eneas U de Queiroz <cote2004-github@yahoo.com>
|
OpenSSL 1.1.x compatibility started arriving about a week ago: 482d23b I cherry-picked the 1.1.x-compat commits on top of V_7_8_P1 (resolving trivial conflicts) and pushed the result here: https://github.com/emaste/openssh-portable/tree/v7.8p1-OpenSSL1.1 |
1.0.2o is now longer served. OpenSSH does currently not support 1.1 per: openssh/openssh-portable#48
1.0.2o is now longer served. OpenSSH does currently not support 1.1 per: openssh/openssh-portable#48
|
OpenSSL 1.1.x is now supported. Thanks. |
No description provided.