Hi Michael, Do you know which http method svn is using ? Do you have some logs from relayd ?
Regards, Paul On Tue, Jul 26, 2016 at 02:29:26PM +0200, Michael Lechtermann wrote: > Hu Paul, > > the attached patch doesn't change anything for me. WebDAV still isn't working > through relayd. > > # svn up > svn: Server sent unexpected return value (400 Bad Request) in response to > OPTIONS request for 'https://www.<censored>.<tld>/svn/repo' > > Regards, > Michael > > > Paul Fariello <p...@fariello.eu> hat am 27. Juni 2016 um 21:19 geschrieben: > > > > > > Hi, > > > > here is an updated patch adding support for WebDAV Versioning Extensions > > RFC3253. > > > > Regards, > > Paul > > > > On Mon, Jun 27, 2016 at 09:35:20AM +0200, Paul Fariello wrote: > > > Hi, > > > > > > I've encountered the exact same issue. I think this is due to a miss > > > handling of message-body. > > > > > > RFC2616 states in chapter 4.3 that: > > > > > > > The presence of a message-body in a request is signaled by the > > > > inclusion of a Content-Length or Transfer-Encoding header field in > > > > the request's message-headers. A message-body MUST NOT be included in > > > > a request if the specification of the request method (section 5.1.1) > > > > does not allow sending an entity-body in requests. A server SHOULD > > > > read and forward a message-body on any request; if the request method > > > > does not include defined semantics for an entity-body, then the > > > > message-body SHOULD be ignored when handling the request. > > > > > > > > > > Thus we should not ignore message-body for unknown methods by forcing > > > cre->toread to TOREAD_HTTP_HEADER. > > > > > > Please find attached a patch that just allow http request to have a > > > message-body whatever the method is. > > > > > > Regards, > > > Paul > > > > > > > 2016-06-24 11:01:03 > > > > <r...@openbsd.org>: > > > > > > > > Hi, > > > > > > > > thanks, this is the second report regarding WebDAV since yesterday. I'll > > > > have a look \ > > > > at this when I'm back home next week. > > > > > > > > Reyk > > > > > > > > > Am 24.06.2016 um 09:21 schrieb Michael Lechtermann > > > > > <mich...@lechtermann.net>: > > > > > > > > > > Hi, > > > > > > > > > > I have recently configured relayd as SSL accelerator and it is working > > > > > really \ > > > > > great. However it seems that not all http methods that are mentioned > > > > > in the man \ > > > > > page are actually supported by the http protocol. > > > > > method name > > > > > Match the HTTP request method. The method is specified by name > > > > > and can be either CONNECT, COPY, DELETE, GET, HEAD, LOCK, MKCOL, > > > > > MOVE, OPTIONS, PATCH, POST, PROPFIND, PROPPATCH, PUT, TRACE, or > > > > > UNLOCK. > > > > > > > > > > The above list is from "man relayd.conf" and I would assume that those > > > > > methods, if \ > > > > > mentioned, are fully supported, however when trying to use Apache2 > > > > > with mod_dav_svn \ > > > > > (ap2-subversion) relayd somehow breaks it: > > > > > # svn up > > > > > svn: Server sent unexpected return value (400 Bad Request) in response > > > > > to OPTIONS \ > > > > > request for 'https://<url>/svn/repo' > > > > > This was tested using OpenBSD 5.9. If more information is required, > > > > > please say so. > > > > > > > > > > Regards, > > > > > Michael > > > > > > > > > > Index: relay_http.c > > > =================================================================== > > > RCS file: /cvs/src/usr.sbin/relayd/relay_http.c,v > > > retrieving revision 1.55 > > > diff -r1.55 relay_http.c > > > 375a376 > > > > default: > > > 385,389d385 > > > < break; > > > < default: > > > < /* HTTP handler */ > > > < cre->toread = TOREAD_HTTP_HEADER; > > > < bev->readcb = relay_read_http; > > > > > > -- > > Paul Fariello > > > > PGP: 0x672CDD2031AAF49B -- Paul Fariello PGP: 0x672CDD2031AAF49B