From: Jakub Narebski Date: Tue, 22 Aug 2006 10:47:28 GMT Subject: Re: [RFD] gitweb: href() function to generate URLs for CGI Message-ID: In-Reply-To: <7vodudno88.fsf@assigned-by-dhcp.cox.net> Junio C Hamano wrote: > Semicolons and equals are used as separators between key-value > pairs (i.e. syntactic elements) so if we have a value > $params{$name} that happens to contain a ';' or '=' character I > suspect we would want to quote that but not the one we use > before the value or between tuples.  Otherwise, how is a search > text that is "a = b;" encoded in the resulting href? URL for search is created and encoded by browser I think, so search for "a = b" generates gitweb.cgi?p=git.git&a=search&h=HEAD&s=a+%3D+b URI (notice it uses '&' as parameter separator, not ';'), but because '=' is not on the list of valid $searchtext characters, due to if ($searchtext =~ m/[^a-zA-Z0-9_\.\/\-\+\:\@ ]/) gitweb returns "403 Forbidden - Invalid search parameter". -- Jakub Narebski Warsaw, Poland ShadeHawk on #git