From ba29b8e23b67d5d409ec5fa195e048ba4849a18e Mon Sep 17 00:00:00 2001 From: Sivaiah Nallagatla Date: Wed, 21 Apr 2004 12:24:33 +0000 Subject: added a new function to striff off any parameters present after ';' in the 2004-04-21 Sivaiah Nallagatla * gui/component/addressbook.c (remove_parameters_from_uri) : added a new function to striff off any parameters present after ';' in the uri (load_source_auth_cb) (addressbook_authenticate) : call above function to remove anything after ';' before passing uri to e-password calls svn path=/trunk/; revision=25560 --- addressbook/ChangeLog | 7 +++++++ addressbook/gui/component/addressbook.c | 27 ++++++++++++++++++++++++--- 2 files changed, 31 insertions(+), 3 deletions(-) (limited to 'addressbook') diff --git a/addressbook/ChangeLog b/addressbook/ChangeLog index 1d4322a017..3acec61928 100644 --- a/addressbook/ChangeLog +++ b/addressbook/ChangeLog @@ -1,3 +1,10 @@ +2004-04-21 Sivaiah Nallagatla + + * gui/component/addressbook.c (remove_parameters_from_uri) : added + a new function to striff off any parameters present after ';' in the uri + (load_source_auth_cb) (addressbook_authenticate) : call above function to + remove anything after ';' before passing uri to e-password calls + 2004-04-21 Hans Petter Jansson * gui/contact-editor/e-contact-editor.h (EContactEditor): Remove diff --git a/addressbook/gui/component/addressbook.c b/addressbook/gui/component/addressbook.c index 4e1afeef1d..d9628eeb50 100644 --- a/addressbook/gui/component/addressbook.c +++ b/addressbook/gui/component/addressbook.c @@ -52,6 +52,22 @@ free_load_source_data (LoadSourceData *data) g_free (data); } +/*this function removes of anything present after semicolon +in uri*/ + +static gchar* +remove_parameters_from_uri (gchar *uri) +{ + gchar **components; + gchar *new_uri = NULL; + + components = g_strsplit (uri, ";", 2); + if (components[0]) + new_uri = g_strdup (components[0]); + g_strfreev (components); + return new_uri; +} + static void load_source_auth_cb (EBook *book, EBookStatus status, gpointer closure) { @@ -79,10 +95,11 @@ load_source_auth_cb (EBook *book, EBookStatus status, gpointer closure) } else { gchar *uri = e_source_get_uri (data->source); - - e_passwords_forget_password ("Addressbook", uri); + gchar *stripped_uri = remove_parameters_from_uri (uri); + e_passwords_forget_password ("Addressbook", stripped_uri); addressbook_authenticate (book, TRUE, data->source, load_source_auth_cb, closure); - + + g_free (stripped_uri); g_free (uri); return; } @@ -121,6 +138,10 @@ addressbook_authenticate (EBook *book, gboolean previous_failure, ESource *sourc const gchar *auth; const gchar *user; gchar *uri = e_source_get_uri (source); + gchar *stripped_uri = remove_parameters_from_uri (uri); + + g_free (uri); + uri = stripped_uri; password = e_passwords_get_password ("Addressbook", uri); -- cgit