Artifact [ea605ef836]

Artifact ea605ef8362e583f59fac2bc665e75aaceb0578841e54f99133dc29b4216b71e:

Ticket change [ea605ef836] - New ticket [799aae4e72a7c137|799aae4e72] <i>http::geturl hangs if certificate verify failed</i>. by anonymous on 2019-12-13 10:13:19.
D 2019-12-13T10:13:19.726
J foundin >1.7.3
J icomment The\sproblem\sis\smore\ssevere\sthe\solder\sthe\shttp\spackage\sis,\sbut\sin\sits\sless\scritical\sform,\sit\shangs\swhen\sperforming\sa\spost:\r\n\r\n```\r\npackage\srequire\stls\r\n\r\npackage\srequire\shttp\r\nhttp::register\shttps\s443\stls::socket\r\n\r\nproc\s::tls::log\s{level\smsg}\s{\r\n\s\s\s\sputs\s">>>>\s$msg"\r\n}\r\n\r\n#set\s::tls::debug\s1\r\n\r\ntls::init\s-cafile\s/tmp/kk.ca\s-tls1\strue\s-require\s1\s-request\s1\r\n\r\n\r\nhttp::geturl\shttps://self-signed.badssl.com\s-query\sa=b\r\n\r\nputs\sOK\r\n```\r\n\r\nIt\sshows:\r\n\r\n```\r\nVerifyCallback\s1\r\nVerifyCallback\schecking\r\nVerifyCallback\snull\scallback\r\nVerifyCallback\sreturnning\sok=0\r\nSSL\schannel\s"sock5":\serror:\scertificate\sverify\sfailed\r\n\r\n<-----\shere\sit\shangs\r\n```\r\n\r\nIf\sinstead\sof\sperforming\sa\sPOST,\swe\suse\sGET,\sit\sdoes\snot\shang:\r\n\r\n\r\n```\r\nVerifyCallback\s1\r\nVerifyCallback\schecking\r\nVerifyCallback\snull\scallback\r\nVerifyCallback\sreturnning\sok=0\r\nerror\sflushing\s"sock5":\sconnection\sreset\sby\speer\r\n\s\s\s\swhile\sexecuting\r\n"http::geturl\shttps://self-signed.badssl.com"\r\n\s\s\s\s(file\s"check.tcl"\sline\s18)\r\n```\r\n\r\nBut\sis\sjust\sbecause\sin\shttp\smodule,\sthe\ssocket\sis\sflushed,\sand\sit\sfails:\r\n\r\n```\r\n\s\sif\s{$isQuery\s||\s$isQueryChannel}\s{\r\n\s\s\s\s\s\s...\r\n\s\s\s\s\s\sputs\s$sock\s""\r\n\s\s\s\s\s\sfconfigure\s$sock\s-translation\s{auto\sbinary}\r\n\s\s\s\s\s\sfileevent\s$sock\swritable\s[list\shttp::Write\s$token]\r\n\s\s}\selse\s{\r\n\s\s\s\s\s\sputs\s$sock\s""\r\n\s\s\s\s\s\sflush\s$sock\r\n\s\s\s\s\s\sfileevent\s$sock\sreadable\s[list\shttp::Event\s$sock\s$token]\r\n\s\s}\r\n```\r\n\r\nOn\sisQuery\smode\s(POST),\sthere\sis\sno\sflush\sto\strigger\san\serror\sso\sit\shangs.\r\n\r\nI\stracked\sthe\serror\sto\sthis\scommit:\s\r\n\r\nhttps://core.tcl-lang.org/tcltls/info/7df7a8696e009447\r\n\r\nFrom\sthat\scommit\sonwards,\sit\salways\shangs.
J login anonymous
J mimetype text/x-fossil-plain
J private_contact fb5d142cbd03f75616e36710b2a166433622c00f
J severity Severe
J status Open
J title http::geturl\shangs\sif\scertificate\sverify\sfailed
J type Code\sDefect
K 799aae4e72a7c137979ba791698b79d610ad5119
U anonymous
Z 2eed82ebb03bd03ff3af32dce69a3300