summaryrefslogtreecommitdiff
path: root/net-im/telepathy-gabble
diff options
context:
space:
mode:
authorKoop Mast <kwm@FreeBSD.org>2010-11-20 15:37:08 +0000
committerKoop Mast <kwm@FreeBSD.org>2010-11-20 15:37:08 +0000
commit3680f27ebff58ece429c4e032f9ad84fb1372114 (patch)
tree6c5ff4664c1a779ddad350ac887e5706dbfdd4eb /net-im/telepathy-gabble
parent- Upgrade 1.2000. (diff)
Presenting GNOME 2.32.1 for FreeBSD. The offical release notes for this
release can be found at http://library.gnome.org/misc/release-notes/2.32/ This will be the last release of the GNOME 2.x series, mainly a bugfix and bridge release to the first release of the GNOME 3.x series. This release features commits by avl, marcus, mezz and myself. The FreeBSD GNOME Team would like to thank the following contributors and testers for there help with this release: Zane C.B. <vvelox@vvelox.net> romain@ Olaf Seibert <O.Seibert@cs.ru.nl> DomiX Bapt <baptiste.daroussin@gmail.com> jsa@ miwi@ Sergio de Almeida Lenzi <lenzi.sergio@gmail.com> Maxim Samsonov <xors@mne.ru> Kris Moore And pav@ for 2 exp-runs PR: ports/152255 ports/143260 ports/141033 ports/149629 ports/150350 ports/151523 With hat: gnome@
Notes
Notes: svn path=/head/; revision=264837
Diffstat (limited to 'net-im/telepathy-gabble')
-rw-r--r--net-im/telepathy-gabble/Makefile9
-rw-r--r--net-im/telepathy-gabble/distinfo5
-rw-r--r--net-im/telepathy-gabble/files/patch-Makefile.in12
-rw-r--r--net-im/telepathy-gabble/files/patch-lib_gibber_asyncns.c10
-rw-r--r--net-im/telepathy-gabble/files/patch-lib_gibber_gibber-fd-transport.h12
-rw-r--r--net-im/telepathy-gabble/files/patch-lib_gibber_gibber-resolver.c12
-rw-r--r--net-im/telepathy-gabble/files/patch-lib_gibber_gibber-unix-transport.c257
-rw-r--r--net-im/telepathy-gabble/files/patch-lib_gibber_gibber-util.h12
-rw-r--r--net-im/telepathy-gabble/files/patch-src_bytestream-socks5.c11
-rw-r--r--net-im/telepathy-gabble/files/patch-src_jingle-factory.c13
-rw-r--r--net-im/telepathy-gabble/files/patch-src_tube-stream.c10
-rw-r--r--net-im/telepathy-gabble/pkg-plist4
12 files changed, 179 insertions, 188 deletions
diff --git a/net-im/telepathy-gabble/Makefile b/net-im/telepathy-gabble/Makefile
index ee1a464b64b8..a102210d672e 100644
--- a/net-im/telepathy-gabble/Makefile
+++ b/net-im/telepathy-gabble/Makefile
@@ -3,10 +3,10 @@
# Whom: Florent Thoumie <flz@FreeBSD.org>
#
# $FreeBSD$
-# $MCom: ports/net-im/telepathy-gabble/Makefile,v 1.5 2009/01/08 07:03:21 marcus Exp $
+# $MCom: ports/net-im/telepathy-gabble/Makefile,v 1.10 2010/11/14 16:18:09 marcus Exp $
PORTNAME= telepathy-gabble
-PORTVERSION= 0.8.14
+PORTVERSION= 0.10.4
CATEGORIES= net-im
MASTER_SITES= http://telepathy.freedesktop.org/releases/${PORTNAME}/
@@ -15,13 +15,16 @@ COMMENT= Jabber Connection Manager for Telepathy Framework
LIB_PC_DEPENDS= gobject-2.0.pc:${PORTSDIR}/devel/glib20 \
dbus-glib-1.pc:${PORTSDIR}/devel/dbus-glib \
+ nice.pc:${PORTSDIR}/net-im/libnice \
+ uuid.pc:${PORTSDIR}/misc/e2fsprogs-libuuid \
telepathy-glib.pc:${PORTSDIR}/net-im/telepathy-glib \
loudmouth-1.0.pc:${PORTSDIR}/net-im/loudmouth
BUILD_DEPENDS= xsltproc:${PORTSDIR}/textproc/libxslt
BUILD_DEPENDS+= ${LIB_PC_DEPENDS:C|^|${LOCALBASE}/libdata/pkgconfig/|g}
-LIB_DEPENDS= soup-2.4.1:${PORTSDIR}/devel/libsoup
+LIB_DEPENDS= soup-2.4.1:${PORTSDIR}/devel/libsoup \
+ sqlite3.8:${PORTSDIR}/databases/sqlite3
RUN_DEPENDS+= ${LIB_PC_DEPENDS:C|^|${LOCALBASE}/libdata/pkgconfig/|g}
GNU_CONFIGURE= yes
diff --git a/net-im/telepathy-gabble/distinfo b/net-im/telepathy-gabble/distinfo
index 17a1d3b07f23..7f77130ac4aa 100644
--- a/net-im/telepathy-gabble/distinfo
+++ b/net-im/telepathy-gabble/distinfo
@@ -1,3 +1,2 @@
-MD5 (telepathy-gabble-0.8.14.tar.gz) = 0114937c1664c6b76b8cd983f24c2089
-SHA256 (telepathy-gabble-0.8.14.tar.gz) = 71a1bb38478c8e5b831531036980ba46d157fc072226e11c8624e8c395a682d1
-SIZE (telepathy-gabble-0.8.14.tar.gz) = 1519190
+SHA256 (telepathy-gabble-0.10.4.tar.gz) = abdf07e833b934fa7cd0c9e34894a11da037adf03a4fdde4dc7818ed990a662c
+SIZE (telepathy-gabble-0.10.4.tar.gz) = 2936168
diff --git a/net-im/telepathy-gabble/files/patch-Makefile.in b/net-im/telepathy-gabble/files/patch-Makefile.in
index 911ee27c5cf6..6e8234229f1c 100644
--- a/net-im/telepathy-gabble/files/patch-Makefile.in
+++ b/net-im/telepathy-gabble/files/patch-Makefile.in
@@ -1,11 +1,11 @@
---- Makefile.in.orig 2009-03-12 20:41:53.000000000 -0400
-+++ Makefile.in 2009-03-12 20:41:59.000000000 -0400
-@@ -203,7 +203,7 @@ top_build_prefix = @top_build_prefix@
+--- Makefile.in.orig 2010-09-18 17:29:38.000000000 +0000
++++ Makefile.in 2010-09-18 17:29:53.000000000 +0000
+@@ -267,7 +267,7 @@
top_builddir = @top_builddir@
top_srcdir = @top_srcdir@
ACLOCAL_AMFLAGS = -I m4
--SUBDIRS = docs tools extensions lib src data m4 tests
-+SUBDIRS = docs tools extensions lib src data m4
- DISTCHECK_CONFIGURE_FLAGS = --disable-debug
+-SUBDIRS = docs tools extensions lib src data m4 plugins tests gabble
++SUBDIRS = docs tools extensions lib src data m4 plugins gabble
+ DISTCHECK_CONFIGURE_FLAGS = --disable-debug --enable-gtk-doc
CLEANFILES = FIXME.out
LCOV_CHECK_ARGS = CHECK_TWISTED_SLEEP=6
diff --git a/net-im/telepathy-gabble/files/patch-lib_gibber_asyncns.c b/net-im/telepathy-gabble/files/patch-lib_gibber_asyncns.c
deleted file mode 100644
index ff3bb3733f37..000000000000
--- a/net-im/telepathy-gabble/files/patch-lib_gibber_asyncns.c
+++ /dev/null
@@ -1,10 +0,0 @@
---- lib/gibber/asyncns.c.orig 2009-03-08 13:01:42.000000000 -0400
-+++ lib/gibber/asyncns.c 2009-03-08 13:02:06.000000000 -0400
-@@ -35,6 +35,7 @@
- #include <errno.h>
- #include <sys/wait.h>
- #include <sys/types.h>
-+#include <sys/resource.h>
- #include <pwd.h>
- #include <netinet/in.h>
- #include <arpa/nameser.h>
diff --git a/net-im/telepathy-gabble/files/patch-lib_gibber_gibber-fd-transport.h b/net-im/telepathy-gabble/files/patch-lib_gibber_gibber-fd-transport.h
deleted file mode 100644
index 8cf86b314b6d..000000000000
--- a/net-im/telepathy-gabble/files/patch-lib_gibber_gibber-fd-transport.h
+++ /dev/null
@@ -1,12 +0,0 @@
---- lib/gibber/gibber-fd-transport.h.orig 2009-01-08 01:53:58.000000000 -0500
-+++ lib/gibber/gibber-fd-transport.h 2009-01-08 01:54:11.000000000 -0500
-@@ -23,7 +23,9 @@
-
- #include <glib-object.h>
-
-+#include <sys/types.h>
- #include <sys/socket.h>
-+#include <netinet/in.h>
- #include <netdb.h>
-
- #include "gibber-transport.h"
diff --git a/net-im/telepathy-gabble/files/patch-lib_gibber_gibber-resolver.c b/net-im/telepathy-gabble/files/patch-lib_gibber_gibber-resolver.c
deleted file mode 100644
index 6d20d57dc734..000000000000
--- a/net-im/telepathy-gabble/files/patch-lib_gibber_gibber-resolver.c
+++ /dev/null
@@ -1,12 +0,0 @@
---- lib/gibber/gibber-resolver.c.orig 2009-03-15 02:48:07.000000000 -0400
-+++ lib/gibber/gibber-resolver.c 2009-03-15 02:48:53.000000000 -0400
-@@ -735,7 +735,9 @@ gibber_resolver_gai_error_to_g_error (in
- break;
-
- case EAI_MEMORY:
-+#ifdef EAI_OVERFLOW
- case EAI_OVERFLOW:
-+#endif
- code = GIBBER_RESOLVER_ERROR_MEMORY;
- break;
-
diff --git a/net-im/telepathy-gabble/files/patch-lib_gibber_gibber-unix-transport.c b/net-im/telepathy-gabble/files/patch-lib_gibber_gibber-unix-transport.c
index 79aaa44ec998..c055de832675 100644
--- a/net-im/telepathy-gabble/files/patch-lib_gibber_gibber-unix-transport.c
+++ b/net-im/telepathy-gabble/files/patch-lib_gibber_gibber-unix-transport.c
@@ -1,116 +1,181 @@
---- lib/gibber/gibber-unix-transport.c.orig 2009-06-02 23:56:27.000000000 -0400
-+++ lib/gibber/gibber-unix-transport.c 2009-06-03 00:13:18.000000000 -0400
-@@ -200,11 +200,12 @@ gibber_unix_transport_send_credentials (
- gsize size)
- {
- int fd, ret;
-- struct ucred *cred;
- struct msghdr msg;
-- struct cmsghdr *ch;
- struct iovec iov;
-- char buffer[CMSG_SPACE (sizeof (struct ucred))];
+--- lib/gibber/gibber-unix-transport.c.orig 2010-06-09 16:09:58.000000000 +0000
++++ lib/gibber/gibber-unix-transport.c 2010-09-18 21:24:44.000000000 +0000
+@@ -375,6 +375,167 @@ gibber_unix_transport_recv_credentials (
+ return TRUE;
+ }
+
++/* End Linux part */
++#elif defined(__FreeBSD__)
++
++gboolean
++gibber_unix_transport_send_credentials (GibberUnixTransport *transport,
++ const guint8 *data,
++ gsize size)
++{
++ int fd, ret;
++ struct msghdr msg;
++ struct iovec iov;
+ union {
-+ struct cmsghdr hdr;
-+ char cred[CMSG_SPACE (sizeof (struct cmsgcred))];
++ struct cmsghdr hdr;
++ char cred[CMSG_SPACE (sizeof (struct cmsgcred))];
+ } cmsg;
-
- DEBUG ("send credentials");
- fd = GIBBER_FD_TRANSPORT (transport)->fd;
-@@ -217,19 +218,12 @@ gibber_unix_transport_send_credentials (
- memset (&msg, 0, sizeof msg);
- msg.msg_iov = &iov;
- msg.msg_iovlen = 1;
-- msg.msg_control = buffer;
-- msg.msg_controllen = sizeof (buffer);
--
-- /* Set the credentials */
-- ch = CMSG_FIRSTHDR (&msg);
-- ch->cmsg_len = CMSG_LEN (sizeof (struct ucred));
-- ch->cmsg_level = SOL_SOCKET;
-- ch->cmsg_type = SCM_CREDENTIALS;
--
-- cred = (struct ucred *) CMSG_DATA (ch);
-- cred->pid = getpid ();
-- cred->uid = getuid ();
-- cred->gid = getgid ();
++
++ DEBUG ("send credentials");
++ fd = GIBBER_FD_TRANSPORT (transport)->fd;
++
++ /* Set the message payload */
++ memset (&iov, 0, sizeof (iov));
++ iov.iov_base = (void *) data;
++ iov.iov_len = size;
++
++ memset (&msg, 0, sizeof (msg));
++ msg.msg_iov = &iov;
++ msg.msg_iovlen = 1;
+ msg.msg_control = (caddr_t) &cmsg;
+ msg.msg_controllen = CMSG_SPACE (sizeof (struct cmsgcred));
+ memset (&cmsg, 0, sizeof (cmsg));
+ cmsg.hdr.cmsg_len = CMSG_LEN (sizeof (struct cmsgcred));
+ cmsg.hdr.cmsg_level = SOL_SOCKET;
+ cmsg.hdr.cmsg_type = SCM_CREDS;
-
- ret = sendmsg (fd, &msg, 0);
- if (ret == -1)
-@@ -256,9 +250,11 @@ gibber_unix_transport_read (GibberFdTran
- GibberBuffer buf;
- struct iovec iov;
- struct msghdr msg;
-- char control[CMSG_SPACE (sizeof (struct ucred))];
-- struct cmsghdr *ch;
-- struct ucred *cred;
++
++ ret = sendmsg (fd, &msg, 0);
++ if (ret == -1)
++ {
++ DEBUG ("sendmsg failed: %s", g_strerror (errno));
++ return FALSE;
++ }
++
++ return TRUE;
++}
++
++gboolean
++gibber_unix_transport_recv_credentials (GibberUnixTransport *self,
++ GibberUnixTransportRecvCredentialsCb callback,
++ gpointer user_data)
++{
++ GibberUnixTransportPrivate *priv = GIBBER_UNIX_TRANSPORT_GET_PRIVATE (self);
++
++ if (priv->recv_creds_cb != NULL)
++ {
++ DEBUG ("already waiting for credentials");
++ return FALSE;
++ }
++
++ priv->recv_creds_cb = callback;
++ priv->recv_creds_data = user_data;
++ return TRUE;
++}
++
++gboolean
++gibber_unix_transport_supports_credentials (void)
++{
++ return TRUE;
++}
++
++#define BUFSIZE 1024
++
++static GibberFdIOResult
++gibber_unix_transport_read (GibberFdTransport *transport,
++ GIOChannel *channel,
++ GError **error)
++{
++ GibberUnixTransport *self = GIBBER_UNIX_TRANSPORT (transport);
++ GibberUnixTransportPrivate *priv = GIBBER_UNIX_TRANSPORT_GET_PRIVATE (self);
++ int fd;
++ guint8 buffer[BUFSIZE];
++ ssize_t bytes_read;
++ GibberBuffer buf;
++ struct iovec iov;
++ struct msghdr msg;
+ struct cmsgcred *cred;
+ union {
-+ struct cmsghdr hdr;
-+ char cred[CMSG_SPACE (sizeof *cred)];
++ struct cmsghdr hdr;
++ char cred[CMSG_SPACE (sizeof *cred)];
+ } cmsg;
- int opt;
-
- if (priv->recv_creds_cb == NULL)
-@@ -268,8 +264,10 @@ gibber_unix_transport_read (GibberFdTran
- fd = transport->fd;
-
- /* set SO_PASSCRED flag */
-+#ifdef SO_PASSCRED
- opt = 1;
- setsockopt (fd, SOL_SOCKET, SO_PASSCRED, &opt, sizeof (opt));
-+#endif
-
- memset (buffer, 0, sizeof (buffer));
- memset (&iov, 0, sizeof (iov));
-@@ -279,8 +277,8 @@ gibber_unix_transport_read (GibberFdTran
- memset (&msg, 0, sizeof (msg));
- msg.msg_iov = &iov;
- msg.msg_iovlen = 1;
-- msg.msg_control = control;
-- msg.msg_controllen = sizeof (control);
++ int opt;
++
++ if (priv->recv_creds_cb == NULL)
++ return gibber_fd_transport_read (transport, channel, error);
++
++ /* We are waiting for credentials */
++ fd = transport->fd;
++
++ memset (buffer, 0, sizeof (buffer));
++ memset (&iov, 0, sizeof (iov));
++ iov.iov_base = buffer;
++ iov.iov_len = sizeof (buffer);
++
++ memset (&msg, 0, sizeof (msg));
++ msg.msg_iov = &iov;
++ msg.msg_iovlen = 1;
+ msg.msg_control = (caddr_t) &cmsg;
+ msg.msg_controllen = CMSG_SPACE (sizeof *cred);
-
- bytes_read = recvmsg (fd, &msg, 0);
-
-@@ -300,15 +298,17 @@ gibber_unix_transport_read (GibberFdTran
- }
-
- /* unset SO_PASSCRED flag */
-+#ifdef SO_PASSCRED
- opt = 0;
- setsockopt (fd, SOL_SOCKET, SO_PASSCRED, &opt, sizeof (opt));
-+#endif
-
- buf.data = buffer;
- buf.length = bytes_read;
-
- /* extract the credentials */
-- ch = CMSG_FIRSTHDR (&msg);
-- if (ch == NULL)
++
++ bytes_read = recvmsg (fd, &msg, 0);
++
++ if (bytes_read == -1)
++ {
++ GError *err = NULL;
++
++ g_set_error_literal (&err, G_IO_CHANNEL_ERROR,
++ g_io_channel_error_from_errno (errno), "recvmsg failed");
++
++ priv->recv_creds_cb (self, NULL, NULL, err, priv->recv_creds_data);
++ g_propagate_error (error, err);
++
++ priv->recv_creds_cb = NULL;
++ priv->recv_creds_data = NULL;
++ return GIBBER_FD_IO_RESULT_ERROR;
++ }
++
++ buf.data = buffer;
++ buf.length = bytes_read;
++
++ /* extract the credentials */
+ if (cmsg.hdr.cmsg_len < CMSG_LEN (sizeof *cred) ||
+ cmsg.hdr.cmsg_type != SCM_CREDS)
- {
- GError *err = NULL;
-
-@@ -325,10 +325,10 @@ gibber_unix_transport_read (GibberFdTran
- {
- GibberCredentials credentials;
-
-- cred = (struct ucred *) CMSG_DATA (ch);
-- credentials.pid = cred->pid;
-- credentials.uid = cred->uid;
-- credentials.gid = cred->gid;
++ {
++ GError *err = NULL;
++
++ DEBUG ("Message doesn't contain credentials");
++
++ g_set_error_literal (&err, GIBBER_UNIX_TRANSPORT_ERROR,
++ GIBBER_UNIX_TRANSPORT_ERROR_NO_CREDENTIALS,
++ "no credentials received");
++
++ priv->recv_creds_cb (self, &buf, NULL, err, priv->recv_creds_data);
++ g_error_free (err);
++ }
++ else
++ {
++ GibberCredentials credentials;
++
+ cred = (struct cmsgcred *) CMSG_DATA (&cmsg.hdr);
+ credentials.pid = cred->cmcred_pid;
+ credentials.uid = cred->cmcred_uid;
+ credentials.gid = cred->cmcred_gid;
++
++ priv->recv_creds_cb (self, &buf, &credentials, NULL,
++ priv->recv_creds_data);
++ }
++
++ priv->recv_creds_cb = NULL;
++ priv->recv_creds_data = NULL;
++ return GIBBER_FD_IO_RESULT_SUCCESS;
++}
++
++/* End FreeBSD part */
+ #else /* OSs where we have no implementation */
- priv->recv_creds_cb (self, &buf, &credentials, NULL,
- priv->recv_creds_data);
+ gboolean
+@@ -393,9 +554,7 @@ gibber_unix_transport_recv_credentials (
+ }
+
+ gboolean
+-gibber_unix_transport_send_credentials (GibberUnixTransport *transport,
+- const guint8 *data,
+- gsize size)
++gibber_unix_transport_send_credentials (void)
+ {
+ DEBUG ("stub implementation, failing");
+ return FALSE;
diff --git a/net-im/telepathy-gabble/files/patch-lib_gibber_gibber-util.h b/net-im/telepathy-gabble/files/patch-lib_gibber_gibber-util.h
deleted file mode 100644
index e690611c3af5..000000000000
--- a/net-im/telepathy-gabble/files/patch-lib_gibber_gibber-util.h
+++ /dev/null
@@ -1,12 +0,0 @@
---- lib/gibber/gibber-util.h.orig 2009-01-08 01:55:08.000000000 -0500
-+++ lib/gibber/gibber-util.h 2009-01-08 01:56:05.000000000 -0500
-@@ -20,6 +20,9 @@
- #ifndef __GIBBER_UTIL_H__
- #define __GIBBER_UTIL_H__
-
-+#include <sys/types.h>
-+#include <sys/socket.h>
-+#include <netinet/in.h>
- #include <netdb.h>
-
- #include <glib.h>
diff --git a/net-im/telepathy-gabble/files/patch-src_bytestream-socks5.c b/net-im/telepathy-gabble/files/patch-src_bytestream-socks5.c
deleted file mode 100644
index 07bf4c2ab63c..000000000000
--- a/net-im/telepathy-gabble/files/patch-src_bytestream-socks5.c
+++ /dev/null
@@ -1,11 +0,0 @@
---- src/bytestream-socks5.c.orig 2009-01-08 01:57:01.000000000 -0500
-+++ src/bytestream-socks5.c 2009-01-08 01:57:20.000000000 -0500
-@@ -21,6 +21,8 @@
- #include "config.h"
- #include "bytestream-socks5.h"
-
-+#include <sys/types.h>
-+#include <sys/socket.h>
- #include <arpa/inet.h>
- #include <errno.h>
- #include <fcntl.h>
diff --git a/net-im/telepathy-gabble/files/patch-src_jingle-factory.c b/net-im/telepathy-gabble/files/patch-src_jingle-factory.c
deleted file mode 100644
index 6f75e4951b3a..000000000000
--- a/net-im/telepathy-gabble/files/patch-src_jingle-factory.c
+++ /dev/null
@@ -1,13 +0,0 @@
---- src/jingle-factory.c.orig 2009-03-08 13:03:05.000000000 -0400
-+++ src/jingle-factory.c 2009-03-08 13:04:05.000000000 -0400
-@@ -20,6 +20,10 @@
-
- #include "jingle-factory.h"
-
-+#include <sys/types.h>
-+#include <sys/socket.h>
-+#include <netinet/in.h>
-+#include <arpa/inet.h>
- #include <stdio.h>
- #include <stdlib.h>
- #include <string.h>
diff --git a/net-im/telepathy-gabble/files/patch-src_tube-stream.c b/net-im/telepathy-gabble/files/patch-src_tube-stream.c
deleted file mode 100644
index 9118a52ade02..000000000000
--- a/net-im/telepathy-gabble/files/patch-src_tube-stream.c
+++ /dev/null
@@ -1,10 +0,0 @@
---- src/tube-stream.c.orig 2008-01-17 01:49:11.000000000 -0500
-+++ src/tube-stream.c 2008-01-17 01:49:22.000000000 -0500
-@@ -24,6 +24,7 @@
- #include <time.h>
- #include <sys/types.h>
- #include <sys/socket.h>
-+#include <netinet/in.h>
- #include <sys/un.h>
- #include <unistd.h>
- #include <fcntl.h>
diff --git a/net-im/telepathy-gabble/pkg-plist b/net-im/telepathy-gabble/pkg-plist
index fff4ba5c0364..2bd653be6e31 100644
--- a/net-im/telepathy-gabble/pkg-plist
+++ b/net-im/telepathy-gabble/pkg-plist
@@ -1,4 +1,6 @@
libexec/telepathy-gabble
+lib/telepathy/gabble-0/gateways.la
+lib/telepathy/gabble-0/gateways.so
share/dbus-1/services/org.freedesktop.Telepathy.ConnectionManager.gabble.service
%%DOCSDIR%%/muc-bytestream.html
%%DOCSDIR%%/olpc.html
@@ -8,3 +10,5 @@ share/telepathy/managers/gabble.manager
@dirrmtry share/telepathy/managers
@dirrmtry share/telepathy
@dirrm %%DOCSDIR%%
+@dirrm lib/telepathy/gabble-0
+@dirrmtry lib/telepathy