- Update to 1.11.91
- Removed patch for RH bug #215634 (fixed upstream). - Removed patch for GNOME bug #466987 (fixed upstream).
This commit is contained in:
parent
e75bc9a95a
commit
3931730179
@ -1 +1 @@
|
|||||||
evolution-data-server-1.11.90.tar.bz2
|
evolution-data-server-1.11.91.tar.bz2
|
||||||
|
@ -1,95 +0,0 @@
|
|||||||
--- evolution-data-server-1.10.1/camel/camel-tcp-stream-ssl.c.camel-certdb-nss-cert-get 2007-04-09 08:42:48.000000000 -0400
|
|
||||||
+++ evolution-data-server-1.10.1/camel/camel-tcp-stream-ssl.c 2007-05-09 21:41:38.000000000 -0400
|
|
||||||
@@ -679,63 +679,47 @@
|
|
||||||
CamelCert *
|
|
||||||
camel_certdb_nss_cert_get(CamelCertDB *certdb, CERTCertificate *cert)
|
|
||||||
{
|
|
||||||
- char *fingerprint, *path;
|
|
||||||
+ char *fingerprint;
|
|
||||||
CamelCert *ccert;
|
|
||||||
- struct stat st;
|
|
||||||
- size_t nread;
|
|
||||||
- ssize_t n;
|
|
||||||
- int fd;
|
|
||||||
-
|
|
||||||
+
|
|
||||||
fingerprint = cert_fingerprint (cert);
|
|
||||||
ccert = camel_certdb_get_cert (certdb, fingerprint);
|
|
||||||
if (ccert == NULL) {
|
|
||||||
g_free (fingerprint);
|
|
||||||
return ccert;
|
|
||||||
}
|
|
||||||
-
|
|
||||||
+
|
|
||||||
if (ccert->rawcert == NULL) {
|
|
||||||
-#ifndef G_OS_WIN32
|
|
||||||
- path = g_strdup_printf ("%s/.camel_certs/%s", getenv ("HOME"), fingerprint);
|
|
||||||
-#else
|
|
||||||
- path = g_build_filename (g_get_home_dir (), ".camel_certs", fingerprint, NULL);
|
|
||||||
-#endif
|
|
||||||
- if (g_stat (path, &st) == -1
|
|
||||||
- || (fd = g_open (path, O_RDONLY | O_BINARY, 0)) == -1) {
|
|
||||||
- g_warning ("could not load cert %s: %s", path, strerror (errno));
|
|
||||||
- g_free (fingerprint);
|
|
||||||
- g_free (path);
|
|
||||||
- camel_cert_set_trust (certdb, ccert, CAMEL_CERT_TRUST_UNKNOWN);
|
|
||||||
+ GByteArray *array;
|
|
||||||
+ gchar *filename;
|
|
||||||
+ gchar *contents;
|
|
||||||
+ gsize length;
|
|
||||||
+ GError *error = NULL;
|
|
||||||
+
|
|
||||||
+ filename = g_build_filename (
|
|
||||||
+ g_get_home_dir (), ".camel_certs", fingerprint, NULL);
|
|
||||||
+ g_file_get_contents (filename, &contents, &length, &error);
|
|
||||||
+ if (error != NULL) {
|
|
||||||
+ g_warning (
|
|
||||||
+ "Could not load cert %s: %s",
|
|
||||||
+ filename, error->message);
|
|
||||||
+ g_error_free (error);
|
|
||||||
+
|
|
||||||
+ camel_cert_set_trust (
|
|
||||||
+ certdb, ccert, CAMEL_CERT_TRUST_UNKNOWN);
|
|
||||||
camel_certdb_touch (certdb);
|
|
||||||
-
|
|
||||||
- return ccert;
|
|
||||||
- }
|
|
||||||
- g_free(path);
|
|
||||||
-
|
|
||||||
- ccert->rawcert = g_byte_array_new ();
|
|
||||||
- g_byte_array_set_size (ccert->rawcert, st.st_size);
|
|
||||||
-
|
|
||||||
- nread = 0;
|
|
||||||
- do {
|
|
||||||
- do {
|
|
||||||
- n = read (fd, ccert->rawcert->data + nread, st.st_size - nread);
|
|
||||||
- } while (n == -1 && errno == EINTR);
|
|
||||||
-
|
|
||||||
- if (n > 0)
|
|
||||||
- nread += n;
|
|
||||||
- } while (nread < st.st_size && n != -1);
|
|
||||||
-
|
|
||||||
- close (fd);
|
|
||||||
-
|
|
||||||
- if (nread != st.st_size) {
|
|
||||||
- g_warning ("cert size read truncated %s: %u != %ld", path, nread, st.st_size);
|
|
||||||
- g_byte_array_free(ccert->rawcert, TRUE);
|
|
||||||
- ccert->rawcert = NULL;
|
|
||||||
- g_free(fingerprint);
|
|
||||||
- camel_cert_set_trust(certdb, ccert, CAMEL_CERT_TRUST_UNKNOWN);
|
|
||||||
- camel_certdb_touch(certdb);
|
|
||||||
+ g_free (fingerprint);
|
|
||||||
+ g_free (filename);
|
|
||||||
|
|
||||||
return ccert;
|
|
||||||
}
|
|
||||||
+ g_free (filename);
|
|
||||||
+
|
|
||||||
+ array = g_byte_array_sized_new (length);
|
|
||||||
+ g_byte_array_append (array, (guint8 *) contents, length);
|
|
||||||
+ g_free (contents);
|
|
||||||
+
|
|
||||||
+ ccert->rawcert = array;
|
|
||||||
}
|
|
||||||
|
|
||||||
g_free(fingerprint);
|
|
@ -1,72 +0,0 @@
|
|||||||
--- evolution-data-server-1.11.90/libdb/dbm/dbm.c.glibc-open 2007-07-05 02:02:46.000000000 -0400
|
|
||||||
+++ evolution-data-server-1.11.90/libdb/dbm/dbm.c 2007-08-15 12:45:08.000000000 -0400
|
|
||||||
@@ -240,7 +240,7 @@ __db_ndbm_open(file, oflags, mode)
|
|
||||||
if ((ret = dbp->set_pagesize(dbp, 4096)) != 0 ||
|
|
||||||
(ret = dbp->set_h_ffactor(dbp, 40)) != 0 ||
|
|
||||||
(ret = dbp->set_h_nelem(dbp, 1)) != 0 ||
|
|
||||||
- (ret = dbp->open(dbp, NULL,
|
|
||||||
+ (ret = (*dbp->open)(dbp, NULL,
|
|
||||||
path, NULL, DB_HASH, __db_oflags(oflags), mode)) != 0) {
|
|
||||||
__os_set_errno(ret);
|
|
||||||
return (NULL);
|
|
||||||
--- evolution-data-server-1.11.90/libedataserver/e-dbhash.c.glibc-open 2007-07-05 02:01:55.000000000 -0400
|
|
||||||
+++ evolution-data-server-1.11.90/libedataserver/e-dbhash.c 2007-08-15 12:45:08.000000000 -0400
|
|
||||||
@@ -33,9 +33,9 @@ e_dbhash_new (const char *filename)
|
|
||||||
return NULL;
|
|
||||||
}
|
|
||||||
|
|
||||||
- rv = db->open (db, NULL, filename, NULL, DB_HASH, 0, 0666);
|
|
||||||
+ rv = (*db->open) (db, NULL, filename, NULL, DB_HASH, 0, 0666);
|
|
||||||
if (rv != 0) {
|
|
||||||
- rv = db->open (db, NULL, filename, NULL, DB_HASH, DB_CREATE, 0666);
|
|
||||||
+ rv = (*db->open) (db, NULL, filename, NULL, DB_HASH, DB_CREATE, 0666);
|
|
||||||
|
|
||||||
if (rv != 0) {
|
|
||||||
db->close (db, 0);
|
|
||||||
--- evolution-data-server-1.11.90/addressbook/backends/file/e-book-backend-file.c.glibc-open 2007-08-15 12:54:20.000000000 -0400
|
|
||||||
+++ evolution-data-server-1.11.90/addressbook/backends/file/e-book-backend-file.c 2007-08-15 12:54:58.000000000 -0400
|
|
||||||
@@ -1100,7 +1100,7 @@ e_book_backend_file_load_source (EBookBa
|
|
||||||
(void *(*)(void *, size_t))g_try_realloc,
|
|
||||||
g_free);
|
|
||||||
|
|
||||||
- db_error = env->open (env, NULL, DB_CREATE | DB_INIT_MPOOL | DB_PRIVATE | DB_THREAD, 0);
|
|
||||||
+ db_error = (*env->open) (env, NULL, DB_CREATE | DB_INIT_MPOOL | DB_PRIVATE | DB_THREAD, 0);
|
|
||||||
if (db_error != 0) {
|
|
||||||
env->close(env, 0);
|
|
||||||
g_warning ("db_env_open failed with %s", db_strerror (db_error));
|
|
||||||
@@ -1125,7 +1125,7 @@ e_book_backend_file_load_source (EBookBa
|
|
||||||
return db_error_to_status (db_error);
|
|
||||||
}
|
|
||||||
|
|
||||||
- db_error = db->open (db, NULL, filename, NULL, DB_HASH, DB_THREAD, 0666);
|
|
||||||
+ db_error = (*db->open) (db, NULL, filename, NULL, DB_HASH, DB_THREAD, 0666);
|
|
||||||
|
|
||||||
if (db_error == DB_OLD_VERSION) {
|
|
||||||
db_error = e_db3_utils_upgrade_format (filename);
|
|
||||||
@@ -1137,7 +1137,7 @@ e_book_backend_file_load_source (EBookBa
|
|
||||||
return db_error_to_status (db_error);
|
|
||||||
}
|
|
||||||
|
|
||||||
- db_error = db->open (db, NULL, filename, NULL, DB_HASH, DB_THREAD, 0666);
|
|
||||||
+ db_error = (*db->open) (db, NULL, filename, NULL, DB_HASH, DB_THREAD, 0666);
|
|
||||||
}
|
|
||||||
|
|
||||||
bf->priv->file_db = db;
|
|
||||||
@@ -1154,7 +1154,7 @@ e_book_backend_file_load_source (EBookBa
|
|
||||||
g_free (filename);
|
|
||||||
return GNOME_Evolution_Addressbook_OtherError;
|
|
||||||
}
|
|
||||||
- db_error = db->open (db, NULL, filename, NULL, DB_HASH, DB_RDONLY | DB_THREAD, 0666);
|
|
||||||
+ db_error = (*db->open) (db, NULL, filename, NULL, DB_HASH, DB_RDONLY | DB_THREAD, 0666);
|
|
||||||
|
|
||||||
if (db_error != 0 && !only_if_exists) {
|
|
||||||
int rv;
|
|
||||||
@@ -1181,7 +1181,7 @@ e_book_backend_file_load_source (EBookBa
|
|
||||||
return GNOME_Evolution_Addressbook_OtherError;
|
|
||||||
}
|
|
||||||
|
|
||||||
- db_error = db->open (db, NULL, filename, NULL, DB_HASH, DB_CREATE | DB_THREAD, 0666);
|
|
||||||
+ db_error = (*db->open) (db, NULL, filename, NULL, DB_HASH, DB_CREATE | DB_THREAD, 0666);
|
|
||||||
if (db_error != 0) {
|
|
||||||
db->close (db, 0);
|
|
||||||
g_warning ("db->open (... DB_CREATE ...) failed with %s", db_strerror (db_error));
|
|
@ -1,104 +1,5 @@
|
|||||||
--- evolution-data-server-1.11.90/libedataserverui/e-passwords.h.e-passwords 2007-07-05 02:01:52.000000000 -0400
|
--- evolution-data-server-1.11.91/libedataserverui/e-passwords.c.e-passwords 2007-08-24 08:48:15.000000000 +0200
|
||||||
+++ evolution-data-server-1.11.90/libedataserverui/e-passwords.h 2007-08-13 16:52:07.000000000 -0400
|
+++ evolution-data-server-1.11.91/libedataserverui/e-passwords.c 2007-08-28 15:25:45.000000000 +0200
|
||||||
@@ -28,45 +28,65 @@
|
|
||||||
|
|
||||||
G_BEGIN_DECLS
|
|
||||||
|
|
||||||
-/*
|
|
||||||
- initialization is now implicit when you call any of the functions
|
|
||||||
- below, although this is only correct if the functions are called
|
|
||||||
- from the main thread.
|
|
||||||
-
|
|
||||||
- e_passwords_shutdown should be called at exit time to synch the
|
|
||||||
- password on-disk storage, and to free up in-memory storage. */
|
|
||||||
-void e_passwords_init (void);
|
|
||||||
-
|
|
||||||
-void e_passwords_shutdown (void);
|
|
||||||
-void e_passwords_cancel(void);
|
|
||||||
-void e_passwords_set_online(int state);
|
|
||||||
-void e_passwords_remember_password (const char *component, const char *key);
|
|
||||||
-void e_passwords_add_password (const char *key, const char *passwd);
|
|
||||||
-char *e_passwords_get_password (const char *component, const char *key);
|
|
||||||
-void e_passwords_forget_password (const char *component, const char *key);
|
|
||||||
-void e_passwords_forget_passwords (void);
|
|
||||||
-void e_passwords_clear_passwords (const char *component);
|
|
||||||
-
|
|
||||||
+/**
|
|
||||||
+ * EPasswordsRememberType:
|
|
||||||
+ * @E_PASSWORDS_REMEMBER_NEVER:
|
|
||||||
+ * Do not remember the password.
|
|
||||||
+ * @E_PASSWORDS_REMEMBER_SESSION:
|
|
||||||
+ * Remember the password for this session only.
|
|
||||||
+ * @E_PASSWORDS_REMEMBER_FOREVER:
|
|
||||||
+ * Remember the password across multiple sessions.
|
|
||||||
+ * @E_PASSWORDS_REMEMBER_MASK:
|
|
||||||
+ * Mask value separates the mutually-exclusive values
|
|
||||||
+ * of the enumeration from the flags.
|
|
||||||
+ * @E_PASSWORDS_SECRET:
|
|
||||||
+ * Do not show the password as it's being typed.
|
|
||||||
+ * @E_PASSWORDS_REPROMPT:
|
|
||||||
+ * Populate the dialog with the current password (if one exists).
|
|
||||||
+ * @E_PASSWORDS_ONLINE:
|
|
||||||
+ * Only prompt the user for a password if we're online.
|
|
||||||
+ * @E_PASSWORDS_DISABLE_REMEMBER:
|
|
||||||
+ * Disable the "remember password" option on the dialog.
|
|
||||||
+ * @E_PASSWORDS_PASSPHRASE:
|
|
||||||
+ * Ask for a passphrase instead of a password.
|
|
||||||
+ **/
|
|
||||||
typedef enum {
|
|
||||||
E_PASSWORDS_REMEMBER_NEVER,
|
|
||||||
E_PASSWORDS_REMEMBER_SESSION,
|
|
||||||
E_PASSWORDS_REMEMBER_FOREVER,
|
|
||||||
E_PASSWORDS_REMEMBER_MASK = 0xf,
|
|
||||||
|
|
||||||
- /* option bits */
|
|
||||||
- E_PASSWORDS_SECRET = 1<<8,
|
|
||||||
- E_PASSWORDS_REPROMPT = 1<<9,
|
|
||||||
- E_PASSWORDS_ONLINE = 1<<10, /* only ask if we're online */
|
|
||||||
- E_PASSWORDS_DISABLE_REMEMBER = 1<<11, /* disable the 'remember password' checkbox */
|
|
||||||
- E_PASSWORDS_PASSPHRASE = 1<<12, /* We are asking a passphrase */
|
|
||||||
+ /* flags */
|
|
||||||
+ E_PASSWORDS_SECRET = 1 << 8,
|
|
||||||
+ E_PASSWORDS_REPROMPT = 1 << 9,
|
|
||||||
+ E_PASSWORDS_ONLINE = 1 << 10,
|
|
||||||
+ E_PASSWORDS_DISABLE_REMEMBER = 1 << 11,
|
|
||||||
+ E_PASSWORDS_PASSPHRASE = 1 << 12,
|
|
||||||
} EPasswordsRememberType;
|
|
||||||
|
|
||||||
-char * e_passwords_ask_password (const char *title,
|
|
||||||
- const char*component_name, const char *key,
|
|
||||||
- const char *prompt,
|
|
||||||
- EPasswordsRememberType remember_type,
|
|
||||||
- gboolean *remember,
|
|
||||||
- GtkWindow *parent);
|
|
||||||
+#ifndef EDS_DISABLE_DEPRECATED
|
|
||||||
+void e_passwords_init (void);
|
|
||||||
+void e_passwords_shutdown (void);
|
|
||||||
+void e_passwords_cancel (void);
|
|
||||||
+#endif
|
|
||||||
+void e_passwords_set_online (gboolean online);
|
|
||||||
+void e_passwords_remember_password (const gchar *component,
|
|
||||||
+ const gchar *key);
|
|
||||||
+void e_passwords_add_password (const gchar *key,
|
|
||||||
+ const gchar *password);
|
|
||||||
+gchar * e_passwords_get_password (const gchar *component,
|
|
||||||
+ const gchar *key);
|
|
||||||
+void e_passwords_forget_password (const gchar *component,
|
|
||||||
+ const gchar *key);
|
|
||||||
+void e_passwords_forget_passwords (void);
|
|
||||||
+void e_passwords_clear_passwords (const gchar *component);
|
|
||||||
+gchar * e_passwords_ask_password (const gchar *title,
|
|
||||||
+ const gchar *component,
|
|
||||||
+ const gchar *key,
|
|
||||||
+ const gchar *prompt,
|
|
||||||
+ EPasswordsRememberType remember_type,
|
|
||||||
+ gboolean *remember,
|
|
||||||
+ GtkWindow *parent);
|
|
||||||
|
|
||||||
G_END_DECLS
|
|
||||||
|
|
||||||
--- evolution-data-server-1.11.90/libedataserverui/e-passwords.c.e-passwords 2007-08-12 23:59:40.000000000 -0400
|
|
||||||
+++ evolution-data-server-1.11.90/libedataserverui/e-passwords.c 2007-08-13 16:52:07.000000000 -0400
|
|
||||||
@@ -23,18 +23,29 @@
|
@@ -23,18 +23,29 @@
|
||||||
*/
|
*/
|
||||||
|
|
||||||
@ -622,8 +523,8 @@
|
|||||||
+ep_clear_passwords_keyring (EPassMsg *msg)
|
+ep_clear_passwords_keyring (EPassMsg *msg)
|
||||||
{
|
{
|
||||||
GnomeKeyringAttributeList *attributes;
|
GnomeKeyringAttributeList *attributes;
|
||||||
GnomeKeyringAttribute attribute;
|
GnomeKeyringResult result;
|
||||||
@@ -205,11 +438,8 @@ ep_clear_passwords_keyring(EPassMsg *msg
|
@@ -203,11 +436,8 @@ ep_clear_passwords_keyring(EPassMsg *msg
|
||||||
|
|
||||||
result = gnome_keyring_get_default_keyring_sync (&default_keyring);
|
result = gnome_keyring_get_default_keyring_sync (&default_keyring);
|
||||||
if (!default_keyring) {
|
if (!default_keyring) {
|
||||||
@ -637,7 +538,7 @@
|
|||||||
default_keyring = g_strdup ("default");
|
default_keyring = g_strdup ("default");
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -239,38 +469,44 @@ ep_clear_passwords_keyring(EPassMsg *msg
|
@@ -232,38 +462,44 @@ ep_clear_passwords_keyring(EPassMsg *msg
|
||||||
}
|
}
|
||||||
|
|
||||||
g_free (default_keyring);
|
g_free (default_keyring);
|
||||||
@ -699,8 +600,8 @@
|
|||||||
+ep_forget_passwords_keyring (EPassMsg *msg)
|
+ep_forget_passwords_keyring (EPassMsg *msg)
|
||||||
{
|
{
|
||||||
GnomeKeyringAttributeList *attributes;
|
GnomeKeyringAttributeList *attributes;
|
||||||
GnomeKeyringAttribute attribute;
|
GnomeKeyringResult result;
|
||||||
@@ -281,11 +517,8 @@ ep_forget_passwords_keyring(EPassMsg *ms
|
@@ -272,11 +508,8 @@ ep_forget_passwords_keyring(EPassMsg *ms
|
||||||
|
|
||||||
result = gnome_keyring_get_default_keyring_sync (&default_keyring);
|
result = gnome_keyring_get_default_keyring_sync (&default_keyring);
|
||||||
if (!default_keyring) {
|
if (!default_keyring) {
|
||||||
@ -714,7 +615,7 @@
|
|||||||
default_keyring = g_strdup ("default");
|
default_keyring = g_strdup ("default");
|
||||||
}
|
}
|
||||||
d(g_print("Get Default %d\n", result));
|
d(g_print("Get Default %d\n", result));
|
||||||
@@ -316,69 +549,54 @@ ep_forget_passwords_keyring(EPassMsg *ms
|
@@ -301,68 +534,53 @@ ep_forget_passwords_keyring(EPassMsg *ms
|
||||||
g_free (default_keyring);
|
g_free (default_keyring);
|
||||||
|
|
||||||
/* free up the session passwords */
|
/* free up the session passwords */
|
||||||
@ -804,16 +705,15 @@
|
|||||||
+ if (value != NULL) {
|
+ if (value != NULL) {
|
||||||
/* add it to the on-disk cache of passwords */
|
/* add it to the on-disk cache of passwords */
|
||||||
GnomeKeyringAttributeList *attributes;
|
GnomeKeyringAttributeList *attributes;
|
||||||
GnomeKeyringAttribute attribute;
|
|
||||||
GnomeKeyringResult result;
|
GnomeKeyringResult result;
|
||||||
- EUri *uri = e_uri_new (okey);
|
- EUri *uri = e_uri_new (okey);
|
||||||
+ EUri *uri = e_uri_new (msg->key);
|
+ EUri *uri = e_uri_new (msg->key);
|
||||||
guint32 item_id;
|
guint32 item_id;
|
||||||
|
|
||||||
if (!strcmp (uri->protocol, "ldap") && !uri->user) {
|
if (!strcmp (uri->protocol, "ldap") && !uri->user) {
|
||||||
@@ -419,48 +637,48 @@ ep_remember_password_keyring(EPassMsg *m
|
@@ -394,48 +612,48 @@ ep_remember_password_keyring(EPassMsg *m
|
||||||
|
gnome_keyring_attribute_list_free (attributes);
|
||||||
|
|
||||||
d(g_print("Remember %s: %d/%d\n", msg->key, result, item_id));
|
|
||||||
/* now remove it from our session hash */
|
/* now remove it from our session hash */
|
||||||
- g_hash_table_remove (passwords, msg->key);
|
- g_hash_table_remove (passwords, msg->key);
|
||||||
- g_free (okey);
|
- g_free (okey);
|
||||||
@ -889,7 +789,7 @@
|
|||||||
}
|
}
|
||||||
|
|
||||||
#ifdef WITH_GNOME_KEYRING
|
#ifdef WITH_GNOME_KEYRING
|
||||||
@@ -472,7 +690,6 @@ ep_forget_password_keyring (EPassMsg *ms
|
@@ -446,7 +664,6 @@ ep_forget_password_keyring (EPassMsg *ms
|
||||||
GnomeKeyringResult result;
|
GnomeKeyringResult result;
|
||||||
GList *matches = NULL, *tmp;
|
GList *matches = NULL, *tmp;
|
||||||
char *default_keyring = NULL;
|
char *default_keyring = NULL;
|
||||||
@ -897,7 +797,7 @@
|
|||||||
EUri *uri = e_uri_new (msg->key);
|
EUri *uri = e_uri_new (msg->key);
|
||||||
|
|
||||||
if (!strcmp (uri->protocol, "ldap") && !uri->user) {
|
if (!strcmp (uri->protocol, "ldap") && !uri->user) {
|
||||||
@@ -486,12 +703,7 @@ ep_forget_password_keyring (EPassMsg *ms
|
@@ -460,12 +677,7 @@ ep_forget_password_keyring (EPassMsg *ms
|
||||||
uri->user = keycopy;
|
uri->user = keycopy;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -911,7 +811,7 @@
|
|||||||
|
|
||||||
if (!uri->host && !uri->user)
|
if (!uri->host && !uri->user)
|
||||||
/* No need to remove from keyring for pass phrases */
|
/* No need to remove from keyring for pass phrases */
|
||||||
@@ -563,36 +775,45 @@ ep_forget_password_keyring (EPassMsg *ms
|
@@ -524,36 +736,45 @@ ep_forget_password_keyring (EPassMsg *ms
|
||||||
g_free (default_keyring);
|
g_free (default_keyring);
|
||||||
|
|
||||||
exit:
|
exit:
|
||||||
@ -930,25 +830,14 @@
|
|||||||
- char *path;
|
- char *path;
|
||||||
+ gchar *group, *key;
|
+ gchar *group, *key;
|
||||||
+ GError *error = NULL;
|
+ GError *error = NULL;
|
||||||
+
|
|
||||||
+ g_hash_table_remove (password_cache, msg->key);
|
|
||||||
+
|
|
||||||
+ group = ep_key_file_get_group (msg->component);
|
|
||||||
+ key = ep_key_file_normalize_key (msg->key);
|
|
||||||
|
|
||||||
- if (g_hash_table_lookup_extended (passwords, msg->key, &okey, &value)) {
|
- if (g_hash_table_lookup_extended (passwords, msg->key, &okey, &value)) {
|
||||||
- g_hash_table_remove (passwords, msg->key);
|
- g_hash_table_remove (passwords, msg->key);
|
||||||
- memset (value, 0, strlen (value));
|
- memset (value, 0, strlen (value));
|
||||||
- g_free (okey);
|
- g_free (okey);
|
||||||
- g_free (value);
|
- g_free (value);
|
||||||
+ g_key_file_remove_key (key_file, group, key, &error);
|
- }
|
||||||
+ if (error == NULL)
|
-
|
||||||
+ ep_key_file_save ();
|
|
||||||
+ else {
|
|
||||||
+ g_warning ("%s", error->message);
|
|
||||||
+ g_error_free (error);
|
|
||||||
}
|
|
||||||
|
|
||||||
- /* clear it in the on disk db */
|
- /* clear it in the on disk db */
|
||||||
- path = password_path (msg->component, msg->key);
|
- path = password_path (msg->component, msg->key);
|
||||||
- gnome_config_private_clean_key (path);
|
- gnome_config_private_clean_key (path);
|
||||||
@ -957,6 +846,19 @@
|
|||||||
-
|
-
|
||||||
- if (!msg->noreply)
|
- if (!msg->noreply)
|
||||||
- e_msgport_reply(&msg->msg);
|
- e_msgport_reply(&msg->msg);
|
||||||
|
+ g_hash_table_remove (password_cache, msg->key);
|
||||||
|
+
|
||||||
|
+ group = ep_key_file_get_group (msg->component);
|
||||||
|
+ key = ep_key_file_normalize_key (msg->key);
|
||||||
|
+
|
||||||
|
+ g_key_file_remove_key (key_file, group, key, &error);
|
||||||
|
+ if (error == NULL)
|
||||||
|
+ ep_key_file_save ();
|
||||||
|
+ else {
|
||||||
|
+ g_warning ("%s", error->message);
|
||||||
|
+ g_error_free (error);
|
||||||
|
+ }
|
||||||
|
+
|
||||||
+ g_free (group);
|
+ g_free (group);
|
||||||
+ g_free (key);
|
+ g_free (key);
|
||||||
}
|
}
|
||||||
@ -976,9 +878,9 @@
|
|||||||
|
|
||||||
#ifdef WITH_GNOME_KEYRING
|
#ifdef WITH_GNOME_KEYRING
|
||||||
static void
|
static void
|
||||||
@@ -602,11 +823,11 @@ ep_get_password_keyring (EPassMsg *msg)
|
@@ -562,11 +783,11 @@ ep_get_password_keyring (EPassMsg *msg)
|
||||||
|
char *passwd;
|
||||||
GnomeKeyringAttributeList *attributes;
|
GnomeKeyringAttributeList *attributes;
|
||||||
GnomeKeyringAttribute attribute;
|
|
||||||
GnomeKeyringResult result;
|
GnomeKeyringResult result;
|
||||||
- GList *matches = NULL, *tmp;
|
- GList *matches = NULL, *tmp;
|
||||||
+ GList *matches = NULL, *tmp;
|
+ GList *matches = NULL, *tmp;
|
||||||
@ -991,7 +893,7 @@
|
|||||||
} else {
|
} else {
|
||||||
EUri *uri = e_uri_new (msg->key);
|
EUri *uri = e_uri_new (msg->key);
|
||||||
|
|
||||||
@@ -683,288 +904,154 @@ ep_get_password_keyring (EPassMsg *msg)
|
@@ -630,288 +851,154 @@ ep_get_password_keyring (EPassMsg *msg)
|
||||||
|
|
||||||
e_uri_free (uri);
|
e_uri_free (uri);
|
||||||
}
|
}
|
||||||
@ -1369,7 +1271,7 @@
|
|||||||
*
|
*
|
||||||
* Set the offline-state of the application. This is a work-around
|
* Set the offline-state of the application. This is a work-around
|
||||||
* for having the backends fully offline aware, and returns a
|
* for having the backends fully offline aware, and returns a
|
||||||
@@ -973,10 +1060,11 @@ e_passwords_shutdown (void)
|
@@ -920,10 +1007,11 @@ e_passwords_shutdown (void)
|
||||||
* FIXME: This is not a permanent api, review post 2.0.
|
* FIXME: This is not a permanent api, review post 2.0.
|
||||||
**/
|
**/
|
||||||
void
|
void
|
||||||
@ -1384,7 +1286,7 @@
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -987,151 +1075,138 @@ e_passwords_set_online(int state)
|
@@ -934,151 +1022,138 @@ e_passwords_set_online(int state)
|
||||||
void
|
void
|
||||||
e_passwords_forget_passwords (void)
|
e_passwords_forget_passwords (void)
|
||||||
{
|
{
|
||||||
@ -1590,7 +1492,7 @@
|
|||||||
* @prompt: prompt string
|
* @prompt: prompt string
|
||||||
* @type: whether or not to offer to remember the password,
|
* @type: whether or not to offer to remember the password,
|
||||||
* and for how long.
|
* and for how long.
|
||||||
@@ -1146,241 +1221,44 @@ e_passwords_add_password (const char *ke
|
@@ -1093,241 +1168,44 @@ e_passwords_add_password (const char *ke
|
||||||
* return value is non-%NULL and @remember_type is not
|
* return value is non-%NULL and @remember_type is not
|
||||||
* E_PASSWORDS_DO_NOT_REMEMBER.
|
* E_PASSWORDS_DO_NOT_REMEMBER.
|
||||||
**/
|
**/
|
||||||
@ -1860,8 +1762,107 @@
|
|||||||
- return (char *)plain;
|
- return (char *)plain;
|
||||||
+ return password;
|
+ return password;
|
||||||
}
|
}
|
||||||
--- evolution-data-server-1.11.90/libedataserver/e-msgport.h.e-passwords 2007-07-05 02:01:55.000000000 -0400
|
--- evolution-data-server-1.11.91/libedataserverui/e-passwords.h.e-passwords 2007-07-05 08:01:52.000000000 +0200
|
||||||
+++ evolution-data-server-1.11.90/libedataserver/e-msgport.h 2007-08-13 16:52:07.000000000 -0400
|
+++ evolution-data-server-1.11.91/libedataserverui/e-passwords.h 2007-08-28 15:32:45.000000000 +0200
|
||||||
|
@@ -28,45 +28,65 @@
|
||||||
|
|
||||||
|
G_BEGIN_DECLS
|
||||||
|
|
||||||
|
-/*
|
||||||
|
- initialization is now implicit when you call any of the functions
|
||||||
|
- below, although this is only correct if the functions are called
|
||||||
|
- from the main thread.
|
||||||
|
-
|
||||||
|
- e_passwords_shutdown should be called at exit time to synch the
|
||||||
|
- password on-disk storage, and to free up in-memory storage. */
|
||||||
|
-void e_passwords_init (void);
|
||||||
|
-
|
||||||
|
-void e_passwords_shutdown (void);
|
||||||
|
-void e_passwords_cancel(void);
|
||||||
|
-void e_passwords_set_online(int state);
|
||||||
|
-void e_passwords_remember_password (const char *component, const char *key);
|
||||||
|
-void e_passwords_add_password (const char *key, const char *passwd);
|
||||||
|
-char *e_passwords_get_password (const char *component, const char *key);
|
||||||
|
-void e_passwords_forget_password (const char *component, const char *key);
|
||||||
|
-void e_passwords_forget_passwords (void);
|
||||||
|
-void e_passwords_clear_passwords (const char *component);
|
||||||
|
-
|
||||||
|
+/**
|
||||||
|
+ * EPasswordsRememberType:
|
||||||
|
+ * @E_PASSWORDS_REMEMBER_NEVER:
|
||||||
|
+ * Do not remember the password.
|
||||||
|
+ * @E_PASSWORDS_REMEMBER_SESSION:
|
||||||
|
+ * Remember the password for this session only.
|
||||||
|
+ * @E_PASSWORDS_REMEMBER_FOREVER:
|
||||||
|
+ * Remember the password across multiple sessions.
|
||||||
|
+ * @E_PASSWORDS_REMEMBER_MASK:
|
||||||
|
+ * Mask value separates the mutually-exclusive values
|
||||||
|
+ * of the enumeration from the flags.
|
||||||
|
+ * @E_PASSWORDS_SECRET:
|
||||||
|
+ * Do not show the password as it's being typed.
|
||||||
|
+ * @E_PASSWORDS_REPROMPT:
|
||||||
|
+ * Populate the dialog with the current password (if one exists).
|
||||||
|
+ * @E_PASSWORDS_ONLINE:
|
||||||
|
+ * Only prompt the user for a password if we're online.
|
||||||
|
+ * @E_PASSWORDS_DISABLE_REMEMBER:
|
||||||
|
+ * Disable the "remember password" option on the dialog.
|
||||||
|
+ * @E_PASSWORDS_PASSPHRASE:
|
||||||
|
+ * Ask for a passphrase instead of a password.
|
||||||
|
+ **/
|
||||||
|
typedef enum {
|
||||||
|
E_PASSWORDS_REMEMBER_NEVER,
|
||||||
|
E_PASSWORDS_REMEMBER_SESSION,
|
||||||
|
E_PASSWORDS_REMEMBER_FOREVER,
|
||||||
|
E_PASSWORDS_REMEMBER_MASK = 0xf,
|
||||||
|
|
||||||
|
- /* option bits */
|
||||||
|
- E_PASSWORDS_SECRET = 1<<8,
|
||||||
|
- E_PASSWORDS_REPROMPT = 1<<9,
|
||||||
|
- E_PASSWORDS_ONLINE = 1<<10, /* only ask if we're online */
|
||||||
|
- E_PASSWORDS_DISABLE_REMEMBER = 1<<11, /* disable the 'remember password' checkbox */
|
||||||
|
- E_PASSWORDS_PASSPHRASE = 1<<12, /* We are asking a passphrase */
|
||||||
|
+ /* flags */
|
||||||
|
+ E_PASSWORDS_SECRET = 1 << 8,
|
||||||
|
+ E_PASSWORDS_REPROMPT = 1 << 9,
|
||||||
|
+ E_PASSWORDS_ONLINE = 1 << 10,
|
||||||
|
+ E_PASSWORDS_DISABLE_REMEMBER = 1 << 11,
|
||||||
|
+ E_PASSWORDS_PASSPHRASE = 1 << 12,
|
||||||
|
} EPasswordsRememberType;
|
||||||
|
|
||||||
|
-char * e_passwords_ask_password (const char *title,
|
||||||
|
- const char*component_name, const char *key,
|
||||||
|
- const char *prompt,
|
||||||
|
- EPasswordsRememberType remember_type,
|
||||||
|
- gboolean *remember,
|
||||||
|
- GtkWindow *parent);
|
||||||
|
+#ifndef EDS_DISABLE_DEPRECATED
|
||||||
|
+void e_passwords_init (void);
|
||||||
|
+void e_passwords_shutdown (void);
|
||||||
|
+void e_passwords_cancel (void);
|
||||||
|
+#endif
|
||||||
|
+void e_passwords_set_online (gboolean online);
|
||||||
|
+void e_passwords_remember_password (const gchar *component,
|
||||||
|
+ const gchar *key);
|
||||||
|
+void e_passwords_add_password (const gchar *key,
|
||||||
|
+ const gchar *password);
|
||||||
|
+gchar * e_passwords_get_password (const gchar *component,
|
||||||
|
+ const gchar *key);
|
||||||
|
+void e_passwords_forget_password (const gchar *component,
|
||||||
|
+ const gchar *key);
|
||||||
|
+void e_passwords_forget_passwords (void);
|
||||||
|
+void e_passwords_clear_passwords (const gchar *component);
|
||||||
|
+gchar * e_passwords_ask_password (const gchar *title,
|
||||||
|
+ const gchar *component,
|
||||||
|
+ const gchar *key,
|
||||||
|
+ const gchar *prompt,
|
||||||
|
+ EPasswordsRememberType remember_type,
|
||||||
|
+ gboolean *remember,
|
||||||
|
+ GtkWindow *parent);
|
||||||
|
|
||||||
|
G_END_DECLS
|
||||||
|
|
||||||
|
--- evolution-data-server-1.11.91/libedataserver/e-msgport.h.e-passwords 2007-07-05 08:01:55.000000000 +0200
|
||||||
|
+++ evolution-data-server-1.11.91/libedataserver/e-msgport.h 2007-08-28 15:18:31.000000000 +0200
|
||||||
@@ -54,7 +54,7 @@ typedef struct _EMsgPort EMsgPort;
|
@@ -54,7 +54,7 @@ typedef struct _EMsgPort EMsgPort;
|
||||||
|
|
||||||
/* header for any message */
|
/* header for any message */
|
||||||
|
@ -26,8 +26,8 @@
|
|||||||
### Abstract ###
|
### Abstract ###
|
||||||
|
|
||||||
Name: evolution-data-server
|
Name: evolution-data-server
|
||||||
Version: 1.11.90
|
Version: 1.11.91
|
||||||
Release: 4%{?dist}
|
Release: 1%{?dist}
|
||||||
License: LGPL
|
License: LGPL
|
||||||
Group: System Environment/Libraries
|
Group: System Environment/Libraries
|
||||||
Summary: Backend data server for Evolution
|
Summary: Backend data server for Evolution
|
||||||
@ -58,14 +58,8 @@ Patch18: evolution-data-server-1.10.0-code-cleanup.patch
|
|||||||
# GNOME bug #373146
|
# GNOME bug #373146
|
||||||
Patch19: evolution-data-server-1.10.1-camel-folder-summary-crash.patch
|
Patch19: evolution-data-server-1.10.1-camel-folder-summary-crash.patch
|
||||||
|
|
||||||
# RH bug #215634
|
|
||||||
Patch20: evolution-data-server-1.10.1-camel-certdb-nss-cert-get.patch
|
|
||||||
|
|
||||||
# RH bug #243296
|
# RH bug #243296
|
||||||
Patch21: evolution-data-server-1.11.5-fix-64bit-acinclude.patch
|
Patch20: evolution-data-server-1.11.5-fix-64bit-acinclude.patch
|
||||||
|
|
||||||
# GNOME bug #466987
|
|
||||||
Patch22: evolution-data-server-1.11.90-glibc-open.patch
|
|
||||||
|
|
||||||
### Dependencies ###
|
### Dependencies ###
|
||||||
|
|
||||||
@ -154,9 +148,7 @@ evolution-data-server.
|
|||||||
%patch16 -p1 -b .e-passwords
|
%patch16 -p1 -b .e-passwords
|
||||||
%patch18 -p1 -b .code-cleanup
|
%patch18 -p1 -b .code-cleanup
|
||||||
%patch19 -p1 -b .camel-folder-symmary-crash
|
%patch19 -p1 -b .camel-folder-symmary-crash
|
||||||
%patch20 -p1 -b .camel-certdb-nss-cert-get
|
%patch20 -p1 -b .fix-64bit-acinclude
|
||||||
%patch21 -p1 -b .fix-64bit-acinclude
|
|
||||||
%patch22 -p1 -b .glibc-open
|
|
||||||
|
|
||||||
mkdir -p krb5-fakeprefix/include
|
mkdir -p krb5-fakeprefix/include
|
||||||
mkdir -p krb5-fakeprefix/lib
|
mkdir -p krb5-fakeprefix/lib
|
||||||
@ -389,6 +381,11 @@ rm -rf $RPM_BUILD_ROOT
|
|||||||
%{_libdir}/pkgconfig/libexchange-storage-%{eds_api_version}.pc
|
%{_libdir}/pkgconfig/libexchange-storage-%{eds_api_version}.pc
|
||||||
|
|
||||||
%changelog
|
%changelog
|
||||||
|
* Tue Aug 28 2007 Milan Crha <mcrha@redhat.com> - 1.11.91-1.fc8
|
||||||
|
- Update to 1.11.91
|
||||||
|
- Removed patch for RH bug #215634 (fixed upstream).
|
||||||
|
- Removed patch for GNOME bug #466987 (fixed upstream).
|
||||||
|
|
||||||
* Wed Aug 22 2007 Adam Jackson <ajax@redhat.com> 1.11.90-4.fc8
|
* Wed Aug 22 2007 Adam Jackson <ajax@redhat.com> 1.11.90-4.fc8
|
||||||
- Add Requires: glib2 >= 2.14.0, since it's in the buildroot now, and
|
- Add Requires: glib2 >= 2.14.0, since it's in the buildroot now, and
|
||||||
forcibly introduces deps on symbols that don't exist in 2.13. If
|
forcibly introduces deps on symbols that don't exist in 2.13. If
|
||||||
|
Loading…
Reference in New Issue
Block a user