aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--addressbook/ChangeLog7
-rw-r--r--addressbook/backend/pas/pas-backend-ldap.c7
2 files changed, 12 insertions, 2 deletions
diff --git a/addressbook/ChangeLog b/addressbook/ChangeLog
index 890e170f19..439eb34874 100644
--- a/addressbook/ChangeLog
+++ b/addressbook/ChangeLog
@@ -1,3 +1,10 @@
+2001-01-24 Chris Toshok <toshok@ximian.com>
+
+ * backend/pas/pas-backend-ldap.c (email_ber_func): make sure to
+ add the lengths here (include the \0? anyone?).
+ (build_mods_from_ecards): if we're filling in mod->mod_bvalues,
+ set mod_op |= LDAP_MOD_BVALUES.
+
2001-01-23 Jason Leach <jasonleach@usa.net>
(Fix #1225: advanced search cancel/close)
diff --git a/addressbook/backend/pas/pas-backend-ldap.c b/addressbook/backend/pas/pas-backend-ldap.c
index 46681af3a6..6d7c9f5f8f 100644
--- a/addressbook/backend/pas/pas-backend-ldap.c
+++ b/addressbook/backend/pas/pas-backend-ldap.c
@@ -482,6 +482,7 @@ build_mods_from_ecards (ECardSimple *current, ECardSimple *new, gboolean *new_dn
mod->mod_values[1] = NULL;
}
else {
+ mod->mod_op |= LDAP_MOD_BVALUES;
mod->mod_bvalues = prop_info[i].ber_func (new);
}
@@ -1005,8 +1006,10 @@ email_ber_func(ECardSimple *card)
j = 0;
for (i = 0; i < 3; i ++) {
- if (emails[i])
- result[j++]->bv_val = g_strdup (emails[i]);
+ if (emails[i]) {
+ result[j]->bv_val = g_strdup (emails[i]);
+ result[j++]->bv_len = strlen (emails[i]) + 1;
+ }
}
result[num] = NULL;