From mboxrd@z Thu Jan 1 00:00:00 1970 Message-ID: <5ab04e072064bfe53f47b5a785bc41ec@quanstro.net> From: erik quanstrom Date: Fri, 27 Mar 2009 08:04:56 -0400 To: 9fans@9fans.net In-Reply-To: <3587eb7837ae411c3c512564d9997e1c@smgl.fr.eu.org> MIME-Version: 1.0 Content-Type: text/plain; charset="US-ASCII" Content-Transfer-Encoding: 7bit Subject: Re: [9fans] another webfs question Topicbox-Message-UUID: cb0cb02c-ead4-11e9-9d60-3106f5b1d025 > It seems I'm hitting this error when sending some GET requests: > > In /sys/src/cmd/webfs/url.c: > > if(strstr(url, "%00")){ > werrstr("escaped NUL in URI"); > return -1; > } > > I haven't fully understood the comment above, especially if it is against > the RFC to have an escaped NUL in an url, but this can actually happen, > at least with queries to a bittorrent tracker. For example when specifying > the info hash of a specific torrent when sending a scrape request: > > http://bttracker.debian.org:6969/scrape?info_hash=%F1%AE%D2%E5%15%A0%BD%F1%41%54%9D%44%00%47%AB%97%81%2B%69%16 > (13th char in the info hash is a NUL) > > I get a reply to that one both with wget on linux or hget on plan 9, > while webfs gives the error from the code above. > > So is it webfs that needs fixing for that case, or are the other tools > breaking some RFC with that? rfc2396 doesn't mention any restrictions; %00 is legal. - erik