Hi Tim
On 26.02.2018, at 21:13, tim Rowledge tim@rowledge.org wrote:
On 26-02-2018, at 12:03 PM, tim Rowledge tim@rowledge.org wrote:
Which probably doesn't mean much to anyone so I guess I'll look up my notes on the joys of running gdb and try again. I hate gdb.
have you ever trie "tui enable" ?
It fails in loadLibrary() and looks like in dlsym.c @ line 58 it fails to find a file or directory.
Yes,,,
I have to dash, so hee is the gdb output so far - Thread 1 "squeak" hit Breakpoint 1, sqCreateSSL () at /home/pi/DizietFS/Documents/Squeak/Rasbian-VM/vm/platforms/unix/plugins/SqueakSSL/sqUnixOpenSSL.c:275 275 sqInt handle = 0; (gdb) list 270 /* sqCreateSSL: Creates a new SSL instance. 271 Arguments: None. 272 Returns: SSL handle. 273 */ 274 sqInt sqCreateSSL(void) { 275 sqInt handle = 0; 276 sqSSL *ssl = NULL; 277 278 if (!wasInitialized) { 279 if (!loadLibrary()) { (gdb) n 276 sqSSL *ssl = NULL; (gdb) 278 if (!wasInitialized) { (gdb) s 279 if (!loadLibrary()) { (gdb) loadLibrary () at /home/pi/DizietFS/Documents/Squeak/Rasbian-VM/vm/platforms/unix/plugins/SqueakSSL/openssl_overlay.h:430 430 SQO_DECLARATIONS (gdb) list 425 sqo_ ## name =(ret (*)(__VA_ARGS__)) _sqo_find(#name); 426 # define SQO_DECL_NO(ret, name, ...) /**/ 427 #endif /* defined(SQSSL_OPENSSL_LINKED) */ 428 429 /* THIS LINE IS VITAL */ 430 SQO_DECLARATIONS 431 432 433 #undef SQO_DECL___ 434 #undef SQO_DECL_NO (gdb) s _sqo_find (name=0x75e2da80 "ASN1_STRING_data") at /home/pi/DizietFS/Documents/Squeak/Rasbian-VM/vm/platforms/unix/plugins/SqueakSSL/openssl_overlay.h:311 311 void* sym = NULL; (gdb) s 312 SQO_HAS_FOUND_SYM(sym, name, RTLD_DEFAULT); (gdb) __dlsym (handle=0x0, name=0x75e2da80 "ASN1_STRING_data") at dlsym.c:58 58 dlsym.c: No such file or directory.
This is expected. It tries to find "ASN1_STRING_data" in the current loaded process images, but it is not yet there. But see below...
(gdb) n 56 in dlsym.c (gdb) 58 in dlsym.c (gdb) 56 in dlsym.c (gdb) 58 in dlsym.c (gdb) 56 in dlsym.c (gdb) 58 in dlsym.c (gdb) 56 in dlsym.c (gdb) 58 in dlsym.c (gdb) 68 in dlsym.c (gdb) 63 in dlsym.c (gdb) 64 in dlsym.c (gdb) 65 in dlsym.c (gdb) 68 in dlsym.c (gdb) 70 in dlsym.c (gdb) 72 in dlsym.c (gdb) 70 in dlsym.c (gdb) 72 in dlsym.c (gdb) 70 in dlsym.c (gdb) 72 in dlsym.c (gdb) 75 in dlsym.c (gdb) _sqo_find (name=0x75e2da80 "ASN1_STRING_data") at /home/pi/DizietFS/Documents/Squeak/Rasbian-VM/vm/platforms/unix/plugins/SqueakSSL/openssl_overlay.h:313 313 SQO_FIND_SYM(sym, name, self, NULL);
.. it is also not found in the main executable but...
(gdb) 314 SQO_FIND_SYM(sym, name, ssl, "libssl.so"); (gdb) Found symbol ASN1_STRING_data in dlhandle_ssl
it _is_ found in an libssl.
317 } (gdb) Found symbol ASN1_STRING_length in RTLD_DEFAULT Found symbol BIO_free_all in RTLD_DEFAULT Found symbol BIO_new in RTLD_DEFAULT Found symbol BIO_s_mem in RTLD_DEFAULT Found symbol BIO_ctrl_pending in RTLD_DEFAULT Found symbol BIO_ctrl in RTLD_DEFAULT Found symbol BIO_write in RTLD_DEFAULT Found symbol BIO_read in RTLD_DEFAULT Found symbol ERR_print_errors_fp in RTLD_DEFAULT Found symbol SSL_CTX_free in RTLD_DEFAULT Found symbol SSL_CTX_set_cipher_list in RTLD_DEFAULT Found symbol SSL_CTX_set_default_verify_paths in RTLD_DEFAULT Found symbol SSL_CTX_ctrl in RTLD_DEFAULT Found symbol SSL_CTX_use_PrivateKey_file in RTLD_DEFAULT Found symbol SSL_CTX_use_certificate_file in RTLD_DEFAULT Found symbol SSL_accept in RTLD_DEFAULT Found symbol SSL_connect in RTLD_DEFAULT Found symbol SSL_free in RTLD_DEFAULT Found symbol SSL_ctrl in RTLD_DEFAULT Found symbol SSL_get_error in RTLD_DEFAULT Found symbol SSL_get_peer_certificate in RTLD_DEFAULT Found symbol SSL_get_verify_result in RTLD_DEFAULT
so are all these, too.
However, the next in line (openssl_overlay.h:274) is apparently _not_ found.
how strange.
is the openssl library list you gave some days ago still correct?
Best regards -tobias
loadLibrary () at /home/pi/DizietFS/Documents/Squeak/Rasbian-VM/vm/platforms/unix/plugins/SqueakSSL/openssl_overlay.h:438 438 } (gdb) sqCreateSSL () at /home/pi/DizietFS/Documents/Squeak/Rasbian-VM/vm/platforms/unix/plugins/SqueakSSL/sqUnixOpenSSL.c:280 280 return 0; (gdb)
tim
tim Rowledge; tim@rowledge.org; http://www.rowledge.org/tim Strange OpCodes: SEOB: Set Every Other Bit