-----Original Message-----
From: Stefan Sperling [mailto:s...@elego.de] 
Sent: Wednesday, March 03, 2010 5:15 PM
To: Катаргин Алексей
Cc: dev@subversion.apache.org; n...@chelcom.ru
Subject: Re: [PATCH] sasl service name for svnserve

On Wed, Mar 03, 2010 at 03:22:55PM +0500, Катаргин Алексей wrote:
> Diff files attached to mail

They didn't make it to the list.

Maybe try a .txt extension?

Stefan
>--------------------------------------------------
Ok, trying again with .txt ext.

--- D:/subversion-1.6.9/subversion/svnserve/cyrus_auth.c        Âò àâã 18 
01:34:52 2009
+++ D:/subversion-1.6.9/subversion/svnserve/cyrus_auth.c.new    Ñð ìàð  3 
09:51:28 2010
@@ -262,7 +262,7 @@
 
   /* Create a SASL context. SASL_SUCCESS_DATA tells SASL that the protocol
      supports sending data along with the final "success" message. */
-  result = sasl_server_new(SVN_RA_SVN_SASL_NAME,
+  result = sasl_server_new(b->sasl_service_name,
                            hostname, b->realm,
                            localaddrport, remoteaddrport,
                            NULL, SASL_SUCCESS_DATA,
--- D:/subversion-1.6.9/subversion/svnserve/serve.c     Ïí ìàé  4 19:02:01 2009
+++ D:/subversion-1.6.9/subversion/svnserve/serve.c.new Ñð ìàð  3 10:08:46 2010
@@ -46,6 +46,7 @@
 
 #include "private/svn_log.h"
 #include "private/svn_mergeinfo_private.h"
+#include "private/ra_svn_sasl.h"
 
 #ifdef HAVE_UNISTD_H
 #include <unistd.h>   /* For getpid() */
@@ -2877,6 +2878,9 @@
   /* Should we use Cyrus SASL? */
   svn_config_get_bool(b->cfg, &b->use_sasl, SVN_CONFIG_SECTION_SASL,
                       SVN_CONFIG_OPTION_USE_SASL, FALSE);
+
+  svn_config_get(b->cfg, &b->sasl_service_name, SVN_CONFIG_SECTION_SASL,
+                 SVN_CONFIG_OPTION_SASL_SERVICE_NAME, SVN_RA_SVN_SASL_NAME);
 #endif
 
   /* Use the repository UUID as the default realm. */
@@ -2943,6 +2947,7 @@
   b.log_file = params->log_file;
   b.pool = pool;
   b.use_sasl = FALSE;
+  b.sasl_service_name = NULL;
 
   /* Send greeting.  We don't support version 1 any more, so we can
    * send an empty mechlist. */
--- D:/subversion-1.6.9/subversion/svnserve/server.h    Âò àïð 29 14:57:35 2008
+++ D:/subversion-1.6.9/subversion/svnserve/server.h.new        Ñð ìàð  3 
10:05:42 2010
@@ -48,6 +48,7 @@
   svn_boolean_t read_only; /* Disallow write access (global flag) */
   svn_boolean_t use_sasl;  /* Use Cyrus SASL for authentication;
                               always false if SVN_HAVE_SASL not defined */
+  const char *sasl_service_name; /* Service name for SASL auth, default "svn" 
*/
   apr_file_t *log_file;    /* Log filehandle. */
   apr_pool_t *pool;
 } server_baton_t;
--- D:/subversion-1.6.9/subversion/include/svn_config.h Ïò ÿíâ 23 23:30:04 2009
+++ D:/subversion-1.6.9/subversion/include/svn_config.h.new     Ñð ìàð  3 
10:12:03 2010
@@ -115,14 +115,15 @@
  * @{
  */
 /* For repository svnserve.conf files */
-#define SVN_CONFIG_SECTION_GENERAL              "general"
+#define SVN_CONFIG_SECTION_GENERAL                  "general"
 #define SVN_CONFIG_OPTION_ANON_ACCESS               "anon-access"
 #define SVN_CONFIG_OPTION_AUTH_ACCESS               "auth-access"
 #define SVN_CONFIG_OPTION_PASSWORD_DB               "password-db"
 #define SVN_CONFIG_OPTION_REALM                     "realm"
 #define SVN_CONFIG_OPTION_AUTHZ_DB                  "authz-db"
-#define SVN_CONFIG_SECTION_SASL                 "sasl"
+#define SVN_CONFIG_SECTION_SASL                     "sasl"
 #define SVN_CONFIG_OPTION_USE_SASL                  "use-sasl"
+#define SVN_CONFIG_OPTION_SASL_SERVICE_NAME         "sasl-service-name"
 #define SVN_CONFIG_OPTION_MIN_SSF                   "min-encryption"
 #define SVN_CONFIG_OPTION_MAX_SSF                   "max-encryption"
 

Reply via email to