Re: Branch 1.5.x: mod_dav_svn restricts third-party Subversion clients too much.
Karl Fogel wrote:
> Alexander Kitaev <Alexander.Kitaev_at_svnkit.com> writes:
>> There is the following code in subversion/mod_dav_svn/repos.c:1643
>> if (val && (ap_strstr_c(val, "SVN/") == val))
>> repos->is_svn_client = TRUE;
>> /* Client capabilities are self-reported. There is no
>> guarantee the client actually has the capabilities it says
>> it has, we just assume it is in the client's interests to
>> report accurately. Also, we only remember the capabilities
>> the server cares about (even though the client may send
>> more than that). */
>> SVNKit honestly sends "SVNKit ..." User-Agent header and as a result
>> capabilities reported by SVNKit are ignored by mod_dav_svn. Could the
>> condition above be changed to:
>> if (val && (ap_strstr_c(val, "SVN") == val))
>> So far we have to use SVN/Kit for User-Agent HTTP header value.
> Hmmm, thanks for pointing this out.
> Your suggestion seems reasonable to me. It's pretty likely that
> anything starting with "SVN" is SVN-related, and wants to be treated as
> an SVN client. But I'm not well-versed in the relevant standards here;
> does anyone know more? (Let's give it a day or two, since the change is
> trivial and easy to backport to the 1.5.x line before rc1 comes out.)
-0. Why doesn't SVNKit use:
which would roughly translate as "This is a Subversion client compatible
with Subversion x.y.z and using SVNKit a.b.c as the implementation."
C. Michael Pilato <cmpilato_at_collab.net>
CollabNet <> www.collab.net <> Distributed Development On Demand
Received on 2008-03-14 20:30:26 CET
This is an archived mail posted to the Subversion Dev