Changeset 5364:8017c8074f62 for imap
- Timestamp:
- 2008-04-29 10:38:57 (7 months ago)
- Branch:
- HEAD
- Files:
-
- 1 modified
-
imap/auth_gss.c (modified) (4 diffs)
Legend:
- Unmodified
- Added
- Removed
-
imap/auth_gss.c
r4463 r5364 42 42 #define GSS_AUTH_P_INTEGRITY 2 43 43 #define GSS_AUTH_P_PRIVACY 4 44 static void print_gss_error(OM_uint32 err_maj, OM_uint32 err_min) 45 { 46 OM_uint32 maj_stat, min_stat; 47 OM_uint32 msg_ctx = 0; 48 gss_buffer_desc status_string; 49 char buf_maj[512]; 50 char buf_min[512]; 51 52 do 53 { 54 maj_stat = gss_display_status (&min_stat, 55 err_maj, 56 GSS_C_GSS_CODE, 57 GSS_C_NO_OID, 58 &msg_ctx, 59 &status_string); 60 if (GSS_ERROR(maj_stat)) 61 break; 62 strncpy(buf_maj, (char*) status_string.value, sizeof(buf_maj)); 63 gss_release_buffer(&min_stat, &status_string); 64 65 maj_stat = gss_display_status (&min_stat, 66 err_min, 67 GSS_C_MECH_CODE, 68 GSS_C_NULL_OID, 69 &msg_ctx, 70 &status_string); 71 if (!GSS_ERROR(maj_stat)) 72 { 73 strncpy(buf_min, (char*) status_string.value, sizeof(buf_min)); 74 gss_release_buffer(&min_stat, &status_string); 75 } 76 } while (!GSS_ERROR(maj_stat) && msg_ctx != 0); 77 78 dprint (2, (debugfile, "((%s:%d )(%s:%d))", buf_maj, err_maj, buf_min, err_min)); 79 } 44 80 45 81 /* imap_auth_gss: AUTH=GSSAPI support. */ … … 96 132 if (maj_stat != GSS_S_COMPLETE && maj_stat != GSS_S_CONTINUE_NEEDED) 97 133 { 134 print_gss_error(maj_stat, min_stat); 98 135 dprint (1, (debugfile, "Error acquiring credentials - no TGT?\n")); 99 136 gss_release_name (&min_stat, &target_name); … … 152 189 if (maj_stat != GSS_S_COMPLETE && maj_stat != GSS_S_CONTINUE_NEEDED) 153 190 { 191 print_gss_error(maj_stat, min_stat); 154 192 dprint (1, (debugfile, "Error exchanging credentials\n")); 155 193 gss_release_name (&min_stat, &target_name); … … 183 221 if (maj_stat != GSS_S_COMPLETE) 184 222 { 223 print_gss_error(maj_stat, min_stat); 185 224 dprint (2, (debugfile, "Couldn't unwrap security level data\n")); 186 225 gss_release_buffer (&min_stat, &send_token);
