[openchange] Add patch for Red Hat bug #845618 (incorrect symbol resolution)
Milan Crha
mcrha at fedoraproject.org
Mon Aug 6 10:29:28 UTC 2012
commit 94c9bc9d72c5b09d85e1c373668836be506280ca
Author: Milan Crha <mcrha at redhat.com>
Date: Mon Aug 6 12:29:07 2012 +0200
Add patch for Red Hat bug #845618 (incorrect symbol resolution)
openchange-1.0-symbol-clash.patch | 122 +++++++++++++++++++++++++++++++++++++
openchange.spec | 9 +++-
2 files changed, 130 insertions(+), 1 deletions(-)
---
diff --git a/openchange-1.0-symbol-clash.patch b/openchange-1.0-symbol-clash.patch
new file mode 100644
index 0000000..71dc304
--- /dev/null
+++ b/openchange-1.0-symbol-clash.patch
@@ -0,0 +1,122 @@
+diff -up openchange-1.0-BORG/libmapi/emsmdb.c.symbol-clash openchange-1.0-BORG/libmapi/emsmdb.c
+--- openchange-1.0-BORG/libmapi/emsmdb.c.symbol-clash 2012-08-06 12:23:58.376219110 +0200
++++ openchange-1.0-BORG/libmapi/emsmdb.c 2012-08-06 12:23:58.380219164 +0200
+@@ -636,8 +636,8 @@ struct mapi_notify_ctx *emsmdb_bind_noti
+ notify_ctx->notifications->prev = NULL;
+ notify_ctx->notifications->next = NULL;
+
+- load_interfaces(mem_ctx, lpcfg_interfaces(mapi_ctx->lp_ctx), &ifaces);
+- ipaddr = iface_best_ip(ifaces, mapi_ctx->session->profile->server);
++ libmapi_load_interfaces(mem_ctx, lpcfg_interfaces(mapi_ctx->lp_ctx), &ifaces);
++ ipaddr = libmapi_iface_best_ip(ifaces, mapi_ctx->session->profile->server);
+ if (!ipaddr) {
+ talloc_free(notify_ctx->notifications);
+ talloc_free(notify_ctx);
+diff -up openchange-1.0-BORG/libmapi/libmapi_private.h.symbol-clash openchange-1.0-BORG/libmapi/libmapi_private.h
+--- openchange-1.0-BORG/libmapi/libmapi_private.h.symbol-clash 2012-03-13 17:58:28.000000000 +0100
++++ openchange-1.0-BORG/libmapi/libmapi_private.h 2012-08-06 12:23:58.380219164 +0200
+@@ -118,14 +118,14 @@ uint8_t mapi_recipients_get_org_length
+ uint16_t mapi_recipients_RecipientFlags(struct SRow *);
+
+ /* The following private definitions come from libmapi/socket/interface.c */
+-void load_interfaces(TALLOC_CTX *, const char **, struct interface **);
+-int iface_count(struct interface *);
+-const char *iface_n_ip(struct interface *, int);
+-const char *iface_n_bcast(struct interface *, int);
+-const char *iface_n_netmask(struct interface *, int);
+-const char *iface_best_ip(struct interface *, const char *);
+-bool iface_is_local(struct interface *, const char *);
+-bool iface_same_net(const char *, const char *, const char *);
++void libmapi_load_interfaces(TALLOC_CTX *, const char **, struct interface **);
++int libmapi_iface_count(struct interface *);
++const char *libmapi_iface_n_ip(struct interface *, int);
++const char *libmapi_iface_n_bcast(struct interface *, int);
++const char *libmapi_iface_n_netmask(struct interface *, int);
++const char *libmapi_iface_best_ip(struct interface *, const char *);
++bool libmapi_iface_is_local(struct interface *, const char *);
++bool libmapi_iface_same_net(const char *, const char *, const char *);
+
+ __END_DECLS
+
+diff -up openchange-1.0-BORG/libmapi/socket/interface.c.symbol-clash openchange-1.0-BORG/libmapi/socket/interface.c
+--- openchange-1.0-BORG/libmapi/socket/interface.c.symbol-clash 2011-06-27 22:35:04.000000000 +0200
++++ openchange-1.0-BORG/libmapi/socket/interface.c 2012-08-06 12:23:58.381219177 +0200
+@@ -186,7 +186,7 @@ static void interpret_interface(TALLOC_C
+ /**
+ load the list of network interfaces
+ **/
+-void load_interfaces(TALLOC_CTX *mem_ctx, const char **interfaces, struct interface **local_interfaces)
++void libmapi_load_interfaces(TALLOC_CTX *mem_ctx, const char **interfaces, struct interface **local_interfaces)
+ {
+ const char **ptr = interfaces;
+ int i;
+@@ -228,7 +228,7 @@ void load_interfaces(TALLOC_CTX *mem_ctx
+ /**
+ how many interfaces do we have
+ **/
+-int iface_count(struct interface *ifaces)
++int libmapi_iface_count(struct interface *ifaces)
+ {
+ int ret = 0;
+ struct interface *i;
+@@ -241,7 +241,7 @@ int iface_count(struct interface *ifaces
+ /**
+ return IP of the Nth interface
+ **/
+-const char *iface_n_ip(struct interface *ifaces, int n)
++const char *libmapi_iface_n_ip(struct interface *ifaces, int n)
+ {
+ struct interface *i;
+
+@@ -257,7 +257,7 @@ const char *iface_n_ip(struct interface
+ /**
+ return bcast of the Nth interface
+ **/
+-const char *iface_n_bcast(struct interface *ifaces, int n)
++const char *libmapi_iface_n_bcast(struct interface *ifaces, int n)
+ {
+ struct interface *i;
+
+@@ -273,7 +273,7 @@ const char *iface_n_bcast(struct interfa
+ /**
+ return netmask of the Nth interface
+ **/
+-const char *iface_n_netmask(struct interface *ifaces, int n)
++const char *libmapi_iface_n_netmask(struct interface *ifaces, int n)
+ {
+ struct interface *i;
+
+@@ -290,7 +290,7 @@ const char *iface_n_netmask(struct inter
+ return the local IP address that best matches a destination IP, or
+ our first interface if none match
+ */
+-const char *iface_best_ip(struct interface *ifaces, const char *dest)
++const char *libmapi_iface_best_ip(struct interface *ifaces, const char *dest)
+ {
+ struct interface *iface;
+ struct in_addr ip;
+@@ -300,13 +300,13 @@ const char *iface_best_ip(struct interfa
+ if (iface) {
+ return iface->ip_s;
+ }
+- return iface_n_ip(ifaces, 0);
++ return libmapi_iface_n_ip(ifaces, 0);
+ }
+
+ /**
+ return true if an IP is one one of our local networks
+ */
+-bool iface_is_local(struct interface *ifaces, const char *dest)
++bool libmapi_iface_is_local(struct interface *ifaces, const char *dest)
+ {
+ struct in_addr ip;
+
+@@ -320,7 +320,7 @@ bool iface_is_local(struct interface *if
+ /**
+ return true if a IP matches a IP/netmask pair
+ */
+-bool iface_same_net(const char *ip1, const char *ip2, const char *netmask)
++bool libmapi_iface_same_net(const char *ip1, const char *ip2, const char *netmask)
+ {
+ return same_net_v4(interpret_addr2(ip1),
+ interpret_addr2(ip2),
diff --git a/openchange.spec b/openchange.spec
index 2b49e0b..2462c02 100644
--- a/openchange.spec
+++ b/openchange.spec
@@ -19,7 +19,7 @@
Name: openchange
Version: 1.0
-Release: 10%{?dist}
+Release: 11%{?dist}
Group: Applications/System
Summary: Provides access to Microsoft Exchange servers using native protocols
License: GPLv3+ and Public Domain
@@ -71,6 +71,9 @@ Patch3: openchange-1.0-OC_RULE_ADD-fix.patch
# http://tracker.openchange.org/issues/397
Patch4: openchange-1.0-uninit-crash.patch
+# http://tracker.openchange.org/issues/398
+Patch5: openchange-1.0-symbol-clash.patch
+
%description
OpenChange provides libraries to access Microsoft Exchange servers
using native protocols.
@@ -134,6 +137,7 @@ This package provides the server elements for OpenChange.
%patch2 -p1 -b .popt
%patch3 -p1 -b .OC_RULE_ADD-fix
%patch4 -p1 -b .uninit-crash
+%patch5 -p1 -b .symbol-clash
%build
./autogen.sh
@@ -276,6 +280,9 @@ rm -rf $RPM_BUILD_ROOT
%endif
%changelog
+* Mon Aug 06 2012 Milan Crha <mcrha at redhat.com> - 1.0-11
+- Add patch for Red Hat bug #845618 (incorrect symbol resolution)
+
* Thu Jul 26 2012 Milan Crha <mcrha at redhat.com> - 1.0-10
- Remove check_fasttransfer from openchange-client, if not building server package
More information about the scm-commits
mailing list