- Logging
authorDaniel Kouril <kouril@ics.muni.cz>
Fri, 1 Apr 2011 19:53:07 +0000 (15:53 -0400)
committerDaniel Kouril <kouril@ics.muni.cz>
Fri, 1 Apr 2011 19:53:07 +0000 (15:53 -0400)
- Let asking for user's credentials

nsHttpMoonshot.cpp
nsMoonshotSessionState.cpp

index 2b4643b..0f709ab 100644 (file)
@@ -174,13 +174,16 @@ nsHttpMoonshot::ChallengeReceived(nsIHttpChannel *httpChannel,
        if (!session)
                return(NS_ERROR_OUT_OF_MEMORY);
        NS_ADDREF(*sessionState = session);
        if (!session)
                return(NS_ERROR_OUT_OF_MEMORY);
        NS_ADDREF(*sessionState = session);
-       *identityInvalid = PR_TRUE;
        LOG(("nsHttpMoonshot::A new session context established\n"));
     } else {
        LOG(("nsHttpMoonshot::Still using context from previous request\n"));
        LOG(("nsHttpMoonshot::A new session context established\n"));
     } else {
        LOG(("nsHttpMoonshot::Still using context from previous request\n"));
-        *identityInvalid = PR_FALSE;
     }
 
     }
 
+    LOG(("nsHttpMoonshot:: gss_state = %d\n", session->gss_state));
+
+    *identityInvalid =
+       (session->gss_state == GSS_CTX_EMPTY) ? PR_TRUE : PR_FALSE;
+
     return NS_OK;
 }
 
     return NS_OK;
 }
 
@@ -418,6 +421,9 @@ nsHttpMoonshot::GenerateCredentials_1_9_2(nsIHttpChannel *httpChannel,
        u = strdup(NS_LossyConvertUTF16toASCII(username).get());
        p = strdup(NS_LossyConvertUTF16toASCII(password).get());
 
        u = strdup(NS_LossyConvertUTF16toASCII(username).get());
        p = strdup(NS_LossyConvertUTF16toASCII(password).get());
 
+       LOG(("Acquiring credentials for user '%s' using password '%s'\n",
+                                u, p));
+
        tmp_token.value = (void *) u;
        tmp_token.length = strlen((const char *)tmp_token.value);
        maj_stat = gss_import_name(&min_stat, &tmp_token,
        tmp_token.value = (void *) u;
        tmp_token.length = strlen((const char *)tmp_token.value);
        maj_stat = gss_import_name(&min_stat, &tmp_token,
index 127d08e..54329cf 100644 (file)
@@ -31,6 +31,10 @@ nsMoonshotSessionState::Reset()
        gss_delete_sec_context(&min_stat, &gss_ctx, GSS_C_NO_BUFFER);
     gss_ctx = GSS_C_NO_CONTEXT;
     gss_state = GSS_CTX_EMPTY;
        gss_delete_sec_context(&min_stat, &gss_ctx, GSS_C_NO_BUFFER);
     gss_ctx = GSS_C_NO_CONTEXT;
     gss_state = GSS_CTX_EMPTY;
+
+    if (gss_cred != GSS_C_NO_CREDENTIAL)
+       gss_release_cred(&min_stat, &gss_cred);
+    gss_cred = GSS_C_NO_CREDENTIAL;
 }
 
 NS_IMPL_ISUPPORTS0(nsMoonshotSessionState)
 }
 
 NS_IMPL_ISUPPORTS0(nsMoonshotSessionState)