Hex Artifact Content
Not logged in

Artifact 7e8823530b0f6336ae3dcf1633b33198effaf45b:

Ticket change [7e8823530b] - New ticket [c198af6880] url_parse passes paths through mprintf, breaking % encoding (thus ~ too). by anonymous 2010-05-12 14:56:31.
0000: 44 20 32 30 31 30 2d 30 35 2d 31 32 54 31 34 3a  D 2010-05-12T14:
0010: 35 36 3a 33 31 0a 4a 20 63 6f 6d 6d 65 6e 74 20  56:31.J comment 
0020: 3c 76 65 72 62 61 74 69 6d 3e 5c 72 5c 6e 66 6f  <verbatim>\r\nfo
0030: 73 73 69 6c 5c 73 74 65 73 74 2d 75 72 6c 70 61  ssil\stest-urlpa
0040: 72 73 65 72 5c 73 68 74 74 70 3a 2f 2f 64 6f 6e  rser\shttp://don
0050: 6b 65 79 2e 76 65 72 6e 69 65 72 2e 73 65 2f 7e  key.vernier.se/~
0060: 66 6f 73 73 69 6c 2f 70 69 63 6d 69 64 69 5c 72  fossil/picmidi\r
0070: 5c 6e 63 6f 72 72 65 63 74 6c 79 5c 73 70 61 72  \ncorrectly\spar
0080: 73 65 73 5c 73 61 6e 64 5c 73 67 65 6e 65 72 61  ses\sand\sgenera
0090: 74 65 73 5c 73 68 74 74 70 3a 2f 2f 64 6f 6e 6b  tes\shttp://donk
00a0: 65 79 2e 76 65 72 6e 69 65 72 2e 73 65 2f 25 37  ey.vernier.se/%7
00b0: 45 66 6f 73 73 69 6c 2f 70 69 63 6d 69 64 69 2c  Efossil/picmidi,
00c0: 5c 73 77 68 69 63 68 5c 73 69 73 5c 73 73 74 6f  \swhich\sis\ssto
00d0: 72 65 64 5c 73 69 6e 5c 73 74 68 65 5c 73 66 6f  red\sin\sthe\sfo
00e0: 73 73 69 6c 2e 5c 72 5c 6e 5c 72 5c 6e 4f 6e 5c  ssil.\r\n\r\nOn\
00f0: 73 6c 6f 61 64 69 6e 67 5c 73 74 68 65 5c 73 72  sloading\sthe\sr
0100: 65 6d 6f 74 65 2d 75 72 6c 5c 73 66 6f 72 5c 73  emote-url\sfor\s
0110: 73 79 6e 63 2c 5c 73 70 75 6c 6c 2c 5c 73 70 75  sync,\spull,\spu
0120: 73 68 2c 5c 73 6f 72 5c 73 6d 65 72 65 6c 79 5c  sh,\sor\smerely\
0130: 73 64 69 73 70 6c 61 79 2c 5c 73 74 68 69 73 5c  sdisplay,\sthis\
0140: 73 69 73 5c 73 70 61 73 73 65 64 5c 73 74 68 72  sis\spassed\sthr
0150: 6f 75 67 68 5c 73 75 72 6c 5f 70 61 72 73 65 5c  ough\surl_parse\
0160: 73 61 67 61 69 6e 2c 5c 73 77 69 74 68 5c 73 64  sagain,\swith\sd
0170: 65 76 61 73 74 61 74 69 6e 67 5c 73 72 65 73 75  evastating\sresu
0180: 6c 74 73 3a 5c 72 5c 6e 5c 72 5c 6e 66 6f 73 73  lts:\r\n\r\nfoss
0190: 69 6c 5c 73 74 65 73 74 2d 75 72 6c 70 61 72 73  il\stest-urlpars
01a0: 65 72 5c 73 68 74 74 70 3a 2f 2f 64 6f 6e 6b 65  er\shttp://donke
01b0: 79 2e 76 65 72 6e 69 65 72 2e 73 65 2f 25 37 45  y.vernier.se/%7E
01c0: 66 6f 73 73 69 6c 2f 70 69 63 6d 69 64 69 5c 72  fossil/picmidi\r
01d0: 5c 6e 67 2e 75 72 6c 50 61 74 68 5c 73 5c 73 5c  \ng.urlPath\s\s\
01e0: 73 5c 73 5c 73 5c 73 3d 5c 73 2f 2d 31 2e 30 39  s\s\s\s=\s/-1.09
01f0: 34 30 35 37 45 2d 30 32 66 6f 73 73 69 6c 2f 70  4057E-02fossil/p
0200: 69 63 6d 69 64 69 5c 72 5c 6e 5c 72 5c 6e 49 5c  icmidi\r\n\r\nI\
0210: 73 62 65 6c 69 65 76 65 5c 73 74 68 65 5c 73 66  sbelieve\sthe\sf
0220: 61 69 6c 69 6e 67 5c 73 6c 69 6e 65 5c 73 69 73  ailing\sline\sis
0230: 5c 73 69 6e 5c 73 73 72 63 2f 75 72 6c 2e 63 3a  \sin\ssrc/url.c:
0240: 5c 72 5c 6e 5c 73 5c 73 5c 73 5c 73 67 2e 75 72  \r\n\s\s\s\sg.ur
0250: 6c 50 61 74 68 5c 73 3d 5c 73 6d 70 72 69 6e 74  lPath\s=\smprint
0260: 66 28 26 7a 55 72 6c 5b 69 5d 29 3b 5c 72 5c 6e  f(&zUrl[i]);\r\n
0270: 3c 2f 76 65 72 62 61 74 69 6d 3e 0a 4a 20 66 6f  </verbatim>.J fo
0280: 75 6e 64 69 6e 20 62 32 34 62 32 65 31 62 62 61  undin b24b2e1bba
0290: 0a 4a 20 70 72 69 76 61 74 65 5f 63 6f 6e 74 61  .J private_conta
02a0: 63 74 20 65 38 33 35 33 62 31 65 39 65 65 33 35  ct e8353b1e9ee35
02b0: 66 35 37 64 61 61 63 66 36 63 34 30 35 64 61 61  f57daacf6c405daa
02c0: 61 62 64 64 36 31 32 34 38 36 61 0a 4a 20 73 65  abdd612486a.J se
02d0: 76 65 72 69 74 79 20 53 65 76 65 72 65 0a 4a 20  verity Severe.J 
02e0: 73 74 61 74 75 73 20 4f 70 65 6e 0a 4a 20 74 69  status Open.J ti
02f0: 74 6c 65 20 75 72 6c 5f 70 61 72 73 65 5c 73 70  tle url_parse\sp
0300: 61 73 73 65 73 5c 73 70 61 74 68 73 5c 73 74 68  asses\spaths\sth
0310: 72 6f 75 67 68 5c 73 6d 70 72 69 6e 74 66 2c 5c  rough\smprintf,\
0320: 73 62 72 65 61 6b 69 6e 67 5c 73 25 5c 73 65 6e  sbreaking\s%\sen
0330: 63 6f 64 69 6e 67 5c 73 28 74 68 75 73 5c 73 7e  coding\s(thus\s~
0340: 5c 73 74 6f 6f 29 0a 4a 20 74 79 70 65 20 43 6f  \stoo).J type Co
0350: 64 65 5f 44 65 66 65 63 74 0a 4b 20 63 31 39 38  de_Defect.K c198
0360: 61 66 36 38 38 30 32 32 65 33 37 38 31 65 36 39  af688022e3781e69
0370: 61 32 37 64 32 37 62 63 37 38 62 30 33 65 31 66  a27d27bc78b03e1f
0380: 62 64 35 62 0a 55 20 61 6e 6f 6e 79 6d 6f 75 73  bd5b.U anonymous
0390: 0a 5a 20 66 37 39 35 35 30 61 35 65 64 30 39 36  .Z f79550a5ed096
03a0: 65 35 35 61 39 38 32 64 35 33 33 64 36 39 36 37  e55a982d533d6967
03b0: 32 65 34 0a                                      2e4.