[squeak-dev] WebClient httpGet: 'http://freegeoip.net/json/' works on windows not linux

tim Rowledge tim at rowledge.org
Mon Feb 26 20:13:47 UTC 2018



> On 26-02-2018, at 12:03 PM, tim Rowledge <tim at 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.

It fails in loadLibrary() and looks like in dlsym.c @ line 58 it fails to find a file or directory.

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.
(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);
(gdb) 
314	  SQO_FIND_SYM(sym, name, ssl, "libssl.so");
(gdb) 
Found symbol ASN1_STRING_data in dlhandle_ssl
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
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 at rowledge.org; http://www.rowledge.org/tim
Strange OpCodes: SEOB: Set Every Other Bit




More information about the Squeak-dev mailing list