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

[PATCH] Client-side support for Cyrus SASL

From: Vlad Georgescu <vgeorgescu_at_gmail.com>
Date: 2006-06-15 13:39:15 CEST

I created two new files, trivial_auth.c and sasl_auth.c, both of which
export svn_ra_svn__auth. The contents of these files are surrounded
with #ifdefs, so only one of them will be compiled, depending on
whether or not SVN_HAVE_SASL is defined.

I haven't done anything on the server side yet, so all this does right
now is authenticate using the mechanisms that svnserve currently
supports (ANONYMOUS, EXTERNAL, CRAM-MD5). In theory, all the other
mechanisms should automagically work when I add full SASL support to
svnserve.

Please test/review this and report any problems.

[[[
Implement support for Cyrus SASL on the client side.

* configure.in
  Define SVN_HAVE_SASL

* subversion/libsvn_ra_svn/sasl_auth.c: New file.

* subversion/libsvn_ra_svn/trivial_auth.c: New file. Contains
functions taken from client.c.

* subversion/libsvn_ra_svn/client.c
  (ra_svn_session_baton_t): Moved to ra_svn.h and renamed to
svn_ra_svn__session_baton_t. Changed all occurances to reflect this.
  (find_mech, read_success): Moved to trivial_auth.c.
  (do_auth): Moved to trivial_auth.c and renamed to svn_ra_svn__auth.
  (auth_response): Renamed to svn_ra_svn__auth_response.
  (svn_ra_svn__init): Call svn_ra_svn__sasl_init.
  (open_session): Call svn_ra_svn__sasl_new.

* subversion/libsvn_ra_svn/ra_svn.h
  Conditionally #include <sasl/sasl.h>
  (svn_ra_svn_conn_st): Add new member: sasl_conn.
  (svn_ra_svn__auth,
   svn_ra_svn__auth_response,
   svn_ra_svn__sasl_init,
   svn_ra_svn__sasl_new): New declarations.
]]]

Thanks,
Vlad

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

Received on Thu Jun 15 13:40:05 2006

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