From f9899d36ffcc500608ec3f60b1c190ccda3211e9e08fafd4cb9cb787726f2367 Mon Sep 17 00:00:00 2001 From: OBS User unknown Date: Thu, 24 Apr 2008 07:26:01 +0000 Subject: [PATCH] OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/evolution-data-server?expand=0&rev=28 --- ...connection-get-attachment-corruption.patch | 18 - ...3-eds-fix-authenticated-proxy-support.diff | 539 +++++++++--------- evolution-data-server-2.22.0.tar.bz2 | 3 - evolution-data-server-2.22.1.tar.bz2 | 3 + evolution-data-server.changes | 20 + evolution-data-server.spec | 41 +- 6 files changed, 319 insertions(+), 305 deletions(-) delete mode 100644 bgo-522389-e-gw-connection-get-attachment-corruption.patch rename bnc-174255-honour-system-proxy-settings.patch => bnc-188523-eds-fix-authenticated-proxy-support.diff (83%) delete mode 100644 evolution-data-server-2.22.0.tar.bz2 create mode 100644 evolution-data-server-2.22.1.tar.bz2 diff --git a/bgo-522389-e-gw-connection-get-attachment-corruption.patch b/bgo-522389-e-gw-connection-get-attachment-corruption.patch deleted file mode 100644 index 7d73aa7..0000000 --- a/bgo-522389-e-gw-connection-get-attachment-corruption.patch +++ /dev/null @@ -1,18 +0,0 @@ -Fixes crash on some attachments in GroupWise on x86_64 caused by stack corruption. -http://bugzilla.gnome.org/show_bug.cgi?id=522389 - -e-gw-connection.c: In function 'e_gw_connection_get_attachment': -e-gw-connection.c:2649: warning: passing argument 2 of 'g_base64_decode' from incompatible pointer type - -================================================================================ ---- servers/groupwise/e-gw-connection.c -+++ servers/groupwise/e-gw-connection.c -@@ -2645,7 +2645,7 @@ - } - - if (buffer && buf_length) { -- int len = atoi (buf_length) ; -+ gsize len = atoi (buf_length) ; - *attachment = g_base64_decode (buffer,&len) ; - *attach_length = len ; - } diff --git a/bnc-174255-honour-system-proxy-settings.patch b/bnc-188523-eds-fix-authenticated-proxy-support.diff similarity index 83% rename from bnc-174255-honour-system-proxy-settings.patch rename to bnc-188523-eds-fix-authenticated-proxy-support.diff index 70c3af9..10b3616 100644 --- a/bnc-174255-honour-system-proxy-settings.patch +++ b/bnc-188523-eds-fix-authenticated-proxy-support.diff @@ -1,7 +1,243 @@ -=== added file 'libedataserver/e-proxy.c' ---- libedataserver/e-proxy.c 1970-01-01 00:00:00 +0000 -+++ libedataserver/e-proxy.c 2007-12-18 17:02:13 +0000 -@@ -0,0 +1,647 @@ +Index: servers/exchange/lib/e2k-context.c +=================================================================== +--- servers/exchange/lib/e2k-context.c (revision 8580) ++++ servers/exchange/lib/e2k-context.c (revision 8581) +@@ -48,6 +48,7 @@ + #include "e2k-utils.h" + #include "e2k-xml-utils.h" + ++#include + #include + #include + #include +@@ -98,6 +99,7 @@ + /* Forms-based authentication */ + char *cookie; + gboolean cookie_verified; ++ EProxy* proxy; + }; + + /* For operations with progress */ +@@ -107,6 +109,9 @@ + /* For soup sync session timeout */ + #define E2K_SOUP_SESSION_TIMEOUT 30 + ++/* Soup session proxy-uri property */ ++#define SOUP_SESSION_PROXY_URI "proxy-uri" ++ + #ifdef E2K_DEBUG + char *e2k_debug; + int e2k_debug_level; +@@ -124,8 +129,33 @@ + static gboolean do_notification (GIOChannel *source, GIOCondition condition, gpointer data); + + static void setup_message (SoupSession *session, SoupMessage *msg, SoupSocket *socket, gpointer user_data); ++static void proxy_settings_changed (EProxy *proxy, gpointer user_data); + ++ + static void ++proxy_settings_changed (EProxy *proxy, gpointer user_data) ++{ ++ SoupURI *proxy_uri = NULL; ++ E2kContext* ctx = (E2kContext *)user_data; ++ if (!ctx || !ctx->priv || ++ (!ctx->priv->session && !ctx->priv->async_session) || ++ (!ctx->priv->owa_uri)) ++ return; ++ ++ if (!e_proxy_require_proxy_for_uri (proxy, ctx->priv->owa_uri)) ++ proxy_uri = NULL; ++ else ++ proxy_uri = e_proxy_peek_uri (proxy); ++ ++ if (ctx->priv->session) ++ g_object_set (ctx->priv->session, SOUP_SESSION_PROXY_URI, ++ proxy_uri, NULL); ++ if (ctx->priv->async_session) ++ g_object_set (ctx->priv->async_session, SOUP_SESSION_PROXY_URI, ++ proxy_uri, NULL); ++} ++ ++static void + init (GObject *object) + { + E2kContext *ctx = E2K_CONTEXT (object); +@@ -135,6 +165,9 @@ + g_hash_table_new (g_str_hash, g_str_equal); + ctx->priv->subscriptions_by_uri = + g_hash_table_new (g_str_hash, g_str_equal); ++ ctx->priv->proxy = e_proxy_new (); ++ e_proxy_setup_proxy (ctx->priv->proxy); ++ g_signal_connect (ctx->priv->proxy, "changed", G_CALLBACK (proxy_settings_changed), ctx); + } + + static void +@@ -182,8 +215,13 @@ + g_free (ctx->priv->cookie); + g_free (ctx->priv->notification_uri); + ++ if (ctx->priv->proxy) { ++ g_object_unref (ctx->priv->proxy); ++ ctx->priv->proxy = NULL; ++ } + g_free (ctx->priv); + ctx->priv = NULL; ++ + } + + G_OBJECT_CLASS (parent_class)->dispose (object); +@@ -361,6 +399,7 @@ + const char *password) + { + guint timeout = E2K_SOUP_SESSION_TIMEOUT; ++ SoupURI* uri = NULL; + #ifdef E2K_DEBUG + SoupLogger *logger; + SoupLoggerLogLevel level; +@@ -395,9 +434,14 @@ + if (g_getenv ("SOUP_SESSION_TIMEOUT")) + timeout = atoi (g_getenv ("SOUP_SESSION_TIMEOUT")); + ++ /* Check do we need a proxy to contact the server? */ ++ if (e_proxy_require_proxy_for_uri (ctx->priv->proxy, ctx->priv->owa_uri)) ++ uri = e_proxy_peek_uri (ctx->priv->proxy); ++ + ctx->priv->session = soup_session_sync_new_with_options ( + SOUP_SESSION_USE_NTLM, !authmech || !strcmp (authmech, "NTLM"), + SOUP_SESSION_TIMEOUT, timeout, ++ SOUP_SESSION_PROXY_URI, uri, + NULL); + g_signal_connect (ctx->priv->session, "authenticate", + G_CALLBACK (session_authenticate), ctx); +@@ -406,7 +450,7 @@ + + ctx->priv->async_session = soup_session_async_new_with_options ( + SOUP_SESSION_USE_NTLM, !authmech || !strcmp (authmech, "NTLM"), +- NULL); ++ SOUP_SESSION_PROXY_URI, uri, NULL); + g_signal_connect (ctx->priv->async_session, "authenticate", + G_CALLBACK (session_authenticate), ctx); + g_signal_connect (ctx->priv->async_session, "request_started", +Index: servers/groupwise/Makefile.am +=================================================================== +--- servers/groupwise/Makefile.am (revision 8580) ++++ servers/groupwise/Makefile.am (revision 8581) +@@ -15,9 +15,10 @@ + $(E_DATA_SERVER_LIBS) + + soap_test_SOURCES = soap-test.c +-soap_test_LDADD = \ +- $(SOUP_LIBS) \ +- libegroupwise-1.2.la \ ++soap_test_LDADD = \ ++ $(top_builddir)/libedataserver/libedataserver-1.2.la \ ++ $(SOUP_LIBS) \ ++ libegroupwise-1.2.la \ + $(E_DATA_SERVER_LIBS) + + build-timestamp.h : $(top_builddir)/config.h +Index: servers/groupwise/e-gw-connection.c +=================================================================== +--- servers/groupwise/e-gw-connection.c (revision 8580) ++++ servers/groupwise/e-gw-connection.c (revision 8581) +@@ -27,6 +27,7 @@ + #include + #include + #include ++#include + #include + #include "soup-soap-message.h" + #include "e-gw-connection.h" +@@ -37,6 +38,9 @@ + /* For soup sync session timeout */ + #define GW_SOUP_SESSION_TIMEOUT 30 + ++/* Soup session proxy-uri property */ ++#define SOUP_SESSION_PROXY_URI "proxy-uri" ++ + static GObjectClass *parent_class = NULL; + static GHashTable *loaded_connections_permissions = NULL; + +@@ -57,8 +61,37 @@ + GList *book_list; + EGwSendOptions *opts; + GMutex *reauth_mutex; ++ EProxy *proxy; + }; + ++static void ++update_soup_session_proxy_settings (EProxy *proxy, SoupSession* session, ++ const char* uri) ++{ ++ SoupURI *proxy_uri = NULL; ++ ++ if (!session || !uri || !proxy) ++ return; ++ ++ if (e_proxy_require_proxy_for_uri (proxy, uri)) ++ proxy_uri = e_proxy_peek_uri (proxy); ++ ++ g_object_set (session, SOUP_SESSION_PROXY_URI, ++ proxy_uri, NULL); ++} ++ ++static void ++proxy_settings_changed (EProxy *proxy, gpointer user_data) ++{ ++ EGwConnection* conn = (EGwConnection *)user_data; ++ if (!conn || !conn->priv || !conn->priv->soup_session) ++ return; ++ ++ update_soup_session_proxy_settings (proxy, ++ conn->priv->soup_session, ++ conn->priv->uri); ++} ++ + static EGwConnectionStatus + reauthenticate (EGwConnection *cnc) + { +@@ -342,6 +375,11 @@ + g_free (priv->server_time) ; + priv->server_time = NULL ; + } ++ ++ if (priv->proxy) { ++ g_object_unref (priv->proxy); ++ priv->proxy = NULL; ++ } + } + + if (parent_class->dispose) +@@ -393,6 +431,11 @@ + if (g_getenv ("SOUP_SESSION_TIMEOUT")) + timeout = atoi (g_getenv ("SOUP_SESSION_TIMEOUT")); + ++ /* Initialize proxy settings */ ++ priv->proxy = e_proxy_new (); ++ e_proxy_setup_proxy (priv->proxy); ++ g_signal_connect (priv->proxy, "changed", G_CALLBACK (proxy_settings_changed), cnc); ++ + /* create the SoupSession for this connection */ + priv->soup_session = soup_session_sync_new_with_options (SOUP_SESSION_TIMEOUT, timeout, NULL); + priv->reauth_mutex = g_mutex_new (); +@@ -491,6 +534,12 @@ + /* not found, so create a new connection */ + cnc = g_object_new (E_TYPE_GW_CONNECTION, NULL); + ++ /* Set proxy details for the Soup session before any ++ communication. */ ++ update_soup_session_proxy_settings (cnc->priv->proxy, ++ cnc->priv->soup_session, ++ uri); ++ + msg = form_login_request (uri, username, password); + + /* send message to server */ +Index: libedataserver/e-proxy.c +=================================================================== +--- libedataserver/e-proxy.c (revision 0) ++++ libedataserver/e-proxy.c (revision 8581) +@@ -0,0 +1,649 @@ +/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*- */ +/* + * Authors: Jeffrey Stedfast @@ -48,20 +284,22 @@ +#define d(x) + +/* GConf paths and keys */ -+#define PATH_GCONF_GNOME_VFS "/system/http_proxy" -+#define KEY_GCONF_HTTP_PROXY_PORT (PATH_GCONF_GNOME_VFS "/" "port") -+#define KEY_GCONF_HTTP_PROXY_HOST (PATH_GCONF_GNOME_VFS "/" "host") ++#define PATH_GCONF_NETWORK_CONFIG "/apps/evolution/shell/network_config" ++#define KEY_GCONF_HTTP_PROXY_PORT (PATH_GCONF_NETWORK_CONFIG "/" "http_port") ++#define KEY_GCONF_HTTP_PROXY_HOST (PATH_GCONF_NETWORK_CONFIG "/" "http_host") ++#define KEY_GCONF_HTTPS_PROXY_PORT (PATH_GCONF_NETWORK_CONFIG "/" "secure_port") ++#define KEY_GCONF_HTTPS_PROXY_HOST (PATH_GCONF_NETWORK_CONFIG "/" "secure_host") ++#define KEY_GCONF_SOCKS_PROXY_PORT (PATH_GCONF_NETWORK_CONFIG "/" "socks_port") ++#define KEY_GCONF_SOCKS_PROXY_HOST (PATH_GCONF_NETWORK_CONFIG "/" "socks_host") ++#define KEY_GCONF_USE_HTTP_PROXY (PATH_GCONF_NETWORK_CONFIG "/" "use_http_proxy") ++#define KEY_GCONF_HTTP_AUTH_USER (PATH_GCONF_NETWORK_CONFIG "/" "authentication_user") ++#define KEY_GCONF_HTTP_AUTH_PW (PATH_GCONF_NETWORK_CONFIG "/" "authentication_password") ++#define KEY_GCONF_HTTP_USE_AUTH (PATH_GCONF_NETWORK_CONFIG "/" "use_authentication") + -+#define KEY_GCONF_USE_HTTP_PROXY (PATH_GCONF_GNOME_VFS "/" "use_http_proxy") -+ -+#define KEY_GCONF_HTTP_AUTH_USER (PATH_GCONF_GNOME_VFS "/" "authentication_user") -+#define KEY_GCONF_HTTP_AUTH_PW (PATH_GCONF_GNOME_VFS "/" "authentication_password") -+#define KEY_GCONF_HTTP_USE_AUTH (PATH_GCONF_GNOME_VFS "/" "use_authentication") -+ -+#define KEY_GCONF_HTTP_PROXY_IGNORE_HOSTS (PATH_GCONF_GNOME_VFS "/" "ignore_hosts") ++#define KEY_GCONF_HTTP_PROXY_IGNORE_HOSTS (PATH_GCONF_NETWORK_CONFIG "/" "ignore_hosts") + +struct _EProxyPrivate { -+ SoupUri* uri; ++ SoupURI* uri; + guint notify_id; /* conxn id of gconf_client_notify_add */ + GSList* ign_hosts; /* List of hostnames. (Strings) */ + GSList* ign_addrs; /* List of hostaddrs. (ProxyHostAddrs) */ @@ -231,7 +469,7 @@ + guint status; + + addr = soup_address_new (host, 0); -+ status = soup_address_resolve_sync (addr); ++ status = soup_address_resolve_sync (addr, NULL); + if (status == SOUP_STATUS_OK) { + gint addr_len; + struct sockaddr* s_addr = NULL; @@ -435,7 +673,7 @@ + } + + addr = soup_address_new (hostname, 0); -+ status = soup_address_resolve_sync (addr); ++ status = soup_address_resolve_sync (addr, NULL); + if (status == SOUP_STATUS_OK) { + gint addr_len; + struct sockaddr* s_addr = NULL; @@ -594,7 +832,7 @@ +{ + GConfClient *client; + -+ /* We get the gnome-vfs proxy keys here ++ /* We get the evolution-shell proxy keys here + set soup up to use the proxy, + and listen to any changes */ + @@ -604,12 +842,12 @@ + if (!proxy || !proxy->priv) + return; + -+ /* Listen to the changes in the gnome-vfs path */ -+ gconf_client_add_dir (client, PATH_GCONF_GNOME_VFS, ++ /* Listen to the changes in the evolution-shell path */ ++ gconf_client_add_dir (client, PATH_GCONF_NETWORK_CONFIG, + GCONF_CLIENT_PRELOAD_ONELEVEL, NULL); + + if (proxy->priv->notify_id == 0) -+ proxy->priv->notify_id = gconf_client_notify_add (client, PATH_GCONF_GNOME_VFS, ++ proxy->priv->notify_id = gconf_client_notify_add (client, PATH_GCONF_NETWORK_CONFIG, + ep_setting_changed, (gpointer)proxy, + NULL, NULL); + @@ -618,7 +856,7 @@ + g_object_unref (client); +} + -+SoupUri* ++SoupURI* +e_proxy_peek_uri (EProxy* proxy) +{ + if (!proxy || !proxy->priv) @@ -630,7 +868,7 @@ +gboolean +e_proxy_require_proxy_for_uri (EProxy* proxy, const char* uri) +{ -+ SoupUri *srv_uri = NULL; ++ SoupURI *srv_uri = NULL; + gboolean ret = FALSE; + + if (!uri || !proxy || !proxy->priv) @@ -649,10 +887,10 @@ + + return ret; +} - -=== added file 'libedataserver/e-proxy.h' ---- libedataserver/e-proxy.h 1970-01-01 00:00:00 +0000 -+++ libedataserver/e-proxy.h 2007-12-18 17:02:13 +0000 +Index: libedataserver/e-proxy.h +=================================================================== +--- libedataserver/e-proxy.h (revision 0) ++++ libedataserver/e-proxy.h (revision 8581) @@ -0,0 +1,63 @@ +/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*- */ +/* @@ -708,7 +946,7 @@ +}; + +EProxy* e_proxy_new (void); -+SoupUri* e_proxy_peek_uri (EProxy* proxy); ++SoupURI* e_proxy_peek_uri (EProxy* proxy); +void e_proxy_setup_proxy (EProxy* proxy); +GType e_proxy_get_type (void); +gboolean e_proxy_require_proxy_for_uri (EProxy *proxy, @@ -717,10 +955,10 @@ +G_END_DECLS + +#endif - -=== modified file 'libedataserver/Makefile.am' ---- libedataserver/Makefile.am 2007-12-18 16:36:30 +0000 -+++ libedataserver/Makefile.am 2007-12-18 17:02:13 +0000 +Index: libedataserver/Makefile.am +=================================================================== +--- libedataserver/Makefile.am (revision 8580) ++++ libedataserver/Makefile.am (revision 8581) @@ -7,7 +7,8 @@ -DE_DATA_SERVER_EXTENSIONDIR=\"$(extensiondir)\" \ -DE_DATA_SERVER_IMAGESDIR=\"$(imagesdir)\" \ @@ -757,240 +995,3 @@ e-sexp.h \ e-source-group.h \ e-source-list.h \ - -=== modified file 'servers/exchange/lib/e2k-context.c' ---- servers/exchange/lib/e2k-context.c 2007-12-18 16:36:30 +0000 -+++ servers/exchange/lib/e2k-context.c 2007-12-18 17:02:13 +0000 -@@ -48,6 +48,7 @@ - #include "e2k-utils.h" - #include "e2k-xml-utils.h" - -+#include - #include - #include - #include -@@ -103,6 +104,7 @@ - /* Forms-based authentication */ - char *cookie; - gboolean cookie_verified; -+ EProxy* proxy; - }; - - /* For operations with progress */ -@@ -112,6 +114,9 @@ - /* For soup sync session timeout */ - #define E2K_SOUP_SESSION_TIMEOUT 30 - -+/* Soup session proxy-uri property */ -+#define SOUP_SESSION_PROXY_URI "proxy-uri" -+ - #ifdef E2K_DEBUG - char *e2k_debug; - int e2k_debug_level; -@@ -122,6 +127,31 @@ - static gboolean do_notification (GIOChannel *source, GIOCondition condition, gpointer data); - - static void setup_message (SoupMessageFilter *filter, SoupMessage *msg); -+static void proxy_settings_changed (EProxy *proxy, gpointer user_data); -+ -+ -+static void -+proxy_settings_changed (EProxy *proxy, gpointer user_data) -+{ -+ SoupUri *proxy_uri = NULL; -+ E2kContext* ctx = (E2kContext *)user_data; -+ if (!ctx || !ctx->priv || -+ (!ctx->priv->session && !ctx->priv->async_session) || -+ (!ctx->priv->owa_uri)) -+ return; -+ -+ if (!e_proxy_require_proxy_for_uri (proxy, ctx->priv->owa_uri)) -+ proxy_uri = NULL; -+ else -+ proxy_uri = e_proxy_peek_uri (proxy); -+ -+ if (ctx->priv->session) -+ g_object_set (ctx->priv->session, SOUP_SESSION_PROXY_URI, -+ proxy_uri, NULL); -+ if (ctx->priv->async_session) -+ g_object_set (ctx->priv->async_session, SOUP_SESSION_PROXY_URI, -+ proxy_uri, NULL); -+} - - static void - init (GObject *object) -@@ -133,6 +163,9 @@ - g_hash_table_new (g_str_hash, g_str_equal); - ctx->priv->subscriptions_by_uri = - g_hash_table_new (g_str_hash, g_str_equal); -+ ctx->priv->proxy = e_proxy_new (); -+ e_proxy_setup_proxy (ctx->priv->proxy); -+ g_signal_connect (ctx->priv->proxy, "changed", G_CALLBACK (proxy_settings_changed), ctx); - } - - static void -@@ -179,8 +212,13 @@ - - g_free (ctx->priv->cookie); - -+ if (ctx->priv->proxy) { -+ g_object_unref (ctx->priv->proxy); -+ ctx->priv->proxy = NULL; -+ } - g_free (ctx->priv); - ctx->priv = NULL; -+ - } - - G_OBJECT_CLASS (parent_class)->dispose (object); -@@ -360,6 +398,7 @@ - const char *password) - { - guint timeout = E2K_SOUP_SESSION_TIMEOUT; -+ SoupUri* uri = NULL; - - g_return_if_fail (E2K_IS_CONTEXT (ctx)); - -@@ -390,9 +429,15 @@ - if (g_getenv ("SOUP_SESSION_TIMEOUT")) - timeout = atoi (g_getenv ("SOUP_SESSION_TIMEOUT")); - -+ /* Check do we need a proxy to contact the server? */ -+ if (e_proxy_require_proxy_for_uri (ctx->priv->proxy, ctx->priv->owa_uri)) -+ uri = e_proxy_peek_uri (ctx->priv->proxy); -+ -+ - ctx->priv->session = soup_session_sync_new_with_options ( - SOUP_SESSION_USE_NTLM, !authmech || !strcmp (authmech, "NTLM"), - SOUP_SESSION_TIMEOUT, timeout, -+ SOUP_SESSION_PROXY_URI, uri, - NULL); - g_signal_connect (ctx->priv->session, "authenticate", - G_CALLBACK (session_authenticate), ctx); -@@ -401,7 +446,7 @@ - - ctx->priv->async_session = soup_session_async_new_with_options ( - SOUP_SESSION_USE_NTLM, !authmech || !strcmp (authmech, "NTLM"), -- NULL); -+ SOUP_SESSION_PROXY_URI, uri, NULL); - g_signal_connect (ctx->priv->async_session, "authenticate", - G_CALLBACK (session_authenticate), ctx); - soup_session_add_filter (ctx->priv->async_session, - -=== modified file 'servers/groupwise/Makefile.am' ---- servers/groupwise/Makefile.am 2007-12-18 16:36:30 +0000 -+++ servers/groupwise/Makefile.am 2007-12-18 17:02:13 +0000 -@@ -15,9 +15,10 @@ - $(E_DATA_SERVER_LIBS) - - soap_test_SOURCES = soap-test.c --soap_test_LDADD = \ -- $(SOUP_LIBS) \ -- libegroupwise-1.2.la \ -+soap_test_LDADD = \ -+ $(top_builddir)/libedataserver/libedataserver-1.2.la \ -+ $(SOUP_LIBS) \ -+ libegroupwise-1.2.la \ - $(E_DATA_SERVER_LIBS) - - build-timestamp.h : $(top_builddir)/config.h - -=== modified file 'servers/groupwise/e-gw-connection.c' ---- servers/groupwise/e-gw-connection.c 2007-12-18 16:36:30 +0000 -+++ servers/groupwise/e-gw-connection.c 2007-12-18 17:02:13 +0000 -@@ -27,6 +27,7 @@ - #include - #include - #include -+#include - #include - #include - #include -@@ -38,6 +39,9 @@ - /* For soup sync session timeout */ - #define GW_SOUP_SESSION_TIMEOUT 30 - -+/* Soup session proxy-uri property */ -+#define SOUP_SESSION_PROXY_URI "proxy-uri" -+ - static GObjectClass *parent_class = NULL; - static GHashTable *loaded_connections_permissions = NULL; - -@@ -58,8 +62,37 @@ - GList *book_list; - EGwSendOptions *opts; - GMutex *reauth_mutex; -+ EProxy *proxy; - }; - -+static void -+update_soup_session_proxy_settings (EProxy *proxy, SoupSession* session, -+ const char* uri) -+{ -+ SoupUri *proxy_uri = NULL; -+ -+ if (!session || !uri || !proxy) -+ return; -+ -+ if (e_proxy_require_proxy_for_uri (proxy, uri)) -+ proxy_uri = e_proxy_peek_uri (proxy); -+ -+ g_object_set (session, SOUP_SESSION_PROXY_URI, -+ proxy_uri, NULL); -+} -+ -+static void -+proxy_settings_changed (EProxy *proxy, gpointer user_data) -+{ -+ EGwConnection* conn = (EGwConnection *)user_data; -+ if (!conn || !conn->priv || !conn->priv->soup_session) -+ return; -+ -+ update_soup_session_proxy_settings (proxy, -+ conn->priv->soup_session, -+ conn->priv->uri); -+} -+ - static EGwConnectionStatus - reauthenticate (EGwConnection *cnc) - { -@@ -343,6 +376,11 @@ - g_free (priv->server_time) ; - priv->server_time = NULL ; - } -+ -+ if (priv->proxy) { -+ g_object_unref (priv->proxy); -+ priv->proxy = NULL; -+ } - } - - if (parent_class->dispose) -@@ -394,6 +432,11 @@ - if (g_getenv ("SOUP_SESSION_TIMEOUT")) - timeout = atoi (g_getenv ("SOUP_SESSION_TIMEOUT")); - -+ /* Initialize proxy settings */ -+ priv->proxy = e_proxy_new (); -+ e_proxy_setup_proxy (priv->proxy); -+ g_signal_connect (priv->proxy, "changed", G_CALLBACK (proxy_settings_changed), cnc); -+ - /* create the SoupSession for this connection */ - priv->soup_session = soup_session_sync_new_with_options (SOUP_SESSION_TIMEOUT, timeout, NULL); - priv->reauth_mutex = g_mutex_new (); -@@ -477,7 +520,13 @@ - } - } - -- -+ /* Set proxy details for the Soup session before any -+ communication. -+ */ -+ update_soup_session_proxy_settings (cnc->priv->proxy, -+ cnc->priv->soup_session, -+ uri); -+ - /* not found, so create a new connection */ - cnc = g_object_new (E_TYPE_GW_CONNECTION, NULL); - - diff --git a/evolution-data-server-2.22.0.tar.bz2 b/evolution-data-server-2.22.0.tar.bz2 deleted file mode 100644 index 24933f4..0000000 --- a/evolution-data-server-2.22.0.tar.bz2 +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:ff1b3540234296e1ffe52ddde48b67d93a261ee06f2eef865a47c4fbcfdc8724 -size 7575575 diff --git a/evolution-data-server-2.22.1.tar.bz2 b/evolution-data-server-2.22.1.tar.bz2 new file mode 100644 index 0000000..b0d636b --- /dev/null +++ b/evolution-data-server-2.22.1.tar.bz2 @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c68cdbfa960068adb76bd3e14affcc7f919435b4b17e12306e641f2a0aceed11 +size 7602166 diff --git a/evolution-data-server.changes b/evolution-data-server.changes index 2a2bb45..120082b 100644 --- a/evolution-data-server.changes +++ b/evolution-data-server.changes @@ -1,9 +1,29 @@ +------------------------------------------------------------------- +Thu Apr 10 17:00:29 CEST 2008 - maw@suse.de + +- Update to version 2.22.1: + + Bugs fixed: bgo#524704, bgo#521015, bgo#520526, bgo#522433, + bgo#525485, bgo#523528, bgo#372383, bgo#522389, bgo#500389, + bgo#523023, bgo#494311, bgo#523126, and bgo#303067 + + Updated translations +- Drop bgo-522389-e-gw-connection-get-attachment-corruption.patch +- Annotate bnc-188523-eds-fix-authenticated-proxy-support.diff, + and fix other annotations' formatting. + ------------------------------------------------------------------- Thu Apr 10 12:54:45 CEST 2008 - ro@suse.de - added baselibs.conf file to build xxbit packages for multilib support +------------------------------------------------------------------- +Wed Apr 9 11:34:40 CEST 2008 - msuman@suse.de + +- Configurable proxy settings for Evolution (Varadhan) + + Added patch bnc-188523-eds-fix-authenticated-proxy-support.diff (bnc#188523) + + Removed patch bnc-174255-honour-system-proxy-settings.patch since + added patch includes those changes as well. + ------------------------------------------------------------------- Wed Mar 26 12:11:16 CET 2008 - sbrabec@suse.cz diff --git a/evolution-data-server.spec b/evolution-data-server.spec index 29601bf..6905d22 100644 --- a/evolution-data-server.spec +++ b/evolution-data-server.spec @@ -1,5 +1,5 @@ # -# spec file for package evolution-data-server (Version 2.22.0) +# spec file for package evolution-data-server (Version 2.22.1) # # Copyright (c) 2008 SUSE LINUX Products GmbH, Nuernberg, Germany. # This file and all modifications and additions to the pristine @@ -17,30 +17,28 @@ License: GPL v2 or later Group: Development/Libraries/GNOME AutoReqProv: on Summary: Evolution Data Server -Version: 2.22.0 -Release: 12 +Version: 2.22.1 +Release: 1 Source0: ftp://ftp.gnome.org/pub/gnome/sources/evolution-data-server/2.21/%{name}-%{version}.tar.bz2 Patch0: evolution-data-server-configure.patch -# PATCH-FIX-UPSTREAM bnc-164367-gw-attachments-appts-throw-error.patch bnc164367 - Fix is in upstream svn. +# PATCH-FIX-UPSTREAM bnc-164367-gw-attachments-appts-throw-error.patch bnc164367 -- Fix is in upstream svn. Patch3: bnc-164367-gw-attachments-appts-throw-error.patch # PATCH-NEEDS-REBASE: bnc-163982-system-hang-with-126-error-popups.patch Patch4: bnc-163982-system-hang-with-126-error-popups.patch -# PATCH-FIX-UPSTREAM bnc-152070-eds-crash.patch bnc152070 - Fix is in upstream svn. +# PATCH-FIX-UPSTREAM bnc-152070-eds-crash.patch bnc152070 -- Fix is in upstream svn. Patch5: bnc-152070-eds-crash.patch -# PATCH-FIX-UPSTREAM bnc-174255-honour-system-proxy-settings.patch bnc174255 bgo517225 - Fix has been submitted to bgo -Patch8: bnc-174255-honour-system-proxy-settings.patch +# PATCH-FIX-UPSTREAM bnc-188523-eds-fix-authenticated-proxy-support.diff msuman@suse.de -- +Patch8: bnc-188523-eds-fix-authenticated-proxy-support.diff Patch10: eds-compiler-warning.patch -# PATCH-FIX-UPSTREAM evolution-data-server-1.11.5-cert-auth-complete.patch bgo253574 - Fix has been submitted to bgo. +# PATCH-FIX-UPSTREAM evolution-data-server-1.11.5-cert-auth-complete.patch bgo253574 -- Fix has been submitted to bgo. Patch11: evolution-data-server-1.11.5-cert-auth-complete.patch -# PATCH-FIX-UPSTREAM bnc-304835-ex-crash-after-restart.patch bnc304835 bgo253574 - Fix has been submitted to bgo. +# PATCH-FIX-UPSTREAM bnc-304835-ex-crash-after-restart.patch bnc304835 bgo253574 -- Fix has been submitted to bgo. Patch12: bnc-304835-ex-crash-after-restart.patch -# PATCH-FIX-UPSTREAM: bnc-307861-calendar-auth.diff - bnc307861 bgo253574 - Fix has been submitted to bgo. +# PATCH-FIX-UPSTREAM: bnc-307861-calendar-auth.diff - bnc307861 bgo253574 -- Fix has been submitted to bgo. Patch13: bnc-307861-calendar-auth.diff Patch14: evolution-data-server-abuild.patch -# PATCH-FIX-UPSTREAM: bgo-522389-e-gw-connection-get-attachment-corruption.patch bgo522389 - Fix gw attachment crash on x86_64 -Patch15: bgo-522389-e-gw-connection-get-attachment-corruption.patch # Change patch below if we move away from /opt/gnome -# PATCH-FIX-OPENSUSE libgnomeui-dep.patch - It avoids a build dependency on libgnomeui to speed up bootstrap +# PATCH-FIX-OPENSUSE libgnomeui-dep.patch -- It avoids a build dependency on libgnomeui to speed up bootstrap Patch99: libgnomeui-dep.patch # The following has been reported upstream (with a patch) and should be # fixed in the next release: @@ -102,13 +100,12 @@ documentation. %patch3 #%patch4 %patch5 -###%patch8 +%patch8 %patch10 ###%patch11 ###%patch12 %patch13 %patch14 -p1 -%patch15 %patch99 %build @@ -167,9 +164,23 @@ rm -rf $RPM_BUILD_ROOT %{_datadir}/gtk-doc/html/* %changelog +* Thu Apr 10 2008 maw@suse.de +- Update to version 2.22.1: + + Bugs fixed: bgo#524704, bgo#521015, bgo#520526, bgo#522433, + bgo#525485, bgo#523528, bgo#372383, bgo#522389, bgo#500389, + bgo#523023, bgo#494311, bgo#523126, and bgo#303067 + + Updated translations +- Drop bgo-522389-e-gw-connection-get-attachment-corruption.patch +- Annotate bnc-188523-eds-fix-authenticated-proxy-support.diff, + and fix other annotations' formatting. * Thu Apr 10 2008 ro@suse.de - added baselibs.conf file to build xxbit packages for multilib support +* Wed Apr 09 2008 msuman@suse.de +- Configurable proxy settings for Evolution (Varadhan) + + Added patch bnc-188523-eds-fix-authenticated-proxy-support.diff (bnc#188523) + + Removed patch bnc-174255-honour-system-proxy-settings.patch since + added patch includes those changes as well. * Wed Mar 26 2008 sbrabec@suse.cz - Fixed GroupWise attachment crash on x86_64 (bgo#522389). * Fri Mar 14 2008 maw@suse.de