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

[PATCH] Clear neon_auth_types before adding http_auth_types from server config

From: Jens Peters <jpeters7677_at_gmx.de>
Date: 2007-03-17 22:04:01 CET

Hello there,

Attached is a small patch for the configuration handling of http authentication types in neon>0.26 .It seemed like all http-auth-types where read
nicely from the server configuration, but neon_auth_types was at this time already filled with the defaults (BASIC and DIGEST plus NEGOTIATE if SSL).
Now you can e.g. really force BASIC, thus using other user credentials than the current, even if your server supports SSPI and SSL. Furthermore I
added some info to the help output that in the case of SSPI --username and --password will be completely ignored. That way windows users can get a
clue why nothing acts different in an SSPI environment when specifying a different user.

(I assumed that neon can make use of SSPI on Windows only, is this correct?)

Regards,
Jens

[[[
* subversion/libsvn_ra_dav/session.c
  clear neon_auth_types before reading http-auth-type from
  server configuration
* subversion/svn/main.c
  Add help output text that --username ARG and --password ARG
  is ignored if SSPI authentication is used
]]]

Index: subversion/libsvn_ra_dav/session.c
===================================================================
--- subversion/libsvn_ra_dav/session.c (revision 23887)
+++ subversion/libsvn_ra_dav/session.c (working copy)
@@ -502,6 +502,9 @@
      {
        char *token, *last;
        char *auth_types_list = apr_palloc(pool, strlen(http_auth_types) + 1);
+
+ /* clear neon_auth_types */
+ *neon_auth_types = 0;
        apr_collapse_spaces(auth_types_list, http_auth_types);
        while ((token = apr_strtok(auth_types_list, ";", &last)) != NULL)
          {
Index: subversion/svn/main.c
===================================================================
--- subversion/svn/main.c (revision 23887)
+++ subversion/svn/main.c (working copy)
@@ -92,10 +92,19 @@
                      N_("show program version information")},
    {"verbose", 'v', 0, N_("print extra information")},
    {"show-updates", 'u', 0, N_("display update information")},
+#ifdef WIN32 && HAVE_SSPI
+ {"username", svn_cl__auth_username_opt, 1,N_(
+ "specify a username ARG\n"
+ " ARG is ignored if SSPI authentication is used.")},
+ {"password", svn_cl__auth_password_opt, 1,N_(
+ "specify a password ARG\n"
+ " ARG is ignored if SSPI authentication is used.")},
+#else
    {"username", svn_cl__auth_username_opt, 1,
                      N_("specify a username ARG")},
    {"password", svn_cl__auth_password_opt, 1,
                      N_("specify a password ARG")},
+#endif
  #ifndef AS400
    {"extensions", 'x', 1,
                      N_("Default: '-u'. When Subversion is invoking an\n"

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org
Received on Sat Mar 17 22:05:00 2007

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