really log minor GSS error messages v5.0-rc4
authorkouril <kouril>
Mon, 12 Jan 2004 16:19:39 +0000 (16:19 +0000)
committerkouril <kouril>
Mon, 12 Jan 2004 16:19:39 +0000 (16:19 +0000)
src/mod_auth_kerb.c

index 3a26172..625b8f4 100644 (file)
@@ -779,21 +779,22 @@ get_gss_error(MK_POOL *p, OM_uint32 err_maj, OM_uint32 err_min, char *prefix)
                                     GSS_C_NO_OID,
                                     &msg_ctx,
                                     &status_string);
+      if (GSS_ERROR(maj_stat))
+        break;
       err_msg = ap_pstrcat(p, err_msg, ": ", (char*) status_string.value, NULL);
       gss_release_buffer(&min_stat, &status_string);
       
-      if (GSS_ERROR(maj_stat) || msg_ctx == 0)
-        break;
-
       maj_stat = gss_display_status (&min_stat,
                                     err_min,
                                     GSS_C_MECH_CODE,
                                     GSS_C_NULL_OID,
                                     &msg_ctx,
                                     &status_string);
-      err_msg = ap_pstrcat(p, err_msg,
-                          " (", (char*) status_string.value, ")", NULL);
-      gss_release_buffer(&min_stat, &status_string);
+      if (!GSS_ERROR(maj_stat)) {
+        err_msg = ap_pstrcat(p, err_msg,
+                             " (", (char*) status_string.value, ")", NULL);
+        gss_release_buffer(&min_stat, &status_string);
+      }
    } while (!GSS_ERROR(maj_stat) && msg_ctx != 0);
 
    return err_msg;