[prev in list] [next in list] [prev in thread] [next in thread] 

List:       subversion-cvs
Subject:    svn commit: r30868 - trunk/subversion/svnserve
From:       danielsh () tigris ! org
Date:       2008-04-30 20:15:47
Message-ID: 200804302015.m3UKFlBB002345 () svn2 ! sjc ! collab ! net
[Download RAW message or body]

Author: danielsh
Date: Wed Apr 30 13:15:47 2008
New Revision: 30868

Log:
In svnserve, tolerate unreadable passwd files.

Review by: ghudson
Found by: Kristian Kauper <kkauper@au.yahoo-inc.com>

* subversion/svnserve/serve.c
  (load_configs):  Skip reading the passwd file if it is unreadable (EACCES),
    logging the error but allowing other authentications (such as --tunnel)
    to continue.

Modified:
   trunk/subversion/svnserve/serve.c

Modified: trunk/subversion/svnserve/serve.c
URL: http://svn.collab.net/viewvc/svn/trunk/subversion/svnserve/serve.c?pathrev=30868&r1=30867&r2=30868
==============================================================================
--- trunk/subversion/svnserve/serve.c	Wed Apr 30 11:48:21 2008	(r30867)
+++ trunk/subversion/svnserve/serve.c	Wed Apr 30 13:15:47 2008	(r30868)
@@ -236,7 +236,14 @@ svn_error_t *load_configs(svn_config_t *
           if (server)
             /* Called by listening server; log error no matter what it is. */
             log_server_error(err, server, conn, pool);
-          if (err->apr_err != SVN_ERR_BAD_FILENAME)
+
+          /* XXX: why do ignore SVN_ERR_BAD_FILENAME here?  (see r16840)
+           *
+           * If the passwd file is unreadable, skip reading it and continue;
+           * some authentications (e.g. --tunnel) can proceed without it.
+           */
+          if (err->apr_err != SVN_ERR_BAD_FILENAME
+              && ! APR_STATUS_IS_EACCES(err->apr_err))
             {
               if (server)
                 {
@@ -252,7 +259,7 @@ svn_error_t *load_configs(svn_config_t *
               return err;
             }
           else
-            /* Ignore SVN_ERR_BAD_FILENAME and proceed. */
+            /* Ignore SVN_ERR_BAD_FILENAME and APR_EACCES and proceed. */
             svn_error_clear(err);
         }
     }

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

[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic