[svn.haxx.se] · SVN Dev · SVN Users · SVN Org · TSVN Dev · TSVN Users · Subclipse Dev · Subclipse Users · this month's index

Re: Error "mod_dav_svn close_stream: error closing write stream" using a write-through proxy

From: Thorsten Schöning <tschoening_at_am-soft.de>
Date: Tue, 18 Aug 2015 20:42:42 +0200

Guten Tag Thorsten Schöning,
am Samstag, 15. August 2015 um 16:16 schrieben Sie:

>> [Sat Aug 15 11:35:13.591510 2015] [dav:error] [client a.b.c.d:36370] mod_dav_svn close_stream: error closing write stream [500, #185004]
>> [Sat Aug 15 11:35:13.591525 2015] [dav:error] [client a.b.c.d:36370] Unexpected end of svndiff input [500, #185004]

Looks like I found my problem and it had nothing to do with the SSH
tunnel: I configured and implemented my own PerlAuthenHandler to be
able to reuse the already existing passwd of my svnserve-repos. For
this to work the handler needs to retrieve the repo name from the URI
of a request. I still use WebSVN and wanted to use the same handler to
restrict access, in the end the only difference is where the repo name
comes from, in case of WebSVN it's a query string parameter. mod_perl
provides anything I need, so I simply used CGI to parse all the
parameters and choosed the one I'm interested in:

> my $request = $self->_getRequest();
> my $reqArgs = $request->args();
[...]
> my $retVal = CGI->new($reqArgs)->param('repname');

That's the problem... I don't know what, but CGI didn't just parse
the given parameters and instead did something with the entire request
in a way that svn couldn't read its svndiff data anymore. But only in
the write-through-proxy-scenario, not if I committed locally. After
replacing CGI->new() with some other solution to properly parse the
parameters the commit through the proxy worked. One important part is
to not use some lib again which itself is just a wrapper around using
CGI->new(), CGI::Util::unescape e.g. works.

That was a bad one...

Mit freundlichen Grüßen,

Thorsten Schöning

-- 
Thorsten Schöning       E-Mail: Thorsten.Schoening_at_AM-SoFT.de
AM-SoFT IT-Systeme      http://www.AM-SoFT.de/
Telefon...........05151-  9468- 55
Fax...............05151-  9468- 88
Mobil..............0178-8 9468- 04
AM-SoFT GmbH IT-Systeme, Brandenburger Str. 7c, 31789 Hameln
AG Hannover HRB 207 694 - Geschäftsführer: Andreas Muchow
Received on 2015-08-18 20:43:00 CEST

This is an archived mail posted to the Subversion Users mailing list.

This site is subject to the Apache Privacy Policy and the Apache Public Forum Archive Policy.