FreeBSD Bugzilla – Attachment 172083 Details for
Bug 210582
net-im/pidgin-skypeweb: No longer able to connect
Home
|
New
|
Browse
|
Search
|
[?]
|
Reports
|
Help
|
New Account
|
Log In
Remember
[x]
|
Forgot Password
Login:
[x]
[patch]
Backport upstream fixes
pidgin-skypeweb.patch (text/plain), 7.53 KB, created by
Dmitri Goutnik
on 2016-07-04 02:20:14 UTC
(
hide
)
Description:
Backport upstream fixes
Filename:
MIME Type:
Creator:
Dmitri Goutnik
Created:
2016-07-04 02:20:14 UTC
Size:
7.53 KB
patch
obsolete
>Index: net-im/pidgin-skypeweb/Makefile >=================================================================== >--- net-im/pidgin-skypeweb/Makefile (revision 417999) >+++ net-im/pidgin-skypeweb/Makefile (working copy) >@@ -3,6 +3,7 @@ > > PORTNAME= pidgin-skypeweb > PORTVERSION= 1.1 >+PORTREVISION= 1 > PORTEPOCH= 1 > CATEGORIES= net-im > >@@ -14,13 +15,14 @@ > > BUILD_DEPENDS= pidgin:net-im/pidgin > RUN_DEPENDS= pidgin:net-im/pidgin >-LIB_DEPENDS= libjson-glib-1.0.so:devel/json-glib >+LIB_DEPENDS= libjson-glib-1.0.so:devel/json-glib \ >+ libpurple.so:net-im/libpurple > > USE_GITHUB= yes > GH_ACCOUNT= EionRobb > GH_PROJECT= skype4pidgin > >-USES= cmake dos2unix pkgconfig >+USES= cmake dos2unix pkgconfig gettext > USE_GNOME= glib20 > USE_LDCONFIG= yes > LDFLAGS+= -L${LOCALBASE}/lib >Index: net-im/pidgin-skypeweb/files/patch-libskypeweb.h >=================================================================== >--- net-im/pidgin-skypeweb/files/patch-libskypeweb.h (nonexistent) >+++ net-im/pidgin-skypeweb/files/patch-libskypeweb.h (working copy) >@@ -0,0 +1,20 @@ >+--- libskypeweb.h.orig 2016-07-04 01:03:45 UTC >++++ libskypeweb.h >+@@ -56,6 +56,17 @@ >+ >+ #include <json-glib/json-glib.h> >+ >++#define json_object_get_int_member(JSON_OBJECT, MEMBER) \ >++ (JSON_OBJECT && json_object_has_member(JSON_OBJECT, MEMBER) ? json_object_get_int_member(JSON_OBJECT, MEMBER) : 0) >++#define json_object_get_string_member(JSON_OBJECT, MEMBER) \ >++ (JSON_OBJECT && json_object_has_member(JSON_OBJECT, MEMBER) ? json_object_get_string_member(JSON_OBJECT, MEMBER) : NULL) >++#define json_object_get_array_member(JSON_OBJECT, MEMBER) \ >++ (JSON_OBJECT && json_object_has_member(JSON_OBJECT, MEMBER) ? json_object_get_array_member(JSON_OBJECT, MEMBER) : NULL) >++#define json_object_get_object_member(JSON_OBJECT, MEMBER) \ >++ (JSON_OBJECT && json_object_has_member(JSON_OBJECT, MEMBER) ? json_object_get_object_member(JSON_OBJECT, MEMBER) : NULL) >++#define json_object_get_boolean_member(JSON_OBJECT, MEMBER) \ >++ (JSON_OBJECT && json_object_has_member(JSON_OBJECT, MEMBER) ? json_object_get_boolean_member(JSON_OBJECT, MEMBER) : FALSE) >++ >+ #ifndef PURPLE_PLUGINS >+ # define PURPLE_PLUGINS >+ #endif > >Property changes on: net-im/pidgin-skypeweb/files/patch-libskypeweb.h >___________________________________________________________________ >Added: fbsd:nokeywords >## -0,0 +1 ## >+yes >\ No newline at end of property >Added: svn:eol-style >## -0,0 +1 ## >+native >\ No newline at end of property >Added: svn:mime-type >## -0,0 +1 ## >+text/plain >\ No newline at end of property >Index: net-im/pidgin-skypeweb/files/patch-skypeweb__util.c >=================================================================== >--- net-im/pidgin-skypeweb/files/patch-skypeweb__util.c (nonexistent) >+++ net-im/pidgin-skypeweb/files/patch-skypeweb__util.c (working copy) >@@ -0,0 +1,136 @@ >+--- skypeweb_util.c.orig 2016-07-04 01:03:33 UTC >++++ skypeweb_util.c >+@@ -249,6 +254,112 @@ find_acct(const char *prpl, const char * >+ } >+ >+ >++/* Hack needed to stop redirect */ >++struct _PurpleUtilFetchUrlData >++{ >++ PurpleUtilFetchUrlCallback callback; >++ void *user_data; >++ >++ struct >++ { >++ char *user; >++ char *passwd; >++ char *address; >++ int port; >++ char *page; >++ >++ } website; >++ >++ char *url; >++ int num_times_redirected; >++ gboolean full; >++ char *user_agent; >++ gboolean http11; >++ char *request; >++ gsize request_written; >++ gboolean include_headers; >++ >++ gboolean is_ssl; >++ PurpleSslConnection *ssl_connection; >++ PurpleProxyConnectData *connect_data; >++ int fd; >++ guint inpa; >++ >++ gboolean got_headers; >++ gboolean has_explicit_data_len; >++ char *webdata; >++ gsize len; >++ unsigned long data_len; >++ gssize max_len; >++ gboolean chunked; >++ PurpleAccount *account; >++}; >++ >++/* Hack needed to stop redirect */ >++struct _PurpleUtilFetchUrlDataTwoEleven >++{ >++ PurpleUtilFetchUrlCallback callback; >++ void *user_data; >++ >++ struct >++ { >++ char *user; >++ char *passwd; >++ char *address; >++ int port; >++ char *page; >++ >++ } website; >++ >++ char *url; >++ int num_times_redirected; >++ gboolean full; >++ char *user_agent; >++ gboolean http11; >++ char *request; >++ gsize request_len; >++ gsize request_written; >++ gboolean include_headers; >++ >++ gboolean is_ssl; >++ PurpleSslConnection *ssl_connection; >++ PurpleProxyConnectData *connect_data; >++ int fd; >++ guint inpa; >++ >++ gboolean got_headers; >++ gboolean has_explicit_data_len; >++ char *webdata; >++ gsize len; >++ unsigned long data_len; >++ gssize max_len; >++ gboolean chunked; >++ PurpleAccount *account; >++}; >++ >++static void >++skypeweb_fetch_url_request_cb(PurpleUtilFetchUrlData *url_data, gpointer user_data, const gchar *url_text, gsize len, const gchar *error_message) { >++ >++ PurpleUtilFetchUrlCallback callback; >++ >++ if (url_text == NULL) { >++ if (purple_major_version == 2 && purple_minor_version >= 11) { >++ struct _PurpleUtilFetchUrlDataTwoEleven *two_eleven_url_data = (struct _PurpleUtilFetchUrlDataTwoEleven *) url_data; >++ >++ url_text = two_eleven_url_data->webdata; >++ len = two_eleven_url_data->data_len; >++ } else { >++ url_text = url_data->webdata; >++ len = url_data->data_len; >++ } >++ } >++ >++ callback = g_dataset_get_data(url_data, "real_callback"); >++ callback(url_data, user_data, url_text, len, error_message); >++ >++ g_dataset_destroy(url_data); >++} >++ >+ /* Wrapper of purple_util_fetch_url_request_len_with_account() >+ * that takes a SkypeWebAccount instead of a PurpleAccount, >+ * and keeps track of requests in sa->url_datas to cancel them on logout. */ >+@@ -261,10 +372,19 @@ skypeweb_fetch_url_request(SkypeWebAccou >+ { >+ PurpleUtilFetchUrlData *url_data; >+ >+- url_data = purple_util_fetch_url_request(sa->account, url, full, user_agent, http11, request, include_headers, max_len, callback, user_data); >++ url_data = purple_util_fetch_url_request(sa->account, url, full, user_agent, http11, request, include_headers, max_len, skypeweb_fetch_url_request_cb, user_data); >++ g_dataset_set_data(url_data, "real_callback", callback); >+ >+ if (url_data != NULL) >+ sa->url_datas = g_slist_prepend(sa->url_datas, url_data); >+ >+ return url_data; >+ } >++ >++void >++skypeweb_url_prevent_follow_redirects(PurpleUtilFetchUrlData *requestdata) >++{ >++ if (requestdata != NULL) { >++ requestdata->num_times_redirected = 10; >++ } >++} > >Property changes on: net-im/pidgin-skypeweb/files/patch-skypeweb__util.c >___________________________________________________________________ >Added: fbsd:nokeywords >## -0,0 +1 ## >+yes >\ No newline at end of property >Added: svn:eol-style >## -0,0 +1 ## >+native >\ No newline at end of property >Added: svn:mime-type >## -0,0 +1 ## >+text/plain >\ No newline at end of property >Index: net-im/pidgin-skypeweb/files/patch-skypeweb__util.h >=================================================================== >--- net-im/pidgin-skypeweb/files/patch-skypeweb__util.h (nonexistent) >+++ net-im/pidgin-skypeweb/files/patch-skypeweb__util.h (working copy) >@@ -0,0 +1,8 @@ >+--- skypeweb_util.h.orig 2016-07-04 01:03:33 UTC >++++ skypeweb_util.h >+@@ -36,3 +36,5 @@ skypeweb_fetch_url_request(SkypeWebAccou >+ const char *url, gboolean full, const char *user_agent, gboolean http11, >+ const char *request, gboolean include_headers, gssize max_len, >+ PurpleUtilFetchUrlCallback callback, void *user_data); >++ >++void skypeweb_url_prevent_follow_redirects(PurpleUtilFetchUrlData *requestdata); > >Property changes on: net-im/pidgin-skypeweb/files/patch-skypeweb__util.h >___________________________________________________________________ >Added: fbsd:nokeywords >## -0,0 +1 ## >+yes >\ No newline at end of property >Added: svn:eol-style >## -0,0 +1 ## >+native >\ No newline at end of property >Added: svn:mime-type >## -0,0 +1 ## >+text/plain >\ No newline at end of property
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Diff
View Attachment As Raw
Flags:
dmgk
:
maintainer-approval+
Actions:
View
|
Diff
Attachments on
bug 210582
: 172083