Hello John, That's much earlier than the point where the fault becomes obvious. It's not completely clear that it's the same event. How would you feel about building openssl from source, with debug, in order for us to work out what it's complaining about? The other alternative, which I won't do instantly is: - find somewhere to stash some variables - finish the call to ERR_put_error - call ERR_get_error_line_data with the addresses of the stashed variables - print them and try to interpret the result The other other alternative is to find every place where an ERR_get_error* is called, and fix them so that they don't discard the output, but that's probably a big job. Regards, James. On 24/02/2016, John Found <johnfound at asm32.info> wrote:
On Wed, 24 Feb 2016 12:01:10 +1300 James C <james.from.wellington at gmail.com> wrote:
Hello John,
Thanks.
On casual inspection, that seems very sad. It has failed, and seems to be trying to tell us that nothing is wrong.
My next experiment is: gdb <the usual stuff> break ERR_put_error run bt 10 quit
to try to prove, upstream, that there really was a complaint.
Here is the output:
gdb --args /usr/local/bin/dillo "https://msdn.microsoft.com/en-us/library/windows/desktop/ms645616(v=vs.85).a..." GNU gdb (GDB) 7.10.1 Copyright (C) 2015 Free Software Foundation, Inc. License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html> This is free software: you are free to change and redistribute it. There is NO WARRANTY, to the extent permitted by law. Type "show copying" and "show warranty" for details. This GDB was configured as "x86_64-unknown-linux-gnu". Type "show configuration" for configuration details. For bug reporting instructions, please see: <http://www.gnu.org/software/gdb/bugs/>. Find the GDB manual and other documentation resources online at: <http://www.gnu.org/software/gdb/documentation/>. For help, type "help". Type "apropos word" to search for commands related to "word"... Reading symbols from /usr/local/bin/dillo...done. (gdb) break ERR_put_error Function "ERR_put_error" not defined. Make breakpoint pending on future shared library load? (y or [n]) y Breakpoint 1 (ERR_put_error) pending. (gdb) run Starting program: /usr/local/bin/dillo https://msdn.microsoft.com/en-us/library/windows/desktop/ms645616\(v=vs.85\).aspx [Thread debugging using libthread_db enabled] Using host libthread_db library "/usr/lib/libthread_db.so.1". paths: Cannot open file '/home/johnfound/.dillo/keysrc': No such file or directory paths: Using /usr/local/etc/dillo/keysrc paths: Cannot open file '/home/johnfound/.dillo/domainrc': No such file or directory paths: Using /usr/local/etc/dillo/domainrc Domain: Default accept. dillo_dns_init: Here we go! (threaded)
Breakpoint 1, 0x00007ffff6ba9d90 in ERR_put_error () from /usr/lib/libcrypto.so.1.0.0 (gdb) bt 10 #0 0x00007ffff6ba9d90 in ERR_put_error () from /usr/lib/libcrypto.so.1.0.0 #1 0x00007ffff6be55c7 in PEM_read_bio () from /usr/lib/libcrypto.so.1.0.0 #2 0x00007ffff6be38f6 in PEM_X509_INFO_read_bio () from /usr/lib/libcrypto.so.1.0.0 #3 0x00007ffff6bf5717 in X509_load_cert_crl_file () from /usr/lib/libcrypto.so.1.0.0 #4 0x00007ffff6bf583a in by_file_ctrl () from /usr/lib/libcrypto.so.1.0.0 #5 0x000000000044684e in Tls_load_certificates () at tls.c:234 #6 a_Tls_init () at tls.c:293 #7 0x000000000040aadc in main (argc=2, argv=0x7fffffffe298) at dillo.cc:481
-- http://fresh.flatassembler.net http://asm32.info John Found <johnfound at asm32.info>