On Fri, Jan 31, 2020 at 04:12:20AM +0000, Daniel Shahaf wrote: > So in balance, how about — > > - ra_serf should not canonicalize redirection URLs before accessing them. > > - After following all redirections (that is, once we get a 2xx response > or a 5xx response), canonicalize the resultant URL. If it is then > equal to the input URL, error out with a "Not a repository" error > [SVN_ERR_RA_SVN_REPOS_NOT_FOUND seems appropriate]; otherwise, return > SVN_ERR_RA_SESSION_URL_MISMATCH (the error code that svn_ra_open4() > promises for this situation). > > This would fix both of the original bugs, wouldn't it?
This idea won't work without some restructuring because the redirect retry loop is currently in libsvn_client, not within ra_serf.

