[evolution-kolab/ek-wip-acl] CamelImapxAcl: API cleanup
- From: Christian Hilberg <chilberg src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [evolution-kolab/ek-wip-acl] CamelImapxAcl: API cleanup
- Date: Fri, 12 Oct 2012 15:21:41 +0000 (UTC)
commit 614bb89d70e3aebaa914db4e49ec38b14307bfa1
Author: Christian Hilberg <hilberg kernelconcepts de>
Date: Fri Oct 12 17:05:28 2012 +0200
CamelImapxAcl: API cleanup
* more consistent naming of API functions
* rearranged header and code to reflect
API function naming scheme
* do not call API functions from within
local statics
* adapted all users of CamelImapxAcl API
* reflect changes in CamelKolabImapxAcl
API as well
src/libekolab/camel-imapx-acl.c | 491 +++++++++++++------------
src/libekolab/camel-imapx-acl.h | 66 ++--
src/libekolab/camel-imapx-extd-server-acl.c | 10 +-
src/libekolab/camel-kolab-imapx-acl.c | 90 +++---
src/libekolab/camel-kolab-imapx-acl.h | 35 +-
src/libekolab/kolab-data-folder-permissions.c | 8 +-
6 files changed, 359 insertions(+), 341 deletions(-)
---
diff --git a/src/libekolab/camel-imapx-acl.c b/src/libekolab/camel-imapx-acl.c
index c62fd9b..c98e26e 100644
--- a/src/libekolab/camel-imapx-acl.c
+++ b/src/libekolab/camel-imapx-acl.c
@@ -44,6 +44,21 @@
/*----------------------------------------------------------------------------*/
+static void
+imapx_acl_entry_free (CamelImapxAclEntry *entry)
+{
+ if (entry == NULL)
+ return;
+
+ if (entry->access_id != NULL)
+ g_free (entry->access_id);
+
+ if (entry->rights != NULL)
+ g_free (entry->rights);
+
+ g_free (entry);
+}
+
static gboolean
imapx_acl_entry_validate_access_id (const gchar *access_id,
GError **err)
@@ -101,7 +116,7 @@ imapx_acl_entry_gdestroy (gpointer data)
return;
entry = (CamelImapxAclEntry *) data;
- camel_imapx_acl_entry_free (entry);
+ imapx_acl_entry_free (entry);
}
static GHashTable*
@@ -334,16 +349,7 @@ camel_imapx_acl_entry_clone (const CamelImapxAclEntry *entry,
void
camel_imapx_acl_entry_free (CamelImapxAclEntry *entry)
{
- if (entry == NULL)
- return;
-
- if (entry->access_id != NULL)
- g_free (entry->access_id);
-
- if (entry->rights != NULL)
- g_free (entry->rights);
-
- g_free (entry);
+ imapx_acl_entry_free (entry);
}
CamelImapxAcl*
@@ -434,189 +440,70 @@ camel_imapx_acl_validate (CamelImapxAcl *acl,
return ok;
}
-GList*
-camel_imapx_acl_get_as_list (CamelImapxAcl *acl,
- const gchar *mbox_name)
+gchar*
+camel_imapx_acl_get_myrights (CamelImapxAcl *acl,
+ const gchar *mbox_name)
{
- CamelImapxAclEntry *entry = NULL;
- GHashTable *entries_tbl = NULL;
- GList *access_ids = NULL;
- GList *access_ids_ptr = NULL;
- GList *entries_lst = NULL;
+ gchar *r = NULL;
gchar *rights = NULL;
g_return_val_if_fail (acl != NULL, NULL);
- g_return_val_if_fail (acl->mboxes != NULL, NULL);
+ g_return_val_if_fail (acl->myrights != NULL, NULL);
g_return_val_if_fail (mbox_name != NULL, NULL);
/* (acquire acl lock) */
g_mutex_lock (&(acl->lock));
- entries_tbl = g_hash_table_lookup (acl->mboxes,
- mbox_name);
- if (entries_tbl == NULL)
- goto exit;
-
- access_ids = g_hash_table_get_keys (entries_tbl);
- access_ids_ptr = access_ids;
- while (access_ids_ptr != NULL) {
- rights = g_hash_table_lookup (entries_tbl,
- access_ids_ptr->data);
- entry = camel_imapx_acl_entry_new ((gchar *) access_ids_ptr->data,
- rights,
- NULL);
- entries_lst = g_list_prepend (entries_lst, entry);
- access_ids_ptr = g_list_next (access_ids_ptr);
- }
- g_list_free (access_ids);
+ r = g_hash_table_lookup (acl->myrights,
+ mbox_name);
+ rights = g_strdup (r);
- if (entries_lst != NULL)
- entries_lst = g_list_reverse (entries_lst);
- exit:
/* (release acl lock) */
g_mutex_unlock (&(acl->lock));
- return entries_lst;
-}
-
-GList*
-camel_imapx_acl_clone_list (GList *entries,
- GError **err)
-{
- CamelImapxAclEntry *entry = NULL;
- GList *new_lst = NULL;
- GList *entries_ptr = NULL;
- GError *tmp_err = NULL;
-
- entries_ptr = entries;
- while (entries_ptr != NULL) {
- entry = camel_imapx_acl_entry_clone ((CamelImapxAclEntry *) entries_ptr->data,
- &tmp_err);
- if (tmp_err != NULL) {
- g_propagate_error (err, tmp_err);
- camel_imapx_acl_free_list (new_lst);
- return NULL;
- }
-
- new_lst = g_list_prepend (new_lst, entry);
- entries_ptr = g_list_next (entries_ptr);
- }
-
- new_lst = g_list_reverse (new_lst);
- return new_lst;
-}
-
-const gchar*
-camel_imapx_acl_get_rights_from_list (const GList *entries,
- const gchar *access_id,
- GError **err)
-{
- const CamelImapxAclEntry *entry = NULL;
- const GList *entries_ptr = NULL;
- const gchar *rights = NULL;
- GError *tmp_err = NULL;
- gboolean ok = FALSE;
-
- g_return_val_if_fail (entries != NULL, NULL);
- g_return_val_if_fail (access_id != NULL, NULL);
- g_return_val_if_fail (err == NULL || *err == NULL, NULL);
-
- ok = imapx_acl_entry_validate_access_id (access_id,
- &tmp_err);
- if (! ok)
- goto exit;
-
- entries_ptr = entries;
- while (entries_ptr != NULL) {
- entry = (const CamelImapxAclEntry *) entries_ptr->data;
-
- if (entry == NULL) {
- g_warning ("%s()[%u] NULL CamelImapxAclEntry in list, skipping!",
- __func__, __LINE__);
- goto skip;
- }
-
- if (entry->access_id == NULL) {
- g_warning ("%s()[%u] NULL access_id in CamelImapxAclEntry, skipping!",
- __func__, __LINE__);
- goto skip;
- }
-
- if (g_strcmp0 (access_id, entry->access_id) == 0) {
- ok = imapx_acl_entry_validate_rights (entry->rights,
- &tmp_err);
- if (! ok)
- goto exit;
-
- rights = entry->rights;
- break;
- }
-
- skip:
- entries_ptr = g_list_next (entries_ptr);
- }
-
- exit:
- if (tmp_err != NULL)
- g_propagate_error (err, tmp_err);
return rights;
}
gboolean
-camel_imapx_acl_update_list_from_entry (GList **entries,
- const CamelImapxAclEntry *entry,
- GError **err)
+camel_imapx_acl_update_myrights (CamelImapxAcl *acl,
+ const gchar *mbox_name,
+ const gchar *rights,
+ GError **err)
{
- CamelImapxAclEntry *tmp_entry = NULL;
- GList *entries_ptr = NULL;
GError *tmp_err = NULL;
- gboolean found = FALSE;
gboolean ok = FALSE;
- g_return_val_if_fail (entries != NULL, FALSE);
- /* entry may be NULL */
+ g_return_val_if_fail (acl != NULL, FALSE);
+ g_return_val_if_fail (acl->myrights != NULL, FALSE);
+ g_return_val_if_fail (mbox_name != NULL, FALSE);
+ /* rights may be NULL (used for deletion) */
g_return_val_if_fail (err == NULL || *err == NULL, FALSE);
- if (entry == NULL)
- return TRUE;
-
- ok = imapx_acl_entry_validate (entry, &tmp_err);
- if (! ok) {
- g_propagate_error (err, tmp_err);
- return FALSE;
- }
-
- /* find matching entry, if any */
- entries_ptr = *entries;
- while (entries_ptr != NULL) {
- tmp_entry = (CamelImapxAclEntry *) entries_ptr->data;
- found = (g_strcmp0 (tmp_entry->access_id, entry->access_id) == 0);
- if (found) {
- if (tmp_entry->rights)
- g_free (tmp_entry->rights);
- tmp_entry->rights = g_strdup (entry->rights);
- break;
+ if (rights != NULL) {
+ ok = imapx_acl_entry_validate_rights (rights,
+ &tmp_err);
+ if (! ok) {
+ g_propagate_error (err, tmp_err);
+ return FALSE;
}
- entries_ptr = g_list_next (entries_ptr);
}
- if (! found) {
- tmp_entry = camel_imapx_acl_entry_clone (entry,
- NULL);
- *entries = g_list_append (*entries, tmp_entry);
- }
+ /* (acquire acl lock) */
+ g_mutex_lock (&(acl->lock));
- return TRUE;
-}
+ if (rights != NULL) {
+ g_hash_table_replace (acl->myrights,
+ g_strdup (mbox_name),
+ g_strdup (rights));
+ } else {
+ g_hash_table_remove (acl->myrights,
+ mbox_name);
+ }
-void
-camel_imapx_acl_free_list (GList *entries)
-{
- if (entries == NULL)
- return;
+ /* (release acl lock) */
+ g_mutex_unlock (&(acl->lock));
- g_list_free_full (entries,
- imapx_acl_entry_gdestroy);
+ return TRUE;
}
gboolean
@@ -797,72 +684,6 @@ camel_imapx_acl_update_from_list (CamelImapxAcl *acl,
return TRUE;
}
-gchar*
-camel_imapx_acl_get_myrights (CamelImapxAcl *acl,
- const gchar *mbox_name)
-{
- gchar *r = NULL;
- gchar *rights = NULL;
-
- g_return_val_if_fail (acl != NULL, NULL);
- g_return_val_if_fail (acl->myrights != NULL, NULL);
- g_return_val_if_fail (mbox_name != NULL, NULL);
-
- /* (acquire acl lock) */
- g_mutex_lock (&(acl->lock));
-
- r = g_hash_table_lookup (acl->myrights,
- mbox_name);
- rights = g_strdup (r);
-
- /* (release acl lock) */
- g_mutex_unlock (&(acl->lock));
-
- return rights;
-}
-
-gboolean
-camel_imapx_acl_update_myrights (CamelImapxAcl *acl,
- const gchar *mbox_name,
- const gchar *rights,
- GError **err)
-{
- GError *tmp_err = NULL;
- gboolean ok = FALSE;
-
- g_return_val_if_fail (acl != NULL, FALSE);
- g_return_val_if_fail (acl->myrights != NULL, FALSE);
- g_return_val_if_fail (mbox_name != NULL, FALSE);
- /* rights may be NULL (used for deletion) */
- g_return_val_if_fail (err == NULL || *err == NULL, FALSE);
-
- if (rights != NULL) {
- ok = imapx_acl_entry_validate_rights (rights,
- &tmp_err);
- if (! ok) {
- g_propagate_error (err, tmp_err);
- return FALSE;
- }
- }
-
- /* (acquire acl lock) */
- g_mutex_lock (&(acl->lock));
-
- if (rights != NULL) {
- g_hash_table_replace (acl->myrights,
- g_strdup (mbox_name),
- g_strdup (rights));
- } else {
- g_hash_table_remove (acl->myrights,
- mbox_name);
- }
-
- /* (release acl lock) */
- g_mutex_unlock (&(acl->lock));
-
- return TRUE;
-}
-
gboolean
camel_imapx_acl_update_acl_from_server_response (CamelImapxAcl *acl,
CamelIMAPXStream *is,
@@ -1036,26 +857,193 @@ camel_imapx_acl_update_myrights_from_server_response (CamelImapxAcl *acl,
return ok;
}
-GSList*
-camel_imapx_acl_new_commandlist (CamelImapxAcl *acl,
- GError **err)
+GList*
+camel_imapx_acl_get_as_list (CamelImapxAcl *acl,
+ const gchar *mbox_name)
{
+ CamelImapxAclEntry *entry = NULL;
+ GHashTable *entries_tbl = NULL;
+ GList *access_ids = NULL;
+ GList *access_ids_ptr = NULL;
+ GList *entries_lst = NULL;
+ gchar *rights = NULL;
+
g_return_val_if_fail (acl != NULL, NULL);
- g_return_val_if_fail (err == NULL || *err == NULL, FALSE);
+ g_return_val_if_fail (acl->mboxes != NULL, NULL);
+ g_return_val_if_fail (mbox_name != NULL, NULL);
/* (acquire acl lock) */
g_mutex_lock (&(acl->lock));
- g_warning ("%s()[%u] FIXME implement me", __func__, __LINE__);
+ entries_tbl = g_hash_table_lookup (acl->mboxes,
+ mbox_name);
+ if (entries_tbl == NULL)
+ goto exit;
+ access_ids = g_hash_table_get_keys (entries_tbl);
+ access_ids_ptr = access_ids;
+ while (access_ids_ptr != NULL) {
+ rights = g_hash_table_lookup (entries_tbl,
+ access_ids_ptr->data);
+ entry = camel_imapx_acl_entry_new ((gchar *) access_ids_ptr->data,
+ rights,
+ NULL);
+ entries_lst = g_list_prepend (entries_lst, entry);
+ access_ids_ptr = g_list_next (access_ids_ptr);
+ }
+ g_list_free (access_ids);
+
+ if (entries_lst != NULL)
+ entries_lst = g_list_reverse (entries_lst);
+ exit:
/* (release acl lock) */
g_mutex_unlock (&(acl->lock));
- return NULL;
+ return entries_lst;
+}
+
+GList*
+camel_imapx_acl_list_clone (GList *entries,
+ GError **err)
+{
+ CamelImapxAclEntry *entry = NULL;
+ GList *new_lst = NULL;
+ GList *entries_ptr = NULL;
+ GError *tmp_err = NULL;
+
+ entries_ptr = entries;
+ while (entries_ptr != NULL) {
+ entry = camel_imapx_acl_entry_clone ((CamelImapxAclEntry *) entries_ptr->data,
+ &tmp_err);
+ if (tmp_err != NULL) {
+ g_propagate_error (err, tmp_err);
+ camel_imapx_acl_list_free (new_lst);
+ return NULL;
+ }
+
+ new_lst = g_list_prepend (new_lst, entry);
+ entries_ptr = g_list_next (entries_ptr);
+ }
+
+ new_lst = g_list_reverse (new_lst);
+ return new_lst;
+}
+
+const gchar*
+camel_imapx_acl_list_get_rights (const GList *entries,
+ const gchar *access_id,
+ GError **err)
+{
+ const CamelImapxAclEntry *entry = NULL;
+ const GList *entries_ptr = NULL;
+ const gchar *rights = NULL;
+ GError *tmp_err = NULL;
+ gboolean ok = FALSE;
+
+ g_return_val_if_fail (entries != NULL, NULL);
+ g_return_val_if_fail (access_id != NULL, NULL);
+ g_return_val_if_fail (err == NULL || *err == NULL, NULL);
+
+ ok = imapx_acl_entry_validate_access_id (access_id,
+ &tmp_err);
+ if (! ok)
+ goto exit;
+
+ entries_ptr = entries;
+ while (entries_ptr != NULL) {
+ entry = (const CamelImapxAclEntry *) entries_ptr->data;
+
+ if (entry == NULL) {
+ g_warning ("%s()[%u] NULL CamelImapxAclEntry in list, skipping!",
+ __func__, __LINE__);
+ goto skip;
+ }
+
+ if (entry->access_id == NULL) {
+ g_warning ("%s()[%u] NULL access_id in CamelImapxAclEntry, skipping!",
+ __func__, __LINE__);
+ goto skip;
+ }
+
+ if (g_strcmp0 (access_id, entry->access_id) == 0) {
+ ok = imapx_acl_entry_validate_rights (entry->rights,
+ &tmp_err);
+ if (! ok)
+ goto exit;
+
+ rights = entry->rights;
+ break;
+ }
+
+ skip:
+ entries_ptr = g_list_next (entries_ptr);
+ }
+
+ exit:
+ if (tmp_err != NULL)
+ g_propagate_error (err, tmp_err);
+ return rights;
+}
+
+gboolean
+camel_imapx_acl_list_update_from_entry (GList **entries,
+ const CamelImapxAclEntry *entry,
+ GError **err)
+{
+ CamelImapxAclEntry *tmp_entry = NULL;
+ GList *entries_ptr = NULL;
+ GError *tmp_err = NULL;
+ gboolean found = FALSE;
+ gboolean ok = FALSE;
+
+ g_return_val_if_fail (entries != NULL, FALSE);
+ /* entry may be NULL */
+ g_return_val_if_fail (err == NULL || *err == NULL, FALSE);
+
+ if (entry == NULL)
+ return TRUE;
+
+ ok = imapx_acl_entry_validate (entry, &tmp_err);
+ if (! ok) {
+ g_propagate_error (err, tmp_err);
+ return FALSE;
+ }
+
+ /* find matching entry, if any */
+ entries_ptr = *entries;
+ while (entries_ptr != NULL) {
+ tmp_entry = (CamelImapxAclEntry *) entries_ptr->data;
+ found = (g_strcmp0 (tmp_entry->access_id, entry->access_id) == 0);
+ if (found) {
+ if (tmp_entry->rights)
+ g_free (tmp_entry->rights);
+ tmp_entry->rights = g_strdup (entry->rights);
+ break;
+ }
+ entries_ptr = g_list_next (entries_ptr);
+ }
+
+ if (! found) {
+ tmp_entry = camel_imapx_acl_entry_clone (entry,
+ NULL);
+ *entries = g_list_append (*entries, tmp_entry);
+ }
+
+ return TRUE;
+}
+
+void
+camel_imapx_acl_list_free (GList *entries)
+{
+ if (entries == NULL)
+ return;
+
+ g_list_free_full (entries,
+ imapx_acl_entry_gdestroy);
}
gchar*
-camel_imapx_acl_merge_rights (const gchar *oldrights,
+camel_imapx_acl_rights_merge (const gchar *oldrights,
const gchar *newrights,
GError **err)
{
@@ -1113,4 +1101,31 @@ camel_imapx_acl_merge_rights (const gchar *oldrights,
return mergedrights;
}
+GList*
+camel_imapx_acl_commandlist_new (CamelImapxAcl *acl,
+ GError **err)
+{
+ g_return_val_if_fail (acl != NULL, NULL);
+ g_return_val_if_fail (err == NULL || *err == NULL, FALSE);
+
+ /* (acquire acl lock) */
+ g_mutex_lock (&(acl->lock));
+
+ g_warning ("%s()[%u] FIXME implement me", __func__, __LINE__);
+
+ /* (release acl lock) */
+ g_mutex_unlock (&(acl->lock));
+
+ return NULL;
+}
+
+void
+camel_imapx_acl_commandlist_free (GList *commands)
+{
+ if (commands == NULL)
+ return;
+
+ kolab_util_glib_glist_free (commands);
+}
+
/*----------------------------------------------------------------------------*/
diff --git a/src/libekolab/camel-imapx-acl.h b/src/libekolab/camel-imapx-acl.h
index 839b2fc..a0a1e99 100644
--- a/src/libekolab/camel-imapx-acl.h
+++ b/src/libekolab/camel-imapx-acl.h
@@ -35,6 +35,7 @@
#include <gio/gio.h>
#include <libekolabutil/camel-system-headers.h>
+#include <libekolabutil/kolab-util-glib.h>
/*----------------------------------------------------------------------------*/
@@ -99,26 +100,15 @@ gboolean
camel_imapx_acl_validate (CamelImapxAcl *acl,
GError **err);
-GList*
-camel_imapx_acl_get_as_list (CamelImapxAcl *acl,
- const gchar *mbox_name);
-
-GList*
-camel_imapx_acl_clone_list (GList *entries,
- GError **err);
-
-const gchar*
-camel_imapx_acl_get_rights_from_list (const GList *entries,
- const gchar *access_id,
- GError **err);
+gchar*
+camel_imapx_acl_get_myrights (CamelImapxAcl *acl,
+ const gchar *mbox_name);
gboolean
-camel_imapx_acl_update_list_from_entry (GList **entries,
- const CamelImapxAclEntry *entry,
- GError **err);
-
-void
-camel_imapx_acl_free_list (GList *entries);
+camel_imapx_acl_update_myrights (CamelImapxAcl *acl,
+ const gchar *mbox_name,
+ const gchar *rights,
+ GError **err);
gboolean
camel_imapx_acl_update_from_acl (CamelImapxAcl *acl,
@@ -131,16 +121,6 @@ camel_imapx_acl_update_from_list (CamelImapxAcl *acl,
const GList *entries,
GError **err);
-gchar*
-camel_imapx_acl_get_myrights (CamelImapxAcl *acl,
- const gchar *mbox_name);
-
-gboolean
-camel_imapx_acl_update_myrights (CamelImapxAcl *acl,
- const gchar *mbox_name,
- const gchar *rights,
- GError **err);
-
gboolean
camel_imapx_acl_update_acl_from_server_response (CamelImapxAcl *acl,
CamelIMAPXStream *is,
@@ -152,15 +132,39 @@ camel_imapx_acl_update_myrights_from_server_response (CamelImapxAcl *acl,
GCancellable *cancellable,
GError **err);
-GSList*
-camel_imapx_acl_new_commandlist (CamelImapxAcl *acl,
+GList*
+camel_imapx_acl_get_as_list (CamelImapxAcl *acl,
+ const gchar *mbox_name);
+
+GList*
+camel_imapx_acl_list_clone (GList *entries,
+ GError **err);
+
+const gchar*
+camel_imapx_acl_list_get_rights (const GList *entries,
+ const gchar *access_id,
GError **err);
+gboolean
+camel_imapx_acl_list_update_from_entry (GList **entries,
+ const CamelImapxAclEntry *entry,
+ GError **err);
+
+void
+camel_imapx_acl_list_free (GList *entries);
+
gchar*
-camel_imapx_acl_merge_rights (const gchar *oldrights,
+camel_imapx_acl_rights_merge (const gchar *oldrights,
const gchar *newrights,
GError **err);
+GList*
+camel_imapx_acl_commandlist_new (CamelImapxAcl *acl,
+ GError **err);
+
+void
+camel_imapx_acl_commandlist_free (GList *commands);
+
/*----------------------------------------------------------------------------*/
#endif /* _CAMEL_IMAPX_ACL_H_ */
diff --git a/src/libekolab/camel-imapx-extd-server-acl.c b/src/libekolab/camel-imapx-extd-server-acl.c
index 37280a8..d79c616 100644
--- a/src/libekolab/camel-imapx-extd-server-acl.c
+++ b/src/libekolab/camel-imapx-extd-server-acl.c
@@ -278,8 +278,8 @@ camel_imapx_extd_server_set_acl (CamelIMAPXServer *is,
GError **err)
{
static GMutex setter_lock;
- GSList *commands = NULL;
- GSList *cur_cmd = NULL;
+ GList *commands = NULL;
+ GList *cur_cmd = NULL;
GError *tmp_err = NULL;
gboolean ok = TRUE;
@@ -290,7 +290,7 @@ camel_imapx_extd_server_set_acl (CamelIMAPXServer *is,
g_mutex_lock (&setter_lock);
- commands = camel_imapx_acl_new_commandlist (acl,
+ commands = camel_imapx_acl_commandlist_new (acl,
&tmp_err);
if (commands == NULL)
@@ -307,7 +307,7 @@ camel_imapx_extd_server_set_acl (CamelIMAPXServer *is,
if (! ok)
goto exit;
- cur_cmd = g_slist_next (cur_cmd);
+ cur_cmd = g_list_next (cur_cmd);
}
exit:
@@ -316,7 +316,7 @@ camel_imapx_extd_server_set_acl (CamelIMAPXServer *is,
ok = FALSE;
}
if (commands != NULL)
- g_slist_free (commands);
+ camel_imapx_acl_commandlist_free (commands);
g_mutex_unlock (&setter_lock);
diff --git a/src/libekolab/camel-kolab-imapx-acl.c b/src/libekolab/camel-kolab-imapx-acl.c
index 04c1870..984e6e5 100644
--- a/src/libekolab/camel-kolab-imapx-acl.c
+++ b/src/libekolab/camel-kolab-imapx-acl.c
@@ -50,41 +50,38 @@ camel_kolab_imapx_acl_free (CamelKolabImapxAcl *kacl)
g_free (kacl);
}
-GList*
-camel_kolab_imapx_acl_get_as_list (CamelKolabImapxAcl *kacl,
- const gchar *foldername)
+gchar*
+camel_kolab_imapx_acl_get_myrights (CamelKolabImapxAcl *kacl,
+ const gchar *foldername)
{
- GList *entries = NULL;
+ gchar *rights = NULL;
g_return_val_if_fail (kacl != NULL, NULL);
g_return_val_if_fail (foldername != NULL, NULL);
- entries = camel_imapx_acl_get_as_list (kacl->acl,
+ rights = camel_imapx_acl_get_myrights (kacl->acl,
foldername);
-
- return entries;
+ return rights;
}
-GList*
-camel_kolab_imapx_acl_clone_list (GList *entries,
- GError **err)
+gboolean
+camel_kolab_imapx_acl_update_myrights (CamelKolabImapxAcl *kacl,
+ const gchar *foldername,
+ const gchar *rights,
+ GError **err)
{
- GList *cloned = NULL;
-
- g_return_val_if_fail (entries != NULL, NULL);
- g_return_val_if_fail (err == NULL || *err == NULL, NULL);
+ gboolean ok = FALSE;
- cloned = camel_imapx_acl_clone_list (entries,
- err);
- return cloned;
-}
+ g_return_val_if_fail (kacl != NULL, FALSE);
+ g_return_val_if_fail (foldername != NULL, FALSE);
+ /* rights may be NULL */
+ g_return_val_if_fail (err == NULL || *err == NULL, FALSE);
-void
-camel_kolab_imapx_acl_free_list (GList *entries)
-{
- if (entries == NULL)
- return;
- camel_imapx_acl_free_list (entries);
+ ok = camel_imapx_acl_update_myrights (kacl->acl,
+ foldername,
+ rights,
+ err);
+ return ok;
}
gboolean
@@ -131,38 +128,41 @@ camel_kolab_imapx_acl_update_from_list (CamelKolabImapxAcl *kacl,
return ok;
}
-gchar*
-camel_kolab_imapx_acl_get_myrights (CamelKolabImapxAcl *kacl,
- const gchar *foldername)
+GList*
+camel_kolab_imapx_acl_get_as_list (CamelKolabImapxAcl *kacl,
+ const gchar *foldername)
{
- gchar *rights = NULL;
+ GList *entries = NULL;
g_return_val_if_fail (kacl != NULL, NULL);
g_return_val_if_fail (foldername != NULL, NULL);
- rights = camel_imapx_acl_get_myrights (kacl->acl,
+ entries = camel_imapx_acl_get_as_list (kacl->acl,
foldername);
- return rights;
+
+ return entries;
}
-gboolean
-camel_kolab_imapx_acl_update_myrights (CamelKolabImapxAcl *kacl,
- const gchar *foldername,
- const gchar *rights,
- GError **err)
+GList*
+camel_kolab_imapx_acl_list_clone (GList *entries,
+ GError **err)
{
- gboolean ok = FALSE;
+ GList *cloned = NULL;
- g_return_val_if_fail (kacl != NULL, FALSE);
- g_return_val_if_fail (foldername != NULL, FALSE);
- /* rights may be NULL */
- g_return_val_if_fail (err == NULL || *err == NULL, FALSE);
+ g_return_val_if_fail (entries != NULL, NULL);
+ g_return_val_if_fail (err == NULL || *err == NULL, NULL);
- ok = camel_imapx_acl_update_myrights (kacl->acl,
- foldername,
- rights,
- err);
- return ok;
+ cloned = camel_imapx_acl_list_clone (entries,
+ err);
+ return cloned;
+}
+
+void
+camel_kolab_imapx_acl_list_free (GList *entries)
+{
+ if (entries == NULL)
+ return;
+ camel_imapx_acl_list_free (entries);
}
/*----------------------------------------------------------------------------*/
diff --git a/src/libekolab/camel-kolab-imapx-acl.h b/src/libekolab/camel-kolab-imapx-acl.h
index 45748bd..c1d2420 100644
--- a/src/libekolab/camel-kolab-imapx-acl.h
+++ b/src/libekolab/camel-kolab-imapx-acl.h
@@ -78,18 +78,16 @@ camel_kolab_imapx_acl_new (gboolean locked);
void
camel_kolab_imapx_acl_free (CamelKolabImapxAcl *kacl);
-GList*
-camel_kolab_imapx_acl_get_as_list (CamelKolabImapxAcl *kacl,
- const gchar *foldername);
-
-GList*
-camel_kolab_imapx_acl_clone_list (GList *entries,
- GError **err);
-
-void
-camel_kolab_imapx_acl_free_list (GList *entries);
+gchar*
+camel_kolab_imapx_acl_get_myrights (CamelKolabImapxAcl *kacl,
+ const gchar *foldername);
gboolean
+camel_kolab_imapx_acl_update_myrights (CamelKolabImapxAcl *kacl,
+ const gchar *foldername,
+ const gchar *rights,
+ GError **err);
+gboolean
camel_kolab_imapx_acl_update_from_acl (CamelKolabImapxAcl *kacl,
CamelImapxAcl *src_acl,
GError **err);
@@ -100,15 +98,16 @@ camel_kolab_imapx_acl_update_from_list (CamelKolabImapxAcl *kacl,
const GList *entries,
GError **err);
-gchar*
-camel_kolab_imapx_acl_get_myrights (CamelKolabImapxAcl *kacl,
- const gchar *foldername);
+GList*
+camel_kolab_imapx_acl_get_as_list (CamelKolabImapxAcl *kacl,
+ const gchar *foldername);
-gboolean
-camel_kolab_imapx_acl_update_myrights (CamelKolabImapxAcl *kacl,
- const gchar *foldername,
- const gchar *rights,
- GError **err);
+GList*
+camel_kolab_imapx_acl_list_clone (GList *entries,
+ GError **err);
+
+void
+camel_kolab_imapx_acl_list_free (GList *entries);
/*----------------------------------------------------------------------------*/
diff --git a/src/libekolab/kolab-data-folder-permissions.c b/src/libekolab/kolab-data-folder-permissions.c
index fd65572..f2183db 100644
--- a/src/libekolab/kolab-data-folder-permissions.c
+++ b/src/libekolab/kolab-data-folder-permissions.c
@@ -56,12 +56,12 @@ kolab_data_folder_permissions_clone (const KolabDataFolderPermissions *srcdata,
data = g_new0 (KolabDataFolderPermissions, 1);
- data->acl = camel_imapx_acl_clone_list (srcdata->acl,
+ data->acl = camel_imapx_acl_list_clone (srcdata->acl,
&tmp_err);
if (tmp_err != NULL)
goto exit;
- data->myrights = camel_imapx_acl_clone_list (srcdata->myrights,
+ data->myrights = camel_imapx_acl_list_clone (srcdata->myrights,
&tmp_err);
exit:
@@ -80,8 +80,8 @@ kolab_data_folder_permissions_free (KolabDataFolderPermissions *data)
if (data == NULL)
return;
- camel_imapx_acl_free_list (data->acl);
- camel_imapx_acl_free_list (data->myrights);
+ camel_imapx_acl_list_free (data->acl);
+ camel_imapx_acl_list_free (data->myrights);
g_free (data);
}
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]