/*
* Sylpheed -- a GTK+ based, lightweight, and fast e-mail client
- * Copyright (C) 2001-2007 Match Grun and the Claws Mail team
+ * Copyright (C) 2001-2011 Match Grun and the Claws Mail team
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
gint i;
gboolean errorFlag;
- g_return_val_if_fail(criteria != NULL, TRUE);
+ cm_return_val_if_fail(criteria != NULL, TRUE);
errorFlag = TRUE;
}
static gboolean edit_ldap_key_pressed( GtkWidget *widget, GdkEventKey *event, gboolean *cancelled ) {
- if (event && event->keyval == GDK_Escape) {
+ if (event && event->keyval == GDK_KEY_Escape) {
*cancelled = TRUE;
gtk_main_quit();
}
debug_print("ldap server: %s\nport: %d\nssl: %d\ntls: %d\nbindDN: %s\n", sHost, iPort, ssl, tls, sBind);
if( ldaputil_test_connect( sHost, iPort, ssl, tls, iTime ) ) {
/* Attempt to read base DN */
- baseDN = ldaputil_read_basedn( sHost, iPort, sBind, sPass, iTime, ssl, tls );
+ baseDN = ldaputil_read_basedn(sHost, iPort, sBind, sPass, iTime, ssl, tls);
if( baseDN ) {
GList *node = baseDN;
while( node ) {
gtk_container_set_border_width(GTK_CONTAINER(window), 0);
gtk_window_set_title(GTK_WINDOW(window), _("Edit LDAP Server"));
gtk_window_set_position(GTK_WINDOW(window), GTK_WIN_POS_CENTER);
- gtk_window_set_modal(GTK_WINDOW(window), TRUE);
g_signal_connect(G_OBJECT(window), "delete_event",
G_CALLBACK(edit_ldap_delete_event),
cancelled);
GtkWidget *entry_name;
GtkWidget *entry_server;
GtkWidget *hbox_spin;
- GtkObject *spinbtn_port_adj;
+ GtkAdjustment *spinbtn_port_adj;
GtkWidget *spinbtn_port;
#ifdef USE_LDAP_TLS
GtkWidget *enable_ssl_checkbtn, *enable_tls_checkbtn;
GtkWidget *label;
GtkWidget *entry_criteria;
GtkWidget *hbox_spin;
- GtkObject *spinbtn_queryage_adj;
+ GtkAdjustment *spinbtn_queryage_adj;
GtkWidget *spinbtn_queryage;
GtkWidget *check_dynsearch;
GtkWidget *check_matchoption;
GtkWidget *entry_bindDN;
GtkWidget *entry_bindPW;
GtkWidget *hbox_spin;
- GtkObject *spinbtn_timeout_adj;
+ GtkAdjustment *spinbtn_timeout_adj;
GtkWidget *spinbtn_timeout;
- GtkObject *spinbtn_maxentry_adj;
+ GtkAdjustment *spinbtn_maxentry_adj;
GtkWidget *spinbtn_maxentry;
CLAWS_TIP_DECL();
gint top;
static void edit_ldap_set_fields( LdapServer *server ) {
LdapControl *ctl;
gchar *crit;
+ gchar *pwd;
if( ldapsvr_get_name( server ) )
gtk_entry_set_text(GTK_ENTRY(ldapedit.entry_name),
if( ctl->bindDN )
gtk_entry_set_text(
GTK_ENTRY(ldapedit.entry_bindDN), ctl->bindDN );
- if( ctl->bindPass )
- gtk_entry_set_text(
- GTK_ENTRY(ldapedit.entry_bindPW), ctl->bindPass );
+ if( ctl->bindPass ) {
+ pwd = ldapctl_get_bind_password( ctl );
+ gtk_entry_set_text( GTK_ENTRY(ldapedit.entry_bindPW), pwd );
+ g_free(pwd);
+ }
gtk_spin_button_set_value(
GTK_SPIN_BUTTON(ldapedit.spinbtn_timeout), ctl->timeOut );
gtk_spin_button_set_value(
gtk_widget_grab_focus(ldapedit.entry_name);
gtk_widget_show(ldapedit.window);
manage_window_set_transient(GTK_WINDOW(ldapedit.window));
+ gtk_window_set_modal(GTK_WINDOW(ldapedit.window), TRUE);
edit_ldap_status_show( "" );
if( ads ) {
gtk_main();
gtk_widget_hide(ldapedit.window);
+ gtk_window_set_modal(GTK_WINDOW(ldapedit.window), FALSE);
if (cancelled == TRUE) return NULL;
sName = gtk_editable_get_chars(
ldapctl_set_host( ctl, sHost );
ldapctl_set_base_dn( ctl, sBase );
ldapctl_set_bind_dn( ctl, sBind );
- ldapctl_set_bind_password( ctl, sPass );
+ ldapctl_set_bind_password( ctl, sPass, TRUE, TRUE );
ldapctl_set_port( ctl, iPort );
ldapctl_set_max_entries( ctl, iMaxE );
ldapctl_set_timeout( ctl, iTime );
ldapctl_set_max_query_age( ctl, iAge );
-#ifdef USE_LDAP_TLS
ldapctl_set_tls( ctl, tls );
ldapctl_set_ssl( ctl, ssl );
-#endif
ldapctl_set_matching_option(
ctl, bMatch ?
LDAPCTL_MATCH_CONTAINS : LDAPCTL_MATCH_BEGINWITH );
+ addrindex_save_data(addrIndex);
+
/* Save attributes */
editldap_parse_criteria( sCrit, ctl );