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

Re: [PATCH] svnserve-ssl : Use svn_stream_t for connections, plus reorganizing SSL

From: Sigfred Håversen <bsdlist_at_mumak.com>
Date: 2004-11-14 16:40:45 CET

On Tuesday 09 November 2004 18.08, Sigfred Håversen wrote:
> This is a patch to branches/svnserve-ssl. Please review and comment.
>
> There are two big changes in this patch. The svn_ra_svn_conn_t now
> has svn_stream_t members that replaces the apr_socket_t, apr_file_t
> and SSL related members. Various functions in subversion/libsvn_ra_svn
> has been changed to use those streams.

A bug was introduced in the patch with respect to setting timouts on the
socket when a blockhandler was used. The patch passed the automatic tests,
but when I tried to import a repository containing binary files, the client
would hang.

The timeout for a socket is changed when a blockhandler is set in
svn_ra_svn__set_block_handler(). In the original code for readbuf_input(),
there was a test (conn->sock && conn->block_handler) for setting the timeout.
In my svn_stream_t callbacks, I don't have access to the connection object
svn_ra_svn_conn_t, and thus can't test for conn->block_handler. The fix is to
restore the timeout of the socet after a blocking read in sock_read_cb() that
is in the file subversion/libsvn_ra_svn/marshal.c.

Patch attached. Please review and comment.

/Sigfred

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org

Received on Sun Nov 14 16:41:19 2004

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