Hex Artifact Content

Artifact 45d0b0632dcde6579c15c8fe39985d6725865b0c2305797eab1f2c219f8c1e73:

Ticket change [45d0b0632d] - New ticket [48eddca89ea79b5c|48eddca89e] <i>http:geturl https://localhost:8143/info hangs when server not running</i>. by anonymous on 2025-05-22 09:14:23.
0000: 44 20 32 30 32 35 2d 30 35 2d 32 32 54 30 39 3a  D 2025-05-22T09:
0010: 31 34 3a 32 33 2e 35 32 33 0a 4a 20 66 6f 75 6e  14:23.523.J foun
0020: 64 69 6e 20 31 2e 38 2c 5c 73 63 6f 6d 6d 69 74  din 1.8,\scommit
0030: 5c 73 63 61 31 61 38 34 36 32 39 30 2c 5c 73 62  \sca1a846290,\sb
0040: 75 74 5c 73 61 66 66 65 63 74 73 5c 73 6f 6c 64  ut\saffects\sold
0050: 65 72 5c 73 61 6e 64 5c 73 6e 65 77 65 72 5c 73  er\sand\snewer\s
0060: 63 6f 6d 6d 69 74 73 5c 73 61 73 5c 73 77 65 6c  commits\sas\swel
0070: 6c 0a 4a 20 69 63 6f 6d 6d 65 6e 74 20 54 68 65  l.J icomment The
0080: 72 65 5c 73 69 73 5c 73 61 5c 73 73 75 62 74 6c  re\sis\sa\ssubtl
0090: 65 5c 73 62 75 67 5c 73 77 68 65 6e 5c 73 74 72  e\sbug\swhen\str
00a0: 79 69 6e 67 5c 73 74 6f 5c 73 63 6f 6e 6e 65 63  ying\sto\sconnec
00b0: 74 5c 73 74 6f 5c 73 61 5c 73 73 65 72 76 65 72  t\sto\sa\sserver
00c0: 5c 73 6e 6f 74 5c 73 72 75 6e 6e 69 6e 67 5c 73  \snot\srunning\s
00d0: 76 69 61 5c 73 68 74 74 70 3a 3a 67 65 74 75 72  via\shttp::getur
00e0: 6c 5c 73 75 73 69 6e 67 5c 73 74 63 6c 74 6c 73  l\susing\stcltls
00f0: 2e 5c 73 74 63 6c 74 6c 73 5c 73 77 61 69 74 73  .\stcltls\swaits
0100: 5c 73 66 6f 72 5c 73 74 68 65 5c 73 63 6f 6e 6e  \sfor\sthe\sconn
0110: 65 63 74 69 6f 6e 5c 73 61 6e 64 5c 73 6c 6f 6f  ection\sand\sloo
0120: 70 73 5c 73 65 6e 64 6c 65 73 73 6c 79 5c 73 6e  ps\sendlessly\sn
0130: 6f 74 5c 73 67 69 76 69 6e 67 5c 73 74 68 65 5c  ot\sgiving\sthe\
0140: 73 54 63 6c 5c 73 65 76 65 6e 74 5c 73 6c 6f 6f  sTcl\sevent\sloo
0150: 70 5c 73 74 68 65 5c 73 63 68 61 6e 63 65 5c 73  p\sthe\schance\s
0160: 74 6f 5c 73 68 61 6e 64 6c 65 5c 73 74 69 6d 65  to\shandle\stime
0170: 72 5c 73 65 76 65 6e 74 73 5c 73 66 6f 72 5c 73  r\sevents\sfor\s
0180: 61 5c 73 74 69 6d 65 6f 75 74 2e 5c 73 45 78 61  a\stimeout.\sExa
0190: 6d 70 6c 65 5c 73 63 6f 64 65 5c 73 74 6f 5c 73  mple\scode\sto\s
01a0: 72 65 70 72 6f 64 75 63 65 3a 5c 72 5c 6e 5c 72  reproduce:\r\n\r
01b0: 5c 6e 60 60 60 5c 72 5c 6e 70 61 63 6b 61 67 65  \n```\r\npackage
01c0: 5c 73 72 65 71 75 69 72 65 5c 73 68 74 74 70 3b  \srequire\shttp;
01d0: 5c 72 5c 6e 70 61 63 6b 61 67 65 5c 73 72 65 71  \r\npackage\sreq
01e0: 75 69 72 65 5c 73 74 6c 73 3b 5c 72 5c 6e 73 65  uire\stls;\r\nse
01f0: 74 5c 73 74 6f 6b 5c 73 5b 68 74 74 70 3a 3a 67  t\stok\s[http::g
0200: 65 74 75 72 6c 5c 73 68 74 74 70 73 3a 2f 2f 6c  eturl\shttps://l
0210: 6f 63 61 6c 68 6f 73 74 3a 38 31 34 33 2f 69 6e  ocalhost:8143/in
0220: 66 6f 5c 73 2d 74 69 6d 65 6f 75 74 5c 73 33 30  fo\s-timeout\s30
0230: 30 30 5d 5c 73 23 5c 73 75 73 65 5c 73 70 6f 72  00]\s#\suse\spor
0240: 74 5c 73 77 69 74 68 5c 73 6e 6f 5c 73 73 65 72  t\swith\sno\sser
0250: 76 69 63 65 5c 73 6c 69 73 74 65 6e 69 6e 67 5c  vice\slistening\
0260: 73 68 65 72 65 21 5c 72 5c 6e 68 74 74 70 3a 3a  shere!\r\nhttp::
0270: 73 74 61 74 75 73 5c 73 24 74 6f 6b 3b 5c 72 5c  status\s$tok;\r\
0280: 6e 60 60 60 5c 72 5c 6e 5c 72 5c 6e 54 68 65 5c  n```\r\n\r\nThe\
0290: 73 70 72 6f 62 6c 65 6d 5c 73 69 73 5c 73 66 69  sproblem\sis\sfi
02a0: 78 65 64 5c 73 77 69 74 68 5c 73 74 68 65 5c 73  xed\swith\sthe\s
02b0: 66 6f 6c 6c 6f 77 69 6e 67 5c 73 70 61 74 63 68  following\spatch
02c0: 2e 5c 73 41 6e 6f 74 68 65 72 5c 73 77 61 79 5c  .\sAnother\sway\
02d0: 73 74 6f 5c 73 63 6f 72 72 65 63 74 5c 73 74 68  sto\scorrect\sth
02e0: 65 5c 73 69 73 73 75 65 5c 73 6d 69 67 68 74 5c  e\sissue\smight\
02f0: 73 62 65 5c 73 74 6f 5c 73 63 68 61 6e 67 65 5c  sbe\sto\schange\
0300: 73 74 68 65 5c 73 54 63 6c 5c 73 68 74 74 70 5c  sthe\sTcl\shttp\
0310: 73 70 61 63 6b 61 67 65 5c 73 74 6f 5c 73 73 65  spackage\sto\sse
0320: 74 5c 73 74 68 65 5c 73 73 6f 63 6b 65 74 5c 73  t\sthe\ssocket\s
0330: 74 6f 5c 73 61 73 79 6e 63 5c 73 65 76 65 6e 5c  to\sasync\seven\
0340: 73 77 68 65 6e 5c 73 77 61 69 74 69 6e 67 5c 73  swhen\swaiting\s
0350: 66 6f 72 5c 73 74 68 65 5c 73 69 6e 69 74 69 61  for\sthe\sinitia
0360: 6c 5c 73 63 6f 6e 6e 65 63 74 69 6f 6e 5c 73 62  l\sconnection\sb
0370: 75 74 5c 73 74 68 69 73 5c 73 73 65 65 6d 73 5c  ut\sthis\sseems\
0380: 73 74 6f 5c 73 62 65 5c 73 61 5c 73 62 69 67 67  sto\sbe\sa\sbigg
0390: 65 72 5c 73 65 66 66 6f 72 74 2e 5c 73 49 5c 73  er\seffort.\sI\s
03a0: 63 6f 6e 73 69 64 65 72 5c 73 61 6e 64 5c 73 65  consider\sand\se
03b0: 6e 64 6c 65 73 73 5c 73 6c 6f 6f 70 5c 73 69 6e  ndless\sloop\sin
03c0: 5c 73 61 5c 73 54 63 6c 5c 73 63 6f 6d 6d 61 6e  \sa\sTcl\scomman
03d0: 64 5c 73 61 73 5c 73 70 72 6f 62 6c 65 6d 61 74  d\sas\sproblemat
03e0: 69 63 5c 73 73 6f 5c 73 49 5c 73 64 65 63 69 64  ic\sso\sI\sdecid
03f0: 65 64 5c 73 74 6f 5c 73 61 76 6f 69 64 5c 73 69  ed\sto\savoid\si
0400: 74 2e 5c 73 4b 65 65 70 5c 73 69 6e 5c 73 6d 69  t.\sKeep\sin\smi
0410: 6e 64 5c 73 74 68 61 74 5c 73 74 63 6c 74 6c 73  nd\sthat\stcltls
0420: 5c 73 70 72 6f 70 65 72 6c 79 5c 73 61 62 6f 72  \sproperly\sabor
0430: 74 73 5c 73 74 68 65 5c 73 6c 6f 6f 70 5c 73 66  ts\sthe\sloop\sf
0440: 6f 72 5c 73 61 73 79 6e 63 5c 73 73 6f 63 6b 65  or\sasync\ssocke
0450: 74 73 5c 73 64 75 72 69 6e 67 5c 73 74 68 65 5c  ts\sduring\sthe\
0460: 73 63 6f 6e 6e 65 63 74 69 6f 6e 5c 73 70 68 61  sconnection\spha
0470: 73 65 2e 5c 72 5c 6e 5c 72 5c 6e 60 60 60 5c 72  se.\r\n\r\n```\r
0480: 5c 6e 64 69 66 66 5c 73 2d 72 63 4e 5c 73 76 61  \ndiff\s-rcN\sva
0490: 6e 69 6c 6c 61 2f 74 63 6c 74 6c 73 2d 63 61 31  nilla/tcltls-ca1
04a0: 61 38 34 36 32 39 30 2f 67 65 6e 65 72 69 63 2f  a846290/generic/
04b0: 74 6c 73 49 4f 2e 63 5c 73 74 63 6c 74 6c 73 2d  tlsIO.c\stcltls-
04c0: 31 2e 38 2d 63 61 31 61 38 34 36 32 39 30 2f 67  1.8-ca1a846290/g
04d0: 65 6e 65 72 69 63 2f 74 6c 73 49 4f 2e 63 5c 72  eneric/tlsIO.c\r
04e0: 5c 6e 2a 2a 2a 5c 73 76 61 6e 69 6c 6c 61 2f 74  \n***\svanilla/t
04f0: 63 6c 74 6c 73 2d 63 61 31 61 38 34 36 32 39 30  cltls-ca1a846290
0500: 2f 67 65 6e 65 72 69 63 2f 74 6c 73 49 4f 2e 63  /generic/tlsIO.c
0510: 5c 73 5c 73 5c 73 54 68 75 5c 73 4a 61 6e 5c 73  \s\s\sThu\sJan\s
0520: 5c 73 32 5c 73 31 39 3a 30 35 3a 33 36 5c 73 32  \s2\s19:05:36\s2
0530: 30 32 35 5c 72 5c 6e 2d 2d 2d 5c 73 74 63 6c 74  025\r\n---\stclt
0540: 6c 73 2d 31 2e 38 2d 63 61 31 61 38 34 36 32 39  ls-1.8-ca1a84629
0550: 30 2f 67 65 6e 65 72 69 63 2f 74 6c 73 49 4f 2e  0/generic/tlsIO.
0560: 63 5c 73 5c 73 5c 73 5c 73 5c 73 5c 73 5c 73 54  c\s\s\s\s\s\s\sT
0570: 68 75 5c 73 4d 61 79 5c 73 32 32 5c 73 31 30 3a  hu\sMay\s22\s10:
0580: 34 36 3a 32 37 5c 73 32 30 32 35 5c 72 5c 6e 2a  46:27\s2025\r\n*
0590: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 5c 72  **************\r
05a0: 5c 6e 2a 2a 2a 5c 73 32 32 32 2c 32 33 35 5c 73  \n***\s222,235\s
05b0: 2a 2a 2a 2a 5c 72 5c 6e 5c 73 5c 73 5c 73 5c 73  ****\r\n\s\s\s\s
05c0: 5c 73 5c 73 5c 73 5c 73 64 70 72 69 6e 74 66 28  \s\s\s\sdprintf(
05d0: 22 62 69 6f 53 68 6f 75 6c 64 52 65 74 72 79 5c  "bioShouldRetry\
05e0: 73 3d 5c 73 25 64 22 2c 5c 73 62 69 6f 53 68 6f  s=\s%d",\sbioSho
05f0: 75 6c 64 52 65 74 72 79 29 3b 5c 72 5c 6e 5c 72  uldRetry);\r\n\r
0600: 5c 6e 5c 73 5c 73 5c 73 5c 73 5c 73 5c 73 5c 73  \n\s\s\s\s\s\s\s
0610: 5c 73 69 66 5c 73 28 65 72 72 5c 73 3c 3d 5c 73  \sif\s(err\s<=\s
0620: 30 29 5c 73 7b 5c 72 5c 6e 21 5c 73 5c 73 5c 73  0)\s{\r\n!\s\s\s
0630: 5c 73 5c 73 5c 73 5c 73 5c 73 5c 73 5c 73 5c 73  \s\s\s\s\s\s\s\s
0640: 69 66 5c 73 28 72 63 5c 73 3d 3d 5c 73 53 53 4c  if\s(rc\s==\sSSL
0650: 5f 45 52 52 4f 52 5f 57 41 4e 54 5f 43 4f 4e 4e  _ERROR_WANT_CONN
0660: 45 43 54 5c 73 7c 7c 5c 73 72 63 5c 73 3d 3d 5c  ECT\s||\src\s==\
0670: 73 53 53 4c 5f 45 52 52 4f 52 5f 57 41 4e 54 5f  sSSL_ERROR_WANT_
0680: 41 43 43 45 50 54 29 5c 73 7b 5c 72 5c 6e 21 5c  ACCEPT)\s{\r\n!\
0690: 73 5c 73 5c 73 5c 73 5c 73 5c 73 5c 73 5c 73 5c  s\s\s\s\s\s\s\s\
06a0: 73 5c 73 5c 73 5c 73 5c 73 5c 73 5c 73 62 69 6f  s\s\s\s\s\s\sbio
06b0: 53 68 6f 75 6c 64 52 65 74 72 79 5c 73 3d 5c 73  ShouldRetry\s=\s
06c0: 31 3b 5c 72 5c 6e 21 5c 73 5c 73 5c 73 5c 73 5c  1;\r\n!\s\s\s\s\
06d0: 73 5c 73 5c 73 5c 73 5c 73 5c 73 5c 73 7d 5c 73  s\s\s\s\s\s\s}\s
06e0: 65 6c 73 65 5c 73 69 66 5c 73 28 72 63 5c 73 3d  else\sif\s(rc\s=
06f0: 3d 5c 73 53 53 4c 5f 45 52 52 4f 52 5f 57 41 4e  =\sSSL_ERROR_WAN
0700: 54 5f 52 45 41 44 29 5c 73 7b 5c 72 5c 6e 21 5c  T_READ)\s{\r\n!\
0710: 73 5c 73 5c 73 5c 73 5c 73 5c 73 5c 73 5c 73 5c  s\s\s\s\s\s\s\s\
0720: 73 5c 73 5c 73 5c 73 5c 73 5c 73 5c 73 62 69 6f  s\s\s\s\s\s\sbio
0730: 53 68 6f 75 6c 64 52 65 74 72 79 5c 73 3d 5c 73  ShouldRetry\s=\s
0740: 31 3b 5c 72 5c 6e 21 5c 73 5c 73 5c 73 5c 73 5c  1;\r\n!\s\s\s\s\
0750: 73 5c 73 5c 73 5c 73 5c 73 5c 73 5c 73 5c 73 5c  s\s\s\s\s\s\s\s\
0760: 73 5c 73 5c 73 73 74 61 74 65 50 74 72 2d 3e 77  s\s\sstatePtr->w
0770: 61 6e 74 5c 73 7c 3d 5c 73 54 43 4c 5f 52 45 41  ant\s|=\sTCL_REA
0780: 44 41 42 4c 45 3b 5c 72 5c 6e 21 5c 73 5c 73 5c  DABLE;\r\n!\s\s\
0790: 73 5c 73 5c 73 5c 73 5c 73 5c 73 5c 73 5c 73 5c  s\s\s\s\s\s\s\s\
07a0: 73 7d 5c 73 65 6c 73 65 5c 73 69 66 5c 73 28 72  s}\selse\sif\s(r
07b0: 63 5c 73 3d 3d 5c 73 53 53 4c 5f 45 52 52 4f 52  c\s==\sSSL_ERROR
07c0: 5f 57 41 4e 54 5f 57 52 49 54 45 29 5c 73 7b 5c  _WANT_WRITE)\s{\
07d0: 72 5c 6e 21 5c 73 5c 73 5c 73 5c 73 5c 73 5c 73  r\n!\s\s\s\s\s\s
07e0: 5c 73 5c 73 5c 73 5c 73 5c 73 5c 73 5c 73 5c 73  \s\s\s\s\s\s\s\s
07f0: 5c 73 62 69 6f 53 68 6f 75 6c 64 52 65 74 72 79  \sbioShouldRetry
0800: 5c 73 3d 5c 73 31 3b 5c 72 5c 6e 21 5c 73 5c 73  \s=\s1;\r\n!\s\s
0810: 5c 73 5c 73 5c 73 5c 73 5c 73 5c 73 5c 73 5c 73  \s\s\s\s\s\s\s\s
0820: 5c 73 5c 73 5c 73 5c 73 5c 73 73 74 61 74 65 50  \s\s\s\s\sstateP
0830: 74 72 2d 3e 77 61 6e 74 5c 73 7c 3d 5c 73 54 43  tr->want\s|=\sTC
0840: 4c 5f 57 52 49 54 41 42 4c 45 3b 5c 72 5c 6e 5c  L_WRITABLE;\r\n\
0850: 73 5c 73 5c 73 5c 73 5c 73 5c 73 5c 73 5c 73 5c  s\s\s\s\s\s\s\s\
0860: 73 5c 73 5c 73 5c 73 7d 5c 72 5c 6e 5c 73 5c 73  s\s\s\s}\r\n\s\s
0870: 5c 73 5c 73 5c 73 5c 73 5c 73 5c 73 7d 5c 72 5c  \s\s\s\s\s\s}\r\
0880: 6e 5c 72 5c 6e 2d 2d 2d 5c 73 32 32 32 2c 32 35  n\r\n---\s222,25
0890: 30 5c 73 2d 2d 2d 2d 5c 72 5c 6e 5c 73 5c 73 5c  0\s----\r\n\s\s\
08a0: 73 5c 73 5c 73 5c 73 5c 73 5c 73 64 70 72 69 6e  s\s\s\s\s\sdprin
08b0: 74 66 28 22 62 69 6f 53 68 6f 75 6c 64 52 65 74  tf("bioShouldRet
08c0: 72 79 5c 73 3d 5c 73 25 64 22 2c 5c 73 62 69 6f  ry\s=\s%d",\sbio
08d0: 53 68 6f 75 6c 64 52 65 74 72 79 29 3b 5c 72 5c  ShouldRetry);\r\
08e0: 6e 5c 72 5c 6e 5c 73 5c 73 5c 73 5c 73 5c 73 5c  n\r\n\s\s\s\s\s\
08f0: 73 5c 73 5c 73 69 66 5c 73 28 65 72 72 5c 73 3c  s\s\sif\s(err\s<
0900: 3d 5c 73 30 29 5c 73 7b 5c 72 5c 6e 21 5c 73 5c  =\s0)\s{\r\n!\s\
0910: 73 5c 73 5c 73 5c 73 5c 73 5c 73 5c 73 5c 73 5c  s\s\s\s\s\s\s\s\
0920: 73 5c 73 2f 2a 5c 72 5c 6e 21 5c 73 5c 73 5c 73  s\s/*\r\n!\s\s\s
0930: 5c 73 5c 73 5c 73 5c 73 5c 73 5c 73 5c 73 5c 73  \s\s\s\s\s\s\s\s
0940: 5c 73 2a 5c 73 50 72 6f 62 6c 65 6d 5c 73 68 65  \s*\sProblem\she
0950: 72 65 5c 73 77 68 65 6e 5c 73 73 6f 63 6b 65 74  re\swhen\ssocket
0960: 5c 73 69 73 5c 73 6e 6f 74 5c 73 61 73 79 6e 63  \sis\snot\sasync
0970: 5c 73 61 6e 64 5c 73 73 74 69 6c 6c 5c 73 6e 6f  \sand\sstill\sno
0980: 74 5c 72 5c 6e 21 5c 73 5c 73 5c 73 5c 73 5c 73  t\r\n!\s\s\s\s\s
0990: 5c 73 5c 73 5c 73 5c 73 5c 73 5c 73 5c 73 2a 5c  \s\s\s\s\s\s\s*\
09a0: 73 63 6f 6e 6e 65 63 74 65 64 2c 5c 73 61 76 6f  sconnected,\savo
09b0: 69 64 5c 73 74 6f 5c 73 6c 6f 6f 70 5c 73 65 6e  id\sto\sloop\sen
09c0: 64 6c 65 73 73 6c 79 2e 5c 73 54 68 69 73 5c 73  dlessly.\sThis\s
09d0: 68 61 70 70 65 6e 73 5c 73 74 6f 5c 73 62 65 5c  happens\sto\sbe\
09e0: 73 74 68 65 5c 73 63 61 73 65 5c 72 5c 6e 21 5c  sthe\scase\r\n!\
09f0: 73 5c 73 5c 73 5c 73 5c 73 5c 73 5c 73 5c 73 5c  s\s\s\s\s\s\s\s\
0a00: 73 5c 73 5c 73 5c 73 2a 5c 73 74 68 65 5c 73 74  s\s\s\s*\sthe\st
0a10: 68 65 5c 73 64 65 73 74 69 6e 61 74 69 6f 6e 5c  he\sdestination\
0a20: 73 49 50 5c 73 69 73 5c 73 72 65 61 63 68 61 62  sIP\sis\sreachab
0a30: 6c 65 5c 73 62 75 74 5c 73 6e 6f 5c 73 73 65 72  le\sbut\sno\sser
0a40: 76 69 63 65 5c 73 72 65 73 70 6f 6e 64 73 5c 73  vice\sresponds\s
0a50: 6f 6e 5c 72 5c 6e 21 5c 73 5c 73 5c 73 5c 73 5c  on\r\n!\s\s\s\s\
0a60: 73 5c 73 5c 73 5c 73 5c 73 5c 73 5c 73 5c 73 2a  s\s\s\s\s\s\s\s*
0a70: 5c 73 74 68 65 5c 73 72 65 71 75 65 73 74 65 64  \sthe\srequested
0a80: 5c 73 70 6f 72 74 2e 5c 73 54 63 6c 5c 73 68 74  \sport.\sTcl\sht
0a90: 74 70 5c 73 64 6f 65 73 5c 73 6e 6f 74 5c 73 70  tp\sdoes\snot\sp
0aa0: 75 74 5c 73 74 68 65 5c 73 73 6f 63 6b 65 74 5c  ut\sthe\ssocket\
0ab0: 73 69 6e 5c 73 61 73 79 6e 63 5c 72 5c 6e 21 5c  sin\sasync\r\n!\
0ac0: 73 5c 73 5c 73 5c 73 5c 73 5c 73 5c 73 5c 73 5c  s\s\s\s\s\s\s\s\
0ad0: 73 5c 73 5c 73 5c 73 2a 5c 73 6d 6f 64 65 5c 73  s\s\s\s*\smode\s
0ae0: 75 6e 74 69 6c 5c 73 63 6f 6e 6e 65 63 74 65 64  until\sconnected
0af0: 5c 73 73 6f 5c 73 77 65 5c 73 6e 65 65 64 5c 73  \sso\swe\sneed\s
0b00: 74 6f 5c 73 61 6c 6c 6f 77 5c 73 74 68 65 5c 73  to\sallow\sthe\s
0b10: 54 63 6c 5c 73 65 76 65 6e 74 5c 73 6c 6f 6f 70  Tcl\sevent\sloop
0b20: 5c 73 74 6f 5c 72 5c 6e 21 5c 73 5c 73 5c 73 5c  \sto\r\n!\s\s\s\
0b30: 73 5c 73 5c 73 5c 73 5c 73 5c 73 5c 73 5c 73 5c  s\s\s\s\s\s\s\s\
0b40: 73 2a 5c 73 63 61 74 63 68 5c 73 74 68 65 5c 73  s*\scatch\sthe\s
0b50: 74 69 6d 65 6f 6f 75 74 5c 73 61 6e 64 5c 73 73  timeoout\sand\ss
0b60: 69 74 73 5c 73 6f 6e 5c 73 61 5c 73 76 77 61 69  its\son\sa\svwai
0b70: 74 5c 73 66 6f 72 5c 73 74 68 65 5c 73 68 74 74  t\sfor\sthe\shtt
0b80: 70 5c 73 74 6f 6b 65 6e 2e 5c 72 5c 6e 21 5c 73  p\stoken.\r\n!\s
0b90: 5c 73 5c 73 5c 73 5c 73 5c 73 5c 73 5c 73 5c 73  \s\s\s\s\s\s\s\s
0ba0: 5c 73 5c 73 5c 73 2a 5c 73 54 65 73 74 5c 73 63  \s\s\s*\sTest\sc
0bb0: 61 73 65 5c 73 77 68 69 63 68 5c 73 79 69 65 6c  ase\swhich\syiel
0bc0: 64 73 5c 73 68 61 6e 67 5c 73 69 6e 5c 73 65 6e  ds\shang\sin\sen
0bd0: 64 6c 65 73 73 5c 73 6c 6f 6f 70 5c 73 68 65 72  dless\sloop\sher
0be0: 65 5c 73 77 69 74 68 6f 75 74 5c 73 74 68 69 73  e\swithout\sthis
0bf0: 5c 73 70 61 74 63 68 5c 73 69 73 3a 5c 72 5c 6e  \spatch\sis:\r\n
0c00: 21 5c 73 5c 73 5c 73 5c 73 5c 73 5c 73 5c 73 5c  !\s\s\s\s\s\s\s\
0c10: 73 5c 73 5c 73 5c 73 5c 73 2a 5c 73 70 61 63 6b  s\s\s\s\s*\spack
0c20: 61 67 65 5c 73 72 65 71 75 69 72 65 5c 73 68 74  age\srequire\sht
0c30: 74 70 3b 5c 72 5c 6e 21 5c 73 5c 73 5c 73 5c 73  tp;\r\n!\s\s\s\s
0c40: 5c 73 5c 73 5c 73 5c 73 5c 73 5c 73 5c 73 5c 73  \s\s\s\s\s\s\s\s
0c50: 2a 5c 73 70 61 63 6b 61 67 65 5c 73 72 65 71 75  *\spackage\srequ
0c60: 69 72 65 5c 73 74 6c 73 3b 5c 72 5c 6e 21 5c 73  ire\stls;\r\n!\s
0c70: 5c 73 5c 73 5c 73 5c 73 5c 73 5c 73 5c 73 5c 73  \s\s\s\s\s\s\s\s
0c80: 5c 73 5c 73 5c 73 2a 5c 73 73 65 74 5c 73 74 6f  \s\s\s*\sset\sto
0c90: 6b 5c 73 5b 68 74 74 70 3a 3a 67 65 74 75 72 6c  k\s[http::geturl
0ca0: 5c 73 68 74 74 70 73 3a 2f 2f 6c 6f 63 61 6c 68  \shttps://localh
0cb0: 6f 73 74 3a 38 31 34 33 2f 69 6e 66 6f 5c 73 2d  ost:8143/info\s-
0cc0: 74 69 6d 65 6f 75 74 5c 73 33 30 30 30 5d 5c 72  timeout\s3000]\r
0cd0: 5c 6e 21 5c 73 5c 73 5c 73 5c 73 5c 73 5c 73 5c  \n!\s\s\s\s\s\s\
0ce0: 73 5c 73 5c 73 5c 73 5c 73 5c 73 2a 5c 73 68 74  s\s\s\s\s\s*\sht
0cf0: 74 70 3a 3a 73 74 61 74 75 73 5c 73 24 74 6f 6b  tp::status\s$tok
0d00: 3b 5c 72 5c 6e 21 5c 73 5c 73 5c 73 5c 73 5c 73  ;\r\n!\s\s\s\s\s
0d10: 5c 73 5c 73 5c 73 5c 73 5c 73 5c 73 5c 73 2a 2f  \s\s\s\s\s\s\s*/
0d20: 5c 72 5c 6e 21 5c 73 5c 73 5c 73 5c 73 5c 73 5c  \r\n!\s\s\s\s\s\
0d30: 73 5c 73 5c 73 5c 73 5c 73 5c 73 69 66 28 73 74  s\s\s\s\s\sif(st
0d40: 61 74 65 50 74 72 2d 3e 66 6c 61 67 73 5c 73 26  atePtr->flags\s&
0d50: 5c 73 54 4c 53 5f 54 43 4c 5f 41 53 59 4e 43 29  \sTLS_TCL_ASYNC)
0d60: 5c 73 7b 5c 72 5c 6e 21 5c 73 5c 73 5c 73 5c 73  \s{\r\n!\s\s\s\s
0d70: 5c 73 5c 73 5c 73 5c 73 5c 73 5c 73 5c 73 5c 73  \s\s\s\s\s\s\s\s
0d80: 5c 73 5c 73 5c 73 69 66 5c 73 28 72 63 5c 73 3d  \s\s\sif\s(rc\s=
0d90: 3d 5c 73 53 53 4c 5f 45 52 52 4f 52 5f 57 41 4e  =\sSSL_ERROR_WAN
0da0: 54 5f 43 4f 4e 4e 45 43 54 5c 73 7c 7c 5c 73 72  T_CONNECT\s||\sr
0db0: 63 5c 73 3d 3d 5c 73 53 53 4c 5f 45 52 52 4f 52  c\s==\sSSL_ERROR
0dc0: 5f 57 41 4e 54 5f 41 43 43 45 50 54 29 5c 73 7b  _WANT_ACCEPT)\s{
0dd0: 5c 72 5c 6e 21 5c 73 5c 73 5c 73 5c 73 5c 73 5c  \r\n!\s\s\s\s\s\
0de0: 73 5c 73 5c 73 5c 73 5c 73 5c 73 5c 73 5c 73 5c  s\s\s\s\s\s\s\s\
0df0: 73 5c 73 5c 73 5c 73 5c 73 5c 73 62 69 6f 53 68  s\s\s\s\s\sbioSh
0e00: 6f 75 6c 64 52 65 74 72 79 5c 73 3d 5c 73 31 3b  ouldRetry\s=\s1;
0e10: 5c 72 5c 6e 21 5c 73 5c 73 5c 73 5c 73 5c 73 5c  \r\n!\s\s\s\s\s\
0e20: 73 5c 73 5c 73 5c 73 5c 73 5c 73 5c 73 5c 73 5c  s\s\s\s\s\s\s\s\
0e30: 73 5c 73 7d 5c 73 65 6c 73 65 5c 73 69 66 5c 73  s\s}\selse\sif\s
0e40: 28 72 63 5c 73 3d 3d 5c 73 53 53 4c 5f 45 52 52  (rc\s==\sSSL_ERR
0e50: 4f 52 5f 57 41 4e 54 5f 52 45 41 44 29 5c 73 7b  OR_WANT_READ)\s{
0e60: 5c 72 5c 6e 21 5c 73 5c 73 5c 73 5c 73 5c 73 5c  \r\n!\s\s\s\s\s\
0e70: 73 5c 73 5c 73 5c 73 5c 73 5c 73 5c 73 5c 73 5c  s\s\s\s\s\s\s\s\
0e80: 73 5c 73 5c 73 5c 73 5c 73 5c 73 62 69 6f 53 68  s\s\s\s\s\sbioSh
0e90: 6f 75 6c 64 52 65 74 72 79 5c 73 3d 5c 73 31 3b  ouldRetry\s=\s1;
0ea0: 5c 72 5c 6e 21 5c 73 5c 73 5c 73 5c 73 5c 73 5c  \r\n!\s\s\s\s\s\
0eb0: 73 5c 73 5c 73 5c 73 5c 73 5c 73 5c 73 5c 73 5c  s\s\s\s\s\s\s\s\
0ec0: 73 5c 73 5c 73 5c 73 5c 73 5c 73 73 74 61 74 65  s\s\s\s\s\sstate
0ed0: 50 74 72 2d 3e 77 61 6e 74 5c 73 7c 3d 5c 73 54  Ptr->want\s|=\sT
0ee0: 43 4c 5f 52 45 41 44 41 42 4c 45 3b 5c 72 5c 6e  CL_READABLE;\r\n
0ef0: 21 5c 73 5c 73 5c 73 5c 73 5c 73 5c 73 5c 73 5c  !\s\s\s\s\s\s\s\
0f00: 73 5c 73 5c 73 5c 73 5c 73 5c 73 5c 73 5c 73 7d  s\s\s\s\s\s\s\s}
0f10: 5c 73 65 6c 73 65 5c 73 69 66 5c 73 28 72 63 5c  \selse\sif\s(rc\
0f20: 73 3d 3d 5c 73 53 53 4c 5f 45 52 52 4f 52 5f 57  s==\sSSL_ERROR_W
0f30: 41 4e 54 5f 57 52 49 54 45 29 5c 73 7b 5c 72 5c  ANT_WRITE)\s{\r\
0f40: 6e 21 5c 73 5c 73 5c 73 5c 73 5c 73 5c 73 5c 73  n!\s\s\s\s\s\s\s
0f50: 5c 73 5c 73 5c 73 5c 73 5c 73 5c 73 5c 73 5c 73  \s\s\s\s\s\s\s\s
0f60: 5c 73 5c 73 5c 73 5c 73 62 69 6f 53 68 6f 75 6c  \s\s\s\sbioShoul
0f70: 64 52 65 74 72 79 5c 73 3d 5c 73 31 3b 5c 72 5c  dRetry\s=\s1;\r\
0f80: 6e 21 5c 73 5c 73 5c 73 5c 73 5c 73 5c 73 5c 73  n!\s\s\s\s\s\s\s
0f90: 5c 73 5c 73 5c 73 5c 73 5c 73 5c 73 5c 73 5c 73  \s\s\s\s\s\s\s\s
0fa0: 5c 73 5c 73 5c 73 5c 73 73 74 61 74 65 50 74 72  \s\s\s\sstatePtr
0fb0: 2d 3e 77 61 6e 74 5c 73 7c 3d 5c 73 54 43 4c 5f  ->want\s|=\sTCL_
0fc0: 57 52 49 54 41 42 4c 45 3b 5c 72 5c 6e 21 5c 73  WRITABLE;\r\n!\s
0fd0: 5c 73 5c 73 5c 73 5c 73 5c 73 5c 73 5c 73 5c 73  \s\s\s\s\s\s\s\s
0fe0: 5c 73 5c 73 5c 73 5c 73 5c 73 5c 73 7d 5c 72 5c  \s\s\s\s\s\s}\r\
0ff0: 6e 5c 73 5c 73 5c 73 5c 73 5c 73 5c 73 5c 73 5c  n\s\s\s\s\s\s\s\
1000: 73 5c 73 5c 73 5c 73 5c 73 7d 5c 72 5c 6e 5c 73  s\s\s\s\s}\r\n\s
1010: 5c 73 5c 73 5c 73 5c 73 5c 73 5c 73 5c 73 7d 5c  \s\s\s\s\s\s\s}\
1020: 72 5c 6e 60 60 60 0a 4a 20 6c 6f 67 69 6e 20 61  r\n```.J login a
1030: 6e 6f 6e 79 6d 6f 75 73 0a 4a 20 6d 69 6d 65 74  nonymous.J mimet
1040: 79 70 65 20 74 65 78 74 2f 78 2d 6d 61 72 6b 64  ype text/x-markd
1050: 6f 77 6e 0a 4a 20 73 65 76 65 72 69 74 79 20 43  own.J severity C
1060: 72 69 74 69 63 61 6c 0a 4a 20 73 74 61 74 75 73  ritical.J status
1070: 20 4f 70 65 6e 0a 4a 20 74 69 74 6c 65 20 68 74   Open.J title ht
1080: 74 70 3a 67 65 74 75 72 6c 5c 73 68 74 74 70 73  tp:geturl\shttps
1090: 3a 2f 2f 6c 6f 63 61 6c 68 6f 73 74 3a 38 31 34  ://localhost:814
10a0: 33 2f 69 6e 66 6f 5c 73 68 61 6e 67 73 5c 73 77  3/info\shangs\sw
10b0: 68 65 6e 5c 73 73 65 72 76 65 72 5c 73 6e 6f 74  hen\sserver\snot
10c0: 5c 73 72 75 6e 6e 69 6e 67 0a 4a 20 74 79 70 65  \srunning.J type
10d0: 20 43 6f 64 65 5c 73 44 65 66 65 63 74 0a 4b 20   Code\sDefect.K 
10e0: 34 38 65 64 64 63 61 38 39 65 61 37 39 62 35 63  48eddca89ea79b5c
10f0: 62 36 34 37 37 64 35 66 39 66 34 36 63 63 38 39  b6477d5f9f46cc89
1100: 30 38 37 33 63 66 39 32 0a 55 20 61 6e 6f 6e 79  0873cf92.U anony
1110: 6d 6f 75 73 0a 5a 20 37 33 36 31 31 63 30 38 32  mous.Z 73611c082
1120: 65 39 63 62 39 39 34 32 30 34 32 65 62 31 38 65  e9cb9942042eb18e
1130: 34 39 63 38 30 61 62 0a                          49c80ab.