Reintegrate the 1.6.x-r997457 branch:

 * r997457, r997466
   Fix some error transmission problems in svnserve.
   Justification:
     It's hard to automatically react to a particular error code when
     you can't accurately receive it from the server.
   Notes:
     r997457 fixes svnserve to send only the "real" error across the
     wire in places where there is more than one level of magic
     wrapping errors.
     r997466 teaches the client to forgive still-broken servers by
     ignoring wrapping errors and digging down to find the "real"
     error itself.  And forgiveness is, as they say, divine.
   Branch:
     ^/subversion/branches/1.6.x-r997457
   Votes:
     +1: cmpilato, danielsh, pburba


git-svn-id: https://svn.apache.org/repos/asf/subversion/branches/1.6.x@1002644 13f79535-47bb-0310-9956-ffa450edef68