Fix loop so that a ftp/host@REALM is not required,
authorSam Hartman <hartmans@mit.edu>
Thu, 18 Jan 1996 20:52:03 +0000 (20:52 +0000)
committerSam Hartman <hartmans@mit.edu>
Thu, 18 Jan 1996 20:52:03 +0000 (20:52 +0000)
but host/host@REALM will also work.

git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@7334 dc483132-0cff-0310-8789-dd5450dbe970

src/appl/gssftp/ftpd/ChangeLog
src/appl/gssftp/ftpd/ftpd.c

index 16813efc063510c94a67109f084fda2a6822a0c8..971c87146efa5fac94c8338cac1aee0e3c8107a6 100644 (file)
@@ -1,3 +1,7 @@
+Thu Jan 18 14:55:42 1996  Sam Hartman  <hartmans@tertius.mit.edu>
+
+       * ftpd.c : Only return an unable to acquire credentials error if all possible services fail.
+
 Sun Jan 14 02:58:42 1996  Mark Eichin  <eichin@cygnus.com>
 
        * ftpd.c (auth_data): call gss_release_cred on the server_creds we
index 2a1bff3f4a236b8fe18aa813d502fbaedfa2cf5f..a5d014a4bae542aebce094078bd1f05b20eaf359 100644 (file)
@@ -1938,7 +1938,12 @@ char *data;
                maj_stat = gss_acquire_cred(&min_stat, server_name, 0,
                                            GSS_C_NULL_OID_SET, GSS_C_ACCEPT,
                                            &server_creds, NULL, NULL);
-               if (maj_stat != GSS_S_COMPLETE) {
+               (void) gss_release_name(&min_stat, &server_name);
+               if (maj_stat != GSS_S_COMPLETE)
+                 continue;
+       }
+               if (maj_stat != GSS_S_COMPLETE)
+               {
                        reply_gss_error(501, maj_stat, min_stat,
                                        "acquiring credentials");
                        syslog(LOG_ERR, "gssapi error acquiring credentials");
@@ -1947,9 +1952,7 @@ char *data;
                if (server_creds == GSS_C_NO_CREDENTIAL) {
                        syslog(LOG_ERR, "acquire return GSS_C_NO_CREDENTIAL");
                }
-               (void) gss_release_name(&min_stat, &server_name);
-               break;
-       }
+
 
        gcontext = GSS_C_NO_CONTEXT;