Ticket UUID: | ff82755e15f2e1165cf655c4e7d3f5984927c409 | |||
Title: | http::geturl socket error reporting lacks stack trace | |||
Type: | Bug | Version: | 8.6.8 | |
Submitter: | oehhar | Created on: | 2018-04-19 06:55:53 | |
Subsystem: | 29. http Package | Assigned To: | nobody | |
Priority: | 5 Medium | Severity: | Minor | |
Status: | Closed | Last Modified: | 2018-04-19 06:57:26 | |
Resolution: | Fixed | Closed By: | oehhar | |
Closed on: | 2018-04-19 06:57:26 | |||
Description: |
When the socket command within http::geturl raises an error, the stack trace is missing. % package require http 2.8.12 % package require tls 1.8.0 % http::register https 443 [list ::tls::socket -tls1] ; # parameter missing to -tls1 443 {::tls::tls_socket -tls1} % http::geturl https://www.hibc.de/ expected boolean value but got "-async" % set errorInfo expected boolean value but got "-async" while executing "http::geturl https://www.hibc.de/" The error message was quite surprising to me, as "http::geturl https://www.hibc.de/" has no argument "-async". After this checkin [a3bf2db1fd], the error reporting was enhanced to contain full stack trace to show the origin of the issue: % package require http 2.8.13 % package require tls 1.8.0 % http::register https 443 [list ::tls::socket -tls1] ; # parameter missing to -tls1 443 {::tls::socket -tls1} % http::geturl https://www.hibc.de/ expected boolean value but got "-async" % set errorInfo expected boolean value but got "-async" while executing "tls::import sock0551AF48 -server 0 -tls1 -async" ("eval" body line 1) invoked from within "eval [list tls::import] $chan $iopts" invoked from within "::tls::socket -tls1 -async www.hibc.de 443" ("eval" body line 1) invoked from within "eval $defcmd $sockopts $targetAddr" invoked from within "http::geturl https://www.hibc.de/" |