aboutsummaryrefslogtreecommitdiffstats
path: root/addressbook/backend/pas/pas-backend-ldap.c
diff options
context:
space:
mode:
authorChris Toshok <toshok@src.gnome.org>2000-05-17 01:50:28 +0800
committerChris Toshok <toshok@src.gnome.org>2000-05-17 01:50:28 +0800
commitd6db70c32dafe0acde40893893d37eb05564967c (patch)
treefa4f7e1bb16ff35f4a8ec231a6157aa30a763c09 /addressbook/backend/pas/pas-backend-ldap.c
parentf8cb586400f551b3ade8594890a6ffdd991ae673 (diff)
downloadgsoc2013-evolution-d6db70c32dafe0acde40893893d37eb05564967c.tar
gsoc2013-evolution-d6db70c32dafe0acde40893893d37eb05564967c.tar.gz
gsoc2013-evolution-d6db70c32dafe0acde40893893d37eb05564967c.tar.bz2
gsoc2013-evolution-d6db70c32dafe0acde40893893d37eb05564967c.tar.lz
gsoc2013-evolution-d6db70c32dafe0acde40893893d37eb05564967c.tar.xz
gsoc2013-evolution-d6db70c32dafe0acde40893893d37eb05564967c.tar.zst
gsoc2013-evolution-d6db70c32dafe0acde40893893d37eb05564967c.zip
add typedefs for the can_write functions, and add parameters to
* backend/pas/pas-book.h: add typedefs for the can_write functions, and add parameters to pas_book_new. * backend/pas/pas-book.c (pas_book_construct): add can_write/can_write_card params. (pas_book_new): same. (impl_Evolution_Book_can_write): new function. (impl_Evolution_Book_can_write_card): same. (pas_book_get_epv): assign the can_write/can_write_card slots in the epv. * backend/pas/pas-backend-ldap.c (pas_backend_ldap_can_write): new function. (pas_backend_ldap_can_write_card): same. (pas_backend_ldap_add_client): add can_write/can_write_card to pas_book_new call. * backend/pas/pas-backend-file.c (pas_backend_file_can_write_card): new function, calls can_write. (pas_backend_file_can_write): same. (can_write): return TRUE if we can write to the addressbook file. (pas_backend_file_add_client): add can_write/can_write_card to pas_book_new call. * backend/idl/addressbook.idl (Evolution): add can_write and can_write_card permission requests. svn path=/trunk/; revision=3093
Diffstat (limited to 'addressbook/backend/pas/pas-backend-ldap.c')
-rw-r--r--addressbook/backend/pas/pas-backend-ldap.c19
1 files changed, 18 insertions, 1 deletions
diff --git a/addressbook/backend/pas/pas-backend-ldap.c b/addressbook/backend/pas/pas-backend-ldap.c
index 845ef31e16..2f32661cca 100644
--- a/addressbook/backend/pas/pas-backend-ldap.c
+++ b/addressbook/backend/pas/pas-backend-ldap.c
@@ -207,6 +207,7 @@ pas_backend_ldap_build_all_cards_list(PASBackend *backend,
if (ldap) {
ldap->ld_sizelimit = LDAP_MAX_SEARCH_RESPONSES;
+ ldap->ld_deref = LDAP_DEREF_ALWAYS;
if ((ldap_error = ldap_search_s (ldap,
bl->priv->ldap_rootdn,
@@ -729,6 +730,7 @@ pas_backend_ldap_search (PASBackendLDAP *bl,
if (ldap) {
ldap->ld_sizelimit = LDAP_MAX_SEARCH_RESPONSES;
+ ldap->ld_deref = LDAP_DEREF_ALWAYS;
if ((view->search_msgid = ldap_search (ldap,
bl->priv->ldap_rootdn,
@@ -802,6 +804,19 @@ pas_backend_ldap_process_check_connection (PASBackend *backend,
pas_book_report_connection (book, bl->priv->connected);
}
+static gboolean
+pas_backend_ldap_can_write (PASBook *book)
+{
+ return FALSE; /* XXX */
+}
+
+static gboolean
+pas_backend_ldap_can_write_card (PASBook *book,
+ const char *id)
+{
+ return FALSE; /* XXX */
+}
+
static void
pas_backend_ldap_process_client_requests (PASBook *book)
{
@@ -927,7 +942,9 @@ pas_backend_ldap_add_client (PASBackend *backend,
book = pas_book_new (
backend, listener,
- pas_backend_ldap_get_vcard);
+ pas_backend_ldap_get_vcard,
+ pas_backend_ldap_can_write,
+ pas_backend_ldap_can_write_card);
if (!book) {
if (!bl->priv->clients)