From kde-core-devel Fri Jan 29 19:57:34 2010 From: "Dawit Alemayehu" Date: Fri, 29 Jan 2010 19:57:34 +0000 To: kde-core-devel Subject: Re: Review Request: Broken redirections in handling of webdav when Message-Id: <20100129195734.24713.87785 () localhost> X-MARC-Message: https://marc.info/?l=kde-core-devel&m=126479511304765 ----------------------------------------------------------- This is an automatically generated e-mail. To reply, visit: http://reviewboard.kde.org/r/2760/#review3971 ----------------------------------------------------------- Ship it! Looks ok... You probably need the fallback in case the protocol of the redirection/response url is "webdav" and not "http" ?? Alternatively you can simply replace "http" with "webdav" to avoid having to deal with those checks: QString protocol (u.protocol()); u.setProtocol(protocol.replace(QLatin1String("http"), QLatin1String("webdav")); Either way it seems fine and should be back ported since it is a fix... - Dawit On 2010-01-29 15:52:47, Matthew Dawson wrote: > > ----------------------------------------------------------- > This is an automatically generated e-mail. To reply, visit: > http://reviewboard.kde.org/r/2760/ > ----------------------------------------------------------- > > (Updated 2010-01-29 15:52:47) > > > Review request for kdelibs. > > > Summary > ------- > > When a website holding a webdav repository automatically redirects all http requests to https, the webdav handler in kio_http forces the request back to http. The problem occurs as the code assumes the webdav protocol will not change. > > This patch fixes the issue by analyzing the returned url, and sets webdav/webdavs based on whether the server requested a redirection to http/https respectively (it also will handle redirects from webdavs to webdav). It also includes a fallback to the old behaviour if no protocol is specified, or the protocol is not http/https (is that even a legal request? If not I can remove the fallback). > > Also, is it ok to backport this patch for KDE SC 4.4? > > > Diffs > ----- > > /trunk/KDE/kdelibs/kioslave/http/http.cpp 1082000 > > Diff: http://reviewboard.kde.org/r/2760/diff > > > Testing > ------- > > Locally against a remote server running lighttpd that auto redirects all requests from http to https. The webdav implementation used comes from webcit, included in the citadel mail server. Url was: > > webdav://mail.mjdsystems.ca/groupdav > > Tested using kioclient (running kioclient get $url and checking debug output). > > > Thanks, > > Matthew > >