Update to 2.91.0

This commit is contained in:
Milan Crha 2010-10-11 11:28:39 +02:00
parent 78830a8a23
commit cb00596d07
5 changed files with 15 additions and 150 deletions

1
.gitignore vendored
View File

@ -1,3 +1,4 @@
evolution-2.31.5.tar.bz2
/evolution-2.31.91.tar.bz2
/evolution-2.31.92.tar.bz2
/evolution-2.91.0.tar.bz2

View File

@ -1,137 +0,0 @@
From c33a84d443f6a340fc247531b6bc8c9997b52aba Mon Sep 17 00:00:00 2001
From: David Woodhouse <David.Woodhouse@intel.com>
Date: Mon, 13 Sep 2010 20:00:25 +0000
Subject: Bug 626066 - log in to NSS database on demand for changing trust
---
diff --git a/smime/gui/cert-trust-dialog.c b/smime/gui/cert-trust-dialog.c
index 9c87c66..66ce69b 100644
--- a/smime/gui/cert-trust-dialog.c
+++ b/smime/gui/cert-trust-dialog.c
@@ -73,7 +73,7 @@ ctd_response(GtkWidget *w, guint id, CertTrustDialogData *data)
e_cert_trust_add_peer_trust (&trust, FALSE,
gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON (data->trust_button)),
FALSE);
- CERT_ChangeCertTrust (CERT_GetDefaultCertDB(), icert, &trust);
+ e_cert_db_change_cert_trust (icert, &trust);
break;
case GTK_RESPONSE_ACCEPT: {
/* just *what on earth* was chris thinking here!?!?! copied from certificate-manager.c */
@@ -101,7 +101,7 @@ ctd_response(GtkWidget *w, guint id, CertTrustDialogData *data)
trust_email,
trust_objsign);
- CERT_ChangeCertTrust(CERT_GetDefaultCertDB(), icert, &trust);
+ e_cert_db_change_cert_trust (icert, &trust);
}
gtk_widget_destroy (dialog);
diff --git a/smime/gui/certificate-manager.c b/smime/gui/certificate-manager.c
index d0823b8..5a5b204 100644
--- a/smime/gui/certificate-manager.c
+++ b/smime/gui/certificate-manager.c
@@ -679,7 +679,7 @@ edit_ca (GtkWidget *widget, CertificateManagerData *cfm)
trust_email,
trust_objsign);
- CERT_ChangeCertTrust (CERT_GetDefaultCertDB(), icert, &trust);
+ e_cert_db_change_cert_trust (icert, &trust);
}
gtk_widget_destroy (dialog);
@@ -1097,18 +1097,13 @@ certificate_manager_config_new (EPreferencesWindow *window)
GtkWidget *parent;
GtkWidget *widget;
CertificateManagerData *cfm_data;
- PK11SlotInfo* slot;
- ECertDB *cert_db;
shell = e_preferences_window_get_shell (window);
g_return_val_if_fail (E_IS_SHELL (shell), NULL);
/* We need to peek the db here to make sure it (and NSS) are fully initialized. */
-
- cert_db = e_cert_db_peek();
- slot = PK11_GetInternalKeySlot();
- e_cert_db_login_to_slot(cert_db, slot);
+ e_cert_db_peek ();
cfm_data = g_new0 (CertificateManagerData, 1);
diff --git a/smime/lib/e-cert-db.c b/smime/lib/e-cert-db.c
index 2e23df2..48458fa 100644
--- a/smime/lib/e-cert-db.c
+++ b/smime/lib/e-cert-db.c
@@ -936,7 +936,18 @@ handle_ca_cert_download(ECertDB *cert_db, GList *certs, GError **error)
nickname,
&trust);
- if (srv != SECSuccess && PORT_GetError() != SEC_ERROR_TOKEN_NOT_LOGGED_IN) {
+ /*
+ If this fails with SEC_ERROR_TOKEN_NOT_LOGGED_IN, it seems
+ that the import *has* worked, but the setting of trust bits
+ failed -- so only set the trust. This *has* to be an NSS bug?
+ */
+ if (srv != SECSuccess &&
+ PORT_GetError () == SEC_ERROR_TOKEN_NOT_LOGGED_IN &&
+ e_cert_db_login_to_slot (NULL, PK11_GetInternalKeySlot()))
+ srv = CERT_ChangeCertTrust (CERT_GetDefaultCertDB (),
+ tmpCert, &trust);
+
+ if (srv != SECSuccess) {
set_nss_error (error);
return FALSE;
}
@@ -971,6 +982,27 @@ handle_ca_cert_download(ECertDB *cert_db, GList *certs, GError **error)
return TRUE;
}
}
+gboolean e_cert_db_change_cert_trust(CERTCertificate *cert, CERTCertTrust *trust)
+{
+ SECStatus srv;
+
+ srv = CERT_ChangeCertTrust (CERT_GetDefaultCertDB (),
+ cert, trust);
+ if (srv != SECSuccess &&
+ PORT_GetError () == SEC_ERROR_TOKEN_NOT_LOGGED_IN &&
+ e_cert_db_login_to_slot (NULL, PK11_GetInternalKeySlot()))
+ srv = CERT_ChangeCertTrust (CERT_GetDefaultCertDB (),
+ cert, trust);
+
+ if (srv != SECSuccess) {
+ glong err = PORT_GetError ();
+ g_warning ("CERT_ChangeCertTrust() failed: %s\n",
+ nss_error_to_string(err));
+ return FALSE;
+ }
+ return TRUE;
+}
+
/* deleting certificates */
gboolean
@@ -998,8 +1030,7 @@ e_cert_db_delete_cert (ECertDB *certdb,
CERTCertTrust trust;
e_cert_trust_init_with_values (&trust, 0, 0, 0);
- CERT_ChangeCertTrust(CERT_GetDefaultCertDB(),
- cert, &trust);
+ e_cert_db_change_cert_trust (cert, &trust);
}
return TRUE;
diff --git a/smime/lib/e-cert-db.h b/smime/lib/e-cert-db.h
index 7d5f185..6e1bc5a 100644
--- a/smime/lib/e-cert-db.h
+++ b/smime/lib/e-cert-db.h
@@ -142,4 +142,7 @@ gboolean e_cert_db_export_pkcs12_file (ECertDB *cert_db,
gboolean e_cert_db_login_to_slot (ECertDB *cert_db,
PK11SlotInfo *slot);
+gboolean e_cert_db_change_cert_trust (CERTCertificate *cert,
+ CERTCertTrust *trust);
+
#endif /* _E_CERT_DB_H_ */
--
cgit v0.8.3.1

View File

@ -1,6 +1,7 @@
--- evolution-2.9.1/calendar/gui/e-day-view.c.im-context-reset 2006-11-06 10:14:26.000000000 -0500
+++ evolution-2.9.1/calendar/gui/e-day-view.c 2006-11-06 10:15:39.000000000 -0500
@@ -6928,6 +6928,9 @@
diff -up evolution-2.91.0/calendar/gui/e-day-view.c.im-context-reset evolution-2.91.0/calendar/gui/e-day-view.c
--- evolution-2.91.0/calendar/gui/e-day-view.c.im-context-reset 2010-10-03 18:36:41.000000000 +0200
+++ evolution-2.91.0/calendar/gui/e-day-view.c 2010-10-11 11:24:30.000000000 +0200
@@ -6183,6 +6183,9 @@ e_day_view_start_editing_event (EDayView
if (!event->canvas_item)
return;
@ -9,4 +10,4 @@
+
/* We must grab the focus before setting the initial text, since
grabbing the focus will result in a call to
e_day_view_on_editing_started(), which will reset the text to get
e_day_view_on_editing_started (), which will reset the text to get

View File

@ -11,7 +11,7 @@
%define clutter_gtk_version 0.10
%define soup_version 2.4.0
%define evo_base_version 2.32
%define evo_base_version 2.92
%define last_anjal_version 0.3.2-3
%define last_libgal2_version 2:2.5.3-2
@ -28,14 +28,14 @@
### Abstract ###
Name: evolution
Version: 2.31.92
Release: 3%{?dist}
Version: 2.91.0
Release: 1%{?dist}
Group: Applications/Productivity
Summary: Mail and calendar client for GNOME
License: GPLv2+ and GFDL
URL: http://projects.gnome.org/evolution/
BuildRoot: %(mktemp -ud %{_tmppath}/%{name}-%{version}-%{release}-XXXXXX)
Source: http://download.gnome.org/sources/%{name}/2.31/%{name}-%{version}.tar.bz2
Source: http://download.gnome.org/sources/%{name}/2.91/%{name}-%{version}.tar.bz2
Obsoletes: anjal <= %{last_anjal_version}
Obsoletes: libgal2 <= %{last_libgal2_version}
@ -51,9 +51,6 @@ Patch12: evolution-2.9.1-im-context-reset.patch
# RH bug #589555
Patch13: evolution-2.30.1-help-contents.patch
# Gnome bug #626066
Patch14: evolution-2.31.92-gn626066.patch
## Dependencies ###
Requires(pre): GConf2
@ -207,7 +204,6 @@ This package contains the plugin to import Microsoft Personal Storage Table
%patch10 -p1 -b .ldaphack
%patch12 -p1 -b .im-context-reset
%patch13 -p1 -b .help-contents
%patch14 -p1 -b .gn626066
mkdir -p krb5-fakeprefix/include
mkdir -p krb5-fakeprefix/lib
@ -616,6 +612,10 @@ rm -rf $RPM_BUILD_ROOT
%endif
%changelog
* Mon Oct 11 2010 Milan Crha <mcrha@redhat.com> - 2.91.0-1
- Update to 2.91.0
- Remove patch for Gnome bug #626066 (fixed upstream)
* Wed Sep 29 2010 jkeating - 2.31.92-3
- Rebuilt for gcc bug 634757

View File

@ -1 +1 @@
90d84ddb24daecd27bc5b1553064bc46 evolution-2.31.92.tar.bz2
29cd32f9e9699d3ec757d7dff6b41b57 evolution-2.91.0.tar.bz2