| 488 for(mechnode = xmlnode_get_child(mechs, "mechanism"); mechnode; |
488 for(mechnode = xmlnode_get_child(mechs, "mechanism"); mechnode; |
| 489 mechnode = xmlnode_get_next_twin(mechnode)) |
489 mechnode = xmlnode_get_next_twin(mechnode)) |
| 490 { |
490 { |
| 491 char *mech_name = xmlnode_get_data(mechnode); |
491 char *mech_name = xmlnode_get_data(mechnode); |
| 492 #ifdef HAVE_CYRUS_SASL |
492 #ifdef HAVE_CYRUS_SASL |
| |
493 /* Skip the GSSAPI mechanism unless it's enabled for this account */ |
| |
494 if (mech_name && !strcmp(mech_name, "GSSAPI") && |
| |
495 !purple_account_get_bool(js->gc->account, "auth_gssapi", FALSE)) { |
| |
496 continue; |
| |
497 } |
| |
498 |
| 493 g_string_append(js->sasl_mechs, mech_name); |
499 g_string_append(js->sasl_mechs, mech_name); |
| 494 g_string_append_c(js->sasl_mechs, ' '); |
500 g_string_append_c(js->sasl_mechs, ' '); |
| 495 #else |
501 #else |
| 496 if(mech_name && !strcmp(mech_name, "DIGEST-MD5")) |
502 if(mech_name && !strcmp(mech_name, "DIGEST-MD5")) |
| 497 digest_md5 = TRUE; |
503 digest_md5 = TRUE; |