Notes |
|
|
curl command-line is not working:
curl: (35) error:14195006:SSL routines:tls_construct_cke_ecdhe:EVP lib
|
|
|
|
As far as I can tell, this error is being thrown up because evp_pkey_asn1_ctrl() returns <0.
This suggests the problem lies somewhere in the ASN1 code, but I have no idea what I'm looking for. |
|
|
|
Suspect the answer to this might be to upgrade the version of GCC we are using in the toolchain. There is a patched GCC6 here: https://github.com/bebbo/gcc
At the moment, I'm unable to even rebuild the ppc-amigaos toolchain (GCC 5 or 6) due to conflicting autotools dependencies, and m68k-amigaos is stuck on an even older version of binutils, so I'm not going to attempt switching to GCC6 until I at least get it building for ppc-amigaos. |
|
|
|
|
|
|
gcc6 build fixed to the extent it now builds working binaries without include errors.
A couple of outstanding issues:
* gcc-ranlib does not delete - this needs to be deleted otherwise libtool tries to use it and it calls our old ranlib with an option that hadn't been invented back then. (rm command in makefile not working)
* locale_t needs fixing - this is a problem with the clib2 includes which Olaf is aware of. (quick fix is to addd typedef void* locale_t to wchar.h)
* openssl e_os.h tries to include netinet/tcp.h - this doesn't exist in clib2, looks like OpenSSL doesn't actually need anything from it anyway. (quick fix is to touch netinet/tcp.h)
Even with this new version of gcc, OpenSSL still doesn't work. New error message is:
curl: (35) OpenSSL SSL_connect: SSL_ERROR_SYSCALL in connection to howsmyssl.com |
|
|
|
Attached diff between our OpenSSL and the one used by AmiSSL (which works), in case the problem is with our patches rather than the compiler. |
|
|
|
Applied a patch which looked important but hasn't resolved this issue (at least from curl; didn't try netsurf). Will need to check file for other patches we might be missing. |
|
|
(0001783)
|
Chris Young
|
2018-07-24 21:34
(Last edited: 2018-07-24 21:35) |
|
Can't see anything else important that we're missing :(
|
|
|
(0001844)
|
Chris Young
|
2018-09-09 13:43
(Last edited: 2018-09-09 13:44) |
|
Turns out that SSL is largely working (netsurf-browser.org domains work with latest CI build), but https://www.howsmyssl.com still gives "unable to fetch document" (as does https://en.wikipedia.org)
So there's something wrong, but it isn't all SSL/TLS as previously thought.
|
|
|
|
it is not something as simple as the OS3 port using the default certificate verification prompt code? (which simply says the user refused the certificate) |
|
|
|
I don't think so, as the certificate prompt worked last time I checked and there shouldn't be any reason for those sites to prompt. |
|
|
(0001896)
|
Chris Young
|
2019-03-10 23:47
(Last edited: 2019-03-11 00:05) |
|
I've built Curl against AmiSSL and the Curl executable gives me the same error, however it also fails downloading from sites that work in NetSurf (OS3 build with OpenSSL), so not sure if this is Curl not working properly with AmiSSL or AmiSSL having similar - but more severe - problems as our OpenSSL build.
curl: (35) OpenSSL SSL_connect: SSL_ERROR_SYSCALL in connection to www.howsmyssl.com:443
refs: https://github.com/jens-maus/amissl/issues/15#issuecomment-471366123
update: doesn't work in OS4 either, which suggests the libcurl-AmiSSL interface is broken.
|
|
|
|
and... an experimental build of NetSurf using libcurl built against AmiSSL doesn't connect to any secure sites either. |
|
|
(0001898)
|
Chris Young
|
2019-03-14 20:26
(Last edited: 2019-03-14 20:35) |
|
Fixed Curl+AmiSSL which now downloads pages from sites which Curl+OpenSSL didn't.
I'm confident that this will fix the problem with NetSurf downloading these pages.
At the moment a test build of NetSurf against libcurl-AmiSSL crashes before the main window opens. The same binary run on OS4 opens and allows browsing of secure pages.
|
|
|
|
chris/amissl branches contain a working build with AmiSSL. |
|
|
|
Now built against AmiSSL instead of OpenSSL. |
|
|
|
we believe this issue has been resolved in NetSurf 3.9 |
|